From 9b1056b2eb68a7325ee378f93ec86c13863c6cdb Mon Sep 17 00:00:00 2001 From: kt175410 Date: Thu, 30 May 2019 15:00:16 +0200 Subject: [PATCH] =?UTF-8?q?nodePartieNonTermin=C3=A9e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- NodjsPartieArduino/README.md | 8 + .../@serialport/parser-byte-length/README.md | 1 + .../parser-byte-length/byte-length.js | 58 + .../parser-byte-length/package.json | 86 + .../@serialport/parser-cctalk/README.md | 1 + .../@serialport/parser-cctalk/cctalk.js | 44 + .../@serialport/parser-cctalk/package.json | 86 + .../@serialport/parser-delimiter/README.md | 1 + .../@serialport/parser-delimiter/delimiter.js | 52 + .../@serialport/parser-delimiter/package.json | 87 + .../@serialport/parser-readline/README.md | 1 + .../@serialport/parser-readline/package.json | 87 + .../@serialport/parser-readline/readline.js | 31 + .../@serialport/parser-ready/README.md | 1 + .../@serialport/parser-ready/package.json | 86 + .../@serialport/parser-ready/ready.js | 66 + .../@serialport/parser-regex/README.md | 1 + .../@serialport/parser-regex/package.json | 86 + .../@serialport/parser-regex/regex.js | 53 + .../node_modules/accepts/HISTORY.md | 224 + .../node_modules/accepts/LICENSE | 23 + .../node_modules/accepts/README.md | 143 + .../node_modules/accepts/index.js | 238 + .../node_modules/accepts/package.json | 123 + NodjsPartieArduino/node_modules/after/LICENCE | 19 + .../node_modules/after/README.md | 115 + .../node_modules/after/index.js | 28 + .../node_modules/after/package.json | 103 + .../node_modules/after/test/after-test.js | 120 + .../node_modules/ansi-bgblack/LICENSE | 21 + .../node_modules/ansi-bgblack/README.md | 74 + .../node_modules/ansi-bgblack/index.js | 14 + .../node_modules/ansi-bgblack/package.json | 116 + .../node_modules/ansi-bgblue/LICENSE | 21 + .../node_modules/ansi-bgblue/index.js | 14 + .../node_modules/ansi-bgblue/package.json | 116 + .../node_modules/ansi-bgblue/readme.md | 74 + .../node_modules/ansi-bgcyan/LICENSE | 21 + .../node_modules/ansi-bgcyan/index.js | 14 + .../node_modules/ansi-bgcyan/package.json | 116 + .../node_modules/ansi-bgcyan/readme.md | 74 + .../node_modules/ansi-bggreen/LICENSE | 21 + .../node_modules/ansi-bggreen/index.js | 14 + .../node_modules/ansi-bggreen/package.json | 116 + .../node_modules/ansi-bggreen/readme.md | 74 + .../node_modules/ansi-bgmagenta/LICENSE | 21 + .../node_modules/ansi-bgmagenta/index.js | 14 + .../node_modules/ansi-bgmagenta/package.json | 116 + .../node_modules/ansi-bgmagenta/readme.md | 74 + .../node_modules/ansi-bgred/LICENSE | 21 + .../node_modules/ansi-bgred/index.js | 14 + .../node_modules/ansi-bgred/package.json | 116 + .../node_modules/ansi-bgred/readme.md | 74 + .../node_modules/ansi-bgwhite/LICENSE | 21 + .../node_modules/ansi-bgwhite/index.js | 14 + .../node_modules/ansi-bgwhite/package.json | 116 + .../node_modules/ansi-bgwhite/readme.md | 74 + .../node_modules/ansi-bgyellow/LICENSE | 21 + .../node_modules/ansi-bgyellow/index.js | 14 + .../node_modules/ansi-bgyellow/package.json | 116 + .../node_modules/ansi-bgyellow/readme.md | 74 + .../node_modules/ansi-black/LICENSE | 21 + .../node_modules/ansi-black/index.js | 14 + .../node_modules/ansi-black/package.json | 116 + .../node_modules/ansi-black/readme.md | 74 + .../node_modules/ansi-blue/LICENSE | 21 + .../node_modules/ansi-blue/index.js | 14 + .../node_modules/ansi-blue/package.json | 116 + .../node_modules/ansi-blue/readme.md | 74 + .../node_modules/ansi-bold/LICENSE | 21 + .../node_modules/ansi-bold/index.js | 14 + .../node_modules/ansi-bold/package.json | 116 + .../node_modules/ansi-bold/readme.md | 74 + .../node_modules/ansi-colors/LICENSE | 21 + .../node_modules/ansi-colors/README.md | 94 + .../node_modules/ansi-colors/index.js | 434 + .../node_modules/ansi-colors/package.json | 196 + .../node_modules/ansi-cyan/LICENSE | 21 + .../node_modules/ansi-cyan/index.js | 14 + .../node_modules/ansi-cyan/package.json | 118 + .../node_modules/ansi-cyan/readme.md | 74 + .../node_modules/ansi-dim/LICENSE | 21 + .../node_modules/ansi-dim/index.js | 14 + .../node_modules/ansi-dim/package.json | 118 + .../node_modules/ansi-dim/readme.md | 74 + .../node_modules/ansi-gray/LICENSE | 21 + .../node_modules/ansi-gray/index.js | 14 + .../node_modules/ansi-gray/package.json | 117 + .../node_modules/ansi-gray/readme.md | 74 + .../node_modules/ansi-green/LICENSE | 21 + .../node_modules/ansi-green/index.js | 14 + .../node_modules/ansi-green/package.json | 118 + .../node_modules/ansi-green/readme.md | 74 + .../node_modules/ansi-grey/LICENSE | 21 + .../node_modules/ansi-grey/index.js | 14 + .../node_modules/ansi-grey/package.json | 116 + .../node_modules/ansi-grey/readme.md | 74 + .../node_modules/ansi-hidden/LICENSE | 21 + .../node_modules/ansi-hidden/index.js | 14 + .../node_modules/ansi-hidden/package.json | 116 + .../node_modules/ansi-hidden/readme.md | 74 + .../node_modules/ansi-inverse/LICENSE | 21 + .../node_modules/ansi-inverse/index.js | 14 + .../node_modules/ansi-inverse/package.json | 116 + .../node_modules/ansi-inverse/readme.md | 74 + .../node_modules/ansi-italic/LICENSE | 21 + .../node_modules/ansi-italic/index.js | 14 + .../node_modules/ansi-italic/package.json | 116 + .../node_modules/ansi-italic/readme.md | 74 + .../node_modules/ansi-magenta/LICENSE | 21 + .../node_modules/ansi-magenta/index.js | 14 + .../node_modules/ansi-magenta/package.json | 116 + .../node_modules/ansi-magenta/readme.md | 74 + .../node_modules/ansi-red/LICENSE | 21 + .../node_modules/ansi-red/index.js | 14 + .../node_modules/ansi-red/package.json | 116 + .../node_modules/ansi-red/readme.md | 74 + .../node_modules/ansi-regex/index.js | 4 + .../node_modules/ansi-regex/license | 21 + .../node_modules/ansi-regex/package.json | 131 + .../node_modules/ansi-regex/readme.md | 39 + .../node_modules/ansi-reset/LICENSE | 21 + .../node_modules/ansi-reset/index.js | 14 + .../node_modules/ansi-reset/package.json | 116 + .../node_modules/ansi-reset/readme.md | 74 + .../node_modules/ansi-strikethrough/LICENSE | 21 + .../node_modules/ansi-strikethrough/index.js | 14 + .../ansi-strikethrough/package.json | 116 + .../node_modules/ansi-strikethrough/readme.md | 74 + .../node_modules/ansi-underline/LICENSE | 21 + .../node_modules/ansi-underline/index.js | 14 + .../node_modules/ansi-underline/package.json | 116 + .../node_modules/ansi-underline/readme.md | 74 + .../node_modules/ansi-white/LICENSE | 21 + .../node_modules/ansi-white/index.js | 14 + .../node_modules/ansi-white/package.json | 116 + .../node_modules/ansi-white/readme.md | 74 + .../node_modules/ansi-wrap/LICENSE | 21 + .../node_modules/ansi-wrap/README.md | 89 + .../node_modules/ansi-wrap/index.js | 5 + .../node_modules/ansi-wrap/package.json | 114 + .../node_modules/ansi-yellow/LICENSE | 21 + .../node_modules/ansi-yellow/index.js | 14 + .../node_modules/ansi-yellow/package.json | 116 + .../node_modules/ansi-yellow/readme.md | 74 + .../node_modules/aproba/LICENSE | 14 + .../node_modules/aproba/README.md | 94 + .../node_modules/aproba/index.js | 105 + .../node_modules/aproba/package.json | 97 + .../node_modules/are-we-there-yet/CHANGES.md | 37 + .../node_modules/are-we-there-yet/LICENSE | 5 + .../node_modules/are-we-there-yet/README.md | 195 + .../node_modules/are-we-there-yet/index.js | 4 + .../are-we-there-yet/package.json | 102 + .../are-we-there-yet/tracker-base.js | 11 + .../are-we-there-yet/tracker-group.js | 107 + .../are-we-there-yet/tracker-stream.js | 36 + .../node_modules/are-we-there-yet/tracker.js | 30 + .../node_modules/arr-flatten/LICENSE | 21 + .../node_modules/arr-flatten/README.md | 86 + .../node_modules/arr-flatten/index.js | 22 + .../node_modules/arr-flatten/package.json | 151 + .../node_modules/arr-swap/LICENSE | 21 + .../node_modules/arr-swap/README.md | 85 + .../node_modules/arr-swap/index.js | 17 + .../arr-swap/node_modules/is-number/LICENSE | 21 + .../arr-swap/node_modules/is-number/README.md | 115 + .../arr-swap/node_modules/is-number/index.js | 22 + .../node_modules/is-number/package.json | 160 + .../node_modules/arr-swap/package.json | 122 + .../node_modules/array-flatten/LICENSE | 21 + .../node_modules/array-flatten/README.md | 43 + .../array-flatten/array-flatten.js | 64 + .../node_modules/array-flatten/package.json | 96 + .../node_modules/arraybuffer.slice/LICENCE | 18 + .../node_modules/arraybuffer.slice/Makefile | 8 + .../node_modules/arraybuffer.slice/README.md | 17 + .../node_modules/arraybuffer.slice/index.js | 29 + .../arraybuffer.slice/package.json | 80 + .../arraybuffer.slice/test/slice-buffer.js | 227 + .../node_modules/async-limiter/LICENSE | 8 + .../async-limiter/coverage/coverage.json | 1 + .../lcov-report/async-throttle/index.html | 73 + .../lcov-report/async-throttle/index.js.html | 246 + .../coverage/lcov-report/base.css | 182 + .../coverage/lcov-report/index.html | 73 + .../coverage/lcov-report/prettify.css | 1 + .../coverage/lcov-report/prettify.js | 1 + .../lcov-report/sort-arrow-sprite.png | Bin 0 -> 209 bytes .../coverage/lcov-report/sorter.js | 156 + .../async-limiter/coverage/lcov.info | 74 + .../node_modules/async-limiter/index.js | 67 + .../node_modules/async-limiter/package.json | 105 + .../node_modules/async-limiter/readme.md | 132 + .../node_modules/backo2/History.md | 12 + .../node_modules/backo2/Makefile | 8 + .../node_modules/backo2/Readme.md | 34 + .../node_modules/backo2/component.json | 11 + .../node_modules/backo2/index.js | 85 + .../node_modules/backo2/package.json | 78 + .../node_modules/backo2/test/index.js | 18 + .../base64-arraybuffer/LICENSE-MIT | 22 + .../node_modules/base64-arraybuffer/README.md | 20 + .../lib/base64-arraybuffer.js | 67 + .../base64-arraybuffer/package.json | 97 + .../node_modules/base64id/LICENSE | 22 + .../node_modules/base64id/README.md | 18 + .../node_modules/base64id/lib/base64id.js | 103 + .../node_modules/base64id/package.json | 89 + .../node_modules/better-assert/History.md | 15 + .../node_modules/better-assert/Makefile | 5 + .../node_modules/better-assert/Readme.md | 61 + .../node_modules/better-assert/example.js | 10 + .../node_modules/better-assert/index.js | 38 + .../node_modules/better-assert/package.json | 99 + .../node_modules/bindings/README.md | 98 + .../node_modules/bindings/bindings.js | 171 + .../node_modules/bindings/package.json | 92 + NodjsPartieArduino/node_modules/bl/LICENSE.md | 13 + NodjsPartieArduino/node_modules/bl/README.md | 208 + NodjsPartieArduino/node_modules/bl/bl.js | 281 + .../node_modules/bl/package.json | 106 + .../node_modules/bl/test/test.js | 702 ++ NodjsPartieArduino/node_modules/blob/LICENSE | 21 + NodjsPartieArduino/node_modules/blob/Makefile | 14 + .../node_modules/blob/README.md | 21 + .../node_modules/blob/component.json | 11 + NodjsPartieArduino/node_modules/blob/index.js | 100 + .../node_modules/blob/package.json | 93 + .../node_modules/blob/test/index.js | 100 + .../node_modules/body-parser/HISTORY.md | 588 ++ .../node_modules/body-parser/LICENSE | 23 + .../node_modules/body-parser/README.md | 445 + .../node_modules/body-parser/index.js | 157 + .../node_modules/body-parser/lib/read.js | 181 + .../body-parser/lib/types/json.js | 230 + .../node_modules/body-parser/lib/types/raw.js | 101 + .../body-parser/lib/types/text.js | 121 + .../body-parser/lib/types/urlencoded.js | 284 + .../node_modules/body-parser/package.json | 130 + .../node_modules/buffer-alloc-unsafe/index.js | 17 + .../buffer-alloc-unsafe/package.json | 97 + .../buffer-alloc-unsafe/readme.md | 46 + .../node_modules/buffer-alloc/index.js | 32 + .../node_modules/buffer-alloc/package.json | 98 + .../node_modules/buffer-alloc/readme.md | 43 + .../node_modules/buffer-fill/index.js | 113 + .../node_modules/buffer-fill/package.json | 88 + .../node_modules/buffer-fill/readme.md | 54 + .../node_modules/bytes/History.md | 82 + NodjsPartieArduino/node_modules/bytes/LICENSE | 23 + .../node_modules/bytes/Readme.md | 125 + .../node_modules/bytes/index.js | 159 + .../node_modules/bytes/package.json | 122 + .../node_modules/callsite/History.md | 10 + .../node_modules/callsite/Makefile | 6 + .../node_modules/callsite/Readme.md | 44 + .../node_modules/callsite/index.js | 10 + .../node_modules/callsite/package.json | 77 + .../node_modules/choices-separator/LICENSE | 21 + .../node_modules/choices-separator/README.md | 147 + .../node_modules/choices-separator/index.js | 101 + .../choices-separator/package.json | 144 + .../node_modules/chownr/LICENSE | 15 + .../node_modules/chownr/README.md | 3 + .../node_modules/chownr/chownr.js | 88 + .../node_modules/chownr/package.json | 97 + .../node_modules/clone-deep/LICENSE | 21 + .../node_modules/clone-deep/README.md | 84 + .../node_modules/clone-deep/index.js | 55 + .../clone-deep/node_modules/kind-of/LICENSE | 21 + .../clone-deep/node_modules/kind-of/README.md | 342 + .../clone-deep/node_modules/kind-of/index.js | 147 + .../node_modules/kind-of/package.json | 187 + .../node_modules/clone-deep/package.json | 145 + .../node_modules/code-point-at/index.js | 32 + .../node_modules/code-point-at/license | 21 + .../node_modules/code-point-at/package.json | 106 + .../node_modules/code-point-at/readme.md | 32 + .../node_modules/collection-visit/LICENSE | 21 + .../node_modules/collection-visit/README.md | 89 + .../node_modules/collection-visit/index.js | 30 + .../collection-visit/package.json | 154 + .../node_modules/commander/CHANGELOG.md | 396 + .../node_modules/commander/LICENSE | 22 + .../node_modules/commander/Readme.md | 417 + .../node_modules/commander/index.js | 1227 +++ .../node_modules/commander/package.json | 122 + .../node_modules/commander/typings/index.d.ts | 309 + .../node_modules/component-bind/History.md | 13 + .../node_modules/component-bind/Makefile | 7 + .../node_modules/component-bind/Readme.md | 64 + .../component-bind/component.json | 13 + .../node_modules/component-bind/index.js | 23 + .../node_modules/component-bind/package.json | 81 + .../node_modules/component-emitter/History.md | 68 + .../node_modules/component-emitter/LICENSE | 24 + .../node_modules/component-emitter/Readme.md | 74 + .../node_modules/component-emitter/index.js | 163 + .../component-emitter/package.json | 220 + .../node_modules/component-inherit/History.md | 5 + .../node_modules/component-inherit/Makefile | 16 + .../node_modules/component-inherit/Readme.md | 24 + .../component-inherit/component.json | 10 + .../node_modules/component-inherit/index.js | 7 + .../component-inherit/package.json | 78 + .../component-inherit/test/inherit.js | 21 + .../console-control-strings/LICENSE | 13 + .../console-control-strings/README.md | 145 + .../console-control-strings/README.md~ | 140 + .../console-control-strings/index.js | 125 + .../console-control-strings/package.json | 96 + .../content-disposition/HISTORY.md | 50 + .../node_modules/content-disposition/LICENSE | 22 + .../content-disposition/README.md | 141 + .../node_modules/content-disposition/index.js | 445 + .../content-disposition/package.json | 110 + .../node_modules/content-type/HISTORY.md | 24 + .../node_modules/content-type/LICENSE | 22 + .../node_modules/content-type/README.md | 92 + .../node_modules/content-type/index.js | 222 + .../node_modules/content-type/package.json | 113 + .../node_modules/cookie-signature/History.md | 38 + .../node_modules/cookie-signature/Readme.md | 42 + .../node_modules/cookie-signature/index.js | 51 + .../cookie-signature/package.json | 92 + .../node_modules/cookie/HISTORY.md | 118 + .../node_modules/cookie/LICENSE | 24 + .../node_modules/cookie/README.md | 220 + .../node_modules/cookie/index.js | 195 + .../node_modules/cookie/package.json | 107 + .../node_modules/copy-descriptor/LICENSE | 21 + .../node_modules/copy-descriptor/index.js | 81 + .../node_modules/copy-descriptor/package.json | 123 + .../node_modules/core-util-is/LICENSE | 19 + .../node_modules/core-util-is/README.md | 3 + .../node_modules/core-util-is/float.patch | 604 ++ .../node_modules/core-util-is/lib/util.js | 107 + .../node_modules/core-util-is/package.json | 94 + .../node_modules/core-util-is/test.js | 68 + .../node_modules/debug/CHANGELOG.md | 362 + NodjsPartieArduino/node_modules/debug/LICENSE | 19 + .../node_modules/debug/Makefile | 50 + .../node_modules/debug/README.md | 312 + .../node_modules/debug/component.json | 19 + .../node_modules/debug/karma.conf.js | 70 + NodjsPartieArduino/node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 145 + .../node_modules/debug/src/browser.js | 185 + .../node_modules/debug/src/debug.js | 202 + .../node_modules/debug/src/index.js | 10 + .../node_modules/debug/src/inspector-log.js | 15 + .../node_modules/debug/src/node.js | 248 + .../node_modules/decompress-response/index.js | 29 + .../node_modules/decompress-response/license | 21 + .../decompress-response/package.json | 108 + .../decompress-response/readme.md | 31 + .../node_modules/deep-extend/CHANGELOG.md | 46 + .../node_modules/deep-extend/LICENSE | 20 + .../node_modules/deep-extend/README.md | 91 + .../node_modules/deep-extend/index.js | 1 + .../deep-extend/lib/deep-extend.js | 150 + .../node_modules/deep-extend/package.json | 132 + .../node_modules/define-property/LICENSE | 21 + .../node_modules/define-property/README.md | 95 + .../node_modules/define-property/index.js | 31 + .../node_modules/define-property/package.json | 129 + .../node_modules/delegates/History.md | 22 + .../node_modules/delegates/License | 20 + .../node_modules/delegates/Makefile | 8 + .../node_modules/delegates/Readme.md | 94 + .../node_modules/delegates/index.js | 121 + .../node_modules/delegates/package.json | 84 + .../node_modules/delegates/test/index.js | 94 + .../node_modules/depd/History.md | 96 + NodjsPartieArduino/node_modules/depd/LICENSE | 22 + .../node_modules/depd/Readme.md | 280 + NodjsPartieArduino/node_modules/depd/index.js | 522 ++ .../node_modules/depd/lib/browser/index.js | 77 + .../depd/lib/compat/callsite-tostring.js | 103 + .../depd/lib/compat/event-listener-count.js | 22 + .../node_modules/depd/lib/compat/index.js | 79 + .../node_modules/depd/package.json | 115 + .../node_modules/destroy/LICENSE | 22 + .../node_modules/destroy/README.md | 60 + .../node_modules/destroy/index.js | 75 + .../node_modules/destroy/package.json | 106 + .../node_modules/detect-libc/LICENSE | 201 + .../node_modules/detect-libc/README.md | 78 + .../detect-libc/bin/detect-libc.js | 18 + .../detect-libc/lib/detect-libc.js | 92 + .../node_modules/detect-libc/package.json | 106 + .../node_modules/ee-first/LICENSE | 22 + .../node_modules/ee-first/README.md | 80 + .../node_modules/ee-first/index.js | 95 + .../node_modules/ee-first/package.json | 98 + .../node_modules/encodeurl/HISTORY.md | 14 + .../node_modules/encodeurl/LICENSE | 22 + .../node_modules/encodeurl/README.md | 128 + .../node_modules/encodeurl/index.js | 60 + .../node_modules/encodeurl/package.json | 114 + .../node_modules/end-of-stream/LICENSE | 21 + .../node_modules/end-of-stream/README.md | 52 + .../node_modules/end-of-stream/index.js | 87 + .../node_modules/end-of-stream/package.json | 101 + .../node_modules/engine.io-client/LICENSE | 22 + .../node_modules/engine.io-client/README.md | 299 + .../engine.io-client/engine.io.js | 4647 ++++++++++ .../engine.io-client/lib/index.js | 10 + .../engine.io-client/lib/socket.js | 746 ++ .../engine.io-client/lib/transport.js | 160 + .../engine.io-client/lib/transports/index.js | 53 + .../lib/transports/polling-jsonp.js | 239 + .../lib/transports/polling-xhr.js | 415 + .../lib/transports/polling.js | 245 + .../lib/transports/websocket.js | 293 + .../engine.io-client/lib/xmlhttprequest.js | 37 + .../node_modules/debug/CHANGELOG.md | 395 + .../node_modules/debug/LICENSE | 19 + .../node_modules/debug/Makefile | 58 + .../node_modules/debug/README.md | 368 + .../node_modules/debug/karma.conf.js | 70 + .../node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 130 + .../node_modules/debug/src/browser.js | 195 + .../node_modules/debug/src/debug.js | 225 + .../node_modules/debug/src/index.js | 10 + .../node_modules/debug/src/node.js | 186 + .../engine.io-client/package.json | 152 + .../node_modules/engine.io-parser/LICENSE | 22 + .../node_modules/engine.io-parser/Readme.md | 202 + .../engine.io-parser/lib/browser.js | 605 ++ .../engine.io-parser/lib/index.js | 476 + .../node_modules/engine.io-parser/lib/keys.js | 19 + .../node_modules/engine.io-parser/lib/utf8.js | 210 + .../engine.io-parser/package.json | 103 + .../node_modules/engine.io/LICENSE | 19 + .../node_modules/engine.io/README.md | 564 ++ .../node_modules/engine.io/lib/engine.io.js | 126 + .../node_modules/engine.io/lib/server.js | 574 ++ .../node_modules/engine.io/lib/socket.js | 486 + .../node_modules/engine.io/lib/transport.js | 128 + .../engine.io/lib/transports/index.js | 36 + .../engine.io/lib/transports/polling-jsonp.js | 75 + .../engine.io/lib/transports/polling-xhr.js | 69 + .../engine.io/lib/transports/polling.js | 407 + .../engine.io/lib/transports/websocket.js | 134 + .../engine.io/node_modules/debug/CHANGELOG.md | 395 + .../engine.io/node_modules/debug/LICENSE | 19 + .../engine.io/node_modules/debug/Makefile | 58 + .../engine.io/node_modules/debug/README.md | 368 + .../node_modules/debug/karma.conf.js | 70 + .../engine.io/node_modules/debug/node.js | 1 + .../engine.io/node_modules/debug/package.json | 130 + .../node_modules/debug/src/browser.js | 195 + .../engine.io/node_modules/debug/src/debug.js | 225 + .../engine.io/node_modules/debug/src/index.js | 10 + .../engine.io/node_modules/debug/src/node.js | 186 + .../node_modules/engine.io/package.json | 136 + .../node_modules/error-symbol/LICENSE | 21 + .../node_modules/error-symbol/README.md | 52 + .../node_modules/error-symbol/index.js | 1 + .../node_modules/error-symbol/package.json | 114 + .../node_modules/escape-html/LICENSE | 24 + .../node_modules/escape-html/Readme.md | 43 + .../node_modules/escape-html/index.js | 78 + .../node_modules/escape-html/package.json | 94 + .../node_modules/etag/HISTORY.md | 83 + NodjsPartieArduino/node_modules/etag/LICENSE | 22 + .../node_modules/etag/README.md | 159 + NodjsPartieArduino/node_modules/etag/index.js | 131 + .../node_modules/etag/package.json | 122 + .../node_modules/expand-template/README.md | 43 + .../node_modules/expand-template/index.js | 25 + .../node_modules/expand-template/package.json | 97 + .../node_modules/expand-template/test.js | 47 + .../node_modules/express/History.md | 3421 ++++++++ .../node_modules/express/LICENSE | 24 + .../node_modules/express/Readme.md | 153 + .../node_modules/express/index.js | 11 + .../node_modules/express/lib/application.js | 644 ++ .../node_modules/express/lib/express.js | 114 + .../express/lib/middleware/init.js | 43 + .../express/lib/middleware/query.js | 47 + .../node_modules/express/lib/request.js | 521 ++ .../node_modules/express/lib/response.js | 1137 +++ .../node_modules/express/lib/router/index.js | 662 ++ .../node_modules/express/lib/router/layer.js | 181 + .../node_modules/express/lib/router/route.js | 216 + .../node_modules/express/lib/utils.js | 306 + .../node_modules/express/lib/view.js | 182 + .../node_modules/express/package.json | 198 + .../node_modules/extend-shallow/LICENSE | 21 + .../node_modules/extend-shallow/README.md | 61 + .../node_modules/extend-shallow/index.js | 33 + .../node_modules/extend-shallow/package.json | 119 + .../node_modules/finalhandler/HISTORY.md | 180 + .../node_modules/finalhandler/LICENSE | 22 + .../node_modules/finalhandler/README.md | 148 + .../node_modules/finalhandler/index.js | 331 + .../node_modules/finalhandler/package.json | 119 + .../node_modules/for-in/LICENSE | 21 + .../node_modules/for-in/README.md | 85 + .../node_modules/for-in/index.js | 16 + .../node_modules/for-in/package.json | 146 + .../node_modules/for-own/LICENSE | 21 + .../node_modules/for-own/README.md | 85 + .../node_modules/for-own/index.js | 19 + .../node_modules/for-own/package.json | 148 + .../node_modules/forwarded/HISTORY.md | 16 + .../node_modules/forwarded/LICENSE | 22 + .../node_modules/forwarded/README.md | 57 + .../node_modules/forwarded/index.js | 76 + .../node_modules/forwarded/package.json | 114 + .../node_modules/fresh/HISTORY.md | 70 + NodjsPartieArduino/node_modules/fresh/LICENSE | 23 + .../node_modules/fresh/README.md | 119 + .../node_modules/fresh/index.js | 137 + .../node_modules/fresh/package.json | 126 + .../node_modules/fs-constants/LICENSE | 21 + .../node_modules/fs-constants/README.md | 26 + .../node_modules/fs-constants/browser.js | 1 + .../node_modules/fs-constants/index.js | 1 + .../node_modules/fs-constants/package.json | 86 + .../node_modules/gauge/CHANGELOG.md | 160 + NodjsPartieArduino/node_modules/gauge/LICENSE | 13 + .../node_modules/gauge/README.md | 399 + .../node_modules/gauge/base-theme.js | 14 + .../node_modules/gauge/error.js | 24 + .../node_modules/gauge/has-color.js | 12 + .../node_modules/gauge/index.js | 233 + .../node_modules/gauge/package.json | 126 + .../node_modules/gauge/plumbing.js | 48 + .../node_modules/gauge/process.js | 3 + .../node_modules/gauge/progress-bar.js | 35 + .../node_modules/gauge/render-template.js | 181 + .../node_modules/gauge/set-immediate.js | 7 + .../node_modules/gauge/set-interval.js | 3 + NodjsPartieArduino/node_modules/gauge/spin.js | 5 + .../node_modules/gauge/template-item.js | 73 + .../node_modules/gauge/theme-set.js | 115 + .../node_modules/gauge/themes.js | 54 + .../node_modules/gauge/wide-truncate.js | 25 + .../node_modules/github-from-package/LICENSE | 18 + .../github-from-package/example/package.json | 8 + .../github-from-package/example/url.js | 3 + .../node_modules/github-from-package/index.js | 17 + .../github-from-package/package.json | 88 + .../github-from-package/readme.markdown | 53 + .../github-from-package/test/a.json | 8 + .../github-from-package/test/b.json | 5 + .../github-from-package/test/c.json | 5 + .../github-from-package/test/d.json | 7 + .../github-from-package/test/e.json | 5 + .../github-from-package/test/url.js | 19 + .../node_modules/has-binary2/History.md | 57 + .../node_modules/has-binary2/LICENSE | 20 + .../node_modules/has-binary2/README.md | 4 + .../node_modules/has-binary2/index.js | 64 + .../node_modules/isarray/README.md | 54 + .../has-binary2/node_modules/isarray/index.js | 5 + .../node_modules/isarray/package.json | 111 + .../node_modules/has-binary2/package.json | 90 + .../node_modules/has-cors/History.md | 21 + .../node_modules/has-cors/Makefile | 11 + .../node_modules/has-cors/Readme.md | 24 + .../node_modules/has-cors/component.json | 13 + .../node_modules/has-cors/index.js | 17 + .../node_modules/has-cors/package.json | 97 + .../node_modules/has-cors/test.js | 24 + .../node_modules/has-unicode/LICENSE | 14 + .../node_modules/has-unicode/README.md | 43 + .../node_modules/has-unicode/index.js | 16 + .../node_modules/has-unicode/package.json | 94 + .../node_modules/http-errors/HISTORY.md | 132 + .../node_modules/http-errors/LICENSE | 23 + .../node_modules/http-errors/README.md | 135 + .../node_modules/http-errors/index.js | 260 + .../node_modules/http-errors/package.json | 138 + .../node_modules/iconv-lite/Changelog.md | 158 + .../node_modules/iconv-lite/LICENSE | 21 + .../node_modules/iconv-lite/README.md | 156 + .../iconv-lite/encodings/dbcs-codec.js | 555 ++ .../iconv-lite/encodings/dbcs-data.js | 176 + .../iconv-lite/encodings/index.js | 22 + .../iconv-lite/encodings/internal.js | 188 + .../iconv-lite/encodings/sbcs-codec.js | 72 + .../encodings/sbcs-data-generated.js | 451 + .../iconv-lite/encodings/sbcs-data.js | 169 + .../encodings/tables/big5-added.json | 122 + .../iconv-lite/encodings/tables/cp936.json | 264 + .../iconv-lite/encodings/tables/cp949.json | 273 + .../iconv-lite/encodings/tables/cp950.json | 177 + .../iconv-lite/encodings/tables/eucjp.json | 182 + .../encodings/tables/gb18030-ranges.json | 1 + .../encodings/tables/gbk-added.json | 55 + .../iconv-lite/encodings/tables/shiftjis.json | 125 + .../iconv-lite/encodings/utf16.js | 177 + .../node_modules/iconv-lite/encodings/utf7.js | 290 + .../iconv-lite/lib/bom-handling.js | 52 + .../iconv-lite/lib/extend-node.js | 217 + .../node_modules/iconv-lite/lib/index.d.ts | 24 + .../node_modules/iconv-lite/lib/index.js | 153 + .../node_modules/iconv-lite/lib/streams.js | 121 + .../node_modules/iconv-lite/package.json | 117 + .../node_modules/indexof/Makefile | 11 + .../node_modules/indexof/Readme.md | 15 + .../node_modules/indexof/component.json | 10 + .../node_modules/indexof/index.js | 10 + .../node_modules/indexof/package.json | 67 + .../node_modules/info-symbol/LICENSE | 21 + .../node_modules/info-symbol/README.md | 52 + .../node_modules/info-symbol/index.js | 1 + .../node_modules/info-symbol/package.json | 114 + .../node_modules/inherits/LICENSE | 16 + .../node_modules/inherits/README.md | 42 + .../node_modules/inherits/inherits.js | 7 + .../node_modules/inherits/inherits_browser.js | 23 + .../node_modules/inherits/package.json | 98 + NodjsPartieArduino/node_modules/ini/LICENSE | 15 + NodjsPartieArduino/node_modules/ini/README.md | 102 + NodjsPartieArduino/node_modules/ini/ini.js | 194 + .../node_modules/ini/package.json | 99 + .../node_modules/ipaddr.js/README.md | 233 + .../node_modules/ipaddr.js/ipaddr.min.js | 1 + .../node_modules/ipaddr.js/lib/ipaddr.js | 636 ++ .../node_modules/ipaddr.js/lib/ipaddr.js.d.ts | 71 + .../node_modules/ipaddr.js/package.json | 105 + .../is-accessor-descriptor/LICENSE | 21 + .../is-accessor-descriptor/README.md | 144 + .../is-accessor-descriptor/index.js | 69 + .../node_modules/kind-of/CHANGELOG.md | 157 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 365 + .../node_modules/kind-of/index.js | 129 + .../node_modules/kind-of/package.json | 184 + .../is-accessor-descriptor/package.json | 146 + .../node_modules/is-buffer/LICENSE | 21 + .../node_modules/is-buffer/README.md | 53 + .../node_modules/is-buffer/index.js | 21 + .../node_modules/is-buffer/package.json | 116 + .../node_modules/is-buffer/test/basic.js | 24 + .../node_modules/is-data-descriptor/LICENSE | 21 + .../node_modules/is-data-descriptor/README.md | 161 + .../node_modules/is-data-descriptor/index.js | 49 + .../node_modules/kind-of/CHANGELOG.md | 157 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 365 + .../node_modules/kind-of/index.js | 129 + .../node_modules/kind-of/package.json | 184 + .../is-data-descriptor/package.json | 145 + .../node_modules/is-descriptor/LICENSE | 21 + .../node_modules/is-descriptor/README.md | 193 + .../node_modules/is-descriptor/index.js | 22 + .../node_modules/kind-of/CHANGELOG.md | 157 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 365 + .../node_modules/kind-of/index.js | 129 + .../node_modules/kind-of/package.json | 184 + .../node_modules/is-descriptor/package.json | 151 + .../node_modules/is-extendable/LICENSE | 21 + .../node_modules/is-extendable/README.md | 72 + .../node_modules/is-extendable/index.js | 13 + .../node_modules/is-extendable/package.json | 116 + .../is-fullwidth-code-point/index.js | 46 + .../is-fullwidth-code-point/license | 21 + .../is-fullwidth-code-point/package.json | 108 + .../is-fullwidth-code-point/readme.md | 39 + .../node_modules/is-number/LICENSE | 21 + .../node_modules/is-number/README.md | 152 + .../node_modules/is-number/index.js | 31 + .../node_modules/is-number/package.json | 162 + .../node_modules/is-plain-object/LICENSE | 21 + .../node_modules/is-plain-object/README.md | 104 + .../node_modules/is-plain-object/index.d.ts | 5 + .../node_modules/is-plain-object/index.js | 37 + .../node_modules/is-plain-object/package.json | 163 + .../node_modules/is-windows/LICENSE | 21 + .../node_modules/is-windows/README.md | 95 + .../node_modules/is-windows/index.js | 27 + .../node_modules/is-windows/package.json | 155 + .../node_modules/isarray/Makefile | 6 + .../node_modules/isarray/README.md | 60 + .../node_modules/isarray/component.json | 19 + .../node_modules/isarray/index.js | 5 + .../node_modules/isarray/package.json | 104 + .../node_modules/isarray/test.js | 20 + .../node_modules/isobject/LICENSE | 21 + .../node_modules/isobject/README.md | 122 + .../node_modules/isobject/index.d.ts | 5 + .../node_modules/isobject/index.js | 12 + .../node_modules/isobject/package.json | 162 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 261 + .../node_modules/kind-of/index.js | 116 + .../node_modules/kind-of/package.json | 184 + .../node_modules/koalas/LICENSE | 21 + .../node_modules/koalas/README.md | 91 + .../node_modules/koalas/index.js | 58 + .../node_modules/koalas/package.json | 141 + .../node_modules/lazy-cache/LICENSE | 21 + .../node_modules/lazy-cache/README.md | 195 + .../node_modules/lazy-cache/index.js | 73 + .../node_modules/lazy-cache/package.json | 147 + .../node_modules/log-ok/LICENSE | 21 + .../node_modules/log-ok/index.js | 20 + .../node_modules/log-ok/package.json | 123 + .../node_modules/log-utils/LICENSE | 21 + .../node_modules/log-utils/index.js | 224 + .../node_modules/log-utils/package.json | 161 + .../node_modules/map-visit/LICENSE | 21 + .../node_modules/map-visit/README.md | 155 + .../node_modules/map-visit/index.js | 37 + .../node_modules/map-visit/package.json | 152 + .../node_modules/media-typer/HISTORY.md | 22 + .../node_modules/media-typer/LICENSE | 22 + .../node_modules/media-typer/README.md | 81 + .../node_modules/media-typer/index.js | 270 + .../node_modules/media-typer/package.json | 92 + .../node_modules/merge-descriptors/HISTORY.md | 21 + .../node_modules/merge-descriptors/LICENSE | 23 + .../node_modules/merge-descriptors/README.md | 48 + .../node_modules/merge-descriptors/index.js | 60 + .../merge-descriptors/package.json | 172 + .../node_modules/methods/HISTORY.md | 29 + .../node_modules/methods/LICENSE | 24 + .../node_modules/methods/README.md | 51 + .../node_modules/methods/index.js | 69 + .../node_modules/methods/package.json | 122 + .../node_modules/mime-db/HISTORY.md | 405 + .../node_modules/mime-db/LICENSE | 22 + .../node_modules/mime-db/README.md | 94 + .../node_modules/mime-db/db.json | 7797 +++++++++++++++++ .../node_modules/mime-db/index.js | 11 + .../node_modules/mime-db/package.json | 139 + .../node_modules/mime-types/HISTORY.md | 294 + .../node_modules/mime-types/LICENSE | 23 + .../node_modules/mime-types/README.md | 113 + .../node_modules/mime-types/index.js | 188 + .../node_modules/mime-types/package.json | 130 + NodjsPartieArduino/node_modules/mime/LICENSE | 21 + .../node_modules/mime/README.md | 90 + .../node_modules/mime/build/build.js | 11 + .../node_modules/mime/build/test.js | 60 + NodjsPartieArduino/node_modules/mime/cli.js | 8 + NodjsPartieArduino/node_modules/mime/mime.js | 108 + .../node_modules/mime/package.json | 107 + .../node_modules/mime/types.json | 1 + .../node_modules/mimic-response/index.js | 32 + .../node_modules/mimic-response/license | 9 + .../node_modules/mimic-response/package.json | 110 + .../node_modules/mimic-response/readme.md | 54 + .../node_modules/minimist/LICENSE | 18 + .../node_modules/minimist/example/parse.js | 2 + .../node_modules/minimist/index.js | 236 + .../node_modules/minimist/package.json | 106 + .../node_modules/minimist/readme.markdown | 91 + .../node_modules/minimist/test/all_bool.js | 32 + .../node_modules/minimist/test/bool.js | 166 + .../node_modules/minimist/test/dash.js | 31 + .../minimist/test/default_bool.js | 35 + .../node_modules/minimist/test/dotted.js | 22 + .../node_modules/minimist/test/kv_short.js | 16 + .../node_modules/minimist/test/long.js | 31 + .../node_modules/minimist/test/num.js | 36 + .../node_modules/minimist/test/parse.js | 197 + .../minimist/test/parse_modified.js | 9 + .../node_modules/minimist/test/short.js | 67 + .../node_modules/minimist/test/stop_early.js | 15 + .../node_modules/minimist/test/unknown.js | 102 + .../node_modules/minimist/test/whitespace.js | 8 + .../node_modules/mixin-object/LICENSE | 21 + .../node_modules/mixin-object/README.md | 75 + .../node_modules/mixin-object/index.js | 36 + .../mixin-object/node_modules/for-in/LICENSE | 21 + .../node_modules/for-in/README.md | 85 + .../mixin-object/node_modules/for-in/index.js | 16 + .../node_modules/for-in/package.json | 143 + .../node_modules/mixin-object/package.json | 123 + .../node_modules/mkdirp/LICENSE | 21 + .../node_modules/mkdirp/bin/cmd.js | 33 + .../node_modules/mkdirp/bin/usage.txt | 12 + .../node_modules/mkdirp/examples/pow.js | 6 + .../node_modules/mkdirp/index.js | 98 + .../mkdirp/node_modules/minimist/LICENSE | 18 + .../node_modules/minimist/example/parse.js | 2 + .../mkdirp/node_modules/minimist/index.js | 187 + .../mkdirp/node_modules/minimist/package.json | 101 + .../node_modules/minimist/readme.markdown | 73 + .../mkdirp/node_modules/minimist/test/dash.js | 24 + .../minimist/test/default_bool.js | 20 + .../node_modules/minimist/test/dotted.js | 16 + .../mkdirp/node_modules/minimist/test/long.js | 31 + .../node_modules/minimist/test/parse.js | 318 + .../minimist/test/parse_modified.js | 9 + .../node_modules/minimist/test/short.js | 67 + .../node_modules/minimist/test/whitespace.js | 8 + .../node_modules/mkdirp/package.json | 94 + .../node_modules/mkdirp/readme.markdown | 100 + .../node_modules/mkdirp/test/chmod.js | 41 + .../node_modules/mkdirp/test/clobber.js | 38 + .../node_modules/mkdirp/test/mkdirp.js | 28 + .../node_modules/mkdirp/test/opts_fs.js | 29 + .../node_modules/mkdirp/test/opts_fs_sync.js | 27 + .../node_modules/mkdirp/test/perm.js | 32 + .../node_modules/mkdirp/test/perm_sync.js | 36 + .../node_modules/mkdirp/test/race.js | 37 + .../node_modules/mkdirp/test/rel.js | 32 + .../node_modules/mkdirp/test/return.js | 25 + .../node_modules/mkdirp/test/return_sync.js | 24 + .../node_modules/mkdirp/test/root.js | 19 + .../node_modules/mkdirp/test/sync.js | 32 + .../node_modules/mkdirp/test/umask.js | 28 + .../node_modules/mkdirp/test/umask_sync.js | 32 + NodjsPartieArduino/node_modules/ms/index.js | 152 + NodjsPartieArduino/node_modules/ms/license.md | 21 + .../node_modules/ms/package.json | 114 + NodjsPartieArduino/node_modules/ms/readme.md | 51 + .../node_modules/mute-stream/LICENSE | 15 + .../node_modules/mute-stream/README.md | 68 + .../coverage/lcov-report/__root__/index.html | 93 + .../lcov-report/__root__/mute.js.html | 500 ++ .../mute-stream/coverage/lcov-report/base.css | 212 + .../coverage/lcov-report/index.html | 93 + .../coverage/lcov-report/prettify.css | 1 + .../coverage/lcov-report/prettify.js | 1 + .../lcov-report/sort-arrow-sprite.png | Bin 0 -> 209 bytes .../coverage/lcov-report/sorter.js | 158 + .../mute-stream/coverage/lcov.info | 155 + .../node_modules/mute-stream/mute.js | 145 + .../node_modules/mute-stream/package.json | 106 + .../node_modules/mute-stream/test/basic.js | 207 + .../node_modules/nan/CHANGELOG.md | 513 ++ .../node_modules/nan/LICENSE.md | 13 + NodjsPartieArduino/node_modules/nan/README.md | 456 + .../node_modules/nan/doc/asyncworker.md | 146 + .../node_modules/nan/doc/buffers.md | 54 + .../node_modules/nan/doc/callback.md | 76 + .../node_modules/nan/doc/converters.md | 41 + .../node_modules/nan/doc/errors.md | 226 + .../node_modules/nan/doc/json.md | 62 + .../node_modules/nan/doc/maybe_types.md | 583 ++ .../node_modules/nan/doc/methods.md | 661 ++ .../node_modules/nan/doc/new.md | 147 + .../node_modules/nan/doc/node_misc.md | 123 + .../node_modules/nan/doc/object_wrappers.md | 263 + .../node_modules/nan/doc/persistent.md | 296 + .../node_modules/nan/doc/scopes.md | 73 + .../node_modules/nan/doc/script.md | 38 + .../node_modules/nan/doc/string_bytes.md | 62 + .../node_modules/nan/doc/v8_internals.md | 199 + .../node_modules/nan/doc/v8_misc.md | 85 + .../node_modules/nan/include_dirs.js | 1 + NodjsPartieArduino/node_modules/nan/nan.h | 2826 ++++++ .../node_modules/nan/nan_callbacks.h | 88 + .../node_modules/nan/nan_callbacks_12_inl.h | 514 ++ .../nan/nan_callbacks_pre_12_inl.h | 520 ++ .../node_modules/nan/nan_converters.h | 72 + .../node_modules/nan/nan_converters_43_inl.h | 48 + .../nan/nan_converters_pre_43_inl.h | 42 + .../nan/nan_define_own_property_helper.h | 29 + .../nan/nan_implementation_12_inl.h | 424 + .../nan/nan_implementation_pre_12_inl.h | 263 + .../node_modules/nan/nan_json.h | 166 + .../node_modules/nan/nan_maybe_43_inl.h | 369 + .../node_modules/nan/nan_maybe_pre_43_inl.h | 316 + NodjsPartieArduino/node_modules/nan/nan_new.h | 340 + .../node_modules/nan/nan_object_wrap.h | 158 + .../node_modules/nan/nan_persistent_12_inl.h | 132 + .../nan/nan_persistent_pre_12_inl.h | 242 + .../node_modules/nan/nan_private.h | 73 + .../node_modules/nan/nan_string_bytes.h | 305 + .../nan/nan_typedarray_contents.h | 90 + .../node_modules/nan/nan_weak.h | 437 + .../node_modules/nan/package.json | 143 + .../node_modules/nan/tools/1to2.js | 412 + .../node_modules/nan/tools/README.md | 14 + .../node_modules/nan/tools/package.json | 19 + .../node_modules/negotiator/HISTORY.md | 98 + .../node_modules/negotiator/LICENSE | 24 + .../node_modules/negotiator/README.md | 203 + .../node_modules/negotiator/index.js | 124 + .../node_modules/negotiator/lib/charset.js | 169 + .../node_modules/negotiator/lib/encoding.js | 184 + .../node_modules/negotiator/lib/language.js | 179 + .../node_modules/negotiator/lib/mediaType.js | 294 + .../node_modules/negotiator/package.json | 125 + .../node_modules/node-abi/CODE_OF_CONDUCT.md | 73 + .../node_modules/node-abi/CONTRIBUTING.md | 53 + .../node_modules/node-abi/LICENSE | 21 + .../node_modules/node-abi/README.md | 50 + .../node_modules/node-abi/index.js | 115 + .../node_modules/node-abi/package.json | 115 + .../node_modules/node-abi/test/index.js | 151 + .../node_modules/noop-logger/History.md | 16 + .../node_modules/noop-logger/Makefile | 8 + .../node_modules/noop-logger/Readme.md | 27 + .../node_modules/noop-logger/circle.yml | 9 + .../node_modules/noop-logger/lib/index.js | 25 + .../node_modules/noop-logger/package.json | 86 + .../node_modules/noop-logger/test/index.js | 18 + .../node_modules/npmlog/CHANGELOG.md | 49 + .../node_modules/npmlog/LICENSE | 15 + .../node_modules/npmlog/README.md | 216 + NodjsPartieArduino/node_modules/npmlog/log.js | 309 + .../node_modules/npmlog/package.json | 109 + .../node_modules/number-is-nan/index.js | 4 + .../node_modules/number-is-nan/license | 21 + .../node_modules/number-is-nan/package.json | 103 + .../node_modules/number-is-nan/readme.md | 28 + .../node_modules/object-assign/index.js | 90 + .../node_modules/object-assign/license | 21 + .../node_modules/object-assign/package.json | 118 + .../node_modules/object-assign/readme.md | 61 + .../node_modules/object-component/History.md | 10 + .../node_modules/object-component/Makefile | 16 + .../node_modules/object-component/Readme.md | 31 + .../object-component/component.json | 10 + .../node_modules/object-component/index.js | 84 + .../object-component/package.json | 69 + .../object-component/test/object.js | 48 + .../node_modules/object-copy/LICENSE | 21 + .../node_modules/object-copy/index.js | 174 + .../node_modules/define-property/LICENSE | 21 + .../node_modules/define-property/README.md | 77 + .../node_modules/define-property/index.js | 31 + .../node_modules/define-property/package.json | 113 + .../is-accessor-descriptor/LICENSE | 21 + .../is-accessor-descriptor/README.md | 123 + .../is-accessor-descriptor/index.js | 69 + .../is-accessor-descriptor/package.json | 123 + .../node_modules/is-data-descriptor/LICENSE | 21 + .../node_modules/is-data-descriptor/README.md | 128 + .../node_modules/is-data-descriptor/index.js | 55 + .../is-data-descriptor/package.json | 122 + .../node_modules/is-descriptor/LICENSE | 21 + .../node_modules/is-descriptor/README.md | 193 + .../node_modules/is-descriptor/index.js | 22 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 342 + .../node_modules/kind-of/index.js | 147 + .../node_modules/kind-of/package.json | 187 + .../node_modules/is-descriptor/package.json | 150 + .../node_modules/object-copy/package.json | 115 + .../node_modules/object-visit/LICENSE | 21 + .../node_modules/object-visit/README.md | 83 + .../node_modules/object-visit/index.js | 33 + .../node_modules/object-visit/package.json | 132 + .../node_modules/on-finished/HISTORY.md | 88 + .../node_modules/on-finished/LICENSE | 23 + .../node_modules/on-finished/README.md | 154 + .../node_modules/on-finished/index.js | 196 + .../node_modules/on-finished/package.json | 107 + NodjsPartieArduino/node_modules/once/LICENSE | 15 + .../node_modules/once/README.md | 79 + NodjsPartieArduino/node_modules/once/once.js | 42 + .../node_modules/once/package.json | 103 + .../node_modules/os-homedir/index.js | 24 + .../node_modules/os-homedir/license | 21 + .../node_modules/os-homedir/package.json | 109 + .../node_modules/os-homedir/readme.md | 31 + .../node_modules/parseqs/LICENSE | 21 + .../node_modules/parseqs/Makefile | 3 + .../node_modules/parseqs/README.md | 1 + .../node_modules/parseqs/index.js | 37 + .../node_modules/parseqs/package.json | 88 + .../node_modules/parseqs/test.js | 27 + .../node_modules/parseuri/History.md | 5 + .../node_modules/parseuri/LICENSE | 21 + .../node_modules/parseuri/Makefile | 3 + .../node_modules/parseuri/README.md | 2 + .../node_modules/parseuri/index.js | 39 + .../node_modules/parseuri/package.json | 86 + .../node_modules/parseuri/test.js | 51 + .../node_modules/parseurl/HISTORY.md | 53 + .../node_modules/parseurl/LICENSE | 24 + .../node_modules/parseurl/README.md | 124 + .../node_modules/parseurl/index.js | 154 + .../node_modules/parseurl/package.json | 117 + .../node_modules/path-to-regexp/History.md | 36 + .../node_modules/path-to-regexp/LICENSE | 21 + .../node_modules/path-to-regexp/Readme.md | 35 + .../node_modules/path-to-regexp/index.js | 129 + .../node_modules/path-to-regexp/package.json | 219 + .../node_modules/pointer-symbol/LICENSE | 21 + .../node_modules/pointer-symbol/README.md | 81 + .../node_modules/pointer-symbol/index.js | 20 + .../node_modules/pointer-symbol/package.json | 110 + .../prebuild-install/CONTRIBUTING.md | 8 + .../node_modules/prebuild-install/LICENSE | 21 + .../node_modules/prebuild-install/README.md | 101 + .../prebuild-install/appveyor.yml | 40 + .../node_modules/prebuild-install/asset.js | 48 + .../node_modules/prebuild-install/bin.js | 76 + .../node_modules/prebuild-install/download.js | 130 + .../node_modules/prebuild-install/error.js | 13 + .../node_modules/prebuild-install/help.txt | 13 + .../node_modules/prebuild-install/index.js | 1 + .../node_modules/prebuild-install/log.js | 13 + .../prebuild-install/package.json | 184 + .../node_modules/prebuild-install/proxy.js | 36 + .../node_modules/prebuild-install/rc.js | 73 + .../node_modules/prebuild-install/util.js | 96 + .../process-nextick-args/index.js | 44 + .../process-nextick-args/license.md | 19 + .../process-nextick-args/package.json | 87 + .../process-nextick-args/readme.md | 18 + .../node_modules/promirepl/LICENSE | 22 + .../node_modules/promirepl/README.md | 78 + .../node_modules/promirepl/bin/prominode.js | 8 + .../node_modules/promirepl/index.js | 73 + .../node_modules/promirepl/package.json | 85 + .../node_modules/prompt-actions/LICENSE | 21 + .../node_modules/prompt-actions/README.md | 78 + .../node_modules/prompt-actions/index.js | 267 + .../node_modules/prompt-actions/package.json | 132 + .../node_modules/prompt-base/LICENSE | 21 + .../node_modules/prompt-base/README.md | 675 ++ .../node_modules/prompt-base/changelog.md | 55 + .../node_modules/prompt-base/index.js | 938 ++ .../node_modules/debug/CHANGELOG.md | 395 + .../prompt-base/node_modules/debug/LICENSE | 19 + .../prompt-base/node_modules/debug/README.md | 437 + .../node_modules/debug/dist/debug.js | 886 ++ .../prompt-base/node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 144 + .../node_modules/debug/src/browser.js | 180 + .../node_modules/debug/src/common.js | 249 + .../node_modules/debug/src/index.js | 12 + .../node_modules/debug/src/node.js | 174 + .../prompt-base/node_modules/ms/index.js | 162 + .../prompt-base/node_modules/ms/license.md | 21 + .../prompt-base/node_modules/ms/package.json | 110 + .../prompt-base/node_modules/ms/readme.md | 60 + .../node_modules/prompt-base/package.json | 200 + .../node_modules/prompt-checkbox/LICENSE | 21 + .../node_modules/prompt-checkbox/README.md | 331 + .../node_modules/prompt-checkbox/index.js | 50 + .../node_modules/prompt-checkbox/package.json | 176 + .../node_modules/prompt-choices/LICENSE | 21 + .../node_modules/prompt-choices/README.md | 523 ++ .../node_modules/prompt-choices/index.js | 867 ++ .../node_modules/prompt-choices/lib/choice.js | 258 + .../node_modules/prompt-choices/lib/utils.js | 46 + .../node_modules/clone-deep/LICENSE | 21 + .../node_modules/clone-deep/README.md | 106 + .../node_modules/clone-deep/index.js | 49 + .../node_modules/clone-deep/package.json | 153 + .../node_modules/define-property/CHANGELOG.md | 82 + .../node_modules/define-property/LICENSE | 21 + .../node_modules/define-property/README.md | 117 + .../node_modules/define-property/index.js | 38 + .../node_modules/define-property/package.json | 144 + .../node_modules/kind-of/CHANGELOG.md | 157 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 365 + .../node_modules/kind-of/index.js | 129 + .../node_modules/kind-of/package.json | 186 + .../node_modules/shallow-clone/LICENSE | 21 + .../node_modules/shallow-clone/README.md | 152 + .../node_modules/shallow-clone/index.js | 82 + .../node_modules/shallow-clone/package.json | 152 + .../node_modules/prompt-choices/package.json | 174 + .../node_modules/prompt-list/LICENSE | 21 + .../node_modules/prompt-list/README.md | 173 + .../node_modules/prompt-list/index.js | 84 + .../node_modules/prompt-list/package.json | 172 + .../node_modules/prompt-question/LICENSE | 21 + .../node_modules/prompt-question/README.md | 301 + .../node_modules/prompt-question/index.js | 326 + .../node_modules/prompt-question/lib/utils.js | 72 + .../node_modules/debug/CHANGELOG.md | 395 + .../node_modules/debug/LICENSE | 19 + .../node_modules/debug/README.md | 437 + .../node_modules/debug/dist/debug.js | 886 ++ .../node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 144 + .../node_modules/debug/src/browser.js | 180 + .../node_modules/debug/src/common.js | 249 + .../node_modules/debug/src/index.js | 12 + .../node_modules/debug/src/node.js | 174 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 342 + .../node_modules/kind-of/index.js | 147 + .../node_modules/kind-of/package.json | 187 + .../prompt-question/node_modules/ms/index.js | 162 + .../node_modules/ms/license.md | 21 + .../node_modules/ms/package.json | 110 + .../prompt-question/node_modules/ms/readme.md | 60 + .../node_modules/prompt-question/package.json | 161 + .../node_modules/prompt-radio/LICENSE | 21 + .../node_modules/prompt-radio/README.md | 152 + .../node_modules/prompt-radio/index.js | 60 + .../node_modules/prompt-radio/package.json | 154 + .../node_modules/proxy-addr/HISTORY.md | 145 + .../node_modules/proxy-addr/LICENSE | 22 + .../node_modules/proxy-addr/README.md | 156 + .../node_modules/proxy-addr/index.js | 327 + .../node_modules/proxy-addr/package.json | 120 + NodjsPartieArduino/node_modules/pump/LICENSE | 21 + .../node_modules/pump/README.md | 56 + NodjsPartieArduino/node_modules/pump/index.js | 82 + .../node_modules/pump/package.json | 96 + .../node_modules/pump/test-browser.js | 62 + .../node_modules/pump/test-node.js | 53 + .../node_modules/qs/CHANGELOG.md | 226 + NodjsPartieArduino/node_modules/qs/LICENSE | 28 + NodjsPartieArduino/node_modules/qs/README.md | 475 + NodjsPartieArduino/node_modules/qs/dist/qs.js | 638 ++ .../node_modules/qs/lib/formats.js | 18 + .../node_modules/qs/lib/index.js | 11 + .../node_modules/qs/lib/parse.js | 174 + .../node_modules/qs/lib/stringify.js | 210 + .../node_modules/qs/lib/utils.js | 213 + .../node_modules/qs/package.json | 129 + .../node_modules/qs/test/index.js | 7 + .../node_modules/qs/test/parse.js | 574 ++ .../node_modules/qs/test/stringify.js | 597 ++ .../node_modules/qs/test/utils.js | 34 + .../node_modules/radio-symbol/LICENSE | 21 + .../node_modules/radio-symbol/README.md | 147 + .../node_modules/radio-symbol/index.js | 53 + .../node_modules/radio-symbol/package.json | 127 + .../node_modules/range-parser/HISTORY.md | 51 + .../node_modules/range-parser/LICENSE | 23 + .../node_modules/range-parser/README.md | 75 + .../node_modules/range-parser/index.js | 158 + .../node_modules/range-parser/package.json | 134 + .../node_modules/raw-body/HISTORY.md | 258 + .../node_modules/raw-body/LICENSE | 22 + .../node_modules/raw-body/README.md | 219 + .../node_modules/raw-body/index.d.ts | 87 + .../node_modules/raw-body/index.js | 286 + .../node_modules/raw-body/package.json | 133 + .../node_modules/rc/LICENSE.APACHE2 | 15 + .../node_modules/rc/LICENSE.BSD | 26 + .../node_modules/rc/LICENSE.MIT | 24 + NodjsPartieArduino/node_modules/rc/README.md | 227 + NodjsPartieArduino/node_modules/rc/browser.js | 7 + NodjsPartieArduino/node_modules/rc/cli.js | 4 + NodjsPartieArduino/node_modules/rc/index.js | 53 + .../node_modules/rc/lib/utils.js | 104 + .../node_modules/rc/package.json | 104 + .../node_modules/rc/test/ini.js | 16 + .../node_modules/rc/test/nested-env-vars.js | 50 + .../node_modules/rc/test/test.js | 59 + .../readable-stream/CONTRIBUTING.md | 38 + .../readable-stream/GOVERNANCE.md | 136 + .../node_modules/readable-stream/LICENSE | 47 + .../node_modules/readable-stream/README.md | 58 + .../doc/wg-meetings/2015-01-30.md | 60 + .../readable-stream/duplex-browser.js | 1 + .../node_modules/readable-stream/duplex.js | 1 + .../readable-stream/lib/_stream_duplex.js | 131 + .../lib/_stream_passthrough.js | 47 + .../readable-stream/lib/_stream_readable.js | 1019 +++ .../readable-stream/lib/_stream_transform.js | 214 + .../readable-stream/lib/_stream_writable.js | 687 ++ .../lib/internal/streams/BufferList.js | 79 + .../lib/internal/streams/destroy.js | 74 + .../lib/internal/streams/stream-browser.js | 1 + .../lib/internal/streams/stream.js | 1 + .../node_modules/readable-stream/package.json | 142 + .../readable-stream/passthrough.js | 1 + .../readable-stream/readable-browser.js | 7 + .../node_modules/readable-stream/readable.js | 19 + .../node_modules/readable-stream/transform.js | 1 + .../readable-stream/writable-browser.js | 1 + .../node_modules/readable-stream/writable.js | 8 + .../node_modules/readline-ui/LICENSE | 21 + .../node_modules/readline-ui/README.md | 198 + .../node_modules/readline-ui/index.js | 301 + .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 9 + .../node_modules/ansi-regex/package.json | 129 + .../node_modules/ansi-regex/readme.md | 46 + .../is-fullwidth-code-point/index.js | 46 + .../is-fullwidth-code-point/license | 21 + .../is-fullwidth-code-point/package.json | 113 + .../is-fullwidth-code-point/readme.md | 39 + .../node_modules/string-width/index.js | 36 + .../node_modules/string-width/license | 9 + .../node_modules/string-width/package.json | 123 + .../node_modules/string-width/readme.md | 42 + .../node_modules/strip-ansi/index.js | 4 + .../node_modules/strip-ansi/license | 9 + .../node_modules/strip-ansi/package.json | 127 + .../node_modules/strip-ansi/readme.md | 39 + .../node_modules/readline-ui/package.json | 147 + .../node_modules/readline-utils/LICENSE | 21 + .../node_modules/readline-utils/README.md | 359 + .../node_modules/readline-utils/index.js | 814 ++ .../node_modules/is-number/LICENSE | 21 + .../node_modules/is-number/README.md | 115 + .../node_modules/is-number/index.js | 22 + .../node_modules/is-number/package.json | 160 + .../node_modules/readline-utils/package.json | 145 + .../node_modules/safe-buffer/LICENSE | 21 + .../node_modules/safe-buffer/README.md | 584 ++ .../node_modules/safe-buffer/index.d.ts | 187 + .../node_modules/safe-buffer/index.js | 62 + .../node_modules/safe-buffer/package.json | 118 + .../node_modules/safer-buffer/LICENSE | 21 + .../safer-buffer/Porting-Buffer.md | 268 + .../node_modules/safer-buffer/Readme.md | 156 + .../node_modules/safer-buffer/dangerous.js | 58 + .../node_modules/safer-buffer/package.json | 99 + .../node_modules/safer-buffer/safer.js | 77 + .../node_modules/safer-buffer/tests.js | 406 + .../node_modules/semver/LICENSE | 15 + .../node_modules/semver/README.md | 399 + .../node_modules/semver/bin/semver | 153 + .../node_modules/semver/package.json | 94 + .../node_modules/semver/range.bnf | 16 + .../node_modules/semver/semver.js | 1352 +++ .../node_modules/send/HISTORY.md | 462 + NodjsPartieArduino/node_modules/send/LICENSE | 23 + .../node_modules/send/README.md | 306 + NodjsPartieArduino/node_modules/send/index.js | 1130 +++ .../node_modules/send/package.json | 144 + .../node_modules/serialport/CHANGELOG.md | 546 ++ .../node_modules/serialport/LICENSE | 21 + .../node_modules/serialport/README.md | 507 ++ .../node_modules/serialport/bin/echo.js | 33 + .../serialport/bin/find-arduino.js | 16 + .../node_modules/serialport/bin/list.js | 42 + .../node_modules/serialport/bin/repl.js | 44 + .../node_modules/serialport/bin/terminal.js | 105 + .../node_modules/serialport/binding.gyp | 57 + .../serialport/build/Release/serialport.node | Bin 0 -> 56320 bytes .../serialport/lib/bindings/auto-detect.js | 17 + .../serialport/lib/bindings/base.js | 231 + .../serialport/lib/bindings/darwin.js | 104 + .../serialport/lib/bindings/linux-list.js | 95 + .../serialport/lib/bindings/linux.js | 104 + .../serialport/lib/bindings/mock.js | 237 + .../serialport/lib/bindings/poller.js | 112 + .../serialport/lib/bindings/unix-read.js | 54 + .../serialport/lib/bindings/unix-write.js | 61 + .../lib/bindings/win32-sn-parser.js | 20 + .../serialport/lib/bindings/win32.js | 109 + .../node_modules/serialport/lib/index.js | 16 + .../node_modules/serialport/lib/parsers.js | 36 + .../node_modules/serialport/lib/serialport.js | 635 ++ .../node_modules/serialport/lib/util.js | 23 + .../node_modules/debug/CHANGELOG.md | 395 + .../serialport/node_modules/debug/LICENSE | 19 + .../serialport/node_modules/debug/README.md | 437 + .../node_modules/debug/dist/debug.js | 886 ++ .../serialport/node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 144 + .../node_modules/debug/src/browser.js | 180 + .../node_modules/debug/src/common.js | 249 + .../node_modules/debug/src/index.js | 12 + .../serialport/node_modules/debug/src/node.js | 174 + .../serialport/node_modules/ms/index.js | 162 + .../serialport/node_modules/ms/license.md | 21 + .../serialport/node_modules/ms/package.json | 110 + .../serialport/node_modules/ms/readme.md | 60 + .../node_modules/serialport/package.json | 181 + .../serialport/src/darwin_list.cpp | 359 + .../node_modules/serialport/src/darwin_list.h | 45 + .../node_modules/serialport/src/poller.cpp | 135 + .../node_modules/serialport/src/poller.h | 33 + .../serialport/src/serialport.cpp | 485 + .../node_modules/serialport/src/serialport.h | 126 + .../serialport/src/serialport_linux.cpp | 39 + .../serialport/src/serialport_linux.h | 8 + .../serialport/src/serialport_unix.cpp | 403 + .../serialport/src/serialport_unix.h | 7 + .../serialport/src/serialport_win.cpp | 948 ++ .../serialport/src/serialport_win.h | 71 + .../node_modules/serialport/test.js | 10 + .../node_modules/serve-static/HISTORY.md | 433 + .../node_modules/serve-static/LICENSE | 25 + .../node_modules/serve-static/README.md | 258 + .../node_modules/serve-static/index.js | 210 + .../node_modules/serve-static/package.json | 114 + .../node_modules/set-blocking/CHANGELOG.md | 26 + .../node_modules/set-blocking/LICENSE.txt | 14 + .../node_modules/set-blocking/README.md | 31 + .../node_modules/set-blocking/index.js | 7 + .../node_modules/set-blocking/package.json | 106 + .../node_modules/set-getter/LICENSE | 21 + .../node_modules/set-getter/README.md | 109 + .../node_modules/set-getter/index.js | 83 + .../node_modules/set-getter/package.json | 113 + .../node_modules/set-value/LICENSE | 21 + .../node_modules/set-value/README.md | 234 + .../node_modules/set-value/index.js | 116 + .../node_modules/set-value/package.json | 211 + .../node_modules/setprototypeof/LICENSE | 13 + .../node_modules/setprototypeof/README.md | 26 + .../node_modules/setprototypeof/index.d.ts | 2 + .../node_modules/setprototypeof/index.js | 15 + .../node_modules/setprototypeof/package.json | 91 + .../node_modules/shallow-clone/LICENSE | 21 + .../node_modules/shallow-clone/README.md | 115 + .../node_modules/shallow-clone/index.js | 57 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 342 + .../node_modules/kind-of/index.js | 147 + .../node_modules/kind-of/package.json | 187 + .../node_modules/shallow-clone/package.json | 148 + .../node_modules/signal-exit/CHANGELOG.md | 27 + .../node_modules/signal-exit/LICENSE.txt | 16 + .../node_modules/signal-exit/README.md | 40 + .../node_modules/signal-exit/index.js | 157 + .../node_modules/signal-exit/package.json | 106 + .../node_modules/signal-exit/signals.js | 53 + .../node_modules/simple-concat/LICENSE | 20 + .../node_modules/simple-concat/README.md | 42 + .../node_modules/simple-concat/index.js | 14 + .../node_modules/simple-concat/package.json | 93 + .../node_modules/simple-concat/test/basic.js | 41 + .../node_modules/simple-get/LICENSE | 20 + .../node_modules/simple-get/README.md | 306 + .../node_modules/simple-get/index.js | 113 + .../node_modules/simple-get/package.json | 117 + .../node_modules/socket.io-adapter/LICENSE | 20 + .../node_modules/socket.io-adapter/Readme.md | 16 + .../node_modules/socket.io-adapter/index.js | 263 + .../socket.io-adapter/package.json | 81 + .../node_modules/socket.io-client/LICENSE | 22 + .../node_modules/socket.io-client/README.md | 57 + .../socket.io-client/dist/socket.io.dev.js | 6620 ++++++++++++++ .../dist/socket.io.dev.js.map | 1 + .../socket.io-client/dist/socket.io.js | 9 + .../socket.io-client/dist/socket.io.js.map | 1 + .../dist/socket.io.slim.dev.js | 5837 ++++++++++++ .../dist/socket.io.slim.dev.js.map | 1 + .../socket.io-client/dist/socket.io.slim.js | 9 + .../dist/socket.io.slim.js.map | 1 + .../socket.io-client/lib/index.js | 94 + .../socket.io-client/lib/manager.js | 573 ++ .../node_modules/socket.io-client/lib/on.js | 24 + .../socket.io-client/lib/socket.js | 438 + .../node_modules/socket.io-client/lib/url.js | 75 + .../node_modules/debug/CHANGELOG.md | 395 + .../node_modules/debug/LICENSE | 19 + .../node_modules/debug/Makefile | 58 + .../node_modules/debug/README.md | 368 + .../node_modules/debug/karma.conf.js | 70 + .../node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 130 + .../node_modules/debug/src/browser.js | 195 + .../node_modules/debug/src/debug.js | 225 + .../node_modules/debug/src/index.js | 10 + .../node_modules/debug/src/node.js | 186 + .../socket.io-client/package.json | 160 + .../node_modules/socket.io-parser/LICENSE | 20 + .../node_modules/socket.io-parser/Readme.md | 73 + .../node_modules/socket.io-parser/binary.js | 141 + .../node_modules/socket.io-parser/index.js | 415 + .../socket.io-parser/is-buffer.js | 20 + .../node_modules/debug/CHANGELOG.md | 395 + .../node_modules/debug/LICENSE | 19 + .../node_modules/debug/Makefile | 58 + .../node_modules/debug/README.md | 368 + .../node_modules/debug/karma.conf.js | 70 + .../node_modules/debug/node.js | 1 + .../node_modules/debug/package.json | 130 + .../node_modules/debug/src/browser.js | 195 + .../node_modules/debug/src/debug.js | 225 + .../node_modules/debug/src/index.js | 10 + .../node_modules/debug/src/node.js | 186 + .../node_modules/isarray/README.md | 54 + .../node_modules/isarray/index.js | 5 + .../node_modules/isarray/package.json | 111 + .../socket.io-parser/package.json | 102 + .../node_modules/socket.io/LICENSE | 22 + .../node_modules/socket.io/Readme.md | 243 + .../node_modules/socket.io/lib/client.js | 273 + .../node_modules/socket.io/lib/index.js | 523 ++ .../node_modules/socket.io/lib/namespace.js | 299 + .../socket.io/lib/parent-namespace.js | 39 + .../node_modules/socket.io/lib/socket.js | 572 ++ .../socket.io/node_modules/debug/CHANGELOG.md | 395 + .../socket.io/node_modules/debug/LICENSE | 19 + .../socket.io/node_modules/debug/README.md | 455 + .../node_modules/debug/dist/debug.js | 912 ++ .../socket.io/node_modules/debug/package.json | 148 + .../node_modules/debug/src/browser.js | 264 + .../node_modules/debug/src/common.js | 266 + .../socket.io/node_modules/debug/src/index.js | 10 + .../socket.io/node_modules/debug/src/node.js | 257 + .../socket.io/node_modules/ms/index.js | 162 + .../socket.io/node_modules/ms/license.md | 21 + .../socket.io/node_modules/ms/package.json | 110 + .../socket.io/node_modules/ms/readme.md | 60 + .../node_modules/socket.io/package.json | 129 + .../node_modules/static-extend/LICENSE | 21 + .../node_modules/static-extend/index.js | 90 + .../node_modules/define-property/LICENSE | 21 + .../node_modules/define-property/README.md | 77 + .../node_modules/define-property/index.js | 31 + .../node_modules/define-property/package.json | 113 + .../is-accessor-descriptor/LICENSE | 21 + .../is-accessor-descriptor/README.md | 123 + .../is-accessor-descriptor/index.js | 69 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 261 + .../node_modules/kind-of/index.js | 116 + .../node_modules/kind-of/package.json | 190 + .../is-accessor-descriptor/package.json | 125 + .../node_modules/is-data-descriptor/LICENSE | 21 + .../node_modules/is-data-descriptor/README.md | 128 + .../node_modules/is-data-descriptor/index.js | 55 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 261 + .../node_modules/kind-of/index.js | 116 + .../node_modules/kind-of/package.json | 190 + .../is-data-descriptor/package.json | 124 + .../node_modules/is-descriptor/LICENSE | 21 + .../node_modules/is-descriptor/README.md | 193 + .../node_modules/is-descriptor/index.js | 22 + .../node_modules/is-descriptor/package.json | 150 + .../node_modules/kind-of/LICENSE | 21 + .../node_modules/kind-of/README.md | 342 + .../node_modules/kind-of/index.js | 147 + .../node_modules/kind-of/package.json | 187 + .../node_modules/static-extend/package.json | 131 + .../node_modules/statuses/HISTORY.md | 60 + .../node_modules/statuses/LICENSE | 23 + .../node_modules/statuses/README.md | 127 + .../node_modules/statuses/codes.json | 65 + .../node_modules/statuses/index.js | 113 + .../node_modules/statuses/package.json | 147 + .../node_modules/string-width/index.js | 37 + .../node_modules/string-width/license | 21 + .../node_modules/string-width/package.json | 124 + .../node_modules/string-width/readme.md | 42 + .../node_modules/string_decoder/LICENSE | 48 + .../node_modules/string_decoder/README.md | 47 + .../string_decoder/lib/string_decoder.js | 296 + .../node_modules/string_decoder/package.json | 114 + .../node_modules/strip-ansi/index.js | 6 + .../node_modules/strip-ansi/license | 21 + .../node_modules/strip-ansi/package.json | 124 + .../node_modules/strip-ansi/readme.md | 33 + .../node_modules/strip-color/LICENSE | 21 + .../node_modules/strip-color/README.md | 58 + .../node_modules/strip-color/index.js | 12 + .../node_modules/strip-color/package.json | 141 + .../node_modules/strip-json-comments/index.js | 70 + .../node_modules/strip-json-comments/license | 21 + .../strip-json-comments/package.json | 110 + .../strip-json-comments/readme.md | 64 + .../node_modules/success-symbol/LICENSE | 21 + .../node_modules/success-symbol/README.md | 52 + .../node_modules/success-symbol/index.js | 1 + .../node_modules/success-symbol/package.json | 115 + .../node_modules/tar-fs/LICENSE | 21 + .../node_modules/tar-fs/README.md | 163 + .../node_modules/tar-fs/index.js | 345 + .../tar-fs/node_modules/pump/LICENSE | 21 + .../tar-fs/node_modules/pump/README.md | 56 + .../tar-fs/node_modules/pump/index.js | 80 + .../tar-fs/node_modules/pump/package.json | 96 + .../tar-fs/node_modules/pump/test-browser.js | 58 + .../tar-fs/node_modules/pump/test.js | 46 + .../node_modules/tar-fs/package.json | 114 + .../tar-fs/test/fixtures/a/hello.txt | 1 + .../tar-fs/test/fixtures/b/a/test.txt | 1 + .../node_modules/tar-fs/test/fixtures/d/file1 | 0 .../node_modules/tar-fs/test/fixtures/d/file2 | 0 .../tar-fs/test/fixtures/d/sub-dir/file5 | 0 .../tar-fs/test/fixtures/d/sub-files/file3 | 0 .../tar-fs/test/fixtures/d/sub-files/file4 | 0 .../node_modules/tar-fs/test/fixtures/e/file | 0 .../tar-fs/test/fixtures/invalid.tar | Bin 0 -> 2560 bytes .../node_modules/tar-fs/test/index.js | 346 + .../node_modules/tar-stream/LICENSE | 21 + .../node_modules/tar-stream/README.md | 168 + .../node_modules/tar-stream/extract.js | 258 + .../node_modules/tar-stream/headers.js | 283 + .../node_modules/tar-stream/index.js | 2 + .../node_modules/tar-stream/pack.js | 255 + .../node_modules/tar-stream/package.json | 127 + .../node_modules/terminal-paginator/LICENSE | 21 + .../node_modules/terminal-paginator/README.md | 70 + .../node_modules/terminal-paginator/index.js | 86 + .../terminal-paginator/package.json | 147 + .../node_modules/time-stamp/LICENSE | 21 + .../node_modules/time-stamp/README.md | 132 + .../node_modules/time-stamp/index.js | 56 + .../node_modules/time-stamp/package.json | 153 + .../node_modules/to-array/LICENCE | 19 + .../node_modules/to-array/README.md | 22 + .../node_modules/to-array/index.js | 13 + .../node_modules/to-array/package.json | 98 + .../node_modules/to-buffer/LICENSE | 21 + .../node_modules/to-buffer/README.md | 23 + .../node_modules/to-buffer/index.js | 14 + .../node_modules/to-buffer/package.json | 91 + .../node_modules/to-buffer/test.js | 26 + .../node_modules/to-object-path/LICENSE | 21 + .../node_modules/to-object-path/README.md | 71 + .../node_modules/to-object-path/index.js | 33 + .../node_modules/to-object-path/package.json | 110 + .../node_modules/toggle-array/LICENSE | 21 + .../node_modules/toggle-array/README.md | 128 + .../node_modules/toggle-array/index.js | 42 + .../node_modules/toggle-array/package.json | 119 + .../node_modules/tunnel-agent/LICENSE | 55 + .../node_modules/tunnel-agent/README.md | 4 + .../node_modules/tunnel-agent/index.js | 244 + .../node_modules/tunnel-agent/package.json | 102 + .../node_modules/type-is/HISTORY.md | 236 + .../node_modules/type-is/LICENSE | 23 + .../node_modules/type-is/README.md | 146 + .../node_modules/type-is/index.js | 262 + .../node_modules/type-is/package.json | 127 + .../node_modules/unpipe/HISTORY.md | 4 + .../node_modules/unpipe/LICENSE | 22 + .../node_modules/unpipe/README.md | 43 + .../node_modules/unpipe/index.js | 69 + .../node_modules/unpipe/package.json | 94 + .../node_modules/util-deprecate/History.md | 16 + .../node_modules/util-deprecate/LICENSE | 24 + .../node_modules/util-deprecate/README.md | 53 + .../node_modules/util-deprecate/browser.js | 67 + .../node_modules/util-deprecate/node.js | 6 + .../node_modules/util-deprecate/package.json | 89 + .../node_modules/utils-merge/LICENSE | 20 + .../node_modules/utils-merge/README.md | 34 + .../node_modules/utils-merge/index.js | 23 + .../node_modules/utils-merge/package.json | 101 + .../node_modules/vary/HISTORY.md | 39 + NodjsPartieArduino/node_modules/vary/LICENSE | 22 + .../node_modules/vary/README.md | 101 + NodjsPartieArduino/node_modules/vary/index.js | 149 + .../node_modules/vary/package.json | 114 + .../node_modules/warning-symbol/LICENSE | 21 + .../node_modules/warning-symbol/README.md | 53 + .../node_modules/warning-symbol/index.js | 1 + .../node_modules/warning-symbol/package.json | 114 + .../node_modules/which-pm-runs/LICENSE | 21 + .../node_modules/which-pm-runs/README.md | 29 + .../node_modules/which-pm-runs/index.js | 17 + .../node_modules/which-pm-runs/package.json | 97 + .../node_modules/wide-align/LICENSE | 14 + .../node_modules/wide-align/README.md | 47 + .../node_modules/wide-align/align.js | 65 + .../node_modules/wide-align/package.json | 105 + .../node_modules/window-size/LICENSE | 21 + .../node_modules/window-size/README.md | 166 + .../node_modules/window-size/cli.js | 30 + .../node_modules/window-size/index.js | 35 + .../node_modules/is-number/LICENSE | 21 + .../node_modules/is-number/README.md | 115 + .../node_modules/is-number/index.js | 22 + .../node_modules/is-number/package.json | 160 + .../node_modules/window-size/package.json | 178 + .../node_modules/window-size/utils.js | 124 + .../node_modules/wrappy/LICENSE | 15 + .../node_modules/wrappy/README.md | 36 + .../node_modules/wrappy/package.json | 96 + .../node_modules/wrappy/wrappy.js | 33 + NodjsPartieArduino/node_modules/ws/LICENSE | 21 + NodjsPartieArduino/node_modules/ws/README.md | 449 + NodjsPartieArduino/node_modules/ws/browser.js | 8 + NodjsPartieArduino/node_modules/ws/index.js | 9 + .../node_modules/ws/lib/buffer-util.js | 72 + .../node_modules/ws/lib/constants.js | 10 + .../node_modules/ws/lib/event-target.js | 170 + .../node_modules/ws/lib/extension.js | 222 + .../node_modules/ws/lib/permessage-deflate.js | 502 ++ .../node_modules/ws/lib/receiver.js | 515 ++ .../node_modules/ws/lib/sender.js | 416 + .../node_modules/ws/lib/validation.js | 30 + .../node_modules/ws/lib/websocket-server.js | 389 + .../node_modules/ws/lib/websocket.js | 852 ++ .../node_modules/ws/package.json | 127 + .../node_modules/xmlhttprequest-ssl/LICENSE | 22 + .../node_modules/xmlhttprequest-ssl/README.md | 63 + .../xmlhttprequest-ssl/autotest.watchr | 8 + .../xmlhttprequest-ssl/example/demo.js | 16 + .../xmlhttprequest-ssl/lib/XMLHttpRequest.js | 651 ++ .../xmlhttprequest-ssl/package.json | 98 + .../tests/test-constants.js | 13 + .../xmlhttprequest-ssl/tests/test-events.js | 50 + .../tests/test-exceptions.js | 59 + .../xmlhttprequest-ssl/tests/test-headers.js | 76 + .../tests/test-redirect-302.js | 41 + .../tests/test-redirect-303.js | 41 + .../tests/test-redirect-307.js | 43 + .../tests/test-request-methods.js | 62 + .../tests/test-request-protocols.js | 32 + .../xmlhttprequest-ssl/tests/testdata.txt | 1 + NodjsPartieArduino/node_modules/xtend/LICENCE | 19 + .../node_modules/xtend/Makefile | 4 + .../node_modules/xtend/README.md | 32 + .../node_modules/xtend/immutable.js | 19 + .../node_modules/xtend/mutable.js | 17 + .../node_modules/xtend/package.json | 117 + NodjsPartieArduino/node_modules/xtend/test.js | 83 + NodjsPartieArduino/node_modules/yeast/LICENSE | 22 + .../node_modules/yeast/README.md | 82 + .../node_modules/yeast/index.js | 68 + .../node_modules/yeast/package.json | 100 + NodjsPartieArduino/package-lock.json | 1086 +++ NodjsPartieArduino/package.json | 18 + .../serial-counter/serial-counter.ino | 10 + .../serial-sketch/serial-sketch.ino | 9 + NodjsPartieArduino/server/index.html | 37 + NodjsPartieArduino/server/index.js | 60 + NodjsPartieArduino/server/index.js~ | 60 + 1608 files changed, 208345 insertions(+) create mode 100644 NodjsPartieArduino/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-byte-length/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-byte-length/byte-length.js create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-byte-length/package.json create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-cctalk/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-cctalk/cctalk.js create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-cctalk/package.json create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-delimiter/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-delimiter/delimiter.js create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-delimiter/package.json create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-readline/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-readline/package.json create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-readline/readline.js create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-ready/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-ready/package.json create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-ready/ready.js create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-regex/README.md create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-regex/package.json create mode 100644 NodjsPartieArduino/node_modules/@serialport/parser-regex/regex.js create mode 100644 NodjsPartieArduino/node_modules/accepts/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/accepts/LICENSE create mode 100644 NodjsPartieArduino/node_modules/accepts/README.md create mode 100644 NodjsPartieArduino/node_modules/accepts/index.js create mode 100644 NodjsPartieArduino/node_modules/accepts/package.json create mode 100644 NodjsPartieArduino/node_modules/after/LICENCE create mode 100644 NodjsPartieArduino/node_modules/after/README.md create mode 100644 NodjsPartieArduino/node_modules/after/index.js create mode 100644 NodjsPartieArduino/node_modules/after/package.json create mode 100644 NodjsPartieArduino/node_modules/after/test/after-test.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblack/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblack/README.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblack/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblack/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblue/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblue/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblue/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgblue/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bgcyan/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgcyan/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgcyan/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgcyan/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bggreen/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bggreen/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bggreen/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bggreen/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bgmagenta/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgmagenta/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgmagenta/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgmagenta/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bgred/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgred/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgred/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgred/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bgwhite/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgwhite/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgwhite/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgwhite/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bgyellow/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bgyellow/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bgyellow/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bgyellow/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-black/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-black/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-black/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-black/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-blue/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-blue/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-blue/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-blue/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-bold/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-bold/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-bold/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-bold/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-colors/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-colors/README.md create mode 100644 NodjsPartieArduino/node_modules/ansi-colors/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-colors/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-cyan/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-cyan/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-cyan/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-cyan/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-dim/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-dim/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-dim/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-dim/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-gray/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-gray/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-gray/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-gray/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-green/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-green/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-green/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-green/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-grey/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-grey/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-grey/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-grey/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-hidden/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-hidden/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-hidden/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-hidden/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-inverse/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-inverse/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-inverse/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-inverse/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-italic/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-italic/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-italic/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-italic/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-magenta/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-magenta/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-magenta/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-magenta/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-red/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-red/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-red/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-red/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-regex/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-regex/license create mode 100644 NodjsPartieArduino/node_modules/ansi-regex/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-regex/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-reset/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-reset/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-reset/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-reset/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-strikethrough/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-strikethrough/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-strikethrough/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-strikethrough/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-underline/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-underline/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-underline/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-underline/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-white/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-white/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-white/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-white/readme.md create mode 100644 NodjsPartieArduino/node_modules/ansi-wrap/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-wrap/README.md create mode 100644 NodjsPartieArduino/node_modules/ansi-wrap/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-wrap/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-yellow/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ansi-yellow/index.js create mode 100644 NodjsPartieArduino/node_modules/ansi-yellow/package.json create mode 100644 NodjsPartieArduino/node_modules/ansi-yellow/readme.md create mode 100644 NodjsPartieArduino/node_modules/aproba/LICENSE create mode 100644 NodjsPartieArduino/node_modules/aproba/README.md create mode 100644 NodjsPartieArduino/node_modules/aproba/index.js create mode 100644 NodjsPartieArduino/node_modules/aproba/package.json create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/CHANGES.md create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/LICENSE create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/README.md create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/index.js create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/package.json create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/tracker-base.js create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/tracker-group.js create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/tracker-stream.js create mode 100644 NodjsPartieArduino/node_modules/are-we-there-yet/tracker.js create mode 100644 NodjsPartieArduino/node_modules/arr-flatten/LICENSE create mode 100644 NodjsPartieArduino/node_modules/arr-flatten/README.md create mode 100644 NodjsPartieArduino/node_modules/arr-flatten/index.js create mode 100644 NodjsPartieArduino/node_modules/arr-flatten/package.json create mode 100644 NodjsPartieArduino/node_modules/arr-swap/LICENSE create mode 100644 NodjsPartieArduino/node_modules/arr-swap/README.md create mode 100644 NodjsPartieArduino/node_modules/arr-swap/index.js create mode 100644 NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/LICENSE create mode 100644 NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/README.md create mode 100644 NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/index.js create mode 100644 NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/package.json create mode 100644 NodjsPartieArduino/node_modules/arr-swap/package.json create mode 100644 NodjsPartieArduino/node_modules/array-flatten/LICENSE create mode 100644 NodjsPartieArduino/node_modules/array-flatten/README.md create mode 100644 NodjsPartieArduino/node_modules/array-flatten/array-flatten.js create mode 100644 NodjsPartieArduino/node_modules/array-flatten/package.json create mode 100644 NodjsPartieArduino/node_modules/arraybuffer.slice/LICENCE create mode 100644 NodjsPartieArduino/node_modules/arraybuffer.slice/Makefile create mode 100644 NodjsPartieArduino/node_modules/arraybuffer.slice/README.md create mode 100644 NodjsPartieArduino/node_modules/arraybuffer.slice/index.js create mode 100644 NodjsPartieArduino/node_modules/arraybuffer.slice/package.json create mode 100644 NodjsPartieArduino/node_modules/arraybuffer.slice/test/slice-buffer.js create mode 100644 NodjsPartieArduino/node_modules/async-limiter/LICENSE create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/coverage.json create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.html create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.js.html create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/base.css create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/index.html create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.css create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.js create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/sorter.js create mode 100644 NodjsPartieArduino/node_modules/async-limiter/coverage/lcov.info create mode 100644 NodjsPartieArduino/node_modules/async-limiter/index.js create mode 100644 NodjsPartieArduino/node_modules/async-limiter/package.json create mode 100644 NodjsPartieArduino/node_modules/async-limiter/readme.md create mode 100644 NodjsPartieArduino/node_modules/backo2/History.md create mode 100644 NodjsPartieArduino/node_modules/backo2/Makefile create mode 100644 NodjsPartieArduino/node_modules/backo2/Readme.md create mode 100644 NodjsPartieArduino/node_modules/backo2/component.json create mode 100644 NodjsPartieArduino/node_modules/backo2/index.js create mode 100644 NodjsPartieArduino/node_modules/backo2/package.json create mode 100644 NodjsPartieArduino/node_modules/backo2/test/index.js create mode 100644 NodjsPartieArduino/node_modules/base64-arraybuffer/LICENSE-MIT create mode 100644 NodjsPartieArduino/node_modules/base64-arraybuffer/README.md create mode 100644 NodjsPartieArduino/node_modules/base64-arraybuffer/lib/base64-arraybuffer.js create mode 100644 NodjsPartieArduino/node_modules/base64-arraybuffer/package.json create mode 100644 NodjsPartieArduino/node_modules/base64id/LICENSE create mode 100644 NodjsPartieArduino/node_modules/base64id/README.md create mode 100644 NodjsPartieArduino/node_modules/base64id/lib/base64id.js create mode 100644 NodjsPartieArduino/node_modules/base64id/package.json create mode 100644 NodjsPartieArduino/node_modules/better-assert/History.md create mode 100644 NodjsPartieArduino/node_modules/better-assert/Makefile create mode 100644 NodjsPartieArduino/node_modules/better-assert/Readme.md create mode 100644 NodjsPartieArduino/node_modules/better-assert/example.js create mode 100644 NodjsPartieArduino/node_modules/better-assert/index.js create mode 100644 NodjsPartieArduino/node_modules/better-assert/package.json create mode 100644 NodjsPartieArduino/node_modules/bindings/README.md create mode 100644 NodjsPartieArduino/node_modules/bindings/bindings.js create mode 100644 NodjsPartieArduino/node_modules/bindings/package.json create mode 100644 NodjsPartieArduino/node_modules/bl/LICENSE.md create mode 100644 NodjsPartieArduino/node_modules/bl/README.md create mode 100644 NodjsPartieArduino/node_modules/bl/bl.js create mode 100644 NodjsPartieArduino/node_modules/bl/package.json create mode 100644 NodjsPartieArduino/node_modules/bl/test/test.js create mode 100644 NodjsPartieArduino/node_modules/blob/LICENSE create mode 100644 NodjsPartieArduino/node_modules/blob/Makefile create mode 100644 NodjsPartieArduino/node_modules/blob/README.md create mode 100644 NodjsPartieArduino/node_modules/blob/component.json create mode 100644 NodjsPartieArduino/node_modules/blob/index.js create mode 100644 NodjsPartieArduino/node_modules/blob/package.json create mode 100644 NodjsPartieArduino/node_modules/blob/test/index.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/body-parser/LICENSE create mode 100644 NodjsPartieArduino/node_modules/body-parser/README.md create mode 100644 NodjsPartieArduino/node_modules/body-parser/index.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/lib/read.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/lib/types/json.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/lib/types/raw.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/lib/types/text.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/lib/types/urlencoded.js create mode 100644 NodjsPartieArduino/node_modules/body-parser/package.json create mode 100644 NodjsPartieArduino/node_modules/buffer-alloc-unsafe/index.js create mode 100644 NodjsPartieArduino/node_modules/buffer-alloc-unsafe/package.json create mode 100644 NodjsPartieArduino/node_modules/buffer-alloc-unsafe/readme.md create mode 100644 NodjsPartieArduino/node_modules/buffer-alloc/index.js create mode 100644 NodjsPartieArduino/node_modules/buffer-alloc/package.json create mode 100644 NodjsPartieArduino/node_modules/buffer-alloc/readme.md create mode 100644 NodjsPartieArduino/node_modules/buffer-fill/index.js create mode 100644 NodjsPartieArduino/node_modules/buffer-fill/package.json create mode 100644 NodjsPartieArduino/node_modules/buffer-fill/readme.md create mode 100644 NodjsPartieArduino/node_modules/bytes/History.md create mode 100644 NodjsPartieArduino/node_modules/bytes/LICENSE create mode 100644 NodjsPartieArduino/node_modules/bytes/Readme.md create mode 100644 NodjsPartieArduino/node_modules/bytes/index.js create mode 100644 NodjsPartieArduino/node_modules/bytes/package.json create mode 100644 NodjsPartieArduino/node_modules/callsite/History.md create mode 100644 NodjsPartieArduino/node_modules/callsite/Makefile create mode 100644 NodjsPartieArduino/node_modules/callsite/Readme.md create mode 100644 NodjsPartieArduino/node_modules/callsite/index.js create mode 100644 NodjsPartieArduino/node_modules/callsite/package.json create mode 100644 NodjsPartieArduino/node_modules/choices-separator/LICENSE create mode 100644 NodjsPartieArduino/node_modules/choices-separator/README.md create mode 100644 NodjsPartieArduino/node_modules/choices-separator/index.js create mode 100644 NodjsPartieArduino/node_modules/choices-separator/package.json create mode 100644 NodjsPartieArduino/node_modules/chownr/LICENSE create mode 100644 NodjsPartieArduino/node_modules/chownr/README.md create mode 100644 NodjsPartieArduino/node_modules/chownr/chownr.js create mode 100644 NodjsPartieArduino/node_modules/chownr/package.json create mode 100644 NodjsPartieArduino/node_modules/clone-deep/LICENSE create mode 100644 NodjsPartieArduino/node_modules/clone-deep/README.md create mode 100644 NodjsPartieArduino/node_modules/clone-deep/index.js create mode 100644 NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/clone-deep/package.json create mode 100644 NodjsPartieArduino/node_modules/code-point-at/index.js create mode 100644 NodjsPartieArduino/node_modules/code-point-at/license create mode 100644 NodjsPartieArduino/node_modules/code-point-at/package.json create mode 100644 NodjsPartieArduino/node_modules/code-point-at/readme.md create mode 100644 NodjsPartieArduino/node_modules/collection-visit/LICENSE create mode 100644 NodjsPartieArduino/node_modules/collection-visit/README.md create mode 100644 NodjsPartieArduino/node_modules/collection-visit/index.js create mode 100644 NodjsPartieArduino/node_modules/collection-visit/package.json create mode 100644 NodjsPartieArduino/node_modules/commander/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/commander/LICENSE create mode 100644 NodjsPartieArduino/node_modules/commander/Readme.md create mode 100644 NodjsPartieArduino/node_modules/commander/index.js create mode 100644 NodjsPartieArduino/node_modules/commander/package.json create mode 100644 NodjsPartieArduino/node_modules/commander/typings/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/component-bind/History.md create mode 100644 NodjsPartieArduino/node_modules/component-bind/Makefile create mode 100644 NodjsPartieArduino/node_modules/component-bind/Readme.md create mode 100644 NodjsPartieArduino/node_modules/component-bind/component.json create mode 100644 NodjsPartieArduino/node_modules/component-bind/index.js create mode 100644 NodjsPartieArduino/node_modules/component-bind/package.json create mode 100644 NodjsPartieArduino/node_modules/component-emitter/History.md create mode 100644 NodjsPartieArduino/node_modules/component-emitter/LICENSE create mode 100644 NodjsPartieArduino/node_modules/component-emitter/Readme.md create mode 100644 NodjsPartieArduino/node_modules/component-emitter/index.js create mode 100644 NodjsPartieArduino/node_modules/component-emitter/package.json create mode 100644 NodjsPartieArduino/node_modules/component-inherit/History.md create mode 100644 NodjsPartieArduino/node_modules/component-inherit/Makefile create mode 100644 NodjsPartieArduino/node_modules/component-inherit/Readme.md create mode 100644 NodjsPartieArduino/node_modules/component-inherit/component.json create mode 100644 NodjsPartieArduino/node_modules/component-inherit/index.js create mode 100644 NodjsPartieArduino/node_modules/component-inherit/package.json create mode 100644 NodjsPartieArduino/node_modules/component-inherit/test/inherit.js create mode 100644 NodjsPartieArduino/node_modules/console-control-strings/LICENSE create mode 100644 NodjsPartieArduino/node_modules/console-control-strings/README.md create mode 100644 NodjsPartieArduino/node_modules/console-control-strings/README.md~ create mode 100644 NodjsPartieArduino/node_modules/console-control-strings/index.js create mode 100644 NodjsPartieArduino/node_modules/console-control-strings/package.json create mode 100644 NodjsPartieArduino/node_modules/content-disposition/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/content-disposition/LICENSE create mode 100644 NodjsPartieArduino/node_modules/content-disposition/README.md create mode 100644 NodjsPartieArduino/node_modules/content-disposition/index.js create mode 100644 NodjsPartieArduino/node_modules/content-disposition/package.json create mode 100644 NodjsPartieArduino/node_modules/content-type/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/content-type/LICENSE create mode 100644 NodjsPartieArduino/node_modules/content-type/README.md create mode 100644 NodjsPartieArduino/node_modules/content-type/index.js create mode 100644 NodjsPartieArduino/node_modules/content-type/package.json create mode 100644 NodjsPartieArduino/node_modules/cookie-signature/History.md create mode 100644 NodjsPartieArduino/node_modules/cookie-signature/Readme.md create mode 100644 NodjsPartieArduino/node_modules/cookie-signature/index.js create mode 100644 NodjsPartieArduino/node_modules/cookie-signature/package.json create mode 100644 NodjsPartieArduino/node_modules/cookie/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/cookie/LICENSE create mode 100644 NodjsPartieArduino/node_modules/cookie/README.md create mode 100644 NodjsPartieArduino/node_modules/cookie/index.js create mode 100644 NodjsPartieArduino/node_modules/cookie/package.json create mode 100644 NodjsPartieArduino/node_modules/copy-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/copy-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/copy-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/core-util-is/LICENSE create mode 100644 NodjsPartieArduino/node_modules/core-util-is/README.md create mode 100644 NodjsPartieArduino/node_modules/core-util-is/float.patch create mode 100644 NodjsPartieArduino/node_modules/core-util-is/lib/util.js create mode 100644 NodjsPartieArduino/node_modules/core-util-is/package.json create mode 100644 NodjsPartieArduino/node_modules/core-util-is/test.js create mode 100644 NodjsPartieArduino/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/debug/Makefile create mode 100644 NodjsPartieArduino/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/debug/component.json create mode 100644 NodjsPartieArduino/node_modules/debug/karma.conf.js create mode 100644 NodjsPartieArduino/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/debug/src/debug.js create mode 100644 NodjsPartieArduino/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/debug/src/inspector-log.js create mode 100644 NodjsPartieArduino/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/decompress-response/index.js create mode 100644 NodjsPartieArduino/node_modules/decompress-response/license create mode 100644 NodjsPartieArduino/node_modules/decompress-response/package.json create mode 100644 NodjsPartieArduino/node_modules/decompress-response/readme.md create mode 100644 NodjsPartieArduino/node_modules/deep-extend/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/deep-extend/LICENSE create mode 100644 NodjsPartieArduino/node_modules/deep-extend/README.md create mode 100644 NodjsPartieArduino/node_modules/deep-extend/index.js create mode 100644 NodjsPartieArduino/node_modules/deep-extend/lib/deep-extend.js create mode 100644 NodjsPartieArduino/node_modules/deep-extend/package.json create mode 100644 NodjsPartieArduino/node_modules/define-property/LICENSE create mode 100644 NodjsPartieArduino/node_modules/define-property/README.md create mode 100644 NodjsPartieArduino/node_modules/define-property/index.js create mode 100644 NodjsPartieArduino/node_modules/define-property/package.json create mode 100644 NodjsPartieArduino/node_modules/delegates/History.md create mode 100644 NodjsPartieArduino/node_modules/delegates/License create mode 100644 NodjsPartieArduino/node_modules/delegates/Makefile create mode 100644 NodjsPartieArduino/node_modules/delegates/Readme.md create mode 100644 NodjsPartieArduino/node_modules/delegates/index.js create mode 100644 NodjsPartieArduino/node_modules/delegates/package.json create mode 100644 NodjsPartieArduino/node_modules/delegates/test/index.js create mode 100644 NodjsPartieArduino/node_modules/depd/History.md create mode 100644 NodjsPartieArduino/node_modules/depd/LICENSE create mode 100644 NodjsPartieArduino/node_modules/depd/Readme.md create mode 100644 NodjsPartieArduino/node_modules/depd/index.js create mode 100644 NodjsPartieArduino/node_modules/depd/lib/browser/index.js create mode 100644 NodjsPartieArduino/node_modules/depd/lib/compat/callsite-tostring.js create mode 100644 NodjsPartieArduino/node_modules/depd/lib/compat/event-listener-count.js create mode 100644 NodjsPartieArduino/node_modules/depd/lib/compat/index.js create mode 100644 NodjsPartieArduino/node_modules/depd/package.json create mode 100644 NodjsPartieArduino/node_modules/destroy/LICENSE create mode 100644 NodjsPartieArduino/node_modules/destroy/README.md create mode 100644 NodjsPartieArduino/node_modules/destroy/index.js create mode 100644 NodjsPartieArduino/node_modules/destroy/package.json create mode 100644 NodjsPartieArduino/node_modules/detect-libc/LICENSE create mode 100644 NodjsPartieArduino/node_modules/detect-libc/README.md create mode 100644 NodjsPartieArduino/node_modules/detect-libc/bin/detect-libc.js create mode 100644 NodjsPartieArduino/node_modules/detect-libc/lib/detect-libc.js create mode 100644 NodjsPartieArduino/node_modules/detect-libc/package.json create mode 100644 NodjsPartieArduino/node_modules/ee-first/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ee-first/README.md create mode 100644 NodjsPartieArduino/node_modules/ee-first/index.js create mode 100644 NodjsPartieArduino/node_modules/ee-first/package.json create mode 100644 NodjsPartieArduino/node_modules/encodeurl/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/encodeurl/LICENSE create mode 100644 NodjsPartieArduino/node_modules/encodeurl/README.md create mode 100644 NodjsPartieArduino/node_modules/encodeurl/index.js create mode 100644 NodjsPartieArduino/node_modules/encodeurl/package.json create mode 100644 NodjsPartieArduino/node_modules/end-of-stream/LICENSE create mode 100644 NodjsPartieArduino/node_modules/end-of-stream/README.md create mode 100644 NodjsPartieArduino/node_modules/end-of-stream/index.js create mode 100644 NodjsPartieArduino/node_modules/end-of-stream/package.json create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/LICENSE create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/README.md create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/engine.io.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/socket.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/transport.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/transports/index.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/transports/polling-jsonp.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/transports/polling-xhr.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/transports/polling.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/transports/websocket.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/lib/xmlhttprequest.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/Makefile create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/karma.conf.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/src/debug.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-client/package.json create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/LICENSE create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/Readme.md create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/lib/browser.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/lib/keys.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/lib/utf8.js create mode 100644 NodjsPartieArduino/node_modules/engine.io-parser/package.json create mode 100644 NodjsPartieArduino/node_modules/engine.io/LICENSE create mode 100644 NodjsPartieArduino/node_modules/engine.io/README.md create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/engine.io.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/server.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/socket.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/transport.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/transports/index.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/transports/polling-jsonp.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/transports/polling-xhr.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/transports/polling.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/lib/transports/websocket.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/Makefile create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/karma.conf.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/src/debug.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/engine.io/package.json create mode 100644 NodjsPartieArduino/node_modules/error-symbol/LICENSE create mode 100644 NodjsPartieArduino/node_modules/error-symbol/README.md create mode 100644 NodjsPartieArduino/node_modules/error-symbol/index.js create mode 100644 NodjsPartieArduino/node_modules/error-symbol/package.json create mode 100644 NodjsPartieArduino/node_modules/escape-html/LICENSE create mode 100644 NodjsPartieArduino/node_modules/escape-html/Readme.md create mode 100644 NodjsPartieArduino/node_modules/escape-html/index.js create mode 100644 NodjsPartieArduino/node_modules/escape-html/package.json create mode 100644 NodjsPartieArduino/node_modules/etag/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/etag/LICENSE create mode 100644 NodjsPartieArduino/node_modules/etag/README.md create mode 100644 NodjsPartieArduino/node_modules/etag/index.js create mode 100644 NodjsPartieArduino/node_modules/etag/package.json create mode 100644 NodjsPartieArduino/node_modules/expand-template/README.md create mode 100644 NodjsPartieArduino/node_modules/expand-template/index.js create mode 100644 NodjsPartieArduino/node_modules/expand-template/package.json create mode 100644 NodjsPartieArduino/node_modules/expand-template/test.js create mode 100644 NodjsPartieArduino/node_modules/express/History.md create mode 100644 NodjsPartieArduino/node_modules/express/LICENSE create mode 100644 NodjsPartieArduino/node_modules/express/Readme.md create mode 100644 NodjsPartieArduino/node_modules/express/index.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/application.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/express.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/middleware/init.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/middleware/query.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/request.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/response.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/router/index.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/router/layer.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/router/route.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/utils.js create mode 100644 NodjsPartieArduino/node_modules/express/lib/view.js create mode 100644 NodjsPartieArduino/node_modules/express/package.json create mode 100644 NodjsPartieArduino/node_modules/extend-shallow/LICENSE create mode 100644 NodjsPartieArduino/node_modules/extend-shallow/README.md create mode 100644 NodjsPartieArduino/node_modules/extend-shallow/index.js create mode 100644 NodjsPartieArduino/node_modules/extend-shallow/package.json create mode 100644 NodjsPartieArduino/node_modules/finalhandler/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/finalhandler/LICENSE create mode 100644 NodjsPartieArduino/node_modules/finalhandler/README.md create mode 100644 NodjsPartieArduino/node_modules/finalhandler/index.js create mode 100644 NodjsPartieArduino/node_modules/finalhandler/package.json create mode 100644 NodjsPartieArduino/node_modules/for-in/LICENSE create mode 100644 NodjsPartieArduino/node_modules/for-in/README.md create mode 100644 NodjsPartieArduino/node_modules/for-in/index.js create mode 100644 NodjsPartieArduino/node_modules/for-in/package.json create mode 100644 NodjsPartieArduino/node_modules/for-own/LICENSE create mode 100644 NodjsPartieArduino/node_modules/for-own/README.md create mode 100644 NodjsPartieArduino/node_modules/for-own/index.js create mode 100644 NodjsPartieArduino/node_modules/for-own/package.json create mode 100644 NodjsPartieArduino/node_modules/forwarded/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/forwarded/LICENSE create mode 100644 NodjsPartieArduino/node_modules/forwarded/README.md create mode 100644 NodjsPartieArduino/node_modules/forwarded/index.js create mode 100644 NodjsPartieArduino/node_modules/forwarded/package.json create mode 100644 NodjsPartieArduino/node_modules/fresh/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/fresh/LICENSE create mode 100644 NodjsPartieArduino/node_modules/fresh/README.md create mode 100644 NodjsPartieArduino/node_modules/fresh/index.js create mode 100644 NodjsPartieArduino/node_modules/fresh/package.json create mode 100644 NodjsPartieArduino/node_modules/fs-constants/LICENSE create mode 100644 NodjsPartieArduino/node_modules/fs-constants/README.md create mode 100644 NodjsPartieArduino/node_modules/fs-constants/browser.js create mode 100644 NodjsPartieArduino/node_modules/fs-constants/index.js create mode 100644 NodjsPartieArduino/node_modules/fs-constants/package.json create mode 100644 NodjsPartieArduino/node_modules/gauge/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/gauge/LICENSE create mode 100644 NodjsPartieArduino/node_modules/gauge/README.md create mode 100644 NodjsPartieArduino/node_modules/gauge/base-theme.js create mode 100644 NodjsPartieArduino/node_modules/gauge/error.js create mode 100644 NodjsPartieArduino/node_modules/gauge/has-color.js create mode 100644 NodjsPartieArduino/node_modules/gauge/index.js create mode 100644 NodjsPartieArduino/node_modules/gauge/package.json create mode 100644 NodjsPartieArduino/node_modules/gauge/plumbing.js create mode 100644 NodjsPartieArduino/node_modules/gauge/process.js create mode 100644 NodjsPartieArduino/node_modules/gauge/progress-bar.js create mode 100644 NodjsPartieArduino/node_modules/gauge/render-template.js create mode 100644 NodjsPartieArduino/node_modules/gauge/set-immediate.js create mode 100644 NodjsPartieArduino/node_modules/gauge/set-interval.js create mode 100644 NodjsPartieArduino/node_modules/gauge/spin.js create mode 100644 NodjsPartieArduino/node_modules/gauge/template-item.js create mode 100644 NodjsPartieArduino/node_modules/gauge/theme-set.js create mode 100644 NodjsPartieArduino/node_modules/gauge/themes.js create mode 100644 NodjsPartieArduino/node_modules/gauge/wide-truncate.js create mode 100644 NodjsPartieArduino/node_modules/github-from-package/LICENSE create mode 100644 NodjsPartieArduino/node_modules/github-from-package/example/package.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/example/url.js create mode 100644 NodjsPartieArduino/node_modules/github-from-package/index.js create mode 100644 NodjsPartieArduino/node_modules/github-from-package/package.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/readme.markdown create mode 100644 NodjsPartieArduino/node_modules/github-from-package/test/a.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/test/b.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/test/c.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/test/d.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/test/e.json create mode 100644 NodjsPartieArduino/node_modules/github-from-package/test/url.js create mode 100644 NodjsPartieArduino/node_modules/has-binary2/History.md create mode 100644 NodjsPartieArduino/node_modules/has-binary2/LICENSE create mode 100644 NodjsPartieArduino/node_modules/has-binary2/README.md create mode 100644 NodjsPartieArduino/node_modules/has-binary2/index.js create mode 100644 NodjsPartieArduino/node_modules/has-binary2/node_modules/isarray/README.md create mode 100644 NodjsPartieArduino/node_modules/has-binary2/node_modules/isarray/index.js create mode 100644 NodjsPartieArduino/node_modules/has-binary2/node_modules/isarray/package.json create mode 100644 NodjsPartieArduino/node_modules/has-binary2/package.json create mode 100644 NodjsPartieArduino/node_modules/has-cors/History.md create mode 100644 NodjsPartieArduino/node_modules/has-cors/Makefile create mode 100644 NodjsPartieArduino/node_modules/has-cors/Readme.md create mode 100644 NodjsPartieArduino/node_modules/has-cors/component.json create mode 100644 NodjsPartieArduino/node_modules/has-cors/index.js create mode 100644 NodjsPartieArduino/node_modules/has-cors/package.json create mode 100644 NodjsPartieArduino/node_modules/has-cors/test.js create mode 100644 NodjsPartieArduino/node_modules/has-unicode/LICENSE create mode 100644 NodjsPartieArduino/node_modules/has-unicode/README.md create mode 100644 NodjsPartieArduino/node_modules/has-unicode/index.js create mode 100644 NodjsPartieArduino/node_modules/has-unicode/package.json create mode 100644 NodjsPartieArduino/node_modules/http-errors/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/http-errors/LICENSE create mode 100644 NodjsPartieArduino/node_modules/http-errors/README.md create mode 100644 NodjsPartieArduino/node_modules/http-errors/index.js create mode 100644 NodjsPartieArduino/node_modules/http-errors/package.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/Changelog.md create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/LICENSE create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/README.md create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/dbcs-codec.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/dbcs-data.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/index.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/internal.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/sbcs-codec.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/sbcs-data-generated.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/sbcs-data.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/big5-added.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/cp936.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/cp949.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/cp950.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/eucjp.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/gbk-added.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/tables/shiftjis.json create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/utf16.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/encodings/utf7.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/lib/bom-handling.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/lib/extend-node.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/lib/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/lib/streams.js create mode 100644 NodjsPartieArduino/node_modules/iconv-lite/package.json create mode 100644 NodjsPartieArduino/node_modules/indexof/Makefile create mode 100644 NodjsPartieArduino/node_modules/indexof/Readme.md create mode 100644 NodjsPartieArduino/node_modules/indexof/component.json create mode 100644 NodjsPartieArduino/node_modules/indexof/index.js create mode 100644 NodjsPartieArduino/node_modules/indexof/package.json create mode 100644 NodjsPartieArduino/node_modules/info-symbol/LICENSE create mode 100644 NodjsPartieArduino/node_modules/info-symbol/README.md create mode 100644 NodjsPartieArduino/node_modules/info-symbol/index.js create mode 100644 NodjsPartieArduino/node_modules/info-symbol/package.json create mode 100644 NodjsPartieArduino/node_modules/inherits/LICENSE create mode 100644 NodjsPartieArduino/node_modules/inherits/README.md create mode 100644 NodjsPartieArduino/node_modules/inherits/inherits.js create mode 100644 NodjsPartieArduino/node_modules/inherits/inherits_browser.js create mode 100644 NodjsPartieArduino/node_modules/inherits/package.json create mode 100644 NodjsPartieArduino/node_modules/ini/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ini/README.md create mode 100644 NodjsPartieArduino/node_modules/ini/ini.js create mode 100644 NodjsPartieArduino/node_modules/ini/package.json create mode 100644 NodjsPartieArduino/node_modules/ipaddr.js/README.md create mode 100644 NodjsPartieArduino/node_modules/ipaddr.js/ipaddr.min.js create mode 100644 NodjsPartieArduino/node_modules/ipaddr.js/lib/ipaddr.js create mode 100644 NodjsPartieArduino/node_modules/ipaddr.js/lib/ipaddr.js.d.ts create mode 100644 NodjsPartieArduino/node_modules/ipaddr.js/package.json create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/node_modules/kind-of/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/is-accessor-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/is-buffer/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-buffer/README.md create mode 100644 NodjsPartieArduino/node_modules/is-buffer/index.js create mode 100644 NodjsPartieArduino/node_modules/is-buffer/package.json create mode 100644 NodjsPartieArduino/node_modules/is-buffer/test/basic.js create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/node_modules/kind-of/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/is-data-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/node_modules/kind-of/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/is-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/is-extendable/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-extendable/README.md create mode 100644 NodjsPartieArduino/node_modules/is-extendable/index.js create mode 100644 NodjsPartieArduino/node_modules/is-extendable/package.json create mode 100644 NodjsPartieArduino/node_modules/is-fullwidth-code-point/index.js create mode 100644 NodjsPartieArduino/node_modules/is-fullwidth-code-point/license create mode 100644 NodjsPartieArduino/node_modules/is-fullwidth-code-point/package.json create mode 100644 NodjsPartieArduino/node_modules/is-fullwidth-code-point/readme.md create mode 100644 NodjsPartieArduino/node_modules/is-number/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-number/README.md create mode 100644 NodjsPartieArduino/node_modules/is-number/index.js create mode 100644 NodjsPartieArduino/node_modules/is-number/package.json create mode 100644 NodjsPartieArduino/node_modules/is-plain-object/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-plain-object/README.md create mode 100644 NodjsPartieArduino/node_modules/is-plain-object/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/is-plain-object/index.js create mode 100644 NodjsPartieArduino/node_modules/is-plain-object/package.json create mode 100644 NodjsPartieArduino/node_modules/is-windows/LICENSE create mode 100644 NodjsPartieArduino/node_modules/is-windows/README.md create mode 100644 NodjsPartieArduino/node_modules/is-windows/index.js create mode 100644 NodjsPartieArduino/node_modules/is-windows/package.json create mode 100644 NodjsPartieArduino/node_modules/isarray/Makefile create mode 100644 NodjsPartieArduino/node_modules/isarray/README.md create mode 100644 NodjsPartieArduino/node_modules/isarray/component.json create mode 100644 NodjsPartieArduino/node_modules/isarray/index.js create mode 100644 NodjsPartieArduino/node_modules/isarray/package.json create mode 100644 NodjsPartieArduino/node_modules/isarray/test.js create mode 100644 NodjsPartieArduino/node_modules/isobject/LICENSE create mode 100644 NodjsPartieArduino/node_modules/isobject/README.md create mode 100644 NodjsPartieArduino/node_modules/isobject/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/isobject/index.js create mode 100644 NodjsPartieArduino/node_modules/isobject/package.json create mode 100644 NodjsPartieArduino/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/koalas/LICENSE create mode 100644 NodjsPartieArduino/node_modules/koalas/README.md create mode 100644 NodjsPartieArduino/node_modules/koalas/index.js create mode 100644 NodjsPartieArduino/node_modules/koalas/package.json create mode 100644 NodjsPartieArduino/node_modules/lazy-cache/LICENSE create mode 100644 NodjsPartieArduino/node_modules/lazy-cache/README.md create mode 100644 NodjsPartieArduino/node_modules/lazy-cache/index.js create mode 100644 NodjsPartieArduino/node_modules/lazy-cache/package.json create mode 100644 NodjsPartieArduino/node_modules/log-ok/LICENSE create mode 100644 NodjsPartieArduino/node_modules/log-ok/index.js create mode 100644 NodjsPartieArduino/node_modules/log-ok/package.json create mode 100644 NodjsPartieArduino/node_modules/log-utils/LICENSE create mode 100644 NodjsPartieArduino/node_modules/log-utils/index.js create mode 100644 NodjsPartieArduino/node_modules/log-utils/package.json create mode 100644 NodjsPartieArduino/node_modules/map-visit/LICENSE create mode 100644 NodjsPartieArduino/node_modules/map-visit/README.md create mode 100644 NodjsPartieArduino/node_modules/map-visit/index.js create mode 100644 NodjsPartieArduino/node_modules/map-visit/package.json create mode 100644 NodjsPartieArduino/node_modules/media-typer/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/media-typer/LICENSE create mode 100644 NodjsPartieArduino/node_modules/media-typer/README.md create mode 100644 NodjsPartieArduino/node_modules/media-typer/index.js create mode 100644 NodjsPartieArduino/node_modules/media-typer/package.json create mode 100644 NodjsPartieArduino/node_modules/merge-descriptors/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/merge-descriptors/LICENSE create mode 100644 NodjsPartieArduino/node_modules/merge-descriptors/README.md create mode 100644 NodjsPartieArduino/node_modules/merge-descriptors/index.js create mode 100644 NodjsPartieArduino/node_modules/merge-descriptors/package.json create mode 100644 NodjsPartieArduino/node_modules/methods/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/methods/LICENSE create mode 100644 NodjsPartieArduino/node_modules/methods/README.md create mode 100644 NodjsPartieArduino/node_modules/methods/index.js create mode 100644 NodjsPartieArduino/node_modules/methods/package.json create mode 100644 NodjsPartieArduino/node_modules/mime-db/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/mime-db/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mime-db/README.md create mode 100644 NodjsPartieArduino/node_modules/mime-db/db.json create mode 100644 NodjsPartieArduino/node_modules/mime-db/index.js create mode 100644 NodjsPartieArduino/node_modules/mime-db/package.json create mode 100644 NodjsPartieArduino/node_modules/mime-types/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/mime-types/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mime-types/README.md create mode 100644 NodjsPartieArduino/node_modules/mime-types/index.js create mode 100644 NodjsPartieArduino/node_modules/mime-types/package.json create mode 100644 NodjsPartieArduino/node_modules/mime/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mime/README.md create mode 100644 NodjsPartieArduino/node_modules/mime/build/build.js create mode 100644 NodjsPartieArduino/node_modules/mime/build/test.js create mode 100644 NodjsPartieArduino/node_modules/mime/cli.js create mode 100644 NodjsPartieArduino/node_modules/mime/mime.js create mode 100644 NodjsPartieArduino/node_modules/mime/package.json create mode 100644 NodjsPartieArduino/node_modules/mime/types.json create mode 100644 NodjsPartieArduino/node_modules/mimic-response/index.js create mode 100644 NodjsPartieArduino/node_modules/mimic-response/license create mode 100644 NodjsPartieArduino/node_modules/mimic-response/package.json create mode 100644 NodjsPartieArduino/node_modules/mimic-response/readme.md create mode 100644 NodjsPartieArduino/node_modules/minimist/LICENSE create mode 100644 NodjsPartieArduino/node_modules/minimist/example/parse.js create mode 100644 NodjsPartieArduino/node_modules/minimist/index.js create mode 100644 NodjsPartieArduino/node_modules/minimist/package.json create mode 100644 NodjsPartieArduino/node_modules/minimist/readme.markdown create mode 100644 NodjsPartieArduino/node_modules/minimist/test/all_bool.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/bool.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/dash.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/default_bool.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/dotted.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/kv_short.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/long.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/num.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/parse.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/parse_modified.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/short.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/stop_early.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/unknown.js create mode 100644 NodjsPartieArduino/node_modules/minimist/test/whitespace.js create mode 100644 NodjsPartieArduino/node_modules/mixin-object/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mixin-object/README.md create mode 100644 NodjsPartieArduino/node_modules/mixin-object/index.js create mode 100644 NodjsPartieArduino/node_modules/mixin-object/node_modules/for-in/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mixin-object/node_modules/for-in/README.md create mode 100644 NodjsPartieArduino/node_modules/mixin-object/node_modules/for-in/index.js create mode 100644 NodjsPartieArduino/node_modules/mixin-object/node_modules/for-in/package.json create mode 100644 NodjsPartieArduino/node_modules/mixin-object/package.json create mode 100644 NodjsPartieArduino/node_modules/mkdirp/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mkdirp/bin/cmd.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/bin/usage.txt create mode 100644 NodjsPartieArduino/node_modules/mkdirp/examples/pow.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/index.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/example/parse.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/index.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/package.json create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/readme.markdown create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/dash.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/default_bool.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/dotted.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/long.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/parse.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/parse_modified.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/short.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/node_modules/minimist/test/whitespace.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/package.json create mode 100644 NodjsPartieArduino/node_modules/mkdirp/readme.markdown create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/chmod.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/clobber.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/mkdirp.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/opts_fs.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/opts_fs_sync.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/perm.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/perm_sync.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/race.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/rel.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/return.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/return_sync.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/root.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/sync.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/umask.js create mode 100644 NodjsPartieArduino/node_modules/mkdirp/test/umask_sync.js create mode 100644 NodjsPartieArduino/node_modules/ms/index.js create mode 100644 NodjsPartieArduino/node_modules/ms/license.md create mode 100644 NodjsPartieArduino/node_modules/ms/package.json create mode 100644 NodjsPartieArduino/node_modules/ms/readme.md create mode 100644 NodjsPartieArduino/node_modules/mute-stream/LICENSE create mode 100644 NodjsPartieArduino/node_modules/mute-stream/README.md create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/__root__/index.html create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/__root__/mute.js.html create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/base.css create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/index.html create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/prettify.css create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/prettify.js create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/sort-arrow-sprite.png create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov-report/sorter.js create mode 100644 NodjsPartieArduino/node_modules/mute-stream/coverage/lcov.info create mode 100644 NodjsPartieArduino/node_modules/mute-stream/mute.js create mode 100644 NodjsPartieArduino/node_modules/mute-stream/package.json create mode 100644 NodjsPartieArduino/node_modules/mute-stream/test/basic.js create mode 100644 NodjsPartieArduino/node_modules/nan/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/nan/LICENSE.md create mode 100644 NodjsPartieArduino/node_modules/nan/README.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/asyncworker.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/buffers.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/callback.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/converters.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/errors.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/json.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/maybe_types.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/methods.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/new.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/node_misc.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/object_wrappers.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/persistent.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/scopes.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/script.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/string_bytes.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/v8_internals.md create mode 100644 NodjsPartieArduino/node_modules/nan/doc/v8_misc.md create mode 100644 NodjsPartieArduino/node_modules/nan/include_dirs.js create mode 100644 NodjsPartieArduino/node_modules/nan/nan.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_callbacks.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_callbacks_12_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_callbacks_pre_12_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_converters.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_converters_43_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_converters_pre_43_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_define_own_property_helper.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_implementation_12_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_implementation_pre_12_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_json.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_maybe_43_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_maybe_pre_43_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_new.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_object_wrap.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_persistent_12_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_persistent_pre_12_inl.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_private.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_string_bytes.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_typedarray_contents.h create mode 100644 NodjsPartieArduino/node_modules/nan/nan_weak.h create mode 100644 NodjsPartieArduino/node_modules/nan/package.json create mode 100644 NodjsPartieArduino/node_modules/nan/tools/1to2.js create mode 100644 NodjsPartieArduino/node_modules/nan/tools/README.md create mode 100644 NodjsPartieArduino/node_modules/nan/tools/package.json create mode 100644 NodjsPartieArduino/node_modules/negotiator/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/negotiator/LICENSE create mode 100644 NodjsPartieArduino/node_modules/negotiator/README.md create mode 100644 NodjsPartieArduino/node_modules/negotiator/index.js create mode 100644 NodjsPartieArduino/node_modules/negotiator/lib/charset.js create mode 100644 NodjsPartieArduino/node_modules/negotiator/lib/encoding.js create mode 100644 NodjsPartieArduino/node_modules/negotiator/lib/language.js create mode 100644 NodjsPartieArduino/node_modules/negotiator/lib/mediaType.js create mode 100644 NodjsPartieArduino/node_modules/negotiator/package.json create mode 100644 NodjsPartieArduino/node_modules/node-abi/CODE_OF_CONDUCT.md create mode 100644 NodjsPartieArduino/node_modules/node-abi/CONTRIBUTING.md create mode 100644 NodjsPartieArduino/node_modules/node-abi/LICENSE create mode 100644 NodjsPartieArduino/node_modules/node-abi/README.md create mode 100644 NodjsPartieArduino/node_modules/node-abi/index.js create mode 100644 NodjsPartieArduino/node_modules/node-abi/package.json create mode 100644 NodjsPartieArduino/node_modules/node-abi/test/index.js create mode 100644 NodjsPartieArduino/node_modules/noop-logger/History.md create mode 100644 NodjsPartieArduino/node_modules/noop-logger/Makefile create mode 100644 NodjsPartieArduino/node_modules/noop-logger/Readme.md create mode 100644 NodjsPartieArduino/node_modules/noop-logger/circle.yml create mode 100644 NodjsPartieArduino/node_modules/noop-logger/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/noop-logger/package.json create mode 100644 NodjsPartieArduino/node_modules/noop-logger/test/index.js create mode 100644 NodjsPartieArduino/node_modules/npmlog/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/npmlog/LICENSE create mode 100644 NodjsPartieArduino/node_modules/npmlog/README.md create mode 100644 NodjsPartieArduino/node_modules/npmlog/log.js create mode 100644 NodjsPartieArduino/node_modules/npmlog/package.json create mode 100644 NodjsPartieArduino/node_modules/number-is-nan/index.js create mode 100644 NodjsPartieArduino/node_modules/number-is-nan/license create mode 100644 NodjsPartieArduino/node_modules/number-is-nan/package.json create mode 100644 NodjsPartieArduino/node_modules/number-is-nan/readme.md create mode 100644 NodjsPartieArduino/node_modules/object-assign/index.js create mode 100644 NodjsPartieArduino/node_modules/object-assign/license create mode 100644 NodjsPartieArduino/node_modules/object-assign/package.json create mode 100644 NodjsPartieArduino/node_modules/object-assign/readme.md create mode 100644 NodjsPartieArduino/node_modules/object-component/History.md create mode 100644 NodjsPartieArduino/node_modules/object-component/Makefile create mode 100644 NodjsPartieArduino/node_modules/object-component/Readme.md create mode 100644 NodjsPartieArduino/node_modules/object-component/component.json create mode 100644 NodjsPartieArduino/node_modules/object-component/index.js create mode 100644 NodjsPartieArduino/node_modules/object-component/package.json create mode 100644 NodjsPartieArduino/node_modules/object-component/test/object.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-copy/index.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/define-property/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/define-property/README.md create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/define-property/index.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/define-property/package.json create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-accessor-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-accessor-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-accessor-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-accessor-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-data-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-data-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-data-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-data-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/object-copy/node_modules/is-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/object-copy/package.json create mode 100644 NodjsPartieArduino/node_modules/object-visit/LICENSE create mode 100644 NodjsPartieArduino/node_modules/object-visit/README.md create mode 100644 NodjsPartieArduino/node_modules/object-visit/index.js create mode 100644 NodjsPartieArduino/node_modules/object-visit/package.json create mode 100644 NodjsPartieArduino/node_modules/on-finished/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/on-finished/LICENSE create mode 100644 NodjsPartieArduino/node_modules/on-finished/README.md create mode 100644 NodjsPartieArduino/node_modules/on-finished/index.js create mode 100644 NodjsPartieArduino/node_modules/on-finished/package.json create mode 100644 NodjsPartieArduino/node_modules/once/LICENSE create mode 100644 NodjsPartieArduino/node_modules/once/README.md create mode 100644 NodjsPartieArduino/node_modules/once/once.js create mode 100644 NodjsPartieArduino/node_modules/once/package.json create mode 100644 NodjsPartieArduino/node_modules/os-homedir/index.js create mode 100644 NodjsPartieArduino/node_modules/os-homedir/license create mode 100644 NodjsPartieArduino/node_modules/os-homedir/package.json create mode 100644 NodjsPartieArduino/node_modules/os-homedir/readme.md create mode 100644 NodjsPartieArduino/node_modules/parseqs/LICENSE create mode 100644 NodjsPartieArduino/node_modules/parseqs/Makefile create mode 100644 NodjsPartieArduino/node_modules/parseqs/README.md create mode 100644 NodjsPartieArduino/node_modules/parseqs/index.js create mode 100644 NodjsPartieArduino/node_modules/parseqs/package.json create mode 100644 NodjsPartieArduino/node_modules/parseqs/test.js create mode 100644 NodjsPartieArduino/node_modules/parseuri/History.md create mode 100644 NodjsPartieArduino/node_modules/parseuri/LICENSE create mode 100644 NodjsPartieArduino/node_modules/parseuri/Makefile create mode 100644 NodjsPartieArduino/node_modules/parseuri/README.md create mode 100644 NodjsPartieArduino/node_modules/parseuri/index.js create mode 100644 NodjsPartieArduino/node_modules/parseuri/package.json create mode 100644 NodjsPartieArduino/node_modules/parseuri/test.js create mode 100644 NodjsPartieArduino/node_modules/parseurl/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/parseurl/LICENSE create mode 100644 NodjsPartieArduino/node_modules/parseurl/README.md create mode 100644 NodjsPartieArduino/node_modules/parseurl/index.js create mode 100644 NodjsPartieArduino/node_modules/parseurl/package.json create mode 100644 NodjsPartieArduino/node_modules/path-to-regexp/History.md create mode 100644 NodjsPartieArduino/node_modules/path-to-regexp/LICENSE create mode 100644 NodjsPartieArduino/node_modules/path-to-regexp/Readme.md create mode 100644 NodjsPartieArduino/node_modules/path-to-regexp/index.js create mode 100644 NodjsPartieArduino/node_modules/path-to-regexp/package.json create mode 100644 NodjsPartieArduino/node_modules/pointer-symbol/LICENSE create mode 100644 NodjsPartieArduino/node_modules/pointer-symbol/README.md create mode 100644 NodjsPartieArduino/node_modules/pointer-symbol/index.js create mode 100644 NodjsPartieArduino/node_modules/pointer-symbol/package.json create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/CONTRIBUTING.md create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/README.md create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/appveyor.yml create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/asset.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/bin.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/download.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/error.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/help.txt create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/index.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/log.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/package.json create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/proxy.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/rc.js create mode 100644 NodjsPartieArduino/node_modules/prebuild-install/util.js create mode 100644 NodjsPartieArduino/node_modules/process-nextick-args/index.js create mode 100644 NodjsPartieArduino/node_modules/process-nextick-args/license.md create mode 100644 NodjsPartieArduino/node_modules/process-nextick-args/package.json create mode 100644 NodjsPartieArduino/node_modules/process-nextick-args/readme.md create mode 100644 NodjsPartieArduino/node_modules/promirepl/LICENSE create mode 100644 NodjsPartieArduino/node_modules/promirepl/README.md create mode 100644 NodjsPartieArduino/node_modules/promirepl/bin/prominode.js create mode 100644 NodjsPartieArduino/node_modules/promirepl/index.js create mode 100644 NodjsPartieArduino/node_modules/promirepl/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-actions/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-actions/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-actions/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-actions/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-base/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-base/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-base/changelog.md create mode 100644 NodjsPartieArduino/node_modules/prompt-base/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/dist/debug.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/src/common.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/ms/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/ms/license.md create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/ms/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-base/node_modules/ms/readme.md create mode 100644 NodjsPartieArduino/node_modules/prompt-base/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-checkbox/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-checkbox/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-checkbox/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-checkbox/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/lib/choice.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/lib/utils.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/clone-deep/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/clone-deep/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/clone-deep/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/clone-deep/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/define-property/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/define-property/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/define-property/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/define-property/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/define-property/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/kind-of/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/shallow-clone/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/shallow-clone/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/shallow-clone/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/node_modules/shallow-clone/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-choices/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-list/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-list/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-list/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-list/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-question/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-question/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-question/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/lib/utils.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/dist/debug.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/src/common.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/ms/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/ms/license.md create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/ms/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-question/node_modules/ms/readme.md create mode 100644 NodjsPartieArduino/node_modules/prompt-question/package.json create mode 100644 NodjsPartieArduino/node_modules/prompt-radio/LICENSE create mode 100644 NodjsPartieArduino/node_modules/prompt-radio/README.md create mode 100644 NodjsPartieArduino/node_modules/prompt-radio/index.js create mode 100644 NodjsPartieArduino/node_modules/prompt-radio/package.json create mode 100644 NodjsPartieArduino/node_modules/proxy-addr/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/proxy-addr/LICENSE create mode 100644 NodjsPartieArduino/node_modules/proxy-addr/README.md create mode 100644 NodjsPartieArduino/node_modules/proxy-addr/index.js create mode 100644 NodjsPartieArduino/node_modules/proxy-addr/package.json create mode 100644 NodjsPartieArduino/node_modules/pump/LICENSE create mode 100644 NodjsPartieArduino/node_modules/pump/README.md create mode 100644 NodjsPartieArduino/node_modules/pump/index.js create mode 100644 NodjsPartieArduino/node_modules/pump/package.json create mode 100644 NodjsPartieArduino/node_modules/pump/test-browser.js create mode 100644 NodjsPartieArduino/node_modules/pump/test-node.js create mode 100644 NodjsPartieArduino/node_modules/qs/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/qs/LICENSE create mode 100644 NodjsPartieArduino/node_modules/qs/README.md create mode 100644 NodjsPartieArduino/node_modules/qs/dist/qs.js create mode 100644 NodjsPartieArduino/node_modules/qs/lib/formats.js create mode 100644 NodjsPartieArduino/node_modules/qs/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/qs/lib/parse.js create mode 100644 NodjsPartieArduino/node_modules/qs/lib/stringify.js create mode 100644 NodjsPartieArduino/node_modules/qs/lib/utils.js create mode 100644 NodjsPartieArduino/node_modules/qs/package.json create mode 100644 NodjsPartieArduino/node_modules/qs/test/index.js create mode 100644 NodjsPartieArduino/node_modules/qs/test/parse.js create mode 100644 NodjsPartieArduino/node_modules/qs/test/stringify.js create mode 100644 NodjsPartieArduino/node_modules/qs/test/utils.js create mode 100644 NodjsPartieArduino/node_modules/radio-symbol/LICENSE create mode 100644 NodjsPartieArduino/node_modules/radio-symbol/README.md create mode 100644 NodjsPartieArduino/node_modules/radio-symbol/index.js create mode 100644 NodjsPartieArduino/node_modules/radio-symbol/package.json create mode 100644 NodjsPartieArduino/node_modules/range-parser/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/range-parser/LICENSE create mode 100644 NodjsPartieArduino/node_modules/range-parser/README.md create mode 100644 NodjsPartieArduino/node_modules/range-parser/index.js create mode 100644 NodjsPartieArduino/node_modules/range-parser/package.json create mode 100644 NodjsPartieArduino/node_modules/raw-body/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/raw-body/LICENSE create mode 100644 NodjsPartieArduino/node_modules/raw-body/README.md create mode 100644 NodjsPartieArduino/node_modules/raw-body/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/raw-body/index.js create mode 100644 NodjsPartieArduino/node_modules/raw-body/package.json create mode 100644 NodjsPartieArduino/node_modules/rc/LICENSE.APACHE2 create mode 100644 NodjsPartieArduino/node_modules/rc/LICENSE.BSD create mode 100644 NodjsPartieArduino/node_modules/rc/LICENSE.MIT create mode 100644 NodjsPartieArduino/node_modules/rc/README.md create mode 100644 NodjsPartieArduino/node_modules/rc/browser.js create mode 100644 NodjsPartieArduino/node_modules/rc/cli.js create mode 100644 NodjsPartieArduino/node_modules/rc/index.js create mode 100644 NodjsPartieArduino/node_modules/rc/lib/utils.js create mode 100644 NodjsPartieArduino/node_modules/rc/package.json create mode 100644 NodjsPartieArduino/node_modules/rc/test/ini.js create mode 100644 NodjsPartieArduino/node_modules/rc/test/nested-env-vars.js create mode 100644 NodjsPartieArduino/node_modules/rc/test/test.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/CONTRIBUTING.md create mode 100644 NodjsPartieArduino/node_modules/readable-stream/GOVERNANCE.md create mode 100644 NodjsPartieArduino/node_modules/readable-stream/LICENSE create mode 100644 NodjsPartieArduino/node_modules/readable-stream/README.md create mode 100644 NodjsPartieArduino/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md create mode 100644 NodjsPartieArduino/node_modules/readable-stream/duplex-browser.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/duplex.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/_stream_duplex.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/_stream_passthrough.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/_stream_readable.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/_stream_transform.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/_stream_writable.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/internal/streams/BufferList.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/internal/streams/destroy.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/internal/streams/stream-browser.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/lib/internal/streams/stream.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/package.json create mode 100644 NodjsPartieArduino/node_modules/readable-stream/passthrough.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/readable-browser.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/readable.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/transform.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/writable-browser.js create mode 100644 NodjsPartieArduino/node_modules/readable-stream/writable.js create mode 100644 NodjsPartieArduino/node_modules/readline-ui/LICENSE create mode 100644 NodjsPartieArduino/node_modules/readline-ui/README.md create mode 100644 NodjsPartieArduino/node_modules/readline-ui/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/ansi-regex/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/ansi-regex/license create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/ansi-regex/package.json create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/ansi-regex/readme.md create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/is-fullwidth-code-point/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/is-fullwidth-code-point/license create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/is-fullwidth-code-point/package.json create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/is-fullwidth-code-point/readme.md create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/string-width/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/string-width/license create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/string-width/package.json create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/string-width/readme.md create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/strip-ansi/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/strip-ansi/license create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/strip-ansi/package.json create mode 100644 NodjsPartieArduino/node_modules/readline-ui/node_modules/strip-ansi/readme.md create mode 100644 NodjsPartieArduino/node_modules/readline-ui/package.json create mode 100644 NodjsPartieArduino/node_modules/readline-utils/LICENSE create mode 100644 NodjsPartieArduino/node_modules/readline-utils/README.md create mode 100644 NodjsPartieArduino/node_modules/readline-utils/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-utils/node_modules/is-number/LICENSE create mode 100644 NodjsPartieArduino/node_modules/readline-utils/node_modules/is-number/README.md create mode 100644 NodjsPartieArduino/node_modules/readline-utils/node_modules/is-number/index.js create mode 100644 NodjsPartieArduino/node_modules/readline-utils/node_modules/is-number/package.json create mode 100644 NodjsPartieArduino/node_modules/readline-utils/package.json create mode 100644 NodjsPartieArduino/node_modules/safe-buffer/LICENSE create mode 100644 NodjsPartieArduino/node_modules/safe-buffer/README.md create mode 100644 NodjsPartieArduino/node_modules/safe-buffer/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/safe-buffer/index.js create mode 100644 NodjsPartieArduino/node_modules/safe-buffer/package.json create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/LICENSE create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/Porting-Buffer.md create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/Readme.md create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/dangerous.js create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/package.json create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/safer.js create mode 100644 NodjsPartieArduino/node_modules/safer-buffer/tests.js create mode 100644 NodjsPartieArduino/node_modules/semver/LICENSE create mode 100644 NodjsPartieArduino/node_modules/semver/README.md create mode 100644 NodjsPartieArduino/node_modules/semver/bin/semver create mode 100644 NodjsPartieArduino/node_modules/semver/package.json create mode 100644 NodjsPartieArduino/node_modules/semver/range.bnf create mode 100644 NodjsPartieArduino/node_modules/semver/semver.js create mode 100644 NodjsPartieArduino/node_modules/send/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/send/LICENSE create mode 100644 NodjsPartieArduino/node_modules/send/README.md create mode 100644 NodjsPartieArduino/node_modules/send/index.js create mode 100644 NodjsPartieArduino/node_modules/send/package.json create mode 100644 NodjsPartieArduino/node_modules/serialport/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/serialport/LICENSE create mode 100644 NodjsPartieArduino/node_modules/serialport/README.md create mode 100644 NodjsPartieArduino/node_modules/serialport/bin/echo.js create mode 100644 NodjsPartieArduino/node_modules/serialport/bin/find-arduino.js create mode 100644 NodjsPartieArduino/node_modules/serialport/bin/list.js create mode 100644 NodjsPartieArduino/node_modules/serialport/bin/repl.js create mode 100644 NodjsPartieArduino/node_modules/serialport/bin/terminal.js create mode 100644 NodjsPartieArduino/node_modules/serialport/binding.gyp create mode 100644 NodjsPartieArduino/node_modules/serialport/build/Release/serialport.node create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/auto-detect.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/base.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/darwin.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/linux-list.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/linux.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/mock.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/poller.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/unix-read.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/unix-write.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/win32-sn-parser.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/bindings/win32.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/parsers.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/serialport.js create mode 100644 NodjsPartieArduino/node_modules/serialport/lib/util.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/dist/debug.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/src/common.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/ms/index.js create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/ms/license.md create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/ms/package.json create mode 100644 NodjsPartieArduino/node_modules/serialport/node_modules/ms/readme.md create mode 100644 NodjsPartieArduino/node_modules/serialport/package.json create mode 100644 NodjsPartieArduino/node_modules/serialport/src/darwin_list.cpp create mode 100644 NodjsPartieArduino/node_modules/serialport/src/darwin_list.h create mode 100644 NodjsPartieArduino/node_modules/serialport/src/poller.cpp create mode 100644 NodjsPartieArduino/node_modules/serialport/src/poller.h create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport.cpp create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport.h create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport_linux.cpp create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport_linux.h create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport_unix.cpp create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport_unix.h create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport_win.cpp create mode 100644 NodjsPartieArduino/node_modules/serialport/src/serialport_win.h create mode 100644 NodjsPartieArduino/node_modules/serialport/test.js create mode 100644 NodjsPartieArduino/node_modules/serve-static/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/serve-static/LICENSE create mode 100644 NodjsPartieArduino/node_modules/serve-static/README.md create mode 100644 NodjsPartieArduino/node_modules/serve-static/index.js create mode 100644 NodjsPartieArduino/node_modules/serve-static/package.json create mode 100644 NodjsPartieArduino/node_modules/set-blocking/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/set-blocking/LICENSE.txt create mode 100644 NodjsPartieArduino/node_modules/set-blocking/README.md create mode 100644 NodjsPartieArduino/node_modules/set-blocking/index.js create mode 100644 NodjsPartieArduino/node_modules/set-blocking/package.json create mode 100644 NodjsPartieArduino/node_modules/set-getter/LICENSE create mode 100644 NodjsPartieArduino/node_modules/set-getter/README.md create mode 100644 NodjsPartieArduino/node_modules/set-getter/index.js create mode 100644 NodjsPartieArduino/node_modules/set-getter/package.json create mode 100644 NodjsPartieArduino/node_modules/set-value/LICENSE create mode 100644 NodjsPartieArduino/node_modules/set-value/README.md create mode 100644 NodjsPartieArduino/node_modules/set-value/index.js create mode 100644 NodjsPartieArduino/node_modules/set-value/package.json create mode 100644 NodjsPartieArduino/node_modules/setprototypeof/LICENSE create mode 100644 NodjsPartieArduino/node_modules/setprototypeof/README.md create mode 100644 NodjsPartieArduino/node_modules/setprototypeof/index.d.ts create mode 100644 NodjsPartieArduino/node_modules/setprototypeof/index.js create mode 100644 NodjsPartieArduino/node_modules/setprototypeof/package.json create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/LICENSE create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/README.md create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/index.js create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/shallow-clone/package.json create mode 100644 NodjsPartieArduino/node_modules/signal-exit/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/signal-exit/LICENSE.txt create mode 100644 NodjsPartieArduino/node_modules/signal-exit/README.md create mode 100644 NodjsPartieArduino/node_modules/signal-exit/index.js create mode 100644 NodjsPartieArduino/node_modules/signal-exit/package.json create mode 100644 NodjsPartieArduino/node_modules/signal-exit/signals.js create mode 100644 NodjsPartieArduino/node_modules/simple-concat/LICENSE create mode 100644 NodjsPartieArduino/node_modules/simple-concat/README.md create mode 100644 NodjsPartieArduino/node_modules/simple-concat/index.js create mode 100644 NodjsPartieArduino/node_modules/simple-concat/package.json create mode 100644 NodjsPartieArduino/node_modules/simple-concat/test/basic.js create mode 100644 NodjsPartieArduino/node_modules/simple-get/LICENSE create mode 100644 NodjsPartieArduino/node_modules/simple-get/README.md create mode 100644 NodjsPartieArduino/node_modules/simple-get/index.js create mode 100644 NodjsPartieArduino/node_modules/simple-get/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io-adapter/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io-adapter/Readme.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-adapter/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-adapter/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/README.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.dev.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.dev.js.map create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.js.map create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.slim.dev.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.slim.dev.js.map create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.slim.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/dist/socket.io.slim.js.map create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/lib/manager.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/lib/on.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/lib/socket.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/lib/url.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/Makefile create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/karma.conf.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/src/debug.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-client/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/Readme.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/binary.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/is-buffer.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/Makefile create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/karma.conf.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/node.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/src/debug.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/isarray/README.md create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/isarray/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/node_modules/isarray/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io-parser/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io/Readme.md create mode 100644 NodjsPartieArduino/node_modules/socket.io/lib/client.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/lib/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/lib/namespace.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/lib/parent-namespace.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/lib/socket.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/CHANGELOG.md create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/LICENSE create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/README.md create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/dist/debug.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/src/browser.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/src/common.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/src/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/debug/src/node.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/ms/index.js create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/ms/license.md create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/ms/package.json create mode 100644 NodjsPartieArduino/node_modules/socket.io/node_modules/ms/readme.md create mode 100644 NodjsPartieArduino/node_modules/socket.io/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/define-property/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/define-property/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/define-property/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/define-property/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-accessor-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-data-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-descriptor/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-descriptor/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-descriptor/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/is-descriptor/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/kind-of/LICENSE create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/kind-of/README.md create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/kind-of/index.js create mode 100644 NodjsPartieArduino/node_modules/static-extend/node_modules/kind-of/package.json create mode 100644 NodjsPartieArduino/node_modules/static-extend/package.json create mode 100644 NodjsPartieArduino/node_modules/statuses/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/statuses/LICENSE create mode 100644 NodjsPartieArduino/node_modules/statuses/README.md create mode 100644 NodjsPartieArduino/node_modules/statuses/codes.json create mode 100644 NodjsPartieArduino/node_modules/statuses/index.js create mode 100644 NodjsPartieArduino/node_modules/statuses/package.json create mode 100644 NodjsPartieArduino/node_modules/string-width/index.js create mode 100644 NodjsPartieArduino/node_modules/string-width/license create mode 100644 NodjsPartieArduino/node_modules/string-width/package.json create mode 100644 NodjsPartieArduino/node_modules/string-width/readme.md create mode 100644 NodjsPartieArduino/node_modules/string_decoder/LICENSE create mode 100644 NodjsPartieArduino/node_modules/string_decoder/README.md create mode 100644 NodjsPartieArduino/node_modules/string_decoder/lib/string_decoder.js create mode 100644 NodjsPartieArduino/node_modules/string_decoder/package.json create mode 100644 NodjsPartieArduino/node_modules/strip-ansi/index.js create mode 100644 NodjsPartieArduino/node_modules/strip-ansi/license create mode 100644 NodjsPartieArduino/node_modules/strip-ansi/package.json create mode 100644 NodjsPartieArduino/node_modules/strip-ansi/readme.md create mode 100644 NodjsPartieArduino/node_modules/strip-color/LICENSE create mode 100644 NodjsPartieArduino/node_modules/strip-color/README.md create mode 100644 NodjsPartieArduino/node_modules/strip-color/index.js create mode 100644 NodjsPartieArduino/node_modules/strip-color/package.json create mode 100644 NodjsPartieArduino/node_modules/strip-json-comments/index.js create mode 100644 NodjsPartieArduino/node_modules/strip-json-comments/license create mode 100644 NodjsPartieArduino/node_modules/strip-json-comments/package.json create mode 100644 NodjsPartieArduino/node_modules/strip-json-comments/readme.md create mode 100644 NodjsPartieArduino/node_modules/success-symbol/LICENSE create mode 100644 NodjsPartieArduino/node_modules/success-symbol/README.md create mode 100644 NodjsPartieArduino/node_modules/success-symbol/index.js create mode 100644 NodjsPartieArduino/node_modules/success-symbol/package.json create mode 100644 NodjsPartieArduino/node_modules/tar-fs/LICENSE create mode 100644 NodjsPartieArduino/node_modules/tar-fs/README.md create mode 100644 NodjsPartieArduino/node_modules/tar-fs/index.js create mode 100644 NodjsPartieArduino/node_modules/tar-fs/node_modules/pump/LICENSE create mode 100644 NodjsPartieArduino/node_modules/tar-fs/node_modules/pump/README.md create mode 100644 NodjsPartieArduino/node_modules/tar-fs/node_modules/pump/index.js create mode 100644 NodjsPartieArduino/node_modules/tar-fs/node_modules/pump/package.json create mode 100644 NodjsPartieArduino/node_modules/tar-fs/node_modules/pump/test-browser.js create mode 100644 NodjsPartieArduino/node_modules/tar-fs/node_modules/pump/test.js create mode 100644 NodjsPartieArduino/node_modules/tar-fs/package.json create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/a/hello.txt create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/b/a/test.txt create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/d/file1 create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/d/file2 create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/d/sub-dir/file5 create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/d/sub-files/file3 create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/d/sub-files/file4 create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/e/file create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/fixtures/invalid.tar create mode 100644 NodjsPartieArduino/node_modules/tar-fs/test/index.js create mode 100644 NodjsPartieArduino/node_modules/tar-stream/LICENSE create mode 100644 NodjsPartieArduino/node_modules/tar-stream/README.md create mode 100644 NodjsPartieArduino/node_modules/tar-stream/extract.js create mode 100644 NodjsPartieArduino/node_modules/tar-stream/headers.js create mode 100644 NodjsPartieArduino/node_modules/tar-stream/index.js create mode 100644 NodjsPartieArduino/node_modules/tar-stream/pack.js create mode 100644 NodjsPartieArduino/node_modules/tar-stream/package.json create mode 100644 NodjsPartieArduino/node_modules/terminal-paginator/LICENSE create mode 100644 NodjsPartieArduino/node_modules/terminal-paginator/README.md create mode 100644 NodjsPartieArduino/node_modules/terminal-paginator/index.js create mode 100644 NodjsPartieArduino/node_modules/terminal-paginator/package.json create mode 100644 NodjsPartieArduino/node_modules/time-stamp/LICENSE create mode 100644 NodjsPartieArduino/node_modules/time-stamp/README.md create mode 100644 NodjsPartieArduino/node_modules/time-stamp/index.js create mode 100644 NodjsPartieArduino/node_modules/time-stamp/package.json create mode 100644 NodjsPartieArduino/node_modules/to-array/LICENCE create mode 100644 NodjsPartieArduino/node_modules/to-array/README.md create mode 100644 NodjsPartieArduino/node_modules/to-array/index.js create mode 100644 NodjsPartieArduino/node_modules/to-array/package.json create mode 100644 NodjsPartieArduino/node_modules/to-buffer/LICENSE create mode 100644 NodjsPartieArduino/node_modules/to-buffer/README.md create mode 100644 NodjsPartieArduino/node_modules/to-buffer/index.js create mode 100644 NodjsPartieArduino/node_modules/to-buffer/package.json create mode 100644 NodjsPartieArduino/node_modules/to-buffer/test.js create mode 100644 NodjsPartieArduino/node_modules/to-object-path/LICENSE create mode 100644 NodjsPartieArduino/node_modules/to-object-path/README.md create mode 100644 NodjsPartieArduino/node_modules/to-object-path/index.js create mode 100644 NodjsPartieArduino/node_modules/to-object-path/package.json create mode 100644 NodjsPartieArduino/node_modules/toggle-array/LICENSE create mode 100644 NodjsPartieArduino/node_modules/toggle-array/README.md create mode 100644 NodjsPartieArduino/node_modules/toggle-array/index.js create mode 100644 NodjsPartieArduino/node_modules/toggle-array/package.json create mode 100644 NodjsPartieArduino/node_modules/tunnel-agent/LICENSE create mode 100644 NodjsPartieArduino/node_modules/tunnel-agent/README.md create mode 100644 NodjsPartieArduino/node_modules/tunnel-agent/index.js create mode 100644 NodjsPartieArduino/node_modules/tunnel-agent/package.json create mode 100644 NodjsPartieArduino/node_modules/type-is/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/type-is/LICENSE create mode 100644 NodjsPartieArduino/node_modules/type-is/README.md create mode 100644 NodjsPartieArduino/node_modules/type-is/index.js create mode 100644 NodjsPartieArduino/node_modules/type-is/package.json create mode 100644 NodjsPartieArduino/node_modules/unpipe/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/unpipe/LICENSE create mode 100644 NodjsPartieArduino/node_modules/unpipe/README.md create mode 100644 NodjsPartieArduino/node_modules/unpipe/index.js create mode 100644 NodjsPartieArduino/node_modules/unpipe/package.json create mode 100644 NodjsPartieArduino/node_modules/util-deprecate/History.md create mode 100644 NodjsPartieArduino/node_modules/util-deprecate/LICENSE create mode 100644 NodjsPartieArduino/node_modules/util-deprecate/README.md create mode 100644 NodjsPartieArduino/node_modules/util-deprecate/browser.js create mode 100644 NodjsPartieArduino/node_modules/util-deprecate/node.js create mode 100644 NodjsPartieArduino/node_modules/util-deprecate/package.json create mode 100644 NodjsPartieArduino/node_modules/utils-merge/LICENSE create mode 100644 NodjsPartieArduino/node_modules/utils-merge/README.md create mode 100644 NodjsPartieArduino/node_modules/utils-merge/index.js create mode 100644 NodjsPartieArduino/node_modules/utils-merge/package.json create mode 100644 NodjsPartieArduino/node_modules/vary/HISTORY.md create mode 100644 NodjsPartieArduino/node_modules/vary/LICENSE create mode 100644 NodjsPartieArduino/node_modules/vary/README.md create mode 100644 NodjsPartieArduino/node_modules/vary/index.js create mode 100644 NodjsPartieArduino/node_modules/vary/package.json create mode 100644 NodjsPartieArduino/node_modules/warning-symbol/LICENSE create mode 100644 NodjsPartieArduino/node_modules/warning-symbol/README.md create mode 100644 NodjsPartieArduino/node_modules/warning-symbol/index.js create mode 100644 NodjsPartieArduino/node_modules/warning-symbol/package.json create mode 100644 NodjsPartieArduino/node_modules/which-pm-runs/LICENSE create mode 100644 NodjsPartieArduino/node_modules/which-pm-runs/README.md create mode 100644 NodjsPartieArduino/node_modules/which-pm-runs/index.js create mode 100644 NodjsPartieArduino/node_modules/which-pm-runs/package.json create mode 100644 NodjsPartieArduino/node_modules/wide-align/LICENSE create mode 100644 NodjsPartieArduino/node_modules/wide-align/README.md create mode 100644 NodjsPartieArduino/node_modules/wide-align/align.js create mode 100644 NodjsPartieArduino/node_modules/wide-align/package.json create mode 100644 NodjsPartieArduino/node_modules/window-size/LICENSE create mode 100644 NodjsPartieArduino/node_modules/window-size/README.md create mode 100644 NodjsPartieArduino/node_modules/window-size/cli.js create mode 100644 NodjsPartieArduino/node_modules/window-size/index.js create mode 100644 NodjsPartieArduino/node_modules/window-size/node_modules/is-number/LICENSE create mode 100644 NodjsPartieArduino/node_modules/window-size/node_modules/is-number/README.md create mode 100644 NodjsPartieArduino/node_modules/window-size/node_modules/is-number/index.js create mode 100644 NodjsPartieArduino/node_modules/window-size/node_modules/is-number/package.json create mode 100644 NodjsPartieArduino/node_modules/window-size/package.json create mode 100644 NodjsPartieArduino/node_modules/window-size/utils.js create mode 100644 NodjsPartieArduino/node_modules/wrappy/LICENSE create mode 100644 NodjsPartieArduino/node_modules/wrappy/README.md create mode 100644 NodjsPartieArduino/node_modules/wrappy/package.json create mode 100644 NodjsPartieArduino/node_modules/wrappy/wrappy.js create mode 100644 NodjsPartieArduino/node_modules/ws/LICENSE create mode 100644 NodjsPartieArduino/node_modules/ws/README.md create mode 100644 NodjsPartieArduino/node_modules/ws/browser.js create mode 100644 NodjsPartieArduino/node_modules/ws/index.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/buffer-util.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/constants.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/event-target.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/extension.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/permessage-deflate.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/receiver.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/sender.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/validation.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/websocket-server.js create mode 100644 NodjsPartieArduino/node_modules/ws/lib/websocket.js create mode 100644 NodjsPartieArduino/node_modules/ws/package.json create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/LICENSE create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/README.md create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/autotest.watchr create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/example/demo.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/lib/XMLHttpRequest.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/package.json create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-constants.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-events.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-exceptions.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-headers.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-redirect-302.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-redirect-303.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-redirect-307.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-request-methods.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/test-request-protocols.js create mode 100644 NodjsPartieArduino/node_modules/xmlhttprequest-ssl/tests/testdata.txt create mode 100644 NodjsPartieArduino/node_modules/xtend/LICENCE create mode 100644 NodjsPartieArduino/node_modules/xtend/Makefile create mode 100644 NodjsPartieArduino/node_modules/xtend/README.md create mode 100644 NodjsPartieArduino/node_modules/xtend/immutable.js create mode 100644 NodjsPartieArduino/node_modules/xtend/mutable.js create mode 100644 NodjsPartieArduino/node_modules/xtend/package.json create mode 100644 NodjsPartieArduino/node_modules/xtend/test.js create mode 100644 NodjsPartieArduino/node_modules/yeast/LICENSE create mode 100644 NodjsPartieArduino/node_modules/yeast/README.md create mode 100644 NodjsPartieArduino/node_modules/yeast/index.js create mode 100644 NodjsPartieArduino/node_modules/yeast/package.json create mode 100644 NodjsPartieArduino/package-lock.json create mode 100644 NodjsPartieArduino/package.json create mode 100644 NodjsPartieArduino/serial-counter/serial-counter.ino create mode 100644 NodjsPartieArduino/serial-sketch/serial-sketch.ino create mode 100644 NodjsPartieArduino/server/index.html create mode 100644 NodjsPartieArduino/server/index.js create mode 100644 NodjsPartieArduino/server/index.js~ diff --git a/NodjsPartieArduino/README.md b/NodjsPartieArduino/README.md new file mode 100644 index 0000000..d05e125 --- /dev/null +++ b/NodjsPartieArduino/README.md @@ -0,0 +1,8 @@ +# serial port with nodejs and arduino + +# Steps +1. load serial-sketch to arduino + - you can see serial: `cat /dev/ttyACM0` + +# Issues +- for permissiones: `sudo chmod a+rw /dev/ttyACM0` diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/README.md b/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/README.md new file mode 100644 index 0000000..a7436c2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/README.md @@ -0,0 +1 @@ +See our api docs https://node-serialport.github.io/parsers/ByteLengthParser.html diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/byte-length.js b/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/byte-length.js new file mode 100644 index 0000000..bd81d0c --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/byte-length.js @@ -0,0 +1,58 @@ +'use strict' +const Buffer = require('safe-buffer').Buffer +const Transform = require('stream').Transform + +/** + * Emit data every number of bytes + * @extends Transform + * @param {Object} options parser options object + * @param {Number} options.length the number of bytes on each data event + * @summary A transform stream that emits data as a buffer after a specific number of bytes are received. Runs in O(n) time. + * @example +const SerialPort = require('serialport') +const ByteLength = require('@serialport/parser-byte-length') +const port = new SerialPort('/dev/tty-usbserial1') +const parser = port.pipe(new ByteLength({length: 8})) +parser.on('data', console.log) // will have 8 bytes per data event + */ +class ByteLengthParser extends Transform { + constructor (options) { + super(options) + options = options || {} + + if (typeof options.length !== 'number') { + throw new TypeError('"length" is not a number') + } + + if (options.length < 1) { + throw new TypeError('"length" is not greater than 0') + } + + this.length = options.length + this.position = 0 + this.buffer = Buffer.alloc(this.length) + } + + _transform (chunk, encoding, cb) { + let cursor = 0 + while (cursor < chunk.length) { + this.buffer[this.position] = chunk[cursor] + cursor++ + this.position++ + if (this.position === this.length) { + this.push(this.buffer) + this.buffer = Buffer.alloc(this.length) + this.position = 0 + } + } + cb() + } + + _flush (cb) { + this.push(this.buffer.slice(0, this.position)) + this.buffer = Buffer.alloc(this.length) + cb() + } +} + +module.exports = ByteLengthParser diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/package.json b/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/package.json new file mode 100644 index 0000000..cc04046 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-byte-length/package.json @@ -0,0 +1,86 @@ +{ + "_args": [ + [ + { + "raw": "@serialport/parser-byte-length@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-byte-length", + "name": "@serialport/parser-byte-length", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "@serialport/parser-byte-length@>=1.0.5 <2.0.0", + "_hasShrinkwrap": false, + "_id": "@serialport/parser-byte-length@1.0.5", + "_inCache": true, + "_location": "/@serialport/parser-byte-length", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/parser-byte-length_1.0.5_1525576170499_0.28949422455242524" + }, + "_npmUser": { + "name": "reconbot", + "email": "wizard@roborooter.com" + }, + "_npmVersion": "6.0.0", + "_phantomChildren": {}, + "_requested": { + "raw": "@serialport/parser-byte-length@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-byte-length", + "name": "@serialport/parser-byte-length", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/@serialport/parser-byte-length/-/parser-byte-length-1.0.5.tgz", + "_shasum": "3ea84d47cb259165f9e4911fbbcb98a46550dd0e", + "_shrinkwrap": null, + "_spec": "@serialport/parser-byte-length@^1.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "bugs": { + "url": "https://github.com/node-serialport/parsers/issues" + }, + "dependencies": { + "safe-buffer": "^5.1.1" + }, + "description": "See our api docs https://node-serialport.github.io/parsers/ByteLengthParser.html", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-GCz/v/KG2Wv7SdQ2nv8jYGBY6D4h5tibj9bs0+pnryCDAr8xmmvnesFW15FIu4rwOMgsKhCHyp7roD8bRGs63A==", + "shasum": "3ea84d47cb259165f9e4911fbbcb98a46550dd0e", + "tarball": "https://registry.npmjs.org/@serialport/parser-byte-length/-/parser-byte-length-1.0.5.tgz", + "fileCount": 3, + "unpackedSize": 2043, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7nHqCRA9TVsSAnZWagAAFQsP/ArpPHolXJ8v7FBguT8e\n/oD46cYmxWp/OJuYwa6bvSxDw7W4TUrrTy4OhV4GSPNazZcGACoIvqlLsa7K\naf2nO0R/WgyCY+HO6FU9l+8JyTWIldfrfsVJMFGgYy54hVP8IsxxSgupxOkZ\n9zSMt/dVOZ1BxoHxqeWYtbZFyovAO6EY7A2Qj7JEVly757yr1wSqnTDFmN/q\nDoKRqqhatUr48Oq/n+FbjuNnXUgEzEQPAZlCFmbtUyyETvvUPyVcmfGDvzxe\nvLf7cBp1yQZyVKKBOtakj7L2QkUnmQmcSsQXsDeym7SVOovBaw7sNv+dQIwC\nCxLm3PPl9SbUV7htXI7m7XnBqoCDO+2MkakClNq3MKeYRDSmjWvnlZIgq/9l\nMrUE2iwQRJ8tOb8lmX5QCRcPYbcefmUqzCeDWYafllEqkeB4t9Yl49sDn8KT\nIUpCF4lU9OEE6GheoWZv2a/RdP5hT2FW2B0rk9Fpp/+01zG8Ryd2Nbp6HIu/\n+VsjujhVhgK2ekVplktTvsUX96q4ZFNC7BYboGW7FdKbgCMOxN91/UQG5WUb\nW8qtk5ppoRYMxwKwsqlKQQEiJuxsMu7ZzRaq+Vo+JqM290Hnmg88AE11cSPI\nLuo0B36DNz5iO/haUXpjkNKQc8AT7rN8NFdmU8MFut0jeKnRBbMC4opGly9f\nbzmy\r\n=EmIi\r\n-----END PGP SIGNATURE-----\r\n" + }, + "homepage": "https://github.com/node-serialport/parsers#readme", + "license": "MIT", + "main": "byte-length.js", + "maintainers": [ + { + "name": "reconbot", + "email": "wizard@roborooter.com" + } + ], + "name": "@serialport/parser-byte-length", + "optionalDependencies": {}, + "publishConfig": { + "access": "public" + }, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/node-serialport/parsers.git" + }, + "version": "1.0.5" +} diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/README.md b/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/README.md new file mode 100644 index 0000000..9be3f97 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/README.md @@ -0,0 +1 @@ +See our api docs https://node-serialport.github.io/parsers/CCTalkParser.html diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/cctalk.js b/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/cctalk.js new file mode 100644 index 0000000..3d81bcb --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/cctalk.js @@ -0,0 +1,44 @@ +'use strict' +const Transform = require('stream').Transform +const Buffer = require('safe-buffer').Buffer + +/** + * Parse the CCTalk protocol + * @extends Transform + * @summary A transform stream that emits CCTalk packets as they are received. + * @example +const SerialPort = require('serialport') +const CCTalk = require('@serialport/parser-cctalk') +const port = new SerialPort('/dev/ttyUSB0') +const parser = port.pipe(new CCtalk()) +parser.on('data', console.log) + */ +class CCTalkParser extends Transform { + constructor () { + super() + this.array = [] + this.cursor = 0 + } + _transform (buffer, _, cb) { + this.cursor += buffer.length + // TODO: Better Faster es7 no supported by node 4 + // ES7 allows directly push [...buffer] + // this.array = this.array.concat(Array.from(buffer)) //Slower ?!? + Array.from(buffer) + .map((byte) => this.array.push(byte)) + while (this.cursor > 1 && this.cursor >= this.array[1] + 5) { + // full frame accumulated + // copy command from the array + const FullMsgLength = this.array[1] + 5 + + const frame = Buffer.from(this.array.slice(0, FullMsgLength)) + // Preserve Extra Data + this.array = this.array.slice(frame.length, this.array.length) + this.cursor -= FullMsgLength + this.push(frame) + } + cb() + } +} + +module.exports = CCTalkParser diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/package.json b/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/package.json new file mode 100644 index 0000000..e6dda07 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-cctalk/package.json @@ -0,0 +1,86 @@ +{ + "_args": [ + [ + { + "raw": "@serialport/parser-cctalk@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-cctalk", + "name": "@serialport/parser-cctalk", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "@serialport/parser-cctalk@>=1.0.5 <2.0.0", + "_hasShrinkwrap": false, + "_id": "@serialport/parser-cctalk@1.0.5", + "_inCache": true, + "_location": "/@serialport/parser-cctalk", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/parser-cctalk_1.0.5_1525576170464_0.7326322874010986" + }, + "_npmUser": { + "name": "reconbot", + "email": "wizard@roborooter.com" + }, + "_npmVersion": "6.0.0", + "_phantomChildren": {}, + "_requested": { + "raw": "@serialport/parser-cctalk@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-cctalk", + "name": "@serialport/parser-cctalk", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/@serialport/parser-cctalk/-/parser-cctalk-1.0.5.tgz", + "_shasum": "e489254d1a6b29fb35187366e540c68624f33ab0", + "_shrinkwrap": null, + "_spec": "@serialport/parser-cctalk@^1.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "bugs": { + "url": "https://github.com/node-serialport/parsers/issues" + }, + "dependencies": { + "safe-buffer": "^5.1.1" + }, + "description": "See our api docs https://node-serialport.github.io/parsers/CCTalkParser.html", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-VdoG1rRXb5deHM1c9Akn9djoJuHn030v7owYHEqpJeS6Rs6wrC4Hrkw8NxvV9ZPlMqAJ+5uJCaAUzB1tbVd3rA==", + "shasum": "e489254d1a6b29fb35187366e540c68624f33ab0", + "tarball": "https://registry.npmjs.org/@serialport/parser-cctalk/-/parser-cctalk-1.0.5.tgz", + "fileCount": 3, + "unpackedSize": 1720, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7nHqCRA9TVsSAnZWagAAdSYP/1lkWAdqi56ZushEVySH\n1xrVEXY+vucvB2bnduKPLgr4h0s28EliJGTq/zbl/bCVsNQslRItuQw+VgzG\nNT42Di81wEiB/7AymzakIKCwrebnaiPu/U8GWX2bCj3eZMgQwqTP7Vi1rxOw\nT66S8QYiQF+VF/u6UGFb4U1WAGWZSFeRCCx0+0e4s/tYQLYhEkZZ57EcjRUL\nGhhZByZkVxo8p8FuOVqptveOf6Hc4y7bQ5grnf3r+SqHoywmccauYrhYgL46\ndg1Kvd+J5L6aLNQlCCbTX5PnqaQfdrzQ1hLUlPK4DycPdd4jq/6kBV085Tgq\nb1HoHHeffBnKUufbpixXRWSvuVC50ZRy0PtLC/h2/zndOO3VzukhuATyGFj1\nQeRNaizygUrf3GLjlQ4cS/4+4PUCuGXZnbgP8EL19K5TVUVvdUDyStDWD6Vb\niQ+oBv+kqw3rvQFI1TTD+9bEea+EYxm2iCNqq69M+2/LOGbrBtglsUEFJFqR\nggy71K4I5/EajClm1ESV0sortAS9xHmm9gdrlXLFX6Igt+bhIrdrx6QdwQL9\n03+hGjpO+mJJ2kSYvb2Iidra13zdY05AhkPYvKb/yZ4bfb2FhKAca6wGSapw\nXP7VdWVVJgiAekHeY5SFckb0s9QQrnysekdBZg7f1LrnQFA0AcK6Yrlk7WPE\nq9Gi\r\n=KL0N\r\n-----END PGP SIGNATURE-----\r\n" + }, + "homepage": "https://github.com/node-serialport/parsers#readme", + "license": "MIT", + "main": "cctalk.js", + "maintainers": [ + { + "name": "reconbot", + "email": "wizard@roborooter.com" + } + ], + "name": "@serialport/parser-cctalk", + "optionalDependencies": {}, + "publishConfig": { + "access": "public" + }, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/node-serialport/parsers.git" + }, + "version": "1.0.5" +} diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/README.md b/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/README.md new file mode 100644 index 0000000..5aab8cb --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/README.md @@ -0,0 +1 @@ +See our api docs https://node-serialport.github.io/parsers/DelimiterParser.html diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/delimiter.js b/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/delimiter.js new file mode 100644 index 0000000..2d7bfc3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/delimiter.js @@ -0,0 +1,52 @@ +'use strict' +const Buffer = require('safe-buffer').Buffer +const Transform = require('stream').Transform + +/** + * A transform stream that emits data each time a byte sequence is received. + * @extends Transform + * @summary To use the `Delimiter` parser, provide a delimiter as a string, buffer, or array of bytes. Runs in O(n) time. + * @example +const SerialPort = require('serialport') +const Delimiter = require('@serialport/parser-delimiter') +const port = new SerialPort('/dev/tty-usbserial1') +const parser = port.pipe(new Delimiter({ delimiter: '\n' })) +parser.on('data', console.log) + */ +class DelimiterParser extends Transform { + constructor (options) { + options = options || {} + super(options) + + if (options.delimiter === undefined) { + throw new TypeError('"delimiter" is not a bufferable object') + } + + if (options.delimiter.length === 0) { + throw new TypeError('"delimiter" has a 0 or undefined length') + } + + this.includeDelimiter = options.includeDelimiter !== undefined ? options.includeDelimiter : false + this.delimiter = Buffer.from(options.delimiter) + this.buffer = Buffer.alloc(0) + } + + _transform (chunk, encoding, cb) { + let data = Buffer.concat([this.buffer, chunk]) + let position + while ((position = data.indexOf(this.delimiter)) !== -1) { + this.push(data.slice(0, position + (this.includeDelimiter ? this.delimiter.length : 0))) + data = data.slice(position + this.delimiter.length) + } + this.buffer = data + cb() + } + + _flush (cb) { + this.push(this.buffer) + this.buffer = Buffer.alloc(0) + cb() + } +} + +module.exports = DelimiterParser diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/package.json b/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/package.json new file mode 100644 index 0000000..ac086fa --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-delimiter/package.json @@ -0,0 +1,87 @@ +{ + "_args": [ + [ + { + "raw": "@serialport/parser-delimiter@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-delimiter", + "name": "@serialport/parser-delimiter", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "@serialport/parser-delimiter@>=1.0.5 <2.0.0", + "_hasShrinkwrap": false, + "_id": "@serialport/parser-delimiter@1.0.5", + "_inCache": true, + "_location": "/@serialport/parser-delimiter", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/parser-delimiter_1.0.5_1525576170517_0.08065178443568888" + }, + "_npmUser": { + "name": "reconbot", + "email": "wizard@roborooter.com" + }, + "_npmVersion": "6.0.0", + "_phantomChildren": {}, + "_requested": { + "raw": "@serialport/parser-delimiter@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-delimiter", + "name": "@serialport/parser-delimiter", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/@serialport/parser-readline", + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-1.0.5.tgz", + "_shasum": "4cb42883def663fbfab5574455471ed0721f5b0a", + "_shrinkwrap": null, + "_spec": "@serialport/parser-delimiter@^1.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "bugs": { + "url": "https://github.com/node-serialport/parsers/issues" + }, + "dependencies": { + "safe-buffer": "^5.1.1" + }, + "description": "See our api docs https://node-serialport.github.io/parsers/DelimiterParser.html", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-srDzeNwGM/GjtqK/nFDRIDpcZ6XDgkakFMXBtNDSI+XP6fqO1ynEZok8ljKJxM2ay0CNG83C6/X2xIOHvWhFYQ==", + "shasum": "4cb42883def663fbfab5574455471ed0721f5b0a", + "tarball": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-1.0.5.tgz", + "fileCount": 3, + "unpackedSize": 2018, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7nHrCRA9TVsSAnZWagAAPe4P/3L97j7eFQIlBm2CGMwT\npv1gFeVa+NST/QASXPay1fQ/JAbJI+0RS+8kQS/l2TMEn+08YPONNuwPXhsa\n/8Yt1vHWis6bgUdFDSGFK4v2xyoM9BhB31wCSPOnALVUDijK4XrwRnrIJuTb\ntilFP1Zi0sCUYPHwP5/cEkqn8ji4teXnrC5XWG/7PDFXAyJMflWBdhqNnxXQ\nmX0YHuEMUM7kjZv7Yx5Xdn/WmQfzGTQsqm/u4oPKQlkeNzrhQxdH+R7B/3qc\nyZwCJjmOR6FCCz/GYms7E/jCU17aQZ0r2/DLdEVEmHECX27EjKfcv3AFeyUm\ns/Toh6K25zZygTGZgAcBIeI7iPaakGGCtmyZthezyCRL/7a/HTJGMXvKoZB5\nb/qI7h2Tk+DU4Hs/z3chQpLQdHI52FDgBGrY4LOY+6AH5rxTrcuBV3zIxfu0\nsQ7yHeeJKb8Sa5l3BL2LZ7umM/sZi6zbCWoOhLWMFvpcUxA5dzXyiWVfFn3C\nLnFbGmn0JHRTsmA0ZSy9NKkgHszek8xklKc+n2M9wl0HHdFMmIrWew6vHvdE\n0EcZMMYAEQPOHJss2H5HwMks4TtujOE/h3rRzjKgS3CWzX9hPhFztKk93QWc\nuEKQn7GDIOuKPRck0uncmgimStapB6I9jdn3TUTeSlIgKppxo8i7l4oNkR1t\nzoZL\r\n=8h96\r\n-----END PGP SIGNATURE-----\r\n" + }, + "homepage": "https://github.com/node-serialport/parsers#readme", + "license": "MIT", + "main": "delimiter.js", + "maintainers": [ + { + "name": "reconbot", + "email": "wizard@roborooter.com" + } + ], + "name": "@serialport/parser-delimiter", + "optionalDependencies": {}, + "publishConfig": { + "access": "public" + }, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/node-serialport/parsers.git" + }, + "version": "1.0.5" +} diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-readline/README.md b/NodjsPartieArduino/node_modules/@serialport/parser-readline/README.md new file mode 100644 index 0000000..8f9cb5d --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-readline/README.md @@ -0,0 +1 @@ +See our api docs https://node-serialport.github.io/parsers/ReadLineParser.html diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-readline/package.json b/NodjsPartieArduino/node_modules/@serialport/parser-readline/package.json new file mode 100644 index 0000000..df37d86 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-readline/package.json @@ -0,0 +1,87 @@ +{ + "_args": [ + [ + { + "raw": "@serialport/parser-readline@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-readline", + "name": "@serialport/parser-readline", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "@serialport/parser-readline@>=1.0.5 <2.0.0", + "_hasShrinkwrap": false, + "_id": "@serialport/parser-readline@1.0.5", + "_inCache": true, + "_location": "/@serialport/parser-readline", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/parser-readline_1.0.5_1525576183695_0.8630149531174867" + }, + "_npmUser": { + "name": "reconbot", + "email": "wizard@roborooter.com" + }, + "_npmVersion": "6.0.0", + "_phantomChildren": {}, + "_requested": { + "raw": "@serialport/parser-readline@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-readline", + "name": "@serialport/parser-readline", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-1.0.5.tgz", + "_shasum": "705356d1a16c6a86f2a39778585305cf153d0b8e", + "_shrinkwrap": null, + "_spec": "@serialport/parser-readline@^1.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "bugs": { + "url": "https://github.com/node-serialport/parsers/issues" + }, + "dependencies": { + "@serialport/parser-delimiter": "^1.0.5", + "safe-buffer": "^5.1.1" + }, + "description": "See our api docs https://node-serialport.github.io/parsers/ReadLineParser.html", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-QkZoCQPHwdZOMQk7SHz3QSp7xqK4jdNql9M80oXqWt7kNhFvNXguWzf17FfQrPRIb0qiz+96+P6uAOIi02Yxbg==", + "shasum": "705356d1a16c6a86f2a39778585305cf153d0b8e", + "tarball": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-1.0.5.tgz", + "fileCount": 3, + "unpackedSize": 1459, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7nH4CRA9TVsSAnZWagAAnJAQAKJDvOfs6TFp1WeMjUFz\nL1HbpFBiFyHNWiupoyVedL2SVQzVGVsfnPI3ebqb5y5wtJS8ltXi6V9oorQ3\nuTqZa5VY94r4L5//KJj16tk6w70HjMFu/YyjAJQY6nTV2KOj73WMrFtnp+73\n73trTY/Nj1NDFgo/WGd/H+d3gMIYeMH9U8RtuyQpmB3XknCUyLwiiq9mFqp6\nGzkBKKbrcvEBu+Vz2RybwLmp0xcX/99q9gb7yG//wT4xiFhbiPbjBosaCBYD\n68y4tyOpow9ZA5AhUKn6IomqaEvgdsl909MRlexwQtnWQJ24Hd/SD0zHMQA9\njqmW9E6+ztDQ+5WlSeLzBCtsDODWMgg9zLI8NjCf24AIxt2T1Q4met7LmyZG\nSl4+fqV255ij6b+aD/jJuBqFUNB9ec8/N9i3+/dAxppWhyt7Z9kwwFL8mH/L\ndQGzv11txkKZHc2z0RhwVobpYMCAyMHpvAIQ1vWZI7hD+pFaHqKhj5QUqNam\nF7/IUgK4AOX6SU9QhK5ZG+jFX6joazouY7LIudDYpn03zu0E2W6se854OF55\nBcYildLeeujh3Cvt0LRC7/28QFM1PO1JyuCFKXbliokQp9IGQIASCkDcb+Mp\nllb1IZjnXZ61xugSaU+bkGdu76GOxcmt7HUGPQ/9by2POsD6RRtgAfFq7Pt0\n1gCa\r\n=mDaF\r\n-----END PGP SIGNATURE-----\r\n" + }, + "homepage": "https://github.com/node-serialport/parsers#readme", + "license": "MIT", + "main": "readline.js", + "maintainers": [ + { + "name": "reconbot", + "email": "wizard@roborooter.com" + } + ], + "name": "@serialport/parser-readline", + "optionalDependencies": {}, + "publishConfig": { + "access": "public" + }, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/node-serialport/parsers.git" + }, + "version": "1.0.5" +} diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-readline/readline.js b/NodjsPartieArduino/node_modules/@serialport/parser-readline/readline.js new file mode 100644 index 0000000..13c1523 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-readline/readline.js @@ -0,0 +1,31 @@ +'use strict' +const Buffer = require('safe-buffer').Buffer +const DelimiterParser = require('@serialport/parser-delimiter') + +/** + * A transform stream that emits data after a newline delimiter is received. + * @summary To use the `Readline` parser, provide a delimiter (defaults to `\n`). Data is emitted as string controllable by the `encoding` option (defaults to `utf8`). + * @extends DelimiterParser + * @example +const SerialPort = require('serialport') +const Readline = require('@serialport/parser-readline') +const port = new SerialPort('/dev/tty-usbserial1') +const parser = port.pipe(new Readline({ delimiter: '\r\n' })) +parser.on('data', console.log) +*/ +class ReadLineParser extends DelimiterParser { + constructor (options) { + const opts = Object.assign({ + delimiter: Buffer.from('\n', 'utf8'), + encoding: 'utf8' + }, options) + + if (typeof opts.delimiter === 'string') { + opts.delimiter = Buffer.from(opts.delimiter, opts.encoding) + } + + super(opts) + } +} + +module.exports = ReadLineParser diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-ready/README.md b/NodjsPartieArduino/node_modules/@serialport/parser-ready/README.md new file mode 100644 index 0000000..5885358 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-ready/README.md @@ -0,0 +1 @@ +See our api docs https://node-serialport.github.io/parsers/ReadyParser.html diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-ready/package.json b/NodjsPartieArduino/node_modules/@serialport/parser-ready/package.json new file mode 100644 index 0000000..0045124 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-ready/package.json @@ -0,0 +1,86 @@ +{ + "_args": [ + [ + { + "raw": "@serialport/parser-ready@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-ready", + "name": "@serialport/parser-ready", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "@serialport/parser-ready@>=1.0.5 <2.0.0", + "_hasShrinkwrap": false, + "_id": "@serialport/parser-ready@1.0.5", + "_inCache": true, + "_location": "/@serialport/parser-ready", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/parser-ready_1.0.5_1525576170520_0.9842935594058693" + }, + "_npmUser": { + "name": "reconbot", + "email": "wizard@roborooter.com" + }, + "_npmVersion": "6.0.0", + "_phantomChildren": {}, + "_requested": { + "raw": "@serialport/parser-ready@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-ready", + "name": "@serialport/parser-ready", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/@serialport/parser-ready/-/parser-ready-1.0.5.tgz", + "_shasum": "8921455afab47ea7098abc7a4a70702c7ca647aa", + "_shrinkwrap": null, + "_spec": "@serialport/parser-ready@^1.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "bugs": { + "url": "https://github.com/node-serialport/parsers/issues" + }, + "dependencies": { + "safe-buffer": "^5.1.1" + }, + "description": "See our api docs https://node-serialport.github.io/parsers/ReadyParser.html", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-U/ZkxyY35Z7WrDc0O8TGcGPOdwv6fGVJcZq5vXVko2MRt8wiKVD192mmbfTRZXFAX+rARXtQa3ad3yJzXVhb1g==", + "shasum": "8921455afab47ea7098abc7a4a70702c7ca647aa", + "tarball": "https://registry.npmjs.org/@serialport/parser-ready/-/parser-ready-1.0.5.tgz", + "fileCount": 3, + "unpackedSize": 2457, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7nHrCRA9TVsSAnZWagAABlkP/1qaj5DXVHQ1og+DY1Qe\nXjSSSL4gnu5p4969o2BbJtmMHNVgK2oTTcFO+ZGFw/rTNoazCe/BzoqpEdEz\nZCfaXV3I7cDyVyYhKms4WHX2x6htd6woo9CF9lsI1qojqDMd8e8mtZjqK/iC\nWf3qMKZYHpb1mF+E//rivRb5klyychqXlxFu5wulWOck/gu7BV9kGKZDyCdM\nqnVgNvlRt8nAmae2aaUpQ0t/0CGglHw6f80hQ375e6GBUhc+mBt8v0mHK8sR\nnPLGshMPGIeah3yKVjMq9EiQ1D/YtJgzoc84VamcP20a4jfwgRD6HLvLxm+F\nGMPe6+MxSc+sUvoB/Mi4FPA6YGX2t08ezOfEpv8wNxrfJFIgB0z4w/n4o7w6\nx0AJHaa1o2fiUwy6uCR8mYUUqLCg5Jp6gX77DnGMKYnHh7OABeIISjVYTT6p\n4MSo8slk+Bl+EFBGoSvu7bYmi+LzkvXs+p5xCb65JEfidEfVw9NE07Wakmck\nqjVgIzGiyGeiWdsgUKSFtq06XyXqkMu5rLIMbGkAxNzyLH84z5/gr+aLzt8t\nPxdexl3QKA/zuTYFZes/r2hQxX4B7RkwXpxNQDchlKwnoAcTa718OvD+Xa6j\nb+18y+Pyj6hNh5BKdWn69IMzB8glmBMVz/jL9l7mdfEeXPHLM0/iRKnGmTGF\ngElF\r\n=uJLD\r\n-----END PGP SIGNATURE-----\r\n" + }, + "homepage": "https://github.com/node-serialport/parsers#readme", + "license": "MIT", + "main": "ready.js", + "maintainers": [ + { + "name": "reconbot", + "email": "wizard@roborooter.com" + } + ], + "name": "@serialport/parser-ready", + "optionalDependencies": {}, + "publishConfig": { + "access": "public" + }, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/node-serialport/parsers.git" + }, + "version": "1.0.5" +} diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-ready/ready.js b/NodjsPartieArduino/node_modules/@serialport/parser-ready/ready.js new file mode 100644 index 0000000..da90e14 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-ready/ready.js @@ -0,0 +1,66 @@ +'use strict' +const Buffer = require('safe-buffer').Buffer +const Transform = require('stream').Transform + +/** + * A transform stream that waits for a sequence of "ready" bytes before emitting a ready event and emitting data events + * @summary To use the `Ready` parser provide a byte start sequence. After the bytes have been received a ready event is fired and data events are passed through. + * @extends Transform + * @example +const SerialPort = require('serialport') +const Ready = require('@serialport/parser-ready') +const port = new SerialPort('/dev/tty-usbserial1') +const parser = port.pipe(new Ready({ delimiter: 'READY' })) +parser.on('ready', () => console.log('the ready byte sequence has been received')) +parser.on('data', console.log) // all data after READY is received + */ +class ReadyParser extends Transform { + /** + * + * @param {object} options options for the parser + * @param {string|Buffer|array} options.delimiter data to look for before emitted "ready" + */ + constructor (options) { + options = options || {} + if (options.delimiter === undefined) { + throw new TypeError('"delimiter" is not a bufferable object') + } + + if (options.delimiter.length === 0) { + throw new TypeError('"delimiter" has a 0 or undefined length') + } + + super(options) + this.delimiter = Buffer.from(options.delimiter) + this.readOffset = 0 + this.ready = false + } + + _transform (chunk, encoding, cb) { + if (this.ready) { + this.push(chunk) + return cb() + } + const delimiter = this.delimiter + let chunkOffset = 0 + while (this.readOffset < delimiter.length && chunkOffset < chunk.length) { + if (delimiter[this.readOffset] === chunk[chunkOffset]) { + this.readOffset++ + } else { + this.readOffset = 0 + } + chunkOffset++ + } + if (this.readOffset === delimiter.length) { + this.ready = true + this.emit('ready') + const chunkRest = chunk.slice(chunkOffset) + if (chunkRest.length > 0) { + this.push(chunkRest) + } + } + cb() + } +} + +module.exports = ReadyParser diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-regex/README.md b/NodjsPartieArduino/node_modules/@serialport/parser-regex/README.md new file mode 100644 index 0000000..233a5e7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-regex/README.md @@ -0,0 +1 @@ +See our api docs https://node-serialport.github.io/parsers/RegexParser.html diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-regex/package.json b/NodjsPartieArduino/node_modules/@serialport/parser-regex/package.json new file mode 100644 index 0000000..04b5a1a --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-regex/package.json @@ -0,0 +1,86 @@ +{ + "_args": [ + [ + { + "raw": "@serialport/parser-regex@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-regex", + "name": "@serialport/parser-regex", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "@serialport/parser-regex@>=1.0.5 <2.0.0", + "_hasShrinkwrap": false, + "_id": "@serialport/parser-regex@1.0.5", + "_inCache": true, + "_location": "/@serialport/parser-regex", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/parser-regex_1.0.5_1525576175369_0.7930305093182277" + }, + "_npmUser": { + "name": "reconbot", + "email": "wizard@roborooter.com" + }, + "_npmVersion": "6.0.0", + "_phantomChildren": {}, + "_requested": { + "raw": "@serialport/parser-regex@^1.0.5", + "scope": "@serialport", + "escapedName": "@serialport%2fparser-regex", + "name": "@serialport/parser-regex", + "rawSpec": "^1.0.5", + "spec": ">=1.0.5 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/@serialport/parser-regex/-/parser-regex-1.0.5.tgz", + "_shasum": "932f836343ab48d724905e5ff89f8f3dc28e6516", + "_shrinkwrap": null, + "_spec": "@serialport/parser-regex@^1.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "bugs": { + "url": "https://github.com/node-serialport/parsers/issues" + }, + "dependencies": { + "safe-buffer": "^5.1.1" + }, + "description": "See our api docs https://node-serialport.github.io/parsers/RegexParser.html", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-sX3tRuwwwGV+CZbKEUAKZD/wtG8ZRcGxbiDIm8nyzsPCGv52ck3RlQ9Vp4K8fYjcrGGwm3BWizC4uSzaTLOk1A==", + "shasum": "932f836343ab48d724905e5ff89f8f3dc28e6516", + "tarball": "https://registry.npmjs.org/@serialport/parser-regex/-/parser-regex-1.0.5.tgz", + "fileCount": 3, + "unpackedSize": 1734, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa7nHvCRA9TVsSAnZWagAAg6QQAJic2b+12ryyJr0TICQ2\nF8+/8ahWPGecADBzF6Ka57iQXGr7z+EC87ZV9CCTdU/2ftLtCwF7MMwRFcIB\nnFHD6Hq5cVozogKAWBugj5NpdsenNDYhoVUDlpbu7LjWOzXmYMZnVAxM/0y/\nU8A5B9D2U/vHL7+9TbzfuWh2We88SzWoj1ATdKrPxInsODPRwpBp/A8Hm7HN\nJcmGYhFvvG0dl3WGRv5wJHpUMGdAf6UlXwe8XUweQ5cmuPE99uRkm6OHlM8F\niJ2Zl0PLMIe8x3Nzr4XcOHNPX988Nm5MUzxR4Rdqx8Aj5NSbGF3q5WwMwp73\n/3IlUvlo88pBd8rdg3rW31AjXPK2eHcdSPtgct+qrTXfZ/W4AwBETnbQht10\nUzpvYLCJ9fmxxChufVtMElTx6Vopfl70sNM9hoJJmBRD8qiIQdMvrzw5ATeC\nRh5FbY14Umhh8KWw18+XzAHBGLnx3UoIXzn8Z8hPcv7er17k6cZTffOWLaws\n9/YY5Xfs21VaRtToSJubXzTggZmD4GOfgC96FmRpQc0vRHjoM9GMnKtjWPWI\ngZqzwcfqyKFRLzyhL0hkvErIYwnJRWZFReR2Bu/4YyBZ1lffwfrl9BmDy+Se\n50v2scyUSbsvdyfJrDbyQ7XqjUZAzYpCSLP7rDiPMqhwxsd1KluUnWWC/0m8\nrb8O\r\n=gknE\r\n-----END PGP SIGNATURE-----\r\n" + }, + "homepage": "https://github.com/node-serialport/parsers#readme", + "license": "MIT", + "main": "regex.js", + "maintainers": [ + { + "name": "reconbot", + "email": "wizard@roborooter.com" + } + ], + "name": "@serialport/parser-regex", + "optionalDependencies": {}, + "publishConfig": { + "access": "public" + }, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/node-serialport/parsers.git" + }, + "version": "1.0.5" +} diff --git a/NodjsPartieArduino/node_modules/@serialport/parser-regex/regex.js b/NodjsPartieArduino/node_modules/@serialport/parser-regex/regex.js new file mode 100644 index 0000000..a866c70 --- /dev/null +++ b/NodjsPartieArduino/node_modules/@serialport/parser-regex/regex.js @@ -0,0 +1,53 @@ +'use strict' +const Transform = require('stream').Transform + +/** + * A transform stream that uses a regular expression to split the incoming text upon. + * + * To use the `Regex` parser provide a regular expression to split the incoming text upon. Data is emitted as string controllable by the `encoding` option (defaults to `utf8`). + * @extends Transform + * @example +const SerialPort = require('serialport') +const Regex = require('@serialport/parser-regex') +const port = new SerialPort('/dev/tty-usbserial1') +const parser = port.pipe(new Regex({ regex: /[\r\n]+/ })) +parser.on('data', console.log) + */ +class RegexParser extends Transform { + constructor (options) { + const opts = Object.assign({ + encoding: 'utf8' + }, options) + + if (opts.regex === undefined) { + throw new TypeError('"options.regex" must be a regular expression pattern or object') + } + + if (!(opts.regex instanceof RegExp)) { + opts.regex = new RegExp(opts.regex) + } + super(opts) + + this.regex = opts.regex + this.data = '' + } + + _transform (chunk, encoding, cb) { + const data = this.data + chunk + const parts = data.split(this.regex) + this.data = parts.pop() + + parts.forEach((part) => { + this.push(part) + }) + cb() + } + + _flush (cb) { + this.push(this.data) + this.data = '' + cb() + } +} + +module.exports = RegexParser diff --git a/NodjsPartieArduino/node_modules/accepts/HISTORY.md b/NodjsPartieArduino/node_modules/accepts/HISTORY.md new file mode 100644 index 0000000..f16c17a --- /dev/null +++ b/NodjsPartieArduino/node_modules/accepts/HISTORY.md @@ -0,0 +1,224 @@ +1.3.5 / 2018-02-28 +================== + + * deps: mime-types@~2.1.18 + - deps: mime-db@~1.33.0 + +1.3.4 / 2017-08-22 +================== + + * deps: mime-types@~2.1.16 + - deps: mime-db@~1.29.0 + +1.3.3 / 2016-05-02 +================== + + * deps: mime-types@~2.1.11 + - deps: mime-db@~1.23.0 + * deps: negotiator@0.6.1 + - perf: improve `Accept` parsing speed + - perf: improve `Accept-Charset` parsing speed + - perf: improve `Accept-Encoding` parsing speed + - perf: improve `Accept-Language` parsing speed + +1.3.2 / 2016-03-08 +================== + + * deps: mime-types@~2.1.10 + - Fix extension of `application/dash+xml` + - Update primary extension for `audio/mp4` + - deps: mime-db@~1.22.0 + +1.3.1 / 2016-01-19 +================== + + * deps: mime-types@~2.1.9 + - deps: mime-db@~1.21.0 + +1.3.0 / 2015-09-29 +================== + + * deps: mime-types@~2.1.7 + - deps: mime-db@~1.19.0 + * deps: negotiator@0.6.0 + - Fix including type extensions in parameters in `Accept` parsing + - Fix parsing `Accept` parameters with quoted equals + - Fix parsing `Accept` parameters with quoted semicolons + - Lazy-load modules from main entry point + - perf: delay type concatenation until needed + - perf: enable strict mode + - perf: hoist regular expressions + - perf: remove closures getting spec properties + - perf: remove a closure from media type parsing + - perf: remove property delete from media type parsing + +1.2.13 / 2015-09-06 +=================== + + * deps: mime-types@~2.1.6 + - deps: mime-db@~1.18.0 + +1.2.12 / 2015-07-30 +=================== + + * deps: mime-types@~2.1.4 + - deps: mime-db@~1.16.0 + +1.2.11 / 2015-07-16 +=================== + + * deps: mime-types@~2.1.3 + - deps: mime-db@~1.15.0 + +1.2.10 / 2015-07-01 +=================== + + * deps: mime-types@~2.1.2 + - deps: mime-db@~1.14.0 + +1.2.9 / 2015-06-08 +================== + + * deps: mime-types@~2.1.1 + - perf: fix deopt during mapping + +1.2.8 / 2015-06-07 +================== + + * deps: mime-types@~2.1.0 + - deps: mime-db@~1.13.0 + * perf: avoid argument reassignment & argument slice + * perf: avoid negotiator recursive construction + * perf: enable strict mode + * perf: remove unnecessary bitwise operator + +1.2.7 / 2015-05-10 +================== + + * deps: negotiator@0.5.3 + - Fix media type parameter matching to be case-insensitive + +1.2.6 / 2015-05-07 +================== + + * deps: mime-types@~2.0.11 + - deps: mime-db@~1.9.1 + * deps: negotiator@0.5.2 + - Fix comparing media types with quoted values + - Fix splitting media types with quoted commas + +1.2.5 / 2015-03-13 +================== + + * deps: mime-types@~2.0.10 + - deps: mime-db@~1.8.0 + +1.2.4 / 2015-02-14 +================== + + * Support Node.js 0.6 + * deps: mime-types@~2.0.9 + - deps: mime-db@~1.7.0 + * deps: negotiator@0.5.1 + - Fix preference sorting to be stable for long acceptable lists + +1.2.3 / 2015-01-31 +================== + + * deps: mime-types@~2.0.8 + - deps: mime-db@~1.6.0 + +1.2.2 / 2014-12-30 +================== + + * deps: mime-types@~2.0.7 + - deps: mime-db@~1.5.0 + +1.2.1 / 2014-12-30 +================== + + * deps: mime-types@~2.0.5 + - deps: mime-db@~1.3.1 + +1.2.0 / 2014-12-19 +================== + + * deps: negotiator@0.5.0 + - Fix list return order when large accepted list + - Fix missing identity encoding when q=0 exists + - Remove dynamic building of Negotiator class + +1.1.4 / 2014-12-10 +================== + + * deps: mime-types@~2.0.4 + - deps: mime-db@~1.3.0 + +1.1.3 / 2014-11-09 +================== + + * deps: mime-types@~2.0.3 + - deps: mime-db@~1.2.0 + +1.1.2 / 2014-10-14 +================== + + * deps: negotiator@0.4.9 + - Fix error when media type has invalid parameter + +1.1.1 / 2014-09-28 +================== + + * deps: mime-types@~2.0.2 + - deps: mime-db@~1.1.0 + * deps: negotiator@0.4.8 + - Fix all negotiations to be case-insensitive + - Stable sort preferences of same quality according to client order + +1.1.0 / 2014-09-02 +================== + + * update `mime-types` + +1.0.7 / 2014-07-04 +================== + + * Fix wrong type returned from `type` when match after unknown extension + +1.0.6 / 2014-06-24 +================== + + * deps: negotiator@0.4.7 + +1.0.5 / 2014-06-20 +================== + + * fix crash when unknown extension given + +1.0.4 / 2014-06-19 +================== + + * use `mime-types` + +1.0.3 / 2014-06-11 +================== + + * deps: negotiator@0.4.6 + - Order by specificity when quality is the same + +1.0.2 / 2014-05-29 +================== + + * Fix interpretation when header not in request + * deps: pin negotiator@0.4.5 + +1.0.1 / 2014-01-18 +================== + + * Identity encoding isn't always acceptable + * deps: negotiator@~0.4.0 + +1.0.0 / 2013-12-27 +================== + + * Genesis diff --git a/NodjsPartieArduino/node_modules/accepts/LICENSE b/NodjsPartieArduino/node_modules/accepts/LICENSE new file mode 100644 index 0000000..0616607 --- /dev/null +++ b/NodjsPartieArduino/node_modules/accepts/LICENSE @@ -0,0 +1,23 @@ +(The MIT License) + +Copyright (c) 2014 Jonathan Ong +Copyright (c) 2015 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/accepts/README.md b/NodjsPartieArduino/node_modules/accepts/README.md new file mode 100644 index 0000000..6a2749a --- /dev/null +++ b/NodjsPartieArduino/node_modules/accepts/README.md @@ -0,0 +1,143 @@ +# accepts + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Node.js Version][node-version-image]][node-version-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Higher level content negotiation based on [negotiator](https://www.npmjs.com/package/negotiator). +Extracted from [koa](https://www.npmjs.com/package/koa) for general use. + +In addition to negotiator, it allows: + +- Allows types as an array or arguments list, ie `(['text/html', 'application/json'])` + as well as `('text/html', 'application/json')`. +- Allows type shorthands such as `json`. +- Returns `false` when no types match +- Treats non-existent headers as `*` + +## Installation + +This is a [Node.js](https://nodejs.org/en/) module available through the +[npm registry](https://www.npmjs.com/). Installation is done using the +[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally): + +```sh +$ npm install accepts +``` + +## API + + + +```js +var accepts = require('accepts') +``` + +### accepts(req) + +Create a new `Accepts` object for the given `req`. + +#### .charset(charsets) + +Return the first accepted charset. If nothing in `charsets` is accepted, +then `false` is returned. + +#### .charsets() + +Return the charsets that the request accepts, in the order of the client's +preference (most preferred first). + +#### .encoding(encodings) + +Return the first accepted encoding. If nothing in `encodings` is accepted, +then `false` is returned. + +#### .encodings() + +Return the encodings that the request accepts, in the order of the client's +preference (most preferred first). + +#### .language(languages) + +Return the first accepted language. If nothing in `languages` is accepted, +then `false` is returned. + +#### .languages() + +Return the languages that the request accepts, in the order of the client's +preference (most preferred first). + +#### .type(types) + +Return the first accepted type (and it is returned as the same text as what +appears in the `types` array). If nothing in `types` is accepted, then `false` +is returned. + +The `types` array can contain full MIME types or file extensions. Any value +that is not a full MIME types is passed to `require('mime-types').lookup`. + +#### .types() + +Return the types that the request accepts, in the order of the client's +preference (most preferred first). + +## Examples + +### Simple type negotiation + +This simple example shows how to use `accepts` to return a different typed +respond body based on what the client wants to accept. The server lists it's +preferences in order and will get back the best match between the client and +server. + +```js +var accepts = require('accepts') +var http = require('http') + +function app (req, res) { + var accept = accepts(req) + + // the order of this list is significant; should be server preferred order + switch (accept.type(['json', 'html'])) { + case 'json': + res.setHeader('Content-Type', 'application/json') + res.write('{"hello":"world!"}') + break + case 'html': + res.setHeader('Content-Type', 'text/html') + res.write('hello, world!') + break + default: + // the fallback is text/plain, so no need to specify it above + res.setHeader('Content-Type', 'text/plain') + res.write('hello, world!') + break + } + + res.end() +} + +http.createServer(app).listen(3000) +``` + +You can test this out with the cURL program: +```sh +curl -I -H'Accept: text/html' http://localhost:3000/ +``` + +## License + +[MIT](LICENSE) + +[npm-image]: https://img.shields.io/npm/v/accepts.svg +[npm-url]: https://npmjs.org/package/accepts +[node-version-image]: https://img.shields.io/node/v/accepts.svg +[node-version-url]: https://nodejs.org/en/download/ +[travis-image]: https://img.shields.io/travis/jshttp/accepts/master.svg +[travis-url]: https://travis-ci.org/jshttp/accepts +[coveralls-image]: https://img.shields.io/coveralls/jshttp/accepts/master.svg +[coveralls-url]: https://coveralls.io/r/jshttp/accepts +[downloads-image]: https://img.shields.io/npm/dm/accepts.svg +[downloads-url]: https://npmjs.org/package/accepts diff --git a/NodjsPartieArduino/node_modules/accepts/index.js b/NodjsPartieArduino/node_modules/accepts/index.js new file mode 100644 index 0000000..e9b2f63 --- /dev/null +++ b/NodjsPartieArduino/node_modules/accepts/index.js @@ -0,0 +1,238 @@ +/*! + * accepts + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var Negotiator = require('negotiator') +var mime = require('mime-types') + +/** + * Module exports. + * @public + */ + +module.exports = Accepts + +/** + * Create a new Accepts object for the given req. + * + * @param {object} req + * @public + */ + +function Accepts (req) { + if (!(this instanceof Accepts)) { + return new Accepts(req) + } + + this.headers = req.headers + this.negotiator = new Negotiator(req) +} + +/** + * Check if the given `type(s)` is acceptable, returning + * the best match when true, otherwise `undefined`, in which + * case you should respond with 406 "Not Acceptable". + * + * The `type` value may be a single mime type string + * such as "application/json", the extension name + * such as "json" or an array `["json", "html", "text/plain"]`. When a list + * or array is given the _best_ match, if any is returned. + * + * Examples: + * + * // Accept: text/html + * this.types('html'); + * // => "html" + * + * // Accept: text/*, application/json + * this.types('html'); + * // => "html" + * this.types('text/html'); + * // => "text/html" + * this.types('json', 'text'); + * // => "json" + * this.types('application/json'); + * // => "application/json" + * + * // Accept: text/*, application/json + * this.types('image/png'); + * this.types('png'); + * // => undefined + * + * // Accept: text/*;q=.5, application/json + * this.types(['html', 'json']); + * this.types('html', 'json'); + * // => "json" + * + * @param {String|Array} types... + * @return {String|Array|Boolean} + * @public + */ + +Accepts.prototype.type = +Accepts.prototype.types = function (types_) { + var types = types_ + + // support flattened arguments + if (types && !Array.isArray(types)) { + types = new Array(arguments.length) + for (var i = 0; i < types.length; i++) { + types[i] = arguments[i] + } + } + + // no types, return all requested types + if (!types || types.length === 0) { + return this.negotiator.mediaTypes() + } + + // no accept header, return first given type + if (!this.headers.accept) { + return types[0] + } + + var mimes = types.map(extToMime) + var accepts = this.negotiator.mediaTypes(mimes.filter(validMime)) + var first = accepts[0] + + return first + ? types[mimes.indexOf(first)] + : false +} + +/** + * Return accepted encodings or best fit based on `encodings`. + * + * Given `Accept-Encoding: gzip, deflate` + * an array sorted by quality is returned: + * + * ['gzip', 'deflate'] + * + * @param {String|Array} encodings... + * @return {String|Array} + * @public + */ + +Accepts.prototype.encoding = +Accepts.prototype.encodings = function (encodings_) { + var encodings = encodings_ + + // support flattened arguments + if (encodings && !Array.isArray(encodings)) { + encodings = new Array(arguments.length) + for (var i = 0; i < encodings.length; i++) { + encodings[i] = arguments[i] + } + } + + // no encodings, return all requested encodings + if (!encodings || encodings.length === 0) { + return this.negotiator.encodings() + } + + return this.negotiator.encodings(encodings)[0] || false +} + +/** + * Return accepted charsets or best fit based on `charsets`. + * + * Given `Accept-Charset: utf-8, iso-8859-1;q=0.2, utf-7;q=0.5` + * an array sorted by quality is returned: + * + * ['utf-8', 'utf-7', 'iso-8859-1'] + * + * @param {String|Array} charsets... + * @return {String|Array} + * @public + */ + +Accepts.prototype.charset = +Accepts.prototype.charsets = function (charsets_) { + var charsets = charsets_ + + // support flattened arguments + if (charsets && !Array.isArray(charsets)) { + charsets = new Array(arguments.length) + for (var i = 0; i < charsets.length; i++) { + charsets[i] = arguments[i] + } + } + + // no charsets, return all requested charsets + if (!charsets || charsets.length === 0) { + return this.negotiator.charsets() + } + + return this.negotiator.charsets(charsets)[0] || false +} + +/** + * Return accepted languages or best fit based on `langs`. + * + * Given `Accept-Language: en;q=0.8, es, pt` + * an array sorted by quality is returned: + * + * ['es', 'pt', 'en'] + * + * @param {String|Array} langs... + * @return {Array|String} + * @public + */ + +Accepts.prototype.lang = +Accepts.prototype.langs = +Accepts.prototype.language = +Accepts.prototype.languages = function (languages_) { + var languages = languages_ + + // support flattened arguments + if (languages && !Array.isArray(languages)) { + languages = new Array(arguments.length) + for (var i = 0; i < languages.length; i++) { + languages[i] = arguments[i] + } + } + + // no languages, return all requested languages + if (!languages || languages.length === 0) { + return this.negotiator.languages() + } + + return this.negotiator.languages(languages)[0] || false +} + +/** + * Convert extnames to mime. + * + * @param {String} type + * @return {String} + * @private + */ + +function extToMime (type) { + return type.indexOf('/') === -1 + ? mime.lookup(type) + : type +} + +/** + * Check if mime is valid. + * + * @param {String} type + * @return {String} + * @private + */ + +function validMime (type) { + return typeof type === 'string' +} diff --git a/NodjsPartieArduino/node_modules/accepts/package.json b/NodjsPartieArduino/node_modules/accepts/package.json new file mode 100644 index 0000000..8c7cab2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/accepts/package.json @@ -0,0 +1,123 @@ +{ + "_args": [ + [ + { + "raw": "accepts@~1.3.5", + "scope": null, + "escapedName": "accepts", + "name": "accepts", + "rawSpec": "~1.3.5", + "spec": ">=1.3.5 <1.4.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "accepts@>=1.3.5 <1.4.0", + "_id": "accepts@1.3.5", + "_inCache": true, + "_location": "/accepts", + "_nodeVersion": "6.11.1", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/accepts_1.3.5_1519869527663_0.6663620712347182" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "3.10.10", + "_phantomChildren": {}, + "_requested": { + "raw": "accepts@~1.3.5", + "scope": null, + "escapedName": "accepts", + "name": "accepts", + "rawSpec": "~1.3.5", + "spec": ">=1.3.5 <1.4.0", + "type": "range" + }, + "_requiredBy": [ + "/engine.io", + "/express" + ], + "_resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "_shasum": "eb777df6011723a3b14e8a72c0805c8e86746bd2", + "_shrinkwrap": null, + "_spec": "accepts@~1.3.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "bugs": { + "url": "https://github.com/jshttp/accepts/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + }, + { + "name": "Jonathan Ong", + "email": "me@jongleberry.com", + "url": "http://jongleberry.com" + } + ], + "dependencies": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + }, + "description": "Higher-level content negotiation", + "devDependencies": { + "eslint": "4.18.1", + "eslint-config-standard": "11.0.0", + "eslint-plugin-import": "2.9.0", + "eslint-plugin-markdown": "1.0.0-beta.6", + "eslint-plugin-node": "6.0.1", + "eslint-plugin-promise": "3.6.0", + "eslint-plugin-standard": "3.0.1", + "istanbul": "0.4.5", + "mocha": "~1.21.5" + }, + "directories": {}, + "dist": { + "shasum": "eb777df6011723a3b14e8a72c0805c8e86746bd2", + "tarball": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "fileCount": 5, + "unpackedSize": 16555 + }, + "engines": { + "node": ">= 0.6" + }, + "files": [ + "LICENSE", + "HISTORY.md", + "index.js" + ], + "gitHead": "c38d0e968cdc1526f7cc7a718977ee76655c84f5", + "homepage": "https://github.com/jshttp/accepts#readme", + "keywords": [ + "content", + "negotiation", + "accept", + "accepts" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "accepts", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jshttp/accepts.git" + }, + "scripts": { + "lint": "eslint --plugin markdown --ext js,md .", + "test": "mocha --reporter spec --check-leaks --bail test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", + "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" + }, + "version": "1.3.5" +} diff --git a/NodjsPartieArduino/node_modules/after/LICENCE b/NodjsPartieArduino/node_modules/after/LICENCE new file mode 100644 index 0000000..7c35130 --- /dev/null +++ b/NodjsPartieArduino/node_modules/after/LICENCE @@ -0,0 +1,19 @@ +Copyright (c) 2011 Raynos. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/after/README.md b/NodjsPartieArduino/node_modules/after/README.md new file mode 100644 index 0000000..fc69096 --- /dev/null +++ b/NodjsPartieArduino/node_modules/after/README.md @@ -0,0 +1,115 @@ +# After [![Build Status][1]][2] + +Invoke callback after n calls + +## Status: production ready + +## Example + +```js +var after = require("after") +var db = require("./db") // some db. + +var updateUser = function (req, res) { + // use after to run two tasks in parallel, + // namely get request body and get session + // then run updateUser with the results + var next = after(2, updateUser) + var results = {} + + getJSONBody(req, res, function (err, body) { + if (err) return next(err) + + results.body = body + next(null, results) + }) + + getSessionUser(req, res, function (err, user) { + if (err) return next(err) + + results.user = user + next(null, results) + }) + + // now do the thing! + function updateUser(err, result) { + if (err) { + res.statusCode = 500 + return res.end("Unexpected Error") + } + + if (!result.user || result.user.role !== "admin") { + res.statusCode = 403 + return res.end("Permission Denied") + } + + db.put("users:" + req.params.userId, result.body, function (err) { + if (err) { + res.statusCode = 500 + return res.end("Unexpected Error") + } + + res.statusCode = 200 + res.end("Ok") + }) + } +} +``` + +## Naive Example + +```js +var after = require("after") + , next = after(3, logItWorks) + +next() +next() +next() // it works + +function logItWorks() { + console.log("it works!") +} +``` + +## Example with error handling + +```js +var after = require("after") + , next = after(3, logError) + +next() +next(new Error("oops")) // logs oops +next() // does nothing + +// This callback is only called once. +// If there is an error the callback gets called immediately +// this avoids the situation where errors get lost. +function logError(err) { + console.log(err) +} +``` + +## Installation + +`npm install after` + +## Tests + +`npm test` + +## Contributors + + - Raynos + - defunctzombie + +## MIT Licenced + + [1]: https://secure.travis-ci.org/Raynos/after.png + [2]: http://travis-ci.org/Raynos/after + [3]: http://raynos.org/blog/2/Flow-control-in-node.js + [4]: http://stackoverflow.com/questions/6852059/determining-the-end-of-asynchronous-operations-javascript/6852307#6852307 + [5]: http://stackoverflow.com/questions/6869872/in-javascript-what-are-best-practices-for-executing-multiple-asynchronous-functi/6870031#6870031 + [6]: http://stackoverflow.com/questions/6864397/javascript-performance-long-running-tasks/6889419#6889419 + [7]: http://stackoverflow.com/questions/6597493/synchronous-database-queries-with-node-js/6620091#6620091 + [8]: http://github.com/Raynos/iterators + [9]: http://github.com/Raynos/composite diff --git a/NodjsPartieArduino/node_modules/after/index.js b/NodjsPartieArduino/node_modules/after/index.js new file mode 100644 index 0000000..ec24879 --- /dev/null +++ b/NodjsPartieArduino/node_modules/after/index.js @@ -0,0 +1,28 @@ +module.exports = after + +function after(count, callback, err_cb) { + var bail = false + err_cb = err_cb || noop + proxy.count = count + + return (count === 0) ? callback() : proxy + + function proxy(err, result) { + if (proxy.count <= 0) { + throw new Error('after called too many times') + } + --proxy.count + + // after first error, rest are passed to err_cb + if (err) { + bail = true + callback(err) + // future error callbacks will go to error handler + callback = err_cb + } else if (proxy.count === 0 && !bail) { + callback(null, result) + } + } +} + +function noop() {} diff --git a/NodjsPartieArduino/node_modules/after/package.json b/NodjsPartieArduino/node_modules/after/package.json new file mode 100644 index 0000000..dc4a1c6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/after/package.json @@ -0,0 +1,103 @@ +{ + "_args": [ + [ + { + "raw": "after@0.8.2", + "scope": null, + "escapedName": "after", + "name": "after", + "rawSpec": "0.8.2", + "spec": "0.8.2", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser" + ] + ], + "_from": "after@0.8.2", + "_id": "after@0.8.2", + "_inCache": true, + "_location": "/after", + "_nodeVersion": "0.10.32", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/after-0.8.2.tgz_1471308639186_0.9132961586583406" + }, + "_npmUser": { + "name": "raynos", + "email": "raynos2@gmail.com" + }, + "_npmVersion": "2.15.9", + "_phantomChildren": {}, + "_requested": { + "raw": "after@0.8.2", + "scope": null, + "escapedName": "after", + "name": "after", + "rawSpec": "0.8.2", + "spec": "0.8.2", + "type": "version" + }, + "_requiredBy": [ + "/engine.io-parser" + ], + "_resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "_shasum": "fedb394f9f0e02aa9768e702bda23b505fae7e1f", + "_shrinkwrap": null, + "_spec": "after@0.8.2", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser", + "author": { + "name": "Raynos", + "email": "raynos2@gmail.com" + }, + "bugs": { + "url": "https://github.com/Raynos/after/issues" + }, + "contributors": [ + { + "name": "Raynos", + "email": "raynos2@gmail.com", + "url": "http://raynos.org" + } + ], + "dependencies": {}, + "description": "after - tiny flow control", + "devDependencies": { + "mocha": "~1.8.1" + }, + "directories": {}, + "dist": { + "shasum": "fedb394f9f0e02aa9768e702bda23b505fae7e1f", + "tarball": "https://registry.npmjs.org/after/-/after-0.8.2.tgz" + }, + "gitHead": "e8c26046f36962b90e68dc5df33a9672a54b25f5", + "homepage": "https://github.com/Raynos/after#readme", + "keywords": [ + "flowcontrol", + "after", + "flow", + "control", + "arch" + ], + "license": "MIT", + "maintainers": [ + { + "name": "raynos", + "email": "raynos2@gmail.com" + }, + { + "name": "defunctzombie", + "email": "shtylman@gmail.com" + } + ], + "name": "after", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/Raynos/after.git" + }, + "scripts": { + "test": "mocha --ui tdd --reporter spec test/*.js" + }, + "version": "0.8.2" +} diff --git a/NodjsPartieArduino/node_modules/after/test/after-test.js b/NodjsPartieArduino/node_modules/after/test/after-test.js new file mode 100644 index 0000000..0d63f4c --- /dev/null +++ b/NodjsPartieArduino/node_modules/after/test/after-test.js @@ -0,0 +1,120 @@ +/*global suite, test*/ + +var assert = require("assert") + , after = require("../") + +test("exists", function () { + assert(typeof after === "function", "after is not a function") +}) + +test("after when called with 0 invokes", function (done) { + after(0, done) +}); + +test("after 1", function (done) { + var next = after(1, done) + next() +}) + +test("after 5", function (done) { + var next = after(5, done) + , i = 5 + + while (i--) { + next() + } +}) + +test("manipulate count", function (done) { + var next = after(1, done) + , i = 5 + + next.count = i + while (i--) { + next() + } +}) + +test("after terminates on error", function (done) { + var next = after(2, function(err) { + assert.equal(err.message, 'test'); + done(); + }) + next(new Error('test')) + next(new Error('test2')) +}) + +test('gee', function(done) { + done = after(2, done) + + function cb(err) { + assert.equal(err.message, 1); + done() + } + + var next = after(3, cb, function(err) { + assert.equal(err.message, 2) + done() + }); + + next() + next(new Error(1)) + next(new Error(2)) +}) + +test('eee', function(done) { + done = after(3, done) + + function cb(err) { + assert.equal(err.message, 1); + done() + } + + var next = after(3, cb, function(err) { + assert.equal(err.message, 2) + done() + }); + + next(new Error(1)) + next(new Error(2)) + next(new Error(2)) +}) + +test('gge', function(done) { + function cb(err) { + assert.equal(err.message, 1); + done() + } + + var next = after(3, cb, function(err) { + // should not happen + assert.ok(false); + }); + + next() + next() + next(new Error(1)) +}) + +test('egg', function(done) { + function cb(err) { + assert.equal(err.message, 1); + done() + } + + var next = after(3, cb, function(err) { + // should not happen + assert.ok(false); + }); + + next(new Error(1)) + next() + next() +}) + +test('throws on too many calls', function(done) { + var next = after(1, done); + next() + assert.throws(next, /after called too many times/); +}); + diff --git a/NodjsPartieArduino/node_modules/ansi-bgblack/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgblack/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblack/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgblack/README.md b/NodjsPartieArduino/node_modules/ansi-bgblack/README.md new file mode 100644 index 0000000..21782e2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblack/README.md @@ -0,0 +1,74 @@ +# ansi-bgblack [![NPM version](https://badge.fury.io/js/ansi-bgblack.svg)](http://badge.fury.io/js/ansi-bgblack) + +> The color bgblack, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgblack --save +``` + +## Usage + +```js +var bgblack = require('ansi-bgblack'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgblack/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bgblack/index.js b/NodjsPartieArduino/node_modules/ansi-bgblack/index.js new file mode 100644 index 0000000..639488f --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblack/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgblack + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgblack(message) { + return wrap(40, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgblack/package.json b/NodjsPartieArduino/node_modules/ansi-bgblack/package.json new file mode 100644 index 0000000..d28ff89 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblack/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgblack@^0.1.1", + "scope": null, + "escapedName": "ansi-bgblack", + "name": "ansi-bgblack", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgblack@>=0.1.1 <0.2.0", + "_id": "ansi-bgblack@0.1.1", + "_inCache": true, + "_location": "/ansi-bgblack", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgblack@^0.1.1", + "scope": null, + "escapedName": "ansi-bgblack", + "name": "ansi-bgblack", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgblack/-/ansi-bgblack-0.1.1.tgz", + "_shasum": "a68ba5007887701b6aafbe3fa0dadfdfa8ee3ca2", + "_shrinkwrap": null, + "_spec": "ansi-bgblack@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgblack/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgblack, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "a68ba5007887701b6aafbe3fa0dadfdfa8ee3ca2", + "tarball": "https://registry.npmjs.org/ansi-bgblack/-/ansi-bgblack-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgblack", + "keywords": [ + "bgblack", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgblack", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgblack.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgblue/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgblue/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblue/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgblue/index.js b/NodjsPartieArduino/node_modules/ansi-bgblue/index.js new file mode 100644 index 0000000..495add2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblue/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgblue + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgblue(message) { + return wrap(44, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgblue/package.json b/NodjsPartieArduino/node_modules/ansi-bgblue/package.json new file mode 100644 index 0000000..61f5e52 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblue/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgblue@^0.1.1", + "scope": null, + "escapedName": "ansi-bgblue", + "name": "ansi-bgblue", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgblue@>=0.1.1 <0.2.0", + "_id": "ansi-bgblue@0.1.1", + "_inCache": true, + "_location": "/ansi-bgblue", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgblue@^0.1.1", + "scope": null, + "escapedName": "ansi-bgblue", + "name": "ansi-bgblue", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgblue/-/ansi-bgblue-0.1.1.tgz", + "_shasum": "67bdc04edc9b9b5278969da196dea3d75c8c3613", + "_shrinkwrap": null, + "_spec": "ansi-bgblue@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgblue/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgblue, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "67bdc04edc9b9b5278969da196dea3d75c8c3613", + "tarball": "https://registry.npmjs.org/ansi-bgblue/-/ansi-bgblue-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgblue", + "keywords": [ + "bgblue", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgblue", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgblue.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgblue/readme.md b/NodjsPartieArduino/node_modules/ansi-bgblue/readme.md new file mode 100644 index 0000000..cb94c13 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgblue/readme.md @@ -0,0 +1,74 @@ +# ansi-bgblue [![NPM version](https://badge.fury.io/js/ansi-bgblue.svg)](http://badge.fury.io/js/ansi-bgblue) + +> The color bgblue, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgblue --save +``` + +## Usage + +```js +var bgblue = require('ansi-bgblue'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgblue/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bgcyan/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgcyan/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgcyan/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgcyan/index.js b/NodjsPartieArduino/node_modules/ansi-bgcyan/index.js new file mode 100644 index 0000000..b5c116d --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgcyan/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgcyan + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgcyan(message) { + return wrap(46, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgcyan/package.json b/NodjsPartieArduino/node_modules/ansi-bgcyan/package.json new file mode 100644 index 0000000..6189a39 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgcyan/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgcyan@^0.1.1", + "scope": null, + "escapedName": "ansi-bgcyan", + "name": "ansi-bgcyan", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgcyan@>=0.1.1 <0.2.0", + "_id": "ansi-bgcyan@0.1.1", + "_inCache": true, + "_location": "/ansi-bgcyan", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgcyan@^0.1.1", + "scope": null, + "escapedName": "ansi-bgcyan", + "name": "ansi-bgcyan", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgcyan/-/ansi-bgcyan-0.1.1.tgz", + "_shasum": "58489425600bde9f5507068dd969ebfdb50fe768", + "_shrinkwrap": null, + "_spec": "ansi-bgcyan@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgcyan/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgcyan, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "58489425600bde9f5507068dd969ebfdb50fe768", + "tarball": "https://registry.npmjs.org/ansi-bgcyan/-/ansi-bgcyan-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgcyan", + "keywords": [ + "bgcyan", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgcyan", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgcyan.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgcyan/readme.md b/NodjsPartieArduino/node_modules/ansi-bgcyan/readme.md new file mode 100644 index 0000000..a841ad5 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgcyan/readme.md @@ -0,0 +1,74 @@ +# ansi-bgcyan [![NPM version](https://badge.fury.io/js/ansi-bgcyan.svg)](http://badge.fury.io/js/ansi-bgcyan) + +> The color bgcyan, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgcyan --save +``` + +## Usage + +```js +var bgcyan = require('ansi-bgcyan'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgcyan/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bggreen/LICENSE b/NodjsPartieArduino/node_modules/ansi-bggreen/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bggreen/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bggreen/index.js b/NodjsPartieArduino/node_modules/ansi-bggreen/index.js new file mode 100644 index 0000000..e933981 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bggreen/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bggreen + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bggreen(message) { + return wrap(42, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bggreen/package.json b/NodjsPartieArduino/node_modules/ansi-bggreen/package.json new file mode 100644 index 0000000..ecdde20 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bggreen/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bggreen@^0.1.1", + "scope": null, + "escapedName": "ansi-bggreen", + "name": "ansi-bggreen", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bggreen@>=0.1.1 <0.2.0", + "_id": "ansi-bggreen@0.1.1", + "_inCache": true, + "_location": "/ansi-bggreen", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bggreen@^0.1.1", + "scope": null, + "escapedName": "ansi-bggreen", + "name": "ansi-bggreen", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bggreen/-/ansi-bggreen-0.1.1.tgz", + "_shasum": "4e3191248529943f4321e96bf131d1c13816af49", + "_shrinkwrap": null, + "_spec": "ansi-bggreen@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bggreen/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bggreen, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "4e3191248529943f4321e96bf131d1c13816af49", + "tarball": "https://registry.npmjs.org/ansi-bggreen/-/ansi-bggreen-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bggreen", + "keywords": [ + "bggreen", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bggreen", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bggreen.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bggreen/readme.md b/NodjsPartieArduino/node_modules/ansi-bggreen/readme.md new file mode 100644 index 0000000..48cb497 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bggreen/readme.md @@ -0,0 +1,74 @@ +# ansi-bggreen [![NPM version](https://badge.fury.io/js/ansi-bggreen.svg)](http://badge.fury.io/js/ansi-bggreen) + +> The color bggreen, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bggreen --save +``` + +## Usage + +```js +var bggreen = require('ansi-bggreen'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bggreen/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bgmagenta/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgmagenta/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgmagenta/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgmagenta/index.js b/NodjsPartieArduino/node_modules/ansi-bgmagenta/index.js new file mode 100644 index 0000000..2d125e6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgmagenta/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgmagenta + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgmagenta(message) { + return wrap(45, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgmagenta/package.json b/NodjsPartieArduino/node_modules/ansi-bgmagenta/package.json new file mode 100644 index 0000000..af5938f --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgmagenta/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgmagenta@^0.1.1", + "scope": null, + "escapedName": "ansi-bgmagenta", + "name": "ansi-bgmagenta", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgmagenta@>=0.1.1 <0.2.0", + "_id": "ansi-bgmagenta@0.1.1", + "_inCache": true, + "_location": "/ansi-bgmagenta", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgmagenta@^0.1.1", + "scope": null, + "escapedName": "ansi-bgmagenta", + "name": "ansi-bgmagenta", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgmagenta/-/ansi-bgmagenta-0.1.1.tgz", + "_shasum": "9b28432c076eaa999418672a3efbe19391c2c7a1", + "_shrinkwrap": null, + "_spec": "ansi-bgmagenta@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgmagenta/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgmagenta, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "9b28432c076eaa999418672a3efbe19391c2c7a1", + "tarball": "https://registry.npmjs.org/ansi-bgmagenta/-/ansi-bgmagenta-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgmagenta", + "keywords": [ + "bgmagenta", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgmagenta", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgmagenta.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgmagenta/readme.md b/NodjsPartieArduino/node_modules/ansi-bgmagenta/readme.md new file mode 100644 index 0000000..e2d9513 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgmagenta/readme.md @@ -0,0 +1,74 @@ +# ansi-bgmagenta [![NPM version](https://badge.fury.io/js/ansi-bgmagenta.svg)](http://badge.fury.io/js/ansi-bgmagenta) + +> The color bgmagenta, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgmagenta --save +``` + +## Usage + +```js +var bgmagenta = require('ansi-bgmagenta'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgmagenta/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bgred/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgred/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgred/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgred/index.js b/NodjsPartieArduino/node_modules/ansi-bgred/index.js new file mode 100644 index 0000000..81bd715 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgred/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgred + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgred(message) { + return wrap(41, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgred/package.json b/NodjsPartieArduino/node_modules/ansi-bgred/package.json new file mode 100644 index 0000000..c21b9a3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgred/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgred@^0.1.1", + "scope": null, + "escapedName": "ansi-bgred", + "name": "ansi-bgred", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgred@>=0.1.1 <0.2.0", + "_id": "ansi-bgred@0.1.1", + "_inCache": true, + "_location": "/ansi-bgred", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgred@^0.1.1", + "scope": null, + "escapedName": "ansi-bgred", + "name": "ansi-bgred", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgred/-/ansi-bgred-0.1.1.tgz", + "_shasum": "a76f92838382ba43290a6c1778424f984d6f1041", + "_shrinkwrap": null, + "_spec": "ansi-bgred@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgred/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgred, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "a76f92838382ba43290a6c1778424f984d6f1041", + "tarball": "https://registry.npmjs.org/ansi-bgred/-/ansi-bgred-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgred", + "keywords": [ + "bgred", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgred", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgred.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgred/readme.md b/NodjsPartieArduino/node_modules/ansi-bgred/readme.md new file mode 100644 index 0000000..fb4e553 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgred/readme.md @@ -0,0 +1,74 @@ +# ansi-bgred [![NPM version](https://badge.fury.io/js/ansi-bgred.svg)](http://badge.fury.io/js/ansi-bgred) + +> The color bgred, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgred --save +``` + +## Usage + +```js +var bgred = require('ansi-bgred'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgred/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bgwhite/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgwhite/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgwhite/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgwhite/index.js b/NodjsPartieArduino/node_modules/ansi-bgwhite/index.js new file mode 100644 index 0000000..a9ff832 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgwhite/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgwhite + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgwhite(message) { + return wrap(47, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgwhite/package.json b/NodjsPartieArduino/node_modules/ansi-bgwhite/package.json new file mode 100644 index 0000000..c48119a --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgwhite/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgwhite@^0.1.1", + "scope": null, + "escapedName": "ansi-bgwhite", + "name": "ansi-bgwhite", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgwhite@>=0.1.1 <0.2.0", + "_id": "ansi-bgwhite@0.1.1", + "_inCache": true, + "_location": "/ansi-bgwhite", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgwhite@^0.1.1", + "scope": null, + "escapedName": "ansi-bgwhite", + "name": "ansi-bgwhite", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgwhite/-/ansi-bgwhite-0.1.1.tgz", + "_shasum": "6504651377a58a6ececd0331994e480258e11ba8", + "_shrinkwrap": null, + "_spec": "ansi-bgwhite@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgwhite/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgwhite, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "6504651377a58a6ececd0331994e480258e11ba8", + "tarball": "https://registry.npmjs.org/ansi-bgwhite/-/ansi-bgwhite-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgwhite", + "keywords": [ + "bgwhite", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgwhite", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgwhite.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgwhite/readme.md b/NodjsPartieArduino/node_modules/ansi-bgwhite/readme.md new file mode 100644 index 0000000..85f5b0e --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgwhite/readme.md @@ -0,0 +1,74 @@ +# ansi-bgwhite [![NPM version](https://badge.fury.io/js/ansi-bgwhite.svg)](http://badge.fury.io/js/ansi-bgwhite) + +> The color bgwhite, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgwhite --save +``` + +## Usage + +```js +var bgwhite = require('ansi-bgwhite'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgwhite/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bgyellow/LICENSE b/NodjsPartieArduino/node_modules/ansi-bgyellow/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgyellow/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bgyellow/index.js b/NodjsPartieArduino/node_modules/ansi-bgyellow/index.js new file mode 100644 index 0000000..fc3b7ee --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgyellow/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bgyellow + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bgyellow(message) { + return wrap(43, 49, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bgyellow/package.json b/NodjsPartieArduino/node_modules/ansi-bgyellow/package.json new file mode 100644 index 0000000..23a308e --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgyellow/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bgyellow@^0.1.1", + "scope": null, + "escapedName": "ansi-bgyellow", + "name": "ansi-bgyellow", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bgyellow@>=0.1.1 <0.2.0", + "_id": "ansi-bgyellow@0.1.1", + "_inCache": true, + "_location": "/ansi-bgyellow", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bgyellow@^0.1.1", + "scope": null, + "escapedName": "ansi-bgyellow", + "name": "ansi-bgyellow", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bgyellow/-/ansi-bgyellow-0.1.1.tgz", + "_shasum": "c3fe2eb08cd476648029e6874d15a0b38f61d44f", + "_shrinkwrap": null, + "_spec": "ansi-bgyellow@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bgyellow/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bgyellow, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "c3fe2eb08cd476648029e6874d15a0b38f61d44f", + "tarball": "https://registry.npmjs.org/ansi-bgyellow/-/ansi-bgyellow-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bgyellow", + "keywords": [ + "bgyellow", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bgyellow", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bgyellow.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bgyellow/readme.md b/NodjsPartieArduino/node_modules/ansi-bgyellow/readme.md new file mode 100644 index 0000000..74d531d --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bgyellow/readme.md @@ -0,0 +1,74 @@ +# ansi-bgyellow [![NPM version](https://badge.fury.io/js/ansi-bgyellow.svg)](http://badge.fury.io/js/ansi-bgyellow) + +> The color bgyellow, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bgyellow --save +``` + +## Usage + +```js +var bgyellow = require('ansi-bgyellow'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bgyellow/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-black/LICENSE b/NodjsPartieArduino/node_modules/ansi-black/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-black/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-black/index.js b/NodjsPartieArduino/node_modules/ansi-black/index.js new file mode 100644 index 0000000..9b3c92e --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-black/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-black + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function black(message) { + return wrap(30, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-black/package.json b/NodjsPartieArduino/node_modules/ansi-black/package.json new file mode 100644 index 0000000..39264df --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-black/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-black@^0.1.1", + "scope": null, + "escapedName": "ansi-black", + "name": "ansi-black", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-black@>=0.1.1 <0.2.0", + "_id": "ansi-black@0.1.1", + "_inCache": true, + "_location": "/ansi-black", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-black@^0.1.1", + "scope": null, + "escapedName": "ansi-black", + "name": "ansi-black", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-black/-/ansi-black-0.1.1.tgz", + "_shasum": "f6185e889360b2545a1ec50c0bf063fc43032453", + "_shrinkwrap": null, + "_spec": "ansi-black@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-black/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color black, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "f6185e889360b2545a1ec50c0bf063fc43032453", + "tarball": "https://registry.npmjs.org/ansi-black/-/ansi-black-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-black", + "keywords": [ + "black", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-black", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-black.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-black/readme.md b/NodjsPartieArduino/node_modules/ansi-black/readme.md new file mode 100644 index 0000000..a175e2e --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-black/readme.md @@ -0,0 +1,74 @@ +# ansi-black [![NPM version](https://badge.fury.io/js/ansi-black.svg)](http://badge.fury.io/js/ansi-black) + +> The color black, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-black --save +``` + +## Usage + +```js +var black = require('ansi-black'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-black/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-blue/LICENSE b/NodjsPartieArduino/node_modules/ansi-blue/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-blue/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-blue/index.js b/NodjsPartieArduino/node_modules/ansi-blue/index.js new file mode 100644 index 0000000..0a4e349 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-blue/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-blue + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function blue(message) { + return wrap(34, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-blue/package.json b/NodjsPartieArduino/node_modules/ansi-blue/package.json new file mode 100644 index 0000000..0436f5b --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-blue/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-blue@^0.1.1", + "scope": null, + "escapedName": "ansi-blue", + "name": "ansi-blue", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-blue@>=0.1.1 <0.2.0", + "_id": "ansi-blue@0.1.1", + "_inCache": true, + "_location": "/ansi-blue", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-blue@^0.1.1", + "scope": null, + "escapedName": "ansi-blue", + "name": "ansi-blue", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-blue/-/ansi-blue-0.1.1.tgz", + "_shasum": "15b804990e92fc9ca8c5476ce8f699777c21edbf", + "_shrinkwrap": null, + "_spec": "ansi-blue@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-blue/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color blue, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "15b804990e92fc9ca8c5476ce8f699777c21edbf", + "tarball": "https://registry.npmjs.org/ansi-blue/-/ansi-blue-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-blue", + "keywords": [ + "blue", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-blue", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-blue.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-blue/readme.md b/NodjsPartieArduino/node_modules/ansi-blue/readme.md new file mode 100644 index 0000000..8fc3b04 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-blue/readme.md @@ -0,0 +1,74 @@ +# ansi-blue [![NPM version](https://badge.fury.io/js/ansi-blue.svg)](http://badge.fury.io/js/ansi-blue) + +> The color blue, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-blue --save +``` + +## Usage + +```js +var blue = require('ansi-blue'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-blue/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-bold/LICENSE b/NodjsPartieArduino/node_modules/ansi-bold/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bold/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-bold/index.js b/NodjsPartieArduino/node_modules/ansi-bold/index.js new file mode 100644 index 0000000..a56a16d --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bold/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-bold + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function bold(message) { + return wrap(1, 22, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-bold/package.json b/NodjsPartieArduino/node_modules/ansi-bold/package.json new file mode 100644 index 0000000..9f5d7d8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bold/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-bold@^0.1.1", + "scope": null, + "escapedName": "ansi-bold", + "name": "ansi-bold", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-bold@>=0.1.1 <0.2.0", + "_id": "ansi-bold@0.1.1", + "_inCache": true, + "_location": "/ansi-bold", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-bold@^0.1.1", + "scope": null, + "escapedName": "ansi-bold", + "name": "ansi-bold", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-bold/-/ansi-bold-0.1.1.tgz", + "_shasum": "3e63950af5acc2ae2e670e6f67deb115d1a5f505", + "_shrinkwrap": null, + "_spec": "ansi-bold@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-bold/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color bold, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "3e63950af5acc2ae2e670e6f67deb115d1a5f505", + "tarball": "https://registry.npmjs.org/ansi-bold/-/ansi-bold-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-bold", + "keywords": [ + "bold", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-bold", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-bold.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-bold/readme.md b/NodjsPartieArduino/node_modules/ansi-bold/readme.md new file mode 100644 index 0000000..e06c0eb --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-bold/readme.md @@ -0,0 +1,74 @@ +# ansi-bold [![NPM version](https://badge.fury.io/js/ansi-bold.svg)](http://badge.fury.io/js/ansi-bold) + +> The color bold, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-bold --save +``` + +## Usage + +```js +var bold = require('ansi-bold'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-bold/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-colors/LICENSE b/NodjsPartieArduino/node_modules/ansi-colors/LICENSE new file mode 100644 index 0000000..5b613fe --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-colors/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015, Brian Woodward. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-colors/README.md b/NodjsPartieArduino/node_modules/ansi-colors/README.md new file mode 100644 index 0000000..7e0a6ba --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-colors/README.md @@ -0,0 +1,94 @@ +# ansi-colors [![NPM version](https://img.shields.io/npm/v/ansi-colors.svg?style=flat)](https://www.npmjs.com/package/ansi-colors) [![NPM downloads](https://img.shields.io/npm/dm/ansi-colors.svg?style=flat)](https://npmjs.org/package/ansi-colors) [![Build Status](https://img.shields.io/travis/doowb/ansi-colors.svg?style=flat)](https://travis-ci.org/doowb/ansi-colors) + +Collection of ansi colors and styles. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save ansi-colors +``` + +This module was created to make it easy to allow color configuration through options. + +If your application will always one or two specific colors, we recommend directly requiring only [the necessary modules](#related-projects). + +If your application uses **more than 10 colors**, we recommend using [chalk](https://github.com/chalk/chalk) for faster require times (since chalk loads everything at once). However, when using less than 10 colors this module will be more efficient due to lazy caching the [underlying modules](#related-projects). + +## Usage + +```js +var colors = require('ansi-colors'); +``` + +## About + +### Related projects + +You might also be interested in these projects: + +* [ansi-bgblack](https://www.npmjs.com/package/ansi-bgblack): The color bgblack, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgblack "The color bgblack, in ansi.") +* [ansi-bgblue](https://www.npmjs.com/package/ansi-bgblue): The color bgblue, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgblue "The color bgblue, in ansi.") +* [ansi-bgcyan](https://www.npmjs.com/package/ansi-bgcyan): The color bgcyan, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgcyan "The color bgcyan, in ansi.") +* [ansi-bggreen](https://www.npmjs.com/package/ansi-bggreen): The color bggreen, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bggreen "The color bggreen, in ansi.") +* [ansi-bgmagenta](https://www.npmjs.com/package/ansi-bgmagenta): The color bgmagenta, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgmagenta "The color bgmagenta, in ansi.") +* [ansi-bgred](https://www.npmjs.com/package/ansi-bgred): The color bgred, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgred "The color bgred, in ansi.") +* [ansi-bgwhite](https://www.npmjs.com/package/ansi-bgwhite): The color bgwhite, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgwhite "The color bgwhite, in ansi.") +* [ansi-bgyellow](https://www.npmjs.com/package/ansi-bgyellow): The color bgyellow, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bgyellow "The color bgyellow, in ansi.") +* [ansi-black](https://www.npmjs.com/package/ansi-black): The color black, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-black "The color black, in ansi.") +* [ansi-blue](https://www.npmjs.com/package/ansi-blue): The color blue, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-blue "The color blue, in ansi.") +* [ansi-bold](https://www.npmjs.com/package/ansi-bold): The color bold, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-bold "The color bold, in ansi.") +* [ansi-cyan](https://www.npmjs.com/package/ansi-cyan): The color cyan, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-cyan "The color cyan, in ansi.") +* [ansi-dim](https://www.npmjs.com/package/ansi-dim): The color dim, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-dim "The color dim, in ansi.") +* [ansi-gray](https://www.npmjs.com/package/ansi-gray): The color gray, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-gray "The color gray, in ansi.") +* [ansi-green](https://www.npmjs.com/package/ansi-green): The color green, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-green "The color green, in ansi.") +* [ansi-grey](https://www.npmjs.com/package/ansi-grey): The color grey, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-grey "The color grey, in ansi.") +* [ansi-hidden](https://www.npmjs.com/package/ansi-hidden): The color hidden, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-hidden "The color hidden, in ansi.") +* [ansi-inverse](https://www.npmjs.com/package/ansi-inverse): The color inverse, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-inverse "The color inverse, in ansi.") +* [ansi-italic](https://www.npmjs.com/package/ansi-italic): The color italic, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-italic "The color italic, in ansi.") +* [ansi-magenta](https://www.npmjs.com/package/ansi-magenta): The color magenta, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-magenta "The color magenta, in ansi.") +* [ansi-red](https://www.npmjs.com/package/ansi-red): The color red, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-red "The color red, in ansi.") +* [ansi-reset](https://www.npmjs.com/package/ansi-reset): The color reset, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-reset "The color reset, in ansi.") +* [ansi-strikethrough](https://www.npmjs.com/package/ansi-strikethrough): The color strikethrough, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-strikethrough "The color strikethrough, in ansi.") +* [ansi-underline](https://www.npmjs.com/package/ansi-underline): The color underline, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-underline "The color underline, in ansi.") +* [ansi-white](https://www.npmjs.com/package/ansi-white): The color white, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-white "The color white, in ansi.") +* [ansi-yellow](https://www.npmjs.com/package/ansi-yellow): The color yellow, in ansi. | [homepage](https://github.com/jonschlinkert/ansi-yellow "The color yellow, in ansi.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Building docs + +_(This document was generated by [verb-readme-generator](https://github.com/verbose/verb-readme-generator) (a [verb](https://github.com/verbose/verb) generator), please don't edit the readme directly. Any changes to the readme must be made in [.verb.md](.verb.md).)_ + +Generate readme and API documentation with [verb](https://github.com/verbose/verb): + +```sh +$ npm install -g verb verb-readme-generator && verb +``` + +### Running tests + +Install dev dependencies: + +```sh +$ npm install -d && npm test +``` + +### Author + +**Brian Woodward** + +* [github/doowb](https://github.com/doowb) +* [twitter/doowb](http://twitter.com/doowb) + +### License + +Copyright © 2016, [Brian Woodward](https://github.com/doowb). +Released under the [MIT license](https://github.com/doowb/ansi-colors/blob/master/LICENSE). + +*** + +_This file was generated by [verb](https://github.com/verbose/verb), v0.9.0, on July 11, 2016._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-colors/index.js b/NodjsPartieArduino/node_modules/ansi-colors/index.js new file mode 100644 index 0000000..5adfcdc --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-colors/index.js @@ -0,0 +1,434 @@ +/*! + * ansi-colors + * + * Copyright (c) 2015, Brian Woodward. + * Licensed under the MIT License. + */ + +'use strict'; + +/** + * Module dependencies + */ + +var colors = require('lazy-cache')(require); + +/** + * Temporarily re-assign `require` to trick browserify and + * webpack into reconizing lazy dependencies. + * + * This tiny bit of ugliness has the huge dual advantage of + * only loading modules that are actually called at some + * point in the lifecycle of the application, whilst also + * allowing browserify and webpack to find modules that + * are depended on but never actually called. + */ + +var fn = require; +require = colors; + +/** + * Lazily required module dependencies + */ + +/** + * Wrap a string with ansi codes to create a black background. + * + * ```js + * console.log(colors.bgblack('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgblack + */ + +require('ansi-bgblack', 'bgblack'); + +/** + * Wrap a string with ansi codes to create a blue background. + * + * ```js + * console.log(colors.bgblue('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgblue + */ + +require('ansi-bgblue', 'bgblue'); + +/** + * Wrap a string with ansi codes to create a cyan background. + * + * ```js + * console.log(colors.bgcyan('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgcyan + */ + +require('ansi-bgcyan', 'bgcyan'); + +/** + * Wrap a string with ansi codes to create a green background. + * + * ```js + * console.log(colors.bggreen('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bggreen + */ + +require('ansi-bggreen', 'bggreen'); + +/** + * Wrap a string with ansi codes to create a magenta background. + * + * ```js + * console.log(colors.bgmagenta('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgmagenta + */ + +require('ansi-bgmagenta', 'bgmagenta'); + +/** + * Wrap a string with ansi codes to create a red background. + * + * ```js + * console.log(colors.bgred('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgred + */ + +require('ansi-bgred', 'bgred'); + +/** + * Wrap a string with ansi codes to create a white background. + * + * ```js + * console.log(colors.bgwhite('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgwhite + */ + +require('ansi-bgwhite', 'bgwhite'); + +/** + * Wrap a string with ansi codes to create a yellow background. + * + * ```js + * console.log(colors.bgyellow('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bgyellow + */ + +require('ansi-bgyellow', 'bgyellow'); + +/** + * Wrap a string with ansi codes to create black text. + * + * ```js + * console.log(colors.black('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name black + */ + +require('ansi-black', 'black'); + +/** + * Wrap a string with ansi codes to create blue text. + * + * ```js + * console.log(colors.blue('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name blue + */ + +require('ansi-blue', 'blue'); + +/** + * Wrap a string with ansi codes to create bold text. + * + * ```js + * console.log(colors.bold('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name bold + */ + +require('ansi-bold', 'bold'); + +/** + * Wrap a string with ansi codes to create cyan text. + * + * ```js + * console.log(colors.cyan('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name cyan + */ + +require('ansi-cyan', 'cyan'); + +/** + * Wrap a string with ansi codes to create dim text. + * + * ```js + * console.log(colors.dim('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name dim + */ + +require('ansi-dim', 'dim'); + +/** + * Wrap a string with ansi codes to create gray text. + * + * ```js + * console.log(colors.gray('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name gray + */ + +require('ansi-gray', 'gray'); + +/** + * Wrap a string with ansi codes to create green text. + * + * ```js + * console.log(colors.green('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name green + */ + +require('ansi-green', 'green'); + +/** + * Wrap a string with ansi codes to create grey text. + * + * ```js + * console.log(colors.grey('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name grey + */ + +require('ansi-grey', 'grey'); + +/** + * Wrap a string with ansi codes to create hidden text. + * + * ```js + * console.log(colors.hidden('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name hidden + */ + +require('ansi-hidden', 'hidden'); + +/** + * Wrap a string with ansi codes to create inverse text. + * + * ```js + * console.log(colors.inverse('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name inverse + */ + +require('ansi-inverse', 'inverse'); + +/** + * Wrap a string with ansi codes to create italic text. + * + * ```js + * console.log(colors.italic('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name italic + */ + +require('ansi-italic', 'italic'); + +/** + * Wrap a string with ansi codes to create magenta text. + * + * ```js + * console.log(colors.magenta('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name magenta + */ + +require('ansi-magenta', 'magenta'); + +/** + * Wrap a string with ansi codes to create red text. + * + * ```js + * console.log(colors.red('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name red + */ + +require('ansi-red', 'red'); + +/** + * Wrap a string with ansi codes to reset ansi colors currently on the string. + * + * ```js + * console.log(colors.reset('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name reset + */ + +require('ansi-reset', 'reset'); + +/** + * Wrap a string with ansi codes to add a strikethrough to the text. + * + * ```js + * console.log(colors.strikethrough('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name strikethrough + */ + +require('ansi-strikethrough', 'strikethrough'); + +/** + * Wrap a string with ansi codes to underline the text. + * + * ```js + * console.log(colors.underline('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name underline + */ + +require('ansi-underline', 'underline'); + +/** + * Wrap a string with ansi codes to create white text. + * + * ```js + * console.log(colors.white('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name white + */ + +require('ansi-white', 'white'); + +/** + * Wrap a string with ansi codes to create yellow text. + * + * ```js + * console.log(colors.yellow('some string')); + * ``` + * + * @param {String} `str` String to wrap with ansi codes. + * @return {String} Wrapped string + * @api public + * @name yellow + */ + +require('ansi-yellow', 'yellow'); + +/** + * Restore `require` + */ + +require = fn; + +/** + * Expose `colors` modules + */ + +module.exports = colors; diff --git a/NodjsPartieArduino/node_modules/ansi-colors/package.json b/NodjsPartieArduino/node_modules/ansi-colors/package.json new file mode 100644 index 0000000..f520b30 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-colors/package.json @@ -0,0 +1,196 @@ +{ + "_args": [ + [ + { + "raw": "ansi-colors@^0.2.0", + "scope": null, + "escapedName": "ansi-colors", + "name": "ansi-colors", + "rawSpec": "^0.2.0", + "spec": ">=0.2.0 <0.3.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/log-utils" + ] + ], + "_from": "ansi-colors@>=0.2.0 <0.3.0", + "_id": "ansi-colors@0.2.0", + "_inCache": true, + "_location": "/ansi-colors", + "_nodeVersion": "6.2.0", + "_npmOperationalInternal": { + "host": "packages-16-east.internal.npmjs.com", + "tmp": "tmp/ansi-colors-0.2.0.tgz_1468242571540_0.2293846202082932" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "3.8.9", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-colors@^0.2.0", + "scope": null, + "escapedName": "ansi-colors", + "name": "ansi-colors", + "rawSpec": "^0.2.0", + "spec": ">=0.2.0 <0.3.0", + "type": "range" + }, + "_requiredBy": [ + "/log-utils" + ], + "_resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-0.2.0.tgz", + "_shasum": "72c31de2a0d9a2ccd0cac30cc9823eeb2f6434b5", + "_shrinkwrap": null, + "_spec": "ansi-colors@^0.2.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/log-utils", + "author": { + "name": "Brian Woodward", + "url": "https://github.com/doowb" + }, + "bugs": { + "url": "https://github.com/doowb/ansi-colors/issues" + }, + "dependencies": { + "ansi-bgblack": "^0.1.1", + "ansi-bgblue": "^0.1.1", + "ansi-bgcyan": "^0.1.1", + "ansi-bggreen": "^0.1.1", + "ansi-bgmagenta": "^0.1.1", + "ansi-bgred": "^0.1.1", + "ansi-bgwhite": "^0.1.1", + "ansi-bgyellow": "^0.1.1", + "ansi-black": "^0.1.1", + "ansi-blue": "^0.1.1", + "ansi-bold": "^0.1.1", + "ansi-cyan": "^0.1.1", + "ansi-dim": "^0.1.1", + "ansi-gray": "^0.1.1", + "ansi-green": "^0.1.1", + "ansi-grey": "^0.1.1", + "ansi-hidden": "^0.1.1", + "ansi-inverse": "^0.1.1", + "ansi-italic": "^0.1.1", + "ansi-magenta": "^0.1.1", + "ansi-red": "^0.1.1", + "ansi-reset": "^0.1.1", + "ansi-strikethrough": "^0.1.1", + "ansi-underline": "^0.1.1", + "ansi-white": "^0.1.1", + "ansi-yellow": "^0.1.1", + "lazy-cache": "^2.0.1" + }, + "description": "Collection of ansi colors and styles.", + "devDependencies": { + "gulp-format-md": "^0.1.9", + "mocha": "^2.5.3" + }, + "directories": {}, + "dist": { + "shasum": "72c31de2a0d9a2ccd0cac30cc9823eeb2f6434b5", + "tarball": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-0.2.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "06cdbc9d6e290992ec4ce70f261c7866fa6524c4", + "homepage": "https://github.com/doowb/ansi-colors", + "keywords": [ + "ansi-bgblack", + "ansi-bgblue", + "ansi-bgcyan", + "ansi-bggreen", + "ansi-bgmagenta", + "ansi-bgred", + "ansi-bgwhite", + "ansi-bgyellow", + "ansi-black", + "ansi-blue", + "ansi-bold", + "ansi-cyan", + "ansi-dim", + "ansi-gray", + "ansi-green", + "ansi-grey", + "ansi-hidden", + "ansi-inverse", + "ansi-italic", + "ansi-magenta", + "ansi-red", + "ansi-reset", + "ansi-strikethrough", + "ansi-underline", + "ansi-white", + "ansi-yellow", + "bgblack", + "bgblue", + "bgcyan", + "bggreen", + "bgmagenta", + "bgred", + "bgwhite", + "bgyellow", + "black", + "blue", + "bold", + "cyan", + "dim", + "gray", + "green", + "grey", + "hidden", + "inverse", + "italic", + "magenta", + "red", + "reset", + "strikethrough", + "underline", + "white", + "yellow" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "doowb", + "email": "brian.woodward@gmail.com" + }, + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-colors", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/doowb/ansi-colors.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "reflinks": [ + "verb-readme-generator", + "verb" + ] + }, + "version": "0.2.0" +} diff --git a/NodjsPartieArduino/node_modules/ansi-cyan/LICENSE b/NodjsPartieArduino/node_modules/ansi-cyan/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-cyan/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-cyan/index.js b/NodjsPartieArduino/node_modules/ansi-cyan/index.js new file mode 100644 index 0000000..b1e12c5 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-cyan/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-cyan + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function cyan(message) { + return wrap(36, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-cyan/package.json b/NodjsPartieArduino/node_modules/ansi-cyan/package.json new file mode 100644 index 0000000..c06b357 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-cyan/package.json @@ -0,0 +1,118 @@ +{ + "_args": [ + [ + { + "raw": "ansi-cyan@^0.1.1", + "scope": null, + "escapedName": "ansi-cyan", + "name": "ansi-cyan", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-list" + ] + ], + "_from": "ansi-cyan@>=0.1.1 <0.2.0", + "_id": "ansi-cyan@0.1.1", + "_inCache": true, + "_location": "/ansi-cyan", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-cyan@^0.1.1", + "scope": null, + "escapedName": "ansi-cyan", + "name": "ansi-cyan", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors", + "/prompt-checkbox", + "/prompt-list" + ], + "_resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "_shasum": "538ae528af8982f28ae30d86f2f17456d2609873", + "_shrinkwrap": null, + "_spec": "ansi-cyan@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-list", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-cyan/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color cyan, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "538ae528af8982f28ae30d86f2f17456d2609873", + "tarball": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-cyan", + "keywords": [ + "cyan", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-cyan", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-cyan.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-cyan/readme.md b/NodjsPartieArduino/node_modules/ansi-cyan/readme.md new file mode 100644 index 0000000..7b0c214 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-cyan/readme.md @@ -0,0 +1,74 @@ +# ansi-cyan [![NPM version](https://badge.fury.io/js/ansi-cyan.svg)](http://badge.fury.io/js/ansi-cyan) + +> The color cyan, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-cyan --save +``` + +## Usage + +```js +var cyan = require('ansi-cyan'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-cyan/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-dim/LICENSE b/NodjsPartieArduino/node_modules/ansi-dim/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-dim/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-dim/index.js b/NodjsPartieArduino/node_modules/ansi-dim/index.js new file mode 100644 index 0000000..441d7ff --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-dim/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-dim + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function dim(message) { + return wrap(2, 22, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-dim/package.json b/NodjsPartieArduino/node_modules/ansi-dim/package.json new file mode 100644 index 0000000..3a2f582 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-dim/package.json @@ -0,0 +1,118 @@ +{ + "_args": [ + [ + { + "raw": "ansi-dim@^0.1.1", + "scope": null, + "escapedName": "ansi-dim", + "name": "ansi-dim", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-list" + ] + ], + "_from": "ansi-dim@>=0.1.1 <0.2.0", + "_id": "ansi-dim@0.1.1", + "_inCache": true, + "_location": "/ansi-dim", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-dim@^0.1.1", + "scope": null, + "escapedName": "ansi-dim", + "name": "ansi-dim", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors", + "/choices-separator", + "/prompt-list" + ], + "_resolved": "https://registry.npmjs.org/ansi-dim/-/ansi-dim-0.1.1.tgz", + "_shasum": "40de4c603aa8086d8e7a86b8ff998d5c36eefd6c", + "_shrinkwrap": null, + "_spec": "ansi-dim@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-list", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-dim/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color dim, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "40de4c603aa8086d8e7a86b8ff998d5c36eefd6c", + "tarball": "https://registry.npmjs.org/ansi-dim/-/ansi-dim-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-dim", + "keywords": [ + "dim", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-dim", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-dim.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-dim/readme.md b/NodjsPartieArduino/node_modules/ansi-dim/readme.md new file mode 100644 index 0000000..d8038ae --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-dim/readme.md @@ -0,0 +1,74 @@ +# ansi-dim [![NPM version](https://badge.fury.io/js/ansi-dim.svg)](http://badge.fury.io/js/ansi-dim) + +> The color dim, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-dim --save +``` + +## Usage + +```js +var dim = require('ansi-dim'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-dim/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-gray/LICENSE b/NodjsPartieArduino/node_modules/ansi-gray/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-gray/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-gray/index.js b/NodjsPartieArduino/node_modules/ansi-gray/index.js new file mode 100644 index 0000000..c22176a --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-gray/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-gray + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function gray(message) { + return wrap(90, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-gray/package.json b/NodjsPartieArduino/node_modules/ansi-gray/package.json new file mode 100644 index 0000000..9cd4269 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-gray/package.json @@ -0,0 +1,117 @@ +{ + "_args": [ + [ + { + "raw": "ansi-gray@^0.1.1", + "scope": null, + "escapedName": "ansi-gray", + "name": "ansi-gray", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-gray@>=0.1.1 <0.2.0", + "_id": "ansi-gray@0.1.1", + "_inCache": true, + "_location": "/ansi-gray", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-gray@^0.1.1", + "scope": null, + "escapedName": "ansi-gray", + "name": "ansi-gray", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors", + "/radio-symbol" + ], + "_resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "_shasum": "2962cf54ec9792c48510a3deb524436861ef7251", + "_shrinkwrap": null, + "_spec": "ansi-gray@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-gray/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color gray, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "2962cf54ec9792c48510a3deb524436861ef7251", + "tarball": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-gray", + "keywords": [ + "gray", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-gray", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-gray.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-gray/readme.md b/NodjsPartieArduino/node_modules/ansi-gray/readme.md new file mode 100644 index 0000000..9b59a29 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-gray/readme.md @@ -0,0 +1,74 @@ +# ansi-gray [![NPM version](https://badge.fury.io/js/ansi-gray.svg)](http://badge.fury.io/js/ansi-gray) + +> The color gray, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-gray --save +``` + +## Usage + +```js +var gray = require('ansi-gray'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-gray/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-green/LICENSE b/NodjsPartieArduino/node_modules/ansi-green/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-green/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-green/index.js b/NodjsPartieArduino/node_modules/ansi-green/index.js new file mode 100644 index 0000000..1a741e5 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-green/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-green + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function green(message) { + return wrap(32, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-green/package.json b/NodjsPartieArduino/node_modules/ansi-green/package.json new file mode 100644 index 0000000..45f0ac3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-green/package.json @@ -0,0 +1,118 @@ +{ + "_args": [ + [ + { + "raw": "ansi-green@^0.1.1", + "scope": null, + "escapedName": "ansi-green", + "name": "ansi-green", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-green@>=0.1.1 <0.2.0", + "_id": "ansi-green@0.1.1", + "_inCache": true, + "_location": "/ansi-green", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-green@^0.1.1", + "scope": null, + "escapedName": "ansi-green", + "name": "ansi-green", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors", + "/log-ok", + "/radio-symbol" + ], + "_resolved": "https://registry.npmjs.org/ansi-green/-/ansi-green-0.1.1.tgz", + "_shasum": "8a5d9a979e458d57c40e33580b37390b8e10d0f7", + "_shrinkwrap": null, + "_spec": "ansi-green@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-green/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color green, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "8a5d9a979e458d57c40e33580b37390b8e10d0f7", + "tarball": "https://registry.npmjs.org/ansi-green/-/ansi-green-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-green", + "keywords": [ + "green", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-green", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-green.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-green/readme.md b/NodjsPartieArduino/node_modules/ansi-green/readme.md new file mode 100644 index 0000000..4b9c7ab --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-green/readme.md @@ -0,0 +1,74 @@ +# ansi-green [![NPM version](https://badge.fury.io/js/ansi-green.svg)](http://badge.fury.io/js/ansi-green) + +> The color green, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-green --save +``` + +## Usage + +```js +var green = require('ansi-green'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-green/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-grey/LICENSE b/NodjsPartieArduino/node_modules/ansi-grey/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-grey/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-grey/index.js b/NodjsPartieArduino/node_modules/ansi-grey/index.js new file mode 100644 index 0000000..45e7302 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-grey/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-grey + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function grey(message) { + return wrap(90, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-grey/package.json b/NodjsPartieArduino/node_modules/ansi-grey/package.json new file mode 100644 index 0000000..8bc8da4 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-grey/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-grey@^0.1.1", + "scope": null, + "escapedName": "ansi-grey", + "name": "ansi-grey", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-grey@>=0.1.1 <0.2.0", + "_id": "ansi-grey@0.1.1", + "_inCache": true, + "_location": "/ansi-grey", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-grey@^0.1.1", + "scope": null, + "escapedName": "ansi-grey", + "name": "ansi-grey", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-grey/-/ansi-grey-0.1.1.tgz", + "_shasum": "59d98b6ac2ba19f8a51798e9853fba78339a33c1", + "_shrinkwrap": null, + "_spec": "ansi-grey@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-grey/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color grey, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "59d98b6ac2ba19f8a51798e9853fba78339a33c1", + "tarball": "https://registry.npmjs.org/ansi-grey/-/ansi-grey-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-grey", + "keywords": [ + "grey", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-grey", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-grey.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-grey/readme.md b/NodjsPartieArduino/node_modules/ansi-grey/readme.md new file mode 100644 index 0000000..1d27018 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-grey/readme.md @@ -0,0 +1,74 @@ +# ansi-grey [![NPM version](https://badge.fury.io/js/ansi-grey.svg)](http://badge.fury.io/js/ansi-grey) + +> The color grey, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-grey --save +``` + +## Usage + +```js +var grey = require('ansi-grey'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-grey/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-hidden/LICENSE b/NodjsPartieArduino/node_modules/ansi-hidden/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-hidden/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-hidden/index.js b/NodjsPartieArduino/node_modules/ansi-hidden/index.js new file mode 100644 index 0000000..e220a9c --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-hidden/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-hidden + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function hidden(message) { + return wrap(8, 28, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-hidden/package.json b/NodjsPartieArduino/node_modules/ansi-hidden/package.json new file mode 100644 index 0000000..e120709 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-hidden/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-hidden@^0.1.1", + "scope": null, + "escapedName": "ansi-hidden", + "name": "ansi-hidden", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-hidden@>=0.1.1 <0.2.0", + "_id": "ansi-hidden@0.1.1", + "_inCache": true, + "_location": "/ansi-hidden", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-hidden@^0.1.1", + "scope": null, + "escapedName": "ansi-hidden", + "name": "ansi-hidden", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-hidden/-/ansi-hidden-0.1.1.tgz", + "_shasum": "ed6a4c498d2bb7cbb289dbf2a8d1dcc8567fae0f", + "_shrinkwrap": null, + "_spec": "ansi-hidden@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-hidden/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color hidden, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "ed6a4c498d2bb7cbb289dbf2a8d1dcc8567fae0f", + "tarball": "https://registry.npmjs.org/ansi-hidden/-/ansi-hidden-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-hidden", + "keywords": [ + "hidden", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-hidden", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-hidden.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-hidden/readme.md b/NodjsPartieArduino/node_modules/ansi-hidden/readme.md new file mode 100644 index 0000000..e646072 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-hidden/readme.md @@ -0,0 +1,74 @@ +# ansi-hidden [![NPM version](https://badge.fury.io/js/ansi-hidden.svg)](http://badge.fury.io/js/ansi-hidden) + +> The color hidden, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-hidden --save +``` + +## Usage + +```js +var hidden = require('ansi-hidden'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-hidden/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-inverse/LICENSE b/NodjsPartieArduino/node_modules/ansi-inverse/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-inverse/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-inverse/index.js b/NodjsPartieArduino/node_modules/ansi-inverse/index.js new file mode 100644 index 0000000..2db93ad --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-inverse/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-inverse + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function inverse(message) { + return wrap(7, 27, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-inverse/package.json b/NodjsPartieArduino/node_modules/ansi-inverse/package.json new file mode 100644 index 0000000..d8fc14d --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-inverse/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-inverse@^0.1.1", + "scope": null, + "escapedName": "ansi-inverse", + "name": "ansi-inverse", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-inverse@>=0.1.1 <0.2.0", + "_id": "ansi-inverse@0.1.1", + "_inCache": true, + "_location": "/ansi-inverse", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-inverse@^0.1.1", + "scope": null, + "escapedName": "ansi-inverse", + "name": "ansi-inverse", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-inverse/-/ansi-inverse-0.1.1.tgz", + "_shasum": "b6af45826fe826bfb528a6c79885794355ccd269", + "_shrinkwrap": null, + "_spec": "ansi-inverse@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-inverse/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color inverse, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "b6af45826fe826bfb528a6c79885794355ccd269", + "tarball": "https://registry.npmjs.org/ansi-inverse/-/ansi-inverse-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-inverse", + "keywords": [ + "inverse", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-inverse", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-inverse.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-inverse/readme.md b/NodjsPartieArduino/node_modules/ansi-inverse/readme.md new file mode 100644 index 0000000..3cc6cf2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-inverse/readme.md @@ -0,0 +1,74 @@ +# ansi-inverse [![NPM version](https://badge.fury.io/js/ansi-inverse.svg)](http://badge.fury.io/js/ansi-inverse) + +> The color inverse, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-inverse --save +``` + +## Usage + +```js +var inverse = require('ansi-inverse'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-inverse/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-italic/LICENSE b/NodjsPartieArduino/node_modules/ansi-italic/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-italic/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-italic/index.js b/NodjsPartieArduino/node_modules/ansi-italic/index.js new file mode 100644 index 0000000..90e0116 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-italic/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-italic + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function italic(message) { + return wrap(3, 23, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-italic/package.json b/NodjsPartieArduino/node_modules/ansi-italic/package.json new file mode 100644 index 0000000..742f212 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-italic/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-italic@^0.1.1", + "scope": null, + "escapedName": "ansi-italic", + "name": "ansi-italic", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-italic@>=0.1.1 <0.2.0", + "_id": "ansi-italic@0.1.1", + "_inCache": true, + "_location": "/ansi-italic", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-italic@^0.1.1", + "scope": null, + "escapedName": "ansi-italic", + "name": "ansi-italic", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-italic/-/ansi-italic-0.1.1.tgz", + "_shasum": "104743463f625c142a036739cf85eda688986f23", + "_shrinkwrap": null, + "_spec": "ansi-italic@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-italic/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color italic, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "104743463f625c142a036739cf85eda688986f23", + "tarball": "https://registry.npmjs.org/ansi-italic/-/ansi-italic-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-italic", + "keywords": [ + "italic", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-italic", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-italic.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-italic/readme.md b/NodjsPartieArduino/node_modules/ansi-italic/readme.md new file mode 100644 index 0000000..17e7450 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-italic/readme.md @@ -0,0 +1,74 @@ +# ansi-italic [![NPM version](https://badge.fury.io/js/ansi-italic.svg)](http://badge.fury.io/js/ansi-italic) + +> The color italic, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-italic --save +``` + +## Usage + +```js +var italic = require('ansi-italic'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-italic/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-magenta/LICENSE b/NodjsPartieArduino/node_modules/ansi-magenta/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-magenta/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-magenta/index.js b/NodjsPartieArduino/node_modules/ansi-magenta/index.js new file mode 100644 index 0000000..bbce5e0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-magenta/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-magenta + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function magenta(message) { + return wrap(35, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-magenta/package.json b/NodjsPartieArduino/node_modules/ansi-magenta/package.json new file mode 100644 index 0000000..286f625 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-magenta/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-magenta@^0.1.1", + "scope": null, + "escapedName": "ansi-magenta", + "name": "ansi-magenta", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-magenta@>=0.1.1 <0.2.0", + "_id": "ansi-magenta@0.1.1", + "_inCache": true, + "_location": "/ansi-magenta", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-magenta@^0.1.1", + "scope": null, + "escapedName": "ansi-magenta", + "name": "ansi-magenta", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-magenta/-/ansi-magenta-0.1.1.tgz", + "_shasum": "063b5ba16fb3f23e1cfda2b07c0a89de11e430ae", + "_shrinkwrap": null, + "_spec": "ansi-magenta@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-magenta/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color magenta, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "063b5ba16fb3f23e1cfda2b07c0a89de11e430ae", + "tarball": "https://registry.npmjs.org/ansi-magenta/-/ansi-magenta-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-magenta", + "keywords": [ + "magenta", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-magenta", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-magenta.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-magenta/readme.md b/NodjsPartieArduino/node_modules/ansi-magenta/readme.md new file mode 100644 index 0000000..5ef9e67 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-magenta/readme.md @@ -0,0 +1,74 @@ +# ansi-magenta [![NPM version](https://badge.fury.io/js/ansi-magenta.svg)](http://badge.fury.io/js/ansi-magenta) + +> The color magenta, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-magenta --save +``` + +## Usage + +```js +var magenta = require('ansi-magenta'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-magenta/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-red/LICENSE b/NodjsPartieArduino/node_modules/ansi-red/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-red/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-red/index.js b/NodjsPartieArduino/node_modules/ansi-red/index.js new file mode 100644 index 0000000..00ea302 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-red/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-red + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function red(message) { + return wrap(31, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-red/package.json b/NodjsPartieArduino/node_modules/ansi-red/package.json new file mode 100644 index 0000000..c68a4b3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-red/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-red@^0.1.1", + "scope": null, + "escapedName": "ansi-red", + "name": "ansi-red", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-red@>=0.1.1 <0.2.0", + "_id": "ansi-red@0.1.1", + "_inCache": true, + "_location": "/ansi-red", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-red@^0.1.1", + "scope": null, + "escapedName": "ansi-red", + "name": "ansi-red", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "_shasum": "8c638f9d1080800a353c9c28c8a81ca4705d946c", + "_shrinkwrap": null, + "_spec": "ansi-red@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-red/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color red, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "8c638f9d1080800a353c9c28c8a81ca4705d946c", + "tarball": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-red", + "keywords": [ + "red", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-red", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-red.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-red/readme.md b/NodjsPartieArduino/node_modules/ansi-red/readme.md new file mode 100644 index 0000000..e09e77b --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-red/readme.md @@ -0,0 +1,74 @@ +# ansi-red [![NPM version](https://badge.fury.io/js/ansi-red.svg)](http://badge.fury.io/js/ansi-red) + +> The color red, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-red --save +``` + +## Usage + +```js +var red = require('ansi-red'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-red/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-regex/index.js b/NodjsPartieArduino/node_modules/ansi-regex/index.js new file mode 100644 index 0000000..b9574ed --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-regex/index.js @@ -0,0 +1,4 @@ +'use strict'; +module.exports = function () { + return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-PRZcf-nqry=><]/g; +}; diff --git a/NodjsPartieArduino/node_modules/ansi-regex/license b/NodjsPartieArduino/node_modules/ansi-regex/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-regex/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-regex/package.json b/NodjsPartieArduino/node_modules/ansi-regex/package.json new file mode 100644 index 0000000..137482e --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-regex/package.json @@ -0,0 +1,131 @@ +{ + "_args": [ + [ + { + "raw": "ansi-regex@^2.0.0", + "scope": null, + "escapedName": "ansi-regex", + "name": "ansi-regex", + "rawSpec": "^2.0.0", + "spec": ">=2.0.0 <3.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/strip-ansi" + ] + ], + "_from": "ansi-regex@>=2.0.0 <3.0.0", + "_id": "ansi-regex@2.1.1", + "_inCache": true, + "_location": "/ansi-regex", + "_nodeVersion": "0.10.32", + "_npmOperationalInternal": { + "host": "packages-18-east.internal.npmjs.com", + "tmp": "tmp/ansi-regex-2.1.1.tgz_1484363378013_0.4482989883981645" + }, + "_npmUser": { + "name": "qix", + "email": "i.am.qix@gmail.com" + }, + "_npmVersion": "2.14.2", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-regex@^2.0.0", + "scope": null, + "escapedName": "ansi-regex", + "name": "ansi-regex", + "rawSpec": "^2.0.0", + "spec": ">=2.0.0 <3.0.0", + "type": "range" + }, + "_requiredBy": [ + "/strip-ansi" + ], + "_resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "_shasum": "c3b33ab5ee360d86e0e628f0468ae7ef27d654df", + "_shrinkwrap": null, + "_spec": "ansi-regex@^2.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "bugs": { + "url": "https://github.com/chalk/ansi-regex/issues" + }, + "dependencies": {}, + "description": "Regular expression for matching ANSI escape codes", + "devDependencies": { + "ava": "0.17.0", + "xo": "0.16.0" + }, + "directories": {}, + "dist": { + "shasum": "c3b33ab5ee360d86e0e628f0468ae7ef27d654df", + "tarball": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "7c908e7b4eb6cd82bfe1295e33fdf6d166c7ed85", + "homepage": "https://github.com/chalk/ansi-regex#readme", + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "license": "MIT", + "maintainers": [ + { + "name": "qix", + "email": "i.am.qix@gmail.com" + }, + { + "name": "sindresorhus", + "email": "sindresorhus@gmail.com" + } + ], + "name": "ansi-regex", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/chalk/ansi-regex.git" + }, + "scripts": { + "test": "xo && ava --verbose", + "view-supported": "node fixtures/view-codes.js" + }, + "version": "2.1.1", + "xo": { + "rules": { + "guard-for-in": 0, + "no-loop-func": 0 + } + } +} diff --git a/NodjsPartieArduino/node_modules/ansi-regex/readme.md b/NodjsPartieArduino/node_modules/ansi-regex/readme.md new file mode 100644 index 0000000..6a928ed --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-regex/readme.md @@ -0,0 +1,39 @@ +# ansi-regex [![Build Status](https://travis-ci.org/chalk/ansi-regex.svg?branch=master)](https://travis-ci.org/chalk/ansi-regex) + +> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code) + + +## Install + +``` +$ npm install --save ansi-regex +``` + + +## Usage + +```js +const ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001b[4mcake\u001b[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001b[4mcake\u001b[0m'.match(ansiRegex()); +//=> ['\u001b[4m', '\u001b[0m'] +``` + +## FAQ + +### Why do you test for codes not in the ECMA 48 standard? + +Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. If I recall correctly, we test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them. + +On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out. + + +## License + +MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/NodjsPartieArduino/node_modules/ansi-reset/LICENSE b/NodjsPartieArduino/node_modules/ansi-reset/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-reset/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-reset/index.js b/NodjsPartieArduino/node_modules/ansi-reset/index.js new file mode 100644 index 0000000..808b00f --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-reset/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-reset + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function reset(message) { + return wrap(0, 0, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-reset/package.json b/NodjsPartieArduino/node_modules/ansi-reset/package.json new file mode 100644 index 0000000..1f31e17 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-reset/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-reset@^0.1.1", + "scope": null, + "escapedName": "ansi-reset", + "name": "ansi-reset", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-reset@>=0.1.1 <0.2.0", + "_id": "ansi-reset@0.1.1", + "_inCache": true, + "_location": "/ansi-reset", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-reset@^0.1.1", + "scope": null, + "escapedName": "ansi-reset", + "name": "ansi-reset", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-reset/-/ansi-reset-0.1.1.tgz", + "_shasum": "e7e71292c3c7ddcd4d62ef4a6c7c05980911c3b7", + "_shrinkwrap": null, + "_spec": "ansi-reset@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-reset/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color reset, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "e7e71292c3c7ddcd4d62ef4a6c7c05980911c3b7", + "tarball": "https://registry.npmjs.org/ansi-reset/-/ansi-reset-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-reset", + "keywords": [ + "reset", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-reset", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-reset.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-reset/readme.md b/NodjsPartieArduino/node_modules/ansi-reset/readme.md new file mode 100644 index 0000000..992ba57 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-reset/readme.md @@ -0,0 +1,74 @@ +# ansi-reset [![NPM version](https://badge.fury.io/js/ansi-reset.svg)](http://badge.fury.io/js/ansi-reset) + +> The color reset, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-reset --save +``` + +## Usage + +```js +var reset = require('ansi-reset'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-reset/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-strikethrough/LICENSE b/NodjsPartieArduino/node_modules/ansi-strikethrough/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-strikethrough/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-strikethrough/index.js b/NodjsPartieArduino/node_modules/ansi-strikethrough/index.js new file mode 100644 index 0000000..39df3cc --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-strikethrough/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-strikethrough + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function strikethrough(message) { + return wrap(9, 29, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-strikethrough/package.json b/NodjsPartieArduino/node_modules/ansi-strikethrough/package.json new file mode 100644 index 0000000..2a7d371 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-strikethrough/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-strikethrough@^0.1.1", + "scope": null, + "escapedName": "ansi-strikethrough", + "name": "ansi-strikethrough", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-strikethrough@>=0.1.1 <0.2.0", + "_id": "ansi-strikethrough@0.1.1", + "_inCache": true, + "_location": "/ansi-strikethrough", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-strikethrough@^0.1.1", + "scope": null, + "escapedName": "ansi-strikethrough", + "name": "ansi-strikethrough", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-strikethrough/-/ansi-strikethrough-0.1.1.tgz", + "_shasum": "d84877140b2cff07d1c93ebce69904f68885e568", + "_shrinkwrap": null, + "_spec": "ansi-strikethrough@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-strikethrough/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color strikethrough, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "d84877140b2cff07d1c93ebce69904f68885e568", + "tarball": "https://registry.npmjs.org/ansi-strikethrough/-/ansi-strikethrough-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-strikethrough", + "keywords": [ + "strikethrough", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-strikethrough", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-strikethrough.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-strikethrough/readme.md b/NodjsPartieArduino/node_modules/ansi-strikethrough/readme.md new file mode 100644 index 0000000..78f63c0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-strikethrough/readme.md @@ -0,0 +1,74 @@ +# ansi-strikethrough [![NPM version](https://badge.fury.io/js/ansi-strikethrough.svg)](http://badge.fury.io/js/ansi-strikethrough) + +> The color strikethrough, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-strikethrough --save +``` + +## Usage + +```js +var strikethrough = require('ansi-strikethrough'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-strikethrough/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-underline/LICENSE b/NodjsPartieArduino/node_modules/ansi-underline/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-underline/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-underline/index.js b/NodjsPartieArduino/node_modules/ansi-underline/index.js new file mode 100644 index 0000000..40842b1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-underline/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-underline + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function underline(message) { + return wrap(4, 24, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-underline/package.json b/NodjsPartieArduino/node_modules/ansi-underline/package.json new file mode 100644 index 0000000..ecddcba --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-underline/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-underline@^0.1.1", + "scope": null, + "escapedName": "ansi-underline", + "name": "ansi-underline", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-underline@>=0.1.1 <0.2.0", + "_id": "ansi-underline@0.1.1", + "_inCache": true, + "_location": "/ansi-underline", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-underline@^0.1.1", + "scope": null, + "escapedName": "ansi-underline", + "name": "ansi-underline", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-underline/-/ansi-underline-0.1.1.tgz", + "_shasum": "dfc920f4c97b5977ea162df8ffb988308aaa71a4", + "_shrinkwrap": null, + "_spec": "ansi-underline@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-underline/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color underline, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "dfc920f4c97b5977ea162df8ffb988308aaa71a4", + "tarball": "https://registry.npmjs.org/ansi-underline/-/ansi-underline-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-underline", + "keywords": [ + "underline", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-underline", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-underline.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-underline/readme.md b/NodjsPartieArduino/node_modules/ansi-underline/readme.md new file mode 100644 index 0000000..ad279c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-underline/readme.md @@ -0,0 +1,74 @@ +# ansi-underline [![NPM version](https://badge.fury.io/js/ansi-underline.svg)](http://badge.fury.io/js/ansi-underline) + +> The color underline, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-underline --save +``` + +## Usage + +```js +var underline = require('ansi-underline'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-underline/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-white/LICENSE b/NodjsPartieArduino/node_modules/ansi-white/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-white/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-white/index.js b/NodjsPartieArduino/node_modules/ansi-white/index.js new file mode 100644 index 0000000..f262a33 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-white/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-white + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function white(message) { + return wrap(37, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-white/package.json b/NodjsPartieArduino/node_modules/ansi-white/package.json new file mode 100644 index 0000000..c8bbe40 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-white/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-white@^0.1.1", + "scope": null, + "escapedName": "ansi-white", + "name": "ansi-white", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-white@>=0.1.1 <0.2.0", + "_id": "ansi-white@0.1.1", + "_inCache": true, + "_location": "/ansi-white", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-white@^0.1.1", + "scope": null, + "escapedName": "ansi-white", + "name": "ansi-white", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-white/-/ansi-white-0.1.1.tgz", + "_shasum": "9c77b7c193c5ee992e6011d36ec4c921b4578944", + "_shrinkwrap": null, + "_spec": "ansi-white@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-white/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color white, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "9c77b7c193c5ee992e6011d36ec4c921b4578944", + "tarball": "https://registry.npmjs.org/ansi-white/-/ansi-white-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-white", + "keywords": [ + "white", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-white", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-white.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-white/readme.md b/NodjsPartieArduino/node_modules/ansi-white/readme.md new file mode 100644 index 0000000..ce1aa5d --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-white/readme.md @@ -0,0 +1,74 @@ +# ansi-white [![NPM version](https://badge.fury.io/js/ansi-white.svg)](http://badge.fury.io/js/ansi-white) + +> The color white, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-white --save +``` + +## Usage + +```js +var white = require('ansi-white'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-white/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-wrap/LICENSE b/NodjsPartieArduino/node_modules/ansi-wrap/LICENSE new file mode 100644 index 0000000..65f90ac --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-wrap/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-wrap/README.md b/NodjsPartieArduino/node_modules/ansi-wrap/README.md new file mode 100644 index 0000000..032c1e6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-wrap/README.md @@ -0,0 +1,89 @@ +# ansi-wrap [![NPM version](https://badge.fury.io/js/ansi-wrap.svg)](http://badge.fury.io/js/ansi-wrap) + +> Create ansi colors by passing the open and close codes. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-wrap --save +``` + +## Usage + +```js +var wrap = require('ansi-wrap'); +``` + +**Example** + +Pass codes for [ansi magenta background](https://github.com/jonschlinkert/ansi-bgmagenta): + +```js +console.log(wrap(45, 49, 'This is a message...')); +//=> '\u001b[45mfoo\u001b[49m' +``` + +Which prints out... + +[![screen shot 2015-05-21 at 8 28 32 pm](https://cloud.githubusercontent.com/assets/383994/7761769/12488afa-fff8-11e4-9cc1-71a8a6ec14a4.png)](https://www.npmjs.com/) + +## Related projects + +This is used in these projects: + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-wrap/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/ansi-wrap/index.js b/NodjsPartieArduino/node_modules/ansi-wrap/index.js new file mode 100644 index 0000000..ffc52d7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-wrap/index.js @@ -0,0 +1,5 @@ +'use strict'; + +module.exports = function(a, b, msg) { + return '\u001b['+ a + 'm' + msg + '\u001b[' + b + 'm'; +}; diff --git a/NodjsPartieArduino/node_modules/ansi-wrap/package.json b/NodjsPartieArduino/node_modules/ansi-wrap/package.json new file mode 100644 index 0000000..9a1507c --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-wrap/package.json @@ -0,0 +1,114 @@ +{ + "_args": [ + [ + { + "raw": "ansi-wrap@0.1.0", + "scope": null, + "escapedName": "ansi-wrap", + "name": "ansi-wrap", + "rawSpec": "0.1.0", + "spec": "0.1.0", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-cyan" + ] + ], + "_from": "ansi-wrap@0.1.0", + "_id": "ansi-wrap@0.1.0", + "_inCache": true, + "_location": "/ansi-wrap", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.5.1", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-wrap@0.1.0", + "scope": null, + "escapedName": "ansi-wrap", + "name": "ansi-wrap", + "rawSpec": "0.1.0", + "spec": "0.1.0", + "type": "version" + }, + "_requiredBy": [ + "/ansi-bgblack", + "/ansi-bgblue", + "/ansi-bgcyan", + "/ansi-bggreen", + "/ansi-bgmagenta", + "/ansi-bgred", + "/ansi-bgwhite", + "/ansi-bgyellow", + "/ansi-black", + "/ansi-blue", + "/ansi-bold", + "/ansi-cyan", + "/ansi-dim", + "/ansi-gray", + "/ansi-green", + "/ansi-grey", + "/ansi-hidden", + "/ansi-inverse", + "/ansi-italic", + "/ansi-magenta", + "/ansi-red", + "/ansi-reset", + "/ansi-strikethrough", + "/ansi-underline", + "/ansi-white", + "/ansi-yellow" + ], + "_resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "_shasum": "a82250ddb0015e9a27ca82e82ea603bbfa45efaf", + "_shrinkwrap": null, + "_spec": "ansi-wrap@0.1.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-cyan", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-wrap/issues" + }, + "dependencies": {}, + "description": "Create ansi colors by passing the open and close codes.", + "devDependencies": {}, + "directories": {}, + "dist": { + "shasum": "a82250ddb0015e9a27ca82e82ea603bbfa45efaf", + "tarball": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-wrap", + "keywords": [], + "license": { + "type": "MIT", + "url": "https://github.com/jonschlinkert/ansi-wrap/blob/master/LICENSE" + }, + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-wrap", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-wrap.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.0" +} diff --git a/NodjsPartieArduino/node_modules/ansi-yellow/LICENSE b/NodjsPartieArduino/node_modules/ansi-yellow/LICENSE new file mode 100644 index 0000000..41283c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-yellow/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) <%= year() %>, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ansi-yellow/index.js b/NodjsPartieArduino/node_modules/ansi-yellow/index.js new file mode 100644 index 0000000..53999c7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-yellow/index.js @@ -0,0 +1,14 @@ +/*! + * ansi-yellow + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var wrap = require('ansi-wrap'); + +module.exports = function yellow(message) { + return wrap(33, 39, message); +}; diff --git a/NodjsPartieArduino/node_modules/ansi-yellow/package.json b/NodjsPartieArduino/node_modules/ansi-yellow/package.json new file mode 100644 index 0000000..fe3be37 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-yellow/package.json @@ -0,0 +1,116 @@ +{ + "_args": [ + [ + { + "raw": "ansi-yellow@^0.1.1", + "scope": null, + "escapedName": "ansi-yellow", + "name": "ansi-yellow", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors" + ] + ], + "_from": "ansi-yellow@>=0.1.1 <0.2.0", + "_id": "ansi-yellow@0.1.1", + "_inCache": true, + "_location": "/ansi-yellow", + "_nodeVersion": "0.12.0", + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "2.10.0", + "_phantomChildren": {}, + "_requested": { + "raw": "ansi-yellow@^0.1.1", + "scope": null, + "escapedName": "ansi-yellow", + "name": "ansi-yellow", + "rawSpec": "^0.1.1", + "spec": ">=0.1.1 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/ansi-colors" + ], + "_resolved": "https://registry.npmjs.org/ansi-yellow/-/ansi-yellow-0.1.1.tgz", + "_shasum": "cb9356f2f46c732f0e3199e6102955a77da83c1d", + "_shrinkwrap": null, + "_spec": "ansi-yellow@^0.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ansi-colors", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/ansi-yellow/issues" + }, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "description": "The color yellow, in ansi.", + "devDependencies": { + "mocha": "*" + }, + "directories": {}, + "dist": { + "shasum": "cb9356f2f46c732f0e3199e6102955a77da83c1d", + "tarball": "https://registry.npmjs.org/ansi-yellow/-/ansi-yellow-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "homepage": "https://github.com/jonschlinkert/ansi-yellow", + "keywords": [ + "yellow", + "256", + "ansi", + "cli", + "color", + "colors", + "colour", + "command", + "command-line", + "console", + "format", + "formatting", + "iterm", + "log", + "logging", + "rgb", + "shell", + "string", + "style", + "styles", + "styling", + "terminal", + "text", + "tty", + "xterm" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "ansi-yellow", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/ansi-yellow.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/ansi-yellow/readme.md b/NodjsPartieArduino/node_modules/ansi-yellow/readme.md new file mode 100644 index 0000000..f3fa43e --- /dev/null +++ b/NodjsPartieArduino/node_modules/ansi-yellow/readme.md @@ -0,0 +1,74 @@ +# ansi-yellow [![NPM version](https://badge.fury.io/js/ansi-yellow.svg)](http://badge.fury.io/js/ansi-yellow) + +> The color yellow, in ansi. + +## Install + +Install with [npm](https://www.npmjs.com/) + +```sh +$ npm i ansi-yellow --save +``` + +## Usage + +```js +var yellow = require('ansi-yellow'); +``` + +## Related projects + +* [ansi-reset](https://github.com/jonschlinkert/ansi-reset) +* [ansi-bold](https://github.com/jonschlinkert/ansi-bold) +* [ansi-dim](https://github.com/jonschlinkert/ansi-dim) +* [ansi-italic](https://github.com/jonschlinkert/ansi-italic) +* [ansi-underline](https://github.com/jonschlinkert/ansi-underline) +* [ansi-inverse](https://github.com/jonschlinkert/ansi-inverse) +* [ansi-hidden](https://github.com/jonschlinkert/ansi-hidden) +* [ansi-strikethrough](https://github.com/jonschlinkert/ansi-strikethrough) +* [ansi-black](https://github.com/jonschlinkert/ansi-black) +* [ansi-red](https://github.com/jonschlinkert/ansi-red) +* [ansi-green](https://github.com/jonschlinkert/ansi-green) +* [ansi-yellow](https://github.com/jonschlinkert/ansi-yellow) +* [ansi-blue](https://github.com/jonschlinkert/ansi-blue) +* [ansi-magenta](https://github.com/jonschlinkert/ansi-magenta) +* [ansi-cyan](https://github.com/jonschlinkert/ansi-cyan) +* [ansi-white](https://github.com/jonschlinkert/ansi-white) +* [ansi-gray](https://github.com/jonschlinkert/ansi-gray) +* [ansi-grey](https://github.com/jonschlinkert/ansi-grey) +* [ansi-bgblack](https://github.com/jonschlinkert/ansi-bgblack) +* [ansi-bgred](https://github.com/jonschlinkert/ansi-bgred) +* [ansi-bggreen](https://github.com/jonschlinkert/ansi-bggreen) +* [ansi-bgyellow](https://github.com/jonschlinkert/ansi-bgyellow) +* [ansi-bgblue](https://github.com/jonschlinkert/ansi-bgblue) +* [ansi-bgmagenta](https://github.com/jonschlinkert/ansi-bgmagenta) +* [ansi-bgcyan](https://github.com/jonschlinkert/ansi-bgcyan) +* [ansi-bgwhite](https://github.com/jonschlinkert/ansi-bgwhite) + +## Running tests + +Install dev dependencies: + +```sh +$ npm i -d && npm test +``` + +## Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/ansi-yellow/issues/new) + +## Author + +**Jon Schlinkert** + ++ [github/jonschlinkert](https://github.com/jonschlinkert) ++ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +## License + +Copyright © 2015 Jon Schlinkert +Released under the MIT license. + +*** + +_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on May 21, 2015._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/aproba/LICENSE b/NodjsPartieArduino/node_modules/aproba/LICENSE new file mode 100644 index 0000000..f4be44d --- /dev/null +++ b/NodjsPartieArduino/node_modules/aproba/LICENSE @@ -0,0 +1,14 @@ +Copyright (c) 2015, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + diff --git a/NodjsPartieArduino/node_modules/aproba/README.md b/NodjsPartieArduino/node_modules/aproba/README.md new file mode 100644 index 0000000..0bfc594 --- /dev/null +++ b/NodjsPartieArduino/node_modules/aproba/README.md @@ -0,0 +1,94 @@ +aproba +====== + +A ridiculously light-weight function argument validator + +``` +var validate = require("aproba") + +function myfunc(a, b, c) { + // `a` must be a string, `b` a number, `c` a function + validate('SNF', arguments) // [a,b,c] is also valid +} + +myfunc('test', 23, function () {}) // ok +myfunc(123, 23, function () {}) // type error +myfunc('test', 23) // missing arg error +myfunc('test', 23, function () {}, true) // too many args error + +``` + +Valid types are: + +| type | description +| :--: | :---------- +| * | matches any type +| A | `Array.isArray` OR an `arguments` object +| S | typeof == string +| N | typeof == number +| F | typeof == function +| O | typeof == object and not type A and not type E +| B | typeof == boolean +| E | `instanceof Error` OR `null` **(special: see below)** +| Z | == `null` + +Validation failures throw one of three exception types, distinguished by a +`code` property of `EMISSINGARG`, `EINVALIDTYPE` or `ETOOMANYARGS`. + +If you pass in an invalid type then it will throw with a code of +`EUNKNOWNTYPE`. + +If an **error** argument is found and is not null then the remaining +arguments are optional. That is, if you say `ESO` then that's like using a +non-magical `E` in: `E|ESO|ZSO`. + +### But I have optional arguments?! + +You can provide more than one signature by separating them with pipes `|`. +If any signature matches the arguments then they'll be considered valid. + +So for example, say you wanted to write a signature for +`fs.createWriteStream`. The docs for it describe it thusly: + +``` +fs.createWriteStream(path[, options]) +``` + +This would be a signature of `SO|S`. That is, a string and and object, or +just a string. + +Now, if you read the full `fs` docs, you'll see that actually path can ALSO +be a buffer. And options can be a string, that is: +``` +path | +options | +``` + +To reproduce this you have to fully enumerate all of the possible +combinations and that implies a signature of `SO|SS|OO|OS|S|O`. The +awkwardness is a feature: It reminds you of the complexity you're adding to +your API when you do this sort of thing. + + +### Browser support + +This has no dependencies and should work in browsers, though you'll have +noisier stack traces. + +### Why this exists + +I wanted a very simple argument validator. It needed to do two things: + +1. Be more concise and easier to use than assertions + +2. Not encourage an infinite bikeshed of DSLs + +This is why types are specified by a single character and there's no such +thing as an optional argument. + +This is not intended to validate user data. This is specifically about +asserting the interface of your functions. + +If you need greater validation, I encourage you to write them by hand or +look elsewhere. + diff --git a/NodjsPartieArduino/node_modules/aproba/index.js b/NodjsPartieArduino/node_modules/aproba/index.js new file mode 100644 index 0000000..6f3f797 --- /dev/null +++ b/NodjsPartieArduino/node_modules/aproba/index.js @@ -0,0 +1,105 @@ +'use strict' + +function isArguments (thingy) { + return thingy != null && typeof thingy === 'object' && thingy.hasOwnProperty('callee') +} + +var types = { + '*': {label: 'any', check: function () { return true }}, + A: {label: 'array', check: function (thingy) { return Array.isArray(thingy) || isArguments(thingy) }}, + S: {label: 'string', check: function (thingy) { return typeof thingy === 'string' }}, + N: {label: 'number', check: function (thingy) { return typeof thingy === 'number' }}, + F: {label: 'function', check: function (thingy) { return typeof thingy === 'function' }}, + O: {label: 'object', check: function (thingy) { return typeof thingy === 'object' && thingy != null && !types.A.check(thingy) && !types.E.check(thingy) }}, + B: {label: 'boolean', check: function (thingy) { return typeof thingy === 'boolean' }}, + E: {label: 'error', check: function (thingy) { return thingy instanceof Error }}, + Z: {label: 'null', check: function (thingy) { return thingy == null }} +} + +function addSchema (schema, arity) { + var group = arity[schema.length] = arity[schema.length] || [] + if (group.indexOf(schema) === -1) group.push(schema) +} + +var validate = module.exports = function (rawSchemas, args) { + if (arguments.length !== 2) throw wrongNumberOfArgs(['SA'], arguments.length) + if (!rawSchemas) throw missingRequiredArg(0, 'rawSchemas') + if (!args) throw missingRequiredArg(1, 'args') + if (!types.S.check(rawSchemas)) throw invalidType(0, ['string'], rawSchemas) + if (!types.A.check(args)) throw invalidType(1, ['array'], args) + var schemas = rawSchemas.split('|') + var arity = {} + + schemas.forEach(function (schema) { + for (var ii = 0; ii < schema.length; ++ii) { + var type = schema[ii] + if (!types[type]) throw unknownType(ii, type) + } + if (/E.*E/.test(schema)) throw moreThanOneError(schema) + addSchema(schema, arity) + if (/E/.test(schema)) { + addSchema(schema.replace(/E.*$/, 'E'), arity) + addSchema(schema.replace(/E/, 'Z'), arity) + if (schema.length === 1) addSchema('', arity) + } + }) + var matching = arity[args.length] + if (!matching) { + throw wrongNumberOfArgs(Object.keys(arity), args.length) + } + for (var ii = 0; ii < args.length; ++ii) { + var newMatching = matching.filter(function (schema) { + var type = schema[ii] + var typeCheck = types[type].check + return typeCheck(args[ii]) + }) + if (!newMatching.length) { + var labels = matching.map(function (schema) { + return types[schema[ii]].label + }).filter(function (schema) { return schema != null }) + throw invalidType(ii, labels, args[ii]) + } + matching = newMatching + } +} + +function missingRequiredArg (num) { + return newException('EMISSINGARG', 'Missing required argument #' + (num + 1)) +} + +function unknownType (num, type) { + return newException('EUNKNOWNTYPE', 'Unknown type ' + type + ' in argument #' + (num + 1)) +} + +function invalidType (num, expectedTypes, value) { + var valueType + Object.keys(types).forEach(function (typeCode) { + if (types[typeCode].check(value)) valueType = types[typeCode].label + }) + return newException('EINVALIDTYPE', 'Argument #' + (num + 1) + ': Expected ' + + englishList(expectedTypes) + ' but got ' + valueType) +} + +function englishList (list) { + return list.join(', ').replace(/, ([^,]+)$/, ' or $1') +} + +function wrongNumberOfArgs (expected, got) { + var english = englishList(expected) + var args = expected.every(function (ex) { return ex.length === 1 }) + ? 'argument' + : 'arguments' + return newException('EWRONGARGCOUNT', 'Expected ' + english + ' ' + args + ' but got ' + got) +} + +function moreThanOneError (schema) { + return newException('ETOOMANYERRORTYPES', + 'Only one error type per argument signature is allowed, more than one found in "' + schema + '"') +} + +function newException (code, msg) { + var e = new Error(msg) + e.code = code + if (Error.captureStackTrace) Error.captureStackTrace(e, validate) + return e +} diff --git a/NodjsPartieArduino/node_modules/aproba/package.json b/NodjsPartieArduino/node_modules/aproba/package.json new file mode 100644 index 0000000..0d9e9a0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/aproba/package.json @@ -0,0 +1,97 @@ +{ + "_args": [ + [ + { + "raw": "aproba@^1.0.3", + "scope": null, + "escapedName": "aproba", + "name": "aproba", + "rawSpec": "^1.0.3", + "spec": ">=1.0.3 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/gauge" + ] + ], + "_from": "aproba@>=1.0.3 <2.0.0", + "_id": "aproba@1.2.0", + "_inCache": true, + "_location": "/aproba", + "_nodeVersion": "8.5.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/aproba-1.2.0.tgz_1505861292502_0.3447994305752218" + }, + "_npmUser": { + "name": "iarna", + "email": "me@re-becca.org" + }, + "_npmVersion": "5.4.2", + "_phantomChildren": {}, + "_requested": { + "raw": "aproba@^1.0.3", + "scope": null, + "escapedName": "aproba", + "name": "aproba", + "rawSpec": "^1.0.3", + "spec": ">=1.0.3 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/gauge" + ], + "_resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "_shasum": "6802e6264efd18c790a1b0d517f0f2627bf2c94a", + "_shrinkwrap": null, + "_spec": "aproba@^1.0.3", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/gauge", + "author": { + "name": "Rebecca Turner", + "email": "me@re-becca.org" + }, + "bugs": { + "url": "https://github.com/iarna/aproba/issues" + }, + "dependencies": {}, + "description": "A ridiculously light-weight argument validator (now browser friendly)", + "devDependencies": { + "standard": "^10.0.3", + "tap": "^10.0.2" + }, + "directories": { + "test": "test" + }, + "dist": { + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "shasum": "6802e6264efd18c790a1b0d517f0f2627bf2c94a", + "tarball": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz" + }, + "files": [ + "index.js" + ], + "gitHead": "ee43ce68c9992e8f9d0d925dc2b1f2e1e5c976de", + "homepage": "https://github.com/iarna/aproba", + "keywords": [ + "argument", + "validate" + ], + "license": "ISC", + "main": "index.js", + "maintainers": [ + { + "name": "iarna", + "email": "me@re-becca.org" + } + ], + "name": "aproba", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/iarna/aproba.git" + }, + "scripts": { + "test": "standard && tap -j3 test/*.js" + }, + "version": "1.2.0" +} diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/CHANGES.md b/NodjsPartieArduino/node_modules/are-we-there-yet/CHANGES.md new file mode 100644 index 0000000..21f3b1c --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/CHANGES.md @@ -0,0 +1,37 @@ +Hi, figured we could actually use a changelog now: + +## 1.1.5 2018-05-24 + +* [#92](https://github.com/iarna/are-we-there-yet/pull/92) Fix bug where + `finish` would throw errors when including `TrackerStream` objects in + `TrackerGroup` collections. (@brianloveswords) + +## 1.1.4 2017-04-21 + +* Fix typo in package.json + +## 1.1.3 2017-04-21 + +* Improve documentation and limit files included in the distribution. + +## 1.1.2 2016-03-15 + +* Add tracker group cycle detection and tests for it + +## 1.1.1 2016-01-29 + +* Fix a typo in stream completion tracker + +## 1.1.0 2016-01-29 + +* Rewrote completion percent computation to be low impact– no more walking a + tree of completion groups every time we need this info. Previously, with + medium sized tree of completion groups, even a relatively modest number of + calls to the top level `completed()` method would result in absurd numbers + of calls overall as it walked down the tree. We now, instead, keep track as + we bubble up changes, so the computation is limited to when data changes and + to the depth of that one branch, instead of _every_ node. (Plus, we were already + incurring _this_ cost, since we already bubbled out changes.) +* Moved different tracker types out to their own files. +* Made tests test for TOO MANY events too. +* Standarized the source code formatting diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/LICENSE b/NodjsPartieArduino/node_modules/are-we-there-yet/LICENSE new file mode 100644 index 0000000..af45880 --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/LICENSE @@ -0,0 +1,5 @@ +Copyright (c) 2015, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/README.md b/NodjsPartieArduino/node_modules/are-we-there-yet/README.md new file mode 100644 index 0000000..7e2b42d --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/README.md @@ -0,0 +1,195 @@ +are-we-there-yet +---------------- + +Track complex hiearchies of asynchronous task completion statuses. This is +intended to give you a way of recording and reporting the progress of the big +recursive fan-out and gather type workflows that are so common in async. + +What you do with this completion data is up to you, but the most common use case is to +feed it to one of the many progress bar modules. + +Most progress bar modules include a rudamentary version of this, but my +needs were more complex. + +Usage +===== + +```javascript +var TrackerGroup = require("are-we-there-yet").TrackerGroup + +var top = new TrackerGroup("program") + +var single = top.newItem("one thing", 100) +single.completeWork(20) + +console.log(top.completed()) // 0.2 + +fs.stat("file", function(er, stat) { + if (er) throw er + var stream = top.newStream("file", stat.size) + console.log(top.completed()) // now 0.1 as single is 50% of the job and is 20% complete + // and 50% * 20% == 10% + fs.createReadStream("file").pipe(stream).on("data", function (chunk) { + // do stuff with chunk + }) + top.on("change", function (name) { + // called each time a chunk is read from "file" + // top.completed() will start at 0.1 and fill up to 0.6 as the file is read + }) +}) +``` + +Shared Methods +============== + +* var completed = tracker.completed() + +Implemented in: `Tracker`, `TrackerGroup`, `TrackerStream` + +Returns the ratio of completed work to work to be done. Range of 0 to 1. + +* tracker.finish() + +Implemented in: `Tracker`, `TrackerGroup` + +Marks the tracker as completed. With a TrackerGroup this marks all of its +components as completed. + +Marks all of the components of this tracker as finished, which in turn means +that `tracker.completed()` for this will now be 1. + +This will result in one or more `change` events being emitted. + +Events +====== + +All tracker objects emit `change` events with the following arguments: + +``` +function (name, completed, tracker) +``` + +`name` is the name of the tracker that originally emitted the event, +or if it didn't have one, the first containing tracker group that had one. + +`completed` is the percent complete (as returned by `tracker.completed()` method). + +`tracker` is the tracker object that you are listening for events on. + +TrackerGroup +============ + +* var tracker = new TrackerGroup(**name**) + + * **name** *(optional)* - The name of this tracker group, used in change + notifications if the component updating didn't have a name. Defaults to undefined. + +Creates a new empty tracker aggregation group. These are trackers whose +completion status is determined by the completion status of other trackers. + +* tracker.addUnit(**otherTracker**, **weight**) + + * **otherTracker** - Any of the other are-we-there-yet tracker objects + * **weight** *(optional)* - The weight to give the tracker, defaults to 1. + +Adds the **otherTracker** to this aggregation group. The weight determines +how long you expect this tracker to take to complete in proportion to other +units. So for instance, if you add one tracker with a weight of 1 and +another with a weight of 2, you're saying the second will take twice as long +to complete as the first. As such, the first will account for 33% of the +completion of this tracker and the second will account for the other 67%. + +Returns **otherTracker**. + +* var subGroup = tracker.newGroup(**name**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subGroup = tracker.addUnit(new TrackerGroup(name), weight) +``` + +* var subItem = tracker.newItem(**name**, **todo**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subItem = tracker.addUnit(new Tracker(name, todo), weight) +``` + +* var subStream = tracker.newStream(**name**, **todo**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subStream = tracker.addUnit(new TrackerStream(name, todo), weight) +``` + +* console.log( tracker.debug() ) + +Returns a tree showing the completion of this tracker group and all of its +children, including recursively entering all of the children. + +Tracker +======= + +* var tracker = new Tracker(**name**, **todo**) + + * **name** *(optional)* The name of this counter to report in change + events. Defaults to undefined. + * **todo** *(optional)* The amount of work todo (a number). Defaults to 0. + +Ordinarily these are constructed as a part of a tracker group (via +`newItem`). + +* var completed = tracker.completed() + +Returns the ratio of completed work to work to be done. Range of 0 to 1. If +total work to be done is 0 then it will return 0. + +* tracker.addWork(**todo**) + + * **todo** A number to add to the amount of work to be done. + +Increases the amount of work to be done, thus decreasing the completion +percentage. Triggers a `change` event. + +* tracker.completeWork(**completed**) + + * **completed** A number to add to the work complete + +Increase the amount of work complete, thus increasing the completion percentage. +Will never increase the work completed past the amount of work todo. That is, +percentages > 100% are not allowed. Triggers a `change` event. + +* tracker.finish() + +Marks this tracker as finished, tracker.completed() will now be 1. Triggers +a `change` event. + +TrackerStream +============= + +* var tracker = new TrackerStream(**name**, **size**, **options**) + + * **name** *(optional)* The name of this counter to report in change + events. Defaults to undefined. + * **size** *(optional)* The number of bytes being sent through this stream. + * **options** *(optional)* A hash of stream options + +The tracker stream object is a pass through stream that updates an internal +tracker object each time a block passes through. It's intended to track +downloads, file extraction and other related activities. You use it by piping +your data source into it and then using it as your data source. + +If your data has a length attribute then that's used as the amount of work +completed when the chunk is passed through. If it does not (eg, object +streams) then each chunk counts as completing 1 unit of work, so your size +should be the total number of objects being streamed. + +* tracker.addWork(**todo**) + + * **todo** Increase the expected overall size by **todo** bytes. + +Increases the amount of work to be done, thus decreasing the completion +percentage. Triggers a `change` event. diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/index.js b/NodjsPartieArduino/node_modules/are-we-there-yet/index.js new file mode 100644 index 0000000..57d8743 --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/index.js @@ -0,0 +1,4 @@ +'use strict' +exports.TrackerGroup = require('./tracker-group.js') +exports.Tracker = require('./tracker.js') +exports.TrackerStream = require('./tracker-stream.js') diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/package.json b/NodjsPartieArduino/node_modules/are-we-there-yet/package.json new file mode 100644 index 0000000..cbce30c --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/package.json @@ -0,0 +1,102 @@ +{ + "_args": [ + [ + { + "raw": "are-we-there-yet@~1.1.2", + "scope": null, + "escapedName": "are-we-there-yet", + "name": "are-we-there-yet", + "rawSpec": "~1.1.2", + "spec": ">=1.1.2 <1.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/npmlog" + ] + ], + "_from": "are-we-there-yet@>=1.1.2 <1.2.0", + "_id": "are-we-there-yet@1.1.5", + "_inCache": true, + "_location": "/are-we-there-yet", + "_nodeVersion": "9.3.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/are-we-there-yet_1.1.5_1527199680706_0.2972836172536619" + }, + "_npmUser": { + "name": "iarna", + "email": "me@re-becca.org" + }, + "_npmVersion": "6.1.0", + "_phantomChildren": {}, + "_requested": { + "raw": "are-we-there-yet@~1.1.2", + "scope": null, + "escapedName": "are-we-there-yet", + "name": "are-we-there-yet", + "rawSpec": "~1.1.2", + "spec": ">=1.1.2 <1.2.0", + "type": "range" + }, + "_requiredBy": [ + "/npmlog" + ], + "_resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "_shasum": "4b35c2944f062a8bfcda66410760350fe9ddfc21", + "_shrinkwrap": null, + "_spec": "are-we-there-yet@~1.1.2", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/npmlog", + "author": { + "name": "Rebecca Turner", + "url": "http://re-becca.org" + }, + "bugs": { + "url": "https://github.com/iarna/are-we-there-yet/issues" + }, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + }, + "description": "Keep track of the overall completion of many disparate processes", + "devDependencies": { + "standard": "^11.0.1", + "tap": "^12.0.1" + }, + "directories": {}, + "dist": { + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "shasum": "4b35c2944f062a8bfcda66410760350fe9ddfc21", + "tarball": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "fileCount": 9, + "unpackedSize": 14650, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBzfBCRA9TVsSAnZWagAAtR4QAJuFZqCyX+bkCwSGz/DJ\nAXAnaUYip2Hd8sb2u28miiJwM6aE/yuu126iXLIKj4ov+LEVyiFSXNtkRc8H\nSgDvyh5WZZ8m06o78GA/0FGOxDuJHbBtTPvIFkVM9Wud3NuJ8M08mlRnZGMo\nyLzjUEOejLt5o/JjQfiftVsN9cUXt0UkfP9ZkDuqg8HrVC8k1GS0qte15sKm\nISytjUl4atLw9d6oBsWCwc7xyUSv6wSER+Fqf5vo/4+IIeOdcWFmTGrtvWdo\n8KtHUik4bmo5EE3Z3XlFfEadOd/HSkUfizFOxRaauFWpJMF24+zt1wkrZ26R\nZWc6hyIg/1xrYKgJ0uOuBhPMxcOaUZNO5h3BeQ5J/Rdzg4rAZXSA26GVe+zL\n7sZbWASLSyjquh+jiZ94ztYdS8FhfuCa12TfoHBLOu9yp3xkFHrD89FHg915\nltEo3hERMxHyQdL7Fx/V7ewNH0Y7jL0PSQyEg5Fq1F7YS2AYskAI86FCCm41\nZXP1MveV1c39oqJxpwXhr22z5ga5GDxwVr4cNT0q6hOzMJ0Yigrht+YQZLFc\n0mG6h177j8U+6Q68wK69NcGEiosZCnmMRihGvJxZ6Keq9YvGEZNcnUGdfSPJ\nxu7tGhwr78HDOPTvLzCE9H4nBsBNTMMqJkMAcqjN3u90KGPIMyl/K0S3rfnv\nIiix\r\n=Mjkz\r\n-----END PGP SIGNATURE-----\r\n" + }, + "files": [ + "index.js", + "tracker-base.js", + "tracker-group.js", + "tracker-stream.js", + "tracker.js", + "CHANGES.md" + ], + "gitHead": "b4d023b8b754b9d2d540c9db21cc7edf2962ea63", + "homepage": "https://github.com/iarna/are-we-there-yet", + "license": "ISC", + "main": "index.js", + "maintainers": [ + { + "name": "iarna", + "email": "me@re-becca.org" + } + ], + "name": "are-we-there-yet", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/iarna/are-we-there-yet.git" + }, + "scripts": { + "test": "standard && tap test/*.js" + }, + "version": "1.1.5" +} diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-base.js b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-base.js new file mode 100644 index 0000000..6f43687 --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-base.js @@ -0,0 +1,11 @@ +'use strict' +var EventEmitter = require('events').EventEmitter +var util = require('util') + +var trackerId = 0 +var TrackerBase = module.exports = function (name) { + EventEmitter.call(this) + this.id = ++trackerId + this.name = name +} +util.inherits(TrackerBase, EventEmitter) diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-group.js b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-group.js new file mode 100644 index 0000000..9759e12 --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-group.js @@ -0,0 +1,107 @@ +'use strict' +var util = require('util') +var TrackerBase = require('./tracker-base.js') +var Tracker = require('./tracker.js') +var TrackerStream = require('./tracker-stream.js') + +var TrackerGroup = module.exports = function (name) { + TrackerBase.call(this, name) + this.parentGroup = null + this.trackers = [] + this.completion = {} + this.weight = {} + this.totalWeight = 0 + this.finished = false + this.bubbleChange = bubbleChange(this) +} +util.inherits(TrackerGroup, TrackerBase) + +function bubbleChange (trackerGroup) { + return function (name, completed, tracker) { + trackerGroup.completion[tracker.id] = completed + if (trackerGroup.finished) return + trackerGroup.emit('change', name || trackerGroup.name, trackerGroup.completed(), trackerGroup) + } +} + +TrackerGroup.prototype.nameInTree = function () { + var names = [] + var from = this + while (from) { + names.unshift(from.name) + from = from.parentGroup + } + return names.join('/') +} + +TrackerGroup.prototype.addUnit = function (unit, weight) { + if (unit.addUnit) { + var toTest = this + while (toTest) { + if (unit === toTest) { + throw new Error( + 'Attempted to add tracker group ' + + unit.name + ' to tree that already includes it ' + + this.nameInTree(this)) + } + toTest = toTest.parentGroup + } + unit.parentGroup = this + } + this.weight[unit.id] = weight || 1 + this.totalWeight += this.weight[unit.id] + this.trackers.push(unit) + this.completion[unit.id] = unit.completed() + unit.on('change', this.bubbleChange) + if (!this.finished) this.emit('change', unit.name, this.completion[unit.id], unit) + return unit +} + +TrackerGroup.prototype.completed = function () { + if (this.trackers.length === 0) return 0 + var valPerWeight = 1 / this.totalWeight + var completed = 0 + for (var ii = 0; ii < this.trackers.length; ii++) { + var trackerId = this.trackers[ii].id + completed += valPerWeight * this.weight[trackerId] * this.completion[trackerId] + } + return completed +} + +TrackerGroup.prototype.newGroup = function (name, weight) { + return this.addUnit(new TrackerGroup(name), weight) +} + +TrackerGroup.prototype.newItem = function (name, todo, weight) { + return this.addUnit(new Tracker(name, todo), weight) +} + +TrackerGroup.prototype.newStream = function (name, todo, weight) { + return this.addUnit(new TrackerStream(name, todo), weight) +} + +TrackerGroup.prototype.finish = function () { + this.finished = true + if (!this.trackers.length) this.addUnit(new Tracker(), 1, true) + for (var ii = 0; ii < this.trackers.length; ii++) { + var tracker = this.trackers[ii] + tracker.finish() + tracker.removeListener('change', this.bubbleChange) + } + this.emit('change', this.name, 1, this) +} + +var buffer = ' ' +TrackerGroup.prototype.debug = function (depth) { + depth = depth || 0 + var indent = depth ? buffer.substr(0, depth) : '' + var output = indent + (this.name || 'top') + ': ' + this.completed() + '\n' + this.trackers.forEach(function (tracker) { + if (tracker instanceof TrackerGroup) { + output += tracker.debug(depth + 1) + } else { + output += indent + ' ' + tracker.name + ': ' + tracker.completed() + '\n' + } + }) + return output +} diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-stream.js b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-stream.js new file mode 100644 index 0000000..e1cf850 --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker-stream.js @@ -0,0 +1,36 @@ +'use strict' +var util = require('util') +var stream = require('readable-stream') +var delegate = require('delegates') +var Tracker = require('./tracker.js') + +var TrackerStream = module.exports = function (name, size, options) { + stream.Transform.call(this, options) + this.tracker = new Tracker(name, size) + this.name = name + this.id = this.tracker.id + this.tracker.on('change', delegateChange(this)) +} +util.inherits(TrackerStream, stream.Transform) + +function delegateChange (trackerStream) { + return function (name, completion, tracker) { + trackerStream.emit('change', name, completion, trackerStream) + } +} + +TrackerStream.prototype._transform = function (data, encoding, cb) { + this.tracker.completeWork(data.length ? data.length : 1) + this.push(data) + cb() +} + +TrackerStream.prototype._flush = function (cb) { + this.tracker.finish() + cb() +} + +delegate(TrackerStream.prototype, 'tracker') + .method('completed') + .method('addWork') + .method('finish') diff --git a/NodjsPartieArduino/node_modules/are-we-there-yet/tracker.js b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker.js new file mode 100644 index 0000000..68c2339 --- /dev/null +++ b/NodjsPartieArduino/node_modules/are-we-there-yet/tracker.js @@ -0,0 +1,30 @@ +'use strict' +var util = require('util') +var TrackerBase = require('./tracker-base.js') + +var Tracker = module.exports = function (name, todo) { + TrackerBase.call(this, name) + this.workDone = 0 + this.workTodo = todo || 0 +} +util.inherits(Tracker, TrackerBase) + +Tracker.prototype.completed = function () { + return this.workTodo === 0 ? 0 : this.workDone / this.workTodo +} + +Tracker.prototype.addWork = function (work) { + this.workTodo += work + this.emit('change', this.name, this.completed(), this) +} + +Tracker.prototype.completeWork = function (work) { + this.workDone += work + if (this.workDone > this.workTodo) this.workDone = this.workTodo + this.emit('change', this.name, this.completed(), this) +} + +Tracker.prototype.finish = function () { + this.workTodo = this.workDone = 1 + this.emit('change', this.name, 1, this) +} diff --git a/NodjsPartieArduino/node_modules/arr-flatten/LICENSE b/NodjsPartieArduino/node_modules/arr-flatten/LICENSE new file mode 100644 index 0000000..3f2eca1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-flatten/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/arr-flatten/README.md b/NodjsPartieArduino/node_modules/arr-flatten/README.md new file mode 100644 index 0000000..7dc7a97 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-flatten/README.md @@ -0,0 +1,86 @@ +# arr-flatten [![NPM version](https://img.shields.io/npm/v/arr-flatten.svg?style=flat)](https://www.npmjs.com/package/arr-flatten) [![NPM monthly downloads](https://img.shields.io/npm/dm/arr-flatten.svg?style=flat)](https://npmjs.org/package/arr-flatten) [![NPM total downloads](https://img.shields.io/npm/dt/arr-flatten.svg?style=flat)](https://npmjs.org/package/arr-flatten) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/arr-flatten.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/arr-flatten) [![Windows Build Status](https://img.shields.io/appveyor/ci/jonschlinkert/arr-flatten.svg?style=flat&label=AppVeyor)](https://ci.appveyor.com/project/jonschlinkert/arr-flatten) + +> Recursively flatten an array or arrays. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save arr-flatten +``` + +## Install + +Install with [bower](https://bower.io/) + +```sh +$ bower install arr-flatten --save +``` + +## Usage + +```js +var flatten = require('arr-flatten'); + +flatten(['a', ['b', ['c']], 'd', ['e']]); +//=> ['a', 'b', 'c', 'd', 'e'] +``` + +## Why another flatten utility? + +I wanted the fastest implementation I could find, with implementation choices that should work for 95% of use cases, but no cruft to cover the other 5%. + +## About + +### Related projects + +* [arr-filter](https://www.npmjs.com/package/arr-filter): Faster alternative to javascript's native filter method. | [homepage](https://github.com/jonschlinkert/arr-filter "Faster alternative to javascript's native filter method.") +* [arr-union](https://www.npmjs.com/package/arr-union): Combines a list of arrays, returning a single array with unique values, using strict equality… [more](https://github.com/jonschlinkert/arr-union) | [homepage](https://github.com/jonschlinkert/arr-union "Combines a list of arrays, returning a single array with unique values, using strict equality for comparisons.") +* [array-each](https://www.npmjs.com/package/array-each): Loop over each item in an array and call the given function on every element. | [homepage](https://github.com/jonschlinkert/array-each "Loop over each item in an array and call the given function on every element.") +* [array-unique](https://www.npmjs.com/package/array-unique): Remove duplicate values from an array. Fastest ES5 implementation. | [homepage](https://github.com/jonschlinkert/array-unique "Remove duplicate values from an array. Fastest ES5 implementation.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 20 | [jonschlinkert](https://github.com/jonschlinkert) | +| 1 | [lukeed](https://github.com/lukeed) | + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on July 05, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/arr-flatten/index.js b/NodjsPartieArduino/node_modules/arr-flatten/index.js new file mode 100644 index 0000000..0cb4ea4 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-flatten/index.js @@ -0,0 +1,22 @@ +/*! + * arr-flatten + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */ + +'use strict'; + +module.exports = function (arr) { + return flat(arr, []); +}; + +function flat(arr, res) { + var i = 0, cur; + var len = arr.length; + for (; i < len; i++) { + cur = arr[i]; + Array.isArray(cur) ? flat(cur, res) : res.push(cur); + } + return res; +} diff --git a/NodjsPartieArduino/node_modules/arr-flatten/package.json b/NodjsPartieArduino/node_modules/arr-flatten/package.json new file mode 100644 index 0000000..cb50dfd --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-flatten/package.json @@ -0,0 +1,151 @@ +{ + "_args": [ + [ + { + "raw": "arr-flatten@^1.1.0", + "scope": null, + "escapedName": "arr-flatten", + "name": "arr-flatten", + "rawSpec": "^1.1.0", + "spec": ">=1.1.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices" + ] + ], + "_from": "arr-flatten@>=1.1.0 <2.0.0", + "_id": "arr-flatten@1.1.0", + "_inCache": true, + "_location": "/arr-flatten", + "_nodeVersion": "7.7.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/arr-flatten-1.1.0.tgz_1499280630530_0.4138362631201744" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "5.0.4", + "_phantomChildren": {}, + "_requested": { + "raw": "arr-flatten@^1.1.0", + "scope": null, + "escapedName": "arr-flatten", + "name": "arr-flatten", + "rawSpec": "^1.1.0", + "spec": ">=1.1.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prompt-choices", + "/readline-utils" + ], + "_resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "_shasum": "36048bbff4e7b47e136644316c99669ea5ae91f1", + "_shrinkwrap": null, + "_spec": "arr-flatten@^1.1.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/arr-flatten/issues" + }, + "contributors": [ + { + "name": "Jon Schlinkert", + "url": "http://twitter.com/jonschlinkert" + }, + { + "name": "Luke Edwards", + "url": "https://lukeed.com" + } + ], + "dependencies": {}, + "description": "Recursively flatten an array or arrays.", + "devDependencies": { + "ansi-bold": "^0.1.1", + "array-flatten": "^2.1.1", + "array-slice": "^1.0.0", + "benchmarked": "^1.0.0", + "compute-flatten": "^1.0.0", + "flatit": "^1.1.1", + "flatten": "^1.0.2", + "flatten-array": "^1.0.0", + "glob": "^7.1.1", + "gulp-format-md": "^0.1.12", + "just-flatten-it": "^1.1.23", + "lodash.flattendeep": "^4.4.0", + "m_flattened": "^1.0.1", + "mocha": "^3.2.0", + "utils-flatten": "^1.0.0", + "write": "^0.3.3" + }, + "directories": {}, + "dist": { + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "shasum": "36048bbff4e7b47e136644316c99669ea5ae91f1", + "tarball": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "76a1ae28b03fdb1cbe5d49fa521bc4807b9f94d3", + "homepage": "https://github.com/jonschlinkert/arr-flatten", + "keywords": [ + "arr", + "array", + "elements", + "flat", + "flatten", + "nested", + "recurse", + "recursive", + "recursively" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "arr-flatten", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/arr-flatten.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "related": { + "list": [ + "arr-filter", + "arr-union", + "array-each", + "array-unique" + ] + }, + "lint": { + "reflinks": true + } + }, + "version": "1.1.0" +} diff --git a/NodjsPartieArduino/node_modules/arr-swap/LICENSE b/NodjsPartieArduino/node_modules/arr-swap/LICENSE new file mode 100644 index 0000000..9a1c856 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2017, Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/arr-swap/README.md b/NodjsPartieArduino/node_modules/arr-swap/README.md new file mode 100644 index 0000000..2cf8509 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/README.md @@ -0,0 +1,85 @@ +# arr-swap [![NPM version](https://img.shields.io/npm/v/arr-swap.svg?style=flat)](https://www.npmjs.com/package/arr-swap) [![NPM monthly downloads](https://img.shields.io/npm/dm/arr-swap.svg?style=flat)](https://npmjs.org/package/arr-swap) [![NPM total downloads](https://img.shields.io/npm/dt/arr-swap.svg?style=flat)](https://npmjs.org/package/arr-swap) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/arr-swap.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/arr-swap) + +> Swap two items in an array. Does not modify the Array prototype. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save arr-swap +``` + +## Usage + +```js +var swap = require('arr-swap'); +``` + +**By index** + +Swap by array index: + +```js +var arr = ['a', 'b', 'c']; +console.log(swap(arr, 0, 1)); +//=> ['b', 'a', 'c']; +``` + +**By element** + +Swap by array elements: + +```js +var arr = ['a', 'b', 'c']; +console.log(swap(arr, 'a', 'b')); +//=> ['b', 'a', 'c']; +``` + +## About + +### Related projects + +* [arr-flatten](https://www.npmjs.com/package/arr-flatten): Recursively flatten an array or arrays. | [homepage](https://github.com/jonschlinkert/arr-flatten "Recursively flatten an array or arrays.") +* [arr-union](https://www.npmjs.com/package/arr-union): Combines a list of arrays, returning a single array with unique values, using strict equality… [more](https://github.com/jonschlinkert/arr-union) | [homepage](https://github.com/jonschlinkert/arr-union "Combines a list of arrays, returning a single array with unique values, using strict equality for comparisons.") +* [array-unique](https://www.npmjs.com/package/array-unique): Remove duplicate values from an array. Fastest ES5 implementation. | [homepage](https://github.com/jonschlinkert/array-unique "Remove duplicate values from an array. Fastest ES5 implementation.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +Please read the [contributing guide](.github/contributing.md) for advice on opening issues, pull requests, and coding standards. + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on May 25, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/arr-swap/index.js b/NodjsPartieArduino/node_modules/arr-swap/index.js new file mode 100644 index 0000000..ff5d545 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/index.js @@ -0,0 +1,17 @@ +'use strict'; + +var isNumber = require('is-number'); + +module.exports = function(arr, a, b) { + if (!Array.isArray(arr)) { + throw new TypeError('expected an array'); + } + + var idxa = isNumber(a) ? a : arr.indexOf(a); + var idxb = isNumber(b) ? b : arr.indexOf(b); + var vala = arr[idxa]; + var valb = arr[idxb]; + arr[idxa] = valb; + arr[idxb] = vala; + return arr; +}; diff --git a/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/LICENSE b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/LICENSE new file mode 100644 index 0000000..842218c --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2016, Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/README.md b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/README.md new file mode 100644 index 0000000..281165d --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/README.md @@ -0,0 +1,115 @@ +# is-number [![NPM version](https://img.shields.io/npm/v/is-number.svg?style=flat)](https://www.npmjs.com/package/is-number) [![NPM downloads](https://img.shields.io/npm/dm/is-number.svg?style=flat)](https://npmjs.org/package/is-number) [![Build Status](https://img.shields.io/travis/jonschlinkert/is-number.svg?style=flat)](https://travis-ci.org/jonschlinkert/is-number) + +> Returns true if the value is a number. comprehensive tests. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save is-number +``` + +## Usage + +To understand some of the rationale behind the decisions made in this library (and to learn about some oddities of number evaluation in JavaScript), [see this gist](https://gist.github.com/jonschlinkert/e30c70c713da325d0e81). + +```js +var isNumber = require('is-number'); +``` + +### true + +See the [tests](./test.js) for more examples. + +```js +isNumber(5e3) //=> 'true' +isNumber(0xff) //=> 'true' +isNumber(-1.1) //=> 'true' +isNumber(0) //=> 'true' +isNumber(1) //=> 'true' +isNumber(1.1) //=> 'true' +isNumber(10) //=> 'true' +isNumber(10.10) //=> 'true' +isNumber(100) //=> 'true' +isNumber('-1.1') //=> 'true' +isNumber('0') //=> 'true' +isNumber('012') //=> 'true' +isNumber('0xff') //=> 'true' +isNumber('1') //=> 'true' +isNumber('1.1') //=> 'true' +isNumber('10') //=> 'true' +isNumber('10.10') //=> 'true' +isNumber('100') //=> 'true' +isNumber('5e3') //=> 'true' +isNumber(parseInt('012')) //=> 'true' +isNumber(parseFloat('012')) //=> 'true' +``` + +### False + +See the [tests](./test.js) for more examples. + +```js +isNumber('foo') //=> 'false' +isNumber([1]) //=> 'false' +isNumber([]) //=> 'false' +isNumber(function () {}) //=> 'false' +isNumber(Infinity) //=> 'false' +isNumber(NaN) //=> 'false' +isNumber(new Array('abc')) //=> 'false' +isNumber(new Array(2)) //=> 'false' +isNumber(new Buffer('abc')) //=> 'false' +isNumber(null) //=> 'false' +isNumber(undefined) //=> 'false' +isNumber({abc: 'abc'}) //=> 'false' +``` + +## About + +### Related projects + +* [even](https://www.npmjs.com/package/even): Get the even numbered items from an array. | [homepage](https://github.com/jonschlinkert/even "Get the even numbered items from an array.") +* [is-even](https://www.npmjs.com/package/is-even): Return true if the given number is even. | [homepage](https://github.com/jonschlinkert/is-even "Return true if the given number is even.") +* [is-odd](https://www.npmjs.com/package/is-odd): Returns true if the given number is odd. | [homepage](https://github.com/jonschlinkert/is-odd "Returns true if the given number is odd.") +* [is-primitive](https://www.npmjs.com/package/is-primitive): Returns `true` if the value is a primitive. | [homepage](https://github.com/jonschlinkert/is-primitive "Returns `true` if the value is a primitive. ") +* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.") +* [odd](https://www.npmjs.com/package/odd): Get the odd numbered items from an array. | [homepage](https://github.com/jonschlinkert/odd "Get the odd numbered items from an array.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Building docs + +_(This document was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme) (a [verb](https://github.com/verbose/verb) generator), please don't edit the readme directly. Any changes to the readme must be made in [.verb.md](.verb.md).)_ + +To generate the readme and API documentation with [verb](https://github.com/verbose/verb): + +```sh +$ npm install -g verb verb-generate-readme && verb +``` + +### Running tests + +Install dev dependencies: + +```sh +$ npm install -d && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +### License + +Copyright © 2016, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT license](https://github.com/jonschlinkert/is-number/blob/master/LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.1.30, on September 10, 2016._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/index.js b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/index.js new file mode 100644 index 0000000..7a2a45b --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/index.js @@ -0,0 +1,22 @@ +/*! + * is-number + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +var typeOf = require('kind-of'); + +module.exports = function isNumber(num) { + var type = typeOf(num); + + if (type === 'string') { + if (!num.trim()) return false; + } else if (type !== 'number') { + return false; + } + + return (num - num + 1) >= 0; +}; diff --git a/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/package.json b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/package.json new file mode 100644 index 0000000..041c519 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/node_modules/is-number/package.json @@ -0,0 +1,160 @@ +{ + "_args": [ + [ + { + "raw": "is-number@^3.0.0", + "scope": null, + "escapedName": "is-number", + "name": "is-number", + "rawSpec": "^3.0.0", + "spec": ">=3.0.0 <4.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/arr-swap" + ] + ], + "_from": "is-number@>=3.0.0 <4.0.0", + "_id": "is-number@3.0.0", + "_inCache": true, + "_location": "/arr-swap/is-number", + "_nodeVersion": "6.3.0", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/is-number-3.0.0.tgz_1473555089490_0.21388969756662846" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "3.10.3", + "_phantomChildren": {}, + "_requested": { + "raw": "is-number@^3.0.0", + "scope": null, + "escapedName": "is-number", + "name": "is-number", + "rawSpec": "^3.0.0", + "spec": ">=3.0.0 <4.0.0", + "type": "range" + }, + "_requiredBy": [ + "/arr-swap" + ], + "_resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "_shasum": "24fd6201a4782cf50561c810276afc7d12d71195", + "_shrinkwrap": null, + "_spec": "is-number@^3.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/arr-swap", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/is-number/issues" + }, + "contributors": [ + { + "name": "Charlike Mike Reagent", + "url": "http://www.tunnckocore.tk" + }, + { + "name": "Jon Schlinkert", + "email": "jon.schlinkert@sellside.com", + "url": "http://twitter.com/jonschlinkert" + } + ], + "dependencies": { + "kind-of": "^3.0.2" + }, + "description": "Returns true if the value is a number. comprehensive tests.", + "devDependencies": { + "benchmarked": "^0.2.5", + "chalk": "^1.1.3", + "gulp-format-md": "^0.1.10", + "mocha": "^3.0.2" + }, + "directories": {}, + "dist": { + "shasum": "24fd6201a4782cf50561c810276afc7d12d71195", + "tarball": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "af885e2e890b9ef0875edd2b117305119ee5bdc5", + "homepage": "https://github.com/jonschlinkert/is-number", + "keywords": [ + "check", + "coerce", + "coercion", + "integer", + "is", + "is-nan", + "is-num", + "is-number", + "istype", + "kind", + "math", + "nan", + "num", + "number", + "numeric", + "test", + "type", + "typeof", + "value" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + { + "name": "doowb", + "email": "brian.woodward@gmail.com" + } + ], + "name": "is-number", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/is-number.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "related": { + "list": [ + "even", + "is-even", + "is-odd", + "is-primitive", + "kind-of", + "odd" + ] + }, + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "reflinks": [ + "verb", + "verb-generate-readme" + ] + }, + "version": "3.0.0" +} diff --git a/NodjsPartieArduino/node_modules/arr-swap/package.json b/NodjsPartieArduino/node_modules/arr-swap/package.json new file mode 100644 index 0000000..2ab25e1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arr-swap/package.json @@ -0,0 +1,122 @@ +{ + "_args": [ + [ + { + "raw": "arr-swap@^1.0.1", + "scope": null, + "escapedName": "arr-swap", + "name": "arr-swap", + "rawSpec": "^1.0.1", + "spec": ">=1.0.1 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices" + ] + ], + "_from": "arr-swap@>=1.0.1 <2.0.0", + "_id": "arr-swap@1.0.1", + "_inCache": true, + "_location": "/arr-swap", + "_nodeVersion": "7.7.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/arr-swap-1.0.1.tgz_1495764656459_0.23885946325026453" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "4.6.1", + "_phantomChildren": { + "kind-of": "3.2.2" + }, + "_requested": { + "raw": "arr-swap@^1.0.1", + "scope": null, + "escapedName": "arr-swap", + "name": "arr-swap", + "rawSpec": "^1.0.1", + "spec": ">=1.0.1 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prompt-choices" + ], + "_resolved": "https://registry.npmjs.org/arr-swap/-/arr-swap-1.0.1.tgz", + "_shasum": "147590ed65fc815bc07fef0997c2e5823d643534", + "_shrinkwrap": null, + "_spec": "arr-swap@^1.0.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/arr-swap/issues" + }, + "dependencies": { + "is-number": "^3.0.0" + }, + "description": "Swap two items in an array. Does not modify the Array prototype.", + "devDependencies": { + "gulp-format-md": "^0.1.12", + "mocha": "^3.4.2" + }, + "directories": {}, + "dist": { + "shasum": "147590ed65fc815bc07fef0997c2e5823d643534", + "tarball": "https://registry.npmjs.org/arr-swap/-/arr-swap-1.0.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "b584f561681cb58839e55c8148faa43f23eb9e00", + "homepage": "https://github.com/jonschlinkert/arr-swap", + "keywords": [ + "arr", + "array", + "swap" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "arr-swap", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/arr-swap.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "related": { + "list": [ + "arr-flatten", + "arr-union", + "array-unique" + ] + }, + "lint": { + "reflinks": true + } + }, + "version": "1.0.1" +} diff --git a/NodjsPartieArduino/node_modules/array-flatten/LICENSE b/NodjsPartieArduino/node_modules/array-flatten/LICENSE new file mode 100644 index 0000000..983fbe8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/array-flatten/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/array-flatten/README.md b/NodjsPartieArduino/node_modules/array-flatten/README.md new file mode 100644 index 0000000..91fa5b6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/array-flatten/README.md @@ -0,0 +1,43 @@ +# Array Flatten + +[![NPM version][npm-image]][npm-url] +[![NPM downloads][downloads-image]][downloads-url] +[![Build status][travis-image]][travis-url] +[![Test coverage][coveralls-image]][coveralls-url] + +> Flatten an array of nested arrays into a single flat array. Accepts an optional depth. + +## Installation + +``` +npm install array-flatten --save +``` + +## Usage + +```javascript +var flatten = require('array-flatten') + +flatten([1, [2, [3, [4, [5], 6], 7], 8], 9]) +//=> [1, 2, 3, 4, 5, 6, 7, 8, 9] + +flatten([1, [2, [3, [4, [5], 6], 7], 8], 9], 2) +//=> [1, 2, 3, [4, [5], 6], 7, 8, 9] + +(function () { + flatten(arguments) //=> [1, 2, 3] +})(1, [2, 3]) +``` + +## License + +MIT + +[npm-image]: https://img.shields.io/npm/v/array-flatten.svg?style=flat +[npm-url]: https://npmjs.org/package/array-flatten +[downloads-image]: https://img.shields.io/npm/dm/array-flatten.svg?style=flat +[downloads-url]: https://npmjs.org/package/array-flatten +[travis-image]: https://img.shields.io/travis/blakeembrey/array-flatten.svg?style=flat +[travis-url]: https://travis-ci.org/blakeembrey/array-flatten +[coveralls-image]: https://img.shields.io/coveralls/blakeembrey/array-flatten.svg?style=flat +[coveralls-url]: https://coveralls.io/r/blakeembrey/array-flatten?branch=master diff --git a/NodjsPartieArduino/node_modules/array-flatten/array-flatten.js b/NodjsPartieArduino/node_modules/array-flatten/array-flatten.js new file mode 100644 index 0000000..089117b --- /dev/null +++ b/NodjsPartieArduino/node_modules/array-flatten/array-flatten.js @@ -0,0 +1,64 @@ +'use strict' + +/** + * Expose `arrayFlatten`. + */ +module.exports = arrayFlatten + +/** + * Recursive flatten function with depth. + * + * @param {Array} array + * @param {Array} result + * @param {Number} depth + * @return {Array} + */ +function flattenWithDepth (array, result, depth) { + for (var i = 0; i < array.length; i++) { + var value = array[i] + + if (depth > 0 && Array.isArray(value)) { + flattenWithDepth(value, result, depth - 1) + } else { + result.push(value) + } + } + + return result +} + +/** + * Recursive flatten function. Omitting depth is slightly faster. + * + * @param {Array} array + * @param {Array} result + * @return {Array} + */ +function flattenForever (array, result) { + for (var i = 0; i < array.length; i++) { + var value = array[i] + + if (Array.isArray(value)) { + flattenForever(value, result) + } else { + result.push(value) + } + } + + return result +} + +/** + * Flatten an array, with the ability to define a depth. + * + * @param {Array} array + * @param {Number} depth + * @return {Array} + */ +function arrayFlatten (array, depth) { + if (depth == null) { + return flattenForever(array, []) + } + + return flattenWithDepth(array, [], depth) +} diff --git a/NodjsPartieArduino/node_modules/array-flatten/package.json b/NodjsPartieArduino/node_modules/array-flatten/package.json new file mode 100644 index 0000000..0f09fc8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/array-flatten/package.json @@ -0,0 +1,96 @@ +{ + "_args": [ + [ + { + "raw": "array-flatten@1.1.1", + "scope": null, + "escapedName": "array-flatten", + "name": "array-flatten", + "rawSpec": "1.1.1", + "spec": "1.1.1", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "array-flatten@1.1.1", + "_id": "array-flatten@1.1.1", + "_inCache": true, + "_location": "/array-flatten", + "_nodeVersion": "2.3.3", + "_npmUser": { + "name": "blakeembrey", + "email": "hello@blakeembrey.com" + }, + "_npmVersion": "2.11.3", + "_phantomChildren": {}, + "_requested": { + "raw": "array-flatten@1.1.1", + "scope": null, + "escapedName": "array-flatten", + "name": "array-flatten", + "rawSpec": "1.1.1", + "spec": "1.1.1", + "type": "version" + }, + "_requiredBy": [ + "/express" + ], + "_resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "_shasum": "9a5f699051b1e7073328f2a008968b64ea2955d2", + "_shrinkwrap": null, + "_spec": "array-flatten@1.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "author": { + "name": "Blake Embrey", + "email": "hello@blakeembrey.com", + "url": "http://blakeembrey.me" + }, + "bugs": { + "url": "https://github.com/blakeembrey/array-flatten/issues" + }, + "dependencies": {}, + "description": "Flatten an array of nested arrays into a single flat array", + "devDependencies": { + "istanbul": "^0.3.13", + "mocha": "^2.2.4", + "pre-commit": "^1.0.7", + "standard": "^3.7.3" + }, + "directories": {}, + "dist": { + "shasum": "9a5f699051b1e7073328f2a008968b64ea2955d2", + "tarball": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz" + }, + "files": [ + "array-flatten.js", + "LICENSE" + ], + "gitHead": "1963a9189229d408e1e8f585a00c8be9edbd1803", + "homepage": "https://github.com/blakeembrey/array-flatten", + "keywords": [ + "array", + "flatten", + "arguments", + "depth" + ], + "license": "MIT", + "main": "array-flatten.js", + "maintainers": [ + { + "name": "blakeembrey", + "email": "hello@blakeembrey.com" + } + ], + "name": "array-flatten", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/blakeembrey/array-flatten.git" + }, + "scripts": { + "test": "istanbul cover _mocha -- -R spec" + }, + "version": "1.1.1" +} diff --git a/NodjsPartieArduino/node_modules/arraybuffer.slice/LICENCE b/NodjsPartieArduino/node_modules/arraybuffer.slice/LICENCE new file mode 100644 index 0000000..35fa375 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arraybuffer.slice/LICENCE @@ -0,0 +1,18 @@ +Copyright (C) 2013 Rase- + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/arraybuffer.slice/Makefile b/NodjsPartieArduino/node_modules/arraybuffer.slice/Makefile new file mode 100644 index 0000000..849887f --- /dev/null +++ b/NodjsPartieArduino/node_modules/arraybuffer.slice/Makefile @@ -0,0 +1,8 @@ + +REPORTER = dot + +test: + @./node_modules/.bin/mocha \ + --reporter $(REPORTER) + +.PHONY: test diff --git a/NodjsPartieArduino/node_modules/arraybuffer.slice/README.md b/NodjsPartieArduino/node_modules/arraybuffer.slice/README.md new file mode 100644 index 0000000..15e465e --- /dev/null +++ b/NodjsPartieArduino/node_modules/arraybuffer.slice/README.md @@ -0,0 +1,17 @@ +# How to +```javascript +var sliceBuffer = require('arraybuffer.slice'); +var ab = (new Int8Array(5)).buffer; +var sliced = sliceBuffer(ab, 1, 3); +sliced = sliceBuffer(ab, 1); +``` + +# Licence (MIT) +Copyright (C) 2013 Rase- + + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/arraybuffer.slice/index.js b/NodjsPartieArduino/node_modules/arraybuffer.slice/index.js new file mode 100644 index 0000000..11ac556 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arraybuffer.slice/index.js @@ -0,0 +1,29 @@ +/** + * An abstraction for slicing an arraybuffer even when + * ArrayBuffer.prototype.slice is not supported + * + * @api public + */ + +module.exports = function(arraybuffer, start, end) { + var bytes = arraybuffer.byteLength; + start = start || 0; + end = end || bytes; + + if (arraybuffer.slice) { return arraybuffer.slice(start, end); } + + if (start < 0) { start += bytes; } + if (end < 0) { end += bytes; } + if (end > bytes) { end = bytes; } + + if (start >= bytes || start >= end || bytes === 0) { + return new ArrayBuffer(0); + } + + var abv = new Uint8Array(arraybuffer); + var result = new Uint8Array(end - start); + for (var i = start, ii = 0; i < end; i++, ii++) { + result[ii] = abv[i]; + } + return result.buffer; +}; diff --git a/NodjsPartieArduino/node_modules/arraybuffer.slice/package.json b/NodjsPartieArduino/node_modules/arraybuffer.slice/package.json new file mode 100644 index 0000000..6c3ff98 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arraybuffer.slice/package.json @@ -0,0 +1,80 @@ +{ + "_args": [ + [ + { + "raw": "arraybuffer.slice@~0.0.7", + "scope": null, + "escapedName": "arraybuffer.slice", + "name": "arraybuffer.slice", + "rawSpec": "~0.0.7", + "spec": ">=0.0.7 <0.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser" + ] + ], + "_from": "arraybuffer.slice@>=0.0.7 <0.1.0", + "_id": "arraybuffer.slice@0.0.7", + "_inCache": true, + "_location": "/arraybuffer.slice", + "_nodeVersion": "8.4.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/arraybuffer.slice-0.0.7.tgz_1503998406760_0.431125596864149" + }, + "_npmUser": { + "name": "rase-", + "email": "tonykovanen@hotmail.com" + }, + "_npmVersion": "5.3.0", + "_phantomChildren": {}, + "_requested": { + "raw": "arraybuffer.slice@~0.0.7", + "scope": null, + "escapedName": "arraybuffer.slice", + "name": "arraybuffer.slice", + "rawSpec": "~0.0.7", + "spec": ">=0.0.7 <0.1.0", + "type": "range" + }, + "_requiredBy": [ + "/engine.io-parser" + ], + "_resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "_shasum": "3bbc4275dd584cc1b10809b89d4e8b63a69e7675", + "_shrinkwrap": null, + "_spec": "arraybuffer.slice@~0.0.7", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser", + "bugs": { + "url": "https://github.com/rase-/arraybuffer.slice/issues" + }, + "dependencies": {}, + "description": "Exports a function for slicing ArrayBuffers (no polyfilling)", + "devDependencies": { + "expect.js": "0.2.0", + "mocha": "1.17.1" + }, + "directories": {}, + "dist": { + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "shasum": "3bbc4275dd584cc1b10809b89d4e8b63a69e7675", + "tarball": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz" + }, + "gitHead": "6779b3ca590f15c0910181bf7ccc51061f7eb7ac", + "homepage": "https://github.com/rase-/arraybuffer.slice", + "license": "MIT", + "maintainers": [ + { + "name": "rase-", + "email": "tonykovanen@hotmail.com" + } + ], + "name": "arraybuffer.slice", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/rase-/arraybuffer.slice.git" + }, + "version": "0.0.7" +} diff --git a/NodjsPartieArduino/node_modules/arraybuffer.slice/test/slice-buffer.js b/NodjsPartieArduino/node_modules/arraybuffer.slice/test/slice-buffer.js new file mode 100644 index 0000000..4778da6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/arraybuffer.slice/test/slice-buffer.js @@ -0,0 +1,227 @@ +/* + * Test dependencies + */ + +var sliceBuffer = require('../index.js'); +var expect = require('expect.js'); + +/** + * Tests + */ + +describe('sliceBuffer', function() { + describe('using standard slice', function() { + it('should slice correctly with only start provided', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, 3); + var sabv = new Uint8Array(sliced); + for (var i = 3, ii = 0; i < abv.length; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with start and end provided', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, 3, 8); + var sabv = new Uint8Array(sliced); + for (var i = 3, ii = 0; i < 8; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with negative start', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, -3); + var sabv = new Uint8Array(sliced); + for (var i = abv.length - 3, ii = 0; i < abv.length; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with negative end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, 0, -3); + var sabv = new Uint8Array(sliced); + for (var i = 0, ii = 0; i < abv.length - 3; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with negative start and end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, -6, -3); + var sabv = new Uint8Array(sliced); + for (var i = abv.length - 6, ii = 0; i < abv.length - 3; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with equal start and end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, 1, 1); + expect(sliced.byteLength).to.equal(0); + }); + + it('should slice correctly when end larger than buffer', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, 0, 100); + expect(new Uint8Array(sliced)).to.eql(abv); + }); + + it('shoud slice correctly when start larger than end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + + var sliced = sliceBuffer(abv.buffer, 6, 5); + expect(sliced.byteLength).to.equal(0); + }); + }); + + describe('using fallback', function() { + it('should slice correctly with only start provided', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + var sliced = sliceBuffer(ab, 3); + var sabv = new Uint8Array(sliced); + for (var i = 3, ii = 0; i < abv.length; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with start and end provided', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + + var sliced = sliceBuffer(ab, 3, 8); + var sabv = new Uint8Array(sliced); + for (var i = 3, ii = 0; i < 8; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with negative start', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + + var sliced = sliceBuffer(ab, -3); + var sabv = new Uint8Array(sliced); + for (var i = abv.length - 3, ii = 0; i < abv.length; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with negative end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + var sliced = sliceBuffer(ab, 0, -3); + var sabv = new Uint8Array(sliced); + for (var i = 0, ii = 0; i < abv.length - 3; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with negative start and end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + var sliced = sliceBuffer(ab, -6, -3); + var sabv = new Uint8Array(sliced); + for (var i = abv.length - 6, ii = 0; i < abv.length - 3; i++, ii++) { + expect(abv[i]).to.equal(sabv[ii]); + } + }); + + it('should slice correctly with equal start and end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + var sliced = sliceBuffer(ab, 1, 1); + expect(sliced.byteLength).to.equal(0); + }); + + it('should slice correctly when end larger than buffer', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + var sliced = sliceBuffer(ab, 0, 100); + var sabv = new Uint8Array(sliced); + for (var i = 0; i < abv.length; i++) { + expect(abv[i]).to.equal(sabv[i]); + } + }); + + it('shoud slice correctly when start larger than end', function() { + var abv = new Uint8Array(10); + for (var i = 0; i < abv.length; i++) { + abv[i] = i; + } + var ab = abv.buffer; + ab.slice = undefined; + + var sliced = sliceBuffer(ab, 6, 5); + expect(sliced.byteLength).to.equal(0); + }); + }); +}); diff --git a/NodjsPartieArduino/node_modules/async-limiter/LICENSE b/NodjsPartieArduino/node_modules/async-limiter/LICENSE new file mode 100644 index 0000000..9c91fb2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/LICENSE @@ -0,0 +1,8 @@ +The MIT License (MIT) +Copyright (c) 2017 Samuel Reed + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/coverage.json b/NodjsPartieArduino/node_modules/async-limiter/coverage/coverage.json new file mode 100644 index 0000000..5b4a358 --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/coverage.json @@ -0,0 +1 @@ +{"/Users/samuelreed/git/forks/async-throttle/index.js":{"path":"/Users/samuelreed/git/forks/async-throttle/index.js","s":{"1":1,"2":7,"3":1,"4":6,"5":6,"6":6,"7":6,"8":6,"9":6,"10":1,"11":1,"12":3,"13":13,"14":13,"15":13,"16":1,"17":19,"18":1,"19":45,"20":6,"21":39,"22":13,"23":13,"24":13,"25":13,"26":39,"27":18,"28":6,"29":6,"30":1,"31":6,"32":6,"33":6,"34":1,"35":13,"36":13,"37":1},"b":{"1":[1,6],"2":[6,5],"3":[6,5],"4":[6,39],"5":[13,26],"6":[18,21],"7":[6,0]},"f":{"1":7,"2":3,"3":13,"4":19,"5":45,"6":6,"7":13},"fnMap":{"1":{"name":"Queue","line":3,"loc":{"start":{"line":3,"column":0},"end":{"line":3,"column":24}}},"2":{"name":"(anonymous_2)","line":22,"loc":{"start":{"line":22,"column":24},"end":{"line":22,"column":41}}},"3":{"name":"(anonymous_3)","line":23,"loc":{"start":{"line":23,"column":28},"end":{"line":23,"column":39}}},"4":{"name":"(anonymous_4)","line":31,"loc":{"start":{"line":31,"column":7},"end":{"line":31,"column":18}}},"5":{"name":"(anonymous_5)","line":36,"loc":{"start":{"line":36,"column":23},"end":{"line":36,"column":34}}},"6":{"name":"(anonymous_6)","line":55,"loc":{"start":{"line":55,"column":25},"end":{"line":55,"column":38}}},"7":{"name":"done","line":62,"loc":{"start":{"line":62,"column":0},"end":{"line":62,"column":16}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":14,"column":1}},"2":{"start":{"line":4,"column":2},"end":{"line":6,"column":3}},"3":{"start":{"line":5,"column":4},"end":{"line":5,"column":30}},"4":{"start":{"line":8,"column":2},"end":{"line":8,"column":26}},"5":{"start":{"line":9,"column":2},"end":{"line":9,"column":53}},"6":{"start":{"line":10,"column":2},"end":{"line":10,"column":19}},"7":{"start":{"line":11,"column":2},"end":{"line":11,"column":17}},"8":{"start":{"line":12,"column":2},"end":{"line":12,"column":16}},"9":{"start":{"line":13,"column":2},"end":{"line":13,"column":31}},"10":{"start":{"line":16,"column":0},"end":{"line":20,"column":2}},"11":{"start":{"line":22,"column":0},"end":{"line":28,"column":3}},"12":{"start":{"line":23,"column":2},"end":{"line":27,"column":4}},"13":{"start":{"line":24,"column":4},"end":{"line":24,"column":75}},"14":{"start":{"line":25,"column":4},"end":{"line":25,"column":16}},"15":{"start":{"line":26,"column":4},"end":{"line":26,"column":24}},"16":{"start":{"line":30,"column":0},"end":{"line":34,"column":3}},"17":{"start":{"line":32,"column":4},"end":{"line":32,"column":43}},"18":{"start":{"line":36,"column":0},"end":{"line":53,"column":2}},"19":{"start":{"line":37,"column":2},"end":{"line":39,"column":3}},"20":{"start":{"line":38,"column":4},"end":{"line":38,"column":11}},"21":{"start":{"line":40,"column":2},"end":{"line":45,"column":3}},"22":{"start":{"line":41,"column":4},"end":{"line":41,"column":32}},"23":{"start":{"line":42,"column":4},"end":{"line":42,"column":19}},"24":{"start":{"line":43,"column":4},"end":{"line":43,"column":20}},"25":{"start":{"line":44,"column":4},"end":{"line":44,"column":16}},"26":{"start":{"line":47,"column":2},"end":{"line":52,"column":3}},"27":{"start":{"line":48,"column":4},"end":{"line":51,"column":5}},"28":{"start":{"line":49,"column":6},"end":{"line":49,"column":30}},"29":{"start":{"line":50,"column":6},"end":{"line":50,"column":27}},"30":{"start":{"line":55,"column":0},"end":{"line":60,"column":2}},"31":{"start":{"line":56,"column":2},"end":{"line":59,"column":3}},"32":{"start":{"line":57,"column":4},"end":{"line":57,"column":22}},"33":{"start":{"line":58,"column":4},"end":{"line":58,"column":16}},"34":{"start":{"line":62,"column":0},"end":{"line":65,"column":1}},"35":{"start":{"line":63,"column":2},"end":{"line":63,"column":17}},"36":{"start":{"line":64,"column":2},"end":{"line":64,"column":14}},"37":{"start":{"line":67,"column":0},"end":{"line":67,"column":23}}},"branchMap":{"1":{"line":4,"type":"if","locations":[{"start":{"line":4,"column":2},"end":{"line":4,"column":2}},{"start":{"line":4,"column":2},"end":{"line":4,"column":2}}]},"2":{"line":8,"type":"binary-expr","locations":[{"start":{"line":8,"column":12},"end":{"line":8,"column":19}},{"start":{"line":8,"column":23},"end":{"line":8,"column":25}}]},"3":{"line":9,"type":"binary-expr","locations":[{"start":{"line":9,"column":21},"end":{"line":9,"column":40}},{"start":{"line":9,"column":44},"end":{"line":9,"column":52}}]},"4":{"line":37,"type":"if","locations":[{"start":{"line":37,"column":2},"end":{"line":37,"column":2}},{"start":{"line":37,"column":2},"end":{"line":37,"column":2}}]},"5":{"line":40,"type":"if","locations":[{"start":{"line":40,"column":2},"end":{"line":40,"column":2}},{"start":{"line":40,"column":2},"end":{"line":40,"column":2}}]},"6":{"line":47,"type":"if","locations":[{"start":{"line":47,"column":2},"end":{"line":47,"column":2}},{"start":{"line":47,"column":2},"end":{"line":47,"column":2}}]},"7":{"line":56,"type":"if","locations":[{"start":{"line":56,"column":2},"end":{"line":56,"column":2}},{"start":{"line":56,"column":2},"end":{"line":56,"column":2}}]}}}} \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.html b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.html new file mode 100644 index 0000000..198882b --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.html @@ -0,0 +1,73 @@ + + + + Code coverage report for async-throttle/ + + + + + + +
+

Code coverage report for async-throttle/

+

+ Statements: 100% (37 / 37)      + Branches: 92.86% (13 / 14)      + Functions: 100% (7 / 7)      + Lines: 100% (37 / 37)      + Ignored: none      +

+
All files » async-throttle/
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
index.js100%(37 / 37)92.86%(13 / 14)100%(7 / 7)100%(37 / 37)
+
+
+ + + + + + diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.js.html b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.js.html new file mode 100644 index 0000000..adc030f --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.js.html @@ -0,0 +1,246 @@ + + + + Code coverage report for async-throttle/index.js + + + + + + +
+

Code coverage report for async-throttle/index.js

+

+ Statements: 100% (37 / 37)      + Branches: 92.86% (13 / 14)      + Functions: 100% (7 / 7)      + Lines: 100% (37 / 37)      + Ignored: none      +

+
All files » async-throttle/ » index.js
+
+
+

+
+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68  +  +1 +7 +1 +  +  +6 +6 +6 +6 +6 +6 +  +  +1 +  +  +  +  +  +1 +3 +13 +13 +13 +  +  +  +1 +  +19 +  +  +  +1 +45 +6 +  +39 +13 +13 +13 +13 +  +  +39 +18 +6 +6 +  +  +  +  +1 +6 +6 +6 +  +  +  +1 +13 +13 +  +  +1 + 
'use strict';
+ 
+function Queue(options) {
+  if (!(this instanceof Queue)) {
+    return new Queue(options);
+  }
+ 
+  options = options || {};
+  this.concurrency = options.concurrency || Infinity;
+  this.pending = 0;
+  this.jobs = [];
+  this.cbs = [];
+  this._done = done.bind(this);
+}
+ 
+var arrayAddMethods = [
+  'push',
+  'unshift',
+  'splice'
+];
+ 
+arrayAddMethods.forEach(function(method) {
+  Queue.prototype[method] = function() {
+    var methodResult = Array.prototype[method].apply(this.jobs, arguments);
+    this._run();
+    return methodResult;
+  };
+});
+ 
+Object.defineProperty(Queue.prototype, 'length', {
+  get: function() {
+    return this.pending + this.jobs.length;
+  }
+});
+ 
+Queue.prototype._run = function() {
+  if (this.pending === this.concurrency) {
+    return;
+  }
+  if (this.jobs.length) {
+    var job = this.jobs.shift();
+    this.pending++;
+    job(this._done);
+    this._run();
+  }
+ 
+  if (this.pending === 0) {
+    while (this.cbs.length !== 0) {
+      var cb = this.cbs.pop();
+      process.nextTick(cb);
+    }
+  }
+};
+ 
+Queue.prototype.onDone = function(cb) {
+  Eif (typeof cb === 'function') {
+    this.cbs.push(cb);
+    this._run();
+  }
+};
+ 
+function done() {
+  this.pending--;
+  this._run();
+}
+ 
+module.exports = Queue;
+ 
+ +
+ + + + + + diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/base.css b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/base.css new file mode 100644 index 0000000..a6a2f32 --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/base.css @@ -0,0 +1,182 @@ +body, html { + margin:0; padding: 0; +} +body { + font-family: Helvetica Neue, Helvetica,Arial; + font-size: 10pt; +} +div.header, div.footer { + background: #eee; + padding: 1em; +} +div.header { + z-index: 100; + position: fixed; + top: 0; + border-bottom: 1px solid #666; + width: 100%; +} +div.footer { + border-top: 1px solid #666; +} +div.body { + margin-top: 10em; +} +div.meta { + font-size: 90%; + text-align: center; +} +h1, h2, h3 { + font-weight: normal; +} +h1 { + font-size: 12pt; +} +h2 { + font-size: 10pt; +} +pre { + font-family: Consolas, Menlo, Monaco, monospace; + margin: 0; + padding: 0; + line-height: 1.3; + font-size: 14px; + -moz-tab-size: 2; + -o-tab-size: 2; + tab-size: 2; +} + +div.path { font-size: 110%; } +div.path a:link, div.path a:visited { color: #000; } +table.coverage { border-collapse: collapse; margin:0; padding: 0 } + +table.coverage td { + margin: 0; + padding: 0; + color: #111; + vertical-align: top; +} +table.coverage td.line-count { + width: 50px; + text-align: right; + padding-right: 5px; +} +table.coverage td.line-coverage { + color: #777 !important; + text-align: right; + border-left: 1px solid #666; + border-right: 1px solid #666; +} + +table.coverage td.text { +} + +table.coverage td span.cline-any { + display: inline-block; + padding: 0 5px; + width: 40px; +} +table.coverage td span.cline-neutral { + background: #eee; +} +table.coverage td span.cline-yes { + background: #b5d592; + color: #999; +} +table.coverage td span.cline-no { + background: #fc8c84; +} + +.cstat-yes { color: #111; } +.cstat-no { background: #fc8c84; color: #111; } +.fstat-no { background: #ffc520; color: #111 !important; } +.cbranch-no { background: yellow !important; color: #111; } + +.cstat-skip { background: #ddd; color: #111; } +.fstat-skip { background: #ddd; color: #111 !important; } +.cbranch-skip { background: #ddd !important; color: #111; } + +.missing-if-branch { + display: inline-block; + margin-right: 10px; + position: relative; + padding: 0 4px; + background: black; + color: yellow; +} + +.skip-if-branch { + display: none; + margin-right: 10px; + position: relative; + padding: 0 4px; + background: #ccc; + color: white; +} + +.missing-if-branch .typ, .skip-if-branch .typ { + color: inherit !important; +} + +.entity, .metric { font-weight: bold; } +.metric { display: inline-block; border: 1px solid #333; padding: 0.3em; background: white; } +.metric small { font-size: 80%; font-weight: normal; color: #666; } + +div.coverage-summary table { border-collapse: collapse; margin: 3em; font-size: 110%; } +div.coverage-summary td, div.coverage-summary table th { margin: 0; padding: 0.25em 1em; border-top: 1px solid #666; border-bottom: 1px solid #666; } +div.coverage-summary th { text-align: left; border: 1px solid #666; background: #eee; font-weight: normal; } +div.coverage-summary th.file { border-right: none !important; } +div.coverage-summary th.pic { border-left: none !important; text-align: right; } +div.coverage-summary th.pct { border-right: none !important; } +div.coverage-summary th.abs { border-left: none !important; text-align: right; } +div.coverage-summary td.pct { text-align: right; border-left: 1px solid #666; } +div.coverage-summary td.abs { text-align: right; font-size: 90%; color: #444; border-right: 1px solid #666; } +div.coverage-summary td.file { border-left: 1px solid #666; white-space: nowrap; } +div.coverage-summary td.pic { min-width: 120px !important; } +div.coverage-summary a:link { text-decoration: none; color: #000; } +div.coverage-summary a:visited { text-decoration: none; color: #777; } +div.coverage-summary a:hover { text-decoration: underline; } +div.coverage-summary tfoot td { border-top: 1px solid #666; } + +div.coverage-summary .sorter { + height: 10px; + width: 7px; + display: inline-block; + margin-left: 0.5em; + background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent; +} +div.coverage-summary .sorted .sorter { + background-position: 0 -20px; +} +div.coverage-summary .sorted-desc .sorter { + background-position: 0 -10px; +} + +.high { background: #b5d592 !important; } +.medium { background: #ffe87c !important; } +.low { background: #fc8c84 !important; } + +span.cover-fill, span.cover-empty { + display:inline-block; + border:1px solid #444; + background: white; + height: 12px; +} +span.cover-fill { + background: #ccc; + border-right: 1px solid #444; +} +span.cover-empty { + background: white; + border-left: none; +} +span.cover-full { + border-right: none !important; +} +pre.prettyprint { + border: none !important; + padding: 0 !important; + margin: 0 !important; +} +.com { color: #999 !important; } +.ignore-none { color: #999; font-weight: normal; } diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/index.html b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/index.html new file mode 100644 index 0000000..782a1cf --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/index.html @@ -0,0 +1,73 @@ + + + + Code coverage report for All files + + + + + + +
+

Code coverage report for All files

+

+ Statements: 100% (37 / 37)      + Branches: 92.86% (13 / 14)      + Functions: 100% (7 / 7)      + Lines: 100% (37 / 37)      + Ignored: none      +

+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
async-throttle/100%(37 / 37)92.86%(13 / 14)100%(7 / 7)100%(37 / 37)
+
+
+ + + + + + diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.css b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.css new file mode 100644 index 0000000..b317a7c --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.css @@ -0,0 +1 @@ +.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.js b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.js new file mode 100644 index 0000000..ef51e03 --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/prettify.js @@ -0,0 +1 @@ +window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;arat[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);c(g([[F,/^[\s]+/,null," \t\r\n"],[n,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[m,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[P,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[L,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);c(g([],[[n,/^[\s\S]+/]]),["uq.val"]);c(i({keywords:l,hashComments:true,cStyleComments:true,types:e}),["c","cc","cpp","cxx","cyc","m"]);c(i({keywords:"null,true,false"}),["json"]);c(i({keywords:R,hashComments:true,cStyleComments:true,verbatimStrings:true,types:e}),["cs"]);c(i({keywords:x,cStyleComments:true}),["java"]);c(i({keywords:H,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);c(i({keywords:I,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);c(i({keywords:s,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);c(i({keywords:f,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);c(i({keywords:w,cStyleComments:true,regexLiterals:true}),["js"]);c(i({keywords:r,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);c(g([],[[C,/^[\s\S]+/]]),["regex"]);function d(V){var U=V.langExtension;try{var S=a(V.sourceNode);var T=S.sourceCode;V.sourceCode=T;V.spans=S.spans;V.basePos=0;q(U,T)(V);D(V)}catch(W){if("console" in window){console.log(W&&W.stack?W.stack:W)}}}function y(W,V,U){var S=document.createElement("PRE");S.innerHTML=W;if(U){Q(S,U)}var T={langExtension:V,numberLines:U,sourceNode:S};d(T);return S.innerHTML}function b(ad){function Y(af){return document.getElementsByTagName(af)}var ac=[Y("pre"),Y("code"),Y("xmp")];var T=[];for(var aa=0;aa=0){var ah=ai.match(ab);var am;if(!ah&&(am=o(aj))&&"CODE"===am.tagName){ah=am.className.match(ab)}if(ah){ah=ah[1]}var al=false;for(var ak=aj.parentNode;ak;ak=ak.parentNode){if((ak.tagName==="pre"||ak.tagName==="code"||ak.tagName==="xmp")&&ak.className&&ak.className.indexOf("prettyprint")>=0){al=true;break}}if(!al){var af=aj.className.match(/\blinenums\b(?::(\d+))?/);af=af?af[1]&&af[1].length?+af[1]:true:false;if(af){Q(aj,af)}S={langExtension:ah,sourceNode:aj,numberLines:af};d(S)}}}if(X]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png new file mode 100644 index 0000000000000000000000000000000000000000..03f704a609c6fd0dbfdac63466a7d7c958b5cbf3 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^>_9Bd!3HEZxJ@+%Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>Jii$m5978H@?Fn+^JD|Y9yzj{W`447Gxa{7*dM7nnnD-Lb z6^}Hx2)'; + } + } + return cols; + } + // attaches a data attribute to every tr element with an object + // of data values keyed by column name + function loadRowData(tableRow) { + var tableCols = tableRow.querySelectorAll('td'), + colNode, + col, + data = {}, + i, + val; + for (i = 0; i < tableCols.length; i += 1) { + colNode = tableCols[i]; + col = cols[i]; + val = colNode.getAttribute('data-value'); + if (col.type === 'number') { + val = Number(val); + } + data[col.key] = val; + } + return data; + } + // loads all row data + function loadData() { + var rows = getTableBody().querySelectorAll('tr'), + i; + + for (i = 0; i < rows.length; i += 1) { + rows[i].data = loadRowData(rows[i]); + } + } + // sorts the table using the data for the ith column + function sortByIndex(index, desc) { + var key = cols[index].key, + sorter = function (a, b) { + a = a.data[key]; + b = b.data[key]; + return a < b ? -1 : a > b ? 1 : 0; + }, + finalSorter = sorter, + tableBody = document.querySelector('.coverage-summary tbody'), + rowNodes = tableBody.querySelectorAll('tr'), + rows = [], + i; + + if (desc) { + finalSorter = function (a, b) { + return -1 * sorter(a, b); + }; + } + + for (i = 0; i < rowNodes.length; i += 1) { + rows.push(rowNodes[i]); + tableBody.removeChild(rowNodes[i]); + } + + rows.sort(finalSorter); + + for (i = 0; i < rows.length; i += 1) { + tableBody.appendChild(rows[i]); + } + } + // removes sort indicators for current column being sorted + function removeSortIndicators() { + var col = getNthColumn(currentSort.index), + cls = col.className; + + cls = cls.replace(/ sorted$/, '').replace(/ sorted-desc$/, ''); + col.className = cls; + } + // adds sort indicators for current column being sorted + function addSortIndicators() { + getNthColumn(currentSort.index).className += currentSort.desc ? ' sorted-desc' : ' sorted'; + } + // adds event listeners for all sorter widgets + function enableUI() { + var i, + el, + ithSorter = function ithSorter(i) { + var col = cols[i]; + + return function () { + var desc = col.defaultDescSort; + + if (currentSort.index === i) { + desc = !currentSort.desc; + } + sortByIndex(i, desc); + removeSortIndicators(); + currentSort.index = i; + currentSort.desc = desc; + addSortIndicators(); + }; + }; + for (i =0 ; i < cols.length; i += 1) { + if (cols[i].sortable) { + el = getNthColumn(i).querySelector('.sorter'); + if (el.addEventListener) { + el.addEventListener('click', ithSorter(i)); + } else { + el.attachEvent('onclick', ithSorter(i)); + } + } + } + } + // adds sorting functionality to the UI + return function () { + if (!getTable()) { + return; + } + cols = loadColumns(); + loadData(cols); + addSortIndicators(); + enableUI(); + }; +})(); + +window.addEventListener('load', addSorting); diff --git a/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov.info b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov.info new file mode 100644 index 0000000..fbf36aa --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/coverage/lcov.info @@ -0,0 +1,74 @@ +TN: +SF:/Users/samuelreed/git/forks/async-throttle/index.js +FN:3,Queue +FN:22,(anonymous_2) +FN:23,(anonymous_3) +FN:31,(anonymous_4) +FN:36,(anonymous_5) +FN:55,(anonymous_6) +FN:62,done +FNF:7 +FNH:7 +FNDA:7,Queue +FNDA:3,(anonymous_2) +FNDA:13,(anonymous_3) +FNDA:19,(anonymous_4) +FNDA:45,(anonymous_5) +FNDA:6,(anonymous_6) +FNDA:13,done +DA:3,1 +DA:4,7 +DA:5,1 +DA:8,6 +DA:9,6 +DA:10,6 +DA:11,6 +DA:12,6 +DA:13,6 +DA:16,1 +DA:22,1 +DA:23,3 +DA:24,13 +DA:25,13 +DA:26,13 +DA:30,1 +DA:32,19 +DA:36,1 +DA:37,45 +DA:38,6 +DA:40,39 +DA:41,13 +DA:42,13 +DA:43,13 +DA:44,13 +DA:47,39 +DA:48,18 +DA:49,6 +DA:50,6 +DA:55,1 +DA:56,6 +DA:57,6 +DA:58,6 +DA:62,1 +DA:63,13 +DA:64,13 +DA:67,1 +LF:37 +LH:37 +BRDA:4,1,0,1 +BRDA:4,1,1,6 +BRDA:8,2,0,6 +BRDA:8,2,1,5 +BRDA:9,3,0,6 +BRDA:9,3,1,5 +BRDA:37,4,0,6 +BRDA:37,4,1,39 +BRDA:40,5,0,13 +BRDA:40,5,1,26 +BRDA:47,6,0,18 +BRDA:47,6,1,21 +BRDA:56,7,0,6 +BRDA:56,7,1,0 +BRF:14 +BRH:13 +end_of_record diff --git a/NodjsPartieArduino/node_modules/async-limiter/index.js b/NodjsPartieArduino/node_modules/async-limiter/index.js new file mode 100644 index 0000000..c9bd2f9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/index.js @@ -0,0 +1,67 @@ +'use strict'; + +function Queue(options) { + if (!(this instanceof Queue)) { + return new Queue(options); + } + + options = options || {}; + this.concurrency = options.concurrency || Infinity; + this.pending = 0; + this.jobs = []; + this.cbs = []; + this._done = done.bind(this); +} + +var arrayAddMethods = [ + 'push', + 'unshift', + 'splice' +]; + +arrayAddMethods.forEach(function(method) { + Queue.prototype[method] = function() { + var methodResult = Array.prototype[method].apply(this.jobs, arguments); + this._run(); + return methodResult; + }; +}); + +Object.defineProperty(Queue.prototype, 'length', { + get: function() { + return this.pending + this.jobs.length; + } +}); + +Queue.prototype._run = function() { + if (this.pending === this.concurrency) { + return; + } + if (this.jobs.length) { + var job = this.jobs.shift(); + this.pending++; + job(this._done); + this._run(); + } + + if (this.pending === 0) { + while (this.cbs.length !== 0) { + var cb = this.cbs.pop(); + process.nextTick(cb); + } + } +}; + +Queue.prototype.onDone = function(cb) { + if (typeof cb === 'function') { + this.cbs.push(cb); + this._run(); + } +}; + +function done() { + this.pending--; + this._run(); +} + +module.exports = Queue; diff --git a/NodjsPartieArduino/node_modules/async-limiter/package.json b/NodjsPartieArduino/node_modules/async-limiter/package.json new file mode 100644 index 0000000..cd5f66d --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/package.json @@ -0,0 +1,105 @@ +{ + "_args": [ + [ + { + "raw": "async-limiter@~1.0.0", + "scope": null, + "escapedName": "async-limiter", + "name": "async-limiter", + "rawSpec": "~1.0.0", + "spec": ">=1.0.0 <1.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ws" + ] + ], + "_from": "async-limiter@>=1.0.0 <1.1.0", + "_id": "async-limiter@1.0.0", + "_inCache": true, + "_location": "/async-limiter", + "_nodeVersion": "8.4.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/async-limiter-1.0.0.tgz_1505149068503_0.15003100014291704" + }, + "_npmUser": { + "name": "strml", + "email": "samuel.trace.reed@gmail.com" + }, + "_npmVersion": "5.4.1", + "_phantomChildren": {}, + "_requested": { + "raw": "async-limiter@~1.0.0", + "scope": null, + "escapedName": "async-limiter", + "name": "async-limiter", + "rawSpec": "~1.0.0", + "spec": ">=1.0.0 <1.1.0", + "type": "range" + }, + "_requiredBy": [ + "/ws" + ], + "_resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "_shasum": "78faed8c3d074ab81f22b4e985d79e8738f720f8", + "_shrinkwrap": null, + "_spec": "async-limiter@~1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/ws", + "author": { + "name": "Samuel Reed" + }, + "bugs": { + "url": "https://github.com/strml/async-limiter/issues" + }, + "dependencies": {}, + "description": "asynchronous function queue with adjustable concurrency", + "devDependencies": { + "coveralls": "^2.11.2", + "eslint": "^4.6.1", + "eslint-plugin-mocha": "^4.11.0", + "intelli-espower-loader": "^1.0.1", + "istanbul": "^0.3.2", + "mocha": "^3.5.2", + "power-assert": "^1.4.4" + }, + "directories": {}, + "dist": { + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", + "shasum": "78faed8c3d074ab81f22b4e985d79e8738f720f8", + "tarball": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz" + }, + "gitHead": "02c8b498279dc7cc1ecc1c4f6fc9ca320c0ce39b", + "homepage": "https://github.com/strml/async-limiter#readme", + "keywords": [ + "throttle", + "async", + "limiter", + "asynchronous", + "job", + "task", + "concurrency", + "concurrent" + ], + "license": "MIT", + "maintainers": [ + { + "name": "strml", + "email": "samuel.trace.reed@gmail.com" + } + ], + "name": "async-limiter", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/strml/async-limiter.git" + }, + "scripts": { + "coverage": "istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec && cat ./coverage/lcov.info | coveralls", + "example": "node example", + "lint": "eslint .", + "test": "mocha --R intelli-espower-loader test/", + "travis": "npm run lint && npm run coverage" + }, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/async-limiter/readme.md b/NodjsPartieArduino/node_modules/async-limiter/readme.md new file mode 100644 index 0000000..dcf4932 --- /dev/null +++ b/NodjsPartieArduino/node_modules/async-limiter/readme.md @@ -0,0 +1,132 @@ +# Async-Limiter + +A module for limiting concurrent asynchronous actions in flight. Forked from [queue](https://github.com/jessetane/queue). + +[![npm](http://img.shields.io/npm/v/async-limiter.svg?style=flat-square)](http://www.npmjs.org/async-limiter) +[![tests](https://img.shields.io/travis/STRML/async-limiter.svg?style=flat-square&branch=master)](https://travis-ci.org/STRML/async-limiter) +[![coverage](https://img.shields.io/coveralls/STRML/async-limiter.svg?style=flat-square&branch=master)](https://coveralls.io/r/STRML/async-limiter) + +This module exports a class `Limiter` that implements some of the `Array` API. +Pass async functions (ones that accept a callback or return a promise) to an instance's additive array methods. + +## Motivation + +Certain functions, like `zlib`, have [undesirable behavior](https://github.com/nodejs/node/issues/8871#issuecomment-250915913) when +run at infinite concurrency. + +In this case, it is actually faster, and takes far less memory, to limit concurrency. + +This module should do the absolute minimum work necessary to queue up functions. PRs are welcome that would +make this module faster or lighter, but new functionality is not desired. + +Style should confirm to nodejs/node style. + +## Example + +``` javascript +var Limiter = require('async-limiter') + +var t = new Limiter({concurrency: 2}); +var results = [] + +// add jobs using the familiar Array API +t.push(function (cb) { + results.push('two') + cb() +}) + +t.push( + function (cb) { + results.push('four') + cb() + }, + function (cb) { + results.push('five') + cb() + } +) + +t.unshift(function (cb) { + results.push('one') + cb() +}) + +t.splice(2, 0, function (cb) { + results.push('three') + cb() +}) + +// Jobs run automatically. If you want a callback when all are done, +// call 'onDone()'. +t.onDone(function () { + console.log('all done:', results) +}) +``` + +## Zlib Example + +```js +const zlib = require('zlib'); +const Limiter = require('async-limiter'); + +const message = {some: "data"}; +const payload = new Buffer(JSON.stringify(message)); + +// Try with different concurrency values to see how this actually +// slows significantly with higher concurrency! +// +// 5: 1398.607ms +// 10: 1375.668ms +// Infinity: 4423.300ms +// +const t = new Limiter({concurrency: 5}); +function deflate(payload, cb) { + t.push(function(done) { + zlib.deflate(payload, function(err, buffer) { + done(); + cb(err, buffer); + }); + }); +} + +console.time('deflate'); +for(let i = 0; i < 30000; ++i) { + deflate(payload, function (err, buffer) {}); +} +q.onDone(function() { + console.timeEnd('deflate'); +}); +``` + +## Install + +`npm install async-limiter` + +## Test + +`npm test` + +## API + +### `var t = new Limiter([opts])` +Constructor. `opts` may contain inital values for: +* `q.concurrency` + +## Instance methods + +### `q.onDone(fn)` +`fn` will be called once and only once, when the queue is empty. + +## Instance methods mixed in from `Array` +Mozilla has docs on how these methods work [here](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array). +### `q.push(element1, ..., elementN)` +### `q.unshift(element1, ..., elementN)` +### `q.splice(index , howMany[, element1[, ...[, elementN]]])` + +## Properties +### `q.concurrency` +Max number of jobs the queue should process concurrently, defaults to `Infinity`. + +### `q.length` +Jobs pending + jobs to process (readonly). + diff --git a/NodjsPartieArduino/node_modules/backo2/History.md b/NodjsPartieArduino/node_modules/backo2/History.md new file mode 100644 index 0000000..8eb28b8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/History.md @@ -0,0 +1,12 @@ + +1.0.1 / 2014-02-17 +================== + + * go away decimal point + * history + +1.0.0 / 2014-02-17 +================== + + * add jitter option + * Initial commit diff --git a/NodjsPartieArduino/node_modules/backo2/Makefile b/NodjsPartieArduino/node_modules/backo2/Makefile new file mode 100644 index 0000000..9987df8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/Makefile @@ -0,0 +1,8 @@ + +test: + @./node_modules/.bin/mocha \ + --require should \ + --reporter dot \ + --bail + +.PHONY: test \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/backo2/Readme.md b/NodjsPartieArduino/node_modules/backo2/Readme.md new file mode 100644 index 0000000..0df2a39 --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/Readme.md @@ -0,0 +1,34 @@ +# backo + + Simple exponential backoff because the others seem to have weird abstractions. + +## Installation + +``` +$ npm install backo +``` + +## Options + + - `min` initial timeout in milliseconds [100] + - `max` max timeout [10000] + - `jitter` [0] + - `factor` [2] + +## Example + +```js +var Backoff = require('backo'); +var backoff = new Backoff({ min: 100, max: 20000 }); + +setTimeout(function(){ + something.reconnect(); +}, backoff.duration()); + +// later when something works +backoff.reset() +``` + +# License + + MIT diff --git a/NodjsPartieArduino/node_modules/backo2/component.json b/NodjsPartieArduino/node_modules/backo2/component.json new file mode 100644 index 0000000..994845a --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/component.json @@ -0,0 +1,11 @@ +{ + "name": "backo", + "repo": "segmentio/backo", + "dependencies": {}, + "version": "1.0.1", + "description": "simple backoff without the weird abstractions", + "keywords": ["backoff"], + "license": "MIT", + "scripts": ["index.js"], + "main": "index.js" +} diff --git a/NodjsPartieArduino/node_modules/backo2/index.js b/NodjsPartieArduino/node_modules/backo2/index.js new file mode 100644 index 0000000..fac4429 --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/index.js @@ -0,0 +1,85 @@ + +/** + * Expose `Backoff`. + */ + +module.exports = Backoff; + +/** + * Initialize backoff timer with `opts`. + * + * - `min` initial timeout in milliseconds [100] + * - `max` max timeout [10000] + * - `jitter` [0] + * - `factor` [2] + * + * @param {Object} opts + * @api public + */ + +function Backoff(opts) { + opts = opts || {}; + this.ms = opts.min || 100; + this.max = opts.max || 10000; + this.factor = opts.factor || 2; + this.jitter = opts.jitter > 0 && opts.jitter <= 1 ? opts.jitter : 0; + this.attempts = 0; +} + +/** + * Return the backoff duration. + * + * @return {Number} + * @api public + */ + +Backoff.prototype.duration = function(){ + var ms = this.ms * Math.pow(this.factor, this.attempts++); + if (this.jitter) { + var rand = Math.random(); + var deviation = Math.floor(rand * this.jitter * ms); + ms = (Math.floor(rand * 10) & 1) == 0 ? ms - deviation : ms + deviation; + } + return Math.min(ms, this.max) | 0; +}; + +/** + * Reset the number of attempts. + * + * @api public + */ + +Backoff.prototype.reset = function(){ + this.attempts = 0; +}; + +/** + * Set the minimum duration + * + * @api public + */ + +Backoff.prototype.setMin = function(min){ + this.ms = min; +}; + +/** + * Set the maximum duration + * + * @api public + */ + +Backoff.prototype.setMax = function(max){ + this.max = max; +}; + +/** + * Set the jitter + * + * @api public + */ + +Backoff.prototype.setJitter = function(jitter){ + this.jitter = jitter; +}; + diff --git a/NodjsPartieArduino/node_modules/backo2/package.json b/NodjsPartieArduino/node_modules/backo2/package.json new file mode 100644 index 0000000..9cf1aa9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/package.json @@ -0,0 +1,78 @@ +{ + "_args": [ + [ + { + "raw": "backo2@1.0.2", + "scope": null, + "escapedName": "backo2", + "name": "backo2", + "rawSpec": "1.0.2", + "spec": "1.0.2", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/socket.io-client" + ] + ], + "_from": "backo2@1.0.2", + "_id": "backo2@1.0.2", + "_inCache": true, + "_location": "/backo2", + "_npmUser": { + "name": "mokesmokes", + "email": "mokesmokes@gmail.com" + }, + "_npmVersion": "1.4.28", + "_phantomChildren": {}, + "_requested": { + "raw": "backo2@1.0.2", + "scope": null, + "escapedName": "backo2", + "name": "backo2", + "rawSpec": "1.0.2", + "spec": "1.0.2", + "type": "version" + }, + "_requiredBy": [ + "/socket.io-client" + ], + "_resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "_shasum": "31ab1ac8b129363463e35b3ebb69f4dfcfba7947", + "_shrinkwrap": null, + "_spec": "backo2@1.0.2", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/socket.io-client", + "bugs": { + "url": "https://github.com/mokesmokes/backo/issues" + }, + "dependencies": {}, + "description": "simple backoff based on segmentio/backo", + "devDependencies": { + "mocha": "*", + "should": "*" + }, + "directories": {}, + "dist": { + "shasum": "31ab1ac8b129363463e35b3ebb69f4dfcfba7947", + "tarball": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz" + }, + "gitHead": "3e695bade7756fef2295e8883bf3570a06e5d9ec", + "homepage": "https://github.com/mokesmokes/backo", + "keywords": [ + "backoff" + ], + "license": "MIT", + "maintainers": [ + { + "name": "mokesmokes", + "email": "mokesmokes@gmail.com" + } + ], + "name": "backo2", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/mokesmokes/backo.git" + }, + "scripts": {}, + "version": "1.0.2" +} diff --git a/NodjsPartieArduino/node_modules/backo2/test/index.js b/NodjsPartieArduino/node_modules/backo2/test/index.js new file mode 100644 index 0000000..ea1f6de --- /dev/null +++ b/NodjsPartieArduino/node_modules/backo2/test/index.js @@ -0,0 +1,18 @@ + +var Backoff = require('..'); +var assert = require('assert'); + +describe('.duration()', function(){ + it('should increase the backoff', function(){ + var b = new Backoff; + + assert(100 == b.duration()); + assert(200 == b.duration()); + assert(400 == b.duration()); + assert(800 == b.duration()); + + b.reset(); + assert(100 == b.duration()); + assert(200 == b.duration()); + }) +}) \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/base64-arraybuffer/LICENSE-MIT b/NodjsPartieArduino/node_modules/base64-arraybuffer/LICENSE-MIT new file mode 100644 index 0000000..ed27b41 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64-arraybuffer/LICENSE-MIT @@ -0,0 +1,22 @@ +Copyright (c) 2012 Niklas von Hertzen + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/base64-arraybuffer/README.md b/NodjsPartieArduino/node_modules/base64-arraybuffer/README.md new file mode 100644 index 0000000..50009e4 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64-arraybuffer/README.md @@ -0,0 +1,20 @@ +# base64-arraybuffer + +[![Build Status](https://travis-ci.org/niklasvh/base64-arraybuffer.png)](https://travis-ci.org/niklasvh/base64-arraybuffer) +[![NPM Downloads](https://img.shields.io/npm/dm/base64-arraybuffer.svg)](https://www.npmjs.org/package/base64-arraybuffer) +[![NPM Version](https://img.shields.io/npm/v/base64-arraybuffer.svg)](https://www.npmjs.org/package/base64-arraybuffer) + +Encode/decode base64 data into ArrayBuffers + +## Getting Started +Install the module with: `npm install base64-arraybuffer` + +## API +The library encodes and decodes base64 to and from ArrayBuffers + + - __encode(buffer)__ - Encodes `ArrayBuffer` into base64 string + - __decode(str)__ - Decodes base64 string to `ArrayBuffer` + +## License +Copyright (c) 2012 Niklas von Hertzen +Licensed under the MIT license. diff --git a/NodjsPartieArduino/node_modules/base64-arraybuffer/lib/base64-arraybuffer.js b/NodjsPartieArduino/node_modules/base64-arraybuffer/lib/base64-arraybuffer.js new file mode 100644 index 0000000..e6b6306 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64-arraybuffer/lib/base64-arraybuffer.js @@ -0,0 +1,67 @@ +/* + * base64-arraybuffer + * https://github.com/niklasvh/base64-arraybuffer + * + * Copyright (c) 2012 Niklas von Hertzen + * Licensed under the MIT license. + */ +(function(){ + "use strict"; + + var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + + // Use a lookup table to find the index. + var lookup = new Uint8Array(256); + for (var i = 0; i < chars.length; i++) { + lookup[chars.charCodeAt(i)] = i; + } + + exports.encode = function(arraybuffer) { + var bytes = new Uint8Array(arraybuffer), + i, len = bytes.length, base64 = ""; + + for (i = 0; i < len; i+=3) { + base64 += chars[bytes[i] >> 2]; + base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)]; + base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)]; + base64 += chars[bytes[i + 2] & 63]; + } + + if ((len % 3) === 2) { + base64 = base64.substring(0, base64.length - 1) + "="; + } else if (len % 3 === 1) { + base64 = base64.substring(0, base64.length - 2) + "=="; + } + + return base64; + }; + + exports.decode = function(base64) { + var bufferLength = base64.length * 0.75, + len = base64.length, i, p = 0, + encoded1, encoded2, encoded3, encoded4; + + if (base64[base64.length - 1] === "=") { + bufferLength--; + if (base64[base64.length - 2] === "=") { + bufferLength--; + } + } + + var arraybuffer = new ArrayBuffer(bufferLength), + bytes = new Uint8Array(arraybuffer); + + for (i = 0; i < len; i+=4) { + encoded1 = lookup[base64.charCodeAt(i)]; + encoded2 = lookup[base64.charCodeAt(i+1)]; + encoded3 = lookup[base64.charCodeAt(i+2)]; + encoded4 = lookup[base64.charCodeAt(i+3)]; + + bytes[p++] = (encoded1 << 2) | (encoded2 >> 4); + bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2); + bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63); + } + + return arraybuffer; + }; +})(); diff --git a/NodjsPartieArduino/node_modules/base64-arraybuffer/package.json b/NodjsPartieArduino/node_modules/base64-arraybuffer/package.json new file mode 100644 index 0000000..fad730b --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64-arraybuffer/package.json @@ -0,0 +1,97 @@ +{ + "_args": [ + [ + { + "raw": "base64-arraybuffer@0.1.5", + "scope": null, + "escapedName": "base64-arraybuffer", + "name": "base64-arraybuffer", + "rawSpec": "0.1.5", + "spec": "0.1.5", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser" + ] + ], + "_from": "base64-arraybuffer@0.1.5", + "_id": "base64-arraybuffer@0.1.5", + "_inCache": true, + "_location": "/base64-arraybuffer", + "_nodeVersion": "2.5.0", + "_npmUser": { + "name": "niklasvh", + "email": "niklasvh@gmail.com" + }, + "_npmVersion": "3.4.0", + "_phantomChildren": {}, + "_requested": { + "raw": "base64-arraybuffer@0.1.5", + "scope": null, + "escapedName": "base64-arraybuffer", + "name": "base64-arraybuffer", + "rawSpec": "0.1.5", + "spec": "0.1.5", + "type": "version" + }, + "_requiredBy": [ + "/engine.io-parser", + "/socket.io-client" + ], + "_resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", + "_shasum": "73926771923b5a19747ad666aa5cd4bf9c6e9ce8", + "_shrinkwrap": null, + "_spec": "base64-arraybuffer@0.1.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser", + "author": { + "name": "Niklas von Hertzen", + "email": "niklasvh@gmail.com", + "url": "http://hertzen.com" + }, + "bugs": { + "url": "https://github.com/niklasvh/base64-arraybuffer/issues" + }, + "dependencies": {}, + "description": "Encode/decode base64 data into ArrayBuffers", + "devDependencies": { + "grunt": "^0.4.5", + "grunt-cli": "^0.1.13", + "grunt-contrib-jshint": "^0.11.2", + "grunt-contrib-nodeunit": "^0.4.1", + "grunt-contrib-watch": "^0.6.1" + }, + "directories": {}, + "dist": { + "shasum": "73926771923b5a19747ad666aa5cd4bf9c6e9ce8", + "tarball": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz" + }, + "engines": { + "node": ">= 0.6.0" + }, + "gitHead": "e9457ccb7b140f5ae54a2880c8e9b967ffb03a7d", + "homepage": "https://github.com/niklasvh/base64-arraybuffer", + "keywords": [], + "licenses": [ + { + "type": "MIT", + "url": "https://github.com/niklasvh/base64-arraybuffer/blob/master/LICENSE-MIT" + } + ], + "main": "lib/base64-arraybuffer", + "maintainers": [ + { + "name": "niklasvh", + "email": "niklasvh@gmail.com" + } + ], + "name": "base64-arraybuffer", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/niklasvh/base64-arraybuffer.git" + }, + "scripts": { + "test": "grunt nodeunit" + }, + "version": "0.1.5" +} diff --git a/NodjsPartieArduino/node_modules/base64id/LICENSE b/NodjsPartieArduino/node_modules/base64id/LICENSE new file mode 100644 index 0000000..0d03c83 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64id/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2012-2016 Kristian Faeldt + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/base64id/README.md b/NodjsPartieArduino/node_modules/base64id/README.md new file mode 100644 index 0000000..17689e6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64id/README.md @@ -0,0 +1,18 @@ +base64id +======== + +Node.js module that generates a base64 id. + +Uses crypto.randomBytes when available, falls back to unsafe methods for node.js <= 0.4. + +To increase performance, random bytes are buffered to minimize the number of synchronous calls to crypto.randomBytes. + +## Installation + + $ npm install base64id + +## Usage + + var base64id = require('base64id'); + + var id = base64id.generateId(); diff --git a/NodjsPartieArduino/node_modules/base64id/lib/base64id.js b/NodjsPartieArduino/node_modules/base64id/lib/base64id.js new file mode 100644 index 0000000..f688159 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64id/lib/base64id.js @@ -0,0 +1,103 @@ +/*! + * base64id v0.1.0 + */ + +/** + * Module dependencies + */ + +var crypto = require('crypto'); + +/** + * Constructor + */ + +var Base64Id = function() { }; + +/** + * Get random bytes + * + * Uses a buffer if available, falls back to crypto.randomBytes + */ + +Base64Id.prototype.getRandomBytes = function(bytes) { + + var BUFFER_SIZE = 4096 + var self = this; + + bytes = bytes || 12; + + if (bytes > BUFFER_SIZE) { + return crypto.randomBytes(bytes); + } + + var bytesInBuffer = parseInt(BUFFER_SIZE/bytes); + var threshold = parseInt(bytesInBuffer*0.85); + + if (!threshold) { + return crypto.randomBytes(bytes); + } + + if (this.bytesBufferIndex == null) { + this.bytesBufferIndex = -1; + } + + if (this.bytesBufferIndex == bytesInBuffer) { + this.bytesBuffer = null; + this.bytesBufferIndex = -1; + } + + // No buffered bytes available or index above threshold + if (this.bytesBufferIndex == -1 || this.bytesBufferIndex > threshold) { + + if (!this.isGeneratingBytes) { + this.isGeneratingBytes = true; + crypto.randomBytes(BUFFER_SIZE, function(err, bytes) { + self.bytesBuffer = bytes; + self.bytesBufferIndex = 0; + self.isGeneratingBytes = false; + }); + } + + // Fall back to sync call when no buffered bytes are available + if (this.bytesBufferIndex == -1) { + return crypto.randomBytes(bytes); + } + } + + var result = this.bytesBuffer.slice(bytes*this.bytesBufferIndex, bytes*(this.bytesBufferIndex+1)); + this.bytesBufferIndex++; + + return result; +} + +/** + * Generates a base64 id + * + * (Original version from socket.io ) + */ + +Base64Id.prototype.generateId = function () { + var rand = new Buffer(15); // multiple of 3 for base64 + if (!rand.writeInt32BE) { + return Math.abs(Math.random() * Math.random() * Date.now() | 0).toString() + + Math.abs(Math.random() * Math.random() * Date.now() | 0).toString(); + } + this.sequenceNumber = (this.sequenceNumber + 1) | 0; + rand.writeInt32BE(this.sequenceNumber, 11); + if (crypto.randomBytes) { + this.getRandomBytes(12).copy(rand); + } else { + // not secure for node 0.4 + [0, 4, 8].forEach(function(i) { + rand.writeInt32BE(Math.random() * Math.pow(2, 32) | 0, i); + }); + } + return rand.toString('base64').replace(/\//g, '_').replace(/\+/g, '-'); +}; + +/** + * Export + */ + +exports = module.exports = new Base64Id(); diff --git a/NodjsPartieArduino/node_modules/base64id/package.json b/NodjsPartieArduino/node_modules/base64id/package.json new file mode 100644 index 0000000..64661c3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/base64id/package.json @@ -0,0 +1,89 @@ +{ + "_args": [ + [ + { + "raw": "base64id@1.0.0", + "scope": null, + "escapedName": "base64id", + "name": "base64id", + "rawSpec": "1.0.0", + "spec": "1.0.0", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io" + ] + ], + "_from": "base64id@1.0.0", + "_id": "base64id@1.0.0", + "_inCache": true, + "_location": "/base64id", + "_nodeVersion": "4.4.7", + "_npmOperationalInternal": { + "host": "packages-18-east.internal.npmjs.com", + "tmp": "tmp/base64id-1.0.0.tgz_1480551701495_0.042360062478110194" + }, + "_npmUser": { + "name": "darrachequesne", + "email": "damien.arrachequesne@gmail.com" + }, + "_npmVersion": "2.15.8", + "_phantomChildren": {}, + "_requested": { + "raw": "base64id@1.0.0", + "scope": null, + "escapedName": "base64id", + "name": "base64id", + "rawSpec": "1.0.0", + "spec": "1.0.0", + "type": "version" + }, + "_requiredBy": [ + "/engine.io" + ], + "_resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", + "_shasum": "47688cb99bb6804f0e06d3e763b1c32e57d8e6b6", + "_shrinkwrap": null, + "_spec": "base64id@1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io", + "author": { + "name": "Kristian Faeldt", + "email": "faeldt_kristian@cyberagent.co.jp" + }, + "bugs": { + "url": "https://github.com/faeldt/base64id/issues" + }, + "dependencies": {}, + "description": "Generates a base64 id", + "devDependencies": {}, + "directories": {}, + "dist": { + "shasum": "47688cb99bb6804f0e06d3e763b1c32e57d8e6b6", + "tarball": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz" + }, + "engines": { + "node": ">= 0.4.0" + }, + "gitHead": "3c846f0818ff88b683ad39fde2f8e015ce0f9807", + "homepage": "https://github.com/faeldt/base64id#readme", + "license": "MIT", + "main": "./lib/base64id.js", + "maintainers": [ + { + "name": "darrachequesne", + "email": "damien.arrachequesne@gmail.com" + }, + { + "name": "faeldt_kristian", + "email": "kristian.faeldt@gmail.com" + } + ], + "name": "base64id", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/faeldt/base64id.git" + }, + "scripts": {}, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/better-assert/History.md b/NodjsPartieArduino/node_modules/better-assert/History.md new file mode 100644 index 0000000..cbb579b --- /dev/null +++ b/NodjsPartieArduino/node_modules/better-assert/History.md @@ -0,0 +1,15 @@ + +1.0.0 / 2013-02-03 +================== + + * Stop using the removed magic __stack global getter + +0.1.0 / 2012-10-04 +================== + + * add throwing of AssertionError for test frameworks etc + +0.0.1 / 2010-01-03 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/better-assert/Makefile b/NodjsPartieArduino/node_modules/better-assert/Makefile new file mode 100644 index 0000000..36a3ed7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/better-assert/Makefile @@ -0,0 +1,5 @@ + +test: + @echo "populate me" + +.PHONY: test \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/better-assert/Readme.md b/NodjsPartieArduino/node_modules/better-assert/Readme.md new file mode 100644 index 0000000..d8d3a63 --- /dev/null +++ b/NodjsPartieArduino/node_modules/better-assert/Readme.md @@ -0,0 +1,61 @@ + +# better-assert + + Better c-style assertions using [callsite](https://github.com/visionmedia/callsite) for + self-documenting failure messages. + +## Installation + + $ npm install better-assert + +## Example + + By default assertions are enabled, however the __NO_ASSERT__ environment variable + will deactivate them when truthy. + +```js +var assert = require('better-assert'); + +test(); + +function test() { + var user = { name: 'tobi' }; + assert('tobi' == user.name); + assert('number' == typeof user.age); +} + +AssertionError: 'number' == typeof user.age + at test (/Users/tj/projects/better-assert/example.js:9:3) + at Object. (/Users/tj/projects/better-assert/example.js:4:1) + at Module._compile (module.js:449:26) + at Object.Module._extensions..js (module.js:467:10) + at Module.load (module.js:356:32) + at Function.Module._load (module.js:312:12) + at Module.runMain (module.js:492:10) + at process.startup.processNextTick.process._tickCallback (node.js:244:9) +``` + +## License + +(The MIT License) + +Copyright (c) 2012 TJ Holowaychuk <tj@vision-media.ca> + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/better-assert/example.js b/NodjsPartieArduino/node_modules/better-assert/example.js new file mode 100644 index 0000000..688c29e --- /dev/null +++ b/NodjsPartieArduino/node_modules/better-assert/example.js @@ -0,0 +1,10 @@ + +var assert = require('./'); + +test(); + +function test() { + var user = { name: 'tobi' }; + assert('tobi' == user.name); + assert('number' == typeof user.age); +} \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/better-assert/index.js b/NodjsPartieArduino/node_modules/better-assert/index.js new file mode 100644 index 0000000..fd1c9b7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/better-assert/index.js @@ -0,0 +1,38 @@ +/** + * Module dependencies. + */ + +var AssertionError = require('assert').AssertionError + , callsite = require('callsite') + , fs = require('fs') + +/** + * Expose `assert`. + */ + +module.exports = process.env.NO_ASSERT + ? function(){} + : assert; + +/** + * Assert the given `expr`. + */ + +function assert(expr) { + if (expr) return; + + var stack = callsite(); + var call = stack[1]; + var file = call.getFileName(); + var lineno = call.getLineNumber(); + var src = fs.readFileSync(file, 'utf8'); + var line = src.split('\n')[lineno-1]; + var src = line.match(/assert\((.*)\)/)[1]; + + var err = new AssertionError({ + message: src, + stackStartFunction: stack[0].getFunction() + }); + + throw err; +} diff --git a/NodjsPartieArduino/node_modules/better-assert/package.json b/NodjsPartieArduino/node_modules/better-assert/package.json new file mode 100644 index 0000000..be9c0c3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/better-assert/package.json @@ -0,0 +1,99 @@ +{ + "_args": [ + [ + { + "raw": "better-assert@~1.0.0", + "scope": null, + "escapedName": "better-assert", + "name": "better-assert", + "rawSpec": "~1.0.0", + "spec": ">=1.0.0 <1.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/parseqs" + ] + ], + "_from": "better-assert@>=1.0.0 <1.1.0", + "_id": "better-assert@1.0.2", + "_inCache": true, + "_location": "/better-assert", + "_npmUser": { + "name": "tony_ado", + "email": "coolhzb@163.com" + }, + "_npmVersion": "1.4.9", + "_phantomChildren": {}, + "_requested": { + "raw": "better-assert@~1.0.0", + "scope": null, + "escapedName": "better-assert", + "name": "better-assert", + "rawSpec": "~1.0.0", + "spec": ">=1.0.0 <1.1.0", + "type": "range" + }, + "_requiredBy": [ + "/parseqs", + "/parseuri" + ], + "_resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", + "_shasum": "40866b9e1b9e0b55b481894311e68faffaebc522", + "_shrinkwrap": null, + "_spec": "better-assert@~1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/parseqs", + "author": { + "name": "TJ Holowaychuk", + "email": "tj@vision-media.ca" + }, + "bugs": { + "url": "https://github.com/visionmedia/better-assert/issues" + }, + "contributors": [ + { + "name": "TonyHe", + "email": "coolhzb@163.com" + }, + { + "name": "ForbesLindesay" + } + ], + "dependencies": { + "callsite": "1.0.0" + }, + "description": "Better assertions for node, reporting the expr, filename, lineno etc", + "devDependencies": {}, + "directories": {}, + "dist": { + "shasum": "40866b9e1b9e0b55b481894311e68faffaebc522", + "tarball": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz" + }, + "engines": { + "node": "*" + }, + "homepage": "https://github.com/visionmedia/better-assert", + "keywords": [ + "assert", + "stack", + "trace", + "debug" + ], + "main": "index", + "maintainers": [ + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + { + "name": "tony_ado", + "email": "coolhzb@163.com" + } + ], + "name": "better-assert", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/visionmedia/better-assert.git" + }, + "version": "1.0.2" +} diff --git a/NodjsPartieArduino/node_modules/bindings/README.md b/NodjsPartieArduino/node_modules/bindings/README.md new file mode 100644 index 0000000..a1f0d22 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bindings/README.md @@ -0,0 +1,98 @@ +node-bindings +============= +### Helper module for loading your native module's .node file + +This is a helper module for authors of Node.js native addon modules. +It is basically the "swiss army knife" of `require()`ing your native module's +`.node` file. + +Throughout the course of Node's native addon history, addons have ended up being +compiled in a variety of different places, depending on which build tool and which +version of node was used. To make matters worse, now the _gyp_ build tool can +produce either a _Release_ or _Debug_ build, each being built into different +locations. + +This module checks _all_ the possible locations that a native addon would be built +at, and returns the first one that loads successfully. + + +Installation +------------ + +Install with `npm`: + +``` bash +$ npm install bindings +``` + +Or add it to the `"dependencies"` section of your _package.json_ file. + + +Example +------- + +`require()`ing the proper bindings file for the current node version, platform +and architecture is as simple as: + +``` js +var bindings = require('bindings')('binding.node') + +// Use your bindings defined in your C files +bindings.your_c_function() +``` + + +Nice Error Output +----------------- + +When the `.node` file could not be loaded, `node-bindings` throws an Error with +a nice error message telling you exactly what was tried. You can also check the +`err.tries` Array property. + +``` +Error: Could not load the bindings file. Tried: + → /Users/nrajlich/ref/build/binding.node + → /Users/nrajlich/ref/build/Debug/binding.node + → /Users/nrajlich/ref/build/Release/binding.node + → /Users/nrajlich/ref/out/Debug/binding.node + → /Users/nrajlich/ref/Debug/binding.node + → /Users/nrajlich/ref/out/Release/binding.node + → /Users/nrajlich/ref/Release/binding.node + → /Users/nrajlich/ref/build/default/binding.node + → /Users/nrajlich/ref/compiled/0.8.2/darwin/x64/binding.node + at bindings (/Users/nrajlich/ref/node_modules/bindings/bindings.js:84:13) + at Object. (/Users/nrajlich/ref/lib/ref.js:5:47) + at Module._compile (module.js:449:26) + at Object.Module._extensions..js (module.js:467:10) + at Module.load (module.js:356:32) + at Function.Module._load (module.js:312:12) + ... +``` + +The searching for the `.node` file will originate from the first directory in which has a `package.json` file is found. + +License +------- + +(The MIT License) + +Copyright (c) 2012 Nathan Rajlich <nathan@tootallnate.net> + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/bindings/bindings.js b/NodjsPartieArduino/node_modules/bindings/bindings.js new file mode 100644 index 0000000..9a497bf --- /dev/null +++ b/NodjsPartieArduino/node_modules/bindings/bindings.js @@ -0,0 +1,171 @@ + +/** + * Module dependencies. + */ + +var fs = require('fs') + , path = require('path') + , join = path.join + , dirname = path.dirname + , exists = ((fs.accessSync && function (path) { try { fs.accessSync(path); } catch (e) { return false; } return true; }) + || fs.existsSync || path.existsSync) + , defaults = { + arrow: process.env.NODE_BINDINGS_ARROW || ' → ' + , compiled: process.env.NODE_BINDINGS_COMPILED_DIR || 'compiled' + , platform: process.platform + , arch: process.arch + , version: process.versions.node + , bindings: 'bindings.node' + , try: [ + // node-gyp's linked version in the "build" dir + [ 'module_root', 'build', 'bindings' ] + // node-waf and gyp_addon (a.k.a node-gyp) + , [ 'module_root', 'build', 'Debug', 'bindings' ] + , [ 'module_root', 'build', 'Release', 'bindings' ] + // Debug files, for development (legacy behavior, remove for node v0.9) + , [ 'module_root', 'out', 'Debug', 'bindings' ] + , [ 'module_root', 'Debug', 'bindings' ] + // Release files, but manually compiled (legacy behavior, remove for node v0.9) + , [ 'module_root', 'out', 'Release', 'bindings' ] + , [ 'module_root', 'Release', 'bindings' ] + // Legacy from node-waf, node <= 0.4.x + , [ 'module_root', 'build', 'default', 'bindings' ] + // Production "Release" buildtype binary (meh...) + , [ 'module_root', 'compiled', 'version', 'platform', 'arch', 'bindings' ] + ] + } + +/** + * The main `bindings()` function loads the compiled bindings for a given module. + * It uses V8's Error API to determine the parent filename that this function is + * being invoked from, which is then used to find the root directory. + */ + +function bindings (opts) { + + // Argument surgery + if (typeof opts == 'string') { + opts = { bindings: opts } + } else if (!opts) { + opts = {} + } + + // maps `defaults` onto `opts` object + Object.keys(defaults).map(function(i) { + if (!(i in opts)) opts[i] = defaults[i]; + }); + + // Get the module root + if (!opts.module_root) { + opts.module_root = exports.getRoot(exports.getFileName()) + } + + // Ensure the given bindings name ends with .node + if (path.extname(opts.bindings) != '.node') { + opts.bindings += '.node' + } + + var tries = [] + , i = 0 + , l = opts.try.length + , n + , b + , err + + for (; i* + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/bl/README.md b/NodjsPartieArduino/node_modules/bl/README.md new file mode 100644 index 0000000..9eebd88 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bl/README.md @@ -0,0 +1,208 @@ +# bl *(BufferList)* + +[![Build Status](https://travis-ci.org/rvagg/bl.svg?branch=master)](https://travis-ci.org/rvagg/bl) + +**A Node.js Buffer list collector, reader and streamer thingy.** + +[![NPM](https://nodei.co/npm/bl.png?downloads=true&downloadRank=true)](https://nodei.co/npm/bl/) +[![NPM](https://nodei.co/npm-dl/bl.png?months=6&height=3)](https://nodei.co/npm/bl/) + +**bl** is a storage object for collections of Node Buffers, exposing them with the main Buffer readable API. Also works as a duplex stream so you can collect buffers from a stream that emits them and emit buffers to a stream that consumes them! + +The original buffers are kept intact and copies are only done as necessary. Any reads that require the use of a single original buffer will return a slice of that buffer only (which references the same memory as the original buffer). Reads that span buffers perform concatenation as required and return the results transparently. + +```js +const BufferList = require('bl') + +var bl = new BufferList() +bl.append(new Buffer('abcd')) +bl.append(new Buffer('efg')) +bl.append('hi') // bl will also accept & convert Strings +bl.append(new Buffer('j')) +bl.append(new Buffer([ 0x3, 0x4 ])) + +console.log(bl.length) // 12 + +console.log(bl.slice(0, 10).toString('ascii')) // 'abcdefghij' +console.log(bl.slice(3, 10).toString('ascii')) // 'defghij' +console.log(bl.slice(3, 6).toString('ascii')) // 'def' +console.log(bl.slice(3, 8).toString('ascii')) // 'defgh' +console.log(bl.slice(5, 10).toString('ascii')) // 'fghij' + +// or just use toString! +console.log(bl.toString()) // 'abcdefghij\u0003\u0004' +console.log(bl.toString('ascii', 3, 8)) // 'defgh' +console.log(bl.toString('ascii', 5, 10)) // 'fghij' + +// other standard Buffer readables +console.log(bl.readUInt16BE(10)) // 0x0304 +console.log(bl.readUInt16LE(10)) // 0x0403 +``` + +Give it a callback in the constructor and use it just like **[concat-stream](https://github.com/maxogden/node-concat-stream)**: + +```js +const bl = require('bl') + , fs = require('fs') + +fs.createReadStream('README.md') + .pipe(bl(function (err, data) { // note 'new' isn't strictly required + // `data` is a complete Buffer object containing the full data + console.log(data.toString()) + })) +``` + +Note that when you use the *callback* method like this, the resulting `data` parameter is a concatenation of all `Buffer` objects in the list. If you want to avoid the overhead of this concatenation (in cases of extreme performance consciousness), then avoid the *callback* method and just listen to `'end'` instead, like a standard Stream. + +Or to fetch a URL using [hyperquest](https://github.com/substack/hyperquest) (should work with [request](http://github.com/mikeal/request) and even plain Node http too!): +```js +const hyperquest = require('hyperquest') + , bl = require('bl') + , url = 'https://raw.github.com/rvagg/bl/master/README.md' + +hyperquest(url).pipe(bl(function (err, data) { + console.log(data.toString()) +})) +``` + +Or, use it as a readable stream to recompose a list of Buffers to an output source: + +```js +const BufferList = require('bl') + , fs = require('fs') + +var bl = new BufferList() +bl.append(new Buffer('abcd')) +bl.append(new Buffer('efg')) +bl.append(new Buffer('hi')) +bl.append(new Buffer('j')) + +bl.pipe(fs.createWriteStream('gibberish.txt')) +``` + +## API + + * new BufferList([ callback ]) + * bl.length + * bl.append(buffer) + * bl.get(index) + * bl.slice([ start[, end ] ]) + * bl.shallowSlice([ start[, end ] ]) + * bl.copy(dest, [ destStart, [ srcStart [, srcEnd ] ] ]) + * bl.duplicate() + * bl.consume(bytes) + * bl.toString([encoding, [ start, [ end ]]]) + * bl.readDoubleBE(), bl.readDoubleLE(), bl.readFloatBE(), bl.readFloatLE(), bl.readInt32BE(), bl.readInt32LE(), bl.readUInt32BE(), bl.readUInt32LE(), bl.readInt16BE(), bl.readInt16LE(), bl.readUInt16BE(), bl.readUInt16LE(), bl.readInt8(), bl.readUInt8() + * Streams + +-------------------------------------------------------- + +### new BufferList([ callback | Buffer | Buffer array | BufferList | BufferList array | String ]) +The constructor takes an optional callback, if supplied, the callback will be called with an error argument followed by a reference to the **bl** instance, when `bl.end()` is called (i.e. from a piped stream). This is a convenient method of collecting the entire contents of a stream, particularly when the stream is *chunky*, such as a network stream. + +Normally, no arguments are required for the constructor, but you can initialise the list by passing in a single `Buffer` object or an array of `Buffer` object. + +`new` is not strictly required, if you don't instantiate a new object, it will be done automatically for you so you can create a new instance simply with: + +```js +var bl = require('bl') +var myinstance = bl() + +// equivalent to: + +var BufferList = require('bl') +var myinstance = new BufferList() +``` + +-------------------------------------------------------- + +### bl.length +Get the length of the list in bytes. This is the sum of the lengths of all of the buffers contained in the list, minus any initial offset for a semi-consumed buffer at the beginning. Should accurately represent the total number of bytes that can be read from the list. + +-------------------------------------------------------- + +### bl.append(Buffer | Buffer array | BufferList | BufferList array | String) +`append(buffer)` adds an additional buffer or BufferList to the internal list. `this` is returned so it can be chained. + +-------------------------------------------------------- + +### bl.get(index) +`get()` will return the byte at the specified index. + +-------------------------------------------------------- + +### bl.slice([ start, [ end ] ]) +`slice()` returns a new `Buffer` object containing the bytes within the range specified. Both `start` and `end` are optional and will default to the beginning and end of the list respectively. + +If the requested range spans a single internal buffer then a slice of that buffer will be returned which shares the original memory range of that Buffer. If the range spans multiple buffers then copy operations will likely occur to give you a uniform Buffer. + +-------------------------------------------------------- + +### bl.shallowSlice([ start, [ end ] ]) +`shallowSlice()` returns a new `BufferList` object containing the bytes within the range specified. Both `start` and `end` are optional and will default to the beginning and end of the list respectively. + +No copies will be performed. All buffers in the result share memory with the original list. + +-------------------------------------------------------- + +### bl.copy(dest, [ destStart, [ srcStart [, srcEnd ] ] ]) +`copy()` copies the content of the list in the `dest` buffer, starting from `destStart` and containing the bytes within the range specified with `srcStart` to `srcEnd`. `destStart`, `start` and `end` are optional and will default to the beginning of the `dest` buffer, and the beginning and end of the list respectively. + +-------------------------------------------------------- + +### bl.duplicate() +`duplicate()` performs a **shallow-copy** of the list. The internal Buffers remains the same, so if you change the underlying Buffers, the change will be reflected in both the original and the duplicate. This method is needed if you want to call `consume()` or `pipe()` and still keep the original list.Example: + +```js +var bl = new BufferList() + +bl.append('hello') +bl.append(' world') +bl.append('\n') + +bl.duplicate().pipe(process.stdout, { end: false }) + +console.log(bl.toString()) +``` + +-------------------------------------------------------- + +### bl.consume(bytes) +`consume()` will shift bytes *off the start of the list*. The number of bytes consumed don't need to line up with the sizes of the internal Buffers—initial offsets will be calculated accordingly in order to give you a consistent view of the data. + +-------------------------------------------------------- + +### bl.toString([encoding, [ start, [ end ]]]) +`toString()` will return a string representation of the buffer. The optional `start` and `end` arguments are passed on to `slice()`, while the `encoding` is passed on to `toString()` of the resulting Buffer. See the [Buffer#toString()](http://nodejs.org/docs/latest/api/buffer.html#buffer_buf_tostring_encoding_start_end) documentation for more information. + +-------------------------------------------------------- + +### bl.readDoubleBE(), bl.readDoubleLE(), bl.readFloatBE(), bl.readFloatLE(), bl.readInt32BE(), bl.readInt32LE(), bl.readUInt32BE(), bl.readUInt32LE(), bl.readInt16BE(), bl.readInt16LE(), bl.readUInt16BE(), bl.readUInt16LE(), bl.readInt8(), bl.readUInt8() + +All of the standard byte-reading methods of the `Buffer` interface are implemented and will operate across internal Buffer boundaries transparently. + +See the [Buffer](http://nodejs.org/docs/latest/api/buffer.html) documentation for how these work. + +-------------------------------------------------------- + +### Streams +**bl** is a Node **[Duplex Stream](http://nodejs.org/docs/latest/api/stream.html#stream_class_stream_duplex)**, so it can be read from and written to like a standard Node stream. You can also `pipe()` to and from a **bl** instance. + +-------------------------------------------------------- + +## Contributors + +**bl** is brought to you by the following hackers: + + * [Rod Vagg](https://github.com/rvagg) + * [Matteo Collina](https://github.com/mcollina) + * [Jarett Cruger](https://github.com/jcrugzz) + +======= + + +## License & copyright + +Copyright (c) 2013-2016 bl contributors (listed above). + +bl is licensed under the MIT license. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE.md file for more details. diff --git a/NodjsPartieArduino/node_modules/bl/bl.js b/NodjsPartieArduino/node_modules/bl/bl.js new file mode 100644 index 0000000..db536f3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bl/bl.js @@ -0,0 +1,281 @@ +var DuplexStream = require('readable-stream/duplex') + , util = require('util') + , Buffer = require('safe-buffer').Buffer + + +function BufferList (callback) { + if (!(this instanceof BufferList)) + return new BufferList(callback) + + this._bufs = [] + this.length = 0 + + if (typeof callback == 'function') { + this._callback = callback + + var piper = function piper (err) { + if (this._callback) { + this._callback(err) + this._callback = null + } + }.bind(this) + + this.on('pipe', function onPipe (src) { + src.on('error', piper) + }) + this.on('unpipe', function onUnpipe (src) { + src.removeListener('error', piper) + }) + } else { + this.append(callback) + } + + DuplexStream.call(this) +} + + +util.inherits(BufferList, DuplexStream) + + +BufferList.prototype._offset = function _offset (offset) { + var tot = 0, i = 0, _t + if (offset === 0) return [ 0, 0 ] + for (; i < this._bufs.length; i++) { + _t = tot + this._bufs[i].length + if (offset < _t || i == this._bufs.length - 1) + return [ i, offset - tot ] + tot = _t + } +} + + +BufferList.prototype.append = function append (buf) { + var i = 0 + + if (Buffer.isBuffer(buf)) { + this._appendBuffer(buf); + } else if (Array.isArray(buf)) { + for (; i < buf.length; i++) + this.append(buf[i]) + } else if (buf instanceof BufferList) { + // unwrap argument into individual BufferLists + for (; i < buf._bufs.length; i++) + this.append(buf._bufs[i]) + } else if (buf != null) { + // coerce number arguments to strings, since Buffer(number) does + // uninitialized memory allocation + if (typeof buf == 'number') + buf = buf.toString() + + this._appendBuffer(Buffer.from(buf)); + } + + return this +} + + +BufferList.prototype._appendBuffer = function appendBuffer (buf) { + this._bufs.push(buf) + this.length += buf.length +} + + +BufferList.prototype._write = function _write (buf, encoding, callback) { + this._appendBuffer(buf) + + if (typeof callback == 'function') + callback() +} + + +BufferList.prototype._read = function _read (size) { + if (!this.length) + return this.push(null) + + size = Math.min(size, this.length) + this.push(this.slice(0, size)) + this.consume(size) +} + + +BufferList.prototype.end = function end (chunk) { + DuplexStream.prototype.end.call(this, chunk) + + if (this._callback) { + this._callback(null, this.slice()) + this._callback = null + } +} + + +BufferList.prototype.get = function get (index) { + return this.slice(index, index + 1)[0] +} + + +BufferList.prototype.slice = function slice (start, end) { + if (typeof start == 'number' && start < 0) + start += this.length + if (typeof end == 'number' && end < 0) + end += this.length + return this.copy(null, 0, start, end) +} + + +BufferList.prototype.copy = function copy (dst, dstStart, srcStart, srcEnd) { + if (typeof srcStart != 'number' || srcStart < 0) + srcStart = 0 + if (typeof srcEnd != 'number' || srcEnd > this.length) + srcEnd = this.length + if (srcStart >= this.length) + return dst || Buffer.alloc(0) + if (srcEnd <= 0) + return dst || Buffer.alloc(0) + + var copy = !!dst + , off = this._offset(srcStart) + , len = srcEnd - srcStart + , bytes = len + , bufoff = (copy && dstStart) || 0 + , start = off[1] + , l + , i + + // copy/slice everything + if (srcStart === 0 && srcEnd == this.length) { + if (!copy) { // slice, but full concat if multiple buffers + return this._bufs.length === 1 + ? this._bufs[0] + : Buffer.concat(this._bufs, this.length) + } + + // copy, need to copy individual buffers + for (i = 0; i < this._bufs.length; i++) { + this._bufs[i].copy(dst, bufoff) + bufoff += this._bufs[i].length + } + + return dst + } + + // easy, cheap case where it's a subset of one of the buffers + if (bytes <= this._bufs[off[0]].length - start) { + return copy + ? this._bufs[off[0]].copy(dst, dstStart, start, start + bytes) + : this._bufs[off[0]].slice(start, start + bytes) + } + + if (!copy) // a slice, we need something to copy in to + dst = Buffer.allocUnsafe(len) + + for (i = off[0]; i < this._bufs.length; i++) { + l = this._bufs[i].length - start + + if (bytes > l) { + this._bufs[i].copy(dst, bufoff, start) + } else { + this._bufs[i].copy(dst, bufoff, start, start + bytes) + break + } + + bufoff += l + bytes -= l + + if (start) + start = 0 + } + + return dst +} + +BufferList.prototype.shallowSlice = function shallowSlice (start, end) { + start = start || 0 + end = end || this.length + + if (start < 0) + start += this.length + if (end < 0) + end += this.length + + var startOffset = this._offset(start) + , endOffset = this._offset(end) + , buffers = this._bufs.slice(startOffset[0], endOffset[0] + 1) + + if (endOffset[1] == 0) + buffers.pop() + else + buffers[buffers.length-1] = buffers[buffers.length-1].slice(0, endOffset[1]) + + if (startOffset[1] != 0) + buffers[0] = buffers[0].slice(startOffset[1]) + + return new BufferList(buffers) +} + +BufferList.prototype.toString = function toString (encoding, start, end) { + return this.slice(start, end).toString(encoding) +} + +BufferList.prototype.consume = function consume (bytes) { + while (this._bufs.length) { + if (bytes >= this._bufs[0].length) { + bytes -= this._bufs[0].length + this.length -= this._bufs[0].length + this._bufs.shift() + } else { + this._bufs[0] = this._bufs[0].slice(bytes) + this.length -= bytes + break + } + } + return this +} + + +BufferList.prototype.duplicate = function duplicate () { + var i = 0 + , copy = new BufferList() + + for (; i < this._bufs.length; i++) + copy.append(this._bufs[i]) + + return copy +} + + +BufferList.prototype.destroy = function destroy () { + this._bufs.length = 0 + this.length = 0 + this.push(null) +} + + +;(function () { + var methods = { + 'readDoubleBE' : 8 + , 'readDoubleLE' : 8 + , 'readFloatBE' : 4 + , 'readFloatLE' : 4 + , 'readInt32BE' : 4 + , 'readInt32LE' : 4 + , 'readUInt32BE' : 4 + , 'readUInt32LE' : 4 + , 'readInt16BE' : 2 + , 'readInt16LE' : 2 + , 'readUInt16BE' : 2 + , 'readUInt16LE' : 2 + , 'readInt8' : 1 + , 'readUInt8' : 1 + } + + for (var m in methods) { + (function (m) { + BufferList.prototype[m] = function (offset) { + return this.slice(offset, offset + methods[m])[m](0) + } + }(m)) + } +}()) + + +module.exports = BufferList diff --git a/NodjsPartieArduino/node_modules/bl/package.json b/NodjsPartieArduino/node_modules/bl/package.json new file mode 100644 index 0000000..2bd5235 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bl/package.json @@ -0,0 +1,106 @@ +{ + "_args": [ + [ + { + "raw": "bl@^1.0.0", + "scope": null, + "escapedName": "bl", + "name": "bl", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/tar-stream" + ] + ], + "_from": "bl@>=1.0.0 <2.0.0", + "_hasShrinkwrap": false, + "_id": "bl@1.2.2", + "_inCache": true, + "_location": "/bl", + "_nodeVersion": "8.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/bl_1.2.2_1521669598170_0.7406366214040565" + }, + "_npmUser": { + "name": "matteo.collina", + "email": "hello@matteocollina.com" + }, + "_npmVersion": "5.7.1", + "_phantomChildren": {}, + "_requested": { + "raw": "bl@^1.0.0", + "scope": null, + "escapedName": "bl", + "name": "bl", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/tar-stream" + ], + "_resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "_shasum": "a160911717103c07410cef63ef51b397c025af9c", + "_shrinkwrap": null, + "_spec": "bl@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/tar-stream", + "authors": [ + "Rod Vagg (https://github.com/rvagg)", + "Matteo Collina (https://github.com/mcollina)", + "Jarett Cruger (https://github.com/jcrugzz)" + ], + "bugs": { + "url": "https://github.com/rvagg/bl/issues" + }, + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + }, + "description": "Buffer List: collect buffers and access with a standard readable Buffer interface, streamable too!", + "devDependencies": { + "faucet": "0.0.1", + "hash_file": "~0.1.1", + "tape": "~4.9.0" + }, + "directories": {}, + "dist": { + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "shasum": "a160911717103c07410cef63ef51b397c025af9c", + "tarball": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "fileCount": 7, + "unpackedSize": 38223 + }, + "gitHead": "feaaa4ca34417d7d2e659d25455a73a85ef989c3", + "homepage": "https://github.com/rvagg/bl", + "keywords": [ + "buffer", + "buffers", + "stream", + "awesomesauce" + ], + "license": "MIT", + "main": "bl.js", + "maintainers": [ + { + "name": "matteo.collina", + "email": "hello@matteocollina.com" + }, + { + "name": "rvagg", + "email": "rod@vagg.org" + } + ], + "name": "bl", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/rvagg/bl.git" + }, + "scripts": { + "test": "node test/test.js | faucet" + }, + "version": "1.2.2" +} diff --git a/NodjsPartieArduino/node_modules/bl/test/test.js b/NodjsPartieArduino/node_modules/bl/test/test.js new file mode 100644 index 0000000..e121487 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bl/test/test.js @@ -0,0 +1,702 @@ +var tape = require('tape') + , crypto = require('crypto') + , fs = require('fs') + , hash = require('hash_file') + , BufferList = require('../') + , Buffer = require('safe-buffer').Buffer + + , encodings = + ('hex utf8 utf-8 ascii binary base64' + + (process.browser ? '' : ' ucs2 ucs-2 utf16le utf-16le')).split(' ') + +tape('single bytes from single buffer', function (t) { + var bl = new BufferList() + bl.append(Buffer.from('abcd')) + + t.equal(bl.length, 4) + + t.equal(bl.get(0), 97) + t.equal(bl.get(1), 98) + t.equal(bl.get(2), 99) + t.equal(bl.get(3), 100) + + t.end() +}) + +tape('single bytes from multiple buffers', function (t) { + var bl = new BufferList() + bl.append(Buffer.from('abcd')) + bl.append(Buffer.from('efg')) + bl.append(Buffer.from('hi')) + bl.append(Buffer.from('j')) + + t.equal(bl.length, 10) + + t.equal(bl.get(0), 97) + t.equal(bl.get(1), 98) + t.equal(bl.get(2), 99) + t.equal(bl.get(3), 100) + t.equal(bl.get(4), 101) + t.equal(bl.get(5), 102) + t.equal(bl.get(6), 103) + t.equal(bl.get(7), 104) + t.equal(bl.get(8), 105) + t.equal(bl.get(9), 106) + t.end() +}) + +tape('multi bytes from single buffer', function (t) { + var bl = new BufferList() + bl.append(Buffer.from('abcd')) + + t.equal(bl.length, 4) + + t.equal(bl.slice(0, 4).toString('ascii'), 'abcd') + t.equal(bl.slice(0, 3).toString('ascii'), 'abc') + t.equal(bl.slice(1, 4).toString('ascii'), 'bcd') + t.equal(bl.slice(-4, -1).toString('ascii'), 'abc') + + t.end() +}) + +tape('multi bytes from single buffer (negative indexes)', function (t) { + var bl = new BufferList() + bl.append(Buffer.from('buffer')) + + t.equal(bl.length, 6) + + t.equal(bl.slice(-6, -1).toString('ascii'), 'buffe') + t.equal(bl.slice(-6, -2).toString('ascii'), 'buff') + t.equal(bl.slice(-5, -2).toString('ascii'), 'uff') + + t.end() +}) + +tape('multiple bytes from multiple buffers', function (t) { + var bl = new BufferList() + + bl.append(Buffer.from('abcd')) + bl.append(Buffer.from('efg')) + bl.append(Buffer.from('hi')) + bl.append(Buffer.from('j')) + + t.equal(bl.length, 10) + + t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij') + t.equal(bl.slice(3, 10).toString('ascii'), 'defghij') + t.equal(bl.slice(3, 6).toString('ascii'), 'def') + t.equal(bl.slice(3, 8).toString('ascii'), 'defgh') + t.equal(bl.slice(5, 10).toString('ascii'), 'fghij') + t.equal(bl.slice(-7, -4).toString('ascii'), 'def') + + t.end() +}) + +tape('multiple bytes from multiple buffer lists', function (t) { + var bl = new BufferList() + + bl.append(new BufferList([ Buffer.from('abcd'), Buffer.from('efg') ])) + bl.append(new BufferList([ Buffer.from('hi'), Buffer.from('j') ])) + + t.equal(bl.length, 10) + + t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij') + + t.equal(bl.slice(3, 10).toString('ascii'), 'defghij') + t.equal(bl.slice(3, 6).toString('ascii'), 'def') + t.equal(bl.slice(3, 8).toString('ascii'), 'defgh') + t.equal(bl.slice(5, 10).toString('ascii'), 'fghij') + + t.end() +}) + +// same data as previous test, just using nested constructors +tape('multiple bytes from crazy nested buffer lists', function (t) { + var bl = new BufferList() + + bl.append(new BufferList([ + new BufferList([ + new BufferList(Buffer.from('abc')) + , Buffer.from('d') + , new BufferList(Buffer.from('efg')) + ]) + , new BufferList([ Buffer.from('hi') ]) + , new BufferList(Buffer.from('j')) + ])) + + t.equal(bl.length, 10) + + t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij') + + t.equal(bl.slice(3, 10).toString('ascii'), 'defghij') + t.equal(bl.slice(3, 6).toString('ascii'), 'def') + t.equal(bl.slice(3, 8).toString('ascii'), 'defgh') + t.equal(bl.slice(5, 10).toString('ascii'), 'fghij') + + t.end() +}) + +tape('append accepts arrays of Buffers', function (t) { + var bl = new BufferList() + bl.append(Buffer.from('abc')) + bl.append([ Buffer.from('def') ]) + bl.append([ Buffer.from('ghi'), Buffer.from('jkl') ]) + bl.append([ Buffer.from('mnop'), Buffer.from('qrstu'), Buffer.from('vwxyz') ]) + t.equal(bl.length, 26) + t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz') + t.end() +}) + +tape('append accepts arrays of BufferLists', function (t) { + var bl = new BufferList() + bl.append(Buffer.from('abc')) + bl.append([ new BufferList('def') ]) + bl.append(new BufferList([ Buffer.from('ghi'), new BufferList('jkl') ])) + bl.append([ Buffer.from('mnop'), new BufferList([ Buffer.from('qrstu'), Buffer.from('vwxyz') ]) ]) + t.equal(bl.length, 26) + t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz') + t.end() +}) + +tape('append chainable', function (t) { + var bl = new BufferList() + t.ok(bl.append(Buffer.from('abcd')) === bl) + t.ok(bl.append([ Buffer.from('abcd') ]) === bl) + t.ok(bl.append(new BufferList(Buffer.from('abcd'))) === bl) + t.ok(bl.append([ new BufferList(Buffer.from('abcd')) ]) === bl) + t.end() +}) + +tape('append chainable (test results)', function (t) { + var bl = new BufferList('abc') + .append([ new BufferList('def') ]) + .append(new BufferList([ Buffer.from('ghi'), new BufferList('jkl') ])) + .append([ Buffer.from('mnop'), new BufferList([ Buffer.from('qrstu'), Buffer.from('vwxyz') ]) ]) + + t.equal(bl.length, 26) + t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz') + t.end() +}) + +tape('consuming from multiple buffers', function (t) { + var bl = new BufferList() + + bl.append(Buffer.from('abcd')) + bl.append(Buffer.from('efg')) + bl.append(Buffer.from('hi')) + bl.append(Buffer.from('j')) + + t.equal(bl.length, 10) + + t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij') + + bl.consume(3) + t.equal(bl.length, 7) + t.equal(bl.slice(0, 7).toString('ascii'), 'defghij') + + bl.consume(2) + t.equal(bl.length, 5) + t.equal(bl.slice(0, 5).toString('ascii'), 'fghij') + + bl.consume(1) + t.equal(bl.length, 4) + t.equal(bl.slice(0, 4).toString('ascii'), 'ghij') + + bl.consume(1) + t.equal(bl.length, 3) + t.equal(bl.slice(0, 3).toString('ascii'), 'hij') + + bl.consume(2) + t.equal(bl.length, 1) + t.equal(bl.slice(0, 1).toString('ascii'), 'j') + + t.end() +}) + +tape('complete consumption', function (t) { + var bl = new BufferList() + + bl.append(Buffer.from('a')) + bl.append(Buffer.from('b')) + + bl.consume(2) + + t.equal(bl.length, 0) + t.equal(bl._bufs.length, 0) + + t.end() +}) + +tape('test readUInt8 / readInt8', function (t) { + var buf1 = Buffer.alloc(1) + , buf2 = Buffer.alloc(3) + , buf3 = Buffer.alloc(3) + , bl = new BufferList() + + buf2[1] = 0x3 + buf2[2] = 0x4 + buf3[0] = 0x23 + buf3[1] = 0x42 + + bl.append(buf1) + bl.append(buf2) + bl.append(buf3) + + t.equal(bl.readUInt8(2), 0x3) + t.equal(bl.readInt8(2), 0x3) + t.equal(bl.readUInt8(3), 0x4) + t.equal(bl.readInt8(3), 0x4) + t.equal(bl.readUInt8(4), 0x23) + t.equal(bl.readInt8(4), 0x23) + t.equal(bl.readUInt8(5), 0x42) + t.equal(bl.readInt8(5), 0x42) + t.end() +}) + +tape('test readUInt16LE / readUInt16BE / readInt16LE / readInt16BE', function (t) { + var buf1 = Buffer.alloc(1) + , buf2 = Buffer.alloc(3) + , buf3 = Buffer.alloc(3) + , bl = new BufferList() + + buf2[1] = 0x3 + buf2[2] = 0x4 + buf3[0] = 0x23 + buf3[1] = 0x42 + + bl.append(buf1) + bl.append(buf2) + bl.append(buf3) + + t.equal(bl.readUInt16BE(2), 0x0304) + t.equal(bl.readUInt16LE(2), 0x0403) + t.equal(bl.readInt16BE(2), 0x0304) + t.equal(bl.readInt16LE(2), 0x0403) + t.equal(bl.readUInt16BE(3), 0x0423) + t.equal(bl.readUInt16LE(3), 0x2304) + t.equal(bl.readInt16BE(3), 0x0423) + t.equal(bl.readInt16LE(3), 0x2304) + t.equal(bl.readUInt16BE(4), 0x2342) + t.equal(bl.readUInt16LE(4), 0x4223) + t.equal(bl.readInt16BE(4), 0x2342) + t.equal(bl.readInt16LE(4), 0x4223) + t.end() +}) + +tape('test readUInt32LE / readUInt32BE / readInt32LE / readInt32BE', function (t) { + var buf1 = Buffer.alloc(1) + , buf2 = Buffer.alloc(3) + , buf3 = Buffer.alloc(3) + , bl = new BufferList() + + buf2[1] = 0x3 + buf2[2] = 0x4 + buf3[0] = 0x23 + buf3[1] = 0x42 + + bl.append(buf1) + bl.append(buf2) + bl.append(buf3) + + t.equal(bl.readUInt32BE(2), 0x03042342) + t.equal(bl.readUInt32LE(2), 0x42230403) + t.equal(bl.readInt32BE(2), 0x03042342) + t.equal(bl.readInt32LE(2), 0x42230403) + t.end() +}) + +tape('test readFloatLE / readFloatBE', function (t) { + var buf1 = Buffer.alloc(1) + , buf2 = Buffer.alloc(3) + , buf3 = Buffer.alloc(3) + , bl = new BufferList() + + buf2[1] = 0x00 + buf2[2] = 0x00 + buf3[0] = 0x80 + buf3[1] = 0x3f + + bl.append(buf1) + bl.append(buf2) + bl.append(buf3) + + t.equal(bl.readFloatLE(2), 0x01) + t.end() +}) + +tape('test readDoubleLE / readDoubleBE', function (t) { + var buf1 = Buffer.alloc(1) + , buf2 = Buffer.alloc(3) + , buf3 = Buffer.alloc(10) + , bl = new BufferList() + + buf2[1] = 0x55 + buf2[2] = 0x55 + buf3[0] = 0x55 + buf3[1] = 0x55 + buf3[2] = 0x55 + buf3[3] = 0x55 + buf3[4] = 0xd5 + buf3[5] = 0x3f + + bl.append(buf1) + bl.append(buf2) + bl.append(buf3) + + t.equal(bl.readDoubleLE(2), 0.3333333333333333) + t.end() +}) + +tape('test toString', function (t) { + var bl = new BufferList() + + bl.append(Buffer.from('abcd')) + bl.append(Buffer.from('efg')) + bl.append(Buffer.from('hi')) + bl.append(Buffer.from('j')) + + t.equal(bl.toString('ascii', 0, 10), 'abcdefghij') + t.equal(bl.toString('ascii', 3, 10), 'defghij') + t.equal(bl.toString('ascii', 3, 6), 'def') + t.equal(bl.toString('ascii', 3, 8), 'defgh') + t.equal(bl.toString('ascii', 5, 10), 'fghij') + + t.end() +}) + +tape('test toString encoding', function (t) { + var bl = new BufferList() + , b = Buffer.from('abcdefghij\xff\x00') + + bl.append(Buffer.from('abcd')) + bl.append(Buffer.from('efg')) + bl.append(Buffer.from('hi')) + bl.append(Buffer.from('j')) + bl.append(Buffer.from('\xff\x00')) + + encodings.forEach(function (enc) { + t.equal(bl.toString(enc), b.toString(enc), enc) + }) + + t.end() +}) + +!process.browser && tape('test stream', function (t) { + var random = crypto.randomBytes(65534) + , rndhash = hash(random, 'md5') + , md5sum = crypto.createHash('md5') + , bl = new BufferList(function (err, buf) { + t.ok(Buffer.isBuffer(buf)) + t.ok(err === null) + t.equal(rndhash, hash(bl.slice(), 'md5')) + t.equal(rndhash, hash(buf, 'md5')) + + bl.pipe(fs.createWriteStream('/tmp/bl_test_rnd_out.dat')) + .on('close', function () { + var s = fs.createReadStream('/tmp/bl_test_rnd_out.dat') + s.on('data', md5sum.update.bind(md5sum)) + s.on('end', function() { + t.equal(rndhash, md5sum.digest('hex'), 'woohoo! correct hash!') + t.end() + }) + }) + + }) + + fs.writeFileSync('/tmp/bl_test_rnd.dat', random) + fs.createReadStream('/tmp/bl_test_rnd.dat').pipe(bl) +}) + +tape('instantiation with Buffer', function (t) { + var buf = crypto.randomBytes(1024) + , buf2 = crypto.randomBytes(1024) + , b = BufferList(buf) + + t.equal(buf.toString('hex'), b.slice().toString('hex'), 'same buffer') + b = BufferList([ buf, buf2 ]) + t.equal(b.slice().toString('hex'), Buffer.concat([ buf, buf2 ]).toString('hex'), 'same buffer') + t.end() +}) + +tape('test String appendage', function (t) { + var bl = new BufferList() + , b = Buffer.from('abcdefghij\xff\x00') + + bl.append('abcd') + bl.append('efg') + bl.append('hi') + bl.append('j') + bl.append('\xff\x00') + + encodings.forEach(function (enc) { + t.equal(bl.toString(enc), b.toString(enc)) + }) + + t.end() +}) + +tape('test Number appendage', function (t) { + var bl = new BufferList() + , b = Buffer.from('1234567890') + + bl.append(1234) + bl.append(567) + bl.append(89) + bl.append(0) + + encodings.forEach(function (enc) { + t.equal(bl.toString(enc), b.toString(enc)) + }) + + t.end() +}) + +tape('write nothing, should get empty buffer', function (t) { + t.plan(3) + BufferList(function (err, data) { + t.notOk(err, 'no error') + t.ok(Buffer.isBuffer(data), 'got a buffer') + t.equal(0, data.length, 'got a zero-length buffer') + t.end() + }).end() +}) + +tape('unicode string', function (t) { + t.plan(2) + var inp1 = '\u2600' + , inp2 = '\u2603' + , exp = inp1 + ' and ' + inp2 + , bl = BufferList() + bl.write(inp1) + bl.write(' and ') + bl.write(inp2) + t.equal(exp, bl.toString()) + t.equal(Buffer.from(exp).toString('hex'), bl.toString('hex')) +}) + +tape('should emit finish', function (t) { + var source = BufferList() + , dest = BufferList() + + source.write('hello') + source.pipe(dest) + + dest.on('finish', function () { + t.equal(dest.toString('utf8'), 'hello') + t.end() + }) +}) + +tape('basic copy', function (t) { + var buf = crypto.randomBytes(1024) + , buf2 = Buffer.alloc(1024) + , b = BufferList(buf) + + b.copy(buf2) + t.equal(b.slice().toString('hex'), buf2.toString('hex'), 'same buffer') + t.end() +}) + +tape('copy after many appends', function (t) { + var buf = crypto.randomBytes(512) + , buf2 = Buffer.alloc(1024) + , b = BufferList(buf) + + b.append(buf) + b.copy(buf2) + t.equal(b.slice().toString('hex'), buf2.toString('hex'), 'same buffer') + t.end() +}) + +tape('copy at a precise position', function (t) { + var buf = crypto.randomBytes(1004) + , buf2 = Buffer.alloc(1024) + , b = BufferList(buf) + + b.copy(buf2, 20) + t.equal(b.slice().toString('hex'), buf2.slice(20).toString('hex'), 'same buffer') + t.end() +}) + +tape('copy starting from a precise location', function (t) { + var buf = crypto.randomBytes(10) + , buf2 = Buffer.alloc(5) + , b = BufferList(buf) + + b.copy(buf2, 0, 5) + t.equal(b.slice(5).toString('hex'), buf2.toString('hex'), 'same buffer') + t.end() +}) + +tape('copy in an interval', function (t) { + var rnd = crypto.randomBytes(10) + , b = BufferList(rnd) // put the random bytes there + , actual = Buffer.alloc(3) + , expected = Buffer.alloc(3) + + rnd.copy(expected, 0, 5, 8) + b.copy(actual, 0, 5, 8) + + t.equal(actual.toString('hex'), expected.toString('hex'), 'same buffer') + t.end() +}) + +tape('copy an interval between two buffers', function (t) { + var buf = crypto.randomBytes(10) + , buf2 = Buffer.alloc(10) + , b = BufferList(buf) + + b.append(buf) + b.copy(buf2, 0, 5, 15) + + t.equal(b.slice(5, 15).toString('hex'), buf2.toString('hex'), 'same buffer') + t.end() +}) + +tape('shallow slice across buffer boundaries', function (t) { + var bl = new BufferList(['First', 'Second', 'Third']) + + t.equal(bl.shallowSlice(3, 13).toString(), 'stSecondTh') + t.end() +}) + +tape('shallow slice within single buffer', function (t) { + t.plan(2) + var bl = new BufferList(['First', 'Second', 'Third']) + + t.equal(bl.shallowSlice(5, 10).toString(), 'Secon') + t.equal(bl.shallowSlice(7, 10).toString(), 'con') + t.end() +}) + +tape('shallow slice single buffer', function (t) { + t.plan(3) + var bl = new BufferList(['First', 'Second', 'Third']) + + t.equal(bl.shallowSlice(0, 5).toString(), 'First') + t.equal(bl.shallowSlice(5, 11).toString(), 'Second') + t.equal(bl.shallowSlice(11, 16).toString(), 'Third') +}) + +tape('shallow slice with negative or omitted indices', function (t) { + t.plan(4) + var bl = new BufferList(['First', 'Second', 'Third']) + + t.equal(bl.shallowSlice().toString(), 'FirstSecondThird') + t.equal(bl.shallowSlice(5).toString(), 'SecondThird') + t.equal(bl.shallowSlice(5, -3).toString(), 'SecondTh') + t.equal(bl.shallowSlice(-8).toString(), 'ondThird') +}) + +tape('shallow slice does not make a copy', function (t) { + t.plan(1) + var buffers = [Buffer.from('First'), Buffer.from('Second'), Buffer.from('Third')] + var bl = (new BufferList(buffers)).shallowSlice(5, -3) + + buffers[1].fill('h') + buffers[2].fill('h') + + t.equal(bl.toString(), 'hhhhhhhh') +}) + +tape('duplicate', function (t) { + t.plan(2) + + var bl = new BufferList('abcdefghij\xff\x00') + , dup = bl.duplicate() + + t.equal(bl.prototype, dup.prototype) + t.equal(bl.toString('hex'), dup.toString('hex')) +}) + +tape('destroy no pipe', function (t) { + t.plan(2) + + var bl = new BufferList('alsdkfja;lsdkfja;lsdk') + bl.destroy() + + t.equal(bl._bufs.length, 0) + t.equal(bl.length, 0) +}) + +!process.browser && tape('destroy with pipe before read end', function (t) { + t.plan(2) + + var bl = new BufferList() + fs.createReadStream(__dirname + '/test.js') + .pipe(bl) + + bl.destroy() + + t.equal(bl._bufs.length, 0) + t.equal(bl.length, 0) + +}) + +!process.browser && tape('destroy with pipe before read end with race', function (t) { + t.plan(2) + + var bl = new BufferList() + fs.createReadStream(__dirname + '/test.js') + .pipe(bl) + + setTimeout(function () { + bl.destroy() + setTimeout(function () { + t.equal(bl._bufs.length, 0) + t.equal(bl.length, 0) + }, 500) + }, 500) +}) + +!process.browser && tape('destroy with pipe after read end', function (t) { + t.plan(2) + + var bl = new BufferList() + fs.createReadStream(__dirname + '/test.js') + .on('end', onEnd) + .pipe(bl) + + function onEnd () { + bl.destroy() + + t.equal(bl._bufs.length, 0) + t.equal(bl.length, 0) + } +}) + +!process.browser && tape('destroy with pipe while writing to a destination', function (t) { + t.plan(4) + + var bl = new BufferList() + , ds = new BufferList() + + fs.createReadStream(__dirname + '/test.js') + .on('end', onEnd) + .pipe(bl) + + function onEnd () { + bl.pipe(ds) + + setTimeout(function () { + bl.destroy() + + t.equals(bl._bufs.length, 0) + t.equals(bl.length, 0) + + ds.destroy() + + t.equals(bl._bufs.length, 0) + t.equals(bl.length, 0) + + }, 100) + } +}) + +!process.browser && tape('handle error', function (t) { + t.plan(2) + fs.createReadStream('/does/not/exist').pipe(BufferList(function (err, data) { + t.ok(err instanceof Error, 'has error') + t.notOk(data, 'no data') + })) +}) diff --git a/NodjsPartieArduino/node_modules/blob/LICENSE b/NodjsPartieArduino/node_modules/blob/LICENSE new file mode 100644 index 0000000..f1d8aa2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (C) 2014 Rase- + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/blob/Makefile b/NodjsPartieArduino/node_modules/blob/Makefile new file mode 100644 index 0000000..7d9601a --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/Makefile @@ -0,0 +1,14 @@ +REPORTER = dot + +build: blob.js + +blob.js: + @./node_modules/.bin/browserify --standalone blob index.js > blob.js + +test: + @./node_modules/.bin/zuul -- test/index.js + +clean: + rm blob.js + +.PHONY: test blob.js diff --git a/NodjsPartieArduino/node_modules/blob/README.md b/NodjsPartieArduino/node_modules/blob/README.md new file mode 100644 index 0000000..1c9e846 --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/README.md @@ -0,0 +1,21 @@ +# Blob + +A cross-browser `Blob` that falls back to `BlobBuilder` when appropriate. +If neither is available, it exports `undefined`. + +## Installation + +``` bash +$ npm install blob +``` + +## Example + +``` js +var Blob = require('blob'); +var b = new Blob(['hi', 'constructing', 'a', 'blob']); +``` + +## License + +MIT diff --git a/NodjsPartieArduino/node_modules/blob/component.json b/NodjsPartieArduino/node_modules/blob/component.json new file mode 100644 index 0000000..7bee8d6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/component.json @@ -0,0 +1,11 @@ +{ + "name": "blob", + "repo": "webmodules/blob", + "description": "Abstracts out Blob and uses BlobBulder in cases where it is supported with any vendor prefix.", + "version": "0.0.4", + "license": "MIT", + "dependencies": {}, + "scripts": [ + "index.js" + ] +} diff --git a/NodjsPartieArduino/node_modules/blob/index.js b/NodjsPartieArduino/node_modules/blob/index.js new file mode 100644 index 0000000..9168826 --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/index.js @@ -0,0 +1,100 @@ +/** + * Create a blob builder even when vendor prefixes exist + */ + +var BlobBuilder = typeof BlobBuilder !== 'undefined' ? BlobBuilder : + typeof WebKitBlobBuilder !== 'undefined' ? WebKitBlobBuilder : + typeof MSBlobBuilder !== 'undefined' ? MSBlobBuilder : + typeof MozBlobBuilder !== 'undefined' ? MozBlobBuilder : + false; + +/** + * Check if Blob constructor is supported + */ + +var blobSupported = (function() { + try { + var a = new Blob(['hi']); + return a.size === 2; + } catch(e) { + return false; + } +})(); + +/** + * Check if Blob constructor supports ArrayBufferViews + * Fails in Safari 6, so we need to map to ArrayBuffers there. + */ + +var blobSupportsArrayBufferView = blobSupported && (function() { + try { + var b = new Blob([new Uint8Array([1,2])]); + return b.size === 2; + } catch(e) { + return false; + } +})(); + +/** + * Check if BlobBuilder is supported + */ + +var blobBuilderSupported = BlobBuilder + && BlobBuilder.prototype.append + && BlobBuilder.prototype.getBlob; + +/** + * Helper function that maps ArrayBufferViews to ArrayBuffers + * Used by BlobBuilder constructor and old browsers that didn't + * support it in the Blob constructor. + */ + +function mapArrayBufferViews(ary) { + return ary.map(function(chunk) { + if (chunk.buffer instanceof ArrayBuffer) { + var buf = chunk.buffer; + + // if this is a subarray, make a copy so we only + // include the subarray region from the underlying buffer + if (chunk.byteLength !== buf.byteLength) { + var copy = new Uint8Array(chunk.byteLength); + copy.set(new Uint8Array(buf, chunk.byteOffset, chunk.byteLength)); + buf = copy.buffer; + } + + return buf; + } + + return chunk; + }); +} + +function BlobBuilderConstructor(ary, options) { + options = options || {}; + + var bb = new BlobBuilder(); + mapArrayBufferViews(ary).forEach(function(part) { + bb.append(part); + }); + + return (options.type) ? bb.getBlob(options.type) : bb.getBlob(); +}; + +function BlobConstructor(ary, options) { + return new Blob(mapArrayBufferViews(ary), options || {}); +}; + +if (typeof Blob !== 'undefined') { + BlobBuilderConstructor.prototype = Blob.prototype; + BlobConstructor.prototype = Blob.prototype; +} + +module.exports = (function() { + if (blobSupported) { + return blobSupportsArrayBufferView ? Blob : BlobConstructor; + } else if (blobBuilderSupported) { + return BlobBuilderConstructor; + } else { + return undefined; + } +})(); diff --git a/NodjsPartieArduino/node_modules/blob/package.json b/NodjsPartieArduino/node_modules/blob/package.json new file mode 100644 index 0000000..3fc4378 --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/package.json @@ -0,0 +1,93 @@ +{ + "_args": [ + [ + { + "raw": "blob@0.0.5", + "scope": null, + "escapedName": "blob", + "name": "blob", + "rawSpec": "0.0.5", + "spec": "0.0.5", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser" + ] + ], + "_from": "blob@0.0.5", + "_hasShrinkwrap": false, + "_id": "blob@0.0.5", + "_inCache": true, + "_location": "/blob", + "_nodeVersion": "8.11.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/blob_0.0.5_1541014010809_0.6329557797882384" + }, + "_npmUser": { + "name": "amitport", + "email": "amit.portnoy@gmail.com" + }, + "_npmVersion": "6.2.0", + "_phantomChildren": {}, + "_requested": { + "raw": "blob@0.0.5", + "scope": null, + "escapedName": "blob", + "name": "blob", + "rawSpec": "0.0.5", + "spec": "0.0.5", + "type": "version" + }, + "_requiredBy": [ + "/engine.io-parser" + ], + "_resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "_shasum": "d680eeef25f8cd91ad533f5b01eed48e64caf683", + "_shrinkwrap": null, + "_spec": "blob@0.0.5", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-parser", + "bugs": { + "url": "https://github.com/webmodules/blob/issues" + }, + "dependencies": {}, + "description": "Abstracts out Blob and uses BlobBulder in cases where it is supported with any vendor prefix.", + "devDependencies": { + "browserify": "4.2.3", + "expect.js": "0.2.0", + "mocha": "1.17.1", + "zuul": "1.10.2" + }, + "directories": {}, + "dist": { + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "shasum": "d680eeef25f8cd91ad533f5b01eed48e64caf683", + "tarball": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "fileCount": 15, + "unpackedSize": 30611, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2gH7CRA9TVsSAnZWagAA2+8QAIOaj9HrrWfIC+FLmbuo\nJB+vwGPeRC0erCaddsVU4q1B122bdEheKNFPPfNrXTMbHMHASoFoOahrUNiY\nPqj/xRYNgirIyFCpzc9wjk2hLJkNY1C2hftpUwWDdfv1z6ygfIAZXqWkVy42\nqgVloGzU/4WVuL5mOVv6CA8XjovnTkuetDjyR9quBGeNqHBXdXnhs9DvYL1R\npa8IBZa4yqE+MPqJcRwDVqw3knFnQwprrcseWCXg5LFh474ufRIgLIFN/vLz\nf9OgKfUcot8suI1UtRcEFDABBTacQTJGtAPji1XD48tHPKQ401ELU0ZJ6p92\nS5BH4e0bqo6HvTApAs7UoEFDVHASb8Jo1VKXf9BfcO0mJ4g+fSIDuLzxkZoO\nmehRRi07MBF3JvjXKpylgKdCdKwh4lkqBuM1TUCY5WUti/10UGfFNl+jiqDt\nH8B5h7CqXchycCfRBno5v3XzRKZDhZIaaVv7CJVUPyAuAQ6wCIwVQTLrYqci\nXcbmwcEnk1R5JCVDrMEz2Vr3qWR7ANf5tZSk+24M3Nsn23RHEb6Pnp7Bw/TC\nZBd5ftkwSuh3/Vr3BdIoS9chPzqYhXjL+5ejVhjHRT+8KEtHR/C/aFIgEmka\nbskmaWN0DQXGWFUsmBrT97OW8oi46L/2pi/EPeysR810gpfogOSOFcMsZrUB\nMWv6\r\n=SKon\r\n-----END PGP SIGNATURE-----\r\n" + }, + "gitHead": "90ef5685dcd14000ce7a54a005d596633c2726b9", + "homepage": "https://github.com/webmodules/blob", + "license": "MIT", + "maintainers": [ + { + "name": "amitport", + "email": "amit.portnoy@gmail.com" + }, + { + "name": "rase-", + "email": "tonykovanen@hotmail.com" + } + ], + "name": "blob", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/webmodules/blob.git" + }, + "scripts": { + "test": "make test" + }, + "version": "0.0.5" +} diff --git a/NodjsPartieArduino/node_modules/blob/test/index.js b/NodjsPartieArduino/node_modules/blob/test/index.js new file mode 100644 index 0000000..c294bbd --- /dev/null +++ b/NodjsPartieArduino/node_modules/blob/test/index.js @@ -0,0 +1,100 @@ +var Blob = require('../'); +var expect = require('expect.js'); + +describe('blob', function() { + if (!Blob) { + it('should not have a blob or a blob builder in the global namespace, or blob should not be a constructor function if the module exports false', function() { + try { + var ab = (new Uint8Array(5)).buffer; + global.Blob([ab]); + expect().fail('Blob shouldn\'t be constructable'); + } catch (e) {} + + var BlobBuilder = global.BlobBuilder + || global.WebKitBlobBuilder + || global.MSBlobBuilder + || global.MozBlobBuilder; + expect(BlobBuilder).to.be(undefined); + }); + } else { + it('should encode a proper sized blob when given a string argument', function() { + var b = new Blob(['hi']); + expect(b.size).to.be(2); + }); + + it('should encode a blob with proper size when given two strings as arguments', function() { + var b = new Blob(['hi', 'hello']); + expect(b.size).to.be(7); + }); + + it('should encode arraybuffers with right content', function(done) { + var ary = new Uint8Array(5); + for (var i = 0; i < 5; i++) ary[i] = i; + var b = new Blob([ary.buffer]); + var fr = new FileReader(); + fr.onload = function() { + var newAry = new Uint8Array(this.result); + for (var i = 0; i < 5; i++) expect(newAry[i]).to.be(i); + done(); + }; + fr.readAsArrayBuffer(b); + }); + + it('should encode typed arrays with right content', function(done) { + var ary = new Uint8Array(5); + for (var i = 0; i < 5; i++) ary[i] = i; + var b = new Blob([ary]); + var fr = new FileReader(); + fr.onload = function() { + var newAry = new Uint8Array(this.result); + for (var i = 0; i < 5; i++) expect(newAry[i]).to.be(i); + done(); + }; + fr.readAsArrayBuffer(b); + }); + + it('should encode sliced typed arrays with right content', function(done) { + var ary = new Uint8Array(5); + for (var i = 0; i < 5; i++) ary[i] = i; + var b = new Blob([ary.subarray(2)]); + var fr = new FileReader(); + fr.onload = function() { + var newAry = new Uint8Array(this.result); + for (var i = 0; i < 3; i++) expect(newAry[i]).to.be(i + 2); + done(); + }; + fr.readAsArrayBuffer(b); + }); + + it('should encode with blobs', function(done) { + var ary = new Uint8Array(5); + for (var i = 0; i < 5; i++) ary[i] = i; + var b = new Blob([new Blob([ary.buffer])]); + var fr = new FileReader(); + fr.onload = function() { + var newAry = new Uint8Array(this.result); + for (var i = 0; i < 5; i++) expect(newAry[i]).to.be(i); + done(); + }; + fr.readAsArrayBuffer(b); + }); + + it('should enode mixed contents to right size', function() { + var ary = new Uint8Array(5); + for (var i = 0; i < 5; i++) ary[i] = i; + var b = new Blob([ary.buffer, 'hello']); + expect(b.size).to.be(10); + }); + + it('should accept mime type', function() { + var b = new Blob(['hi', 'hello'], { type: 'text/html' }); + expect(b.type).to.be('text/html'); + }); + + it('should be an instance of constructor', function() { + var b = new Blob(['hi']); + expect(b).to.be.a(Blob); + expect(b).to.be.a(global.Blob); + }); + } +}); diff --git a/NodjsPartieArduino/node_modules/body-parser/HISTORY.md b/NodjsPartieArduino/node_modules/body-parser/HISTORY.md new file mode 100644 index 0000000..d8152cc --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/HISTORY.md @@ -0,0 +1,588 @@ +1.18.3 / 2018-05-14 +=================== + + * Fix stack trace for strict json parse error + * deps: depd@~1.1.2 + - perf: remove argument reassignment + * deps: http-errors@~1.6.3 + - deps: depd@~1.1.2 + - deps: setprototypeof@1.1.0 + - deps: statuses@'>= 1.3.1 < 2' + * deps: iconv-lite@0.4.23 + - Fix loading encoding with year appended + - Fix deprecation warnings on Node.js 10+ + * deps: qs@6.5.2 + * deps: raw-body@2.3.3 + - deps: http-errors@1.6.3 + - deps: iconv-lite@0.4.23 + * deps: type-is@~1.6.16 + - deps: mime-types@~2.1.18 + +1.18.2 / 2017-09-22 +=================== + + * deps: debug@2.6.9 + * perf: remove argument reassignment + +1.18.1 / 2017-09-12 +=================== + + * deps: content-type@~1.0.4 + - perf: remove argument reassignment + - perf: skip parameter parsing when no parameters + * deps: iconv-lite@0.4.19 + - Fix ISO-8859-1 regression + - Update Windows-1255 + * deps: qs@6.5.1 + - Fix parsing & compacting very deep objects + * deps: raw-body@2.3.2 + - deps: iconv-lite@0.4.19 + +1.18.0 / 2017-09-08 +=================== + + * Fix JSON strict violation error to match native parse error + * Include the `body` property on verify errors + * Include the `type` property on all generated errors + * Use `http-errors` to set status code on errors + * deps: bytes@3.0.0 + * deps: debug@2.6.8 + * deps: depd@~1.1.1 + - Remove unnecessary `Buffer` loading + * deps: http-errors@~1.6.2 + - deps: depd@1.1.1 + * deps: iconv-lite@0.4.18 + - Add support for React Native + - Add a warning if not loaded as utf-8 + - Fix CESU-8 decoding in Node.js 8 + - Improve speed of ISO-8859-1 encoding + * deps: qs@6.5.0 + * deps: raw-body@2.3.1 + - Use `http-errors` for standard emitted errors + - deps: bytes@3.0.0 + - deps: iconv-lite@0.4.18 + - perf: skip buffer decoding on overage chunk + * perf: prevent internal `throw` when missing charset + +1.17.2 / 2017-05-17 +=================== + + * deps: debug@2.6.7 + - Fix `DEBUG_MAX_ARRAY_LENGTH` + - deps: ms@2.0.0 + * deps: type-is@~1.6.15 + - deps: mime-types@~2.1.15 + +1.17.1 / 2017-03-06 +=================== + + * deps: qs@6.4.0 + - Fix regression parsing keys starting with `[` + +1.17.0 / 2017-03-01 +=================== + + * deps: http-errors@~1.6.1 + - Make `message` property enumerable for `HttpError`s + - deps: setprototypeof@1.0.3 + * deps: qs@6.3.1 + - Fix compacting nested arrays + +1.16.1 / 2017-02-10 +=================== + + * deps: debug@2.6.1 + - Fix deprecation messages in WebStorm and other editors + - Undeprecate `DEBUG_FD` set to `1` or `2` + +1.16.0 / 2017-01-17 +=================== + + * deps: debug@2.6.0 + - Allow colors in workers + - Deprecated `DEBUG_FD` environment variable + - Fix error when running under React Native + - Use same color for same namespace + - deps: ms@0.7.2 + * deps: http-errors@~1.5.1 + - deps: inherits@2.0.3 + - deps: setprototypeof@1.0.2 + - deps: statuses@'>= 1.3.1 < 2' + * deps: iconv-lite@0.4.15 + - Added encoding MS-31J + - Added encoding MS-932 + - Added encoding MS-936 + - Added encoding MS-949 + - Added encoding MS-950 + - Fix GBK/GB18030 handling of Euro character + * deps: qs@6.2.1 + - Fix array parsing from skipping empty values + * deps: raw-body@~2.2.0 + - deps: iconv-lite@0.4.15 + * deps: type-is@~1.6.14 + - deps: mime-types@~2.1.13 + +1.15.2 / 2016-06-19 +=================== + + * deps: bytes@2.4.0 + * deps: content-type@~1.0.2 + - perf: enable strict mode + * deps: http-errors@~1.5.0 + - Use `setprototypeof` module to replace `__proto__` setting + - deps: statuses@'>= 1.3.0 < 2' + - perf: enable strict mode + * deps: qs@6.2.0 + * deps: raw-body@~2.1.7 + - deps: bytes@2.4.0 + - perf: remove double-cleanup on happy path + * deps: type-is@~1.6.13 + - deps: mime-types@~2.1.11 + +1.15.1 / 2016-05-05 +=================== + + * deps: bytes@2.3.0 + - Drop partial bytes on all parsed units + - Fix parsing byte string that looks like hex + * deps: raw-body@~2.1.6 + - deps: bytes@2.3.0 + * deps: type-is@~1.6.12 + - deps: mime-types@~2.1.10 + +1.15.0 / 2016-02-10 +=================== + + * deps: http-errors@~1.4.0 + - Add `HttpError` export, for `err instanceof createError.HttpError` + - deps: inherits@2.0.1 + - deps: statuses@'>= 1.2.1 < 2' + * deps: qs@6.1.0 + * deps: type-is@~1.6.11 + - deps: mime-types@~2.1.9 + +1.14.2 / 2015-12-16 +=================== + + * deps: bytes@2.2.0 + * deps: iconv-lite@0.4.13 + * deps: qs@5.2.0 + * deps: raw-body@~2.1.5 + - deps: bytes@2.2.0 + - deps: iconv-lite@0.4.13 + * deps: type-is@~1.6.10 + - deps: mime-types@~2.1.8 + +1.14.1 / 2015-09-27 +=================== + + * Fix issue where invalid charset results in 400 when `verify` used + * deps: iconv-lite@0.4.12 + - Fix CESU-8 decoding in Node.js 4.x + * deps: raw-body@~2.1.4 + - Fix masking critical errors from `iconv-lite` + - deps: iconv-lite@0.4.12 + * deps: type-is@~1.6.9 + - deps: mime-types@~2.1.7 + +1.14.0 / 2015-09-16 +=================== + + * Fix JSON strict parse error to match syntax errors + * Provide static `require` analysis in `urlencoded` parser + * deps: depd@~1.1.0 + - Support web browser loading + * deps: qs@5.1.0 + * deps: raw-body@~2.1.3 + - Fix sync callback when attaching data listener causes sync read + * deps: type-is@~1.6.8 + - Fix type error when given invalid type to match against + - deps: mime-types@~2.1.6 + +1.13.3 / 2015-07-31 +=================== + + * deps: type-is@~1.6.6 + - deps: mime-types@~2.1.4 + +1.13.2 / 2015-07-05 +=================== + + * deps: iconv-lite@0.4.11 + * deps: qs@4.0.0 + - Fix dropping parameters like `hasOwnProperty` + - Fix user-visible incompatibilities from 3.1.0 + - Fix various parsing edge cases + * deps: raw-body@~2.1.2 + - Fix error stack traces to skip `makeError` + - deps: iconv-lite@0.4.11 + * deps: type-is@~1.6.4 + - deps: mime-types@~2.1.2 + - perf: enable strict mode + - perf: remove argument reassignment + +1.13.1 / 2015-06-16 +=================== + + * deps: qs@2.4.2 + - Downgraded from 3.1.0 because of user-visible incompatibilities + +1.13.0 / 2015-06-14 +=================== + + * Add `statusCode` property on `Error`s, in addition to `status` + * Change `type` default to `application/json` for JSON parser + * Change `type` default to `application/x-www-form-urlencoded` for urlencoded parser + * Provide static `require` analysis + * Use the `http-errors` module to generate errors + * deps: bytes@2.1.0 + - Slight optimizations + * deps: iconv-lite@0.4.10 + - The encoding UTF-16 without BOM now defaults to UTF-16LE when detection fails + - Leading BOM is now removed when decoding + * deps: on-finished@~2.3.0 + - Add defined behavior for HTTP `CONNECT` requests + - Add defined behavior for HTTP `Upgrade` requests + - deps: ee-first@1.1.1 + * deps: qs@3.1.0 + - Fix dropping parameters like `hasOwnProperty` + - Fix various parsing edge cases + - Parsed object now has `null` prototype + * deps: raw-body@~2.1.1 + - Use `unpipe` module for unpiping requests + - deps: iconv-lite@0.4.10 + * deps: type-is@~1.6.3 + - deps: mime-types@~2.1.1 + - perf: reduce try block size + - perf: remove bitwise operations + * perf: enable strict mode + * perf: remove argument reassignment + * perf: remove delete call + +1.12.4 / 2015-05-10 +=================== + + * deps: debug@~2.2.0 + * deps: qs@2.4.2 + - Fix allowing parameters like `constructor` + * deps: on-finished@~2.2.1 + * deps: raw-body@~2.0.1 + - Fix a false-positive when unpiping in Node.js 0.8 + - deps: bytes@2.0.1 + * deps: type-is@~1.6.2 + - deps: mime-types@~2.0.11 + +1.12.3 / 2015-04-15 +=================== + + * Slight efficiency improvement when not debugging + * deps: depd@~1.0.1 + * deps: iconv-lite@0.4.8 + - Add encoding alias UNICODE-1-1-UTF-7 + * deps: raw-body@1.3.4 + - Fix hanging callback if request aborts during read + - deps: iconv-lite@0.4.8 + +1.12.2 / 2015-03-16 +=================== + + * deps: qs@2.4.1 + - Fix error when parameter `hasOwnProperty` is present + +1.12.1 / 2015-03-15 +=================== + + * deps: debug@~2.1.3 + - Fix high intensity foreground color for bold + - deps: ms@0.7.0 + * deps: type-is@~1.6.1 + - deps: mime-types@~2.0.10 + +1.12.0 / 2015-02-13 +=================== + + * add `debug` messages + * accept a function for the `type` option + * use `content-type` to parse `Content-Type` headers + * deps: iconv-lite@0.4.7 + - Gracefully support enumerables on `Object.prototype` + * deps: raw-body@1.3.3 + - deps: iconv-lite@0.4.7 + * deps: type-is@~1.6.0 + - fix argument reassignment + - fix false-positives in `hasBody` `Transfer-Encoding` check + - support wildcard for both type and subtype (`*/*`) + - deps: mime-types@~2.0.9 + +1.11.0 / 2015-01-30 +=================== + + * make internal `extended: true` depth limit infinity + * deps: type-is@~1.5.6 + - deps: mime-types@~2.0.8 + +1.10.2 / 2015-01-20 +=================== + + * deps: iconv-lite@0.4.6 + - Fix rare aliases of single-byte encodings + * deps: raw-body@1.3.2 + - deps: iconv-lite@0.4.6 + +1.10.1 / 2015-01-01 +=================== + + * deps: on-finished@~2.2.0 + * deps: type-is@~1.5.5 + - deps: mime-types@~2.0.7 + +1.10.0 / 2014-12-02 +=================== + + * make internal `extended: true` array limit dynamic + +1.9.3 / 2014-11-21 +================== + + * deps: iconv-lite@0.4.5 + - Fix Windows-31J and X-SJIS encoding support + * deps: qs@2.3.3 + - Fix `arrayLimit` behavior + * deps: raw-body@1.3.1 + - deps: iconv-lite@0.4.5 + * deps: type-is@~1.5.3 + - deps: mime-types@~2.0.3 + +1.9.2 / 2014-10-27 +================== + + * deps: qs@2.3.2 + - Fix parsing of mixed objects and values + +1.9.1 / 2014-10-22 +================== + + * deps: on-finished@~2.1.1 + - Fix handling of pipelined requests + * deps: qs@2.3.0 + - Fix parsing of mixed implicit and explicit arrays + * deps: type-is@~1.5.2 + - deps: mime-types@~2.0.2 + +1.9.0 / 2014-09-24 +================== + + * include the charset in "unsupported charset" error message + * include the encoding in "unsupported content encoding" error message + * deps: depd@~1.0.0 + +1.8.4 / 2014-09-23 +================== + + * fix content encoding to be case-insensitive + +1.8.3 / 2014-09-19 +================== + + * deps: qs@2.2.4 + - Fix issue with object keys starting with numbers truncated + +1.8.2 / 2014-09-15 +================== + + * deps: depd@0.4.5 + +1.8.1 / 2014-09-07 +================== + + * deps: media-typer@0.3.0 + * deps: type-is@~1.5.1 + +1.8.0 / 2014-09-05 +================== + + * make empty-body-handling consistent between chunked requests + - empty `json` produces `{}` + - empty `raw` produces `new Buffer(0)` + - empty `text` produces `''` + - empty `urlencoded` produces `{}` + * deps: qs@2.2.3 + - Fix issue where first empty value in array is discarded + * deps: type-is@~1.5.0 + - fix `hasbody` to be true for `content-length: 0` + +1.7.0 / 2014-09-01 +================== + + * add `parameterLimit` option to `urlencoded` parser + * change `urlencoded` extended array limit to 100 + * respond with 413 when over `parameterLimit` in `urlencoded` + +1.6.7 / 2014-08-29 +================== + + * deps: qs@2.2.2 + - Remove unnecessary cloning + +1.6.6 / 2014-08-27 +================== + + * deps: qs@2.2.0 + - Array parsing fix + - Performance improvements + +1.6.5 / 2014-08-16 +================== + + * deps: on-finished@2.1.0 + +1.6.4 / 2014-08-14 +================== + + * deps: qs@1.2.2 + +1.6.3 / 2014-08-10 +================== + + * deps: qs@1.2.1 + +1.6.2 / 2014-08-07 +================== + + * deps: qs@1.2.0 + - Fix parsing array of objects + +1.6.1 / 2014-08-06 +================== + + * deps: qs@1.1.0 + - Accept urlencoded square brackets + - Accept empty values in implicit array notation + +1.6.0 / 2014-08-05 +================== + + * deps: qs@1.0.2 + - Complete rewrite + - Limits array length to 20 + - Limits object depth to 5 + - Limits parameters to 1,000 + +1.5.2 / 2014-07-27 +================== + + * deps: depd@0.4.4 + - Work-around v8 generating empty stack traces + +1.5.1 / 2014-07-26 +================== + + * deps: depd@0.4.3 + - Fix exception when global `Error.stackTraceLimit` is too low + +1.5.0 / 2014-07-20 +================== + + * deps: depd@0.4.2 + - Add `TRACE_DEPRECATION` environment variable + - Remove non-standard grey color from color output + - Support `--no-deprecation` argument + - Support `--trace-deprecation` argument + * deps: iconv-lite@0.4.4 + - Added encoding UTF-7 + * deps: raw-body@1.3.0 + - deps: iconv-lite@0.4.4 + - Added encoding UTF-7 + - Fix `Cannot switch to old mode now` error on Node.js 0.10+ + * deps: type-is@~1.3.2 + +1.4.3 / 2014-06-19 +================== + + * deps: type-is@1.3.1 + - fix global variable leak + +1.4.2 / 2014-06-19 +================== + + * deps: type-is@1.3.0 + - improve type parsing + +1.4.1 / 2014-06-19 +================== + + * fix urlencoded extended deprecation message + +1.4.0 / 2014-06-19 +================== + + * add `text` parser + * add `raw` parser + * check accepted charset in content-type (accepts utf-8) + * check accepted encoding in content-encoding (accepts identity) + * deprecate `bodyParser()` middleware; use `.json()` and `.urlencoded()` as needed + * deprecate `urlencoded()` without provided `extended` option + * lazy-load urlencoded parsers + * parsers split into files for reduced mem usage + * support gzip and deflate bodies + - set `inflate: false` to turn off + * deps: raw-body@1.2.2 + - Support all encodings from `iconv-lite` + +1.3.1 / 2014-06-11 +================== + + * deps: type-is@1.2.1 + - Switch dependency from mime to mime-types@1.0.0 + +1.3.0 / 2014-05-31 +================== + + * add `extended` option to urlencoded parser + +1.2.2 / 2014-05-27 +================== + + * deps: raw-body@1.1.6 + - assert stream encoding on node.js 0.8 + - assert stream encoding on node.js < 0.10.6 + - deps: bytes@1 + +1.2.1 / 2014-05-26 +================== + + * invoke `next(err)` after request fully read + - prevents hung responses and socket hang ups + +1.2.0 / 2014-05-11 +================== + + * add `verify` option + * deps: type-is@1.2.0 + - support suffix matching + +1.1.2 / 2014-05-11 +================== + + * improve json parser speed + +1.1.1 / 2014-05-11 +================== + + * fix repeated limit parsing with every request + +1.1.0 / 2014-05-10 +================== + + * add `type` option + * deps: pin for safety and consistency + +1.0.2 / 2014-04-14 +================== + + * use `type-is` module + +1.0.1 / 2014-03-20 +================== + + * lower default limits to 100kb diff --git a/NodjsPartieArduino/node_modules/body-parser/LICENSE b/NodjsPartieArduino/node_modules/body-parser/LICENSE new file mode 100644 index 0000000..386b7b6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/LICENSE @@ -0,0 +1,23 @@ +(The MIT License) + +Copyright (c) 2014 Jonathan Ong +Copyright (c) 2014-2015 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/body-parser/README.md b/NodjsPartieArduino/node_modules/body-parser/README.md new file mode 100644 index 0000000..d9138bc --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/README.md @@ -0,0 +1,445 @@ +# body-parser + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Node.js body parsing middleware. + +Parse incoming request bodies in a middleware before your handlers, available +under the `req.body` property. + +**Note** As `req.body`'s shape is based on user-controlled input, all +properties and values in this object are untrusted and should be validated +before trusting. For example, `req.body.foo.toString()` may fail in multiple +ways, for example the `foo` property may not be there or may not be a string, +and `toString` may not be a function and instead a string or other user input. + +[Learn about the anatomy of an HTTP transaction in Node.js](https://nodejs.org/en/docs/guides/anatomy-of-an-http-transaction/). + +_This does not handle multipart bodies_, due to their complex and typically +large nature. For multipart bodies, you may be interested in the following +modules: + + * [busboy](https://www.npmjs.org/package/busboy#readme) and + [connect-busboy](https://www.npmjs.org/package/connect-busboy#readme) + * [multiparty](https://www.npmjs.org/package/multiparty#readme) and + [connect-multiparty](https://www.npmjs.org/package/connect-multiparty#readme) + * [formidable](https://www.npmjs.org/package/formidable#readme) + * [multer](https://www.npmjs.org/package/multer#readme) + +This module provides the following parsers: + + * [JSON body parser](#bodyparserjsonoptions) + * [Raw body parser](#bodyparserrawoptions) + * [Text body parser](#bodyparsertextoptions) + * [URL-encoded form body parser](#bodyparserurlencodedoptions) + +Other body parsers you might be interested in: + +- [body](https://www.npmjs.org/package/body#readme) +- [co-body](https://www.npmjs.org/package/co-body#readme) + +## Installation + +```sh +$ npm install body-parser +``` + +## API + + + +```js +var bodyParser = require('body-parser') +``` + +The `bodyParser` object exposes various factories to create middlewares. All +middlewares will populate the `req.body` property with the parsed body when +the `Content-Type` request header matches the `type` option, or an empty +object (`{}`) if there was no body to parse, the `Content-Type` was not matched, +or an error occurred. + +The various errors returned by this module are described in the +[errors section](#errors). + +### bodyParser.json([options]) + +Returns middleware that only parses `json` and only looks at requests where +the `Content-Type` header matches the `type` option. This parser accepts any +Unicode encoding of the body and supports automatic inflation of `gzip` and +`deflate` encodings. + +A new `body` object containing the parsed data is populated on the `request` +object after the middleware (i.e. `req.body`). + +#### Options + +The `json` function takes an optional `options` object that may contain any of +the following keys: + +##### inflate + +When set to `true`, then deflated (compressed) bodies will be inflated; when +`false`, deflated bodies are rejected. Defaults to `true`. + +##### limit + +Controls the maximum request body size. If this is a number, then the value +specifies the number of bytes; if it is a string, the value is passed to the +[bytes](https://www.npmjs.com/package/bytes) library for parsing. Defaults +to `'100kb'`. + +##### reviver + +The `reviver` option is passed directly to `JSON.parse` as the second +argument. You can find more information on this argument +[in the MDN documentation about JSON.parse](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse#Example.3A_Using_the_reviver_parameter). + +##### strict + +When set to `true`, will only accept arrays and objects; when `false` will +accept anything `JSON.parse` accepts. Defaults to `true`. + +##### type + +The `type` option is used to determine what media type the middleware will +parse. This option can be a string, array of strings, or a function. If not a +function, `type` option is passed directly to the +[type-is](https://www.npmjs.org/package/type-is#readme) library and this can +be an extension name (like `json`), a mime type (like `application/json`), or +a mime type with a wildcard (like `*/*` or `*/json`). If a function, the `type` +option is called as `fn(req)` and the request is parsed if it returns a truthy +value. Defaults to `application/json`. + +##### verify + +The `verify` option, if supplied, is called as `verify(req, res, buf, encoding)`, +where `buf` is a `Buffer` of the raw request body and `encoding` is the +encoding of the request. The parsing can be aborted by throwing an error. + +### bodyParser.raw([options]) + +Returns middleware that parses all bodies as a `Buffer` and only looks at +requests where the `Content-Type` header matches the `type` option. This +parser supports automatic inflation of `gzip` and `deflate` encodings. + +A new `body` object containing the parsed data is populated on the `request` +object after the middleware (i.e. `req.body`). This will be a `Buffer` object +of the body. + +#### Options + +The `raw` function takes an optional `options` object that may contain any of +the following keys: + +##### inflate + +When set to `true`, then deflated (compressed) bodies will be inflated; when +`false`, deflated bodies are rejected. Defaults to `true`. + +##### limit + +Controls the maximum request body size. If this is a number, then the value +specifies the number of bytes; if it is a string, the value is passed to the +[bytes](https://www.npmjs.com/package/bytes) library for parsing. Defaults +to `'100kb'`. + +##### type + +The `type` option is used to determine what media type the middleware will +parse. This option can be a string, array of strings, or a function. +If not a function, `type` option is passed directly to the +[type-is](https://www.npmjs.org/package/type-is#readme) library and this +can be an extension name (like `bin`), a mime type (like +`application/octet-stream`), or a mime type with a wildcard (like `*/*` or +`application/*`). If a function, the `type` option is called as `fn(req)` +and the request is parsed if it returns a truthy value. Defaults to +`application/octet-stream`. + +##### verify + +The `verify` option, if supplied, is called as `verify(req, res, buf, encoding)`, +where `buf` is a `Buffer` of the raw request body and `encoding` is the +encoding of the request. The parsing can be aborted by throwing an error. + +### bodyParser.text([options]) + +Returns middleware that parses all bodies as a string and only looks at +requests where the `Content-Type` header matches the `type` option. This +parser supports automatic inflation of `gzip` and `deflate` encodings. + +A new `body` string containing the parsed data is populated on the `request` +object after the middleware (i.e. `req.body`). This will be a string of the +body. + +#### Options + +The `text` function takes an optional `options` object that may contain any of +the following keys: + +##### defaultCharset + +Specify the default character set for the text content if the charset is not +specified in the `Content-Type` header of the request. Defaults to `utf-8`. + +##### inflate + +When set to `true`, then deflated (compressed) bodies will be inflated; when +`false`, deflated bodies are rejected. Defaults to `true`. + +##### limit + +Controls the maximum request body size. If this is a number, then the value +specifies the number of bytes; if it is a string, the value is passed to the +[bytes](https://www.npmjs.com/package/bytes) library for parsing. Defaults +to `'100kb'`. + +##### type + +The `type` option is used to determine what media type the middleware will +parse. This option can be a string, array of strings, or a function. If not +a function, `type` option is passed directly to the +[type-is](https://www.npmjs.org/package/type-is#readme) library and this can +be an extension name (like `txt`), a mime type (like `text/plain`), or a mime +type with a wildcard (like `*/*` or `text/*`). If a function, the `type` +option is called as `fn(req)` and the request is parsed if it returns a +truthy value. Defaults to `text/plain`. + +##### verify + +The `verify` option, if supplied, is called as `verify(req, res, buf, encoding)`, +where `buf` is a `Buffer` of the raw request body and `encoding` is the +encoding of the request. The parsing can be aborted by throwing an error. + +### bodyParser.urlencoded([options]) + +Returns middleware that only parses `urlencoded` bodies and only looks at +requests where the `Content-Type` header matches the `type` option. This +parser accepts only UTF-8 encoding of the body and supports automatic +inflation of `gzip` and `deflate` encodings. + +A new `body` object containing the parsed data is populated on the `request` +object after the middleware (i.e. `req.body`). This object will contain +key-value pairs, where the value can be a string or array (when `extended` is +`false`), or any type (when `extended` is `true`). + +#### Options + +The `urlencoded` function takes an optional `options` object that may contain +any of the following keys: + +##### extended + +The `extended` option allows to choose between parsing the URL-encoded data +with the `querystring` library (when `false`) or the `qs` library (when +`true`). The "extended" syntax allows for rich objects and arrays to be +encoded into the URL-encoded format, allowing for a JSON-like experience +with URL-encoded. For more information, please +[see the qs library](https://www.npmjs.org/package/qs#readme). + +Defaults to `true`, but using the default has been deprecated. Please +research into the difference between `qs` and `querystring` and choose the +appropriate setting. + +##### inflate + +When set to `true`, then deflated (compressed) bodies will be inflated; when +`false`, deflated bodies are rejected. Defaults to `true`. + +##### limit + +Controls the maximum request body size. If this is a number, then the value +specifies the number of bytes; if it is a string, the value is passed to the +[bytes](https://www.npmjs.com/package/bytes) library for parsing. Defaults +to `'100kb'`. + +##### parameterLimit + +The `parameterLimit` option controls the maximum number of parameters that +are allowed in the URL-encoded data. If a request contains more parameters +than this value, a 413 will be returned to the client. Defaults to `1000`. + +##### type + +The `type` option is used to determine what media type the middleware will +parse. This option can be a string, array of strings, or a function. If not +a function, `type` option is passed directly to the +[type-is](https://www.npmjs.org/package/type-is#readme) library and this can +be an extension name (like `urlencoded`), a mime type (like +`application/x-www-form-urlencoded`), or a mime type with a wildcard (like +`*/x-www-form-urlencoded`). If a function, the `type` option is called as +`fn(req)` and the request is parsed if it returns a truthy value. Defaults +to `application/x-www-form-urlencoded`. + +##### verify + +The `verify` option, if supplied, is called as `verify(req, res, buf, encoding)`, +where `buf` is a `Buffer` of the raw request body and `encoding` is the +encoding of the request. The parsing can be aborted by throwing an error. + +## Errors + +The middlewares provided by this module create errors depending on the error +condition during parsing. The errors will typically have a `status`/`statusCode` +property that contains the suggested HTTP response code, an `expose` property +to determine if the `message` property should be displayed to the client, a +`type` property to determine the type of error without matching against the +`message`, and a `body` property containing the read body, if available. + +The following are the common errors emitted, though any error can come through +for various reasons. + +### content encoding unsupported + +This error will occur when the request had a `Content-Encoding` header that +contained an encoding but the "inflation" option was set to `false`. The +`status` property is set to `415`, the `type` property is set to +`'encoding.unsupported'`, and the `charset` property will be set to the +encoding that is unsupported. + +### request aborted + +This error will occur when the request is aborted by the client before reading +the body has finished. The `received` property will be set to the number of +bytes received before the request was aborted and the `expected` property is +set to the number of expected bytes. The `status` property is set to `400` +and `type` property is set to `'request.aborted'`. + +### request entity too large + +This error will occur when the request body's size is larger than the "limit" +option. The `limit` property will be set to the byte limit and the `length` +property will be set to the request body's length. The `status` property is +set to `413` and the `type` property is set to `'entity.too.large'`. + +### request size did not match content length + +This error will occur when the request's length did not match the length from +the `Content-Length` header. This typically occurs when the request is malformed, +typically when the `Content-Length` header was calculated based on characters +instead of bytes. The `status` property is set to `400` and the `type` property +is set to `'request.size.invalid'`. + +### stream encoding should not be set + +This error will occur when something called the `req.setEncoding` method prior +to this middleware. This module operates directly on bytes only and you cannot +call `req.setEncoding` when using this module. The `status` property is set to +`500` and the `type` property is set to `'stream.encoding.set'`. + +### too many parameters + +This error will occur when the content of the request exceeds the configured +`parameterLimit` for the `urlencoded` parser. The `status` property is set to +`413` and the `type` property is set to `'parameters.too.many'`. + +### unsupported charset "BOGUS" + +This error will occur when the request had a charset parameter in the +`Content-Type` header, but the `iconv-lite` module does not support it OR the +parser does not support it. The charset is contained in the message as well +as in the `charset` property. The `status` property is set to `415`, the +`type` property is set to `'charset.unsupported'`, and the `charset` property +is set to the charset that is unsupported. + +### unsupported content encoding "bogus" + +This error will occur when the request had a `Content-Encoding` header that +contained an unsupported encoding. The encoding is contained in the message +as well as in the `encoding` property. The `status` property is set to `415`, +the `type` property is set to `'encoding.unsupported'`, and the `encoding` +property is set to the encoding that is unsupported. + +## Examples + +### Express/Connect top-level generic + +This example demonstrates adding a generic JSON and URL-encoded parser as a +top-level middleware, which will parse the bodies of all incoming requests. +This is the simplest setup. + +```js +var express = require('express') +var bodyParser = require('body-parser') + +var app = express() + +// parse application/x-www-form-urlencoded +app.use(bodyParser.urlencoded({ extended: false })) + +// parse application/json +app.use(bodyParser.json()) + +app.use(function (req, res) { + res.setHeader('Content-Type', 'text/plain') + res.write('you posted:\n') + res.end(JSON.stringify(req.body, null, 2)) +}) +``` + +### Express route-specific + +This example demonstrates adding body parsers specifically to the routes that +need them. In general, this is the most recommended way to use body-parser with +Express. + +```js +var express = require('express') +var bodyParser = require('body-parser') + +var app = express() + +// create application/json parser +var jsonParser = bodyParser.json() + +// create application/x-www-form-urlencoded parser +var urlencodedParser = bodyParser.urlencoded({ extended: false }) + +// POST /login gets urlencoded bodies +app.post('/login', urlencodedParser, function (req, res) { + if (!req.body) return res.sendStatus(400) + res.send('welcome, ' + req.body.username) +}) + +// POST /api/users gets JSON bodies +app.post('/api/users', jsonParser, function (req, res) { + if (!req.body) return res.sendStatus(400) + // create user in req.body +}) +``` + +### Change accepted type for parsers + +All the parsers accept a `type` option which allows you to change the +`Content-Type` that the middleware will parse. + +```js +var express = require('express') +var bodyParser = require('body-parser') + +var app = express() + +// parse various different custom JSON types as JSON +app.use(bodyParser.json({ type: 'application/*+json' })) + +// parse some custom thing into a Buffer +app.use(bodyParser.raw({ type: 'application/vnd.custom-type' })) + +// parse an HTML body into a string +app.use(bodyParser.text({ type: 'text/html' })) +``` + +## License + +[MIT](LICENSE) + +[npm-image]: https://img.shields.io/npm/v/body-parser.svg +[npm-url]: https://npmjs.org/package/body-parser +[travis-image]: https://img.shields.io/travis/expressjs/body-parser/master.svg +[travis-url]: https://travis-ci.org/expressjs/body-parser +[coveralls-image]: https://img.shields.io/coveralls/expressjs/body-parser/master.svg +[coveralls-url]: https://coveralls.io/r/expressjs/body-parser?branch=master +[downloads-image]: https://img.shields.io/npm/dm/body-parser.svg +[downloads-url]: https://npmjs.org/package/body-parser diff --git a/NodjsPartieArduino/node_modules/body-parser/index.js b/NodjsPartieArduino/node_modules/body-parser/index.js new file mode 100644 index 0000000..93c3a1f --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/index.js @@ -0,0 +1,157 @@ +/*! + * body-parser + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var deprecate = require('depd')('body-parser') + +/** + * Cache of loaded parsers. + * @private + */ + +var parsers = Object.create(null) + +/** + * @typedef Parsers + * @type {function} + * @property {function} json + * @property {function} raw + * @property {function} text + * @property {function} urlencoded + */ + +/** + * Module exports. + * @type {Parsers} + */ + +exports = module.exports = deprecate.function(bodyParser, + 'bodyParser: use individual json/urlencoded middlewares') + +/** + * JSON parser. + * @public + */ + +Object.defineProperty(exports, 'json', { + configurable: true, + enumerable: true, + get: createParserGetter('json') +}) + +/** + * Raw parser. + * @public + */ + +Object.defineProperty(exports, 'raw', { + configurable: true, + enumerable: true, + get: createParserGetter('raw') +}) + +/** + * Text parser. + * @public + */ + +Object.defineProperty(exports, 'text', { + configurable: true, + enumerable: true, + get: createParserGetter('text') +}) + +/** + * URL-encoded parser. + * @public + */ + +Object.defineProperty(exports, 'urlencoded', { + configurable: true, + enumerable: true, + get: createParserGetter('urlencoded') +}) + +/** + * Create a middleware to parse json and urlencoded bodies. + * + * @param {object} [options] + * @return {function} + * @deprecated + * @public + */ + +function bodyParser (options) { + var opts = {} + + // exclude type option + if (options) { + for (var prop in options) { + if (prop !== 'type') { + opts[prop] = options[prop] + } + } + } + + var _urlencoded = exports.urlencoded(opts) + var _json = exports.json(opts) + + return function bodyParser (req, res, next) { + _json(req, res, function (err) { + if (err) return next(err) + _urlencoded(req, res, next) + }) + } +} + +/** + * Create a getter for loading a parser. + * @private + */ + +function createParserGetter (name) { + return function get () { + return loadParser(name) + } +} + +/** + * Load a parser module. + * @private + */ + +function loadParser (parserName) { + var parser = parsers[parserName] + + if (parser !== undefined) { + return parser + } + + // this uses a switch for static require analysis + switch (parserName) { + case 'json': + parser = require('./lib/types/json') + break + case 'raw': + parser = require('./lib/types/raw') + break + case 'text': + parser = require('./lib/types/text') + break + case 'urlencoded': + parser = require('./lib/types/urlencoded') + break + } + + // store to prevent invoking require() + return (parsers[parserName] = parser) +} diff --git a/NodjsPartieArduino/node_modules/body-parser/lib/read.js b/NodjsPartieArduino/node_modules/body-parser/lib/read.js new file mode 100644 index 0000000..c102609 --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/lib/read.js @@ -0,0 +1,181 @@ +/*! + * body-parser + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var createError = require('http-errors') +var getBody = require('raw-body') +var iconv = require('iconv-lite') +var onFinished = require('on-finished') +var zlib = require('zlib') + +/** + * Module exports. + */ + +module.exports = read + +/** + * Read a request into a buffer and parse. + * + * @param {object} req + * @param {object} res + * @param {function} next + * @param {function} parse + * @param {function} debug + * @param {object} options + * @private + */ + +function read (req, res, next, parse, debug, options) { + var length + var opts = options + var stream + + // flag as parsed + req._body = true + + // read options + var encoding = opts.encoding !== null + ? opts.encoding + : null + var verify = opts.verify + + try { + // get the content stream + stream = contentstream(req, debug, opts.inflate) + length = stream.length + stream.length = undefined + } catch (err) { + return next(err) + } + + // set raw-body options + opts.length = length + opts.encoding = verify + ? null + : encoding + + // assert charset is supported + if (opts.encoding === null && encoding !== null && !iconv.encodingExists(encoding)) { + return next(createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', { + charset: encoding.toLowerCase(), + type: 'charset.unsupported' + })) + } + + // read body + debug('read body') + getBody(stream, opts, function (error, body) { + if (error) { + var _error + + if (error.type === 'encoding.unsupported') { + // echo back charset + _error = createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', { + charset: encoding.toLowerCase(), + type: 'charset.unsupported' + }) + } else { + // set status code on error + _error = createError(400, error) + } + + // read off entire request + stream.resume() + onFinished(req, function onfinished () { + next(createError(400, _error)) + }) + return + } + + // verify + if (verify) { + try { + debug('verify body') + verify(req, res, body, encoding) + } catch (err) { + next(createError(403, err, { + body: body, + type: err.type || 'entity.verify.failed' + })) + return + } + } + + // parse + var str = body + try { + debug('parse body') + str = typeof body !== 'string' && encoding !== null + ? iconv.decode(body, encoding) + : body + req.body = parse(str) + } catch (err) { + next(createError(400, err, { + body: str, + type: err.type || 'entity.parse.failed' + })) + return + } + + next() + }) +} + +/** + * Get the content stream of the request. + * + * @param {object} req + * @param {function} debug + * @param {boolean} [inflate=true] + * @return {object} + * @api private + */ + +function contentstream (req, debug, inflate) { + var encoding = (req.headers['content-encoding'] || 'identity').toLowerCase() + var length = req.headers['content-length'] + var stream + + debug('content-encoding "%s"', encoding) + + if (inflate === false && encoding !== 'identity') { + throw createError(415, 'content encoding unsupported', { + encoding: encoding, + type: 'encoding.unsupported' + }) + } + + switch (encoding) { + case 'deflate': + stream = zlib.createInflate() + debug('inflate body') + req.pipe(stream) + break + case 'gzip': + stream = zlib.createGunzip() + debug('gunzip body') + req.pipe(stream) + break + case 'identity': + stream = req + stream.length = length + break + default: + throw createError(415, 'unsupported content encoding "' + encoding + '"', { + encoding: encoding, + type: 'encoding.unsupported' + }) + } + + return stream +} diff --git a/NodjsPartieArduino/node_modules/body-parser/lib/types/json.js b/NodjsPartieArduino/node_modules/body-parser/lib/types/json.js new file mode 100644 index 0000000..2971dc1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/lib/types/json.js @@ -0,0 +1,230 @@ +/*! + * body-parser + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var bytes = require('bytes') +var contentType = require('content-type') +var createError = require('http-errors') +var debug = require('debug')('body-parser:json') +var read = require('../read') +var typeis = require('type-is') + +/** + * Module exports. + */ + +module.exports = json + +/** + * RegExp to match the first non-space in a string. + * + * Allowed whitespace is defined in RFC 7159: + * + * ws = *( + * %x20 / ; Space + * %x09 / ; Horizontal tab + * %x0A / ; Line feed or New line + * %x0D ) ; Carriage return + */ + +var FIRST_CHAR_REGEXP = /^[\x20\x09\x0a\x0d]*(.)/ // eslint-disable-line no-control-regex + +/** + * Create a middleware to parse JSON bodies. + * + * @param {object} [options] + * @return {function} + * @public + */ + +function json (options) { + var opts = options || {} + + var limit = typeof opts.limit !== 'number' + ? bytes.parse(opts.limit || '100kb') + : opts.limit + var inflate = opts.inflate !== false + var reviver = opts.reviver + var strict = opts.strict !== false + var type = opts.type || 'application/json' + var verify = opts.verify || false + + if (verify !== false && typeof verify !== 'function') { + throw new TypeError('option verify must be function') + } + + // create the appropriate type checking function + var shouldParse = typeof type !== 'function' + ? typeChecker(type) + : type + + function parse (body) { + if (body.length === 0) { + // special-case empty json body, as it's a common client-side mistake + // TODO: maybe make this configurable or part of "strict" option + return {} + } + + if (strict) { + var first = firstchar(body) + + if (first !== '{' && first !== '[') { + debug('strict violation') + throw createStrictSyntaxError(body, first) + } + } + + try { + debug('parse json') + return JSON.parse(body, reviver) + } catch (e) { + throw normalizeJsonSyntaxError(e, { + message: e.message, + stack: e.stack + }) + } + } + + return function jsonParser (req, res, next) { + if (req._body) { + debug('body already parsed') + next() + return + } + + req.body = req.body || {} + + // skip requests without bodies + if (!typeis.hasBody(req)) { + debug('skip empty body') + next() + return + } + + debug('content-type %j', req.headers['content-type']) + + // determine if request should be parsed + if (!shouldParse(req)) { + debug('skip parsing') + next() + return + } + + // assert charset per RFC 7159 sec 8.1 + var charset = getCharset(req) || 'utf-8' + if (charset.substr(0, 4) !== 'utf-') { + debug('invalid charset') + next(createError(415, 'unsupported charset "' + charset.toUpperCase() + '"', { + charset: charset, + type: 'charset.unsupported' + })) + return + } + + // read + read(req, res, next, parse, debug, { + encoding: charset, + inflate: inflate, + limit: limit, + verify: verify + }) + } +} + +/** + * Create strict violation syntax error matching native error. + * + * @param {string} str + * @param {string} char + * @return {Error} + * @private + */ + +function createStrictSyntaxError (str, char) { + var index = str.indexOf(char) + var partial = str.substring(0, index) + '#' + + try { + JSON.parse(partial); /* istanbul ignore next */ throw new SyntaxError('strict violation') + } catch (e) { + return normalizeJsonSyntaxError(e, { + message: e.message.replace('#', char), + stack: e.stack + }) + } +} + +/** + * Get the first non-whitespace character in a string. + * + * @param {string} str + * @return {function} + * @private + */ + +function firstchar (str) { + return FIRST_CHAR_REGEXP.exec(str)[1] +} + +/** + * Get the charset of a request. + * + * @param {object} req + * @api private + */ + +function getCharset (req) { + try { + return (contentType.parse(req).parameters.charset || '').toLowerCase() + } catch (e) { + return undefined + } +} + +/** + * Normalize a SyntaxError for JSON.parse. + * + * @param {SyntaxError} error + * @param {object} obj + * @return {SyntaxError} + */ + +function normalizeJsonSyntaxError (error, obj) { + var keys = Object.getOwnPropertyNames(error) + + for (var i = 0; i < keys.length; i++) { + var key = keys[i] + if (key !== 'stack' && key !== 'message') { + delete error[key] + } + } + + // replace stack before message for Node.js 0.10 and below + error.stack = obj.stack.replace(error.message, obj.message) + error.message = obj.message + + return error +} + +/** + * Get the simple type checker. + * + * @param {string} type + * @return {function} + */ + +function typeChecker (type) { + return function checkType (req) { + return Boolean(typeis(req, type)) + } +} diff --git a/NodjsPartieArduino/node_modules/body-parser/lib/types/raw.js b/NodjsPartieArduino/node_modules/body-parser/lib/types/raw.js new file mode 100644 index 0000000..f5d1b67 --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/lib/types/raw.js @@ -0,0 +1,101 @@ +/*! + * body-parser + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + */ + +var bytes = require('bytes') +var debug = require('debug')('body-parser:raw') +var read = require('../read') +var typeis = require('type-is') + +/** + * Module exports. + */ + +module.exports = raw + +/** + * Create a middleware to parse raw bodies. + * + * @param {object} [options] + * @return {function} + * @api public + */ + +function raw (options) { + var opts = options || {} + + var inflate = opts.inflate !== false + var limit = typeof opts.limit !== 'number' + ? bytes.parse(opts.limit || '100kb') + : opts.limit + var type = opts.type || 'application/octet-stream' + var verify = opts.verify || false + + if (verify !== false && typeof verify !== 'function') { + throw new TypeError('option verify must be function') + } + + // create the appropriate type checking function + var shouldParse = typeof type !== 'function' + ? typeChecker(type) + : type + + function parse (buf) { + return buf + } + + return function rawParser (req, res, next) { + if (req._body) { + debug('body already parsed') + next() + return + } + + req.body = req.body || {} + + // skip requests without bodies + if (!typeis.hasBody(req)) { + debug('skip empty body') + next() + return + } + + debug('content-type %j', req.headers['content-type']) + + // determine if request should be parsed + if (!shouldParse(req)) { + debug('skip parsing') + next() + return + } + + // read + read(req, res, next, parse, debug, { + encoding: null, + inflate: inflate, + limit: limit, + verify: verify + }) + } +} + +/** + * Get the simple type checker. + * + * @param {string} type + * @return {function} + */ + +function typeChecker (type) { + return function checkType (req) { + return Boolean(typeis(req, type)) + } +} diff --git a/NodjsPartieArduino/node_modules/body-parser/lib/types/text.js b/NodjsPartieArduino/node_modules/body-parser/lib/types/text.js new file mode 100644 index 0000000..083a009 --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/lib/types/text.js @@ -0,0 +1,121 @@ +/*! + * body-parser + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + */ + +var bytes = require('bytes') +var contentType = require('content-type') +var debug = require('debug')('body-parser:text') +var read = require('../read') +var typeis = require('type-is') + +/** + * Module exports. + */ + +module.exports = text + +/** + * Create a middleware to parse text bodies. + * + * @param {object} [options] + * @return {function} + * @api public + */ + +function text (options) { + var opts = options || {} + + var defaultCharset = opts.defaultCharset || 'utf-8' + var inflate = opts.inflate !== false + var limit = typeof opts.limit !== 'number' + ? bytes.parse(opts.limit || '100kb') + : opts.limit + var type = opts.type || 'text/plain' + var verify = opts.verify || false + + if (verify !== false && typeof verify !== 'function') { + throw new TypeError('option verify must be function') + } + + // create the appropriate type checking function + var shouldParse = typeof type !== 'function' + ? typeChecker(type) + : type + + function parse (buf) { + return buf + } + + return function textParser (req, res, next) { + if (req._body) { + debug('body already parsed') + next() + return + } + + req.body = req.body || {} + + // skip requests without bodies + if (!typeis.hasBody(req)) { + debug('skip empty body') + next() + return + } + + debug('content-type %j', req.headers['content-type']) + + // determine if request should be parsed + if (!shouldParse(req)) { + debug('skip parsing') + next() + return + } + + // get charset + var charset = getCharset(req) || defaultCharset + + // read + read(req, res, next, parse, debug, { + encoding: charset, + inflate: inflate, + limit: limit, + verify: verify + }) + } +} + +/** + * Get the charset of a request. + * + * @param {object} req + * @api private + */ + +function getCharset (req) { + try { + return (contentType.parse(req).parameters.charset || '').toLowerCase() + } catch (e) { + return undefined + } +} + +/** + * Get the simple type checker. + * + * @param {string} type + * @return {function} + */ + +function typeChecker (type) { + return function checkType (req) { + return Boolean(typeis(req, type)) + } +} diff --git a/NodjsPartieArduino/node_modules/body-parser/lib/types/urlencoded.js b/NodjsPartieArduino/node_modules/body-parser/lib/types/urlencoded.js new file mode 100644 index 0000000..5ccda21 --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/lib/types/urlencoded.js @@ -0,0 +1,284 @@ +/*! + * body-parser + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var bytes = require('bytes') +var contentType = require('content-type') +var createError = require('http-errors') +var debug = require('debug')('body-parser:urlencoded') +var deprecate = require('depd')('body-parser') +var read = require('../read') +var typeis = require('type-is') + +/** + * Module exports. + */ + +module.exports = urlencoded + +/** + * Cache of parser modules. + */ + +var parsers = Object.create(null) + +/** + * Create a middleware to parse urlencoded bodies. + * + * @param {object} [options] + * @return {function} + * @public + */ + +function urlencoded (options) { + var opts = options || {} + + // notice because option default will flip in next major + if (opts.extended === undefined) { + deprecate('undefined extended: provide extended option') + } + + var extended = opts.extended !== false + var inflate = opts.inflate !== false + var limit = typeof opts.limit !== 'number' + ? bytes.parse(opts.limit || '100kb') + : opts.limit + var type = opts.type || 'application/x-www-form-urlencoded' + var verify = opts.verify || false + + if (verify !== false && typeof verify !== 'function') { + throw new TypeError('option verify must be function') + } + + // create the appropriate query parser + var queryparse = extended + ? extendedparser(opts) + : simpleparser(opts) + + // create the appropriate type checking function + var shouldParse = typeof type !== 'function' + ? typeChecker(type) + : type + + function parse (body) { + return body.length + ? queryparse(body) + : {} + } + + return function urlencodedParser (req, res, next) { + if (req._body) { + debug('body already parsed') + next() + return + } + + req.body = req.body || {} + + // skip requests without bodies + if (!typeis.hasBody(req)) { + debug('skip empty body') + next() + return + } + + debug('content-type %j', req.headers['content-type']) + + // determine if request should be parsed + if (!shouldParse(req)) { + debug('skip parsing') + next() + return + } + + // assert charset + var charset = getCharset(req) || 'utf-8' + if (charset !== 'utf-8') { + debug('invalid charset') + next(createError(415, 'unsupported charset "' + charset.toUpperCase() + '"', { + charset: charset, + type: 'charset.unsupported' + })) + return + } + + // read + read(req, res, next, parse, debug, { + debug: debug, + encoding: charset, + inflate: inflate, + limit: limit, + verify: verify + }) + } +} + +/** + * Get the extended query parser. + * + * @param {object} options + */ + +function extendedparser (options) { + var parameterLimit = options.parameterLimit !== undefined + ? options.parameterLimit + : 1000 + var parse = parser('qs') + + if (isNaN(parameterLimit) || parameterLimit < 1) { + throw new TypeError('option parameterLimit must be a positive number') + } + + if (isFinite(parameterLimit)) { + parameterLimit = parameterLimit | 0 + } + + return function queryparse (body) { + var paramCount = parameterCount(body, parameterLimit) + + if (paramCount === undefined) { + debug('too many parameters') + throw createError(413, 'too many parameters', { + type: 'parameters.too.many' + }) + } + + var arrayLimit = Math.max(100, paramCount) + + debug('parse extended urlencoding') + return parse(body, { + allowPrototypes: true, + arrayLimit: arrayLimit, + depth: Infinity, + parameterLimit: parameterLimit + }) + } +} + +/** + * Get the charset of a request. + * + * @param {object} req + * @api private + */ + +function getCharset (req) { + try { + return (contentType.parse(req).parameters.charset || '').toLowerCase() + } catch (e) { + return undefined + } +} + +/** + * Count the number of parameters, stopping once limit reached + * + * @param {string} body + * @param {number} limit + * @api private + */ + +function parameterCount (body, limit) { + var count = 0 + var index = 0 + + while ((index = body.indexOf('&', index)) !== -1) { + count++ + index++ + + if (count === limit) { + return undefined + } + } + + return count +} + +/** + * Get parser for module name dynamically. + * + * @param {string} name + * @return {function} + * @api private + */ + +function parser (name) { + var mod = parsers[name] + + if (mod !== undefined) { + return mod.parse + } + + // this uses a switch for static require analysis + switch (name) { + case 'qs': + mod = require('qs') + break + case 'querystring': + mod = require('querystring') + break + } + + // store to prevent invoking require() + parsers[name] = mod + + return mod.parse +} + +/** + * Get the simple query parser. + * + * @param {object} options + */ + +function simpleparser (options) { + var parameterLimit = options.parameterLimit !== undefined + ? options.parameterLimit + : 1000 + var parse = parser('querystring') + + if (isNaN(parameterLimit) || parameterLimit < 1) { + throw new TypeError('option parameterLimit must be a positive number') + } + + if (isFinite(parameterLimit)) { + parameterLimit = parameterLimit | 0 + } + + return function queryparse (body) { + var paramCount = parameterCount(body, parameterLimit) + + if (paramCount === undefined) { + debug('too many parameters') + throw createError(413, 'too many parameters', { + type: 'parameters.too.many' + }) + } + + debug('parse urlencoding') + return parse(body, undefined, undefined, {maxKeys: parameterLimit}) + } +} + +/** + * Get the simple type checker. + * + * @param {string} type + * @return {function} + */ + +function typeChecker (type) { + return function checkType (req) { + return Boolean(typeis(req, type)) + } +} diff --git a/NodjsPartieArduino/node_modules/body-parser/package.json b/NodjsPartieArduino/node_modules/body-parser/package.json new file mode 100644 index 0000000..55a721d --- /dev/null +++ b/NodjsPartieArduino/node_modules/body-parser/package.json @@ -0,0 +1,130 @@ +{ + "_args": [ + [ + { + "raw": "body-parser@1.18.3", + "scope": null, + "escapedName": "body-parser", + "name": "body-parser", + "rawSpec": "1.18.3", + "spec": "1.18.3", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "body-parser@1.18.3", + "_hasShrinkwrap": false, + "_id": "body-parser@1.18.3", + "_inCache": true, + "_location": "/body-parser", + "_nodeVersion": "6.14.2", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/body-parser_1.18.3_1526318192390_0.5591283803389704" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "3.10.10", + "_phantomChildren": {}, + "_requested": { + "raw": "body-parser@1.18.3", + "scope": null, + "escapedName": "body-parser", + "name": "body-parser", + "rawSpec": "1.18.3", + "spec": "1.18.3", + "type": "version" + }, + "_requiredBy": [ + "/express" + ], + "_resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "_shasum": "5b292198ffdd553b3a0f20ded0592b956955c8b4", + "_shrinkwrap": null, + "_spec": "body-parser@1.18.3", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "bugs": { + "url": "https://github.com/expressjs/body-parser/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + }, + { + "name": "Jonathan Ong", + "email": "me@jongleberry.com", + "url": "http://jongleberry.com" + } + ], + "dependencies": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + }, + "description": "Node.js body parsing middleware", + "devDependencies": { + "eslint": "4.19.1", + "eslint-config-standard": "11.0.0", + "eslint-plugin-import": "2.11.0", + "eslint-plugin-markdown": "1.0.0-beta.6", + "eslint-plugin-node": "6.0.1", + "eslint-plugin-promise": "3.7.0", + "eslint-plugin-standard": "3.1.0", + "istanbul": "0.4.5", + "methods": "1.1.2", + "mocha": "2.5.3", + "safe-buffer": "5.1.2", + "supertest": "1.1.0" + }, + "directories": {}, + "dist": { + "shasum": "5b292198ffdd553b3a0f20ded0592b956955c8b4", + "tarball": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "fileCount": 10, + "unpackedSize": 55897, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+cRxCRA9TVsSAnZWagAAr+wP/jRF3kZaSUPcjTUOxoqN\nlSEgHs4ISF5j2kqTPeArKhG5cgmvygc9gRtNdjtfLGHbQAjyZtA8tzBdsXZG\n3KuehVC9hf/eUIeQbVTjaxrgX0jevrF4igcmM4tRI17JzFvq1+oCz9aAk99e\n3SljKbwvFPopbM5F5BraVbOpIYCO140dVVBrV9gHOBb+65hme0PzfBdru/Bg\nZ1UnDi9l/lEGhCy+HFlSGw+T9ev0KcgzcslA/9vJBAFyYMXVfFFI+jY2+O4P\nJ35s40gbQ1V/idGM4IfmCg5IhwmvpJ902bpXJEokVgGKcw/mMv3TQpBKov2I\nOxAIIRLr2w/1Kl2d8+jMLcbkIoSD7wutdV5i+rsUR5XJURbsDuitYJbcRvJw\n5MS0bQ5aVI83TOr/35z8671ciWqpM+Ru+7eiMjQzgUOWt2qKuOB0Bi/xhr8J\nXGWbqLwl1PWxJXgGJqAJ7rvXNOmAexqJmyk1mPHDJnpjaFRKnCpDrUbuX4Cm\nw52bjMIW+wYC/zKnUMCJ+5n4gBw0jWzFUsoTCses91YZHMDVNb1tOo2Sjbwp\nxLKIWDuNDQC3lxfuCSxC7Qe3PayQGnOCwoP3o6GM89YFAhFOWgPvgBpvjfWm\niJlgG/dUsGIAY3Gz0i7abBGyeJJAuA+CwFpfERMcEE4HwcJhzOrG7g0prSD9\n3nNl\r\n=47oB\r\n-----END PGP SIGNATURE-----\r\n" + }, + "engines": { + "node": ">= 0.8" + }, + "files": [ + "lib/", + "LICENSE", + "HISTORY.md", + "index.js" + ], + "gitHead": "e6ccf98015fece0851c0c673fc2776c30ad79e5d", + "homepage": "https://github.com/expressjs/body-parser#readme", + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "body-parser", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/expressjs/body-parser.git" + }, + "scripts": { + "lint": "eslint --plugin markdown --ext js,md .", + "test": "mocha --require test/support/env --reporter spec --check-leaks --bail test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --require test/support/env --reporter dot --check-leaks test/", + "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --require test/support/env --reporter spec --check-leaks test/" + }, + "version": "1.18.3" +} diff --git a/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/index.js b/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/index.js new file mode 100644 index 0000000..0bd335f --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/index.js @@ -0,0 +1,17 @@ +function allocUnsafe (size) { + if (typeof size !== 'number') { + throw new TypeError('"size" argument must be a number') + } + + if (size < 0) { + throw new RangeError('"size" argument must not be negative') + } + + if (Buffer.allocUnsafe) { + return Buffer.allocUnsafe(size) + } else { + return new Buffer(size) + } +} + +module.exports = allocUnsafe diff --git a/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/package.json b/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/package.json new file mode 100644 index 0000000..f168182 --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/package.json @@ -0,0 +1,97 @@ +{ + "_args": [ + [ + { + "raw": "buffer-alloc-unsafe@^1.1.0", + "scope": null, + "escapedName": "buffer-alloc-unsafe", + "name": "buffer-alloc-unsafe", + "rawSpec": "^1.1.0", + "spec": ">=1.1.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/buffer-alloc" + ] + ], + "_from": "buffer-alloc-unsafe@>=1.1.0 <2.0.0", + "_id": "buffer-alloc-unsafe@1.1.0", + "_inCache": true, + "_location": "/buffer-alloc-unsafe", + "_nodeVersion": "10.2.1", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/buffer-alloc-unsafe_1.1.0_1527635919542_0.8786275682843983" + }, + "_npmUser": { + "name": "linusu", + "email": "linus@folkdatorn.se" + }, + "_npmVersion": "5.6.0", + "_phantomChildren": {}, + "_requested": { + "raw": "buffer-alloc-unsafe@^1.1.0", + "scope": null, + "escapedName": "buffer-alloc-unsafe", + "name": "buffer-alloc-unsafe", + "rawSpec": "^1.1.0", + "spec": ">=1.1.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/buffer-alloc" + ], + "_resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "_shasum": "bd7dc26ae2972d0eda253be061dba992349c19f0", + "_shrinkwrap": null, + "_spec": "buffer-alloc-unsafe@^1.1.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/buffer-alloc", + "bugs": { + "url": "https://github.com/LinusU/buffer-alloc-unsafe/issues" + }, + "dependencies": {}, + "description": "A [ponyfill](https://ponyfill.com) for `Buffer.allocUnsafe`.", + "devDependencies": { + "standard": "^7.1.2" + }, + "directories": {}, + "dist": { + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "shasum": "bd7dc26ae2972d0eda253be061dba992349c19f0", + "tarball": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "fileCount": 3, + "unpackedSize": 1936, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDd/RCRA9TVsSAnZWagAAyRsP/3sjiRG+h8mqwIs9CZjK\n4z+jUqruRnm7xqZAHwtEGUrrJiWpJ77P02u0A122fWxjofhLjkYbePG8ZGMR\nIovOroyc1lBEJ8cI85ZLirvEfUUQJ+SFPkL64o9n3AXVi66OWs0jJtSq7FYL\ntOdfqA942lKMEs3PCZ4K2kpgKmyNXxfhgdRbqFnDHP1XuswsPG3gnHxP2O5b\nqcgz4c+cKmVecfMHLJbGwR+Z+aghzBOiG0RxXpVi9lXDAnqdtTqBg83di8JA\nzQ0n/nFGx28xdISwGpdzdRCpsZu2D+sGDcEvwa0uwhU5QpID41Hddentg0dN\nW8j+afOdFT58DUVuUSRxxHBm27xJFkHfa4VosUmqQgkpUlmQpUBk0Mg5zj44\nFpOHd0vPuEVBrhics/uvch2k/r3+epwwMxpAZr8Z6mTtleet7C15CFbLlRyc\n11q9KO54/VqVdthhCCVrXXWH2FP73MbcE5chNX15vNJr7b+fXTDM/POR6uIa\nFmzBFL34oPdCpofQIp7OVFtrten9fKZKsg4l8Ly83cKhVAJWaotC0vIhhGYi\nslmAMdKL9GG8udV04WmFyGDXs8vzf3+7i+y6UaLUX7eJhVVM0w7iHyaO9Ljt\n4t74PZ3CZPzXylbGZqGmDg4DBvYG4FAaXu9zUkGhQBGSlPP4ohFNvmN7A7U2\nCH9/\r\n=fNVs\r\n-----END PGP SIGNATURE-----\r\n" + }, + "files": [ + "index.js" + ], + "gitHead": "93c66c6a1e0f812a55128036004d6ff8a561fd98", + "homepage": "https://github.com/LinusU/buffer-alloc-unsafe#readme", + "keywords": [ + "allocUnsafe", + "allocate", + "buffer allocUnsafe", + "buffer unsafe allocate", + "buffer", + "ponyfill", + "unsafe allocate" + ], + "license": "MIT", + "maintainers": [ + { + "name": "linusu", + "email": "linus@folkdatorn.se" + } + ], + "name": "buffer-alloc-unsafe", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/LinusU/buffer-alloc-unsafe.git" + }, + "scripts": { + "test": "standard && node test" + }, + "version": "1.1.0" +} diff --git a/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/readme.md b/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/readme.md new file mode 100644 index 0000000..8725ecf --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-alloc-unsafe/readme.md @@ -0,0 +1,46 @@ +# Buffer Alloc Unsafe + +A [ponyfill](https://ponyfill.com) for `Buffer.allocUnsafe`. + +Works as Node.js: `v7.0.0`
+Works on Node.js: `v0.10.0` + +## Installation + +```sh +npm install --save buffer-alloc-unsafe +``` + +## Usage + +```js +const allocUnsafe = require('buffer-alloc-unsafe') + +console.log(allocUnsafe(10)) +//=> + +console.log(allocUnsafe(10)) +//=> + +console.log(allocUnsafe(10)) +//=> + +allocUnsafe(-10) +//=> RangeError: "size" argument must not be negative +``` + +## API + +### allocUnsafe(size) + +- `size` <Integer> The desired length of the new `Buffer` + +Allocates a new *non-zero-filled* `Buffer` of `size` bytes. The `size` must be +less than or equal to the value of `buffer.kMaxLength` and greater than or equal +to zero. Otherwise, a `RangeError` is thrown. + +## See also + +- [buffer-alloc](https://github.com/LinusU/buffer-alloc) A ponyfill for `Buffer.alloc` +- [buffer-fill](https://github.com/LinusU/buffer-fill) A ponyfill for `Buffer.fill` +- [buffer-from](https://github.com/LinusU/buffer-from) A ponyfill for `Buffer.from` diff --git a/NodjsPartieArduino/node_modules/buffer-alloc/index.js b/NodjsPartieArduino/node_modules/buffer-alloc/index.js new file mode 100644 index 0000000..fe65860 --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-alloc/index.js @@ -0,0 +1,32 @@ +var bufferFill = require('buffer-fill') +var allocUnsafe = require('buffer-alloc-unsafe') + +module.exports = function alloc (size, fill, encoding) { + if (typeof size !== 'number') { + throw new TypeError('"size" argument must be a number') + } + + if (size < 0) { + throw new RangeError('"size" argument must not be negative') + } + + if (Buffer.alloc) { + return Buffer.alloc(size, fill, encoding) + } + + var buffer = allocUnsafe(size) + + if (size === 0) { + return buffer + } + + if (fill === undefined) { + return bufferFill(buffer, 0) + } + + if (typeof encoding !== 'string') { + encoding = undefined + } + + return bufferFill(buffer, fill, encoding) +} diff --git a/NodjsPartieArduino/node_modules/buffer-alloc/package.json b/NodjsPartieArduino/node_modules/buffer-alloc/package.json new file mode 100644 index 0000000..d3f8047 --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-alloc/package.json @@ -0,0 +1,98 @@ +{ + "_args": [ + [ + { + "raw": "buffer-alloc@^1.2.0", + "scope": null, + "escapedName": "buffer-alloc", + "name": "buffer-alloc", + "rawSpec": "^1.2.0", + "spec": ">=1.2.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/tar-stream" + ] + ], + "_from": "buffer-alloc@>=1.2.0 <2.0.0", + "_id": "buffer-alloc@1.2.0", + "_inCache": true, + "_location": "/buffer-alloc", + "_nodeVersion": "10.2.1", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/buffer-alloc_1.2.0_1527637266526_0.19419340644925764" + }, + "_npmUser": { + "name": "linusu", + "email": "linus@folkdatorn.se" + }, + "_npmVersion": "5.6.0", + "_phantomChildren": {}, + "_requested": { + "raw": "buffer-alloc@^1.2.0", + "scope": null, + "escapedName": "buffer-alloc", + "name": "buffer-alloc", + "rawSpec": "^1.2.0", + "spec": ">=1.2.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/tar-stream" + ], + "_resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "_shasum": "890dd90d923a873e08e10e5fd51a57e5b7cce0ec", + "_shrinkwrap": null, + "_spec": "buffer-alloc@^1.2.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/tar-stream", + "bugs": { + "url": "https://github.com/LinusU/buffer-alloc/issues" + }, + "dependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + }, + "description": "A [ponyfill](https://ponyfill.com) for `Buffer.alloc`.", + "devDependencies": { + "standard": "^7.1.2" + }, + "directories": {}, + "dist": { + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "shasum": "890dd90d923a873e08e10e5fd51a57e5b7cce0ec", + "tarball": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "fileCount": 3, + "unpackedSize": 2274, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDeUSCRA9TVsSAnZWagAARAEP/32m9WSt0ZIpF7+umUJY\nTzwhGXcaMYWtZOBdw+xkBY9F5+NlRIwNk6/EupLFi/BShct7VMccElsFNX21\nSxi1Jo/+EZZCULaV8Uh8QwEIpDHWN4C9SDBMbdLWORRVriQYYZgqNLVDBv9O\njraOM3MfC/6ESCbN2x+OHubawV3t02lwTwWcbdM42Y4kDekIugesoVIj1+Sq\nbyrjs1zisKTPLacuMHKKXj13pIOXvSTz7PVenVJZAuwm2bUJmxrfwtXFYLfK\npMNwyu3tv6Ci85Mq5gXGecPNbmVej8qyqJmwk4cqhZH4pxWhpqSb7g2chmTe\nQnqG/WsT1CDD6b4fTe8qLUZzZRT/X4sKyvM4hAL7nveUsU3EjjXWmHLGXmN/\nWjH3ZIkm8O7owXcbpEycwnySZiG8BmlcjvHiywwckjCt8v7UwrQocG/lE8gF\nef00DQLtd2JRdkTZt+WTgUY6siVKquhuVavJbUkQ2bZD+WZjPetohMOTLhUy\nIVHxvNGxoUKS9fGdBDKViRehO/5qX84Ic2Y59NSPtAh5h52yviYtUam6qdKf\nXigpwDZBBqA4lAZ9TP0rs9ZfR/rsxTryRAYQz0LbHIFaYN3uNvkU11IMJ6wv\n/Yg3rVL4znO9w2R5FpsoMYReAnZLIM8QfpTIcIDgfI+LAU+Fgylznj7mNBwM\nLAJU\r\n=hQoj\r\n-----END PGP SIGNATURE-----\r\n" + }, + "files": [ + "index.js" + ], + "gitHead": "a0d55382c805f3b117a055e0be203f13f2519cc5", + "homepage": "https://github.com/LinusU/buffer-alloc#readme", + "keywords": [ + "alloc", + "allocate", + "buffer alloc", + "buffer allocate", + "buffer" + ], + "license": "MIT", + "maintainers": [ + { + "name": "linusu", + "email": "linus@folkdatorn.se" + } + ], + "name": "buffer-alloc", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/LinusU/buffer-alloc.git" + }, + "scripts": { + "test": "standard && node test" + }, + "version": "1.2.0" +} diff --git a/NodjsPartieArduino/node_modules/buffer-alloc/readme.md b/NodjsPartieArduino/node_modules/buffer-alloc/readme.md new file mode 100644 index 0000000..80c7d7b --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-alloc/readme.md @@ -0,0 +1,43 @@ +# Buffer Alloc + +A [ponyfill](https://ponyfill.com) for `Buffer.alloc`. + +Works as Node.js: `v7.0.0`
+Works on Node.js: `v0.10.0` + +## Installation + +```sh +npm install --save buffer-alloc +``` + +## Usage + +```js +const alloc = require('buffer-alloc') + +console.log(alloc(4)) +//=> + +console.log(alloc(6, 0x41)) +//=> + +console.log(alloc(10, 'linus', 'utf8')) +//=> +``` + +## API + +### alloc(size[, fill[, encoding]]) + +- `size` <Integer> The desired length of the new `Buffer` +- `fill` <String> | <Buffer> | <Integer> A value to pre-fill the new `Buffer` with. **Default:** `0` +- `encoding` <String> If `fill` is a string, this is its encoding. **Default:** `'utf8'` + +Allocates a new `Buffer` of `size` bytes. If `fill` is `undefined`, the `Buffer` will be zero-filled. + +## See also + +- [buffer-alloc-unsafe](https://github.com/LinusU/buffer-alloc-unsafe) A ponyfill for `Buffer.allocUnsafe` +- [buffer-fill](https://github.com/LinusU/buffer-fill) A ponyfill for `Buffer.fill` +- [buffer-from](https://github.com/LinusU/buffer-from) A ponyfill for `Buffer.from` diff --git a/NodjsPartieArduino/node_modules/buffer-fill/index.js b/NodjsPartieArduino/node_modules/buffer-fill/index.js new file mode 100644 index 0000000..428a9e1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-fill/index.js @@ -0,0 +1,113 @@ +/* Node.js 6.4.0 and up has full support */ +var hasFullSupport = (function () { + try { + if (!Buffer.isEncoding('latin1')) { + return false + } + + var buf = Buffer.alloc ? Buffer.alloc(4) : new Buffer(4) + + buf.fill('ab', 'ucs2') + + return (buf.toString('hex') === '61006200') + } catch (_) { + return false + } +}()) + +function isSingleByte (val) { + return (val.length === 1 && val.charCodeAt(0) < 256) +} + +function fillWithNumber (buffer, val, start, end) { + if (start < 0 || end > buffer.length) { + throw new RangeError('Out of range index') + } + + start = start >>> 0 + end = end === undefined ? buffer.length : end >>> 0 + + if (end > start) { + buffer.fill(val, start, end) + } + + return buffer +} + +function fillWithBuffer (buffer, val, start, end) { + if (start < 0 || end > buffer.length) { + throw new RangeError('Out of range index') + } + + if (end <= start) { + return buffer + } + + start = start >>> 0 + end = end === undefined ? buffer.length : end >>> 0 + + var pos = start + var len = val.length + while (pos <= (end - len)) { + val.copy(buffer, pos) + pos += len + } + + if (pos !== end) { + val.copy(buffer, pos, 0, end - pos) + } + + return buffer +} + +function fill (buffer, val, start, end, encoding) { + if (hasFullSupport) { + return buffer.fill(val, start, end, encoding) + } + + if (typeof val === 'number') { + return fillWithNumber(buffer, val, start, end) + } + + if (typeof val === 'string') { + if (typeof start === 'string') { + encoding = start + start = 0 + end = buffer.length + } else if (typeof end === 'string') { + encoding = end + end = buffer.length + } + + if (encoding !== undefined && typeof encoding !== 'string') { + throw new TypeError('encoding must be a string') + } + + if (encoding === 'latin1') { + encoding = 'binary' + } + + if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { + throw new TypeError('Unknown encoding: ' + encoding) + } + + if (val === '') { + return fillWithNumber(buffer, 0, start, end) + } + + if (isSingleByte(val)) { + return fillWithNumber(buffer, val.charCodeAt(0), start, end) + } + + val = new Buffer(val, encoding) + } + + if (Buffer.isBuffer(val)) { + return fillWithBuffer(buffer, val, start, end) + } + + // Other values (e.g. undefined, boolean, object) results in zero-fill + return fillWithNumber(buffer, 0, start, end) +} + +module.exports = fill diff --git a/NodjsPartieArduino/node_modules/buffer-fill/package.json b/NodjsPartieArduino/node_modules/buffer-fill/package.json new file mode 100644 index 0000000..d8f7279 --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-fill/package.json @@ -0,0 +1,88 @@ +{ + "_args": [ + [ + { + "raw": "buffer-fill@^1.0.0", + "scope": null, + "escapedName": "buffer-fill", + "name": "buffer-fill", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/buffer-alloc" + ] + ], + "_from": "buffer-fill@>=1.0.0 <2.0.0", + "_id": "buffer-fill@1.0.0", + "_inCache": true, + "_location": "/buffer-fill", + "_nodeVersion": "7.0.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/buffer-fill_1.0.0_1527636952747_0.20799370179837218" + }, + "_npmUser": { + "name": "linusu", + "email": "linus@folkdatorn.se" + }, + "_npmVersion": "3.10.8", + "_phantomChildren": {}, + "_requested": { + "raw": "buffer-fill@^1.0.0", + "scope": null, + "escapedName": "buffer-fill", + "name": "buffer-fill", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/buffer-alloc" + ], + "_resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "_shasum": "f8f78b76789888ef39f205cd637f68e702122b2c", + "_shrinkwrap": null, + "_spec": "buffer-fill@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/buffer-alloc", + "bugs": { + "url": "https://github.com/linusu/buffer-fill/issues" + }, + "dependencies": {}, + "description": "A [ponyfill](https://ponyfill.com) for `Buffer.fill`.", + "devDependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "standard": "^7.1.2" + }, + "directories": {}, + "dist": { + "shasum": "f8f78b76789888ef39f205cd637f68e702122b2c", + "tarball": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "fileCount": 3, + "unpackedSize": 4390, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDePZCRA9TVsSAnZWagAA6jAP/ilxGieW8Z7iZZjhfbLR\nhL+yhqdi5m0aSPzY4O7eb6e+Dd3/4fO8FxTcjQCpzie/n8Yo3uzY/RK0fN33\nDPh4kxNlHwrMhpBNuGG2RkKh114r1HkD+vVaWzZb+NFn523hv3OqDR7DOhHN\n7Zq9Y5QfHGma4dQRgfUvHFx0z6PRolCCB+3oGuSB8ER9VXMa6cOwr6whmccu\nwZzyVlpWEHCYekXGyrLtFRrIUezBDVitvz9QDMBn5feVh/tSsD42E/nUDaCW\njcm/TdvHssGyd1ZP6zGjgjvdMVBJgFsS8g9IJ/Vjojyd1KM3B5FI9bo4ChYt\nsL9FXZkcjVbsdGpnmXKVb2yHa9Bq/fPNRpi6zmLeKrsksLbkWMu8YU2U+sZ0\nBwIa/jCF9A1bMrrXgsPtgGQRQoVIL/MWRPtTgVlxupmAavZQJki4nKvQHF6H\nfCHDUTg3bBZgYXqPa+SBY7tqnw6b6CUioe2cZds96TXgZ+y+u28jj3+6j3ER\n+PBp/XMbTjUc8EVWEZEkNq4Hh9K4GhNGoM8CEKFtU6qmwLykrbB9JUskpNGk\naX/Tbx1MHxMU9o+uZ4AbIMmSTh097t6+Igx0HSQektms3mmtsAGx83oOLGd3\nK5Vil/u8V5//McTdf38G3kYlupClQQplYsSgvDxlU/Qg2rw8YJfDREXdAZI8\nnT2Y\r\n=hmqw\r\n-----END PGP SIGNATURE-----\r\n" + }, + "files": [ + "index.js" + ], + "gitHead": "a2badd1de771c99285e385dccdebd63093f0285a", + "homepage": "https://github.com/linusu/buffer-fill#readme", + "license": "MIT", + "maintainers": [ + { + "name": "linusu", + "email": "linus@folkdatorn.se" + } + ], + "name": "buffer-fill", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/linusu/buffer-fill.git" + }, + "scripts": { + "test": "standard && node test" + }, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/buffer-fill/readme.md b/NodjsPartieArduino/node_modules/buffer-fill/readme.md new file mode 100644 index 0000000..ac30738 --- /dev/null +++ b/NodjsPartieArduino/node_modules/buffer-fill/readme.md @@ -0,0 +1,54 @@ +# Buffer Fill + +A [ponyfill](https://ponyfill.com) for `Buffer.fill`. + +Works as Node.js: `v6.4.0`
+Works on Node.js: `v0.10.0` + +## Installation + +```sh +npm install --save buffer-fill +``` + +## Usage + +```js +const fill = require('buffer-fill') +const buf = Buffer.allocUnsafe(5) + +console.log(buf.fill(8)) +//=> + +console.log(buf.fill(9, 2, 4)) +//=> + +console.log(buf.fill('linus', 'latin1')) +//=> + +console.log(buf.fill('\u0222')) +//=> +``` + +## API + +### fill(buf, value[, offset[, end]][, encoding]) + +- `value` <String> | <Buffer> | <Integer> The value to fill `buf` with +- `offset` <Integer> Where to start filling `buf`. **Default:** `0` +- `end` <Integer> Where to stop filling `buf` (not inclusive). **Default:** `buf.length` +- `encoding` <String> If `value` is a string, this is its encoding. **Default:** `'utf8'` +- Return: <Buffer> A reference to `buf` + +Fills `buf` with the specified `value`. If the `offset` and `end` are not given, +the entire `buf` will be filled. This is meant to be a small simplification to +allow the creation and filling of a `Buffer` to be done on a single line. + +If the final write of a `fill()` operation falls on a multi-byte character, then +only the first bytes of that character that fit into `buf` are written. + +## See also + +- [buffer-alloc-unsafe](https://github.com/LinusU/buffer-alloc-unsafe) A ponyfill for `Buffer.allocUnsafe` +- [buffer-alloc](https://github.com/LinusU/buffer-alloc) A ponyfill for `Buffer.alloc` +- [buffer-from](https://github.com/LinusU/buffer-from) A ponyfill for `Buffer.from` diff --git a/NodjsPartieArduino/node_modules/bytes/History.md b/NodjsPartieArduino/node_modules/bytes/History.md new file mode 100644 index 0000000..13d463a --- /dev/null +++ b/NodjsPartieArduino/node_modules/bytes/History.md @@ -0,0 +1,82 @@ +3.0.0 / 2017-08-31 +================== + + * Change "kB" to "KB" in format output + * Remove support for Node.js 0.6 + * Remove support for ComponentJS + +2.5.0 / 2017-03-24 +================== + + * Add option "unit" + +2.4.0 / 2016-06-01 +================== + + * Add option "unitSeparator" + +2.3.0 / 2016-02-15 +================== + + * Drop partial bytes on all parsed units + * Fix non-finite numbers to `.format` to return `null` + * Fix parsing byte string that looks like hex + * perf: hoist regular expressions + +2.2.0 / 2015-11-13 +================== + + * add option "decimalPlaces" + * add option "fixedDecimals" + +2.1.0 / 2015-05-21 +================== + + * add `.format` export + * add `.parse` export + +2.0.2 / 2015-05-20 +================== + + * remove map recreation + * remove unnecessary object construction + +2.0.1 / 2015-05-07 +================== + + * fix browserify require + * remove node.extend dependency + +2.0.0 / 2015-04-12 +================== + + * add option "case" + * add option "thousandsSeparator" + * return "null" on invalid parse input + * support proper round-trip: bytes(bytes(num)) === num + * units no longer case sensitive when parsing + +1.0.0 / 2014-05-05 +================== + + * add negative support. fixes #6 + +0.3.0 / 2014-03-19 +================== + + * added terabyte support + +0.2.1 / 2013-04-01 +================== + + * add .component + +0.2.0 / 2012-10-28 +================== + + * bytes(200).should.eql('200b') + +0.1.0 / 2012-07-04 +================== + + * add bytes to string conversion [yields] diff --git a/NodjsPartieArduino/node_modules/bytes/LICENSE b/NodjsPartieArduino/node_modules/bytes/LICENSE new file mode 100644 index 0000000..63e95a9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bytes/LICENSE @@ -0,0 +1,23 @@ +(The MIT License) + +Copyright (c) 2012-2014 TJ Holowaychuk +Copyright (c) 2015 Jed Watson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/bytes/Readme.md b/NodjsPartieArduino/node_modules/bytes/Readme.md new file mode 100644 index 0000000..9b53745 --- /dev/null +++ b/NodjsPartieArduino/node_modules/bytes/Readme.md @@ -0,0 +1,125 @@ +# Bytes utility + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Utility to parse a string bytes (ex: `1TB`) to bytes (`1099511627776`) and vice-versa. + +## Installation + +This is a [Node.js](https://nodejs.org/en/) module available through the +[npm registry](https://www.npmjs.com/). Installation is done using the +[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally): + +```bash +$ npm install bytes +``` + +## Usage + +```js +var bytes = require('bytes'); +``` + +#### bytes.format(number value, [options]): string|null + +Format the given value in bytes into a string. If the value is negative, it is kept as such. If it is a float, it is + rounded. + +**Arguments** + +| Name | Type | Description | +|---------|----------|--------------------| +| value | `number` | Value in bytes | +| options | `Object` | Conversion options | + +**Options** + +| Property | Type | Description | +|-------------------|--------|-----------------------------------------------------------------------------------------| +| decimalPlaces | `number`|`null` | Maximum number of decimal places to include in output. Default value to `2`. | +| fixedDecimals | `boolean`|`null` | Whether to always display the maximum number of decimal places. Default value to `false` | +| thousandsSeparator | `string`|`null` | Example of values: `' '`, `','` and `.`... Default value to `''`. | +| unit | `string`|`null` | The unit in which the result will be returned (B/KB/MB/GB/TB). Default value to `''` (which means auto detect). | +| unitSeparator | `string`|`null` | Separator to use between number and unit. Default value to `''`. | + +**Returns** + +| Name | Type | Description | +|---------|------------------|-------------------------------------------------| +| results | `string`|`null` | Return null upon error. String value otherwise. | + +**Example** + +```js +bytes(1024); +// output: '1KB' + +bytes(1000); +// output: '1000B' + +bytes(1000, {thousandsSeparator: ' '}); +// output: '1 000B' + +bytes(1024 * 1.7, {decimalPlaces: 0}); +// output: '2KB' + +bytes(1024, {unitSeparator: ' '}); +// output: '1 KB' + +``` + +#### bytes.parse(string|number value): number|null + +Parse the string value into an integer in bytes. If no unit is given, or `value` +is a number, it is assumed the value is in bytes. + +Supported units and abbreviations are as follows and are case-insensitive: + + * `b` for bytes + * `kb` for kilobytes + * `mb` for megabytes + * `gb` for gigabytes + * `tb` for terabytes + +The units are in powers of two, not ten. This means 1kb = 1024b according to this parser. + +**Arguments** + +| Name | Type | Description | +|---------------|--------|--------------------| +| value | `string`|`number` | String to parse, or number in bytes. | + +**Returns** + +| Name | Type | Description | +|---------|-------------|-------------------------| +| results | `number`|`null` | Return null upon error. Value in bytes otherwise. | + +**Example** + +```js +bytes('1KB'); +// output: 1024 + +bytes('1024'); +// output: 1024 + +bytes(1024); +// output: 1024 +``` + +## License + +[MIT](LICENSE) + +[downloads-image]: https://img.shields.io/npm/dm/bytes.svg +[downloads-url]: https://npmjs.org/package/bytes +[npm-image]: https://img.shields.io/npm/v/bytes.svg +[npm-url]: https://npmjs.org/package/bytes +[travis-image]: https://img.shields.io/travis/visionmedia/bytes.js/master.svg +[travis-url]: https://travis-ci.org/visionmedia/bytes.js +[coveralls-image]: https://img.shields.io/coveralls/visionmedia/bytes.js/master.svg +[coveralls-url]: https://coveralls.io/r/visionmedia/bytes.js?branch=master diff --git a/NodjsPartieArduino/node_modules/bytes/index.js b/NodjsPartieArduino/node_modules/bytes/index.js new file mode 100644 index 0000000..1e39afd --- /dev/null +++ b/NodjsPartieArduino/node_modules/bytes/index.js @@ -0,0 +1,159 @@ +/*! + * bytes + * Copyright(c) 2012-2014 TJ Holowaychuk + * Copyright(c) 2015 Jed Watson + * MIT Licensed + */ + +'use strict'; + +/** + * Module exports. + * @public + */ + +module.exports = bytes; +module.exports.format = format; +module.exports.parse = parse; + +/** + * Module variables. + * @private + */ + +var formatThousandsRegExp = /\B(?=(\d{3})+(?!\d))/g; + +var formatDecimalsRegExp = /(?:\.0*|(\.[^0]+)0+)$/; + +var map = { + b: 1, + kb: 1 << 10, + mb: 1 << 20, + gb: 1 << 30, + tb: ((1 << 30) * 1024) +}; + +var parseRegExp = /^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb)$/i; + +/** + * Convert the given value in bytes into a string or parse to string to an integer in bytes. + * + * @param {string|number} value + * @param {{ + * case: [string], + * decimalPlaces: [number] + * fixedDecimals: [boolean] + * thousandsSeparator: [string] + * unitSeparator: [string] + * }} [options] bytes options. + * + * @returns {string|number|null} + */ + +function bytes(value, options) { + if (typeof value === 'string') { + return parse(value); + } + + if (typeof value === 'number') { + return format(value, options); + } + + return null; +} + +/** + * Format the given value in bytes into a string. + * + * If the value is negative, it is kept as such. If it is a float, + * it is rounded. + * + * @param {number} value + * @param {object} [options] + * @param {number} [options.decimalPlaces=2] + * @param {number} [options.fixedDecimals=false] + * @param {string} [options.thousandsSeparator=] + * @param {string} [options.unit=] + * @param {string} [options.unitSeparator=] + * + * @returns {string|null} + * @public + */ + +function format(value, options) { + if (!Number.isFinite(value)) { + return null; + } + + var mag = Math.abs(value); + var thousandsSeparator = (options && options.thousandsSeparator) || ''; + var unitSeparator = (options && options.unitSeparator) || ''; + var decimalPlaces = (options && options.decimalPlaces !== undefined) ? options.decimalPlaces : 2; + var fixedDecimals = Boolean(options && options.fixedDecimals); + var unit = (options && options.unit) || ''; + + if (!unit || !map[unit.toLowerCase()]) { + if (mag >= map.tb) { + unit = 'TB'; + } else if (mag >= map.gb) { + unit = 'GB'; + } else if (mag >= map.mb) { + unit = 'MB'; + } else if (mag >= map.kb) { + unit = 'KB'; + } else { + unit = 'B'; + } + } + + var val = value / map[unit.toLowerCase()]; + var str = val.toFixed(decimalPlaces); + + if (!fixedDecimals) { + str = str.replace(formatDecimalsRegExp, '$1'); + } + + if (thousandsSeparator) { + str = str.replace(formatThousandsRegExp, thousandsSeparator); + } + + return str + unitSeparator + unit; +} + +/** + * Parse the string value into an integer in bytes. + * + * If no unit is given, it is assumed the value is in bytes. + * + * @param {number|string} val + * + * @returns {number|null} + * @public + */ + +function parse(val) { + if (typeof val === 'number' && !isNaN(val)) { + return val; + } + + if (typeof val !== 'string') { + return null; + } + + // Test if the string passed is valid + var results = parseRegExp.exec(val); + var floatValue; + var unit = 'b'; + + if (!results) { + // Nothing could be extracted from the given string + floatValue = parseInt(val, 10); + unit = 'b' + } else { + // Retrieve the value and the unit + floatValue = parseFloat(results[1]); + unit = results[4].toLowerCase(); + } + + return Math.floor(map[unit] * floatValue); +} diff --git a/NodjsPartieArduino/node_modules/bytes/package.json b/NodjsPartieArduino/node_modules/bytes/package.json new file mode 100644 index 0000000..559334c --- /dev/null +++ b/NodjsPartieArduino/node_modules/bytes/package.json @@ -0,0 +1,122 @@ +{ + "_args": [ + [ + { + "raw": "bytes@3.0.0", + "scope": null, + "escapedName": "bytes", + "name": "bytes", + "rawSpec": "3.0.0", + "spec": "3.0.0", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/body-parser" + ] + ], + "_from": "bytes@3.0.0", + "_id": "bytes@3.0.0", + "_inCache": true, + "_location": "/bytes", + "_nodeVersion": "6.11.1", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/bytes-3.0.0.tgz_1504216364188_0.5158762519713491" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "3.10.10", + "_phantomChildren": {}, + "_requested": { + "raw": "bytes@3.0.0", + "scope": null, + "escapedName": "bytes", + "name": "bytes", + "rawSpec": "3.0.0", + "spec": "3.0.0", + "type": "version" + }, + "_requiredBy": [ + "/body-parser", + "/raw-body" + ], + "_resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "_shasum": "d32815404d689699f85a4ea4fa8755dd13a96048", + "_shrinkwrap": null, + "_spec": "bytes@3.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/body-parser", + "author": { + "name": "TJ Holowaychuk", + "email": "tj@vision-media.ca", + "url": "http://tjholowaychuk.com" + }, + "bugs": { + "url": "https://github.com/visionmedia/bytes.js/issues" + }, + "contributors": [ + { + "name": "Jed Watson", + "email": "jed.watson@me.com" + }, + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com" + } + ], + "dependencies": {}, + "description": "Utility to parse a string bytes to bytes and vice-versa", + "devDependencies": { + "mocha": "2.5.3", + "nyc": "10.3.2" + }, + "directories": {}, + "dist": { + "shasum": "d32815404d689699f85a4ea4fa8755dd13a96048", + "tarball": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz" + }, + "engines": { + "node": ">= 0.8" + }, + "files": [ + "History.md", + "LICENSE", + "Readme.md", + "index.js" + ], + "gitHead": "25d4cb488aea3b637448a85fa297d9e65b4b4e04", + "homepage": "https://github.com/visionmedia/bytes.js#readme", + "keywords": [ + "byte", + "bytes", + "utility", + "parse", + "parser", + "convert", + "converter" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + } + ], + "name": "bytes", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/visionmedia/bytes.js.git" + }, + "scripts": { + "test": "mocha --check-leaks --reporter spec", + "test-ci": "nyc --reporter=text npm test", + "test-cov": "nyc --reporter=html --reporter=text npm test" + }, + "version": "3.0.0" +} diff --git a/NodjsPartieArduino/node_modules/callsite/History.md b/NodjsPartieArduino/node_modules/callsite/History.md new file mode 100644 index 0000000..4994198 --- /dev/null +++ b/NodjsPartieArduino/node_modules/callsite/History.md @@ -0,0 +1,10 @@ + +1.0.0 / 2013-01-24 +================== + + * remove lame magical getters + +0.0.1 / 2010-01-03 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/callsite/Makefile b/NodjsPartieArduino/node_modules/callsite/Makefile new file mode 100644 index 0000000..634e372 --- /dev/null +++ b/NodjsPartieArduino/node_modules/callsite/Makefile @@ -0,0 +1,6 @@ + +test: + @./node_modules/.bin/mocha \ + --require should + +.PHONY: test \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/callsite/Readme.md b/NodjsPartieArduino/node_modules/callsite/Readme.md new file mode 100644 index 0000000..0dbd16a --- /dev/null +++ b/NodjsPartieArduino/node_modules/callsite/Readme.md @@ -0,0 +1,44 @@ +# callstack + + Access to v8's "raw" `CallSite`s. + +## Installation + + $ npm install callsite + +## Example + +```js +var stack = require('callsite'); + +foo(); + +function foo() { + bar(); +} + +function bar() { + baz(); +} + +function baz() { + console.log(); + stack().forEach(function(site){ + console.log(' \033[36m%s\033[90m in %s:%d\033[0m' + , site.getFunctionName() || 'anonymous' + , site.getFileName() + , site.getLineNumber()); + }); + console.log(); +} +``` + +## Why? + + Because you can do weird, stupid, clever, wacky things such as: + + - [better-assert](https://github.com/visionmedia/better-assert) + +## License + + MIT diff --git a/NodjsPartieArduino/node_modules/callsite/index.js b/NodjsPartieArduino/node_modules/callsite/index.js new file mode 100644 index 0000000..d3ee6f8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/callsite/index.js @@ -0,0 +1,10 @@ + +module.exports = function(){ + var orig = Error.prepareStackTrace; + Error.prepareStackTrace = function(_, stack){ return stack; }; + var err = new Error; + Error.captureStackTrace(err, arguments.callee); + var stack = err.stack; + Error.prepareStackTrace = orig; + return stack; +}; diff --git a/NodjsPartieArduino/node_modules/callsite/package.json b/NodjsPartieArduino/node_modules/callsite/package.json new file mode 100644 index 0000000..946bdd7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/callsite/package.json @@ -0,0 +1,77 @@ +{ + "_args": [ + [ + { + "raw": "callsite@1.0.0", + "scope": null, + "escapedName": "callsite", + "name": "callsite", + "rawSpec": "1.0.0", + "spec": "1.0.0", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/better-assert" + ] + ], + "_from": "callsite@1.0.0", + "_id": "callsite@1.0.0", + "_inCache": true, + "_location": "/callsite", + "_npmUser": { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + "_npmVersion": "1.2.2", + "_phantomChildren": {}, + "_requested": { + "raw": "callsite@1.0.0", + "scope": null, + "escapedName": "callsite", + "name": "callsite", + "rawSpec": "1.0.0", + "spec": "1.0.0", + "type": "version" + }, + "_requiredBy": [ + "/better-assert" + ], + "_resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", + "_shasum": "280398e5d664bd74038b6f0905153e6e8af1bc20", + "_shrinkwrap": null, + "_spec": "callsite@1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/better-assert", + "author": { + "name": "TJ Holowaychuk", + "email": "tj@vision-media.ca" + }, + "dependencies": {}, + "description": "access to v8's CallSites", + "devDependencies": { + "mocha": "*", + "should": "*" + }, + "directories": {}, + "dist": { + "shasum": "280398e5d664bd74038b6f0905153e6e8af1bc20", + "tarball": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz" + }, + "engines": { + "node": "*" + }, + "keywords": [ + "stack", + "trace", + "line" + ], + "main": "index", + "maintainers": [ + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + } + ], + "name": "callsite", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/choices-separator/LICENSE b/NodjsPartieArduino/node_modules/choices-separator/LICENSE new file mode 100644 index 0000000..b11cb79 --- /dev/null +++ b/NodjsPartieArduino/node_modules/choices-separator/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016-2017, Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/choices-separator/README.md b/NodjsPartieArduino/node_modules/choices-separator/README.md new file mode 100644 index 0000000..e7daf96 --- /dev/null +++ b/NodjsPartieArduino/node_modules/choices-separator/README.md @@ -0,0 +1,147 @@ +# choices-separator [![NPM version](https://img.shields.io/npm/v/choices-separator.svg?style=flat)](https://www.npmjs.com/package/choices-separator) [![NPM monthly downloads](https://img.shields.io/npm/dm/choices-separator.svg?style=flat)](https://npmjs.org/package/choices-separator) [![NPM total downloads](https://img.shields.io/npm/dt/choices-separator.svg?style=flat)](https://npmjs.org/package/choices-separator) [![Linux Build Status](https://img.shields.io/travis/enquirer/choices-separator.svg?style=flat&label=Travis)](https://travis-ci.org/enquirer/choices-separator) + +> Separator for choices arrays in prompts. Based on the Separator from inquirer. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save choices-separator +``` + +## Usage + +```js +var Separator = require('choices-separator'); +var Prompt = require('prompt-checkbox'); + +var prompt = new Prompt({ + message: 'Which do you prefer?', + name: 'favorites', + choices: [ + new Separator(' = Color = '), + {name: 'red'}, + {name: 'yellow', checked: true }, + {name: 'blue'}, + new Separator(' = Shape = '), + {name: 'circle'}, + {name: 'triangle'}, + {name: 'square'} + ] +}); + +prompt.run() + .then(function(answer) { + console.log(answer) + }); +``` + +## API + +### [Separator](index.js#L21) + +Separator object, used in choices arrays in prompts, to create a visual break between sections. The default separator line is `────────` styled with [ansi-dim](https://github.com/jonschlinkert/ansi-dim). + +**Params** + +* `options` **{String}**: Optionally provide a custom `line` and or `prefix` to use. + +**Example** + +```js +new Separator('----'); +new Separator({line: '----'}) +new Separator({line: '----', prefix: ' '}); +``` + +### [.raw](index.js#L56) + +Returns the `separator.line` stripped of ansi styling. + +* `returns` **{String}** + +**Example** + +```js +var separator = new Separator(); +console.log(separator.raw()); +//=> '────────' +``` + +### [.render](index.js#L72) + +Render `separator.prefix` plus `separator.line`. + +* `returns` **{String}** + +**Example** + +```js +var separator = new Separator(); +console.log(separator.render()); +//=> ' \u001b[2m────────\u001b[22m\n') +``` + +### [.exclude](index.js#L83) + +Returns false if the given object is a separator. + +**Params** + +* `choice` **{Object}**: object to test against +* `returns` **{Boolean}**: Returns false if the given object is a separator + +### [.toString](index.js#L93) + +Stringify separator + +* `returns` **{String}**: Returns the `separator.line` string + +## Attribution + +Originally inspired by the `Separator` class from Inquirer. + +## About + +### Related projects + +[enquirer](https://www.npmjs.com/package/enquirer): Intuitive, plugin-based prompt system for node.js. Much faster and lighter alternative to Inquirer, with all… [more](https://github.com/enquirer/enquirer) | [homepage](https://github.com/enquirer/enquirer "Intuitive, plugin-based prompt system for node.js. Much faster and lighter alternative to Inquirer, with all the same prompt types and more, but without the bloat.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on May 17, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/choices-separator/index.js b/NodjsPartieArduino/node_modules/choices-separator/index.js new file mode 100644 index 0000000..176c29d --- /dev/null +++ b/NodjsPartieArduino/node_modules/choices-separator/index.js @@ -0,0 +1,101 @@ +'use strict'; + +var debug = require('debug')('choices-separator'); +var strip = require('strip-color'); +var dim = require('ansi-dim'); + +/** + * Separator object, used in choices arrays in prompts, to + * create a visual break between sections. The default separator + * line is `────────` styled with [ansi-dim]. + * + * ```js + * new Separator('----'); + * new Separator({line: '----'}) + * new Separator({line: '----', prefix: ' '}); + * ``` + * @param {String} `options` Optionally provide a custom `line` and or `prefix` to use. + * @api public + */ + +function Separator(options) { + debug('initializing from <%s>', __filename); + this.isSeparator = true; + this.type = 'separator'; + + if (typeof options === 'string') { + options = { line: options }; + } + + this.options = options || {}; + this.prefix = ' '; + + if (typeof this.options.prefix === 'string') { + this.prefix = this.options.prefix; + } + + if (typeof this.options.line === 'string') { + this.line = this.options.line; + } else { + this.line = dim('────────'); + } +} + +/** + * Returns the `separator.line` stripped of ansi styling. + * + * ```js + * var separator = new Separator(); + * console.log(separator.raw()); + * //=> '────────' + * ``` + * @return {String} + * @api public + */ + +Separator.prototype.raw = function() { + return strip(this.line); +}; + +/** + * Render `separator.prefix` plus `separator.line`. + * + * ```js + * var separator = new Separator(); + * console.log(separator.render()); + * //=> ' \u001b[2m────────\u001b[22m\n') + * ``` + * @return {String} + * @api public + */ + +Separator.prototype.render = function() { + return this.prefix + this.line + '\n'; +}; + +/** + * Returns false if the given object is a separator. + * @param {Object} `choice` object to test against + * @return {Boolean} Returns false if the given object is a separator + * @api public + */ + +Separator.exclude = function(choice) { + return choice.type !== 'separator'; +}; + +/** + * Stringify separator + * @return {String} Returns the `separator.line` string + * @api public + */ + +Separator.prototype.toString = function() { + return this.line; +}; + +/** + * Expose `Separator` + */ + +module.exports = Separator; diff --git a/NodjsPartieArduino/node_modules/choices-separator/package.json b/NodjsPartieArduino/node_modules/choices-separator/package.json new file mode 100644 index 0000000..198cbe4 --- /dev/null +++ b/NodjsPartieArduino/node_modules/choices-separator/package.json @@ -0,0 +1,144 @@ +{ + "_args": [ + [ + { + "raw": "choices-separator@^2.0.0", + "scope": null, + "escapedName": "choices-separator", + "name": "choices-separator", + "rawSpec": "^2.0.0", + "spec": ">=2.0.0 <3.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices" + ] + ], + "_from": "choices-separator@>=2.0.0 <3.0.0", + "_id": "choices-separator@2.0.0", + "_inCache": true, + "_location": "/choices-separator", + "_nodeVersion": "7.7.3", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/choices-separator-2.0.0.tgz_1495026751582_0.16359598701819777" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "4.5.0", + "_phantomChildren": {}, + "_requested": { + "raw": "choices-separator@^2.0.0", + "scope": null, + "escapedName": "choices-separator", + "name": "choices-separator", + "rawSpec": "^2.0.0", + "spec": ">=2.0.0 <3.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prompt-choices" + ], + "_resolved": "https://registry.npmjs.org/choices-separator/-/choices-separator-2.0.0.tgz", + "_shasum": "92fd1763182d79033f5c5c51d0ba352e5567c696", + "_shrinkwrap": null, + "_spec": "choices-separator@^2.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/enquirer/choices-separator/issues" + }, + "dependencies": { + "ansi-dim": "^0.1.1", + "debug": "^2.6.6", + "strip-color": "^0.1.0" + }, + "description": "Separator for choices arrays in prompts. Based on the Separator from inquirer.", + "devDependencies": { + "gulp-format-md": "^0.1.12", + "mocha": "^3.3.0" + }, + "directories": {}, + "dist": { + "shasum": "92fd1763182d79033f5c5c51d0ba352e5567c696", + "tarball": "https://registry.npmjs.org/choices-separator/-/choices-separator-2.0.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "6a756f5ed71db26c0bd53a174971811e1bd59081", + "homepage": "https://github.com/enquirer/choices-separator", + "keywords": [ + "answer", + "answers", + "ask", + "checkbox", + "choice", + "choices", + "cli", + "command", + "enquirer", + "enquirerprompt", + "input", + "inquire", + "inquirer", + "interact", + "list", + "menu", + "password", + "prompt", + "prompts", + "question", + "readline", + "separator", + "stdin", + "stdout", + "terminal", + "tty", + "ui" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "choices-separator", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/enquirer/choices-separator.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "related": { + "list": [ + "enquirer" + ] + } + }, + "version": "2.0.0" +} diff --git a/NodjsPartieArduino/node_modules/chownr/LICENSE b/NodjsPartieArduino/node_modules/chownr/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/chownr/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/chownr/README.md b/NodjsPartieArduino/node_modules/chownr/README.md new file mode 100644 index 0000000..70e9a54 --- /dev/null +++ b/NodjsPartieArduino/node_modules/chownr/README.md @@ -0,0 +1,3 @@ +Like `chown -R`. + +Takes the same arguments as `fs.chown()` diff --git a/NodjsPartieArduino/node_modules/chownr/chownr.js b/NodjsPartieArduino/node_modules/chownr/chownr.js new file mode 100644 index 0000000..7e63928 --- /dev/null +++ b/NodjsPartieArduino/node_modules/chownr/chownr.js @@ -0,0 +1,88 @@ +'use strict' +const fs = require('fs') +const path = require('path') + +/* istanbul ignore next */ +const LCHOWN = fs.lchown ? 'lchown' : 'chown' +/* istanbul ignore next */ +const LCHOWNSYNC = fs.lchownSync ? 'lchownSync' : 'chownSync' + +// fs.readdir could only accept an options object as of node v6 +const nodeVersion = process.version +let readdir = (path, options, cb) => fs.readdir(path, options, cb) +let readdirSync = (path, options) => fs.readdirSync(path, options) +/* istanbul ignore next */ +if (/^v4\./.test(nodeVersion)) + readdir = (path, options, cb) => fs.readdir(path, cb) + +const chownrKid = (p, child, uid, gid, cb) => { + if (typeof child === 'string') + return fs.lstat(path.resolve(p, child), (er, stats) => { + if (er) + return cb(er) + stats.name = child + chownrKid(p, stats, uid, gid, cb) + }) + + if (child.isDirectory()) { + chownr(path.resolve(p, child.name), uid, gid, er => { + if (er) + return cb(er) + fs[LCHOWN](path.resolve(p, child.name), uid, gid, cb) + }) + } else + fs[LCHOWN](path.resolve(p, child.name), uid, gid, cb) +} + + +const chownr = (p, uid, gid, cb) => { + readdir(p, { withFileTypes: true }, (er, children) => { + // any error other than ENOTDIR or ENOTSUP means it's not readable, + // or doesn't exist. give up. + if (er && er.code !== 'ENOTDIR' && er.code !== 'ENOTSUP') + return cb(er) + if (er || !children.length) return fs[LCHOWN](p, uid, gid, cb) + + let len = children.length + let errState = null + const then = er => { + if (errState) return + if (er) return cb(errState = er) + if (-- len === 0) return fs[LCHOWN](p, uid, gid, cb) + } + + children.forEach(child => chownrKid(p, child, uid, gid, then)) + }) +} + +const chownrKidSync = (p, child, uid, gid) => { + if (typeof child === 'string') { + const stats = fs.lstatSync(path.resolve(p, child)) + stats.name = child + child = stats + } + + if (child.isDirectory()) + chownrSync(path.resolve(p, child.name), uid, gid) + + fs[LCHOWNSYNC](path.resolve(p, child.name), uid, gid) +} + +const chownrSync = (p, uid, gid) => { + let children + try { + children = readdirSync(p, { withFileTypes: true }) + } catch (er) { + if (er && er.code === 'ENOTDIR' && er.code !== 'ENOTSUP') + return fs[LCHOWNSYNC](p, uid, gid) + throw er + } + + if (children.length) + children.forEach(child => chownrKidSync(p, child, uid, gid)) + + return fs[LCHOWNSYNC](p, uid, gid) +} + +module.exports = chownr +chownr.sync = chownrSync diff --git a/NodjsPartieArduino/node_modules/chownr/package.json b/NodjsPartieArduino/node_modules/chownr/package.json new file mode 100644 index 0000000..b103b7b --- /dev/null +++ b/NodjsPartieArduino/node_modules/chownr/package.json @@ -0,0 +1,97 @@ +{ + "_args": [ + [ + { + "raw": "chownr@^1.0.1", + "scope": null, + "escapedName": "chownr", + "name": "chownr", + "rawSpec": "^1.0.1", + "spec": ">=1.0.1 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/tar-fs" + ] + ], + "_from": "chownr@>=1.0.1 <2.0.0", + "_hasShrinkwrap": false, + "_id": "chownr@1.1.1", + "_inCache": true, + "_location": "/chownr", + "_nodeVersion": "10.10.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/chownr_1.1.1_1537067648822_0.8733677031057796" + }, + "_npmUser": { + "name": "isaacs", + "email": "i@izs.me" + }, + "_npmVersion": "6.4.1", + "_phantomChildren": {}, + "_requested": { + "raw": "chownr@^1.0.1", + "scope": null, + "escapedName": "chownr", + "name": "chownr", + "rawSpec": "^1.0.1", + "spec": ">=1.0.1 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/tar-fs" + ], + "_resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "_shasum": "54726b8b8fff4df053c42187e801fb4412df1494", + "_shrinkwrap": null, + "_spec": "chownr@^1.0.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/tar-fs", + "author": { + "name": "Isaac Z. Schlueter", + "email": "i@izs.me", + "url": "http://blog.izs.me/" + }, + "bugs": { + "url": "https://github.com/isaacs/chownr/issues" + }, + "dependencies": {}, + "description": "like `chown -R`", + "devDependencies": { + "mkdirp": "0.3", + "rimraf": "", + "tap": "^12.0.1" + }, + "directories": {}, + "dist": { + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "shasum": "54726b8b8fff4df053c42187e801fb4412df1494", + "tarball": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "fileCount": 4, + "unpackedSize": 3901, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbncqBCRA9TVsSAnZWagAAzhUP/1pR2jFff+rVryKPm7jF\nc+IGuZPRxl4qLEjUSNSuVmq+eSWK3zMwSm+59eyI/+ArsjZvtIEi9TUo5ddV\n9vwa64C57bjTcbsSJgHUK+N+8qWggo3nXHYUhFUyVgaVihvVt4LUYPhWFpp2\nzjDdysskuD3hIkcsRPN7123OZwvl9NXU5E/DFmZJ95Jz0tVrABhE5GptOSab\nK69de/oz7tK+3tFAcApq1xNYfzkPSEQscQum+sleV56SEaEUQJfQzJC4iccM\nK7DjBNGkdH+japMi2vD9je2Jo5949wXBgOgjcZmoSgzb2gWivB4HcGeYh/fS\n5yX2CLCy0VOFdkK6C1bxIzxHQEqALY1pnPos1HkXSJMvzWdhNnq+n62IPOh9\n8MXEf0fUOdDfKSwAyOphtWmfu7Wy9gUrYDg4rHPDTQjGDM+mvIIMxMIwmQ0k\nsOOZMdXaaKf3tXtqNUT1j96hgVBTQ7X8/HrXxPuQI9hBrh4CdR7TekZFZ0NG\nrkiNT5fEGwpEz0EeiNlMkaNPkw+hvg6nTFp+0tePyWPC1weMlNCbhm4jipHt\nKl9t8ox+bsoKH/UviCYjC3XfJSEGqBpaox7i8Pjvcp25s4p9FwNiExE0pe2I\nvbWrbGEVL8lsoCJi84uI2n5PBcOyN51srZmWI6P9EU1nYzDPF/B2Z0N8yw5K\n8ks4\r\n=wIis\r\n-----END PGP SIGNATURE-----\r\n" + }, + "gitHead": "7a5c3d57c3691eebb9c66fa00fa6003d02ef9440", + "homepage": "https://github.com/isaacs/chownr#readme", + "license": "ISC", + "main": "chownr.js", + "maintainers": [ + { + "name": "isaacs", + "email": "i@izs.me" + } + ], + "name": "chownr", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/chownr.git" + }, + "scripts": { + "postpublish": "git push origin --all; git push origin --tags", + "postversion": "npm publish", + "preversion": "npm test", + "test": "tap test/*.js --cov" + }, + "version": "1.1.1" +} diff --git a/NodjsPartieArduino/node_modules/clone-deep/LICENSE b/NodjsPartieArduino/node_modules/clone-deep/LICENSE new file mode 100644 index 0000000..943e71d --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/clone-deep/README.md b/NodjsPartieArduino/node_modules/clone-deep/README.md new file mode 100644 index 0000000..5986cbc --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/README.md @@ -0,0 +1,84 @@ +# clone-deep [![NPM version](https://img.shields.io/npm/v/clone-deep.svg?style=flat)](https://www.npmjs.com/package/clone-deep) [![NPM monthly downloads](https://img.shields.io/npm/dm/clone-deep.svg?style=flat)](https://npmjs.org/package/clone-deep) [![NPM total downloads](https://img.shields.io/npm/dt/clone-deep.svg?style=flat)](https://npmjs.org/package/clone-deep) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/clone-deep.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/clone-deep) + +> Recursively (deep) clone JavaScript native types, like Object, Array, RegExp, Date as well as primitives. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save clone-deep +``` + +## Usage + +```js +var cloneDeep = require('clone-deep'); + +var obj = {a: 'b'}; +var arr = [obj]; + +var copy = cloneDeep(arr); +obj.c = 'd'; + +console.log(copy); +//=> [{a: 'b'}] + +console.log(arr); +//=> [{a: 'b', c: 'd'}] +``` + +## Heads up! + +The `instanceClone` function is invoked to clone objects that are not "plain" objects (as defined by [isPlainObject](#isPlainObject)`isPlainObject`) if it is provided. If `instanceClone` is not specified, it will not attempt to clone non-plain objects, and will copy the object reference. + +## Attribution + +Based on [mout's](https://github.com/mout/mout) implementation of deepClone. + +## About + +### Related projects + +* [is-plain-object](https://www.npmjs.com/package/is-plain-object): Returns true if an object was created by the `Object` constructor. | [homepage](https://github.com/jonschlinkert/is-plain-object "Returns true if an object was created by the `Object` constructor.") +* [isobject](https://www.npmjs.com/package/isobject): Returns true if the value is an object and not an array or null. | [homepage](https://github.com/jonschlinkert/isobject "Returns true if the value is an object and not an array or null.") +* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.") +* [shallow-clone](https://www.npmjs.com/package/shallow-clone): Make a shallow clone of an object, array or primitive. | [homepage](https://github.com/jonschlinkert/shallow-clone "Make a shallow clone of an object, array or primitive.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on July 16, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/clone-deep/index.js b/NodjsPartieArduino/node_modules/clone-deep/index.js new file mode 100644 index 0000000..1697b2b --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/index.js @@ -0,0 +1,55 @@ +'use strict'; + +/** + * Module dependenices + */ + +var isObject = require('is-plain-object'); +var clone = require('shallow-clone'); +var typeOf = require('kind-of'); +var forOwn = require('for-own'); + +/** + * Recursively clone native types. + */ + +function cloneDeep(val, instanceClone) { + switch (typeOf(val)) { + case 'object': + return cloneObjectDeep(val, instanceClone); + case 'array': + return cloneArrayDeep(val, instanceClone); + default: { + return clone(val); + } + } +} + +function cloneObjectDeep(obj, instanceClone) { + if (isObject(obj)) { + var res = {}; + forOwn(obj, function(obj, key) { + this[key] = cloneDeep(obj, instanceClone); + }, res); + return res; + } else if (instanceClone) { + return instanceClone(obj); + } else { + return obj; + } +} + +function cloneArrayDeep(arr, instanceClone) { + var len = arr.length, res = []; + var i = -1; + while (++i < len) { + res[i] = cloneDeep(arr[i], instanceClone); + } + return res; +} + +/** + * Expose `cloneDeep` + */ + +module.exports = cloneDeep; diff --git a/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/LICENSE b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/LICENSE new file mode 100644 index 0000000..3f2eca1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/README.md b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/README.md new file mode 100644 index 0000000..170bf30 --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/README.md @@ -0,0 +1,342 @@ +# kind-of [![NPM version](https://img.shields.io/npm/v/kind-of.svg?style=flat)](https://www.npmjs.com/package/kind-of) [![NPM monthly downloads](https://img.shields.io/npm/dm/kind-of.svg?style=flat)](https://npmjs.org/package/kind-of) [![NPM total downloads](https://img.shields.io/npm/dt/kind-of.svg?style=flat)](https://npmjs.org/package/kind-of) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/kind-of.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/kind-of) + +> Get the native type of a value. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save kind-of +``` + +Install with [bower](https://bower.io/) + +```sh +$ bower install kind-of --save +``` + +## Why use this? + +1. [it's fast](#benchmarks) | [optimizations](#optimizations) +2. [better type checking](#better-type-checking) + +## Usage + +> es5, browser and es6 ready + +```js +var kindOf = require('kind-of'); + +kindOf(undefined); +//=> 'undefined' + +kindOf(null); +//=> 'null' + +kindOf(true); +//=> 'boolean' + +kindOf(false); +//=> 'boolean' + +kindOf(new Boolean(true)); +//=> 'boolean' + +kindOf(new Buffer('')); +//=> 'buffer' + +kindOf(42); +//=> 'number' + +kindOf(new Number(42)); +//=> 'number' + +kindOf('str'); +//=> 'string' + +kindOf(new String('str')); +//=> 'string' + +kindOf(arguments); +//=> 'arguments' + +kindOf({}); +//=> 'object' + +kindOf(Object.create(null)); +//=> 'object' + +kindOf(new Test()); +//=> 'object' + +kindOf(new Date()); +//=> 'date' + +kindOf([]); +//=> 'array' + +kindOf([1, 2, 3]); +//=> 'array' + +kindOf(new Array()); +//=> 'array' + +kindOf(/foo/); +//=> 'regexp' + +kindOf(new RegExp('foo')); +//=> 'regexp' + +kindOf(function () {}); +//=> 'function' + +kindOf(function * () {}); +//=> 'function' + +kindOf(new Function()); +//=> 'function' + +kindOf(new Map()); +//=> 'map' + +kindOf(new WeakMap()); +//=> 'weakmap' + +kindOf(new Set()); +//=> 'set' + +kindOf(new WeakSet()); +//=> 'weakset' + +kindOf(Symbol('str')); +//=> 'symbol' + +kindOf(new Int8Array()); +//=> 'int8array' + +kindOf(new Uint8Array()); +//=> 'uint8array' + +kindOf(new Uint8ClampedArray()); +//=> 'uint8clampedarray' + +kindOf(new Int16Array()); +//=> 'int16array' + +kindOf(new Uint16Array()); +//=> 'uint16array' + +kindOf(new Int32Array()); +//=> 'int32array' + +kindOf(new Uint32Array()); +//=> 'uint32array' + +kindOf(new Float32Array()); +//=> 'float32array' + +kindOf(new Float64Array()); +//=> 'float64array' +``` + +## Release history + +### v4.0.0 + +**Added** + +* `promise` support + +### v5.0.0 + +**Added** + +* `Set Iterator` and `Map Iterator` support + +**Fixed** + +* Now returns `generatorfunction` for generator functions + +## Benchmarks + +Benchmarked against [typeof](http://github.com/CodingFu/typeof) and [type-of](https://github.com/ForbesLindesay/type-of). +Note that performaces is slower for es6 features `Map`, `WeakMap`, `Set` and `WeakSet`. + +```bash +#1: array + current x 23,329,397 ops/sec ±0.82% (94 runs sampled) + lib-type-of x 4,170,273 ops/sec ±0.55% (94 runs sampled) + lib-typeof x 9,686,935 ops/sec ±0.59% (98 runs sampled) + +#2: boolean + current x 27,197,115 ops/sec ±0.85% (94 runs sampled) + lib-type-of x 3,145,791 ops/sec ±0.73% (97 runs sampled) + lib-typeof x 9,199,562 ops/sec ±0.44% (99 runs sampled) + +#3: date + current x 20,190,117 ops/sec ±0.86% (92 runs sampled) + lib-type-of x 5,166,970 ops/sec ±0.74% (94 runs sampled) + lib-typeof x 9,610,821 ops/sec ±0.50% (96 runs sampled) + +#4: function + current x 23,855,460 ops/sec ±0.60% (97 runs sampled) + lib-type-of x 5,667,740 ops/sec ±0.54% (100 runs sampled) + lib-typeof x 10,010,644 ops/sec ±0.44% (100 runs sampled) + +#5: null + current x 27,061,047 ops/sec ±0.97% (96 runs sampled) + lib-type-of x 13,965,573 ops/sec ±0.62% (97 runs sampled) + lib-typeof x 8,460,194 ops/sec ±0.61% (97 runs sampled) + +#6: number + current x 25,075,682 ops/sec ±0.53% (99 runs sampled) + lib-type-of x 2,266,405 ops/sec ±0.41% (98 runs sampled) + lib-typeof x 9,821,481 ops/sec ±0.45% (99 runs sampled) + +#7: object + current x 3,348,980 ops/sec ±0.49% (99 runs sampled) + lib-type-of x 3,245,138 ops/sec ±0.60% (94 runs sampled) + lib-typeof x 9,262,952 ops/sec ±0.59% (99 runs sampled) + +#8: regex + current x 21,284,827 ops/sec ±0.72% (96 runs sampled) + lib-type-of x 4,689,241 ops/sec ±0.43% (100 runs sampled) + lib-typeof x 8,957,593 ops/sec ±0.62% (98 runs sampled) + +#9: string + current x 25,379,234 ops/sec ±0.58% (96 runs sampled) + lib-type-of x 3,635,148 ops/sec ±0.76% (93 runs sampled) + lib-typeof x 9,494,134 ops/sec ±0.49% (98 runs sampled) + +#10: undef + current x 27,459,221 ops/sec ±1.01% (93 runs sampled) + lib-type-of x 14,360,433 ops/sec ±0.52% (99 runs sampled) + lib-typeof x 23,202,868 ops/sec ±0.59% (94 runs sampled) + +``` + +## Optimizations + +In 7 out of 8 cases, this library is 2x-10x faster than other top libraries included in the benchmarks. There are a few things that lead to this performance advantage, none of them hard and fast rules, but all of them simple and repeatable in almost any code library: + +1. Optimize around the fastest and most common use cases first. Of course, this will change from project-to-project, but I took some time to understand how and why `typeof` checks were being used in my own libraries and other libraries I use a lot. +2. Optimize around bottlenecks - In other words, the order in which conditionals are implemented is significant, because each check is only as fast as the failing checks that came before it. Here, the biggest bottleneck by far is checking for plain objects (an object that was created by the `Object` constructor). I opted to make this check happen by process of elimination rather than brute force up front (e.g. by using something like `val.constructor.name`), so that every other type check would not be penalized it. +3. Don't do uneccessary processing - why do `.slice(8, -1).toLowerCase();` just to get the word `regex`? It's much faster to do `if (type === '[object RegExp]') return 'regex'` +4. There is no reason to make the code in a microlib as terse as possible, just to win points for making it shorter. It's always better to favor performant code over terse code. You will always only be using a single `require()` statement to use the library anyway, regardless of how the code is written. + +## Better type checking + +kind-of is more correct than other type checking libs I've looked at. For example, here are some differing results from other popular libs: + +### [typeof](https://github.com/CodingFu/typeof) lib + +Incorrectly tests instances of custom constructors (pretty common): + +```js +var typeOf = require('typeof'); +function Test() {} +console.log(typeOf(new Test())); +//=> 'test' +``` + +Returns `object` instead of `arguments`: + +```js +function foo() { + console.log(typeOf(arguments)) //=> 'object' +} +foo(); +``` + +### [type-of](https://github.com/ForbesLindesay/type-of) lib + +Incorrectly returns `object` for generator functions, buffers, `Map`, `Set`, `WeakMap` and `WeakSet`: + +```js +function * foo() {} +console.log(typeOf(foo)); +//=> 'object' +console.log(typeOf(new Buffer(''))); +//=> 'object' +console.log(typeOf(new Map())); +//=> 'object' +console.log(typeOf(new Set())); +//=> 'object' +console.log(typeOf(new WeakMap())); +//=> 'object' +console.log(typeOf(new WeakSet())); +//=> 'object' +``` + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Related projects + +You might also be interested in these projects: + +* [is-glob](https://www.npmjs.com/package/is-glob): Returns `true` if the given string looks like a glob pattern or an extglob pattern… [more](https://github.com/jonschlinkert/is-glob) | [homepage](https://github.com/jonschlinkert/is-glob "Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a bet") +* [is-number](https://www.npmjs.com/package/is-number): Returns true if the value is a number. comprehensive tests. | [homepage](https://github.com/jonschlinkert/is-number "Returns true if the value is a number. comprehensive tests.") +* [is-primitive](https://www.npmjs.com/package/is-primitive): Returns `true` if the value is a primitive. | [homepage](https://github.com/jonschlinkert/is-primitive "Returns `true` if the value is a primitive. ") + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 82 | [jonschlinkert](https://github.com/jonschlinkert) | +| 3 | [aretecode](https://github.com/aretecode) | +| 2 | [miguelmota](https://github.com/miguelmota) | +| 1 | [dtothefp](https://github.com/dtothefp) | +| 1 | [ksheedlo](https://github.com/ksheedlo) | +| 1 | [pdehaan](https://github.com/pdehaan) | +| 1 | [laggingreflex](https://github.com/laggingreflex) | +| 1 | [charlike](https://github.com/charlike) | + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on October 13, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/index.js b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/index.js new file mode 100644 index 0000000..fc5cde9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/index.js @@ -0,0 +1,147 @@ +var toString = Object.prototype.toString; + +/** + * Get the native `typeof` a value. + * + * @param {*} `val` + * @return {*} Native javascript type + */ + +module.exports = function kindOf(val) { + var type = typeof val; + + // primitivies + if (type === 'undefined') { + return 'undefined'; + } + if (val === null) { + return 'null'; + } + if (val === true || val === false || val instanceof Boolean) { + return 'boolean'; + } + if (type === 'string' || val instanceof String) { + return 'string'; + } + if (type === 'number' || val instanceof Number) { + return 'number'; + } + + // functions + if (type === 'function' || val instanceof Function) { + if (typeof val.constructor.name !== 'undefined' && val.constructor.name.slice(0, 9) === 'Generator') { + return 'generatorfunction'; + } + return 'function'; + } + + // array + if (typeof Array.isArray !== 'undefined' && Array.isArray(val)) { + return 'array'; + } + + // check for instances of RegExp and Date before calling `toString` + if (val instanceof RegExp) { + return 'regexp'; + } + if (val instanceof Date) { + return 'date'; + } + + // other objects + type = toString.call(val); + + if (type === '[object RegExp]') { + return 'regexp'; + } + if (type === '[object Date]') { + return 'date'; + } + if (type === '[object Arguments]') { + return 'arguments'; + } + if (type === '[object Error]') { + return 'error'; + } + if (type === '[object Promise]') { + return 'promise'; + } + + // buffer + if (isBuffer(val)) { + return 'buffer'; + } + + // es6: Map, WeakMap, Set, WeakSet + if (type === '[object Set]') { + return 'set'; + } + if (type === '[object WeakSet]') { + return 'weakset'; + } + if (type === '[object Map]') { + return 'map'; + } + if (type === '[object WeakMap]') { + return 'weakmap'; + } + if (type === '[object Symbol]') { + return 'symbol'; + } + + if (type === '[object Map Iterator]') { + return 'mapiterator'; + } + if (type === '[object Set Iterator]') { + return 'setiterator'; + } + if (type === '[object String Iterator]') { + return 'stringiterator'; + } + if (type === '[object Array Iterator]') { + return 'arrayiterator'; + } + + // typed arrays + if (type === '[object Int8Array]') { + return 'int8array'; + } + if (type === '[object Uint8Array]') { + return 'uint8array'; + } + if (type === '[object Uint8ClampedArray]') { + return 'uint8clampedarray'; + } + if (type === '[object Int16Array]') { + return 'int16array'; + } + if (type === '[object Uint16Array]') { + return 'uint16array'; + } + if (type === '[object Int32Array]') { + return 'int32array'; + } + if (type === '[object Uint32Array]') { + return 'uint32array'; + } + if (type === '[object Float32Array]') { + return 'float32array'; + } + if (type === '[object Float64Array]') { + return 'float64array'; + } + + // must be a plain object + return 'object'; +}; + +/** + * If you need to support Safari 5-7 (8-10 yr-old browser), + * take a look at https://github.com/feross/is-buffer + */ + +function isBuffer(val) { + return val.constructor + && typeof val.constructor.isBuffer === 'function' + && val.constructor.isBuffer(val); +} diff --git a/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/package.json b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/package.json new file mode 100644 index 0000000..582237f --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/node_modules/kind-of/package.json @@ -0,0 +1,187 @@ +{ + "_args": [ + [ + { + "raw": "kind-of@^5.0.0", + "scope": null, + "escapedName": "kind-of", + "name": "kind-of", + "rawSpec": "^5.0.0", + "spec": ">=5.0.0 <6.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/clone-deep" + ] + ], + "_from": "kind-of@>=5.0.0 <6.0.0", + "_id": "kind-of@5.1.0", + "_inCache": true, + "_location": "/clone-deep/kind-of", + "_nodeVersion": "8.7.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/kind-of-5.1.0.tgz_1507878225264_0.114781056297943" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "5.4.2", + "_phantomChildren": {}, + "_requested": { + "raw": "kind-of@^5.0.0", + "scope": null, + "escapedName": "kind-of", + "name": "kind-of", + "rawSpec": "^5.0.0", + "spec": ">=5.0.0 <6.0.0", + "type": "range" + }, + "_requiredBy": [ + "/clone-deep" + ], + "_resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "_shasum": "729c91e2d857b7a419a1f9aa65685c4c33f5845d", + "_shrinkwrap": null, + "_spec": "kind-of@^5.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/clone-deep", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/kind-of/issues" + }, + "contributors": [ + { + "name": "David Fox-Powell", + "url": "https://dtothefp.github.io/me" + }, + { + "name": "James", + "url": "https://twitter.com/aretecode" + }, + { + "name": "Jon Schlinkert", + "url": "http://twitter.com/jonschlinkert" + }, + { + "name": "Ken Sheedlo", + "url": "kensheedlo.com" + }, + { + "name": "laggingreflex", + "url": "https://github.com/laggingreflex" + }, + { + "name": "Miguel Mota", + "url": "https://miguelmota.com" + }, + { + "name": "Peter deHaan", + "url": "http://about.me/peterdehaan" + }, + { + "name": "tunnckoCore", + "url": "https://i.am.charlike.online" + } + ], + "dependencies": {}, + "description": "Get the native type of a value.", + "devDependencies": { + "ansi-bold": "^0.1.1", + "benchmarked": "^1.1.1", + "browserify": "^14.4.0", + "gulp-format-md": "^0.1.12", + "matched": "^0.4.4", + "mocha": "^3.4.2", + "type-of": "^2.0.1", + "typeof": "^1.0.0" + }, + "directories": {}, + "dist": { + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "shasum": "729c91e2d857b7a419a1f9aa65685c4c33f5845d", + "tarball": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "ed479b6ee194dc1edff852f17095ae1de40bafbc", + "homepage": "https://github.com/jonschlinkert/kind-of", + "keywords": [ + "arguments", + "array", + "boolean", + "check", + "date", + "function", + "is", + "is-type", + "is-type-of", + "kind", + "kind-of", + "number", + "object", + "of", + "regexp", + "string", + "test", + "type", + "type-of", + "typeof", + "types" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "doowb", + "email": "brian.woodward@gmail.com" + }, + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "kind-of", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/kind-of.git" + }, + "scripts": { + "prepublish": "browserify -o browser.js -e index.js -s index --bare", + "test": "mocha" + }, + "verb": { + "related": { + "list": [ + "is-glob", + "is-number", + "is-primitive" + ] + }, + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "reflinks": [ + "type-of", + "typeof", + "verb" + ] + }, + "version": "5.1.0" +} diff --git a/NodjsPartieArduino/node_modules/clone-deep/package.json b/NodjsPartieArduino/node_modules/clone-deep/package.json new file mode 100644 index 0000000..b200661 --- /dev/null +++ b/NodjsPartieArduino/node_modules/clone-deep/package.json @@ -0,0 +1,145 @@ +{ + "_args": [ + [ + { + "raw": "clone-deep@^1.0.0", + "scope": null, + "escapedName": "clone-deep", + "name": "clone-deep", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-question" + ] + ], + "_from": "clone-deep@>=1.0.0 <2.0.0", + "_id": "clone-deep@1.0.0", + "_inCache": true, + "_location": "/clone-deep", + "_nodeVersion": "7.7.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/clone-deep-1.0.0.tgz_1500207488086_0.801335611147806" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "5.3.0", + "_phantomChildren": {}, + "_requested": { + "raw": "clone-deep@^1.0.0", + "scope": null, + "escapedName": "clone-deep", + "name": "clone-deep", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prompt-question" + ], + "_resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-1.0.0.tgz", + "_shasum": "b2f354444b5d4a0ce58faca337ef34da2b14a6c7", + "_shrinkwrap": null, + "_spec": "clone-deep@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-question", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/clone-deep/issues" + }, + "dependencies": { + "for-own": "^1.0.0", + "is-plain-object": "^2.0.4", + "kind-of": "^5.0.0", + "shallow-clone": "^1.0.0" + }, + "description": "Recursively (deep) clone JavaScript native types, like Object, Array, RegExp, Date as well as primitives.", + "devDependencies": { + "gulp-format-md": "^1.0.0", + "mocha": "^3.4.2" + }, + "directories": {}, + "dist": { + "integrity": "sha512-hmJRX8x1QOJVV+GUjOBzi6iauhPqc9hIF6xitWRBbiPZOBb6vGo/mDRIK9P74RTKSQK7AE8B0DDWY/vpRrPmQw==", + "shasum": "b2f354444b5d4a0ce58faca337ef34da2b14a6c7", + "tarball": "https://registry.npmjs.org/clone-deep/-/clone-deep-1.0.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "b033c5671c6a807b8b32bc2a1f66287482d3aee4", + "homepage": "https://github.com/jonschlinkert/clone-deep", + "keywords": [ + "array", + "clone", + "clone-array", + "clone-array-deep", + "clone-date", + "clone-deep", + "clone-object", + "clone-object-deep", + "clone-reg-exp", + "date", + "deep", + "exp", + "for", + "for-in", + "for-own", + "javascript", + "mixin", + "mixin-object", + "object", + "own", + "reg", + "util", + "utility" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "clone-deep", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/clone-deep.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "related": { + "list": [ + "shallow-clone", + "kind-of", + "isobject", + "is-plain-object" + ] + }, + "lint": { + "reflinks": true + } + }, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/code-point-at/index.js b/NodjsPartieArduino/node_modules/code-point-at/index.js new file mode 100644 index 0000000..0432fe6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/code-point-at/index.js @@ -0,0 +1,32 @@ +/* eslint-disable babel/new-cap, xo/throw-new-error */ +'use strict'; +module.exports = function (str, pos) { + if (str === null || str === undefined) { + throw TypeError(); + } + + str = String(str); + + var size = str.length; + var i = pos ? Number(pos) : 0; + + if (Number.isNaN(i)) { + i = 0; + } + + if (i < 0 || i >= size) { + return undefined; + } + + var first = str.charCodeAt(i); + + if (first >= 0xD800 && first <= 0xDBFF && size > i + 1) { + var second = str.charCodeAt(i + 1); + + if (second >= 0xDC00 && second <= 0xDFFF) { + return ((first - 0xD800) * 0x400) + second - 0xDC00 + 0x10000; + } + } + + return first; +}; diff --git a/NodjsPartieArduino/node_modules/code-point-at/license b/NodjsPartieArduino/node_modules/code-point-at/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/NodjsPartieArduino/node_modules/code-point-at/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/code-point-at/package.json b/NodjsPartieArduino/node_modules/code-point-at/package.json new file mode 100644 index 0000000..bc4716f --- /dev/null +++ b/NodjsPartieArduino/node_modules/code-point-at/package.json @@ -0,0 +1,106 @@ +{ + "_args": [ + [ + { + "raw": "code-point-at@^1.0.0", + "scope": null, + "escapedName": "code-point-at", + "name": "code-point-at", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/string-width" + ] + ], + "_from": "code-point-at@>=1.0.0 <2.0.0", + "_id": "code-point-at@1.1.0", + "_inCache": true, + "_location": "/code-point-at", + "_nodeVersion": "4.6.1", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/code-point-at-1.1.0.tgz_1478169780337_0.8445875702891499" + }, + "_npmUser": { + "name": "sindresorhus", + "email": "sindresorhus@gmail.com" + }, + "_npmVersion": "2.15.9", + "_phantomChildren": {}, + "_requested": { + "raw": "code-point-at@^1.0.0", + "scope": null, + "escapedName": "code-point-at", + "name": "code-point-at", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/string-width" + ], + "_resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "_shasum": "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77", + "_shrinkwrap": null, + "_spec": "code-point-at@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/string-width", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "bugs": { + "url": "https://github.com/sindresorhus/code-point-at/issues" + }, + "dependencies": {}, + "description": "ES2015 `String#codePointAt()` ponyfill", + "devDependencies": { + "ava": "*", + "xo": "^0.16.0" + }, + "directories": {}, + "dist": { + "shasum": "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77", + "tarball": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "f8f21c8df2d40248fef1b36ca9076e59c0c34791", + "homepage": "https://github.com/sindresorhus/code-point-at#readme", + "keywords": [ + "es2015", + "ponyfill", + "polyfill", + "shim", + "string", + "str", + "code", + "point", + "at", + "codepoint", + "unicode" + ], + "license": "MIT", + "maintainers": [ + { + "name": "sindresorhus", + "email": "sindresorhus@gmail.com" + } + ], + "name": "code-point-at", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/sindresorhus/code-point-at.git" + }, + "scripts": { + "test": "xo && ava" + }, + "version": "1.1.0" +} diff --git a/NodjsPartieArduino/node_modules/code-point-at/readme.md b/NodjsPartieArduino/node_modules/code-point-at/readme.md new file mode 100644 index 0000000..4c97730 --- /dev/null +++ b/NodjsPartieArduino/node_modules/code-point-at/readme.md @@ -0,0 +1,32 @@ +# code-point-at [![Build Status](https://travis-ci.org/sindresorhus/code-point-at.svg?branch=master)](https://travis-ci.org/sindresorhus/code-point-at) + +> ES2015 [`String#codePointAt()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/codePointAt) [ponyfill](https://ponyfill.com) + + +## Install + +``` +$ npm install --save code-point-at +``` + + +## Usage + +```js +var codePointAt = require('code-point-at'); + +codePointAt('🐴'); +//=> 128052 + +codePointAt('abc', 2); +//=> 99 +``` + +## API + +### codePointAt(input, [position]) + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/NodjsPartieArduino/node_modules/collection-visit/LICENSE b/NodjsPartieArduino/node_modules/collection-visit/LICENSE new file mode 100644 index 0000000..ec85897 --- /dev/null +++ b/NodjsPartieArduino/node_modules/collection-visit/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015, 2017, Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/collection-visit/README.md b/NodjsPartieArduino/node_modules/collection-visit/README.md new file mode 100644 index 0000000..c4da3f1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/collection-visit/README.md @@ -0,0 +1,89 @@ +# collection-visit [![NPM version](https://img.shields.io/npm/v/collection-visit.svg?style=flat)](https://www.npmjs.com/package/collection-visit) [![NPM monthly downloads](https://img.shields.io/npm/dm/collection-visit.svg?style=flat)](https://npmjs.org/package/collection-visit) [![NPM total downloads](https://img.shields.io/npm/dt/collection-visit.svg?style=flat)](https://npmjs.org/package/collection-visit) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/collection-visit.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/collection-visit) + +> Visit a method over the items in an object, or map visit over the objects in an array. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save collection-visit +``` + +## Usage + +```js +var visit = require('collection-visit'); + +var ctx = { + data: {}, + set: function (key, value) { + if (typeof key === 'object') { + visit(ctx, 'set', key); + } else { + ctx.data[key] = value; + } + } +}; + +ctx.set('a', 'a'); +ctx.set('b', 'b'); +ctx.set('c', 'c'); +ctx.set({d: {e: 'f'}}); + +console.log(ctx.data); +//=> {a: 'a', b: 'b', c: 'c', d: { e: 'f' }}; +``` + +## About + +### Related projects + +* [base-methods](https://www.npmjs.com/package/base-methods): base-methods is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… [more](https://github.com/jonschlinkert/base-methods) | [homepage](https://github.com/jonschlinkert/base-methods "base-methods is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting with a handful of common methods, like `set`, `get`, `del` and `use`.") +* [map-visit](https://www.npmjs.com/package/map-visit): Map `visit` over an array of objects. | [homepage](https://github.com/jonschlinkert/map-visit "Map `visit` over an array of objects.") +* [object-visit](https://www.npmjs.com/package/object-visit): Call a specified method on each value in the given object. | [homepage](https://github.com/jonschlinkert/object-visit "Call a specified method on each value in the given object.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 13 | [jonschlinkert](https://github.com/jonschlinkert) | +| 9 | [doowb](https://github.com/doowb) | + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.5.0, on April 09, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/collection-visit/index.js b/NodjsPartieArduino/node_modules/collection-visit/index.js new file mode 100644 index 0000000..d1977ab --- /dev/null +++ b/NodjsPartieArduino/node_modules/collection-visit/index.js @@ -0,0 +1,30 @@ +/*! + * collection-visit + * + * Copyright (c) 2015, 2017, Jon Schlinkert. + * Released under the MIT License. + */ + +'use strict'; + +var visit = require('object-visit'); +var mapVisit = require('map-visit'); + +module.exports = function(collection, method, val) { + var result; + + if (typeof val === 'string' && (method in collection)) { + var args = [].slice.call(arguments, 2); + result = collection[method].apply(collection, args); + } else if (Array.isArray(val)) { + result = mapVisit.apply(null, arguments); + } else { + result = visit.apply(null, arguments); + } + + if (typeof result !== 'undefined') { + return result; + } + + return collection; +}; diff --git a/NodjsPartieArduino/node_modules/collection-visit/package.json b/NodjsPartieArduino/node_modules/collection-visit/package.json new file mode 100644 index 0000000..5ffd84f --- /dev/null +++ b/NodjsPartieArduino/node_modules/collection-visit/package.json @@ -0,0 +1,154 @@ +{ + "_args": [ + [ + { + "raw": "collection-visit@^1.0.0", + "scope": null, + "escapedName": "collection-visit", + "name": "collection-visit", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices" + ] + ], + "_from": "collection-visit@>=1.0.0 <2.0.0", + "_id": "collection-visit@1.0.0", + "_inCache": true, + "_location": "/collection-visit", + "_nodeVersion": "7.7.3", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/collection-visit-1.0.0.tgz_1491775229437_0.10189219401217997" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "4.1.2", + "_phantomChildren": {}, + "_requested": { + "raw": "collection-visit@^1.0.0", + "scope": null, + "escapedName": "collection-visit", + "name": "collection-visit", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prompt-choices" + ], + "_resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "_shasum": "4bc0373c164bc3291b4d368c829cf1a80a59dca0", + "_shrinkwrap": null, + "_spec": "collection-visit@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-choices", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/collection-visit/issues" + }, + "contributors": [ + { + "name": "Brian Woodward", + "email": "brian.woodward@gmail.com", + "url": "https://twitter.com/doowb" + }, + { + "name": "Jon Schlinkert", + "email": "jon.schlinkert@sellside.com", + "url": "http://twitter.com/jonschlinkert" + } + ], + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "description": "Visit a method over the items in an object, or map visit over the objects in an array.", + "devDependencies": { + "clone-deep": "^0.2.4", + "gulp": "^3.9.1", + "gulp-eslint": "^3.0.1", + "gulp-format-md": "^0.1.12", + "gulp-istanbul": "^1.1.1", + "gulp-mocha": "^3.0.0", + "mocha": "^3.2.0" + }, + "directories": {}, + "dist": { + "shasum": "4bc0373c164bc3291b4d368c829cf1a80a59dca0", + "tarball": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "39c229dceb7e124cb821b59668df5da1d5c81a6c", + "homepage": "https://github.com/jonschlinkert/collection-visit", + "keywords": [ + "array", + "arrays", + "collection", + "context", + "function", + "helper", + "invoke", + "key", + "map", + "method", + "object", + "objects", + "value", + "visit", + "visitor" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "doowb", + "email": "brian.woodward@gmail.com" + }, + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "collection-visit", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/collection-visit.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "related": { + "list": [ + "base-methods", + "map-visit", + "object-visit" + ] + }, + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + } + }, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/commander/CHANGELOG.md b/NodjsPartieArduino/node_modules/commander/CHANGELOG.md new file mode 100644 index 0000000..fd4f69c --- /dev/null +++ b/NodjsPartieArduino/node_modules/commander/CHANGELOG.md @@ -0,0 +1,396 @@ + +2.19.0 / 2018-10-02 +================== + + * Removed newline after Options and Commands headers (#864) + * Bugfix - Error output (#862) + * Fix to change default value to string (#856) + +2.18.0 / 2018-09-07 +================== + + * Standardize help output (#853) + * chmod 644 travis.yml (#851) + * add support for execute typescript subcommand via ts-node (#849) + +2.17.1 / 2018-08-07 +================== + + * Fix bug in command emit (#844) + +2.17.0 / 2018-08-03 +================== + + * fixed newline output after help information (#833) + * Fix to emit the action even without command (#778) + * npm update (#823) + +2.16.0 / 2018-06-29 +================== + + * Remove Makefile and `test/run` (#821) + * Make 'npm test' run on Windows (#820) + * Add badge to display install size (#807) + * chore: cache node_modules (#814) + * chore: remove Node.js 4 (EOL), add Node.js 10 (#813) + * fixed typo in readme (#812) + * Fix types (#804) + * Update eslint to resolve vulnerabilities in lodash (#799) + * updated readme with custom event listeners. (#791) + * fix tests (#794) + +2.15.0 / 2018-03-07 +================== + + * Update downloads badge to point to graph of downloads over time instead of duplicating link to npm + * Arguments description + +2.14.1 / 2018-02-07 +================== + + * Fix typing of help function + +2.14.0 / 2018-02-05 +================== + + * only register the option:version event once + * Fixes issue #727: Passing empty string for option on command is set to undefined + * enable eqeqeq rule + * resolves #754 add linter configuration to project + * resolves #560 respect custom name for version option + * document how to override the version flag + * document using options per command + +2.13.0 / 2018-01-09 +================== + + * Do not print default for --no- + * remove trailing spaces in command help + * Update CI's Node.js to LTS and latest version + * typedefs: Command and Option types added to commander namespace + +2.12.2 / 2017-11-28 +================== + + * fix: typings are not shipped + +2.12.1 / 2017-11-23 +================== + + * Move @types/node to dev dependency + +2.12.0 / 2017-11-22 +================== + + * add attributeName() method to Option objects + * Documentation updated for options with --no prefix + * typings: `outputHelp` takes a string as the first parameter + * typings: use overloads + * feat(typings): update to match js api + * Print default value in option help + * Fix translation error + * Fail when using same command and alias (#491) + * feat(typings): add help callback + * fix bug when description is add after command with options (#662) + * Format js code + * Rename History.md to CHANGELOG.md (#668) + * feat(typings): add typings to support TypeScript (#646) + * use current node + +2.11.0 / 2017-07-03 +================== + + * Fix help section order and padding (#652) + * feature: support for signals to subcommands (#632) + * Fixed #37, --help should not display first (#447) + * Fix translation errors. (#570) + * Add package-lock.json + * Remove engines + * Upgrade package version + * Prefix events to prevent conflicts between commands and options (#494) + * Removing dependency on graceful-readlink + * Support setting name in #name function and make it chainable + * Add .vscode directory to .gitignore (Visual Studio Code metadata) + * Updated link to ruby commander in readme files + +2.10.0 / 2017-06-19 +================== + + * Update .travis.yml. drop support for older node.js versions. + * Fix require arguments in README.md + * On SemVer you do not start from 0.0.1 + * Add missing semi colon in readme + * Add save param to npm install + * node v6 travis test + * Update Readme_zh-CN.md + * Allow literal '--' to be passed-through as an argument + * Test subcommand alias help + * link build badge to master branch + * Support the alias of Git style sub-command + * added keyword commander for better search result on npm + * Fix Sub-Subcommands + * test node.js stable + * Fixes TypeError when a command has an option called `--description` + * Update README.md to make it beginner friendly and elaborate on the difference between angled and square brackets. + * Add chinese Readme file + +2.9.0 / 2015-10-13 +================== + + * Add option `isDefault` to set default subcommand #415 @Qix- + * Add callback to allow filtering or post-processing of help text #434 @djulien + * Fix `undefined` text in help information close #414 #416 @zhiyelee + +2.8.1 / 2015-04-22 +================== + + * Back out `support multiline description` Close #396 #397 + +2.8.0 / 2015-04-07 +================== + + * Add `process.execArg` support, execution args like `--harmony` will be passed to sub-commands #387 @DigitalIO @zhiyelee + * Fix bug in Git-style sub-commands #372 @zhiyelee + * Allow commands to be hidden from help #383 @tonylukasavage + * When git-style sub-commands are in use, yet none are called, display help #382 @claylo + * Add ability to specify arguments syntax for top-level command #258 @rrthomas + * Support multiline descriptions #208 @zxqfox + +2.7.1 / 2015-03-11 +================== + + * Revert #347 (fix collisions when option and first arg have same name) which causes a bug in #367. + +2.7.0 / 2015-03-09 +================== + + * Fix git-style bug when installed globally. Close #335 #349 @zhiyelee + * Fix collisions when option and first arg have same name. Close #346 #347 @tonylukasavage + * Add support for camelCase on `opts()`. Close #353 @nkzawa + * Add node.js 0.12 and io.js to travis.yml + * Allow RegEx options. #337 @palanik + * Fixes exit code when sub-command failing. Close #260 #332 @pirelenito + * git-style `bin` files in $PATH make sense. Close #196 #327 @zhiyelee + +2.6.0 / 2014-12-30 +================== + + * added `Command#allowUnknownOption` method. Close #138 #318 @doozr @zhiyelee + * Add application description to the help msg. Close #112 @dalssoft + +2.5.1 / 2014-12-15 +================== + + * fixed two bugs incurred by variadic arguments. Close #291 @Quentin01 #302 @zhiyelee + +2.5.0 / 2014-10-24 +================== + + * add support for variadic arguments. Closes #277 @whitlockjc + +2.4.0 / 2014-10-17 +================== + + * fixed a bug on executing the coercion function of subcommands option. Closes #270 + * added `Command.prototype.name` to retrieve command name. Closes #264 #266 @tonylukasavage + * added `Command.prototype.opts` to retrieve all the options as a simple object of key-value pairs. Closes #262 @tonylukasavage + * fixed a bug on subcommand name. Closes #248 @jonathandelgado + * fixed function normalize doesn’t honor option terminator. Closes #216 @abbr + +2.3.0 / 2014-07-16 +================== + + * add command alias'. Closes PR #210 + * fix: Typos. Closes #99 + * fix: Unused fs module. Closes #217 + +2.2.0 / 2014-03-29 +================== + + * add passing of previous option value + * fix: support subcommands on windows. Closes #142 + * Now the defaultValue passed as the second argument of the coercion function. + +2.1.0 / 2013-11-21 +================== + + * add: allow cflag style option params, unit test, fixes #174 + +2.0.0 / 2013-07-18 +================== + + * remove input methods (.prompt, .confirm, etc) + +1.3.2 / 2013-07-18 +================== + + * add support for sub-commands to co-exist with the original command + +1.3.1 / 2013-07-18 +================== + + * add quick .runningCommand hack so you can opt-out of other logic when running a sub command + +1.3.0 / 2013-07-09 +================== + + * add EACCES error handling + * fix sub-command --help + +1.2.0 / 2013-06-13 +================== + + * allow "-" hyphen as an option argument + * support for RegExp coercion + +1.1.1 / 2012-11-20 +================== + + * add more sub-command padding + * fix .usage() when args are present. Closes #106 + +1.1.0 / 2012-11-16 +================== + + * add git-style executable subcommand support. Closes #94 + +1.0.5 / 2012-10-09 +================== + + * fix `--name` clobbering. Closes #92 + * fix examples/help. Closes #89 + +1.0.4 / 2012-09-03 +================== + + * add `outputHelp()` method. + +1.0.3 / 2012-08-30 +================== + + * remove invalid .version() defaulting + +1.0.2 / 2012-08-24 +================== + + * add `--foo=bar` support [arv] + * fix password on node 0.8.8. Make backward compatible with 0.6 [focusaurus] + +1.0.1 / 2012-08-03 +================== + + * fix issue #56 + * fix tty.setRawMode(mode) was moved to tty.ReadStream#setRawMode() (i.e. process.stdin.setRawMode()) + +1.0.0 / 2012-07-05 +================== + + * add support for optional option descriptions + * add defaulting of `.version()` to package.json's version + +0.6.1 / 2012-06-01 +================== + + * Added: append (yes or no) on confirmation + * Added: allow node.js v0.7.x + +0.6.0 / 2012-04-10 +================== + + * Added `.prompt(obj, callback)` support. Closes #49 + * Added default support to .choose(). Closes #41 + * Fixed the choice example + +0.5.1 / 2011-12-20 +================== + + * Fixed `password()` for recent nodes. Closes #36 + +0.5.0 / 2011-12-04 +================== + + * Added sub-command option support [itay] + +0.4.3 / 2011-12-04 +================== + + * Fixed custom help ordering. Closes #32 + +0.4.2 / 2011-11-24 +================== + + * Added travis support + * Fixed: line-buffered input automatically trimmed. Closes #31 + +0.4.1 / 2011-11-18 +================== + + * Removed listening for "close" on --help + +0.4.0 / 2011-11-15 +================== + + * Added support for `--`. Closes #24 + +0.3.3 / 2011-11-14 +================== + + * Fixed: wait for close event when writing help info [Jerry Hamlet] + +0.3.2 / 2011-11-01 +================== + + * Fixed long flag definitions with values [felixge] + +0.3.1 / 2011-10-31 +================== + + * Changed `--version` short flag to `-V` from `-v` + * Changed `.version()` so it's configurable [felixge] + +0.3.0 / 2011-10-31 +================== + + * Added support for long flags only. Closes #18 + +0.2.1 / 2011-10-24 +================== + + * "node": ">= 0.4.x < 0.7.0". Closes #20 + +0.2.0 / 2011-09-26 +================== + + * Allow for defaults that are not just boolean. Default peassignment only occurs for --no-*, optional, and required arguments. [Jim Isaacs] + +0.1.0 / 2011-08-24 +================== + + * Added support for custom `--help` output + +0.0.5 / 2011-08-18 +================== + + * Changed: when the user enters nothing prompt for password again + * Fixed issue with passwords beginning with numbers [NuckChorris] + +0.0.4 / 2011-08-15 +================== + + * Fixed `Commander#args` + +0.0.3 / 2011-08-15 +================== + + * Added default option value support + +0.0.2 / 2011-08-15 +================== + + * Added mask support to `Command#password(str[, mask], fn)` + * Added `Command#password(str, fn)` + +0.0.1 / 2010-01-03 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/commander/LICENSE b/NodjsPartieArduino/node_modules/commander/LICENSE new file mode 100644 index 0000000..10f997a --- /dev/null +++ b/NodjsPartieArduino/node_modules/commander/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2011 TJ Holowaychuk + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/commander/Readme.md b/NodjsPartieArduino/node_modules/commander/Readme.md new file mode 100644 index 0000000..a2a1547 --- /dev/null +++ b/NodjsPartieArduino/node_modules/commander/Readme.md @@ -0,0 +1,417 @@ +# Commander.js + + +[![Build Status](https://api.travis-ci.org/tj/commander.js.svg?branch=master)](http://travis-ci.org/tj/commander.js) +[![NPM Version](http://img.shields.io/npm/v/commander.svg?style=flat)](https://www.npmjs.org/package/commander) +[![NPM Downloads](https://img.shields.io/npm/dm/commander.svg?style=flat)](https://npmcharts.com/compare/commander?minimal=true) +[![Install Size](https://packagephobia.now.sh/badge?p=commander)](https://packagephobia.now.sh/result?p=commander) +[![Join the chat at https://gitter.im/tj/commander.js](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/tj/commander.js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + + The complete solution for [node.js](http://nodejs.org) command-line interfaces, inspired by Ruby's [commander](https://github.com/commander-rb/commander). + [API documentation](http://tj.github.com/commander.js/) + + +## Installation + + $ npm install commander --save + +## Option parsing + +Options with commander are defined with the `.option()` method, also serving as documentation for the options. The example below parses args and options from `process.argv`, leaving remaining args as the `program.args` array which were not consumed by options. + +```js +#!/usr/bin/env node + +/** + * Module dependencies. + */ + +var program = require('commander'); + +program + .version('0.1.0') + .option('-p, --peppers', 'Add peppers') + .option('-P, --pineapple', 'Add pineapple') + .option('-b, --bbq-sauce', 'Add bbq sauce') + .option('-c, --cheese [type]', 'Add the specified type of cheese [marble]', 'marble') + .parse(process.argv); + +console.log('you ordered a pizza with:'); +if (program.peppers) console.log(' - peppers'); +if (program.pineapple) console.log(' - pineapple'); +if (program.bbqSauce) console.log(' - bbq'); +console.log(' - %s cheese', program.cheese); +``` + +Short flags may be passed as a single arg, for example `-abc` is equivalent to `-a -b -c`. Multi-word options such as "--template-engine" are camel-cased, becoming `program.templateEngine` etc. + +Note that multi-word options starting with `--no` prefix negate the boolean value of the following word. For example, `--no-sauce` sets the value of `program.sauce` to false. + +```js +#!/usr/bin/env node + +/** + * Module dependencies. + */ + +var program = require('commander'); + +program + .option('--no-sauce', 'Remove sauce') + .parse(process.argv); + +console.log('you ordered a pizza'); +if (program.sauce) console.log(' with sauce'); +else console.log(' without sauce'); +``` + +## Version option + +Calling the `version` implicitly adds the `-V` and `--version` options to the command. +When either of these options is present, the command prints the version number and exits. + + $ ./examples/pizza -V + 0.0.1 + +If you want your program to respond to the `-v` option instead of the `-V` option, simply pass custom flags to the `version` method using the same syntax as the `option` method. + +```js +program + .version('0.0.1', '-v, --version') +``` + +The version flags can be named anything, but the long option is required. + +## Command-specific options + +You can attach options to a command. + +```js +#!/usr/bin/env node + +var program = require('commander'); + +program + .command('rm ') + .option('-r, --recursive', 'Remove recursively') + .action(function (dir, cmd) { + console.log('remove ' + dir + (cmd.recursive ? ' recursively' : '')) + }) + +program.parse(process.argv) +``` + +A command's options are validated when the command is used. Any unknown options will be reported as an error. However, if an action-based command does not define an action, then the options are not validated. + +## Coercion + +```js +function range(val) { + return val.split('..').map(Number); +} + +function list(val) { + return val.split(','); +} + +function collect(val, memo) { + memo.push(val); + return memo; +} + +function increaseVerbosity(v, total) { + return total + 1; +} + +program + .version('0.1.0') + .usage('[options] ') + .option('-i, --integer ', 'An integer argument', parseInt) + .option('-f, --float ', 'A float argument', parseFloat) + .option('-r, --range ..', 'A range', range) + .option('-l, --list ', 'A list', list) + .option('-o, --optional [value]', 'An optional value') + .option('-c, --collect [value]', 'A repeatable value', collect, []) + .option('-v, --verbose', 'A value that can be increased', increaseVerbosity, 0) + .parse(process.argv); + +console.log(' int: %j', program.integer); +console.log(' float: %j', program.float); +console.log(' optional: %j', program.optional); +program.range = program.range || []; +console.log(' range: %j..%j', program.range[0], program.range[1]); +console.log(' list: %j', program.list); +console.log(' collect: %j', program.collect); +console.log(' verbosity: %j', program.verbose); +console.log(' args: %j', program.args); +``` + +## Regular Expression +```js +program + .version('0.1.0') + .option('-s --size ', 'Pizza size', /^(large|medium|small)$/i, 'medium') + .option('-d --drink [drink]', 'Drink', /^(coke|pepsi|izze)$/i) + .parse(process.argv); + +console.log(' size: %j', program.size); +console.log(' drink: %j', program.drink); +``` + +## Variadic arguments + + The last argument of a command can be variadic, and only the last argument. To make an argument variadic you have to + append `...` to the argument name. Here is an example: + +```js +#!/usr/bin/env node + +/** + * Module dependencies. + */ + +var program = require('commander'); + +program + .version('0.1.0') + .command('rmdir [otherDirs...]') + .action(function (dir, otherDirs) { + console.log('rmdir %s', dir); + if (otherDirs) { + otherDirs.forEach(function (oDir) { + console.log('rmdir %s', oDir); + }); + } + }); + +program.parse(process.argv); +``` + + An `Array` is used for the value of a variadic argument. This applies to `program.args` as well as the argument passed + to your action as demonstrated above. + +## Specify the argument syntax + +```js +#!/usr/bin/env node + +var program = require('commander'); + +program + .version('0.1.0') + .arguments(' [env]') + .action(function (cmd, env) { + cmdValue = cmd; + envValue = env; + }); + +program.parse(process.argv); + +if (typeof cmdValue === 'undefined') { + console.error('no command given!'); + process.exit(1); +} +console.log('command:', cmdValue); +console.log('environment:', envValue || "no environment given"); +``` +Angled brackets (e.g. ``) indicate required input. Square brackets (e.g. `[env]`) indicate optional input. + +## Git-style sub-commands + +```js +// file: ./examples/pm +var program = require('commander'); + +program + .version('0.1.0') + .command('install [name]', 'install one or more packages') + .command('search [query]', 'search with optional query') + .command('list', 'list packages installed', {isDefault: true}) + .parse(process.argv); +``` + +When `.command()` is invoked with a description argument, no `.action(callback)` should be called to handle sub-commands, otherwise there will be an error. This tells commander that you're going to use separate executables for sub-commands, much like `git(1)` and other popular tools. +The commander will try to search the executables in the directory of the entry script (like `./examples/pm`) with the name `program-command`, like `pm-install`, `pm-search`. + +Options can be passed with the call to `.command()`. Specifying `true` for `opts.noHelp` will remove the subcommand from the generated help output. Specifying `true` for `opts.isDefault` will run the subcommand if no other subcommand is specified. + +If the program is designed to be installed globally, make sure the executables have proper modes, like `755`. + +### `--harmony` + +You can enable `--harmony` option in two ways: +* Use `#! /usr/bin/env node --harmony` in the sub-commands scripts. Note some os version don’t support this pattern. +* Use the `--harmony` option when call the command, like `node --harmony examples/pm publish`. The `--harmony` option will be preserved when spawning sub-command process. + +## Automated --help + + The help information is auto-generated based on the information commander already knows about your program, so the following `--help` info is for free: + +``` +$ ./examples/pizza --help +Usage: pizza [options] + +An application for pizzas ordering + +Options: + -h, --help output usage information + -V, --version output the version number + -p, --peppers Add peppers + -P, --pineapple Add pineapple + -b, --bbq Add bbq sauce + -c, --cheese Add the specified type of cheese [marble] + -C, --no-cheese You do not want any cheese +``` + +## Custom help + + You can display arbitrary `-h, --help` information + by listening for "--help". Commander will automatically + exit once you are done so that the remainder of your program + does not execute causing undesired behaviors, for example + in the following executable "stuff" will not output when + `--help` is used. + +```js +#!/usr/bin/env node + +/** + * Module dependencies. + */ + +var program = require('commander'); + +program + .version('0.1.0') + .option('-f, --foo', 'enable some foo') + .option('-b, --bar', 'enable some bar') + .option('-B, --baz', 'enable some baz'); + +// must be before .parse() since +// node's emit() is immediate + +program.on('--help', function(){ + console.log('') + console.log('Examples:'); + console.log(' $ custom-help --help'); + console.log(' $ custom-help -h'); +}); + +program.parse(process.argv); + +console.log('stuff'); +``` + +Yields the following help output when `node script-name.js -h` or `node script-name.js --help` are run: + +``` +Usage: custom-help [options] + +Options: + -h, --help output usage information + -V, --version output the version number + -f, --foo enable some foo + -b, --bar enable some bar + -B, --baz enable some baz + +Examples: + $ custom-help --help + $ custom-help -h +``` + +## .outputHelp(cb) + +Output help information without exiting. +Optional callback cb allows post-processing of help text before it is displayed. + +If you want to display help by default (e.g. if no command was provided), you can use something like: + +```js +var program = require('commander'); +var colors = require('colors'); + +program + .version('0.1.0') + .command('getstream [url]', 'get stream URL') + .parse(process.argv); + +if (!process.argv.slice(2).length) { + program.outputHelp(make_red); +} + +function make_red(txt) { + return colors.red(txt); //display the help text in red on the console +} +``` + +## .help(cb) + + Output help information and exit immediately. + Optional callback cb allows post-processing of help text before it is displayed. + + +## Custom event listeners + You can execute custom actions by listening to command and option events. + +```js +program.on('option:verbose', function () { + process.env.VERBOSE = this.verbose; +}); + +// error on unknown commands +program.on('command:*', function () { + console.error('Invalid command: %s\nSee --help for a list of available commands.', program.args.join(' ')); + process.exit(1); +}); +``` + +## Examples + +```js +var program = require('commander'); + +program + .version('0.1.0') + .option('-C, --chdir ', 'change the working directory') + .option('-c, --config ', 'set config path. defaults to ./deploy.conf') + .option('-T, --no-tests', 'ignore test hook'); + +program + .command('setup [env]') + .description('run setup commands for all envs') + .option("-s, --setup_mode [mode]", "Which setup mode to use") + .action(function(env, options){ + var mode = options.setup_mode || "normal"; + env = env || 'all'; + console.log('setup for %s env(s) with %s mode', env, mode); + }); + +program + .command('exec ') + .alias('ex') + .description('execute the given remote cmd') + .option("-e, --exec_mode ", "Which exec mode to use") + .action(function(cmd, options){ + console.log('exec "%s" using %s mode', cmd, options.exec_mode); + }).on('--help', function() { + console.log(''); + console.log('Examples:'); + console.log(''); + console.log(' $ deploy exec sequential'); + console.log(' $ deploy exec async'); + }); + +program + .command('*') + .action(function(env){ + console.log('deploying "%s"', env); + }); + +program.parse(process.argv); +``` + +More Demos can be found in the [examples](https://github.com/tj/commander.js/tree/master/examples) directory. + +## License + +MIT diff --git a/NodjsPartieArduino/node_modules/commander/index.js b/NodjsPartieArduino/node_modules/commander/index.js new file mode 100644 index 0000000..bf039c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/commander/index.js @@ -0,0 +1,1227 @@ +/** + * Module dependencies. + */ + +var EventEmitter = require('events').EventEmitter; +var spawn = require('child_process').spawn; +var path = require('path'); +var dirname = path.dirname; +var basename = path.basename; +var fs = require('fs'); + +/** + * Inherit `Command` from `EventEmitter.prototype`. + */ + +require('util').inherits(Command, EventEmitter); + +/** + * Expose the root command. + */ + +exports = module.exports = new Command(); + +/** + * Expose `Command`. + */ + +exports.Command = Command; + +/** + * Expose `Option`. + */ + +exports.Option = Option; + +/** + * Initialize a new `Option` with the given `flags` and `description`. + * + * @param {String} flags + * @param {String} description + * @api public + */ + +function Option(flags, description) { + this.flags = flags; + this.required = flags.indexOf('<') >= 0; + this.optional = flags.indexOf('[') >= 0; + this.bool = flags.indexOf('-no-') === -1; + flags = flags.split(/[ ,|]+/); + if (flags.length > 1 && !/^[[<]/.test(flags[1])) this.short = flags.shift(); + this.long = flags.shift(); + this.description = description || ''; +} + +/** + * Return option name. + * + * @return {String} + * @api private + */ + +Option.prototype.name = function() { + return this.long + .replace('--', '') + .replace('no-', ''); +}; + +/** + * Return option name, in a camelcase format that can be used + * as a object attribute key. + * + * @return {String} + * @api private + */ + +Option.prototype.attributeName = function() { + return camelcase(this.name()); +}; + +/** + * Check if `arg` matches the short or long flag. + * + * @param {String} arg + * @return {Boolean} + * @api private + */ + +Option.prototype.is = function(arg) { + return this.short === arg || this.long === arg; +}; + +/** + * Initialize a new `Command`. + * + * @param {String} name + * @api public + */ + +function Command(name) { + this.commands = []; + this.options = []; + this._execs = {}; + this._allowUnknownOption = false; + this._args = []; + this._name = name || ''; +} + +/** + * Add command `name`. + * + * The `.action()` callback is invoked when the + * command `name` is specified via __ARGV__, + * and the remaining arguments are applied to the + * function for access. + * + * When the `name` is "*" an un-matched command + * will be passed as the first arg, followed by + * the rest of __ARGV__ remaining. + * + * Examples: + * + * program + * .version('0.0.1') + * .option('-C, --chdir ', 'change the working directory') + * .option('-c, --config ', 'set config path. defaults to ./deploy.conf') + * .option('-T, --no-tests', 'ignore test hook') + * + * program + * .command('setup') + * .description('run remote setup commands') + * .action(function() { + * console.log('setup'); + * }); + * + * program + * .command('exec ') + * .description('run the given remote command') + * .action(function(cmd) { + * console.log('exec "%s"', cmd); + * }); + * + * program + * .command('teardown [otherDirs...]') + * .description('run teardown commands') + * .action(function(dir, otherDirs) { + * console.log('dir "%s"', dir); + * if (otherDirs) { + * otherDirs.forEach(function (oDir) { + * console.log('dir "%s"', oDir); + * }); + * } + * }); + * + * program + * .command('*') + * .description('deploy the given env') + * .action(function(env) { + * console.log('deploying "%s"', env); + * }); + * + * program.parse(process.argv); + * + * @param {String} name + * @param {String} [desc] for git-style sub-commands + * @return {Command} the new command + * @api public + */ + +Command.prototype.command = function(name, desc, opts) { + if (typeof desc === 'object' && desc !== null) { + opts = desc; + desc = null; + } + opts = opts || {}; + var args = name.split(/ +/); + var cmd = new Command(args.shift()); + + if (desc) { + cmd.description(desc); + this.executables = true; + this._execs[cmd._name] = true; + if (opts.isDefault) this.defaultExecutable = cmd._name; + } + cmd._noHelp = !!opts.noHelp; + this.commands.push(cmd); + cmd.parseExpectedArgs(args); + cmd.parent = this; + + if (desc) return this; + return cmd; +}; + +/** + * Define argument syntax for the top-level command. + * + * @api public + */ + +Command.prototype.arguments = function(desc) { + return this.parseExpectedArgs(desc.split(/ +/)); +}; + +/** + * Add an implicit `help [cmd]` subcommand + * which invokes `--help` for the given command. + * + * @api private + */ + +Command.prototype.addImplicitHelpCommand = function() { + this.command('help [cmd]', 'display help for [cmd]'); +}; + +/** + * Parse expected `args`. + * + * For example `["[type]"]` becomes `[{ required: false, name: 'type' }]`. + * + * @param {Array} args + * @return {Command} for chaining + * @api public + */ + +Command.prototype.parseExpectedArgs = function(args) { + if (!args.length) return; + var self = this; + args.forEach(function(arg) { + var argDetails = { + required: false, + name: '', + variadic: false + }; + + switch (arg[0]) { + case '<': + argDetails.required = true; + argDetails.name = arg.slice(1, -1); + break; + case '[': + argDetails.name = arg.slice(1, -1); + break; + } + + if (argDetails.name.length > 3 && argDetails.name.slice(-3) === '...') { + argDetails.variadic = true; + argDetails.name = argDetails.name.slice(0, -3); + } + if (argDetails.name) { + self._args.push(argDetails); + } + }); + return this; +}; + +/** + * Register callback `fn` for the command. + * + * Examples: + * + * program + * .command('help') + * .description('display verbose help') + * .action(function() { + * // output help here + * }); + * + * @param {Function} fn + * @return {Command} for chaining + * @api public + */ + +Command.prototype.action = function(fn) { + var self = this; + var listener = function(args, unknown) { + // Parse any so-far unknown options + args = args || []; + unknown = unknown || []; + + var parsed = self.parseOptions(unknown); + + // Output help if necessary + outputHelpIfNecessary(self, parsed.unknown); + + // If there are still any unknown options, then we simply + // die, unless someone asked for help, in which case we give it + // to them, and then we die. + if (parsed.unknown.length > 0) { + self.unknownOption(parsed.unknown[0]); + } + + // Leftover arguments need to be pushed back. Fixes issue #56 + if (parsed.args.length) args = parsed.args.concat(args); + + self._args.forEach(function(arg, i) { + if (arg.required && args[i] == null) { + self.missingArgument(arg.name); + } else if (arg.variadic) { + if (i !== self._args.length - 1) { + self.variadicArgNotLast(arg.name); + } + + args[i] = args.splice(i); + } + }); + + // Always append ourselves to the end of the arguments, + // to make sure we match the number of arguments the user + // expects + if (self._args.length) { + args[self._args.length] = self; + } else { + args.push(self); + } + + fn.apply(self, args); + }; + var parent = this.parent || this; + var name = parent === this ? '*' : this._name; + parent.on('command:' + name, listener); + if (this._alias) parent.on('command:' + this._alias, listener); + return this; +}; + +/** + * Define option with `flags`, `description` and optional + * coercion `fn`. + * + * The `flags` string should contain both the short and long flags, + * separated by comma, a pipe or space. The following are all valid + * all will output this way when `--help` is used. + * + * "-p, --pepper" + * "-p|--pepper" + * "-p --pepper" + * + * Examples: + * + * // simple boolean defaulting to false + * program.option('-p, --pepper', 'add pepper'); + * + * --pepper + * program.pepper + * // => Boolean + * + * // simple boolean defaulting to true + * program.option('-C, --no-cheese', 'remove cheese'); + * + * program.cheese + * // => true + * + * --no-cheese + * program.cheese + * // => false + * + * // required argument + * program.option('-C, --chdir ', 'change the working directory'); + * + * --chdir /tmp + * program.chdir + * // => "/tmp" + * + * // optional argument + * program.option('-c, --cheese [type]', 'add cheese [marble]'); + * + * @param {String} flags + * @param {String} description + * @param {Function|*} [fn] or default + * @param {*} [defaultValue] + * @return {Command} for chaining + * @api public + */ + +Command.prototype.option = function(flags, description, fn, defaultValue) { + var self = this, + option = new Option(flags, description), + oname = option.name(), + name = option.attributeName(); + + // default as 3rd arg + if (typeof fn !== 'function') { + if (fn instanceof RegExp) { + var regex = fn; + fn = function(val, def) { + var m = regex.exec(val); + return m ? m[0] : def; + }; + } else { + defaultValue = fn; + fn = null; + } + } + + // preassign default value only for --no-*, [optional], or + if (!option.bool || option.optional || option.required) { + // when --no-* we make sure default is true + if (!option.bool) defaultValue = true; + // preassign only if we have a default + if (defaultValue !== undefined) { + self[name] = defaultValue; + option.defaultValue = defaultValue; + } + } + + // register the option + this.options.push(option); + + // when it's passed assign the value + // and conditionally invoke the callback + this.on('option:' + oname, function(val) { + // coercion + if (val !== null && fn) { + val = fn(val, self[name] === undefined ? defaultValue : self[name]); + } + + // unassigned or bool + if (typeof self[name] === 'boolean' || typeof self[name] === 'undefined') { + // if no value, bool true, and we have a default, then use it! + if (val == null) { + self[name] = option.bool + ? defaultValue || true + : false; + } else { + self[name] = val; + } + } else if (val !== null) { + // reassign + self[name] = val; + } + }); + + return this; +}; + +/** + * Allow unknown options on the command line. + * + * @param {Boolean} arg if `true` or omitted, no error will be thrown + * for unknown options. + * @api public + */ +Command.prototype.allowUnknownOption = function(arg) { + this._allowUnknownOption = arguments.length === 0 || arg; + return this; +}; + +/** + * Parse `argv`, settings options and invoking commands when defined. + * + * @param {Array} argv + * @return {Command} for chaining + * @api public + */ + +Command.prototype.parse = function(argv) { + // implicit help + if (this.executables) this.addImplicitHelpCommand(); + + // store raw args + this.rawArgs = argv; + + // guess name + this._name = this._name || basename(argv[1], '.js'); + + // github-style sub-commands with no sub-command + if (this.executables && argv.length < 3 && !this.defaultExecutable) { + // this user needs help + argv.push('--help'); + } + + // process argv + var parsed = this.parseOptions(this.normalize(argv.slice(2))); + var args = this.args = parsed.args; + + var result = this.parseArgs(this.args, parsed.unknown); + + // executable sub-commands + var name = result.args[0]; + + var aliasCommand = null; + // check alias of sub commands + if (name) { + aliasCommand = this.commands.filter(function(command) { + return command.alias() === name; + })[0]; + } + + if (this._execs[name] && typeof this._execs[name] !== 'function') { + return this.executeSubCommand(argv, args, parsed.unknown); + } else if (aliasCommand) { + // is alias of a subCommand + args[0] = aliasCommand._name; + return this.executeSubCommand(argv, args, parsed.unknown); + } else if (this.defaultExecutable) { + // use the default subcommand + args.unshift(this.defaultExecutable); + return this.executeSubCommand(argv, args, parsed.unknown); + } + + return result; +}; + +/** + * Execute a sub-command executable. + * + * @param {Array} argv + * @param {Array} args + * @param {Array} unknown + * @api private + */ + +Command.prototype.executeSubCommand = function(argv, args, unknown) { + args = args.concat(unknown); + + if (!args.length) this.help(); + if (args[0] === 'help' && args.length === 1) this.help(); + + // --help + if (args[0] === 'help') { + args[0] = args[1]; + args[1] = '--help'; + } + + // executable + var f = argv[1]; + // name of the subcommand, link `pm-install` + var bin = basename(f, path.extname(f)) + '-' + args[0]; + + // In case of globally installed, get the base dir where executable + // subcommand file should be located at + var baseDir, + link = fs.lstatSync(f).isSymbolicLink() ? fs.readlinkSync(f) : f; + + // when symbolink is relative path + if (link !== f && link.charAt(0) !== '/') { + link = path.join(dirname(f), link); + } + baseDir = dirname(link); + + // prefer local `./` to bin in the $PATH + var localBin = path.join(baseDir, bin); + + // whether bin file is a js script with explicit `.js` or `.ts` extension + var isExplicitJS = false; + if (exists(localBin + '.js')) { + bin = localBin + '.js'; + isExplicitJS = true; + } else if (exists(localBin + '.ts')) { + bin = localBin + '.ts'; + isExplicitJS = true; + } else if (exists(localBin)) { + bin = localBin; + } + + args = args.slice(1); + + var proc; + if (process.platform !== 'win32') { + if (isExplicitJS) { + args.unshift(bin); + // add executable arguments to spawn + args = (process.execArgv || []).concat(args); + + proc = spawn(process.argv[0], args, { stdio: 'inherit', customFds: [0, 1, 2] }); + } else { + proc = spawn(bin, args, { stdio: 'inherit', customFds: [0, 1, 2] }); + } + } else { + args.unshift(bin); + proc = spawn(process.execPath, args, { stdio: 'inherit' }); + } + + var signals = ['SIGUSR1', 'SIGUSR2', 'SIGTERM', 'SIGINT', 'SIGHUP']; + signals.forEach(function(signal) { + process.on(signal, function() { + if (proc.killed === false && proc.exitCode === null) { + proc.kill(signal); + } + }); + }); + proc.on('close', process.exit.bind(process)); + proc.on('error', function(err) { + if (err.code === 'ENOENT') { + console.error('error: %s(1) does not exist, try --help', bin); + } else if (err.code === 'EACCES') { + console.error('error: %s(1) not executable. try chmod or run with root', bin); + } + process.exit(1); + }); + + // Store the reference to the child process + this.runningCommand = proc; +}; + +/** + * Normalize `args`, splitting joined short flags. For example + * the arg "-abc" is equivalent to "-a -b -c". + * This also normalizes equal sign and splits "--abc=def" into "--abc def". + * + * @param {Array} args + * @return {Array} + * @api private + */ + +Command.prototype.normalize = function(args) { + var ret = [], + arg, + lastOpt, + index; + + for (var i = 0, len = args.length; i < len; ++i) { + arg = args[i]; + if (i > 0) { + lastOpt = this.optionFor(args[i - 1]); + } + + if (arg === '--') { + // Honor option terminator + ret = ret.concat(args.slice(i)); + break; + } else if (lastOpt && lastOpt.required) { + ret.push(arg); + } else if (arg.length > 1 && arg[0] === '-' && arg[1] !== '-') { + arg.slice(1).split('').forEach(function(c) { + ret.push('-' + c); + }); + } else if (/^--/.test(arg) && ~(index = arg.indexOf('='))) { + ret.push(arg.slice(0, index), arg.slice(index + 1)); + } else { + ret.push(arg); + } + } + + return ret; +}; + +/** + * Parse command `args`. + * + * When listener(s) are available those + * callbacks are invoked, otherwise the "*" + * event is emitted and those actions are invoked. + * + * @param {Array} args + * @return {Command} for chaining + * @api private + */ + +Command.prototype.parseArgs = function(args, unknown) { + var name; + + if (args.length) { + name = args[0]; + if (this.listeners('command:' + name).length) { + this.emit('command:' + args.shift(), args, unknown); + } else { + this.emit('command:*', args); + } + } else { + outputHelpIfNecessary(this, unknown); + + // If there were no args and we have unknown options, + // then they are extraneous and we need to error. + if (unknown.length > 0) { + this.unknownOption(unknown[0]); + } + if (this.commands.length === 0 && + this._args.filter(function(a) { return a.required }).length === 0) { + this.emit('command:*'); + } + } + + return this; +}; + +/** + * Return an option matching `arg` if any. + * + * @param {String} arg + * @return {Option} + * @api private + */ + +Command.prototype.optionFor = function(arg) { + for (var i = 0, len = this.options.length; i < len; ++i) { + if (this.options[i].is(arg)) { + return this.options[i]; + } + } +}; + +/** + * Parse options from `argv` returning `argv` + * void of these options. + * + * @param {Array} argv + * @return {Array} + * @api public + */ + +Command.prototype.parseOptions = function(argv) { + var args = [], + len = argv.length, + literal, + option, + arg; + + var unknownOptions = []; + + // parse options + for (var i = 0; i < len; ++i) { + arg = argv[i]; + + // literal args after -- + if (literal) { + args.push(arg); + continue; + } + + if (arg === '--') { + literal = true; + continue; + } + + // find matching Option + option = this.optionFor(arg); + + // option is defined + if (option) { + // requires arg + if (option.required) { + arg = argv[++i]; + if (arg == null) return this.optionMissingArgument(option); + this.emit('option:' + option.name(), arg); + // optional arg + } else if (option.optional) { + arg = argv[i + 1]; + if (arg == null || (arg[0] === '-' && arg !== '-')) { + arg = null; + } else { + ++i; + } + this.emit('option:' + option.name(), arg); + // bool + } else { + this.emit('option:' + option.name()); + } + continue; + } + + // looks like an option + if (arg.length > 1 && arg[0] === '-') { + unknownOptions.push(arg); + + // If the next argument looks like it might be + // an argument for this option, we pass it on. + // If it isn't, then it'll simply be ignored + if ((i + 1) < argv.length && argv[i + 1][0] !== '-') { + unknownOptions.push(argv[++i]); + } + continue; + } + + // arg + args.push(arg); + } + + return { args: args, unknown: unknownOptions }; +}; + +/** + * Return an object containing options as key-value pairs + * + * @return {Object} + * @api public + */ +Command.prototype.opts = function() { + var result = {}, + len = this.options.length; + + for (var i = 0; i < len; i++) { + var key = this.options[i].attributeName(); + result[key] = key === this._versionOptionName ? this._version : this[key]; + } + return result; +}; + +/** + * Argument `name` is missing. + * + * @param {String} name + * @api private + */ + +Command.prototype.missingArgument = function(name) { + console.error("error: missing required argument `%s'", name); + process.exit(1); +}; + +/** + * `Option` is missing an argument, but received `flag` or nothing. + * + * @param {String} option + * @param {String} flag + * @api private + */ + +Command.prototype.optionMissingArgument = function(option, flag) { + if (flag) { + console.error("error: option `%s' argument missing, got `%s'", option.flags, flag); + } else { + console.error("error: option `%s' argument missing", option.flags); + } + process.exit(1); +}; + +/** + * Unknown option `flag`. + * + * @param {String} flag + * @api private + */ + +Command.prototype.unknownOption = function(flag) { + if (this._allowUnknownOption) return; + console.error("error: unknown option `%s'", flag); + process.exit(1); +}; + +/** + * Variadic argument with `name` is not the last argument as required. + * + * @param {String} name + * @api private + */ + +Command.prototype.variadicArgNotLast = function(name) { + console.error("error: variadic arguments must be last `%s'", name); + process.exit(1); +}; + +/** + * Set the program version to `str`. + * + * This method auto-registers the "-V, --version" flag + * which will print the version number when passed. + * + * @param {String} str + * @param {String} [flags] + * @return {Command} for chaining + * @api public + */ + +Command.prototype.version = function(str, flags) { + if (arguments.length === 0) return this._version; + this._version = str; + flags = flags || '-V, --version'; + var versionOption = new Option(flags, 'output the version number'); + this._versionOptionName = versionOption.long.substr(2) || 'version'; + this.options.push(versionOption); + this.on('option:' + this._versionOptionName, function() { + process.stdout.write(str + '\n'); + process.exit(0); + }); + return this; +}; + +/** + * Set the description to `str`. + * + * @param {String} str + * @param {Object} argsDescription + * @return {String|Command} + * @api public + */ + +Command.prototype.description = function(str, argsDescription) { + if (arguments.length === 0) return this._description; + this._description = str; + this._argsDescription = argsDescription; + return this; +}; + +/** + * Set an alias for the command + * + * @param {String} alias + * @return {String|Command} + * @api public + */ + +Command.prototype.alias = function(alias) { + var command = this; + if (this.commands.length !== 0) { + command = this.commands[this.commands.length - 1]; + } + + if (arguments.length === 0) return command._alias; + + if (alias === command._name) throw new Error('Command alias can\'t be the same as its name'); + + command._alias = alias; + return this; +}; + +/** + * Set / get the command usage `str`. + * + * @param {String} str + * @return {String|Command} + * @api public + */ + +Command.prototype.usage = function(str) { + var args = this._args.map(function(arg) { + return humanReadableArgName(arg); + }); + + var usage = '[options]' + + (this.commands.length ? ' [command]' : '') + + (this._args.length ? ' ' + args.join(' ') : ''); + + if (arguments.length === 0) return this._usage || usage; + this._usage = str; + + return this; +}; + +/** + * Get or set the name of the command + * + * @param {String} str + * @return {String|Command} + * @api public + */ + +Command.prototype.name = function(str) { + if (arguments.length === 0) return this._name; + this._name = str; + return this; +}; + +/** + * Return prepared commands. + * + * @return {Array} + * @api private + */ + +Command.prototype.prepareCommands = function() { + return this.commands.filter(function(cmd) { + return !cmd._noHelp; + }).map(function(cmd) { + var args = cmd._args.map(function(arg) { + return humanReadableArgName(arg); + }).join(' '); + + return [ + cmd._name + + (cmd._alias ? '|' + cmd._alias : '') + + (cmd.options.length ? ' [options]' : '') + + (args ? ' ' + args : ''), + cmd._description + ]; + }); +}; + +/** + * Return the largest command length. + * + * @return {Number} + * @api private + */ + +Command.prototype.largestCommandLength = function() { + var commands = this.prepareCommands(); + return commands.reduce(function(max, command) { + return Math.max(max, command[0].length); + }, 0); +}; + +/** + * Return the largest option length. + * + * @return {Number} + * @api private + */ + +Command.prototype.largestOptionLength = function() { + var options = [].slice.call(this.options); + options.push({ + flags: '-h, --help' + }); + return options.reduce(function(max, option) { + return Math.max(max, option.flags.length); + }, 0); +}; + +/** + * Return the largest arg length. + * + * @return {Number} + * @api private + */ + +Command.prototype.largestArgLength = function() { + return this._args.reduce(function(max, arg) { + return Math.max(max, arg.name.length); + }, 0); +}; + +/** + * Return the pad width. + * + * @return {Number} + * @api private + */ + +Command.prototype.padWidth = function() { + var width = this.largestOptionLength(); + if (this._argsDescription && this._args.length) { + if (this.largestArgLength() > width) { + width = this.largestArgLength(); + } + } + + if (this.commands && this.commands.length) { + if (this.largestCommandLength() > width) { + width = this.largestCommandLength(); + } + } + + return width; +}; + +/** + * Return help for options. + * + * @return {String} + * @api private + */ + +Command.prototype.optionHelp = function() { + var width = this.padWidth(); + + // Append the help information + return this.options.map(function(option) { + return pad(option.flags, width) + ' ' + option.description + + ((option.bool && option.defaultValue !== undefined) ? ' (default: ' + JSON.stringify(option.defaultValue) + ')' : ''); + }).concat([pad('-h, --help', width) + ' ' + 'output usage information']) + .join('\n'); +}; + +/** + * Return command help documentation. + * + * @return {String} + * @api private + */ + +Command.prototype.commandHelp = function() { + if (!this.commands.length) return ''; + + var commands = this.prepareCommands(); + var width = this.padWidth(); + + return [ + 'Commands:', + commands.map(function(cmd) { + var desc = cmd[1] ? ' ' + cmd[1] : ''; + return (desc ? pad(cmd[0], width) : cmd[0]) + desc; + }).join('\n').replace(/^/gm, ' '), + '' + ].join('\n'); +}; + +/** + * Return program help documentation. + * + * @return {String} + * @api private + */ + +Command.prototype.helpInformation = function() { + var desc = []; + if (this._description) { + desc = [ + this._description, + '' + ]; + + var argsDescription = this._argsDescription; + if (argsDescription && this._args.length) { + var width = this.padWidth(); + desc.push('Arguments:'); + desc.push(''); + this._args.forEach(function(arg) { + desc.push(' ' + pad(arg.name, width) + ' ' + argsDescription[arg.name]); + }); + desc.push(''); + } + } + + var cmdName = this._name; + if (this._alias) { + cmdName = cmdName + '|' + this._alias; + } + var usage = [ + 'Usage: ' + cmdName + ' ' + this.usage(), + '' + ]; + + var cmds = []; + var commandHelp = this.commandHelp(); + if (commandHelp) cmds = [commandHelp]; + + var options = [ + 'Options:', + '' + this.optionHelp().replace(/^/gm, ' '), + '' + ]; + + return usage + .concat(desc) + .concat(options) + .concat(cmds) + .join('\n'); +}; + +/** + * Output help information for this command + * + * @api public + */ + +Command.prototype.outputHelp = function(cb) { + if (!cb) { + cb = function(passthru) { + return passthru; + }; + } + process.stdout.write(cb(this.helpInformation())); + this.emit('--help'); +}; + +/** + * Output help information and exit. + * + * @api public + */ + +Command.prototype.help = function(cb) { + this.outputHelp(cb); + process.exit(); +}; + +/** + * Camel-case the given `flag` + * + * @param {String} flag + * @return {String} + * @api private + */ + +function camelcase(flag) { + return flag.split('-').reduce(function(str, word) { + return str + word[0].toUpperCase() + word.slice(1); + }); +} + +/** + * Pad `str` to `width`. + * + * @param {String} str + * @param {Number} width + * @return {String} + * @api private + */ + +function pad(str, width) { + var len = Math.max(0, width - str.length); + return str + Array(len + 1).join(' '); +} + +/** + * Output help information if necessary + * + * @param {Command} command to output help for + * @param {Array} array of options to search for -h or --help + * @api private + */ + +function outputHelpIfNecessary(cmd, options) { + options = options || []; + for (var i = 0; i < options.length; i++) { + if (options[i] === '--help' || options[i] === '-h') { + cmd.outputHelp(); + process.exit(0); + } + } +} + +/** + * Takes an argument an returns its human readable equivalent for help usage. + * + * @param {Object} arg + * @return {String} + * @api private + */ + +function humanReadableArgName(arg) { + var nameOutput = arg.name + (arg.variadic === true ? '...' : ''); + + return arg.required + ? '<' + nameOutput + '>' + : '[' + nameOutput + ']'; +} + +// for versions before node v0.8 when there weren't `fs.existsSync` +function exists(file) { + try { + if (fs.statSync(file).isFile()) { + return true; + } + } catch (e) { + return false; + } +} diff --git a/NodjsPartieArduino/node_modules/commander/package.json b/NodjsPartieArduino/node_modules/commander/package.json new file mode 100644 index 0000000..677ff31 --- /dev/null +++ b/NodjsPartieArduino/node_modules/commander/package.json @@ -0,0 +1,122 @@ +{ + "_args": [ + [ + { + "raw": "commander@^2.13.0", + "scope": null, + "escapedName": "commander", + "name": "commander", + "rawSpec": "^2.13.0", + "spec": ">=2.13.0 <3.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport" + ] + ], + "_from": "commander@>=2.13.0 <3.0.0", + "_hasShrinkwrap": false, + "_id": "commander@2.19.0", + "_inCache": true, + "_location": "/commander", + "_nodeVersion": "10.11.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/commander_2.19.0_1539035473746_0.9826574892249367" + }, + "_npmUser": { + "name": "abetomo", + "email": "abe@enzou.tokyo" + }, + "_npmVersion": "6.4.1", + "_phantomChildren": {}, + "_requested": { + "raw": "commander@^2.13.0", + "scope": null, + "escapedName": "commander", + "name": "commander", + "rawSpec": "^2.13.0", + "spec": ">=2.13.0 <3.0.0", + "type": "range" + }, + "_requiredBy": [ + "/serialport" + ], + "_resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "_shasum": "f6198aa84e5b83c46054b94ddedbfed5ee9ff12a", + "_shrinkwrap": null, + "_spec": "commander@^2.13.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/serialport", + "author": { + "name": "TJ Holowaychuk", + "email": "tj@vision-media.ca" + }, + "bugs": { + "url": "https://github.com/tj/commander.js/issues" + }, + "dependencies": {}, + "description": "the complete solution for node.js command-line programs", + "devDependencies": { + "@types/node": "^10.11.3", + "eslint": "^5.6.1", + "should": "^13.2.3", + "sinon": "^6.3.4", + "standard": "^12.0.1", + "ts-node": "^7.0.1", + "typescript": "^2.9.2" + }, + "directories": {}, + "dist": { + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "shasum": "f6198aa84e5b83c46054b94ddedbfed5ee9ff12a", + "tarball": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "fileCount": 6, + "unpackedSize": 61383, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu9FSCRA9TVsSAnZWagAAc5YQAIADsKVX+3i2QDdUwZzo\nMltfEFOMP1vIiiD0jgsOe6RWO0AwEIBds7dFc4bV4oRoOraZhE5gMAPGd1Y4\n7jekExbT/VYWZYJg+Pg2PppiD5W2PZRS+0LfGiujcyRlpFIsKKc7dUOEQ4Ty\n+htXGTetO5qeYH10dso+9Rel8dsIAKBMQycKS5cuEk4SQC7VjwalM2KJUeC/\noHRzLUtfw64zGGFoshAOWCdsuuMpKvjOiO70mZbmNF0h4Cqd2gZlzdA/XiFi\nM4//gqKcl2hAa6S2Y6cd6vb4P1azv5S2Go2tARL1OBhuI6ooofhAfmfClDl0\n7lfkGwtKkc/c5RgQLAyaBiT73WsAy7bSFW9HPDZNJvO7y4JdI4ZczSi5JeeQ\nt2/Zw5pnOWrIzygMAvhiXC2c8BC8BQ+8CuxuvCkPzonr4F56fC54JR0ANHWa\nRkwvQVWI3C5T1YX21ZzgsvaXaY460sXEksT89stxLfzN0FfFxHnwjRn3crX8\n6RltbIevb2gT8QyGL1WmwMdp94IkBpw+7LfLrEl5o95v8IAJr6k822A/bFiw\nOYAGTJ9OgtEuJd7N8a1kCEkF7u54Yd9YO9vfPkO6SnEMiENW96wuzFBpv3K/\n/M0+4X8VDPXjEsS8wfRhUYYawhhDcE7/I9nnbngbA66V5Ci3d27ASkx0i6XX\nZ798\r\n=7lGM\r\n-----END PGP SIGNATURE-----\r\n" + }, + "gitHead": "78b7dbd18aabc23ccc9d151db411913237a3c483", + "homepage": "https://github.com/tj/commander.js#readme", + "keywords": [ + "commander", + "command", + "option", + "parser" + ], + "license": "MIT", + "main": "index", + "maintainers": [ + { + "name": "abetomo", + "email": "abe@enzou.tokyo" + }, + { + "name": "somekittens", + "email": "rkoutnik@gmail.com" + }, + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + { + "name": "vanesyan", + "email": "romain.vanesyan@gmail.com" + }, + { + "name": "zhiyelee", + "email": "zhiyelee@gmail.com" + } + ], + "name": "commander", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/tj/commander.js.git" + }, + "scripts": { + "lint": "eslint index.js", + "test": "node test/run.js && npm run test-typings", + "test-typings": "tsc -p tsconfig.json" + }, + "typings": "typings/index.d.ts", + "version": "2.19.0" +} diff --git a/NodjsPartieArduino/node_modules/commander/typings/index.d.ts b/NodjsPartieArduino/node_modules/commander/typings/index.d.ts new file mode 100644 index 0000000..312b056 --- /dev/null +++ b/NodjsPartieArduino/node_modules/commander/typings/index.d.ts @@ -0,0 +1,309 @@ +// Type definitions for commander 2.11 +// Project: https://github.com/visionmedia/commander.js +// Definitions by: Alan Agius , Marcelo Dezem , vvakame , Jules Randolph +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare namespace local { + + class Option { + flags: string; + required: boolean; + optional: boolean; + bool: boolean; + short?: string; + long: string; + description: string; + + /** + * Initialize a new `Option` with the given `flags` and `description`. + * + * @param {string} flags + * @param {string} [description] + */ + constructor(flags: string, description?: string); + } + + class Command extends NodeJS.EventEmitter { + [key: string]: any; + + args: string[]; + + /** + * Initialize a new `Command`. + * + * @param {string} [name] + */ + constructor(name?: string); + + /** + * Set the program version to `str`. + * + * This method auto-registers the "-V, --version" flag + * which will print the version number when passed. + * + * @param {string} str + * @param {string} [flags] + * @returns {Command} for chaining + */ + version(str: string, flags?: string): Command; + + /** + * Add command `name`. + * + * The `.action()` callback is invoked when the + * command `name` is specified via __ARGV__, + * and the remaining arguments are applied to the + * function for access. + * + * When the `name` is "*" an un-matched command + * will be passed as the first arg, followed by + * the rest of __ARGV__ remaining. + * + * @example + * program + * .version('0.0.1') + * .option('-C, --chdir ', 'change the working directory') + * .option('-c, --config ', 'set config path. defaults to ./deploy.conf') + * .option('-T, --no-tests', 'ignore test hook') + * + * program + * .command('setup') + * .description('run remote setup commands') + * .action(function() { + * console.log('setup'); + * }); + * + * program + * .command('exec ') + * .description('run the given remote command') + * .action(function(cmd) { + * console.log('exec "%s"', cmd); + * }); + * + * program + * .command('teardown [otherDirs...]') + * .description('run teardown commands') + * .action(function(dir, otherDirs) { + * console.log('dir "%s"', dir); + * if (otherDirs) { + * otherDirs.forEach(function (oDir) { + * console.log('dir "%s"', oDir); + * }); + * } + * }); + * + * program + * .command('*') + * .description('deploy the given env') + * .action(function(env) { + * console.log('deploying "%s"', env); + * }); + * + * program.parse(process.argv); + * + * @param {string} name + * @param {string} [desc] for git-style sub-commands + * @param {CommandOptions} [opts] command options + * @returns {Command} the new command + */ + command(name: string, desc?: string, opts?: commander.CommandOptions): Command; + + /** + * Define argument syntax for the top-level command. + * + * @param {string} desc + * @returns {Command} for chaining + */ + arguments(desc: string): Command; + + /** + * Parse expected `args`. + * + * For example `["[type]"]` becomes `[{ required: false, name: 'type' }]`. + * + * @param {string[]} args + * @returns {Command} for chaining + */ + parseExpectedArgs(args: string[]): Command; + + /** + * Register callback `fn` for the command. + * + * @example + * program + * .command('help') + * .description('display verbose help') + * .action(function() { + * // output help here + * }); + * + * @param {(...args: any[]) => void} fn + * @returns {Command} for chaining + */ + action(fn: (...args: any[]) => void): Command; + + /** + * Define option with `flags`, `description` and optional + * coercion `fn`. + * + * The `flags` string should contain both the short and long flags, + * separated by comma, a pipe or space. The following are all valid + * all will output this way when `--help` is used. + * + * "-p, --pepper" + * "-p|--pepper" + * "-p --pepper" + * + * @example + * // simple boolean defaulting to false + * program.option('-p, --pepper', 'add pepper'); + * + * --pepper + * program.pepper + * // => Boolean + * + * // simple boolean defaulting to true + * program.option('-C, --no-cheese', 'remove cheese'); + * + * program.cheese + * // => true + * + * --no-cheese + * program.cheese + * // => false + * + * // required argument + * program.option('-C, --chdir ', 'change the working directory'); + * + * --chdir /tmp + * program.chdir + * // => "/tmp" + * + * // optional argument + * program.option('-c, --cheese [type]', 'add cheese [marble]'); + * + * @param {string} flags + * @param {string} [description] + * @param {((arg1: any, arg2: any) => void) | RegExp} [fn] function or default + * @param {*} [defaultValue] + * @returns {Command} for chaining + */ + option(flags: string, description?: string, fn?: ((arg1: any, arg2: any) => void) | RegExp, defaultValue?: any): Command; + option(flags: string, description?: string, defaultValue?: any): Command; + + /** + * Allow unknown options on the command line. + * + * @param {boolean} [arg] if `true` or omitted, no error will be thrown for unknown options. + * @returns {Command} for chaining + */ + allowUnknownOption(arg?: boolean): Command; + + /** + * Parse `argv`, settings options and invoking commands when defined. + * + * @param {string[]} argv + * @returns {Command} for chaining + */ + parse(argv: string[]): Command; + + /** + * Parse options from `argv` returning `argv` void of these options. + * + * @param {string[]} argv + * @returns {ParseOptionsResult} + */ + parseOptions(argv: string[]): commander.ParseOptionsResult; + + /** + * Return an object containing options as key-value pairs + * + * @returns {{[key: string]: any}} + */ + opts(): { [key: string]: any }; + + /** + * Set the description to `str`. + * + * @param {string} str + * @return {(Command | string)} + */ + description(str: string): Command; + description(): string; + + /** + * Set an alias for the command. + * + * @param {string} alias + * @return {(Command | string)} + */ + alias(alias: string): Command; + alias(): string; + + /** + * Set or get the command usage. + * + * @param {string} str + * @return {(Command | string)} + */ + usage(str: string): Command; + usage(): string; + + /** + * Set the name of the command. + * + * @param {string} str + * @return {Command} + */ + name(str: string): Command; + + /** + * Get the name of the command. + * + * @return {string} + */ + name(): string; + + /** + * Output help information for this command. + * + * @param {(str: string) => string} [cb] + */ + outputHelp(cb?: (str: string) => string): void; + + /** Output help information and exit. + * + * @param {(str: string) => string} [cb] + */ + help(cb?: (str: string) => string): never; + } + +} + +declare namespace commander { + + type Command = local.Command + + type Option = local.Option + + interface CommandOptions { + noHelp?: boolean; + isDefault?: boolean; + } + + interface ParseOptionsResult { + args: string[]; + unknown: string[]; + } + + interface CommanderStatic extends Command { + Command: typeof local.Command; + Option: typeof local.Option; + CommandOptions: CommandOptions; + ParseOptionsResult: ParseOptionsResult; + } + +} + +declare const commander: commander.CommanderStatic; +export = commander; diff --git a/NodjsPartieArduino/node_modules/component-bind/History.md b/NodjsPartieArduino/node_modules/component-bind/History.md new file mode 100644 index 0000000..2795fdb --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-bind/History.md @@ -0,0 +1,13 @@ + +1.0.0 / 2014-05-27 +================== + + * index: use slice ref (#7, @viatropos) + * package: rename package to "component-bind" + * package: add "repository" field (#6, @repoify) + * package: add "component" section + +0.0.1 / 2010-01-03 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/component-bind/Makefile b/NodjsPartieArduino/node_modules/component-bind/Makefile new file mode 100644 index 0000000..4e9c8d3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-bind/Makefile @@ -0,0 +1,7 @@ + +test: + @./node_modules/.bin/mocha \ + --require should \ + --reporter spec + +.PHONY: test \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/component-bind/Readme.md b/NodjsPartieArduino/node_modules/component-bind/Readme.md new file mode 100644 index 0000000..6a8febc --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-bind/Readme.md @@ -0,0 +1,64 @@ +# bind + + Function binding utility. + +## Installation + +``` +$ component install component/bind +``` + +## API + + - [bind(obj, fn)](#bindobj-fn) + - [bind(obj, fn, ...)](#bindobj-fn-) + - [bind(obj, name)](#bindobj-name) + + + +### bind(obj, fn) +should bind the function to the given object. + +```js +var tobi = { name: 'tobi' }; + +function name() { + return this.name; +} + +var fn = bind(tobi, name); +fn().should.equal('tobi'); +``` + + +### bind(obj, fn, ...) +should curry the remaining arguments. + +```js +function add(a, b) { + return a + b; +} + +bind(null, add)(1, 2).should.equal(3); +bind(null, add, 1)(2).should.equal(3); +bind(null, add, 1, 2)().should.equal(3); +``` + + +### bind(obj, name) +should bind the method of the given name. + +```js +var tobi = { name: 'tobi' }; + +tobi.getName = function() { + return this.name; +}; + +var fn = bind(tobi, 'getName'); +fn().should.equal('tobi'); +``` + +## License + + MIT \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/component-bind/component.json b/NodjsPartieArduino/node_modules/component-bind/component.json new file mode 100644 index 0000000..4e1e93f --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-bind/component.json @@ -0,0 +1,13 @@ +{ + "name": "bind", + "version": "1.0.0", + "description": "function binding utility", + "keywords": [ + "bind", + "utility" + ], + "dependencies": {}, + "scripts": [ + "index.js" + ] +} diff --git a/NodjsPartieArduino/node_modules/component-bind/index.js b/NodjsPartieArduino/node_modules/component-bind/index.js new file mode 100644 index 0000000..4eeb2c0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-bind/index.js @@ -0,0 +1,23 @@ +/** + * Slice reference. + */ + +var slice = [].slice; + +/** + * Bind `obj` to `fn`. + * + * @param {Object} obj + * @param {Function|String} fn or string + * @return {Function} + * @api public + */ + +module.exports = function(obj, fn){ + if ('string' == typeof fn) fn = obj[fn]; + if ('function' != typeof fn) throw new Error('bind() requires a function'); + var args = slice.call(arguments, 2); + return function(){ + return fn.apply(obj, args.concat(slice.call(arguments))); + } +}; diff --git a/NodjsPartieArduino/node_modules/component-bind/package.json b/NodjsPartieArduino/node_modules/component-bind/package.json new file mode 100644 index 0000000..f461433 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-bind/package.json @@ -0,0 +1,81 @@ +{ + "_args": [ + [ + { + "raw": "component-bind@1.0.0", + "scope": null, + "escapedName": "component-bind", + "name": "component-bind", + "rawSpec": "1.0.0", + "spec": "1.0.0", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/socket.io-client" + ] + ], + "_from": "component-bind@1.0.0", + "_id": "component-bind@1.0.0", + "_inCache": true, + "_location": "/component-bind", + "_npmUser": { + "name": "tootallnate", + "email": "nathan@tootallnate.net" + }, + "_npmVersion": "1.4.9", + "_phantomChildren": {}, + "_requested": { + "raw": "component-bind@1.0.0", + "scope": null, + "escapedName": "component-bind", + "name": "component-bind", + "rawSpec": "1.0.0", + "spec": "1.0.0", + "type": "version" + }, + "_requiredBy": [ + "/socket.io-client" + ], + "_resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "_shasum": "00c608ab7dcd93897c0009651b1d3a8e1e73bbd1", + "_shrinkwrap": null, + "_spec": "component-bind@1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/socket.io-client", + "bugs": { + "url": "https://github.com/component/bind/issues" + }, + "component": { + "scripts": { + "bind/index.js": "index.js" + } + }, + "dependencies": {}, + "description": "function binding utility", + "devDependencies": { + "mocha": "*", + "should": "*" + }, + "directories": {}, + "dist": { + "shasum": "00c608ab7dcd93897c0009651b1d3a8e1e73bbd1", + "tarball": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz" + }, + "homepage": "https://github.com/component/bind", + "keywords": [ + "bind", + "utility" + ], + "maintainers": [ + { + "name": "tootallnate", + "email": "nathan@tootallnate.net" + } + ], + "name": "component-bind", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/component/bind.git" + }, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/component-emitter/History.md b/NodjsPartieArduino/node_modules/component-emitter/History.md new file mode 100644 index 0000000..2a49b63 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-emitter/History.md @@ -0,0 +1,68 @@ + +1.2.1 / 2016-04-18 +================== + + * enable client side use + +1.2.0 / 2014-02-12 +================== + + * prefix events with `$` to support object prototype method names + +1.1.3 / 2014-06-20 +================== + + * republish for npm + * add LICENSE file + +1.1.2 / 2014-02-10 +================== + + * package: rename to "component-emitter" + * package: update "main" and "component" fields + * Add license to Readme (same format as the other components) + * created .npmignore + * travis stuff + +1.1.1 / 2013-12-01 +================== + + * fix .once adding .on to the listener + * docs: Emitter#off() + * component: add `.repo` prop + +1.1.0 / 2013-10-20 +================== + + * add `.addEventListener()` and `.removeEventListener()` aliases + +1.0.1 / 2013-06-27 +================== + + * add support for legacy ie + +1.0.0 / 2013-02-26 +================== + + * add `.off()` support for removing all listeners + +0.0.6 / 2012-10-08 +================== + + * add `this._callbacks` initialization to prevent funky gotcha + +0.0.5 / 2012-09-07 +================== + + * fix `Emitter.call(this)` usage + +0.0.3 / 2012-07-11 +================== + + * add `.listeners()` + * rename `.has()` to `.hasListeners()` + +0.0.2 / 2012-06-28 +================== + + * fix `.off()` with `.once()`-registered callbacks diff --git a/NodjsPartieArduino/node_modules/component-emitter/LICENSE b/NodjsPartieArduino/node_modules/component-emitter/LICENSE new file mode 100644 index 0000000..de51692 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-emitter/LICENSE @@ -0,0 +1,24 @@ +(The MIT License) + +Copyright (c) 2014 Component contributors + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/component-emitter/Readme.md b/NodjsPartieArduino/node_modules/component-emitter/Readme.md new file mode 100644 index 0000000..0f3f9b9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-emitter/Readme.md @@ -0,0 +1,74 @@ +# Emitter [![Build Status](https://travis-ci.org/component/emitter.png)](https://travis-ci.org/component/emitter) + + Event emitter component. + +## Installation + +``` +$ component install component/emitter +``` + +## API + +### Emitter(obj) + + The `Emitter` may also be used as a mixin. For example + a "plain" object may become an emitter, or you may + extend an existing prototype. + + As an `Emitter` instance: + +```js +var Emitter = require('emitter'); +var emitter = new Emitter; +emitter.emit('something'); +``` + + As a mixin: + +```js +var Emitter = require('emitter'); +var user = { name: 'tobi' }; +Emitter(user); + +user.emit('im a user'); +``` + + As a prototype mixin: + +```js +var Emitter = require('emitter'); +Emitter(User.prototype); +``` + +### Emitter#on(event, fn) + + Register an `event` handler `fn`. + +### Emitter#once(event, fn) + + Register a single-shot `event` handler `fn`, + removed immediately after it is invoked the + first time. + +### Emitter#off(event, fn) + + * Pass `event` and `fn` to remove a listener. + * Pass `event` to remove all listeners on that event. + * Pass nothing to remove all listeners on all events. + +### Emitter#emit(event, ...) + + Emit an `event` with variable option args. + +### Emitter#listeners(event) + + Return an array of callbacks, or an empty array. + +### Emitter#hasListeners(event) + + Check if this emitter has `event` handlers. + +## License + +MIT diff --git a/NodjsPartieArduino/node_modules/component-emitter/index.js b/NodjsPartieArduino/node_modules/component-emitter/index.js new file mode 100644 index 0000000..fa4faee --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-emitter/index.js @@ -0,0 +1,163 @@ + +/** + * Expose `Emitter`. + */ + +if (typeof module !== 'undefined') { + module.exports = Emitter; +} + +/** + * Initialize a new `Emitter`. + * + * @api public + */ + +function Emitter(obj) { + if (obj) return mixin(obj); +}; + +/** + * Mixin the emitter properties. + * + * @param {Object} obj + * @return {Object} + * @api private + */ + +function mixin(obj) { + for (var key in Emitter.prototype) { + obj[key] = Emitter.prototype[key]; + } + return obj; +} + +/** + * Listen on the given `event` with `fn`. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.on = +Emitter.prototype.addEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + (this._callbacks['$' + event] = this._callbacks['$' + event] || []) + .push(fn); + return this; +}; + +/** + * Adds an `event` listener that will be invoked a single + * time then automatically removed. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.once = function(event, fn){ + function on() { + this.off(event, on); + fn.apply(this, arguments); + } + + on.fn = fn; + this.on(event, on); + return this; +}; + +/** + * Remove the given callback for `event` or all + * registered callbacks. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.off = +Emitter.prototype.removeListener = +Emitter.prototype.removeAllListeners = +Emitter.prototype.removeEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + + // all + if (0 == arguments.length) { + this._callbacks = {}; + return this; + } + + // specific event + var callbacks = this._callbacks['$' + event]; + if (!callbacks) return this; + + // remove all handlers + if (1 == arguments.length) { + delete this._callbacks['$' + event]; + return this; + } + + // remove specific handler + var cb; + for (var i = 0; i < callbacks.length; i++) { + cb = callbacks[i]; + if (cb === fn || cb.fn === fn) { + callbacks.splice(i, 1); + break; + } + } + return this; +}; + +/** + * Emit `event` with the given args. + * + * @param {String} event + * @param {Mixed} ... + * @return {Emitter} + */ + +Emitter.prototype.emit = function(event){ + this._callbacks = this._callbacks || {}; + var args = [].slice.call(arguments, 1) + , callbacks = this._callbacks['$' + event]; + + if (callbacks) { + callbacks = callbacks.slice(0); + for (var i = 0, len = callbacks.length; i < len; ++i) { + callbacks[i].apply(this, args); + } + } + + return this; +}; + +/** + * Return array of callbacks for `event`. + * + * @param {String} event + * @return {Array} + * @api public + */ + +Emitter.prototype.listeners = function(event){ + this._callbacks = this._callbacks || {}; + return this._callbacks['$' + event] || []; +}; + +/** + * Check if this emitter has `event` handlers. + * + * @param {String} event + * @return {Boolean} + * @api public + */ + +Emitter.prototype.hasListeners = function(event){ + return !! this.listeners(event).length; +}; diff --git a/NodjsPartieArduino/node_modules/component-emitter/package.json b/NodjsPartieArduino/node_modules/component-emitter/package.json new file mode 100644 index 0000000..bc3d289 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-emitter/package.json @@ -0,0 +1,220 @@ +{ + "_args": [ + [ + { + "raw": "component-emitter@^1.2.1", + "scope": null, + "escapedName": "component-emitter", + "name": "component-emitter", + "rawSpec": "^1.2.1", + "spec": ">=1.2.1 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-base" + ] + ], + "_from": "component-emitter@>=1.2.1 <2.0.0", + "_id": "component-emitter@1.2.1", + "_inCache": true, + "_location": "/component-emitter", + "_nodeVersion": "0.12.4", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/component-emitter-1.2.1.tgz_1461005707641_0.14232611074112356" + }, + "_npmUser": { + "name": "nami-doc", + "email": "karp@hotmail.fr" + }, + "_npmVersion": "2.10.1", + "_phantomChildren": {}, + "_requested": { + "raw": "component-emitter@^1.2.1", + "scope": null, + "escapedName": "component-emitter", + "name": "component-emitter", + "rawSpec": "^1.2.1", + "spec": ">=1.2.1 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/engine.io-client", + "/prompt-base", + "/readline-ui", + "/socket.io-client", + "/socket.io-parser" + ], + "_resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "_shasum": "137918d6d78283f7df7a6b7c5a63e140e69425e6", + "_shrinkwrap": null, + "_spec": "component-emitter@^1.2.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-base", + "bugs": { + "url": "https://github.com/component/emitter/issues" + }, + "component": { + "scripts": { + "emitter/index.js": "index.js" + } + }, + "dependencies": {}, + "description": "Event emitter", + "devDependencies": { + "mocha": "*", + "should": "*" + }, + "directories": {}, + "dist": { + "shasum": "137918d6d78283f7df7a6b7c5a63e140e69425e6", + "tarball": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz" + }, + "files": [ + "index.js", + "LICENSE" + ], + "gitHead": "187492ab8028c7221b589bdfd482b715149cd868", + "homepage": "https://github.com/component/emitter#readme", + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "tootallnate", + "email": "nathan@tootallnate.net" + }, + { + "name": "hughsk", + "email": "hughskennedy@gmail.com" + }, + { + "name": "trevorgerhardt", + "email": "trevorgerhardt@gmail.com" + }, + { + "name": "timaschew", + "email": "timaschew@gmail.com" + }, + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + { + "name": "rauchg", + "email": "rauchg@gmail.com" + }, + { + "name": "retrofox", + "email": "rdsuarez@gmail.com" + }, + { + "name": "coreh", + "email": "thecoreh@gmail.com" + }, + { + "name": "forbeslindesay", + "email": "forbes@lindesay.co.uk" + }, + { + "name": "kelonye", + "email": "kelonyemitchel@gmail.com" + }, + { + "name": "mattmueller", + "email": "mattmuelle@gmail.com" + }, + { + "name": "yields", + "email": "yields@icloud.com" + }, + { + "name": "anthonyshort", + "email": "antshort@gmail.com" + }, + { + "name": "jongleberry", + "email": "jonathanrichardong@gmail.com" + }, + { + "name": "ianstormtaylor", + "email": "ian@ianstormtaylor.com" + }, + { + "name": "cristiandouce", + "email": "cristian@gravityonmars.com" + }, + { + "name": "swatinem", + "email": "arpad.borsos@googlemail.com" + }, + { + "name": "stagas", + "email": "gstagas@gmail.com" + }, + { + "name": "amasad", + "email": "amjad.masad@gmail.com" + }, + { + "name": "juliangruber", + "email": "julian@juliangruber.com" + }, + { + "name": "calvinfo", + "email": "calvin@calv.info" + }, + { + "name": "dominicbarnes", + "email": "dominic@dbarnes.info" + }, + { + "name": "blakeembrey", + "email": "hello@blakeembrey.com" + }, + { + "name": "timoxley", + "email": "secoif@gmail.com" + }, + { + "name": "jonathanong", + "email": "jonathanrichardong@gmail.com" + }, + { + "name": "queckezz", + "email": "fabian.eichenberger@gmail.com" + }, + { + "name": "nami-doc", + "email": "vendethiel@hotmail.fr" + }, + { + "name": "clintwood", + "email": "clint@anotherway.co.za" + }, + { + "name": "thehydroimpulse", + "email": "dnfagnan@gmail.com" + }, + { + "name": "stephenmathieson", + "email": "me@stephenmathieson.com" + }, + { + "name": "dfcreative", + "email": "df.creative@gmail.com" + }, + { + "name": "defunctzombie", + "email": "shtylman@gmail.com" + } + ], + "name": "component-emitter", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/component/emitter.git" + }, + "scripts": { + "test": "make test" + }, + "version": "1.2.1" +} diff --git a/NodjsPartieArduino/node_modules/component-inherit/History.md b/NodjsPartieArduino/node_modules/component-inherit/History.md new file mode 100644 index 0000000..22d87e1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/History.md @@ -0,0 +1,5 @@ + +0.0.2 / 2012-09-03 +================== + + * fix typo in package.json diff --git a/NodjsPartieArduino/node_modules/component-inherit/Makefile b/NodjsPartieArduino/node_modules/component-inherit/Makefile new file mode 100644 index 0000000..ebbc52a --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/Makefile @@ -0,0 +1,16 @@ + +build: components index.js + @component build + +components: + @Component install + +clean: + rm -fr build components template.js + +test: + @node_modules/.bin/mocha \ + --require should \ + --reporter spec + +.PHONY: clean test diff --git a/NodjsPartieArduino/node_modules/component-inherit/Readme.md b/NodjsPartieArduino/node_modules/component-inherit/Readme.md new file mode 100644 index 0000000..f03ab27 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/Readme.md @@ -0,0 +1,24 @@ +# inherit + + Prototype inheritance utility. + +## Installation + +``` +$ component install component/inherit +``` + +## Example + +```js +var inherit = require('inherit'); + +function Human() {} +function Woman() {} + +inherit(Woman, Human); +``` + +## License + + MIT diff --git a/NodjsPartieArduino/node_modules/component-inherit/component.json b/NodjsPartieArduino/node_modules/component-inherit/component.json new file mode 100644 index 0000000..ae57747 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/component.json @@ -0,0 +1,10 @@ +{ + "name": "inherit", + "description": "Prototype inheritance utility", + "version": "0.0.3", + "keywords": ["inherit", "utility"], + "dependencies": {}, + "scripts": [ + "index.js" + ] +} diff --git a/NodjsPartieArduino/node_modules/component-inherit/index.js b/NodjsPartieArduino/node_modules/component-inherit/index.js new file mode 100644 index 0000000..aaebc03 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/index.js @@ -0,0 +1,7 @@ + +module.exports = function(a, b){ + var fn = function(){}; + fn.prototype = b.prototype; + a.prototype = new fn; + a.prototype.constructor = a; +}; \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/component-inherit/package.json b/NodjsPartieArduino/node_modules/component-inherit/package.json new file mode 100644 index 0000000..79e03e0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/package.json @@ -0,0 +1,78 @@ +{ + "_args": [ + [ + { + "raw": "component-inherit@0.0.3", + "scope": null, + "escapedName": "component-inherit", + "name": "component-inherit", + "rawSpec": "0.0.3", + "spec": "0.0.3", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-client" + ] + ], + "_from": "component-inherit@0.0.3", + "_id": "component-inherit@0.0.3", + "_inCache": true, + "_location": "/component-inherit", + "_npmUser": { + "name": "coreh", + "email": "thecoreh@gmail.com" + }, + "_npmVersion": "1.3.24", + "_phantomChildren": {}, + "_requested": { + "raw": "component-inherit@0.0.3", + "scope": null, + "escapedName": "component-inherit", + "name": "component-inherit", + "rawSpec": "0.0.3", + "spec": "0.0.3", + "type": "version" + }, + "_requiredBy": [ + "/engine.io-client" + ], + "_resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "_shasum": "645fc4adf58b72b649d5cae65135619db26ff143", + "_shrinkwrap": null, + "_spec": "component-inherit@0.0.3", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/engine.io-client", + "bugs": { + "url": "https://github.com/component/inherit/issues" + }, + "component": { + "scripts": { + "inherit/index.js": "index.js" + } + }, + "dependencies": {}, + "description": "Prototype inheritance utility", + "devDependencies": {}, + "directories": {}, + "dist": { + "shasum": "645fc4adf58b72b649d5cae65135619db26ff143", + "tarball": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz" + }, + "homepage": "https://github.com/component/inherit", + "keywords": [ + "inherit", + "utility" + ], + "maintainers": [ + { + "name": "coreh", + "email": "thecoreh@gmail.com" + } + ], + "name": "component-inherit", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/component/inherit.git" + }, + "version": "0.0.3" +} diff --git a/NodjsPartieArduino/node_modules/component-inherit/test/inherit.js b/NodjsPartieArduino/node_modules/component-inherit/test/inherit.js new file mode 100644 index 0000000..14852f2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/component-inherit/test/inherit.js @@ -0,0 +1,21 @@ + +/** + * Module dependencies. + */ + +var inherit = require('..'); + +describe('inherit(a, b)', function(){ + it('should inherit b\'s prototype', function(){ + function Loki(){} + function Animal(){} + + Animal.prototype.species = 'unknown'; + + inherit(Loki, Animal); + + var loki = new Loki; + loki.species.should.equal('unknown'); + loki.constructor.should.equal(Loki); + }) +}) \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/console-control-strings/LICENSE b/NodjsPartieArduino/node_modules/console-control-strings/LICENSE new file mode 100644 index 0000000..e756052 --- /dev/null +++ b/NodjsPartieArduino/node_modules/console-control-strings/LICENSE @@ -0,0 +1,13 @@ +Copyright (c) 2014, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/console-control-strings/README.md b/NodjsPartieArduino/node_modules/console-control-strings/README.md new file mode 100644 index 0000000..f58cc8d --- /dev/null +++ b/NodjsPartieArduino/node_modules/console-control-strings/README.md @@ -0,0 +1,145 @@ +# Console Control Strings + +A library of cross-platform tested terminal/console command strings for +doing things like color and cursor positioning. This is a subset of both +ansi and vt100. All control codes included work on both Windows & Unix-like +OSes, except where noted. + +## Usage + +```js +var consoleControl = require('console-control-strings') + +console.log(consoleControl.color('blue','bgRed', 'bold') + 'hi there' + consoleControl.color('reset')) +process.stdout.write(consoleControl.goto(75, 10)) +``` + +## Why Another? + +There are tons of libraries similar to this one. I wanted one that was: + +1. Very clear about compatibility goals. +2. Could emit, for instance, a start color code without an end one. +3. Returned strings w/o writing to streams. +4. Was not weighed down with other unrelated baggage. + +## Functions + +### var code = consoleControl.up(_num = 1_) + +Returns the escape sequence to move _num_ lines up. + +### var code = consoleControl.down(_num = 1_) + +Returns the escape sequence to move _num_ lines down. + +### var code = consoleControl.forward(_num = 1_) + +Returns the escape sequence to move _num_ lines righ. + +### var code = consoleControl.back(_num = 1_) + +Returns the escape sequence to move _num_ lines left. + +### var code = consoleControl.nextLine(_num = 1_) + +Returns the escape sequence to move _num_ lines down and to the beginning of +the line. + +### var code = consoleControl.previousLine(_num = 1_) + +Returns the escape sequence to move _num_ lines up and to the beginning of +the line. + +### var code = consoleControl.eraseData() + +Returns the escape sequence to erase everything from the current cursor +position to the bottom right of the screen. This is line based, so it +erases the remainder of the current line and all following lines. + +### var code = consoleControl.eraseLine() + +Returns the escape sequence to erase to the end of the current line. + +### var code = consoleControl.goto(_x_, _y_) + +Returns the escape sequence to move the cursor to the designated position. +Note that the origin is _1, 1_ not _0, 0_. + +### var code = consoleControl.gotoSOL() + +Returns the escape sequence to move the cursor to the beginning of the +current line. (That is, it returns a carriage return, `\r`.) + +### var code = consoleControl.beep() + +Returns the escape sequence to cause the termianl to beep. (That is, it +returns unicode character `\x0007`, a Control-G.) + +### var code = consoleControl.hideCursor() + +Returns the escape sequence to hide the cursor. + +### var code = consoleControl.showCursor() + +Returns the escape sequence to show the cursor. + +### var code = consoleControl.color(_colors = []_) + +### var code = consoleControl.color(_color1_, _color2_, _…_, _colorn_) + +Returns the escape sequence to set the current terminal display attributes +(mostly colors). Arguments can either be a list of attributes or an array +of attributes. The difference between passing in an array or list of colors +and calling `.color` separately for each one, is that in the former case a +single escape sequence will be produced where as in the latter each change +will have its own distinct escape sequence. Each attribute can be one of: + +* Reset: + * **reset** – Reset all attributes to the terminal default. +* Styles: + * **bold** – Display text as bold. In some terminals this means using a + bold font, in others this means changing the color. In some it means + both. + * **italic** – Display text as italic. This is not available in most Windows terminals. + * **underline** – Underline text. This is not available in most Windows Terminals. + * **inverse** – Invert the foreground and background colors. + * **stopBold** – Do not display text as bold. + * **stopItalic** – Do not display text as italic. + * **stopUnderline** – Do not underline text. + * **stopInverse** – Do not invert foreground and background. +* Colors: + * **white** + * **black** + * **blue** + * **cyan** + * **green** + * **magenta** + * **red** + * **yellow** + * **grey** / **brightBlack** + * **brightRed** + * **brightGreen** + * **brightYellow** + * **brightBlue** + * **brightMagenta** + * **brightCyan** + * **brightWhite** +* Background Colors: + * **bgWhite** + * **bgBlack** + * **bgBlue** + * **bgCyan** + * **bgGreen** + * **bgMagenta** + * **bgRed** + * **bgYellow** + * **bgGrey** / **bgBrightBlack** + * **bgBrightRed** + * **bgBrightGreen** + * **bgBrightYellow** + * **bgBrightBlue** + * **bgBrightMagenta** + * **bgBrightCyan** + * **bgBrightWhite** + diff --git a/NodjsPartieArduino/node_modules/console-control-strings/README.md~ b/NodjsPartieArduino/node_modules/console-control-strings/README.md~ new file mode 100644 index 0000000..6eb34e8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/console-control-strings/README.md~ @@ -0,0 +1,140 @@ +# Console Control Strings + +A library of cross-platform tested terminal/console command strings for +doing things like color and cursor positioning. This is a subset of both +ansi and vt100. All control codes included work on both Windows & Unix-like +OSes, except where noted. + +## Usage + +```js +var consoleControl = require('console-control-strings') + +console.log(consoleControl.color('blue','bgRed', 'bold') + 'hi there' + consoleControl.color('reset')) +process.stdout.write(consoleControl.goto(75, 10)) +``` + +## Why Another? + +There are tons of libraries similar to this one. I wanted one that was: + +1. Very clear about compatibility goals. +2. Could emit, for instance, a start color code without an end one. +3. Returned strings w/o writing to streams. +4. Was not weighed down with other unrelated baggage. + +## Functions + +### var code = consoleControl.up(_num = 1_) + +Returns the escape sequence to move _num_ lines up. + +### var code = consoleControl.down(_num = 1_) + +Returns the escape sequence to move _num_ lines down. + +### var code = consoleControl.forward(_num = 1_) + +Returns the escape sequence to move _num_ lines righ. + +### var code = consoleControl.back(_num = 1_) + +Returns the escape sequence to move _num_ lines left. + +### var code = consoleControl.nextLine(_num = 1_) + +Returns the escape sequence to move _num_ lines down and to the beginning of +the line. + +### var code = consoleControl.previousLine(_num = 1_) + +Returns the escape sequence to move _num_ lines up and to the beginning of +the line. + +### var code = consoleControl.eraseData() + +Returns the escape sequence to erase everything from the current cursor +position to the bottom right of the screen. This is line based, so it +erases the remainder of the current line and all following lines. + +### var code = consoleControl.eraseLine() + +Returns the escape sequence to erase to the end of the current line. + +### var code = consoleControl.goto(_x_, _y_) + +Returns the escape sequence to move the cursor to the designated position. +Note that the origin is _1, 1_ not _0, 0_. + +### var code = consoleControl.gotoSOL() + +Returns the escape sequence to move the cursor to the beginning of the +current line. (That is, it returns a carriage return, `\r`.) + +### var code = consoleControl.hideCursor() + +Returns the escape sequence to hide the cursor. + +### var code = consoleControl.showCursor() + +Returns the escape sequence to show the cursor. + +### var code = consoleControl.color(_colors = []_) + +### var code = consoleControl.color(_color1_, _color2_, _…_, _colorn_) + +Returns the escape sequence to set the current terminal display attributes +(mostly colors). Arguments can either be a list of attributes or an array +of attributes. The difference between passing in an array or list of colors +and calling `.color` separately for each one, is that in the former case a +single escape sequence will be produced where as in the latter each change +will have its own distinct escape sequence. Each attribute can be one of: + +* Reset: + * **reset** – Reset all attributes to the terminal default. +* Styles: + * **bold** – Display text as bold. In some terminals this means using a + bold font, in others this means changing the color. In some it means + both. + * **italic** – Display text as italic. This is not available in most Windows terminals. + * **underline** – Underline text. This is not available in most Windows Terminals. + * **inverse** – Invert the foreground and background colors. + * **stopBold** – Do not display text as bold. + * **stopItalic** – Do not display text as italic. + * **stopUnderline** – Do not underline text. + * **stopInverse** – Do not invert foreground and background. +* Colors: + * **white** + * **black** + * **blue** + * **cyan** + * **green** + * **magenta** + * **red** + * **yellow** + * **grey** / **brightBlack** + * **brightRed** + * **brightGreen** + * **brightYellow** + * **brightBlue** + * **brightMagenta** + * **brightCyan** + * **brightWhite** +* Background Colors: + * **bgWhite** + * **bgBlack** + * **bgBlue** + * **bgCyan** + * **bgGreen** + * **bgMagenta** + * **bgRed** + * **bgYellow** + * **bgGrey** / **bgBrightBlack** + * **bgBrightRed** + * **bgBrightGreen** + * **bgBrightYellow** + * **bgBrightBlue** + * **bgBrightMagenta** + * **bgBrightCyan** + * **bgBrightWhite** + diff --git a/NodjsPartieArduino/node_modules/console-control-strings/index.js b/NodjsPartieArduino/node_modules/console-control-strings/index.js new file mode 100644 index 0000000..bf89034 --- /dev/null +++ b/NodjsPartieArduino/node_modules/console-control-strings/index.js @@ -0,0 +1,125 @@ +'use strict' + +// These tables borrowed from `ansi` + +var prefix = '\x1b[' + +exports.up = function up (num) { + return prefix + (num || '') + 'A' +} + +exports.down = function down (num) { + return prefix + (num || '') + 'B' +} + +exports.forward = function forward (num) { + return prefix + (num || '') + 'C' +} + +exports.back = function back (num) { + return prefix + (num || '') + 'D' +} + +exports.nextLine = function nextLine (num) { + return prefix + (num || '') + 'E' +} + +exports.previousLine = function previousLine (num) { + return prefix + (num || '') + 'F' +} + +exports.horizontalAbsolute = function horizontalAbsolute (num) { + if (num == null) throw new Error('horizontalAboslute requires a column to position to') + return prefix + num + 'G' +} + +exports.eraseData = function eraseData () { + return prefix + 'J' +} + +exports.eraseLine = function eraseLine () { + return prefix + 'K' +} + +exports.goto = function (x, y) { + return prefix + y + ';' + x + 'H' +} + +exports.gotoSOL = function () { + return '\r' +} + +exports.beep = function () { + return '\x07' +} + +exports.hideCursor = function hideCursor () { + return prefix + '?25l' +} + +exports.showCursor = function showCursor () { + return prefix + '?25h' +} + +var colors = { + reset: 0, +// styles + bold: 1, + italic: 3, + underline: 4, + inverse: 7, +// resets + stopBold: 22, + stopItalic: 23, + stopUnderline: 24, + stopInverse: 27, +// colors + white: 37, + black: 30, + blue: 34, + cyan: 36, + green: 32, + magenta: 35, + red: 31, + yellow: 33, + bgWhite: 47, + bgBlack: 40, + bgBlue: 44, + bgCyan: 46, + bgGreen: 42, + bgMagenta: 45, + bgRed: 41, + bgYellow: 43, + + grey: 90, + brightBlack: 90, + brightRed: 91, + brightGreen: 92, + brightYellow: 93, + brightBlue: 94, + brightMagenta: 95, + brightCyan: 96, + brightWhite: 97, + + bgGrey: 100, + bgBrightBlack: 100, + bgBrightRed: 101, + bgBrightGreen: 102, + bgBrightYellow: 103, + bgBrightBlue: 104, + bgBrightMagenta: 105, + bgBrightCyan: 106, + bgBrightWhite: 107 +} + +exports.color = function color (colorWith) { + if (arguments.length !== 1 || !Array.isArray(colorWith)) { + colorWith = Array.prototype.slice.call(arguments) + } + return prefix + colorWith.map(colorNameToCode).join(';') + 'm' +} + +function colorNameToCode (color) { + if (colors[color] != null) return colors[color] + throw new Error('Unknown color or style name: ' + color) +} diff --git a/NodjsPartieArduino/node_modules/console-control-strings/package.json b/NodjsPartieArduino/node_modules/console-control-strings/package.json new file mode 100644 index 0000000..7c828fe --- /dev/null +++ b/NodjsPartieArduino/node_modules/console-control-strings/package.json @@ -0,0 +1,96 @@ +{ + "_args": [ + [ + { + "raw": "console-control-strings@~1.1.0", + "scope": null, + "escapedName": "console-control-strings", + "name": "console-control-strings", + "rawSpec": "~1.1.0", + "spec": ">=1.1.0 <1.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/npmlog" + ] + ], + "_from": "console-control-strings@>=1.1.0 <1.2.0", + "_id": "console-control-strings@1.1.0", + "_inCache": true, + "_location": "/console-control-strings", + "_nodeVersion": "4.4.0", + "_npmOperationalInternal": { + "host": "packages-16-east.internal.npmjs.com", + "tmp": "tmp/console-control-strings-1.1.0.tgz_1466033396831_0.9470485949423164" + }, + "_npmUser": { + "name": "iarna", + "email": "me@re-becca.org" + }, + "_npmVersion": "3.9.2", + "_phantomChildren": {}, + "_requested": { + "raw": "console-control-strings@~1.1.0", + "scope": null, + "escapedName": "console-control-strings", + "name": "console-control-strings", + "rawSpec": "~1.1.0", + "spec": ">=1.1.0 <1.2.0", + "type": "range" + }, + "_requiredBy": [ + "/gauge", + "/npmlog" + ], + "_resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "_shasum": "3d7cf4464db6446ea644bf4b39507f9851008e8e", + "_shrinkwrap": null, + "_spec": "console-control-strings@~1.1.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/npmlog", + "author": { + "name": "Rebecca Turner", + "email": "me@re-becca.org", + "url": "http://re-becca.org/" + }, + "bugs": { + "url": "https://github.com/iarna/console-control-strings/issues" + }, + "dependencies": {}, + "description": "A library of cross-platform tested terminal/console command strings for doing things like color and cursor positioning. This is a subset of both ansi and vt100. All control codes included work on both Windows & Unix-like OSes, except where noted.", + "devDependencies": { + "standard": "^7.1.2", + "tap": "^5.7.2" + }, + "directories": { + "test": "test" + }, + "dist": { + "shasum": "3d7cf4464db6446ea644bf4b39507f9851008e8e", + "tarball": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz" + }, + "files": [ + "LICENSE", + "index.js" + ], + "gitHead": "722439b4998d2964ac3d3f9ec175c008aa9b7b4b", + "homepage": "https://github.com/iarna/console-control-strings#readme", + "keywords": [], + "license": "ISC", + "main": "index.js", + "maintainers": [ + { + "name": "iarna", + "email": "me@re-becca.org" + } + ], + "name": "console-control-strings", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/iarna/console-control-strings.git" + }, + "scripts": { + "test": "standard && tap test/*.js" + }, + "version": "1.1.0" +} diff --git a/NodjsPartieArduino/node_modules/content-disposition/HISTORY.md b/NodjsPartieArduino/node_modules/content-disposition/HISTORY.md new file mode 100644 index 0000000..53849b6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-disposition/HISTORY.md @@ -0,0 +1,50 @@ +0.5.2 / 2016-12-08 +================== + + * Fix `parse` to accept any linear whitespace character + +0.5.1 / 2016-01-17 +================== + + * perf: enable strict mode + +0.5.0 / 2014-10-11 +================== + + * Add `parse` function + +0.4.0 / 2014-09-21 +================== + + * Expand non-Unicode `filename` to the full ISO-8859-1 charset + +0.3.0 / 2014-09-20 +================== + + * Add `fallback` option + * Add `type` option + +0.2.0 / 2014-09-19 +================== + + * Reduce ambiguity of file names with hex escape in buggy browsers + +0.1.2 / 2014-09-19 +================== + + * Fix periodic invalid Unicode filename header + +0.1.1 / 2014-09-19 +================== + + * Fix invalid characters appearing in `filename*` parameter + +0.1.0 / 2014-09-18 +================== + + * Make the `filename` argument optional + +0.0.0 / 2014-09-18 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/content-disposition/LICENSE b/NodjsPartieArduino/node_modules/content-disposition/LICENSE new file mode 100644 index 0000000..b7dce6c --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-disposition/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2014 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/content-disposition/README.md b/NodjsPartieArduino/node_modules/content-disposition/README.md new file mode 100644 index 0000000..992d19a --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-disposition/README.md @@ -0,0 +1,141 @@ +# content-disposition + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Node.js Version][node-version-image]][node-version-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Create and parse HTTP `Content-Disposition` header + +## Installation + +```sh +$ npm install content-disposition +``` + +## API + +```js +var contentDisposition = require('content-disposition') +``` + +### contentDisposition(filename, options) + +Create an attachment `Content-Disposition` header value using the given file name, +if supplied. The `filename` is optional and if no file name is desired, but you +want to specify `options`, set `filename` to `undefined`. + +```js +res.setHeader('Content-Disposition', contentDisposition('∫ maths.pdf')) +``` + +**note** HTTP headers are of the ISO-8859-1 character set. If you are writing this +header through a means different from `setHeader` in Node.js, you'll want to specify +the `'binary'` encoding in Node.js. + +#### Options + +`contentDisposition` accepts these properties in the options object. + +##### fallback + +If the `filename` option is outside ISO-8859-1, then the file name is actually +stored in a supplemental field for clients that support Unicode file names and +a ISO-8859-1 version of the file name is automatically generated. + +This specifies the ISO-8859-1 file name to override the automatic generation or +disables the generation all together, defaults to `true`. + + - A string will specify the ISO-8859-1 file name to use in place of automatic + generation. + - `false` will disable including a ISO-8859-1 file name and only include the + Unicode version (unless the file name is already ISO-8859-1). + - `true` will enable automatic generation if the file name is outside ISO-8859-1. + +If the `filename` option is ISO-8859-1 and this option is specified and has a +different value, then the `filename` option is encoded in the extended field +and this set as the fallback field, even though they are both ISO-8859-1. + +##### type + +Specifies the disposition type, defaults to `"attachment"`. This can also be +`"inline"`, or any other value (all values except inline are treated like +`attachment`, but can convey additional information if both parties agree to +it). The type is normalized to lower-case. + +### contentDisposition.parse(string) + +```js +var disposition = contentDisposition.parse('attachment; filename="EURO rates.txt"; filename*=UTF-8\'\'%e2%82%ac%20rates.txt'); +``` + +Parse a `Content-Disposition` header string. This automatically handles extended +("Unicode") parameters by decoding them and providing them under the standard +parameter name. This will return an object with the following properties (examples +are shown for the string `'attachment; filename="EURO rates.txt"; filename*=UTF-8\'\'%e2%82%ac%20rates.txt'`): + + - `type`: The disposition type (always lower case). Example: `'attachment'` + + - `parameters`: An object of the parameters in the disposition (name of parameter + always lower case and extended versions replace non-extended versions). Example: + `{filename: "€ rates.txt"}` + +## Examples + +### Send a file for download + +```js +var contentDisposition = require('content-disposition') +var destroy = require('destroy') +var http = require('http') +var onFinished = require('on-finished') + +var filePath = '/path/to/public/plans.pdf' + +http.createServer(function onRequest(req, res) { + // set headers + res.setHeader('Content-Type', 'application/pdf') + res.setHeader('Content-Disposition', contentDisposition(filePath)) + + // send file + var stream = fs.createReadStream(filePath) + stream.pipe(res) + onFinished(res, function (err) { + destroy(stream) + }) +}) +``` + +## Testing + +```sh +$ npm test +``` + +## References + +- [RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1][rfc-2616] +- [RFC 5987: Character Set and Language Encoding for Hypertext Transfer Protocol (HTTP) Header Field Parameters][rfc-5987] +- [RFC 6266: Use of the Content-Disposition Header Field in the Hypertext Transfer Protocol (HTTP)][rfc-6266] +- [Test Cases for HTTP Content-Disposition header field (RFC 6266) and the Encodings defined in RFCs 2047, 2231 and 5987][tc-2231] + +[rfc-2616]: https://tools.ietf.org/html/rfc2616 +[rfc-5987]: https://tools.ietf.org/html/rfc5987 +[rfc-6266]: https://tools.ietf.org/html/rfc6266 +[tc-2231]: http://greenbytes.de/tech/tc2231/ + +## License + +[MIT](LICENSE) + +[npm-image]: https://img.shields.io/npm/v/content-disposition.svg?style=flat +[npm-url]: https://npmjs.org/package/content-disposition +[node-version-image]: https://img.shields.io/node/v/content-disposition.svg?style=flat +[node-version-url]: https://nodejs.org/en/download +[travis-image]: https://img.shields.io/travis/jshttp/content-disposition.svg?style=flat +[travis-url]: https://travis-ci.org/jshttp/content-disposition +[coveralls-image]: https://img.shields.io/coveralls/jshttp/content-disposition.svg?style=flat +[coveralls-url]: https://coveralls.io/r/jshttp/content-disposition?branch=master +[downloads-image]: https://img.shields.io/npm/dm/content-disposition.svg?style=flat +[downloads-url]: https://npmjs.org/package/content-disposition diff --git a/NodjsPartieArduino/node_modules/content-disposition/index.js b/NodjsPartieArduino/node_modules/content-disposition/index.js new file mode 100644 index 0000000..88a0d0a --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-disposition/index.js @@ -0,0 +1,445 @@ +/*! + * content-disposition + * Copyright(c) 2014 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module exports. + */ + +module.exports = contentDisposition +module.exports.parse = parse + +/** + * Module dependencies. + */ + +var basename = require('path').basename + +/** + * RegExp to match non attr-char, *after* encodeURIComponent (i.e. not including "%") + */ + +var ENCODE_URL_ATTR_CHAR_REGEXP = /[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g // eslint-disable-line no-control-regex + +/** + * RegExp to match percent encoding escape. + */ + +var HEX_ESCAPE_REGEXP = /%[0-9A-Fa-f]{2}/ +var HEX_ESCAPE_REPLACE_REGEXP = /%([0-9A-Fa-f]{2})/g + +/** + * RegExp to match non-latin1 characters. + */ + +var NON_LATIN1_REGEXP = /[^\x20-\x7e\xa0-\xff]/g + +/** + * RegExp to match quoted-pair in RFC 2616 + * + * quoted-pair = "\" CHAR + * CHAR = + */ + +var QESC_REGEXP = /\\([\u0000-\u007f])/g + +/** + * RegExp to match chars that must be quoted-pair in RFC 2616 + */ + +var QUOTE_REGEXP = /([\\"])/g + +/** + * RegExp for various RFC 2616 grammar + * + * parameter = token "=" ( token | quoted-string ) + * token = 1* + * separators = "(" | ")" | "<" | ">" | "@" + * | "," | ";" | ":" | "\" | <"> + * | "/" | "[" | "]" | "?" | "=" + * | "{" | "}" | SP | HT + * quoted-string = ( <"> *(qdtext | quoted-pair ) <"> ) + * qdtext = > + * quoted-pair = "\" CHAR + * CHAR = + * TEXT = + * LWS = [CRLF] 1*( SP | HT ) + * CRLF = CR LF + * CR = + * LF = + * SP = + * HT = + * CTL = + * OCTET = + */ + +var PARAM_REGEXP = /;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g // eslint-disable-line no-control-regex +var TEXT_REGEXP = /^[\x20-\x7e\x80-\xff]+$/ +var TOKEN_REGEXP = /^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/ + +/** + * RegExp for various RFC 5987 grammar + * + * ext-value = charset "'" [ language ] "'" value-chars + * charset = "UTF-8" / "ISO-8859-1" / mime-charset + * mime-charset = 1*mime-charsetc + * mime-charsetc = ALPHA / DIGIT + * / "!" / "#" / "$" / "%" / "&" + * / "+" / "-" / "^" / "_" / "`" + * / "{" / "}" / "~" + * language = ( 2*3ALPHA [ extlang ] ) + * / 4ALPHA + * / 5*8ALPHA + * extlang = *3( "-" 3ALPHA ) + * value-chars = *( pct-encoded / attr-char ) + * pct-encoded = "%" HEXDIG HEXDIG + * attr-char = ALPHA / DIGIT + * / "!" / "#" / "$" / "&" / "+" / "-" / "." + * / "^" / "_" / "`" / "|" / "~" + */ + +var EXT_VALUE_REGEXP = /^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/ + +/** + * RegExp for various RFC 6266 grammar + * + * disposition-type = "inline" | "attachment" | disp-ext-type + * disp-ext-type = token + * disposition-parm = filename-parm | disp-ext-parm + * filename-parm = "filename" "=" value + * | "filename*" "=" ext-value + * disp-ext-parm = token "=" value + * | ext-token "=" ext-value + * ext-token = + */ + +var DISPOSITION_TYPE_REGEXP = /^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/ // eslint-disable-line no-control-regex + +/** + * Create an attachment Content-Disposition header. + * + * @param {string} [filename] + * @param {object} [options] + * @param {string} [options.type=attachment] + * @param {string|boolean} [options.fallback=true] + * @return {string} + * @api public + */ + +function contentDisposition (filename, options) { + var opts = options || {} + + // get type + var type = opts.type || 'attachment' + + // get parameters + var params = createparams(filename, opts.fallback) + + // format into string + return format(new ContentDisposition(type, params)) +} + +/** + * Create parameters object from filename and fallback. + * + * @param {string} [filename] + * @param {string|boolean} [fallback=true] + * @return {object} + * @api private + */ + +function createparams (filename, fallback) { + if (filename === undefined) { + return + } + + var params = {} + + if (typeof filename !== 'string') { + throw new TypeError('filename must be a string') + } + + // fallback defaults to true + if (fallback === undefined) { + fallback = true + } + + if (typeof fallback !== 'string' && typeof fallback !== 'boolean') { + throw new TypeError('fallback must be a string or boolean') + } + + if (typeof fallback === 'string' && NON_LATIN1_REGEXP.test(fallback)) { + throw new TypeError('fallback must be ISO-8859-1 string') + } + + // restrict to file base name + var name = basename(filename) + + // determine if name is suitable for quoted string + var isQuotedString = TEXT_REGEXP.test(name) + + // generate fallback name + var fallbackName = typeof fallback !== 'string' + ? fallback && getlatin1(name) + : basename(fallback) + var hasFallback = typeof fallbackName === 'string' && fallbackName !== name + + // set extended filename parameter + if (hasFallback || !isQuotedString || HEX_ESCAPE_REGEXP.test(name)) { + params['filename*'] = name + } + + // set filename parameter + if (isQuotedString || hasFallback) { + params.filename = hasFallback + ? fallbackName + : name + } + + return params +} + +/** + * Format object to Content-Disposition header. + * + * @param {object} obj + * @param {string} obj.type + * @param {object} [obj.parameters] + * @return {string} + * @api private + */ + +function format (obj) { + var parameters = obj.parameters + var type = obj.type + + if (!type || typeof type !== 'string' || !TOKEN_REGEXP.test(type)) { + throw new TypeError('invalid type') + } + + // start with normalized type + var string = String(type).toLowerCase() + + // append parameters + if (parameters && typeof parameters === 'object') { + var param + var params = Object.keys(parameters).sort() + + for (var i = 0; i < params.length; i++) { + param = params[i] + + var val = param.substr(-1) === '*' + ? ustring(parameters[param]) + : qstring(parameters[param]) + + string += '; ' + param + '=' + val + } + } + + return string +} + +/** + * Decode a RFC 6987 field value (gracefully). + * + * @param {string} str + * @return {string} + * @api private + */ + +function decodefield (str) { + var match = EXT_VALUE_REGEXP.exec(str) + + if (!match) { + throw new TypeError('invalid extended field value') + } + + var charset = match[1].toLowerCase() + var encoded = match[2] + var value + + // to binary string + var binary = encoded.replace(HEX_ESCAPE_REPLACE_REGEXP, pdecode) + + switch (charset) { + case 'iso-8859-1': + value = getlatin1(binary) + break + case 'utf-8': + value = new Buffer(binary, 'binary').toString('utf8') + break + default: + throw new TypeError('unsupported charset in extended field') + } + + return value +} + +/** + * Get ISO-8859-1 version of string. + * + * @param {string} val + * @return {string} + * @api private + */ + +function getlatin1 (val) { + // simple Unicode -> ISO-8859-1 transformation + return String(val).replace(NON_LATIN1_REGEXP, '?') +} + +/** + * Parse Content-Disposition header string. + * + * @param {string} string + * @return {object} + * @api private + */ + +function parse (string) { + if (!string || typeof string !== 'string') { + throw new TypeError('argument string is required') + } + + var match = DISPOSITION_TYPE_REGEXP.exec(string) + + if (!match) { + throw new TypeError('invalid type format') + } + + // normalize type + var index = match[0].length + var type = match[1].toLowerCase() + + var key + var names = [] + var params = {} + var value + + // calculate index to start at + index = PARAM_REGEXP.lastIndex = match[0].substr(-1) === ';' + ? index - 1 + : index + + // match parameters + while ((match = PARAM_REGEXP.exec(string))) { + if (match.index !== index) { + throw new TypeError('invalid parameter format') + } + + index += match[0].length + key = match[1].toLowerCase() + value = match[2] + + if (names.indexOf(key) !== -1) { + throw new TypeError('invalid duplicate parameter') + } + + names.push(key) + + if (key.indexOf('*') + 1 === key.length) { + // decode extended value + key = key.slice(0, -1) + value = decodefield(value) + + // overwrite existing value + params[key] = value + continue + } + + if (typeof params[key] === 'string') { + continue + } + + if (value[0] === '"') { + // remove quotes and escapes + value = value + .substr(1, value.length - 2) + .replace(QESC_REGEXP, '$1') + } + + params[key] = value + } + + if (index !== -1 && index !== string.length) { + throw new TypeError('invalid parameter format') + } + + return new ContentDisposition(type, params) +} + +/** + * Percent decode a single character. + * + * @param {string} str + * @param {string} hex + * @return {string} + * @api private + */ + +function pdecode (str, hex) { + return String.fromCharCode(parseInt(hex, 16)) +} + +/** + * Percent encode a single character. + * + * @param {string} char + * @return {string} + * @api private + */ + +function pencode (char) { + var hex = String(char) + .charCodeAt(0) + .toString(16) + .toUpperCase() + return hex.length === 1 + ? '%0' + hex + : '%' + hex +} + +/** + * Quote a string for HTTP. + * + * @param {string} val + * @return {string} + * @api private + */ + +function qstring (val) { + var str = String(val) + + return '"' + str.replace(QUOTE_REGEXP, '\\$1') + '"' +} + +/** + * Encode a Unicode string for HTTP (RFC 5987). + * + * @param {string} val + * @return {string} + * @api private + */ + +function ustring (val) { + var str = String(val) + + // percent encode as UTF-8 + var encoded = encodeURIComponent(str) + .replace(ENCODE_URL_ATTR_CHAR_REGEXP, pencode) + + return 'UTF-8\'\'' + encoded +} + +/** + * Class for parsed Content-Disposition header for v8 optimization + */ + +function ContentDisposition (type, parameters) { + this.type = type + this.parameters = parameters +} diff --git a/NodjsPartieArduino/node_modules/content-disposition/package.json b/NodjsPartieArduino/node_modules/content-disposition/package.json new file mode 100644 index 0000000..5ad0331 --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-disposition/package.json @@ -0,0 +1,110 @@ +{ + "_args": [ + [ + { + "raw": "content-disposition@0.5.2", + "scope": null, + "escapedName": "content-disposition", + "name": "content-disposition", + "rawSpec": "0.5.2", + "spec": "0.5.2", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "content-disposition@0.5.2", + "_id": "content-disposition@0.5.2", + "_inCache": true, + "_location": "/content-disposition", + "_nodeVersion": "4.6.0", + "_npmOperationalInternal": { + "host": "packages-18-east.internal.npmjs.com", + "tmp": "tmp/content-disposition-0.5.2.tgz_1481246224565_0.35659545403905213" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "2.15.9", + "_phantomChildren": {}, + "_requested": { + "raw": "content-disposition@0.5.2", + "scope": null, + "escapedName": "content-disposition", + "name": "content-disposition", + "rawSpec": "0.5.2", + "spec": "0.5.2", + "type": "version" + }, + "_requiredBy": [ + "/express" + ], + "_resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "_shasum": "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4", + "_shrinkwrap": null, + "_spec": "content-disposition@0.5.2", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "bugs": { + "url": "https://github.com/jshttp/content-disposition/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + } + ], + "dependencies": {}, + "description": "Create and parse Content-Disposition header", + "devDependencies": { + "eslint": "3.11.1", + "eslint-config-standard": "6.2.1", + "eslint-plugin-promise": "3.3.0", + "eslint-plugin-standard": "2.0.1", + "istanbul": "0.4.5", + "mocha": "1.21.5" + }, + "directories": {}, + "dist": { + "shasum": "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4", + "tarball": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz" + }, + "engines": { + "node": ">= 0.6" + }, + "files": [ + "LICENSE", + "HISTORY.md", + "README.md", + "index.js" + ], + "gitHead": "2a08417377cf55678c9f870b305f3c6c088920f3", + "homepage": "https://github.com/jshttp/content-disposition#readme", + "keywords": [ + "content-disposition", + "http", + "rfc6266", + "res" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "content-disposition", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jshttp/content-disposition.git" + }, + "scripts": { + "lint": "eslint .", + "test": "mocha --reporter spec --bail --check-leaks test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", + "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" + }, + "version": "0.5.2" +} diff --git a/NodjsPartieArduino/node_modules/content-type/HISTORY.md b/NodjsPartieArduino/node_modules/content-type/HISTORY.md new file mode 100644 index 0000000..8f5cb70 --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-type/HISTORY.md @@ -0,0 +1,24 @@ +1.0.4 / 2017-09-11 +================== + + * perf: skip parameter parsing when no parameters + +1.0.3 / 2017-09-10 +================== + + * perf: remove argument reassignment + +1.0.2 / 2016-05-09 +================== + + * perf: enable strict mode + +1.0.1 / 2015-02-13 +================== + + * Improve missing `Content-Type` header error message + +1.0.0 / 2015-02-01 +================== + + * Initial implementation, derived from `media-typer@0.3.0` diff --git a/NodjsPartieArduino/node_modules/content-type/LICENSE b/NodjsPartieArduino/node_modules/content-type/LICENSE new file mode 100644 index 0000000..34b1a2d --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-type/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2015 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/content-type/README.md b/NodjsPartieArduino/node_modules/content-type/README.md new file mode 100644 index 0000000..3ed6741 --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-type/README.md @@ -0,0 +1,92 @@ +# content-type + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Node.js Version][node-version-image]][node-version-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Create and parse HTTP Content-Type header according to RFC 7231 + +## Installation + +```sh +$ npm install content-type +``` + +## API + +```js +var contentType = require('content-type') +``` + +### contentType.parse(string) + +```js +var obj = contentType.parse('image/svg+xml; charset=utf-8') +``` + +Parse a content type string. This will return an object with the following +properties (examples are shown for the string `'image/svg+xml; charset=utf-8'`): + + - `type`: The media type (the type and subtype, always lower case). + Example: `'image/svg+xml'` + + - `parameters`: An object of the parameters in the media type (name of parameter + always lower case). Example: `{charset: 'utf-8'}` + +Throws a `TypeError` if the string is missing or invalid. + +### contentType.parse(req) + +```js +var obj = contentType.parse(req) +``` + +Parse the `content-type` header from the given `req`. Short-cut for +`contentType.parse(req.headers['content-type'])`. + +Throws a `TypeError` if the `Content-Type` header is missing or invalid. + +### contentType.parse(res) + +```js +var obj = contentType.parse(res) +``` + +Parse the `content-type` header set on the given `res`. Short-cut for +`contentType.parse(res.getHeader('content-type'))`. + +Throws a `TypeError` if the `Content-Type` header is missing or invalid. + +### contentType.format(obj) + +```js +var str = contentType.format({type: 'image/svg+xml'}) +``` + +Format an object into a content type string. This will return a string of the +content type for the given object with the following properties (examples are +shown that produce the string `'image/svg+xml; charset=utf-8'`): + + - `type`: The media type (will be lower-cased). Example: `'image/svg+xml'` + + - `parameters`: An object of the parameters in the media type (name of the + parameter will be lower-cased). Example: `{charset: 'utf-8'}` + +Throws a `TypeError` if the object contains an invalid type or parameter names. + +## License + +[MIT](LICENSE) + +[npm-image]: https://img.shields.io/npm/v/content-type.svg +[npm-url]: https://npmjs.org/package/content-type +[node-version-image]: https://img.shields.io/node/v/content-type.svg +[node-version-url]: http://nodejs.org/download/ +[travis-image]: https://img.shields.io/travis/jshttp/content-type/master.svg +[travis-url]: https://travis-ci.org/jshttp/content-type +[coveralls-image]: https://img.shields.io/coveralls/jshttp/content-type/master.svg +[coveralls-url]: https://coveralls.io/r/jshttp/content-type +[downloads-image]: https://img.shields.io/npm/dm/content-type.svg +[downloads-url]: https://npmjs.org/package/content-type diff --git a/NodjsPartieArduino/node_modules/content-type/index.js b/NodjsPartieArduino/node_modules/content-type/index.js new file mode 100644 index 0000000..6ce03f2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-type/index.js @@ -0,0 +1,222 @@ +/*! + * content-type + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * RegExp to match *( ";" parameter ) in RFC 7231 sec 3.1.1.1 + * + * parameter = token "=" ( token / quoted-string ) + * token = 1*tchar + * tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" + * / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~" + * / DIGIT / ALPHA + * ; any VCHAR, except delimiters + * quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE + * qdtext = HTAB / SP / %x21 / %x23-5B / %x5D-7E / obs-text + * obs-text = %x80-FF + * quoted-pair = "\" ( HTAB / SP / VCHAR / obs-text ) + */ +var PARAM_REGEXP = /; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g +var TEXT_REGEXP = /^[\u000b\u0020-\u007e\u0080-\u00ff]+$/ +var TOKEN_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/ + +/** + * RegExp to match quoted-pair in RFC 7230 sec 3.2.6 + * + * quoted-pair = "\" ( HTAB / SP / VCHAR / obs-text ) + * obs-text = %x80-FF + */ +var QESC_REGEXP = /\\([\u000b\u0020-\u00ff])/g + +/** + * RegExp to match chars that must be quoted-pair in RFC 7230 sec 3.2.6 + */ +var QUOTE_REGEXP = /([\\"])/g + +/** + * RegExp to match type in RFC 7231 sec 3.1.1.1 + * + * media-type = type "/" subtype + * type = token + * subtype = token + */ +var TYPE_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/ + +/** + * Module exports. + * @public + */ + +exports.format = format +exports.parse = parse + +/** + * Format object to media type. + * + * @param {object} obj + * @return {string} + * @public + */ + +function format (obj) { + if (!obj || typeof obj !== 'object') { + throw new TypeError('argument obj is required') + } + + var parameters = obj.parameters + var type = obj.type + + if (!type || !TYPE_REGEXP.test(type)) { + throw new TypeError('invalid type') + } + + var string = type + + // append parameters + if (parameters && typeof parameters === 'object') { + var param + var params = Object.keys(parameters).sort() + + for (var i = 0; i < params.length; i++) { + param = params[i] + + if (!TOKEN_REGEXP.test(param)) { + throw new TypeError('invalid parameter name') + } + + string += '; ' + param + '=' + qstring(parameters[param]) + } + } + + return string +} + +/** + * Parse media type to object. + * + * @param {string|object} string + * @return {Object} + * @public + */ + +function parse (string) { + if (!string) { + throw new TypeError('argument string is required') + } + + // support req/res-like objects as argument + var header = typeof string === 'object' + ? getcontenttype(string) + : string + + if (typeof header !== 'string') { + throw new TypeError('argument string is required to be a string') + } + + var index = header.indexOf(';') + var type = index !== -1 + ? header.substr(0, index).trim() + : header.trim() + + if (!TYPE_REGEXP.test(type)) { + throw new TypeError('invalid media type') + } + + var obj = new ContentType(type.toLowerCase()) + + // parse parameters + if (index !== -1) { + var key + var match + var value + + PARAM_REGEXP.lastIndex = index + + while ((match = PARAM_REGEXP.exec(header))) { + if (match.index !== index) { + throw new TypeError('invalid parameter format') + } + + index += match[0].length + key = match[1].toLowerCase() + value = match[2] + + if (value[0] === '"') { + // remove quotes and escapes + value = value + .substr(1, value.length - 2) + .replace(QESC_REGEXP, '$1') + } + + obj.parameters[key] = value + } + + if (index !== header.length) { + throw new TypeError('invalid parameter format') + } + } + + return obj +} + +/** + * Get content-type from req/res objects. + * + * @param {object} + * @return {Object} + * @private + */ + +function getcontenttype (obj) { + var header + + if (typeof obj.getHeader === 'function') { + // res-like + header = obj.getHeader('content-type') + } else if (typeof obj.headers === 'object') { + // req-like + header = obj.headers && obj.headers['content-type'] + } + + if (typeof header !== 'string') { + throw new TypeError('content-type header is missing from object') + } + + return header +} + +/** + * Quote a string if necessary. + * + * @param {string} val + * @return {string} + * @private + */ + +function qstring (val) { + var str = String(val) + + // no need to quote tokens + if (TOKEN_REGEXP.test(str)) { + return str + } + + if (str.length > 0 && !TEXT_REGEXP.test(str)) { + throw new TypeError('invalid parameter value') + } + + return '"' + str.replace(QUOTE_REGEXP, '\\$1') + '"' +} + +/** + * Class to represent a content type. + * @private + */ +function ContentType (type) { + this.parameters = Object.create(null) + this.type = type +} diff --git a/NodjsPartieArduino/node_modules/content-type/package.json b/NodjsPartieArduino/node_modules/content-type/package.json new file mode 100644 index 0000000..5aecab3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/content-type/package.json @@ -0,0 +1,113 @@ +{ + "_args": [ + [ + { + "raw": "content-type@~1.0.4", + "scope": null, + "escapedName": "content-type", + "name": "content-type", + "rawSpec": "~1.0.4", + "spec": ">=1.0.4 <1.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "content-type@>=1.0.4 <1.1.0", + "_id": "content-type@1.0.4", + "_inCache": true, + "_location": "/content-type", + "_nodeVersion": "6.11.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/content-type-1.0.4.tgz_1505166155546_0.06956395204178989" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "5.3.0", + "_phantomChildren": {}, + "_requested": { + "raw": "content-type@~1.0.4", + "scope": null, + "escapedName": "content-type", + "name": "content-type", + "rawSpec": "~1.0.4", + "spec": ">=1.0.4 <1.1.0", + "type": "range" + }, + "_requiredBy": [ + "/body-parser", + "/express" + ], + "_resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "_shasum": "e138cc75e040c727b1966fe5e5f8c9aee256fe3b", + "_shrinkwrap": null, + "_spec": "content-type@~1.0.4", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "author": { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + }, + "bugs": { + "url": "https://github.com/jshttp/content-type/issues" + }, + "dependencies": {}, + "description": "Create and parse HTTP Content-Type header", + "devDependencies": { + "eslint": "3.19.0", + "eslint-config-standard": "10.2.1", + "eslint-plugin-import": "2.7.0", + "eslint-plugin-node": "5.1.1", + "eslint-plugin-promise": "3.5.0", + "eslint-plugin-standard": "3.0.1", + "istanbul": "0.4.5", + "mocha": "~1.21.5" + }, + "directories": {}, + "dist": { + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "shasum": "e138cc75e040c727b1966fe5e5f8c9aee256fe3b", + "tarball": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz" + }, + "engines": { + "node": ">= 0.6" + }, + "files": [ + "LICENSE", + "HISTORY.md", + "README.md", + "index.js" + ], + "gitHead": "d22f8ac6c407789c906bd6fed137efde8f772b09", + "homepage": "https://github.com/jshttp/content-type#readme", + "keywords": [ + "content-type", + "http", + "req", + "res", + "rfc7231" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "content-type", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jshttp/content-type.git" + }, + "scripts": { + "lint": "eslint .", + "test": "mocha --reporter spec --check-leaks --bail test/", + "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/" + }, + "version": "1.0.4" +} diff --git a/NodjsPartieArduino/node_modules/cookie-signature/History.md b/NodjsPartieArduino/node_modules/cookie-signature/History.md new file mode 100644 index 0000000..78513cc --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie-signature/History.md @@ -0,0 +1,38 @@ +1.0.6 / 2015-02-03 +================== + +* use `npm test` instead of `make test` to run tests +* clearer assertion messages when checking input + + +1.0.5 / 2014-09-05 +================== + +* add license to package.json + +1.0.4 / 2014-06-25 +================== + + * corrected avoidance of timing attacks (thanks @tenbits!) + +1.0.3 / 2014-01-28 +================== + + * [incorrect] fix for timing attacks + +1.0.2 / 2014-01-28 +================== + + * fix missing repository warning + * fix typo in test + +1.0.1 / 2013-04-15 +================== + + * Revert "Changed underlying HMAC algo. to sha512." + * Revert "Fix for timing attacks on MAC verification." + +0.0.1 / 2010-01-03 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/cookie-signature/Readme.md b/NodjsPartieArduino/node_modules/cookie-signature/Readme.md new file mode 100644 index 0000000..2559e84 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie-signature/Readme.md @@ -0,0 +1,42 @@ + +# cookie-signature + + Sign and unsign cookies. + +## Example + +```js +var cookie = require('cookie-signature'); + +var val = cookie.sign('hello', 'tobiiscool'); +val.should.equal('hello.DGDUkGlIkCzPz+C0B064FNgHdEjox7ch8tOBGslZ5QI'); + +var val = cookie.sign('hello', 'tobiiscool'); +cookie.unsign(val, 'tobiiscool').should.equal('hello'); +cookie.unsign(val, 'luna').should.be.false; +``` + +## License + +(The MIT License) + +Copyright (c) 2012 LearnBoost <tj@learnboost.com> + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/cookie-signature/index.js b/NodjsPartieArduino/node_modules/cookie-signature/index.js new file mode 100644 index 0000000..b8c9463 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie-signature/index.js @@ -0,0 +1,51 @@ +/** + * Module dependencies. + */ + +var crypto = require('crypto'); + +/** + * Sign the given `val` with `secret`. + * + * @param {String} val + * @param {String} secret + * @return {String} + * @api private + */ + +exports.sign = function(val, secret){ + if ('string' != typeof val) throw new TypeError("Cookie value must be provided as a string."); + if ('string' != typeof secret) throw new TypeError("Secret string must be provided."); + return val + '.' + crypto + .createHmac('sha256', secret) + .update(val) + .digest('base64') + .replace(/\=+$/, ''); +}; + +/** + * Unsign and decode the given `val` with `secret`, + * returning `false` if the signature is invalid. + * + * @param {String} val + * @param {String} secret + * @return {String|Boolean} + * @api private + */ + +exports.unsign = function(val, secret){ + if ('string' != typeof val) throw new TypeError("Signed cookie string must be provided."); + if ('string' != typeof secret) throw new TypeError("Secret string must be provided."); + var str = val.slice(0, val.lastIndexOf('.')) + , mac = exports.sign(str, secret); + + return sha1(mac) == sha1(val) ? str : false; +}; + +/** + * Private + */ + +function sha1(str){ + return crypto.createHash('sha1').update(str).digest('hex'); +} diff --git a/NodjsPartieArduino/node_modules/cookie-signature/package.json b/NodjsPartieArduino/node_modules/cookie-signature/package.json new file mode 100644 index 0000000..d1388e2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie-signature/package.json @@ -0,0 +1,92 @@ +{ + "_args": [ + [ + { + "raw": "cookie-signature@1.0.6", + "scope": null, + "escapedName": "cookie-signature", + "name": "cookie-signature", + "rawSpec": "1.0.6", + "spec": "1.0.6", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "cookie-signature@1.0.6", + "_id": "cookie-signature@1.0.6", + "_inCache": true, + "_location": "/cookie-signature", + "_nodeVersion": "0.10.36", + "_npmUser": { + "name": "natevw", + "email": "natevw@yahoo.com" + }, + "_npmVersion": "2.3.0", + "_phantomChildren": {}, + "_requested": { + "raw": "cookie-signature@1.0.6", + "scope": null, + "escapedName": "cookie-signature", + "name": "cookie-signature", + "rawSpec": "1.0.6", + "spec": "1.0.6", + "type": "version" + }, + "_requiredBy": [ + "/express" + ], + "_resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "_shasum": "e303a882b342cc3ee8ca513a79999734dab3ae2c", + "_shrinkwrap": null, + "_spec": "cookie-signature@1.0.6", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "author": { + "name": "TJ Holowaychuk", + "email": "tj@learnboost.com" + }, + "bugs": { + "url": "https://github.com/visionmedia/node-cookie-signature/issues" + }, + "dependencies": {}, + "description": "Sign and unsign cookies", + "devDependencies": { + "mocha": "*", + "should": "*" + }, + "directories": {}, + "dist": { + "shasum": "e303a882b342cc3ee8ca513a79999734dab3ae2c", + "tarball": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" + }, + "gitHead": "391b56cf44d88c493491b7e3fc53208cfb976d2a", + "homepage": "https://github.com/visionmedia/node-cookie-signature", + "keywords": [ + "cookie", + "sign", + "unsign" + ], + "license": "MIT", + "main": "index", + "maintainers": [ + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + { + "name": "natevw", + "email": "natevw@yahoo.com" + } + ], + "name": "cookie-signature", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/visionmedia/node-cookie-signature.git" + }, + "scripts": { + "test": "mocha --require should --reporter spec" + }, + "version": "1.0.6" +} diff --git a/NodjsPartieArduino/node_modules/cookie/HISTORY.md b/NodjsPartieArduino/node_modules/cookie/HISTORY.md new file mode 100644 index 0000000..5bd6485 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie/HISTORY.md @@ -0,0 +1,118 @@ +0.3.1 / 2016-05-26 +================== + + * Fix `sameSite: true` to work with draft-7 clients + - `true` now sends `SameSite=Strict` instead of `SameSite` + +0.3.0 / 2016-05-26 +================== + + * Add `sameSite` option + - Replaces `firstPartyOnly` option, never implemented by browsers + * Improve error message when `encode` is not a function + * Improve error message when `expires` is not a `Date` + +0.2.4 / 2016-05-20 +================== + + * perf: enable strict mode + * perf: use for loop in parse + * perf: use string concatination for serialization + +0.2.3 / 2015-10-25 +================== + + * Fix cookie `Max-Age` to never be a floating point number + +0.2.2 / 2015-09-17 +================== + + * Fix regression when setting empty cookie value + - Ease the new restriction, which is just basic header-level validation + * Fix typo in invalid value errors + +0.2.1 / 2015-09-17 +================== + + * Throw on invalid values provided to `serialize` + - Ensures the resulting string is a valid HTTP header value + +0.2.0 / 2015-08-13 +================== + + * Add `firstPartyOnly` option + * Throw better error for invalid argument to parse + * perf: hoist regular expression + +0.1.5 / 2015-09-17 +================== + + * Fix regression when setting empty cookie value + - Ease the new restriction, which is just basic header-level validation + * Fix typo in invalid value errors + +0.1.4 / 2015-09-17 +================== + + * Throw better error for invalid argument to parse + * Throw on invalid values provided to `serialize` + - Ensures the resulting string is a valid HTTP header value + +0.1.3 / 2015-05-19 +================== + + * Reduce the scope of try-catch deopt + * Remove argument reassignments + +0.1.2 / 2014-04-16 +================== + + * Remove unnecessary files from npm package + +0.1.1 / 2014-02-23 +================== + + * Fix bad parse when cookie value contained a comma + * Fix support for `maxAge` of `0` + +0.1.0 / 2013-05-01 +================== + + * Add `decode` option + * Add `encode` option + +0.0.6 / 2013-04-08 +================== + + * Ignore cookie parts missing `=` + +0.0.5 / 2012-10-29 +================== + + * Return raw cookie value if value unescape errors + +0.0.4 / 2012-06-21 +================== + + * Use encode/decodeURIComponent for cookie encoding/decoding + - Improve server/client interoperability + +0.0.3 / 2012-06-06 +================== + + * Only escape special characters per the cookie RFC + +0.0.2 / 2012-06-01 +================== + + * Fix `maxAge` option to not throw error + +0.0.1 / 2012-05-28 +================== + + * Add more tests + +0.0.0 / 2012-05-28 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/cookie/LICENSE b/NodjsPartieArduino/node_modules/cookie/LICENSE new file mode 100644 index 0000000..058b6b4 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie/LICENSE @@ -0,0 +1,24 @@ +(The MIT License) + +Copyright (c) 2012-2014 Roman Shtylman +Copyright (c) 2015 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + diff --git a/NodjsPartieArduino/node_modules/cookie/README.md b/NodjsPartieArduino/node_modules/cookie/README.md new file mode 100644 index 0000000..db0d078 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie/README.md @@ -0,0 +1,220 @@ +# cookie + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Node.js Version][node-version-image]][node-version-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Basic HTTP cookie parser and serializer for HTTP servers. + +## Installation + +```sh +$ npm install cookie +``` + +## API + +```js +var cookie = require('cookie'); +``` + +### cookie.parse(str, options) + +Parse an HTTP `Cookie` header string and returning an object of all cookie name-value pairs. +The `str` argument is the string representing a `Cookie` header value and `options` is an +optional object containing additional parsing options. + +```js +var cookies = cookie.parse('foo=bar; equation=E%3Dmc%5E2'); +// { foo: 'bar', equation: 'E=mc^2' } +``` + +#### Options + +`cookie.parse` accepts these properties in the options object. + +##### decode + +Specifies a function that will be used to decode a cookie's value. Since the value of a cookie +has a limited character set (and must be a simple string), this function can be used to decode +a previously-encoded cookie value into a JavaScript string or other object. + +The default function is the global `decodeURIComponent`, which will decode any URL-encoded +sequences into their byte representations. + +**note** if an error is thrown from this function, the original, non-decoded cookie value will +be returned as the cookie's value. + +### cookie.serialize(name, value, options) + +Serialize a cookie name-value pair into a `Set-Cookie` header string. The `name` argument is the +name for the cookie, the `value` argument is the value to set the cookie to, and the `options` +argument is an optional object containing additional serialization options. + +```js +var setCookie = cookie.serialize('foo', 'bar'); +// foo=bar +``` + +#### Options + +`cookie.serialize` accepts these properties in the options object. + +##### domain + +Specifies the value for the [`Domain` `Set-Cookie` attribute][rfc-6266-5.2.3]. By default, no +domain is set, and most clients will consider the cookie to apply to only the current domain. + +##### encode + +Specifies a function that will be used to encode a cookie's value. Since value of a cookie +has a limited character set (and must be a simple string), this function can be used to encode +a value into a string suited for a cookie's value. + +The default function is the global `ecodeURIComponent`, which will encode a JavaScript string +into UTF-8 byte sequences and then URL-encode any that fall outside of the cookie range. + +##### expires + +Specifies the `Date` object to be the value for the [`Expires` `Set-Cookie` attribute][rfc-6266-5.2.1]. +By default, no expiration is set, and most clients will consider this a "non-persistent cookie" and +will delete it on a condition like exiting a web browser application. + +**note** the [cookie storage model specification][rfc-6266-5.3] states that if both `expires` and +`magAge` are set, then `maxAge` takes precedence, but it is possiblke not all clients by obey this, +so if both are set, they should point to the same date and time. + +##### httpOnly + +Specifies the `boolean` value for the [`HttpOnly` `Set-Cookie` attribute][rfc-6266-5.2.6]. When truthy, +the `HttpOnly` attribute is set, otherwise it is not. By default, the `HttpOnly` attribute is not set. + +**note** be careful when setting this to `true`, as compliant clients will not allow client-side +JavaScript to see the cookie in `document.cookie`. + +##### maxAge + +Specifies the `number` (in seconds) to be the value for the [`Max-Age` `Set-Cookie` attribute][rfc-6266-5.2.2]. +The given number will be converted to an integer by rounding down. By default, no maximum age is set. + +**note** the [cookie storage model specification][rfc-6266-5.3] states that if both `expires` and +`magAge` are set, then `maxAge` takes precedence, but it is possiblke not all clients by obey this, +so if both are set, they should point to the same date and time. + +##### path + +Specifies the value for the [`Path` `Set-Cookie` attribute][rfc-6266-5.2.4]. By default, the path +is considered the ["default path"][rfc-6266-5.1.4]. By default, no maximum age is set, and most +clients will consider this a "non-persistent cookie" and will delete it on a condition like exiting +a web browser application. + +##### sameSite + +Specifies the `boolean` or `string` to be the value for the [`SameSite` `Set-Cookie` attribute][draft-west-first-party-cookies-07]. + + - `true` will set the `SameSite` attribute to `Strict` for strict same site enforcement. + - `false` will not set the `SameSite` attribute. + - `'lax'` will set the `SameSite` attribute to `Lax` for lax same site enforcement. + - `'strict'` will set the `SameSite` attribute to `Strict` for strict same site enforcement. + +More information about the different enforcement levels can be found in the specification +https://tools.ietf.org/html/draft-west-first-party-cookies-07#section-4.1.1 + +**note** This is an attribute that has not yet been fully standardized, and may change in the future. +This also means many clients may ignore this attribute until they understand it. + +##### secure + +Specifies the `boolean` value for the [`Secure` `Set-Cookie` attribute][rfc-6266-5.2.5]. When truthy, +the `Secure` attribute is set, otherwise it is not. By default, the `Secure` attribute is not set. + +**note** be careful when setting this to `true`, as compliant clients will not send the cookie back to +the server in the future if the browser does not have an HTTPS connection. + +## Example + +The following example uses this module in conjunction with the Node.js core HTTP server +to prompt a user for their name and display it back on future visits. + +```js +var cookie = require('cookie'); +var escapeHtml = require('escape-html'); +var http = require('http'); +var url = require('url'); + +function onRequest(req, res) { + // Parse the query string + var query = url.parse(req.url, true, true).query; + + if (query && query.name) { + // Set a new cookie with the name + res.setHeader('Set-Cookie', cookie.serialize('name', String(query.name), { + httpOnly: true, + maxAge: 60 * 60 * 24 * 7 // 1 week + })); + + // Redirect back after setting cookie + res.statusCode = 302; + res.setHeader('Location', req.headers.referer || '/'); + res.end(); + return; + } + + // Parse the cookies on the request + var cookies = cookie.parse(req.headers.cookie || ''); + + // Get the visitor name set in the cookie + var name = cookies.name; + + res.setHeader('Content-Type', 'text/html; charset=UTF-8'); + + if (name) { + res.write('

Welcome back, ' + escapeHtml(name) + '!

'); + } else { + res.write('

Hello, new visitor!

'); + } + + res.write('
'); + res.write(' '); + res.end(' values + * + * @param {string} str + * @param {object} [options] + * @return {object} + * @public + */ + +function parse(str, options) { + if (typeof str !== 'string') { + throw new TypeError('argument str must be a string'); + } + + var obj = {} + var opt = options || {}; + var pairs = str.split(pairSplitRegExp); + var dec = opt.decode || decode; + + for (var i = 0; i < pairs.length; i++) { + var pair = pairs[i]; + var eq_idx = pair.indexOf('='); + + // skip things that don't look like key=value + if (eq_idx < 0) { + continue; + } + + var key = pair.substr(0, eq_idx).trim() + var val = pair.substr(++eq_idx, pair.length).trim(); + + // quoted values + if ('"' == val[0]) { + val = val.slice(1, -1); + } + + // only assign once + if (undefined == obj[key]) { + obj[key] = tryDecode(val, dec); + } + } + + return obj; +} + +/** + * Serialize data into a cookie header. + * + * Serialize the a name value pair into a cookie string suitable for + * http headers. An optional options object specified cookie parameters. + * + * serialize('foo', 'bar', { httpOnly: true }) + * => "foo=bar; httpOnly" + * + * @param {string} name + * @param {string} val + * @param {object} [options] + * @return {string} + * @public + */ + +function serialize(name, val, options) { + var opt = options || {}; + var enc = opt.encode || encode; + + if (typeof enc !== 'function') { + throw new TypeError('option encode is invalid'); + } + + if (!fieldContentRegExp.test(name)) { + throw new TypeError('argument name is invalid'); + } + + var value = enc(val); + + if (value && !fieldContentRegExp.test(value)) { + throw new TypeError('argument val is invalid'); + } + + var str = name + '=' + value; + + if (null != opt.maxAge) { + var maxAge = opt.maxAge - 0; + if (isNaN(maxAge)) throw new Error('maxAge should be a Number'); + str += '; Max-Age=' + Math.floor(maxAge); + } + + if (opt.domain) { + if (!fieldContentRegExp.test(opt.domain)) { + throw new TypeError('option domain is invalid'); + } + + str += '; Domain=' + opt.domain; + } + + if (opt.path) { + if (!fieldContentRegExp.test(opt.path)) { + throw new TypeError('option path is invalid'); + } + + str += '; Path=' + opt.path; + } + + if (opt.expires) { + if (typeof opt.expires.toUTCString !== 'function') { + throw new TypeError('option expires is invalid'); + } + + str += '; Expires=' + opt.expires.toUTCString(); + } + + if (opt.httpOnly) { + str += '; HttpOnly'; + } + + if (opt.secure) { + str += '; Secure'; + } + + if (opt.sameSite) { + var sameSite = typeof opt.sameSite === 'string' + ? opt.sameSite.toLowerCase() : opt.sameSite; + + switch (sameSite) { + case true: + str += '; SameSite=Strict'; + break; + case 'lax': + str += '; SameSite=Lax'; + break; + case 'strict': + str += '; SameSite=Strict'; + break; + default: + throw new TypeError('option sameSite is invalid'); + } + } + + return str; +} + +/** + * Try decoding a string using a decoding function. + * + * @param {string} str + * @param {function} decode + * @private + */ + +function tryDecode(str, decode) { + try { + return decode(str); + } catch (e) { + return str; + } +} diff --git a/NodjsPartieArduino/node_modules/cookie/package.json b/NodjsPartieArduino/node_modules/cookie/package.json new file mode 100644 index 0000000..8956d31 --- /dev/null +++ b/NodjsPartieArduino/node_modules/cookie/package.json @@ -0,0 +1,107 @@ +{ + "_args": [ + [ + { + "raw": "cookie@0.3.1", + "scope": null, + "escapedName": "cookie", + "name": "cookie", + "rawSpec": "0.3.1", + "spec": "0.3.1", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "cookie@0.3.1", + "_id": "cookie@0.3.1", + "_inCache": true, + "_location": "/cookie", + "_npmOperationalInternal": { + "host": "packages-12-west.internal.npmjs.com", + "tmp": "tmp/cookie-0.3.1.tgz_1464323556714_0.6435900838114321" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "1.4.28", + "_phantomChildren": {}, + "_requested": { + "raw": "cookie@0.3.1", + "scope": null, + "escapedName": "cookie", + "name": "cookie", + "rawSpec": "0.3.1", + "spec": "0.3.1", + "type": "version" + }, + "_requiredBy": [ + "/engine.io", + "/express" + ], + "_resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "_shasum": "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb", + "_shrinkwrap": null, + "_spec": "cookie@0.3.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "author": { + "name": "Roman Shtylman", + "email": "shtylman@gmail.com" + }, + "bugs": { + "url": "https://github.com/jshttp/cookie/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + } + ], + "dependencies": {}, + "description": "HTTP server cookie parsing and serialization", + "devDependencies": { + "istanbul": "0.4.3", + "mocha": "1.21.5" + }, + "directories": {}, + "dist": { + "shasum": "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb", + "tarball": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz" + }, + "engines": { + "node": ">= 0.6" + }, + "files": [ + "HISTORY.md", + "LICENSE", + "README.md", + "index.js" + ], + "gitHead": "e3c77d497d66c8b8d4b677b8954c1b192a09f0b3", + "homepage": "https://github.com/jshttp/cookie", + "keywords": [ + "cookie", + "cookies" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "cookie", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jshttp/cookie.git" + }, + "scripts": { + "test": "mocha --reporter spec --bail --check-leaks test/", + "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/" + }, + "version": "0.3.1" +} diff --git a/NodjsPartieArduino/node_modules/copy-descriptor/LICENSE b/NodjsPartieArduino/node_modules/copy-descriptor/LICENSE new file mode 100644 index 0000000..6525171 --- /dev/null +++ b/NodjsPartieArduino/node_modules/copy-descriptor/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-2016, Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/copy-descriptor/index.js b/NodjsPartieArduino/node_modules/copy-descriptor/index.js new file mode 100644 index 0000000..6da21b1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/copy-descriptor/index.js @@ -0,0 +1,81 @@ +/*! + * copy-descriptor + * + * Copyright (c) 2015, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +/** + * Copy a descriptor from one object to another. + * + * ```js + * function App() { + * this.cache = {}; + * } + * App.prototype.set = function(key, val) { + * this.cache[key] = val; + * return this; + * }; + * Object.defineProperty(App.prototype, 'count', { + * get: function() { + * return Object.keys(this.cache).length; + * } + * }); + * + * copy(App.prototype, 'count', 'len'); + * + * // create an instance + * var app = new App(); + * + * app.set('a', true); + * app.set('b', true); + * app.set('c', true); + * + * console.log(app.count); + * //=> 3 + * console.log(app.len); + * //=> 3 + * ``` + * @name copy + * @param {Object} `receiver` The target object + * @param {Object} `provider` The provider object + * @param {String} `from` The key to copy on provider. + * @param {String} `to` Optionally specify a new key name to use. + * @return {Object} + * @api public + */ + +module.exports = function copyDescriptor(receiver, provider, from, to) { + if (!isObject(provider) && typeof provider !== 'function') { + to = from; + from = provider; + provider = receiver; + } + if (!isObject(receiver) && typeof receiver !== 'function') { + throw new TypeError('expected the first argument to be an object'); + } + if (!isObject(provider) && typeof provider !== 'function') { + throw new TypeError('expected provider to be an object'); + } + + if (typeof to !== 'string') { + to = from; + } + if (typeof from !== 'string') { + throw new TypeError('expected key to be a string'); + } + + if (!(from in provider)) { + throw new Error('property "' + from + '" does not exist'); + } + + var val = Object.getOwnPropertyDescriptor(provider, from); + if (val) Object.defineProperty(receiver, to, val); +}; + +function isObject(val) { + return {}.toString.call(val) === '[object Object]'; +} + diff --git a/NodjsPartieArduino/node_modules/copy-descriptor/package.json b/NodjsPartieArduino/node_modules/copy-descriptor/package.json new file mode 100644 index 0000000..a3d4d4f --- /dev/null +++ b/NodjsPartieArduino/node_modules/copy-descriptor/package.json @@ -0,0 +1,123 @@ +{ + "_args": [ + [ + { + "raw": "copy-descriptor@^0.1.0", + "scope": null, + "escapedName": "copy-descriptor", + "name": "copy-descriptor", + "rawSpec": "^0.1.0", + "spec": ">=0.1.0 <0.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/object-copy" + ] + ], + "_from": "copy-descriptor@>=0.1.0 <0.2.0", + "_id": "copy-descriptor@0.1.1", + "_inCache": true, + "_location": "/copy-descriptor", + "_nodeVersion": "6.2.0", + "_npmOperationalInternal": { + "host": "packages-16-east.internal.npmjs.com", + "tmp": "tmp/copy-descriptor-0.1.1.tgz_1465497122701_0.666076025692746" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "3.8.9", + "_phantomChildren": {}, + "_requested": { + "raw": "copy-descriptor@^0.1.0", + "scope": null, + "escapedName": "copy-descriptor", + "name": "copy-descriptor", + "rawSpec": "^0.1.0", + "spec": ">=0.1.0 <0.2.0", + "type": "range" + }, + "_requiredBy": [ + "/object-copy" + ], + "_resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "_shasum": "676f6eb3c39997c2ee1ac3a924fd6124748f578d", + "_shrinkwrap": null, + "_spec": "copy-descriptor@^0.1.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/object-copy", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/copy-descriptor/issues" + }, + "dependencies": {}, + "description": "Copy a descriptor from object A to object B", + "devDependencies": { + "gulp-format-md": "^0.1.9", + "mocha": "^2.5.3" + }, + "directories": {}, + "dist": { + "shasum": "676f6eb3c39997c2ee1ac3a924fd6124748f578d", + "tarball": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "572c31416d4538b7ba5f52e2bb0765ac237f79e2", + "homepage": "https://github.com/jonschlinkert/copy-descriptor", + "keywords": [ + "copy", + "descriptor" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "copy-descriptor", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/copy-descriptor.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "related": { + "list": [ + "is-accessor-descriptor", + "is-data-descriptor", + "is-descriptor", + "is-plain-object", + "isobject" + ] + }, + "lint": { + "reflinks": true + }, + "reflinks": [ + "verb-readme-generator", + "verb" + ] + }, + "version": "0.1.1" +} diff --git a/NodjsPartieArduino/node_modules/core-util-is/LICENSE b/NodjsPartieArduino/node_modules/core-util-is/LICENSE new file mode 100644 index 0000000..d8d7f94 --- /dev/null +++ b/NodjsPartieArduino/node_modules/core-util-is/LICENSE @@ -0,0 +1,19 @@ +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/core-util-is/README.md b/NodjsPartieArduino/node_modules/core-util-is/README.md new file mode 100644 index 0000000..5a76b41 --- /dev/null +++ b/NodjsPartieArduino/node_modules/core-util-is/README.md @@ -0,0 +1,3 @@ +# core-util-is + +The `util.is*` functions introduced in Node v0.12. diff --git a/NodjsPartieArduino/node_modules/core-util-is/float.patch b/NodjsPartieArduino/node_modules/core-util-is/float.patch new file mode 100644 index 0000000..a06d5c0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/core-util-is/float.patch @@ -0,0 +1,604 @@ +diff --git a/lib/util.js b/lib/util.js +index a03e874..9074e8e 100644 +--- a/lib/util.js ++++ b/lib/util.js +@@ -19,430 +19,6 @@ + // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE + // USE OR OTHER DEALINGS IN THE SOFTWARE. + +-var formatRegExp = /%[sdj%]/g; +-exports.format = function(f) { +- if (!isString(f)) { +- var objects = []; +- for (var i = 0; i < arguments.length; i++) { +- objects.push(inspect(arguments[i])); +- } +- return objects.join(' '); +- } +- +- var i = 1; +- var args = arguments; +- var len = args.length; +- var str = String(f).replace(formatRegExp, function(x) { +- if (x === '%%') return '%'; +- if (i >= len) return x; +- switch (x) { +- case '%s': return String(args[i++]); +- case '%d': return Number(args[i++]); +- case '%j': +- try { +- return JSON.stringify(args[i++]); +- } catch (_) { +- return '[Circular]'; +- } +- default: +- return x; +- } +- }); +- for (var x = args[i]; i < len; x = args[++i]) { +- if (isNull(x) || !isObject(x)) { +- str += ' ' + x; +- } else { +- str += ' ' + inspect(x); +- } +- } +- return str; +-}; +- +- +-// Mark that a method should not be used. +-// Returns a modified function which warns once by default. +-// If --no-deprecation is set, then it is a no-op. +-exports.deprecate = function(fn, msg) { +- // Allow for deprecating things in the process of starting up. +- if (isUndefined(global.process)) { +- return function() { +- return exports.deprecate(fn, msg).apply(this, arguments); +- }; +- } +- +- if (process.noDeprecation === true) { +- return fn; +- } +- +- var warned = false; +- function deprecated() { +- if (!warned) { +- if (process.throwDeprecation) { +- throw new Error(msg); +- } else if (process.traceDeprecation) { +- console.trace(msg); +- } else { +- console.error(msg); +- } +- warned = true; +- } +- return fn.apply(this, arguments); +- } +- +- return deprecated; +-}; +- +- +-var debugs = {}; +-var debugEnviron; +-exports.debuglog = function(set) { +- if (isUndefined(debugEnviron)) +- debugEnviron = process.env.NODE_DEBUG || ''; +- set = set.toUpperCase(); +- if (!debugs[set]) { +- if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) { +- var pid = process.pid; +- debugs[set] = function() { +- var msg = exports.format.apply(exports, arguments); +- console.error('%s %d: %s', set, pid, msg); +- }; +- } else { +- debugs[set] = function() {}; +- } +- } +- return debugs[set]; +-}; +- +- +-/** +- * Echos the value of a value. Trys to print the value out +- * in the best way possible given the different types. +- * +- * @param {Object} obj The object to print out. +- * @param {Object} opts Optional options object that alters the output. +- */ +-/* legacy: obj, showHidden, depth, colors*/ +-function inspect(obj, opts) { +- // default options +- var ctx = { +- seen: [], +- stylize: stylizeNoColor +- }; +- // legacy... +- if (arguments.length >= 3) ctx.depth = arguments[2]; +- if (arguments.length >= 4) ctx.colors = arguments[3]; +- if (isBoolean(opts)) { +- // legacy... +- ctx.showHidden = opts; +- } else if (opts) { +- // got an "options" object +- exports._extend(ctx, opts); +- } +- // set default options +- if (isUndefined(ctx.showHidden)) ctx.showHidden = false; +- if (isUndefined(ctx.depth)) ctx.depth = 2; +- if (isUndefined(ctx.colors)) ctx.colors = false; +- if (isUndefined(ctx.customInspect)) ctx.customInspect = true; +- if (ctx.colors) ctx.stylize = stylizeWithColor; +- return formatValue(ctx, obj, ctx.depth); +-} +-exports.inspect = inspect; +- +- +-// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics +-inspect.colors = { +- 'bold' : [1, 22], +- 'italic' : [3, 23], +- 'underline' : [4, 24], +- 'inverse' : [7, 27], +- 'white' : [37, 39], +- 'grey' : [90, 39], +- 'black' : [30, 39], +- 'blue' : [34, 39], +- 'cyan' : [36, 39], +- 'green' : [32, 39], +- 'magenta' : [35, 39], +- 'red' : [31, 39], +- 'yellow' : [33, 39] +-}; +- +-// Don't use 'blue' not visible on cmd.exe +-inspect.styles = { +- 'special': 'cyan', +- 'number': 'yellow', +- 'boolean': 'yellow', +- 'undefined': 'grey', +- 'null': 'bold', +- 'string': 'green', +- 'date': 'magenta', +- // "name": intentionally not styling +- 'regexp': 'red' +-}; +- +- +-function stylizeWithColor(str, styleType) { +- var style = inspect.styles[styleType]; +- +- if (style) { +- return '\u001b[' + inspect.colors[style][0] + 'm' + str + +- '\u001b[' + inspect.colors[style][1] + 'm'; +- } else { +- return str; +- } +-} +- +- +-function stylizeNoColor(str, styleType) { +- return str; +-} +- +- +-function arrayToHash(array) { +- var hash = {}; +- +- array.forEach(function(val, idx) { +- hash[val] = true; +- }); +- +- return hash; +-} +- +- +-function formatValue(ctx, value, recurseTimes) { +- // Provide a hook for user-specified inspect functions. +- // Check that value is an object with an inspect function on it +- if (ctx.customInspect && +- value && +- isFunction(value.inspect) && +- // Filter out the util module, it's inspect function is special +- value.inspect !== exports.inspect && +- // Also filter out any prototype objects using the circular check. +- !(value.constructor && value.constructor.prototype === value)) { +- var ret = value.inspect(recurseTimes, ctx); +- if (!isString(ret)) { +- ret = formatValue(ctx, ret, recurseTimes); +- } +- return ret; +- } +- +- // Primitive types cannot have properties +- var primitive = formatPrimitive(ctx, value); +- if (primitive) { +- return primitive; +- } +- +- // Look up the keys of the object. +- var keys = Object.keys(value); +- var visibleKeys = arrayToHash(keys); +- +- if (ctx.showHidden) { +- keys = Object.getOwnPropertyNames(value); +- } +- +- // Some type of object without properties can be shortcutted. +- if (keys.length === 0) { +- if (isFunction(value)) { +- var name = value.name ? ': ' + value.name : ''; +- return ctx.stylize('[Function' + name + ']', 'special'); +- } +- if (isRegExp(value)) { +- return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); +- } +- if (isDate(value)) { +- return ctx.stylize(Date.prototype.toString.call(value), 'date'); +- } +- if (isError(value)) { +- return formatError(value); +- } +- } +- +- var base = '', array = false, braces = ['{', '}']; +- +- // Make Array say that they are Array +- if (isArray(value)) { +- array = true; +- braces = ['[', ']']; +- } +- +- // Make functions say that they are functions +- if (isFunction(value)) { +- var n = value.name ? ': ' + value.name : ''; +- base = ' [Function' + n + ']'; +- } +- +- // Make RegExps say that they are RegExps +- if (isRegExp(value)) { +- base = ' ' + RegExp.prototype.toString.call(value); +- } +- +- // Make dates with properties first say the date +- if (isDate(value)) { +- base = ' ' + Date.prototype.toUTCString.call(value); +- } +- +- // Make error with message first say the error +- if (isError(value)) { +- base = ' ' + formatError(value); +- } +- +- if (keys.length === 0 && (!array || value.length == 0)) { +- return braces[0] + base + braces[1]; +- } +- +- if (recurseTimes < 0) { +- if (isRegExp(value)) { +- return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); +- } else { +- return ctx.stylize('[Object]', 'special'); +- } +- } +- +- ctx.seen.push(value); +- +- var output; +- if (array) { +- output = formatArray(ctx, value, recurseTimes, visibleKeys, keys); +- } else { +- output = keys.map(function(key) { +- return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array); +- }); +- } +- +- ctx.seen.pop(); +- +- return reduceToSingleString(output, base, braces); +-} +- +- +-function formatPrimitive(ctx, value) { +- if (isUndefined(value)) +- return ctx.stylize('undefined', 'undefined'); +- if (isString(value)) { +- var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '') +- .replace(/'/g, "\\'") +- .replace(/\\"/g, '"') + '\''; +- return ctx.stylize(simple, 'string'); +- } +- if (isNumber(value)) { +- // Format -0 as '-0'. Strict equality won't distinguish 0 from -0, +- // so instead we use the fact that 1 / -0 < 0 whereas 1 / 0 > 0 . +- if (value === 0 && 1 / value < 0) +- return ctx.stylize('-0', 'number'); +- return ctx.stylize('' + value, 'number'); +- } +- if (isBoolean(value)) +- return ctx.stylize('' + value, 'boolean'); +- // For some reason typeof null is "object", so special case here. +- if (isNull(value)) +- return ctx.stylize('null', 'null'); +-} +- +- +-function formatError(value) { +- return '[' + Error.prototype.toString.call(value) + ']'; +-} +- +- +-function formatArray(ctx, value, recurseTimes, visibleKeys, keys) { +- var output = []; +- for (var i = 0, l = value.length; i < l; ++i) { +- if (hasOwnProperty(value, String(i))) { +- output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, +- String(i), true)); +- } else { +- output.push(''); +- } +- } +- keys.forEach(function(key) { +- if (!key.match(/^\d+$/)) { +- output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, +- key, true)); +- } +- }); +- return output; +-} +- +- +-function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) { +- var name, str, desc; +- desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] }; +- if (desc.get) { +- if (desc.set) { +- str = ctx.stylize('[Getter/Setter]', 'special'); +- } else { +- str = ctx.stylize('[Getter]', 'special'); +- } +- } else { +- if (desc.set) { +- str = ctx.stylize('[Setter]', 'special'); +- } +- } +- if (!hasOwnProperty(visibleKeys, key)) { +- name = '[' + key + ']'; +- } +- if (!str) { +- if (ctx.seen.indexOf(desc.value) < 0) { +- if (isNull(recurseTimes)) { +- str = formatValue(ctx, desc.value, null); +- } else { +- str = formatValue(ctx, desc.value, recurseTimes - 1); +- } +- if (str.indexOf('\n') > -1) { +- if (array) { +- str = str.split('\n').map(function(line) { +- return ' ' + line; +- }).join('\n').substr(2); +- } else { +- str = '\n' + str.split('\n').map(function(line) { +- return ' ' + line; +- }).join('\n'); +- } +- } +- } else { +- str = ctx.stylize('[Circular]', 'special'); +- } +- } +- if (isUndefined(name)) { +- if (array && key.match(/^\d+$/)) { +- return str; +- } +- name = JSON.stringify('' + key); +- if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) { +- name = name.substr(1, name.length - 2); +- name = ctx.stylize(name, 'name'); +- } else { +- name = name.replace(/'/g, "\\'") +- .replace(/\\"/g, '"') +- .replace(/(^"|"$)/g, "'"); +- name = ctx.stylize(name, 'string'); +- } +- } +- +- return name + ': ' + str; +-} +- +- +-function reduceToSingleString(output, base, braces) { +- var numLinesEst = 0; +- var length = output.reduce(function(prev, cur) { +- numLinesEst++; +- if (cur.indexOf('\n') >= 0) numLinesEst++; +- return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1; +- }, 0); +- +- if (length > 60) { +- return braces[0] + +- (base === '' ? '' : base + '\n ') + +- ' ' + +- output.join(',\n ') + +- ' ' + +- braces[1]; +- } +- +- return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1]; +-} +- +- + // NOTE: These type checking functions intentionally don't use `instanceof` + // because it is fragile and can be easily faked with `Object.create()`. + function isArray(ar) { +@@ -522,166 +98,10 @@ function isPrimitive(arg) { + exports.isPrimitive = isPrimitive; + + function isBuffer(arg) { +- return arg instanceof Buffer; ++ return Buffer.isBuffer(arg); + } + exports.isBuffer = isBuffer; + + function objectToString(o) { + return Object.prototype.toString.call(o); +-} +- +- +-function pad(n) { +- return n < 10 ? '0' + n.toString(10) : n.toString(10); +-} +- +- +-var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', +- 'Oct', 'Nov', 'Dec']; +- +-// 26 Feb 16:19:34 +-function timestamp() { +- var d = new Date(); +- var time = [pad(d.getHours()), +- pad(d.getMinutes()), +- pad(d.getSeconds())].join(':'); +- return [d.getDate(), months[d.getMonth()], time].join(' '); +-} +- +- +-// log is just a thin wrapper to console.log that prepends a timestamp +-exports.log = function() { +- console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments)); +-}; +- +- +-/** +- * Inherit the prototype methods from one constructor into another. +- * +- * The Function.prototype.inherits from lang.js rewritten as a standalone +- * function (not on Function.prototype). NOTE: If this file is to be loaded +- * during bootstrapping this function needs to be rewritten using some native +- * functions as prototype setup using normal JavaScript does not work as +- * expected during bootstrapping (see mirror.js in r114903). +- * +- * @param {function} ctor Constructor function which needs to inherit the +- * prototype. +- * @param {function} superCtor Constructor function to inherit prototype from. +- */ +-exports.inherits = function(ctor, superCtor) { +- ctor.super_ = superCtor; +- ctor.prototype = Object.create(superCtor.prototype, { +- constructor: { +- value: ctor, +- enumerable: false, +- writable: true, +- configurable: true +- } +- }); +-}; +- +-exports._extend = function(origin, add) { +- // Don't do anything if add isn't an object +- if (!add || !isObject(add)) return origin; +- +- var keys = Object.keys(add); +- var i = keys.length; +- while (i--) { +- origin[keys[i]] = add[keys[i]]; +- } +- return origin; +-}; +- +-function hasOwnProperty(obj, prop) { +- return Object.prototype.hasOwnProperty.call(obj, prop); +-} +- +- +-// Deprecated old stuff. +- +-exports.p = exports.deprecate(function() { +- for (var i = 0, len = arguments.length; i < len; ++i) { +- console.error(exports.inspect(arguments[i])); +- } +-}, 'util.p: Use console.error() instead'); +- +- +-exports.exec = exports.deprecate(function() { +- return require('child_process').exec.apply(this, arguments); +-}, 'util.exec is now called `child_process.exec`.'); +- +- +-exports.print = exports.deprecate(function() { +- for (var i = 0, len = arguments.length; i < len; ++i) { +- process.stdout.write(String(arguments[i])); +- } +-}, 'util.print: Use console.log instead'); +- +- +-exports.puts = exports.deprecate(function() { +- for (var i = 0, len = arguments.length; i < len; ++i) { +- process.stdout.write(arguments[i] + '\n'); +- } +-}, 'util.puts: Use console.log instead'); +- +- +-exports.debug = exports.deprecate(function(x) { +- process.stderr.write('DEBUG: ' + x + '\n'); +-}, 'util.debug: Use console.error instead'); +- +- +-exports.error = exports.deprecate(function(x) { +- for (var i = 0, len = arguments.length; i < len; ++i) { +- process.stderr.write(arguments[i] + '\n'); +- } +-}, 'util.error: Use console.error instead'); +- +- +-exports.pump = exports.deprecate(function(readStream, writeStream, callback) { +- var callbackCalled = false; +- +- function call(a, b, c) { +- if (callback && !callbackCalled) { +- callback(a, b, c); +- callbackCalled = true; +- } +- } +- +- readStream.addListener('data', function(chunk) { +- if (writeStream.write(chunk) === false) readStream.pause(); +- }); +- +- writeStream.addListener('drain', function() { +- readStream.resume(); +- }); +- +- readStream.addListener('end', function() { +- writeStream.end(); +- }); +- +- readStream.addListener('close', function() { +- call(); +- }); +- +- readStream.addListener('error', function(err) { +- writeStream.end(); +- call(err); +- }); +- +- writeStream.addListener('error', function(err) { +- readStream.destroy(); +- call(err); +- }); +-}, 'util.pump(): Use readableStream.pipe() instead'); +- +- +-var uv; +-exports._errnoException = function(err, syscall) { +- if (isUndefined(uv)) uv = process.binding('uv'); +- var errname = uv.errname(err); +- var e = new Error(syscall + ' ' + errname); +- e.code = errname; +- e.errno = errname; +- e.syscall = syscall; +- return e; +-}; ++} \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/core-util-is/lib/util.js b/NodjsPartieArduino/node_modules/core-util-is/lib/util.js new file mode 100644 index 0000000..ff4c851 --- /dev/null +++ b/NodjsPartieArduino/node_modules/core-util-is/lib/util.js @@ -0,0 +1,107 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +// NOTE: These type checking functions intentionally don't use `instanceof` +// because it is fragile and can be easily faked with `Object.create()`. + +function isArray(arg) { + if (Array.isArray) { + return Array.isArray(arg); + } + return objectToString(arg) === '[object Array]'; +} +exports.isArray = isArray; + +function isBoolean(arg) { + return typeof arg === 'boolean'; +} +exports.isBoolean = isBoolean; + +function isNull(arg) { + return arg === null; +} +exports.isNull = isNull; + +function isNullOrUndefined(arg) { + return arg == null; +} +exports.isNullOrUndefined = isNullOrUndefined; + +function isNumber(arg) { + return typeof arg === 'number'; +} +exports.isNumber = isNumber; + +function isString(arg) { + return typeof arg === 'string'; +} +exports.isString = isString; + +function isSymbol(arg) { + return typeof arg === 'symbol'; +} +exports.isSymbol = isSymbol; + +function isUndefined(arg) { + return arg === void 0; +} +exports.isUndefined = isUndefined; + +function isRegExp(re) { + return objectToString(re) === '[object RegExp]'; +} +exports.isRegExp = isRegExp; + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} +exports.isObject = isObject; + +function isDate(d) { + return objectToString(d) === '[object Date]'; +} +exports.isDate = isDate; + +function isError(e) { + return (objectToString(e) === '[object Error]' || e instanceof Error); +} +exports.isError = isError; + +function isFunction(arg) { + return typeof arg === 'function'; +} +exports.isFunction = isFunction; + +function isPrimitive(arg) { + return arg === null || + typeof arg === 'boolean' || + typeof arg === 'number' || + typeof arg === 'string' || + typeof arg === 'symbol' || // ES6 symbol + typeof arg === 'undefined'; +} +exports.isPrimitive = isPrimitive; + +exports.isBuffer = Buffer.isBuffer; + +function objectToString(o) { + return Object.prototype.toString.call(o); +} diff --git a/NodjsPartieArduino/node_modules/core-util-is/package.json b/NodjsPartieArduino/node_modules/core-util-is/package.json new file mode 100644 index 0000000..f32aa05 --- /dev/null +++ b/NodjsPartieArduino/node_modules/core-util-is/package.json @@ -0,0 +1,94 @@ +{ + "_args": [ + [ + { + "raw": "core-util-is@~1.0.0", + "scope": null, + "escapedName": "core-util-is", + "name": "core-util-is", + "rawSpec": "~1.0.0", + "spec": ">=1.0.0 <1.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/readable-stream" + ] + ], + "_from": "core-util-is@>=1.0.0 <1.1.0", + "_id": "core-util-is@1.0.2", + "_inCache": true, + "_location": "/core-util-is", + "_nodeVersion": "4.0.0", + "_npmUser": { + "name": "isaacs", + "email": "i@izs.me" + }, + "_npmVersion": "3.3.2", + "_phantomChildren": {}, + "_requested": { + "raw": "core-util-is@~1.0.0", + "scope": null, + "escapedName": "core-util-is", + "name": "core-util-is", + "rawSpec": "~1.0.0", + "spec": ">=1.0.0 <1.1.0", + "type": "range" + }, + "_requiredBy": [ + "/readable-stream" + ], + "_resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "_shasum": "b5fd54220aa2bc5ab57aab7140c940754503c1a7", + "_shrinkwrap": null, + "_spec": "core-util-is@~1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/readable-stream", + "author": { + "name": "Isaac Z. Schlueter", + "email": "i@izs.me", + "url": "http://blog.izs.me/" + }, + "bugs": { + "url": "https://github.com/isaacs/core-util-is/issues" + }, + "dependencies": {}, + "description": "The `util.is*` functions introduced in Node v0.12.", + "devDependencies": { + "tap": "^2.3.0" + }, + "directories": {}, + "dist": { + "shasum": "b5fd54220aa2bc5ab57aab7140c940754503c1a7", + "tarball": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" + }, + "gitHead": "a177da234df5638b363ddc15fa324619a38577c8", + "homepage": "https://github.com/isaacs/core-util-is#readme", + "keywords": [ + "util", + "isBuffer", + "isArray", + "isNumber", + "isString", + "isRegExp", + "isThis", + "isThat", + "polyfill" + ], + "license": "MIT", + "main": "lib/util.js", + "maintainers": [ + { + "name": "isaacs", + "email": "i@izs.me" + } + ], + "name": "core-util-is", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/core-util-is.git" + }, + "scripts": { + "test": "tap test.js" + }, + "version": "1.0.2" +} diff --git a/NodjsPartieArduino/node_modules/core-util-is/test.js b/NodjsPartieArduino/node_modules/core-util-is/test.js new file mode 100644 index 0000000..1a490c6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/core-util-is/test.js @@ -0,0 +1,68 @@ +var assert = require('tap'); + +var t = require('./lib/util'); + +assert.equal(t.isArray([]), true); +assert.equal(t.isArray({}), false); + +assert.equal(t.isBoolean(null), false); +assert.equal(t.isBoolean(true), true); +assert.equal(t.isBoolean(false), true); + +assert.equal(t.isNull(null), true); +assert.equal(t.isNull(undefined), false); +assert.equal(t.isNull(false), false); +assert.equal(t.isNull(), false); + +assert.equal(t.isNullOrUndefined(null), true); +assert.equal(t.isNullOrUndefined(undefined), true); +assert.equal(t.isNullOrUndefined(false), false); +assert.equal(t.isNullOrUndefined(), true); + +assert.equal(t.isNumber(null), false); +assert.equal(t.isNumber('1'), false); +assert.equal(t.isNumber(1), true); + +assert.equal(t.isString(null), false); +assert.equal(t.isString('1'), true); +assert.equal(t.isString(1), false); + +assert.equal(t.isSymbol(null), false); +assert.equal(t.isSymbol('1'), false); +assert.equal(t.isSymbol(1), false); +assert.equal(t.isSymbol(Symbol()), true); + +assert.equal(t.isUndefined(null), false); +assert.equal(t.isUndefined(undefined), true); +assert.equal(t.isUndefined(false), false); +assert.equal(t.isUndefined(), true); + +assert.equal(t.isRegExp(null), false); +assert.equal(t.isRegExp('1'), false); +assert.equal(t.isRegExp(new RegExp()), true); + +assert.equal(t.isObject({}), true); +assert.equal(t.isObject([]), true); +assert.equal(t.isObject(new RegExp()), true); +assert.equal(t.isObject(new Date()), true); + +assert.equal(t.isDate(null), false); +assert.equal(t.isDate('1'), false); +assert.equal(t.isDate(new Date()), true); + +assert.equal(t.isError(null), false); +assert.equal(t.isError({ err: true }), false); +assert.equal(t.isError(new Error()), true); + +assert.equal(t.isFunction(null), false); +assert.equal(t.isFunction({ }), false); +assert.equal(t.isFunction(function() {}), true); + +assert.equal(t.isPrimitive(null), true); +assert.equal(t.isPrimitive(''), true); +assert.equal(t.isPrimitive(0), true); +assert.equal(t.isPrimitive(new Date()), false); + +assert.equal(t.isBuffer(null), false); +assert.equal(t.isBuffer({}), false); +assert.equal(t.isBuffer(new Buffer(0)), true); diff --git a/NodjsPartieArduino/node_modules/debug/CHANGELOG.md b/NodjsPartieArduino/node_modules/debug/CHANGELOG.md new file mode 100644 index 0000000..eadaa18 --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/CHANGELOG.md @@ -0,0 +1,362 @@ + +2.6.9 / 2017-09-22 +================== + + * remove ReDoS regexp in %o formatter (#504) + +2.6.8 / 2017-05-18 +================== + + * Fix: Check for undefined on browser globals (#462, @marbemac) + +2.6.7 / 2017-05-16 +================== + + * Fix: Update ms to 2.0.0 to fix regular expression denial of service vulnerability (#458, @hubdotcom) + * Fix: Inline extend function in node implementation (#452, @dougwilson) + * Docs: Fix typo (#455, @msasad) + +2.6.5 / 2017-04-27 +================== + + * Fix: null reference check on window.documentElement.style.WebkitAppearance (#447, @thebigredgeek) + * Misc: clean up browser reference checks (#447, @thebigredgeek) + * Misc: add npm-debug.log to .gitignore (@thebigredgeek) + + +2.6.4 / 2017-04-20 +================== + + * Fix: bug that would occure if process.env.DEBUG is a non-string value. (#444, @LucianBuzzo) + * Chore: ignore bower.json in npm installations. (#437, @joaovieira) + * Misc: update "ms" to v0.7.3 (@tootallnate) + +2.6.3 / 2017-03-13 +================== + + * Fix: Electron reference to `process.env.DEBUG` (#431, @paulcbetts) + * Docs: Changelog fix (@thebigredgeek) + +2.6.2 / 2017-03-10 +================== + + * Fix: DEBUG_MAX_ARRAY_LENGTH (#420, @slavaGanzin) + * Docs: Add backers and sponsors from Open Collective (#422, @piamancini) + * Docs: Add Slackin invite badge (@tootallnate) + +2.6.1 / 2017-02-10 +================== + + * Fix: Module's `export default` syntax fix for IE8 `Expected identifier` error + * Fix: Whitelist DEBUG_FD for values 1 and 2 only (#415, @pi0) + * Fix: IE8 "Expected identifier" error (#414, @vgoma) + * Fix: Namespaces would not disable once enabled (#409, @musikov) + +2.6.0 / 2016-12-28 +================== + + * Fix: added better null pointer checks for browser useColors (@thebigredgeek) + * Improvement: removed explicit `window.debug` export (#404, @tootallnate) + * Improvement: deprecated `DEBUG_FD` environment variable (#405, @tootallnate) + +2.5.2 / 2016-12-25 +================== + + * Fix: reference error on window within webworkers (#393, @KlausTrainer) + * Docs: fixed README typo (#391, @lurch) + * Docs: added notice about v3 api discussion (@thebigredgeek) + +2.5.1 / 2016-12-20 +================== + + * Fix: babel-core compatibility + +2.5.0 / 2016-12-20 +================== + + * Fix: wrong reference in bower file (@thebigredgeek) + * Fix: webworker compatibility (@thebigredgeek) + * Fix: output formatting issue (#388, @kribblo) + * Fix: babel-loader compatibility (#383, @escwald) + * Misc: removed built asset from repo and publications (@thebigredgeek) + * Misc: moved source files to /src (#378, @yamikuronue) + * Test: added karma integration and replaced babel with browserify for browser tests (#378, @yamikuronue) + * Test: coveralls integration (#378, @yamikuronue) + * Docs: simplified language in the opening paragraph (#373, @yamikuronue) + +2.4.5 / 2016-12-17 +================== + + * Fix: `navigator` undefined in Rhino (#376, @jochenberger) + * Fix: custom log function (#379, @hsiliev) + * Improvement: bit of cleanup + linting fixes (@thebigredgeek) + * Improvement: rm non-maintainted `dist/` dir (#375, @freewil) + * Docs: simplified language in the opening paragraph. (#373, @yamikuronue) + +2.4.4 / 2016-12-14 +================== + + * Fix: work around debug being loaded in preload scripts for electron (#368, @paulcbetts) + +2.4.3 / 2016-12-14 +================== + + * Fix: navigation.userAgent error for react native (#364, @escwald) + +2.4.2 / 2016-12-14 +================== + + * Fix: browser colors (#367, @tootallnate) + * Misc: travis ci integration (@thebigredgeek) + * Misc: added linting and testing boilerplate with sanity check (@thebigredgeek) + +2.4.1 / 2016-12-13 +================== + + * Fix: typo that broke the package (#356) + +2.4.0 / 2016-12-13 +================== + + * Fix: bower.json references unbuilt src entry point (#342, @justmatt) + * Fix: revert "handle regex special characters" (@tootallnate) + * Feature: configurable util.inspect()`options for NodeJS (#327, @tootallnate) + * Feature: %O`(big O) pretty-prints objects (#322, @tootallnate) + * Improvement: allow colors in workers (#335, @botverse) + * Improvement: use same color for same namespace. (#338, @lchenay) + +2.3.3 / 2016-11-09 +================== + + * Fix: Catch `JSON.stringify()` errors (#195, Jovan Alleyne) + * Fix: Returning `localStorage` saved values (#331, Levi Thomason) + * Improvement: Don't create an empty object when no `process` (Nathan Rajlich) + +2.3.2 / 2016-11-09 +================== + + * Fix: be super-safe in index.js as well (@TooTallNate) + * Fix: should check whether process exists (Tom Newby) + +2.3.1 / 2016-11-09 +================== + + * Fix: Added electron compatibility (#324, @paulcbetts) + * Improvement: Added performance optimizations (@tootallnate) + * Readme: Corrected PowerShell environment variable example (#252, @gimre) + * Misc: Removed yarn lock file from source control (#321, @fengmk2) + +2.3.0 / 2016-11-07 +================== + + * Fix: Consistent placement of ms diff at end of output (#215, @gorangajic) + * Fix: Escaping of regex special characters in namespace strings (#250, @zacronos) + * Fix: Fixed bug causing crash on react-native (#282, @vkarpov15) + * Feature: Enabled ES6+ compatible import via default export (#212 @bucaran) + * Feature: Added %O formatter to reflect Chrome's console.log capability (#279, @oncletom) + * Package: Update "ms" to 0.7.2 (#315, @DevSide) + * Package: removed superfluous version property from bower.json (#207 @kkirsche) + * Readme: fix USE_COLORS to DEBUG_COLORS + * Readme: Doc fixes for format string sugar (#269, @mlucool) + * Readme: Updated docs for DEBUG_FD and DEBUG_COLORS environment variables (#232, @mattlyons0) + * Readme: doc fixes for PowerShell (#271 #243, @exoticknight @unreadable) + * Readme: better docs for browser support (#224, @matthewmueller) + * Tooling: Added yarn integration for development (#317, @thebigredgeek) + * Misc: Renamed History.md to CHANGELOG.md (@thebigredgeek) + * Misc: Added license file (#226 #274, @CantemoInternal @sdaitzman) + * Misc: Updated contributors (@thebigredgeek) + +2.2.0 / 2015-05-09 +================== + + * package: update "ms" to v0.7.1 (#202, @dougwilson) + * README: add logging to file example (#193, @DanielOchoa) + * README: fixed a typo (#191, @amir-s) + * browser: expose `storage` (#190, @stephenmathieson) + * Makefile: add a `distclean` target (#189, @stephenmathieson) + +2.1.3 / 2015-03-13 +================== + + * Updated stdout/stderr example (#186) + * Updated example/stdout.js to match debug current behaviour + * Renamed example/stderr.js to stdout.js + * Update Readme.md (#184) + * replace high intensity foreground color for bold (#182, #183) + +2.1.2 / 2015-03-01 +================== + + * dist: recompile + * update "ms" to v0.7.0 + * package: update "browserify" to v9.0.3 + * component: fix "ms.js" repo location + * changed bower package name + * updated documentation about using debug in a browser + * fix: security error on safari (#167, #168, @yields) + +2.1.1 / 2014-12-29 +================== + + * browser: use `typeof` to check for `console` existence + * browser: check for `console.log` truthiness (fix IE 8/9) + * browser: add support for Chrome apps + * Readme: added Windows usage remarks + * Add `bower.json` to properly support bower install + +2.1.0 / 2014-10-15 +================== + + * node: implement `DEBUG_FD` env variable support + * package: update "browserify" to v6.1.0 + * package: add "license" field to package.json (#135, @panuhorsmalahti) + +2.0.0 / 2014-09-01 +================== + + * package: update "browserify" to v5.11.0 + * node: use stderr rather than stdout for logging (#29, @stephenmathieson) + +1.0.4 / 2014-07-15 +================== + + * dist: recompile + * example: remove `console.info()` log usage + * example: add "Content-Type" UTF-8 header to browser example + * browser: place %c marker after the space character + * browser: reset the "content" color via `color: inherit` + * browser: add colors support for Firefox >= v31 + * debug: prefer an instance `log()` function over the global one (#119) + * Readme: update documentation about styled console logs for FF v31 (#116, @wryk) + +1.0.3 / 2014-07-09 +================== + + * Add support for multiple wildcards in namespaces (#122, @seegno) + * browser: fix lint + +1.0.2 / 2014-06-10 +================== + + * browser: update color palette (#113, @gscottolson) + * common: make console logging function configurable (#108, @timoxley) + * node: fix %o colors on old node <= 0.8.x + * Makefile: find node path using shell/which (#109, @timoxley) + +1.0.1 / 2014-06-06 +================== + + * browser: use `removeItem()` to clear localStorage + * browser, node: don't set DEBUG if namespaces is undefined (#107, @leedm777) + * package: add "contributors" section + * node: fix comment typo + * README: list authors + +1.0.0 / 2014-06-04 +================== + + * make ms diff be global, not be scope + * debug: ignore empty strings in enable() + * node: make DEBUG_COLORS able to disable coloring + * *: export the `colors` array + * npmignore: don't publish the `dist` dir + * Makefile: refactor to use browserify + * package: add "browserify" as a dev dependency + * Readme: add Web Inspector Colors section + * node: reset terminal color for the debug content + * node: map "%o" to `util.inspect()` + * browser: map "%j" to `JSON.stringify()` + * debug: add custom "formatters" + * debug: use "ms" module for humanizing the diff + * Readme: add "bash" syntax highlighting + * browser: add Firebug color support + * browser: add colors for WebKit browsers + * node: apply log to `console` + * rewrite: abstract common logic for Node & browsers + * add .jshintrc file + +0.8.1 / 2014-04-14 +================== + + * package: re-add the "component" section + +0.8.0 / 2014-03-30 +================== + + * add `enable()` method for nodejs. Closes #27 + * change from stderr to stdout + * remove unnecessary index.js file + +0.7.4 / 2013-11-13 +================== + + * remove "browserify" key from package.json (fixes something in browserify) + +0.7.3 / 2013-10-30 +================== + + * fix: catch localStorage security error when cookies are blocked (Chrome) + * add debug(err) support. Closes #46 + * add .browser prop to package.json. Closes #42 + +0.7.2 / 2013-02-06 +================== + + * fix package.json + * fix: Mobile Safari (private mode) is broken with debug + * fix: Use unicode to send escape character to shell instead of octal to work with strict mode javascript + +0.7.1 / 2013-02-05 +================== + + * add repository URL to package.json + * add DEBUG_COLORED to force colored output + * add browserify support + * fix component. Closes #24 + +0.7.0 / 2012-05-04 +================== + + * Added .component to package.json + * Added debug.component.js build + +0.6.0 / 2012-03-16 +================== + + * Added support for "-" prefix in DEBUG [Vinay Pulim] + * Added `.enabled` flag to the node version [TooTallNate] + +0.5.0 / 2012-02-02 +================== + + * Added: humanize diffs. Closes #8 + * Added `debug.disable()` to the CS variant + * Removed padding. Closes #10 + * Fixed: persist client-side variant again. Closes #9 + +0.4.0 / 2012-02-01 +================== + + * Added browser variant support for older browsers [TooTallNate] + * Added `debug.enable('project:*')` to browser variant [TooTallNate] + * Added padding to diff (moved it to the right) + +0.3.0 / 2012-01-26 +================== + + * Added millisecond diff when isatty, otherwise UTC string + +0.2.0 / 2012-01-22 +================== + + * Added wildcard support + +0.1.0 / 2011-12-02 +================== + + * Added: remove colors unless stderr isatty [TooTallNate] + +0.0.1 / 2010-01-03 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/debug/LICENSE b/NodjsPartieArduino/node_modules/debug/LICENSE new file mode 100644 index 0000000..658c933 --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/LICENSE @@ -0,0 +1,19 @@ +(The MIT License) + +Copyright (c) 2014 TJ Holowaychuk + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software +and associated documentation files (the 'Software'), to deal in the Software without restriction, +including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + diff --git a/NodjsPartieArduino/node_modules/debug/Makefile b/NodjsPartieArduino/node_modules/debug/Makefile new file mode 100644 index 0000000..584da8b --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/Makefile @@ -0,0 +1,50 @@ +# get Makefile directory name: http://stackoverflow.com/a/5982798/376773 +THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) +THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd) + +# BIN directory +BIN := $(THIS_DIR)/node_modules/.bin + +# Path +PATH := node_modules/.bin:$(PATH) +SHELL := /bin/bash + +# applications +NODE ?= $(shell which node) +YARN ?= $(shell which yarn) +PKG ?= $(if $(YARN),$(YARN),$(NODE) $(shell which npm)) +BROWSERIFY ?= $(NODE) $(BIN)/browserify + +.FORCE: + +install: node_modules + +node_modules: package.json + @NODE_ENV= $(PKG) install + @touch node_modules + +lint: .FORCE + eslint browser.js debug.js index.js node.js + +test-node: .FORCE + istanbul cover node_modules/mocha/bin/_mocha -- test/**.js + +test-browser: .FORCE + mkdir -p dist + + @$(BROWSERIFY) \ + --standalone debug \ + . > dist/debug.js + + karma start --single-run + rimraf dist + +test: .FORCE + concurrently \ + "make test-node" \ + "make test-browser" + +coveralls: + cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js + +.PHONY: all install clean distclean diff --git a/NodjsPartieArduino/node_modules/debug/README.md b/NodjsPartieArduino/node_modules/debug/README.md new file mode 100644 index 0000000..f67be6b --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/README.md @@ -0,0 +1,312 @@ +# debug +[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug) [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master) [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers) +[![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors) + + + +A tiny node.js debugging utility modelled after node core's debugging technique. + +**Discussion around the V3 API is under way [here](https://github.com/visionmedia/debug/issues/370)** + +## Installation + +```bash +$ npm install debug +``` + +## Usage + +`debug` exposes a function; simply pass this function the name of your module, and it will return a decorated version of `console.error` for you to pass debug statements to. This will allow you to toggle the debug output for different parts of your module as well as the module as a whole. + +Example _app.js_: + +```js +var debug = require('debug')('http') + , http = require('http') + , name = 'My App'; + +// fake app + +debug('booting %s', name); + +http.createServer(function(req, res){ + debug(req.method + ' ' + req.url); + res.end('hello\n'); +}).listen(3000, function(){ + debug('listening'); +}); + +// fake worker of some kind + +require('./worker'); +``` + +Example _worker.js_: + +```js +var debug = require('debug')('worker'); + +setInterval(function(){ + debug('doing some work'); +}, 1000); +``` + + The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples: + + ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png) + + ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png) + +#### Windows note + + On Windows the environment variable is set using the `set` command. + + ```cmd + set DEBUG=*,-not_this + ``` + + Note that PowerShell uses different syntax to set environment variables. + + ```cmd + $env:DEBUG = "*,-not_this" + ``` + +Then, run the program to be debugged as usual. + +## Millisecond diff + + When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls. + + ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png) + + When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below: + + ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png) + +## Conventions + + If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser". + +## Wildcards + + The `*` character may be used as a wildcard. Suppose for example your library has debuggers named "connect:bodyParser", "connect:compress", "connect:session", instead of listing all three with `DEBUG=connect:bodyParser,connect:compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`. + + You can also exclude specific debuggers by prefixing them with a "-" character. For example, `DEBUG=*,-connect:*` would include all debuggers except those starting with "connect:". + +## Environment Variables + + When running through Node.js, you can set a few environment variables that will + change the behavior of the debug logging: + +| Name | Purpose | +|-----------|-------------------------------------------------| +| `DEBUG` | Enables/disables specific debugging namespaces. | +| `DEBUG_COLORS`| Whether or not to use colors in the debug output. | +| `DEBUG_DEPTH` | Object inspection depth. | +| `DEBUG_SHOW_HIDDEN` | Shows hidden properties on inspected objects. | + + + __Note:__ The environment variables beginning with `DEBUG_` end up being + converted into an Options object that gets used with `%o`/`%O` formatters. + See the Node.js documentation for + [`util.inspect()`](https://nodejs.org/api/util.html#util_util_inspect_object_options) + for the complete list. + +## Formatters + + + Debug uses [printf-style](https://wikipedia.org/wiki/Printf_format_string) formatting. Below are the officially supported formatters: + +| Formatter | Representation | +|-----------|----------------| +| `%O` | Pretty-print an Object on multiple lines. | +| `%o` | Pretty-print an Object all on a single line. | +| `%s` | String. | +| `%d` | Number (both integer and float). | +| `%j` | JSON. Replaced with the string '[Circular]' if the argument contains circular references. | +| `%%` | Single percent sign ('%'). This does not consume an argument. | + +### Custom formatters + + You can add custom formatters by extending the `debug.formatters` object. For example, if you wanted to add support for rendering a Buffer as hex with `%h`, you could do something like: + +```js +const createDebug = require('debug') +createDebug.formatters.h = (v) => { + return v.toString('hex') +} + +// …elsewhere +const debug = createDebug('foo') +debug('this is hex: %h', new Buffer('hello world')) +// foo this is hex: 68656c6c6f20776f726c6421 +0ms +``` + +## Browser support + You can build a browser-ready script using [browserify](https://github.com/substack/node-browserify), + or just use the [browserify-as-a-service](https://wzrd.in/) [build](https://wzrd.in/standalone/debug@latest), + if you don't want to build it yourself. + + Debug's enable state is currently persisted by `localStorage`. + Consider the situation shown below where you have `worker:a` and `worker:b`, + and wish to debug both. You can enable this using `localStorage.debug`: + +```js +localStorage.debug = 'worker:*' +``` + +And then refresh the page. + +```js +a = debug('worker:a'); +b = debug('worker:b'); + +setInterval(function(){ + a('doing some work'); +}, 1000); + +setInterval(function(){ + b('doing some work'); +}, 1200); +``` + +#### Web Inspector Colors + + Colors are also enabled on "Web Inspectors" that understand the `%c` formatting + option. These are WebKit web inspectors, Firefox ([since version + 31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/)) + and the Firebug plugin for Firefox (any version). + + Colored output looks something like: + + ![](https://cloud.githubusercontent.com/assets/71256/3139768/b98c5fd8-e8ef-11e3-862a-f7253b6f47c6.png) + + +## Output streams + + By default `debug` will log to stderr, however this can be configured per-namespace by overriding the `log` method: + +Example _stdout.js_: + +```js +var debug = require('debug'); +var error = debug('app:error'); + +// by default stderr is used +error('goes to stderr!'); + +var log = debug('app:log'); +// set this namespace to log via console.log +log.log = console.log.bind(console); // don't forget to bind to console! +log('goes to stdout'); +error('still goes to stderr!'); + +// set all output to go via console.info +// overrides all per-namespace log settings +debug.log = console.info.bind(console); +error('now goes to stdout via console.info'); +log('still goes to stdout, but via console.info now'); +``` + + +## Authors + + - TJ Holowaychuk + - Nathan Rajlich + - Andrew Rhyne + +## Backers + +Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/debug#backer)] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +## Sponsors + +Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/debug#sponsor)] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +## License + +(The MIT License) + +Copyright (c) 2014-2016 TJ Holowaychuk <tj@vision-media.ca> + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/debug/component.json b/NodjsPartieArduino/node_modules/debug/component.json new file mode 100644 index 0000000..9de2641 --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/component.json @@ -0,0 +1,19 @@ +{ + "name": "debug", + "repo": "visionmedia/debug", + "description": "small debugging utility", + "version": "2.6.9", + "keywords": [ + "debug", + "log", + "debugger" + ], + "main": "src/browser.js", + "scripts": [ + "src/browser.js", + "src/debug.js" + ], + "dependencies": { + "rauchg/ms.js": "0.7.1" + } +} diff --git a/NodjsPartieArduino/node_modules/debug/karma.conf.js b/NodjsPartieArduino/node_modules/debug/karma.conf.js new file mode 100644 index 0000000..103a82d --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/karma.conf.js @@ -0,0 +1,70 @@ +// Karma configuration +// Generated on Fri Dec 16 2016 13:09:51 GMT+0000 (UTC) + +module.exports = function(config) { + config.set({ + + // base path that will be used to resolve all patterns (eg. files, exclude) + basePath: '', + + + // frameworks to use + // available frameworks: https://npmjs.org/browse/keyword/karma-adapter + frameworks: ['mocha', 'chai', 'sinon'], + + + // list of files / patterns to load in the browser + files: [ + 'dist/debug.js', + 'test/*spec.js' + ], + + + // list of files to exclude + exclude: [ + 'src/node.js' + ], + + + // preprocess matching files before serving them to the browser + // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor + preprocessors: { + }, + + // test results reporter to use + // possible values: 'dots', 'progress' + // available reporters: https://npmjs.org/browse/keyword/karma-reporter + reporters: ['progress'], + + + // web server port + port: 9876, + + + // enable / disable colors in the output (reporters and logs) + colors: true, + + + // level of logging + // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG + logLevel: config.LOG_INFO, + + + // enable / disable watching file and executing tests whenever any file changes + autoWatch: true, + + + // start these browsers + // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher + browsers: ['PhantomJS'], + + + // Continuous Integration mode + // if true, Karma captures browsers, runs the tests and exits + singleRun: false, + + // Concurrency level + // how many browser should be started simultaneous + concurrency: Infinity + }) +} diff --git a/NodjsPartieArduino/node_modules/debug/node.js b/NodjsPartieArduino/node_modules/debug/node.js new file mode 100644 index 0000000..7fc36fe --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/node.js @@ -0,0 +1 @@ +module.exports = require('./src/node'); diff --git a/NodjsPartieArduino/node_modules/debug/package.json b/NodjsPartieArduino/node_modules/debug/package.json new file mode 100644 index 0000000..3effdef --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/package.json @@ -0,0 +1,145 @@ +{ + "_args": [ + [ + { + "raw": "debug@2.6.9", + "scope": null, + "escapedName": "debug", + "name": "debug", + "rawSpec": "2.6.9", + "spec": "2.6.9", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "debug@2.6.9", + "_id": "debug@2.6.9", + "_inCache": true, + "_location": "/debug", + "_nodeVersion": "8.4.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/debug-2.6.9.tgz_1506087154503_0.5196126794908196" + }, + "_npmUser": { + "name": "tootallnate", + "email": "nathan@tootallnate.net" + }, + "_npmVersion": "5.3.0", + "_phantomChildren": {}, + "_requested": { + "raw": "debug@2.6.9", + "scope": null, + "escapedName": "debug", + "name": "debug", + "rawSpec": "2.6.9", + "spec": "2.6.9", + "type": "version" + }, + "_requiredBy": [ + "/body-parser", + "/choices-separator", + "/express", + "/finalhandler", + "/prompt-actions", + "/prompt-checkbox", + "/prompt-radio", + "/readline-ui", + "/send", + "/terminal-paginator" + ], + "_resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "_shasum": "5d128515df134ff327e90a4c93f4e077a536341f", + "_shrinkwrap": null, + "_spec": "debug@2.6.9", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "author": { + "name": "TJ Holowaychuk", + "email": "tj@vision-media.ca" + }, + "browser": "./src/browser.js", + "bugs": { + "url": "https://github.com/visionmedia/debug/issues" + }, + "component": { + "scripts": { + "debug/index.js": "browser.js", + "debug/debug.js": "debug.js" + } + }, + "contributors": [ + { + "name": "Nathan Rajlich", + "email": "nathan@tootallnate.net", + "url": "http://n8.io" + }, + { + "name": "Andrew Rhyne", + "email": "rhyneandrew@gmail.com" + } + ], + "dependencies": { + "ms": "2.0.0" + }, + "description": "small debugging utility", + "devDependencies": { + "browserify": "9.0.3", + "chai": "^3.5.0", + "concurrently": "^3.1.0", + "coveralls": "^2.11.15", + "eslint": "^3.12.1", + "istanbul": "^0.4.5", + "karma": "^1.3.0", + "karma-chai": "^0.1.0", + "karma-mocha": "^1.3.0", + "karma-phantomjs-launcher": "^1.0.2", + "karma-sinon": "^1.0.5", + "mocha": "^3.2.0", + "mocha-lcov-reporter": "^1.2.0", + "rimraf": "^2.5.4", + "sinon": "^1.17.6", + "sinon-chai": "^2.8.0" + }, + "directories": {}, + "dist": { + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "shasum": "5d128515df134ff327e90a4c93f4e077a536341f", + "tarball": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + }, + "gitHead": "13abeae468fea297d0dccc50bc55590809241083", + "homepage": "https://github.com/visionmedia/debug#readme", + "keywords": [ + "debug", + "log", + "debugger" + ], + "license": "MIT", + "main": "./src/index.js", + "maintainers": [ + { + "name": "thebigredgeek", + "email": "rhyneandrew@gmail.com" + }, + { + "name": "kolban", + "email": "kolban1@kolban.com" + }, + { + "name": "tootallnate", + "email": "nathan@tootallnate.net" + }, + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + } + ], + "name": "debug", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/visionmedia/debug.git" + }, + "version": "2.6.9" +} diff --git a/NodjsPartieArduino/node_modules/debug/src/browser.js b/NodjsPartieArduino/node_modules/debug/src/browser.js new file mode 100644 index 0000000..7106924 --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/src/browser.js @@ -0,0 +1,185 @@ +/** + * This is the web browser implementation of `debug()`. + * + * Expose `debug()` as the module. + */ + +exports = module.exports = require('./debug'); +exports.log = log; +exports.formatArgs = formatArgs; +exports.save = save; +exports.load = load; +exports.useColors = useColors; +exports.storage = 'undefined' != typeof chrome + && 'undefined' != typeof chrome.storage + ? chrome.storage.local + : localstorage(); + +/** + * Colors. + */ + +exports.colors = [ + 'lightseagreen', + 'forestgreen', + 'goldenrod', + 'dodgerblue', + 'darkorchid', + 'crimson' +]; + +/** + * Currently only WebKit-based Web Inspectors, Firefox >= v31, + * and the Firebug extension (any Firefox version) are known + * to support "%c" CSS customizations. + * + * TODO: add a `localStorage` variable to explicitly enable/disable colors + */ + +function useColors() { + // NB: In an Electron preload script, document will be defined but not fully + // initialized. Since we know we're in Chrome, we'll just detect this case + // explicitly + if (typeof window !== 'undefined' && window.process && window.process.type === 'renderer') { + return true; + } + + // is webkit? http://stackoverflow.com/a/16459606/376773 + // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 + return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) || + // is firebug? http://stackoverflow.com/a/398120/376773 + (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) || + // is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) || + // double check webkit in userAgent just in case we are in a worker + (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)); +} + +/** + * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default. + */ + +exports.formatters.j = function(v) { + try { + return JSON.stringify(v); + } catch (err) { + return '[UnexpectedJSONParseError]: ' + err.message; + } +}; + + +/** + * Colorize log arguments if enabled. + * + * @api public + */ + +function formatArgs(args) { + var useColors = this.useColors; + + args[0] = (useColors ? '%c' : '') + + this.namespace + + (useColors ? ' %c' : ' ') + + args[0] + + (useColors ? '%c ' : ' ') + + '+' + exports.humanize(this.diff); + + if (!useColors) return; + + var c = 'color: ' + this.color; + args.splice(1, 0, c, 'color: inherit') + + // the final "%c" is somewhat tricky, because there could be other + // arguments passed either before or after the %c, so we need to + // figure out the correct index to insert the CSS into + var index = 0; + var lastC = 0; + args[0].replace(/%[a-zA-Z%]/g, function(match) { + if ('%%' === match) return; + index++; + if ('%c' === match) { + // we only are interested in the *last* %c + // (the user may have provided their own) + lastC = index; + } + }); + + args.splice(lastC, 0, c); +} + +/** + * Invokes `console.log()` when available. + * No-op when `console.log` is not a "function". + * + * @api public + */ + +function log() { + // this hackery is required for IE8/9, where + // the `console.log` function doesn't have 'apply' + return 'object' === typeof console + && console.log + && Function.prototype.apply.call(console.log, console, arguments); +} + +/** + * Save `namespaces`. + * + * @param {String} namespaces + * @api private + */ + +function save(namespaces) { + try { + if (null == namespaces) { + exports.storage.removeItem('debug'); + } else { + exports.storage.debug = namespaces; + } + } catch(e) {} +} + +/** + * Load `namespaces`. + * + * @return {String} returns the previously persisted debug modes + * @api private + */ + +function load() { + var r; + try { + r = exports.storage.debug; + } catch(e) {} + + // If debug isn't set in LS, and we're in Electron, try to load $DEBUG + if (!r && typeof process !== 'undefined' && 'env' in process) { + r = process.env.DEBUG; + } + + return r; +} + +/** + * Enable namespaces listed in `localStorage.debug` initially. + */ + +exports.enable(load()); + +/** + * Localstorage attempts to return the localstorage. + * + * This is necessary because safari throws + * when a user disables cookies/localstorage + * and you attempt to access it. + * + * @return {LocalStorage} + * @api private + */ + +function localstorage() { + try { + return window.localStorage; + } catch (e) {} +} diff --git a/NodjsPartieArduino/node_modules/debug/src/debug.js b/NodjsPartieArduino/node_modules/debug/src/debug.js new file mode 100644 index 0000000..6a5e3fc --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/src/debug.js @@ -0,0 +1,202 @@ + +/** + * This is the common logic for both the Node.js and web browser + * implementations of `debug()`. + * + * Expose `debug()` as the module. + */ + +exports = module.exports = createDebug.debug = createDebug['default'] = createDebug; +exports.coerce = coerce; +exports.disable = disable; +exports.enable = enable; +exports.enabled = enabled; +exports.humanize = require('ms'); + +/** + * The currently active debug mode names, and names to skip. + */ + +exports.names = []; +exports.skips = []; + +/** + * Map of special "%n" handling functions, for the debug "format" argument. + * + * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". + */ + +exports.formatters = {}; + +/** + * Previous log timestamp. + */ + +var prevTime; + +/** + * Select a color. + * @param {String} namespace + * @return {Number} + * @api private + */ + +function selectColor(namespace) { + var hash = 0, i; + + for (i in namespace) { + hash = ((hash << 5) - hash) + namespace.charCodeAt(i); + hash |= 0; // Convert to 32bit integer + } + + return exports.colors[Math.abs(hash) % exports.colors.length]; +} + +/** + * Create a debugger with the given `namespace`. + * + * @param {String} namespace + * @return {Function} + * @api public + */ + +function createDebug(namespace) { + + function debug() { + // disabled? + if (!debug.enabled) return; + + var self = debug; + + // set `diff` timestamp + var curr = +new Date(); + var ms = curr - (prevTime || curr); + self.diff = ms; + self.prev = prevTime; + self.curr = curr; + prevTime = curr; + + // turn the `arguments` into a proper Array + var args = new Array(arguments.length); + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i]; + } + + args[0] = exports.coerce(args[0]); + + if ('string' !== typeof args[0]) { + // anything else let's inspect with %O + args.unshift('%O'); + } + + // apply any `formatters` transformations + var index = 0; + args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format) { + // if we encounter an escaped % then don't increase the array index + if (match === '%%') return match; + index++; + var formatter = exports.formatters[format]; + if ('function' === typeof formatter) { + var val = args[index]; + match = formatter.call(self, val); + + // now we need to remove `args[index]` since it's inlined in the `format` + args.splice(index, 1); + index--; + } + return match; + }); + + // apply env-specific formatting (colors, etc.) + exports.formatArgs.call(self, args); + + var logFn = debug.log || exports.log || console.log.bind(console); + logFn.apply(self, args); + } + + debug.namespace = namespace; + debug.enabled = exports.enabled(namespace); + debug.useColors = exports.useColors(); + debug.color = selectColor(namespace); + + // env-specific initialization logic for debug instances + if ('function' === typeof exports.init) { + exports.init(debug); + } + + return debug; +} + +/** + * Enables a debug mode by namespaces. This can include modes + * separated by a colon and wildcards. + * + * @param {String} namespaces + * @api public + */ + +function enable(namespaces) { + exports.save(namespaces); + + exports.names = []; + exports.skips = []; + + var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); + var len = split.length; + + for (var i = 0; i < len; i++) { + if (!split[i]) continue; // ignore empty strings + namespaces = split[i].replace(/\*/g, '.*?'); + if (namespaces[0] === '-') { + exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$')); + } else { + exports.names.push(new RegExp('^' + namespaces + '$')); + } + } +} + +/** + * Disable debug output. + * + * @api public + */ + +function disable() { + exports.enable(''); +} + +/** + * Returns true if the given mode name is enabled, false otherwise. + * + * @param {String} name + * @return {Boolean} + * @api public + */ + +function enabled(name) { + var i, len; + for (i = 0, len = exports.skips.length; i < len; i++) { + if (exports.skips[i].test(name)) { + return false; + } + } + for (i = 0, len = exports.names.length; i < len; i++) { + if (exports.names[i].test(name)) { + return true; + } + } + return false; +} + +/** + * Coerce `val`. + * + * @param {Mixed} val + * @return {Mixed} + * @api private + */ + +function coerce(val) { + if (val instanceof Error) return val.stack || val.message; + return val; +} diff --git a/NodjsPartieArduino/node_modules/debug/src/index.js b/NodjsPartieArduino/node_modules/debug/src/index.js new file mode 100644 index 0000000..e12cf4d --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/src/index.js @@ -0,0 +1,10 @@ +/** + * Detect Electron renderer process, which is node, but we should + * treat as a browser. + */ + +if (typeof process !== 'undefined' && process.type === 'renderer') { + module.exports = require('./browser.js'); +} else { + module.exports = require('./node.js'); +} diff --git a/NodjsPartieArduino/node_modules/debug/src/inspector-log.js b/NodjsPartieArduino/node_modules/debug/src/inspector-log.js new file mode 100644 index 0000000..60ea6c0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/src/inspector-log.js @@ -0,0 +1,15 @@ +module.exports = inspectorLog; + +// black hole +const nullStream = new (require('stream').Writable)(); +nullStream._write = () => {}; + +/** + * Outputs a `console.log()` to the Node.js Inspector console *only*. + */ +function inspectorLog() { + const stdout = console._stdout; + console._stdout = nullStream; + console.log.apply(console, arguments); + console._stdout = stdout; +} diff --git a/NodjsPartieArduino/node_modules/debug/src/node.js b/NodjsPartieArduino/node_modules/debug/src/node.js new file mode 100644 index 0000000..b15109c --- /dev/null +++ b/NodjsPartieArduino/node_modules/debug/src/node.js @@ -0,0 +1,248 @@ +/** + * Module dependencies. + */ + +var tty = require('tty'); +var util = require('util'); + +/** + * This is the Node.js implementation of `debug()`. + * + * Expose `debug()` as the module. + */ + +exports = module.exports = require('./debug'); +exports.init = init; +exports.log = log; +exports.formatArgs = formatArgs; +exports.save = save; +exports.load = load; +exports.useColors = useColors; + +/** + * Colors. + */ + +exports.colors = [6, 2, 3, 4, 5, 1]; + +/** + * Build up the default `inspectOpts` object from the environment variables. + * + * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js + */ + +exports.inspectOpts = Object.keys(process.env).filter(function (key) { + return /^debug_/i.test(key); +}).reduce(function (obj, key) { + // camel-case + var prop = key + .substring(6) + .toLowerCase() + .replace(/_([a-z])/g, function (_, k) { return k.toUpperCase() }); + + // coerce string value into JS value + var val = process.env[key]; + if (/^(yes|on|true|enabled)$/i.test(val)) val = true; + else if (/^(no|off|false|disabled)$/i.test(val)) val = false; + else if (val === 'null') val = null; + else val = Number(val); + + obj[prop] = val; + return obj; +}, {}); + +/** + * The file descriptor to write the `debug()` calls to. + * Set the `DEBUG_FD` env variable to override with another value. i.e.: + * + * $ DEBUG_FD=3 node script.js 3>debug.log + */ + +var fd = parseInt(process.env.DEBUG_FD, 10) || 2; + +if (1 !== fd && 2 !== fd) { + util.deprecate(function(){}, 'except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)')() +} + +var stream = 1 === fd ? process.stdout : + 2 === fd ? process.stderr : + createWritableStdioStream(fd); + +/** + * Is stdout a TTY? Colored output is enabled when `true`. + */ + +function useColors() { + return 'colors' in exports.inspectOpts + ? Boolean(exports.inspectOpts.colors) + : tty.isatty(fd); +} + +/** + * Map %o to `util.inspect()`, all on a single line. + */ + +exports.formatters.o = function(v) { + this.inspectOpts.colors = this.useColors; + return util.inspect(v, this.inspectOpts) + .split('\n').map(function(str) { + return str.trim() + }).join(' '); +}; + +/** + * Map %o to `util.inspect()`, allowing multiple lines if needed. + */ + +exports.formatters.O = function(v) { + this.inspectOpts.colors = this.useColors; + return util.inspect(v, this.inspectOpts); +}; + +/** + * Adds ANSI color escape codes if enabled. + * + * @api public + */ + +function formatArgs(args) { + var name = this.namespace; + var useColors = this.useColors; + + if (useColors) { + var c = this.color; + var prefix = ' \u001b[3' + c + ';1m' + name + ' ' + '\u001b[0m'; + + args[0] = prefix + args[0].split('\n').join('\n' + prefix); + args.push('\u001b[3' + c + 'm+' + exports.humanize(this.diff) + '\u001b[0m'); + } else { + args[0] = new Date().toUTCString() + + ' ' + name + ' ' + args[0]; + } +} + +/** + * Invokes `util.format()` with the specified arguments and writes to `stream`. + */ + +function log() { + return stream.write(util.format.apply(util, arguments) + '\n'); +} + +/** + * Save `namespaces`. + * + * @param {String} namespaces + * @api private + */ + +function save(namespaces) { + if (null == namespaces) { + // If you set a process.env field to null or undefined, it gets cast to the + // string 'null' or 'undefined'. Just delete instead. + delete process.env.DEBUG; + } else { + process.env.DEBUG = namespaces; + } +} + +/** + * Load `namespaces`. + * + * @return {String} returns the previously persisted debug modes + * @api private + */ + +function load() { + return process.env.DEBUG; +} + +/** + * Copied from `node/src/node.js`. + * + * XXX: It's lame that node doesn't expose this API out-of-the-box. It also + * relies on the undocumented `tty_wrap.guessHandleType()` which is also lame. + */ + +function createWritableStdioStream (fd) { + var stream; + var tty_wrap = process.binding('tty_wrap'); + + // Note stream._type is used for test-module-load-list.js + + switch (tty_wrap.guessHandleType(fd)) { + case 'TTY': + stream = new tty.WriteStream(fd); + stream._type = 'tty'; + + // Hack to have stream not keep the event loop alive. + // See https://github.com/joyent/node/issues/1726 + if (stream._handle && stream._handle.unref) { + stream._handle.unref(); + } + break; + + case 'FILE': + var fs = require('fs'); + stream = new fs.SyncWriteStream(fd, { autoClose: false }); + stream._type = 'fs'; + break; + + case 'PIPE': + case 'TCP': + var net = require('net'); + stream = new net.Socket({ + fd: fd, + readable: false, + writable: true + }); + + // FIXME Should probably have an option in net.Socket to create a + // stream from an existing fd which is writable only. But for now + // we'll just add this hack and set the `readable` member to false. + // Test: ./node test/fixtures/echo.js < /etc/passwd + stream.readable = false; + stream.read = null; + stream._type = 'pipe'; + + // FIXME Hack to have stream not keep the event loop alive. + // See https://github.com/joyent/node/issues/1726 + if (stream._handle && stream._handle.unref) { + stream._handle.unref(); + } + break; + + default: + // Probably an error on in uv_guess_handle() + throw new Error('Implement me. Unknown stream file type!'); + } + + // For supporting legacy API we put the FD here. + stream.fd = fd; + + stream._isStdio = true; + + return stream; +} + +/** + * Init logic for `debug` instances. + * + * Create a new `inspectOpts` object in case `useColors` is set + * differently for a particular `debug` instance. + */ + +function init (debug) { + debug.inspectOpts = {}; + + var keys = Object.keys(exports.inspectOpts); + for (var i = 0; i < keys.length; i++) { + debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]]; + } +} + +/** + * Enable namespaces listed in `process.env.DEBUG` initially. + */ + +exports.enable(load()); diff --git a/NodjsPartieArduino/node_modules/decompress-response/index.js b/NodjsPartieArduino/node_modules/decompress-response/index.js new file mode 100644 index 0000000..d8acd4a --- /dev/null +++ b/NodjsPartieArduino/node_modules/decompress-response/index.js @@ -0,0 +1,29 @@ +'use strict'; +const PassThrough = require('stream').PassThrough; +const zlib = require('zlib'); +const mimicResponse = require('mimic-response'); + +module.exports = response => { + // TODO: Use Array#includes when targeting Node.js 6 + if (['gzip', 'deflate'].indexOf(response.headers['content-encoding']) === -1) { + return response; + } + + const unzip = zlib.createUnzip(); + const stream = new PassThrough(); + + mimicResponse(response, stream); + + unzip.on('error', err => { + if (err.code === 'Z_BUF_ERROR') { + stream.end(); + return; + } + + stream.emit('error', err); + }); + + response.pipe(unzip).pipe(stream); + + return stream; +}; diff --git a/NodjsPartieArduino/node_modules/decompress-response/license b/NodjsPartieArduino/node_modules/decompress-response/license new file mode 100644 index 0000000..32a16ce --- /dev/null +++ b/NodjsPartieArduino/node_modules/decompress-response/license @@ -0,0 +1,21 @@ +`The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/decompress-response/package.json b/NodjsPartieArduino/node_modules/decompress-response/package.json new file mode 100644 index 0000000..b0a7456 --- /dev/null +++ b/NodjsPartieArduino/node_modules/decompress-response/package.json @@ -0,0 +1,108 @@ +{ + "_args": [ + [ + { + "raw": "decompress-response@^3.3.0", + "scope": null, + "escapedName": "decompress-response", + "name": "decompress-response", + "rawSpec": "^3.3.0", + "spec": ">=3.3.0 <4.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/simple-get" + ] + ], + "_from": "decompress-response@>=3.3.0 <4.0.0", + "_id": "decompress-response@3.3.0", + "_inCache": true, + "_location": "/decompress-response", + "_nodeVersion": "4.8.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/decompress-response-3.3.0.tgz_1496432627972_0.16955837607383728" + }, + "_npmUser": { + "name": "sindresorhus", + "email": "sindresorhus@gmail.com" + }, + "_npmVersion": "2.15.11", + "_phantomChildren": {}, + "_requested": { + "raw": "decompress-response@^3.3.0", + "scope": null, + "escapedName": "decompress-response", + "name": "decompress-response", + "rawSpec": "^3.3.0", + "spec": ">=3.3.0 <4.0.0", + "type": "range" + }, + "_requiredBy": [ + "/simple-get" + ], + "_resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "_shasum": "80a4dd323748384bfa248083622aedec982adff3", + "_shrinkwrap": null, + "_spec": "decompress-response@^3.3.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/simple-get", + "bugs": { + "url": "https://github.com/sindresorhus/decompress-response/issues" + }, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "description": "Decompress a HTTP response if needed", + "devDependencies": { + "ava": "*", + "get-stream": "^3.0.0", + "pify": "^3.0.0", + "xo": "*" + }, + "directories": {}, + "dist": { + "shasum": "80a4dd323748384bfa248083622aedec982adff3", + "tarball": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz" + }, + "engines": { + "node": ">=4" + }, + "files": [ + "index.js" + ], + "gitHead": "dcd62471a9758f970cdcc9a33c104e8d37f366ee", + "homepage": "https://github.com/sindresorhus/decompress-response#readme", + "keywords": [ + "decompress", + "response", + "http", + "https", + "zlib", + "gzip", + "zip", + "deflate", + "unzip", + "ungzip", + "incoming", + "message", + "stream", + "compressed" + ], + "license": "MIT", + "maintainers": [ + { + "name": "sindresorhus", + "email": "sindresorhus@gmail.com" + } + ], + "name": "decompress-response", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/sindresorhus/decompress-response.git" + }, + "scripts": { + "test": "xo && ava" + }, + "version": "3.3.0" +} diff --git a/NodjsPartieArduino/node_modules/decompress-response/readme.md b/NodjsPartieArduino/node_modules/decompress-response/readme.md new file mode 100644 index 0000000..1b98767 --- /dev/null +++ b/NodjsPartieArduino/node_modules/decompress-response/readme.md @@ -0,0 +1,31 @@ +# decompress-response [![Build Status](https://travis-ci.org/sindresorhus/decompress-response.svg?branch=master)](https://travis-ci.org/sindresorhus/decompress-response) + +> Decompress a HTTP response if needed + +Decompresses the [response](https://nodejs.org/api/http.html#http_class_http_incomingmessage) from [`http.request`](https://nodejs.org/api/http.html#http_http_request_options_callback) if it's gzipped or deflated, otherwise just passes it through. + +Used by [`got`](https://github.com/sindresorhus/got). + + +## Install + +``` +$ npm install decompress-response +``` + + +## Usage + +```js +const http = require('http'); +const decompressResponse = require('decompress-response'); + +http.get('http://sindresorhus.com', response => { + response = decompressResponse(response); +}); +``` + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/NodjsPartieArduino/node_modules/deep-extend/CHANGELOG.md b/NodjsPartieArduino/node_modules/deep-extend/CHANGELOG.md new file mode 100644 index 0000000..dd13ec1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/deep-extend/CHANGELOG.md @@ -0,0 +1,46 @@ +Changelog +========= + +v0.6.0 +------ + +- Updated "devDependencies" versions to fix vulnerability alerts +- Dropped support of io.js and node.js v0.12.x and lower since new versions of + "devDependencies" couldn't work with those old node.js versions + (minimal supported version of node.js now is v4.0.0) + +v0.5.1 +------ + +- Fix prototype pollution vulnerability (thanks to @mwakerman for the PR) +- Avoid using deprecated Buffer API (thanks to @ChALkeR for the PR) + +v0.5.0 +------ + +- Auto-testing provided by Travis CI; +- Support older Node.JS versions (`v0.11.x` and `v0.10.x`); +- Removed tests files from npm package. + +v0.4.2 +------ + +- Fix for `null` as an argument. + +v0.4.1 +------ + +- Removed test code from npm package + ([see pull request #21](https://github.com/unclechu/node-deep-extend/pull/21)); +- Increased minimal version of Node from `0.4.0` to `0.12.0` + (because can't run tests on lesser version anyway). + +v0.4.0 +------ + +- **WARNING!** Broken backward compatibility with `v0.3.x`; +- Fixed bug with extending arrays instead of cloning; +- Deep cloning for arrays; +- Check for own property; +- Fixed some documentation issues; +- Strict JS mode. diff --git a/NodjsPartieArduino/node_modules/deep-extend/LICENSE b/NodjsPartieArduino/node_modules/deep-extend/LICENSE new file mode 100644 index 0000000..5c58916 --- /dev/null +++ b/NodjsPartieArduino/node_modules/deep-extend/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2013-2018, Viacheslav Lotsmanov + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/deep-extend/README.md b/NodjsPartieArduino/node_modules/deep-extend/README.md new file mode 100644 index 0000000..67c7fc0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/deep-extend/README.md @@ -0,0 +1,91 @@ +Deep Extend +=========== + +Recursive object extending. + +[![Build Status](https://api.travis-ci.org/unclechu/node-deep-extend.svg?branch=master)](https://travis-ci.org/unclechu/node-deep-extend) + +[![NPM](https://nodei.co/npm/deep-extend.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/deep-extend/) + +Install +------- + +```bash +$ npm install deep-extend +``` + +Usage +----- + +```javascript +var deepExtend = require('deep-extend'); +var obj1 = { + a: 1, + b: 2, + d: { + a: 1, + b: [], + c: { test1: 123, test2: 321 } + }, + f: 5, + g: 123, + i: 321, + j: [1, 2] +}; +var obj2 = { + b: 3, + c: 5, + d: { + b: { first: 'one', second: 'two' }, + c: { test2: 222 } + }, + e: { one: 1, two: 2 }, + f: [], + g: (void 0), + h: /abc/g, + i: null, + j: [3, 4] +}; + +deepExtend(obj1, obj2); + +console.log(obj1); +/* +{ a: 1, + b: 3, + d: + { a: 1, + b: { first: 'one', second: 'two' }, + c: { test1: 123, test2: 222 } }, + f: [], + g: undefined, + c: 5, + e: { one: 1, two: 2 }, + h: /abc/g, + i: null, + j: [3, 4] } +*/ +``` + +Unit testing +------------ + +```bash +$ npm test +``` + +Changelog +--------- + +[CHANGELOG.md](./CHANGELOG.md) + +Any issues? +----------- + +Please, report about issues +[here](https://github.com/unclechu/node-deep-extend/issues). + +License +------- + +[MIT](./LICENSE) diff --git a/NodjsPartieArduino/node_modules/deep-extend/index.js b/NodjsPartieArduino/node_modules/deep-extend/index.js new file mode 100644 index 0000000..762d81e --- /dev/null +++ b/NodjsPartieArduino/node_modules/deep-extend/index.js @@ -0,0 +1 @@ +module.exports = require('./lib/deep-extend'); diff --git a/NodjsPartieArduino/node_modules/deep-extend/lib/deep-extend.js b/NodjsPartieArduino/node_modules/deep-extend/lib/deep-extend.js new file mode 100644 index 0000000..651fd8d --- /dev/null +++ b/NodjsPartieArduino/node_modules/deep-extend/lib/deep-extend.js @@ -0,0 +1,150 @@ +/*! + * @description Recursive object extending + * @author Viacheslav Lotsmanov + * @license MIT + * + * The MIT License (MIT) + * + * Copyright (c) 2013-2018 Viacheslav Lotsmanov + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +'use strict'; + +function isSpecificValue(val) { + return ( + val instanceof Buffer + || val instanceof Date + || val instanceof RegExp + ) ? true : false; +} + +function cloneSpecificValue(val) { + if (val instanceof Buffer) { + var x = Buffer.alloc + ? Buffer.alloc(val.length) + : new Buffer(val.length); + val.copy(x); + return x; + } else if (val instanceof Date) { + return new Date(val.getTime()); + } else if (val instanceof RegExp) { + return new RegExp(val); + } else { + throw new Error('Unexpected situation'); + } +} + +/** + * Recursive cloning array. + */ +function deepCloneArray(arr) { + var clone = []; + arr.forEach(function (item, index) { + if (typeof item === 'object' && item !== null) { + if (Array.isArray(item)) { + clone[index] = deepCloneArray(item); + } else if (isSpecificValue(item)) { + clone[index] = cloneSpecificValue(item); + } else { + clone[index] = deepExtend({}, item); + } + } else { + clone[index] = item; + } + }); + return clone; +} + +function safeGetProperty(object, property) { + return property === '__proto__' ? undefined : object[property]; +} + +/** + * Extening object that entered in first argument. + * + * Returns extended object or false if have no target object or incorrect type. + * + * If you wish to clone source object (without modify it), just use empty new + * object as first argument, like this: + * deepExtend({}, yourObj_1, [yourObj_N]); + */ +var deepExtend = module.exports = function (/*obj_1, [obj_2], [obj_N]*/) { + if (arguments.length < 1 || typeof arguments[0] !== 'object') { + return false; + } + + if (arguments.length < 2) { + return arguments[0]; + } + + var target = arguments[0]; + + // convert arguments to array and cut off target object + var args = Array.prototype.slice.call(arguments, 1); + + var val, src, clone; + + args.forEach(function (obj) { + // skip argument if isn't an object, is null, or is an array + if (typeof obj !== 'object' || obj === null || Array.isArray(obj)) { + return; + } + + Object.keys(obj).forEach(function (key) { + src = safeGetProperty(target, key); // source value + val = safeGetProperty(obj, key); // new value + + // recursion prevention + if (val === target) { + return; + + /** + * if new value isn't object then just overwrite by new value + * instead of extending. + */ + } else if (typeof val !== 'object' || val === null) { + target[key] = val; + return; + + // just clone arrays (and recursive clone objects inside) + } else if (Array.isArray(val)) { + target[key] = deepCloneArray(val); + return; + + // custom cloning and overwrite for specific objects + } else if (isSpecificValue(val)) { + target[key] = cloneSpecificValue(val); + return; + + // overwrite by new value if source isn't object or array + } else if (typeof src !== 'object' || src === null || Array.isArray(src)) { + target[key] = deepExtend({}, val); + return; + + // source value and new value is objects both, extending... + } else { + target[key] = deepExtend(src, val); + return; + } + }); + }); + + return target; +}; diff --git a/NodjsPartieArduino/node_modules/deep-extend/package.json b/NodjsPartieArduino/node_modules/deep-extend/package.json new file mode 100644 index 0000000..e2a21a6 --- /dev/null +++ b/NodjsPartieArduino/node_modules/deep-extend/package.json @@ -0,0 +1,132 @@ +{ + "_args": [ + [ + { + "raw": "deep-extend@^0.6.0", + "scope": null, + "escapedName": "deep-extend", + "name": "deep-extend", + "rawSpec": "^0.6.0", + "spec": ">=0.6.0 <0.7.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/rc" + ] + ], + "_from": "deep-extend@>=0.6.0 <0.7.0", + "_id": "deep-extend@0.6.0", + "_inCache": true, + "_location": "/deep-extend", + "_nodeVersion": "8.11.0", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/deep-extend_0.6.0_1527012797367_0.028784991930715043" + }, + "_npmUser": { + "name": "unclechu", + "email": "lotsmanov89@gmail.com" + }, + "_npmVersion": "6.0.1", + "_phantomChildren": {}, + "_requested": { + "raw": "deep-extend@^0.6.0", + "scope": null, + "escapedName": "deep-extend", + "name": "deep-extend", + "rawSpec": "^0.6.0", + "spec": ">=0.6.0 <0.7.0", + "type": "range" + }, + "_requiredBy": [ + "/rc" + ], + "_resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "_shasum": "c4fa7c95404a17a9c3e8ca7e1537312b736330ac", + "_shrinkwrap": null, + "_spec": "deep-extend@^0.6.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/rc", + "author": { + "name": "Viacheslav Lotsmanov", + "email": "lotsmanov89@gmail.com" + }, + "bugs": { + "url": "https://github.com/unclechu/node-deep-extend/issues" + }, + "contributors": [ + { + "name": "Romain Prieto", + "url": "https://github.com/rprieto" + }, + { + "name": "Max Maximov", + "url": "https://github.com/maxmaximov" + }, + { + "name": "Marshall Bowers", + "url": "https://github.com/maxdeviant" + }, + { + "name": "Misha Wakerman", + "url": "https://github.com/mwakerman" + } + ], + "dependencies": {}, + "description": "Recursive object extending", + "devDependencies": { + "mocha": "5.2.0", + "should": "13.2.1" + }, + "directories": {}, + "dist": { + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "shasum": "c4fa7c95404a17a9c3e8ca7e1537312b736330ac", + "tarball": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "fileCount": 6, + "unpackedSize": 9190, + "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBF2+CRA9TVsSAnZWagAAWWsP+wayRHY/u4XwuxCopF6q\nVXfgmhXakYrxCXNpIUVCPC2lBajceZ6X4IOqXIIMnta+x+aYha0TAqH6FT+k\n5f9heBarQk4e3oLMJgaFDYkdTPOqVpDy95g+WOW+NiZN/87z2WnRsPzknkpY\n7R8FQGyR9PEromNmL4pCQY+0G1U4MB8o4rWqu9wp8oY2ebYJ3yNWe2CT9PeZ\nmIGjqyWLH84t8Yp40onc/15YHIAheYA5l9eD7pZeuxc+kddfSDbiwwpedWCV\nJLmKNnNoI4EHDuf+M8RN3U7CJpzAJWKSPN5wId+vFOjGaMnbrSA83DS66JvV\n8JVnzCFhbfpabiqDfkzE8Lq+QRE4P25Tjbc9kxS9yuQTShF3AJUzZUl5rQsw\n5Ov0fOt+BaT1e1/CvYlH8M8tvnGDPkYZ1A3tyRtjZUG/tNkNlLethX77kaf/\nzvnrdsOmReJ8wAacGKEB8+VLVaYg4bDCd5FGgSzO66J0OW2MYghZQi/9Scz8\nzgWmYdgrJ8ftxMDWrOqvcxI+df2bATGtXg1djPb0snsye3HAlNnWDK0lMtwF\n9K22xEK0jaqwDnwCFZKQU2aC6zWgQxlByZu2zA8Kiy3ahRe3XIdUEmxjsmuo\nc13UN9IIjuqHv+2P1U9kL6OEy2omLae/rd/GRy1xPfE/1EdkrcQ//0kTsVBh\nXI++\r\n=u4KH\r\n-----END PGP SIGNATURE-----\r\n" + }, + "engines": { + "node": ">=4.0.0" + }, + "files": [ + "index.js", + "lib/" + ], + "gitHead": "f3f2b4f30fffe8abc9a99a7d6469fb354ca206e9", + "homepage": "https://github.com/unclechu/node-deep-extend", + "keywords": [ + "deep-extend", + "extend", + "deep", + "recursive", + "xtend", + "clone", + "merge", + "json" + ], + "license": "MIT", + "licenses": [ + { + "type": "MIT", + "url": "https://raw.githubusercontent.com/unclechu/node-deep-extend/master/LICENSE" + } + ], + "main": "lib/deep-extend.js", + "maintainers": [ + { + "name": "unclechu", + "email": "lotsmanov89@gmail.com" + } + ], + "name": "deep-extend", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/unclechu/node-deep-extend.git" + }, + "scripts": { + "test": "mocha" + }, + "version": "0.6.0" +} diff --git a/NodjsPartieArduino/node_modules/define-property/LICENSE b/NodjsPartieArduino/node_modules/define-property/LICENSE new file mode 100644 index 0000000..ec85897 --- /dev/null +++ b/NodjsPartieArduino/node_modules/define-property/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015, 2017, Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/define-property/README.md b/NodjsPartieArduino/node_modules/define-property/README.md new file mode 100644 index 0000000..2f1af05 --- /dev/null +++ b/NodjsPartieArduino/node_modules/define-property/README.md @@ -0,0 +1,95 @@ +# define-property [![NPM version](https://img.shields.io/npm/v/define-property.svg?style=flat)](https://www.npmjs.com/package/define-property) [![NPM monthly downloads](https://img.shields.io/npm/dm/define-property.svg?style=flat)](https://npmjs.org/package/define-property) [![NPM total downloads](https://img.shields.io/npm/dt/define-property.svg?style=flat)](https://npmjs.org/package/define-property) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/define-property.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/define-property) + +> Define a non-enumerable property on an object. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save define-property +``` + +Install with [yarn](https://yarnpkg.com): + +```sh +$ yarn add define-property +``` + +## Usage + +**Params** + +* `obj`: The object on which to define the property. +* `prop`: The name of the property to be defined or modified. +* `descriptor`: The descriptor for the property being defined or modified. + +```js +var define = require('define-property'); +var obj = {}; +define(obj, 'foo', function(val) { + return val.toUpperCase(); +}); + +console.log(obj); +//=> {} + +console.log(obj.foo('bar')); +//=> 'BAR' +``` + +**get/set** + +```js +define(obj, 'foo', { + get: function() {}, + set: function() {} +}); +``` + +## About + +### Related projects + +* [assign-deep](https://www.npmjs.com/package/assign-deep): Deeply assign the enumerable properties and/or es6 Symbol properies of source objects to the target… [more](https://github.com/jonschlinkert/assign-deep) | [homepage](https://github.com/jonschlinkert/assign-deep "Deeply assign the enumerable properties and/or es6 Symbol properies of source objects to the target (first) object.") +* [extend-shallow](https://www.npmjs.com/package/extend-shallow): Extend an object with the properties of additional objects. node.js/javascript util. | [homepage](https://github.com/jonschlinkert/extend-shallow "Extend an object with the properties of additional objects. node.js/javascript util.") +* [merge-deep](https://www.npmjs.com/package/merge-deep): Recursively merge values in a javascript object. | [homepage](https://github.com/jonschlinkert/merge-deep "Recursively merge values in a javascript object.") +* [mixin-deep](https://www.npmjs.com/package/mixin-deep): Deeply mix the properties of objects into the first object. Like merge-deep, but doesn't clone. | [homepage](https://github.com/jonschlinkert/mixin-deep "Deeply mix the properties of objects into the first object. Like merge-deep, but doesn't clone.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +### Running tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.5.0, on April 20, 2017._ \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/define-property/index.js b/NodjsPartieArduino/node_modules/define-property/index.js new file mode 100644 index 0000000..27c19eb --- /dev/null +++ b/NodjsPartieArduino/node_modules/define-property/index.js @@ -0,0 +1,31 @@ +/*! + * define-property + * + * Copyright (c) 2015, 2017, Jon Schlinkert. + * Released under the MIT License. + */ + +'use strict'; + +var isDescriptor = require('is-descriptor'); + +module.exports = function defineProperty(obj, prop, val) { + if (typeof obj !== 'object' && typeof obj !== 'function') { + throw new TypeError('expected an object or function.'); + } + + if (typeof prop !== 'string') { + throw new TypeError('expected `prop` to be a string.'); + } + + if (isDescriptor(val) && ('set' in val || 'get' in val)) { + return Object.defineProperty(obj, prop, val); + } + + return Object.defineProperty(obj, prop, { + configurable: true, + enumerable: false, + writable: true, + value: val + }); +}; diff --git a/NodjsPartieArduino/node_modules/define-property/package.json b/NodjsPartieArduino/node_modules/define-property/package.json new file mode 100644 index 0000000..afb30ea --- /dev/null +++ b/NodjsPartieArduino/node_modules/define-property/package.json @@ -0,0 +1,129 @@ +{ + "_args": [ + [ + { + "raw": "define-property@^1.0.0", + "scope": null, + "escapedName": "define-property", + "name": "define-property", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-question" + ] + ], + "_from": "define-property@>=1.0.0 <2.0.0", + "_id": "define-property@1.0.0", + "_inCache": true, + "_location": "/define-property", + "_nodeVersion": "7.7.3", + "_npmOperationalInternal": { + "host": "packages-18-east.internal.npmjs.com", + "tmp": "tmp/define-property-1.0.0.tgz_1492669183321_0.5127195529639721" + }, + "_npmUser": { + "name": "jonschlinkert", + "email": "github@sellside.com" + }, + "_npmVersion": "4.2.0", + "_phantomChildren": {}, + "_requested": { + "raw": "define-property@^1.0.0", + "scope": null, + "escapedName": "define-property", + "name": "define-property", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prompt-question", + "/window-size" + ], + "_resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "_shasum": "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6", + "_shrinkwrap": null, + "_spec": "define-property@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prompt-question", + "author": { + "name": "Jon Schlinkert", + "url": "https://github.com/jonschlinkert" + }, + "bugs": { + "url": "https://github.com/jonschlinkert/define-property/issues" + }, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "description": "Define a non-enumerable property on an object.", + "devDependencies": { + "gulp-format-md": "^0.1.12", + "mocha": "^3.2.0" + }, + "directories": {}, + "dist": { + "shasum": "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6", + "tarball": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" + }, + "engines": { + "node": ">=0.10.0" + }, + "files": [ + "index.js" + ], + "gitHead": "4811e7c7999e82ab086265eefeb5d9cbffe10912", + "homepage": "https://github.com/jonschlinkert/define-property", + "keywords": [ + "define", + "define-property", + "enumerable", + "key", + "non", + "non-enumerable", + "object", + "prop", + "property", + "value" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "jonschlinkert", + "email": "github@sellside.com" + } + ], + "name": "define-property", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonschlinkert/define-property.git" + }, + "scripts": { + "test": "mocha" + }, + "verb": { + "related": { + "list": [ + "extend-shallow", + "merge-deep", + "assign-deep", + "mixin-deep" + ] + }, + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + } + }, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/delegates/History.md b/NodjsPartieArduino/node_modules/delegates/History.md new file mode 100644 index 0000000..25959ea --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/History.md @@ -0,0 +1,22 @@ + +1.0.0 / 2015-12-14 +================== + + * Merge pull request #12 from kasicka/master + * Add license text + +0.1.0 / 2014-10-17 +================== + + * adds `.fluent()` to api + +0.0.3 / 2014-01-13 +================== + + * fix receiver for .method() + +0.0.2 / 2014-01-13 +================== + + * Object.defineProperty() sucks + * Initial commit diff --git a/NodjsPartieArduino/node_modules/delegates/License b/NodjsPartieArduino/node_modules/delegates/License new file mode 100644 index 0000000..60de60a --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/License @@ -0,0 +1,20 @@ +Copyright (c) 2015 TJ Holowaychuk + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/delegates/Makefile b/NodjsPartieArduino/node_modules/delegates/Makefile new file mode 100644 index 0000000..a9dcfd5 --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/Makefile @@ -0,0 +1,8 @@ + +test: + @./node_modules/.bin/mocha \ + --require should \ + --reporter spec \ + --bail + +.PHONY: test \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/delegates/Readme.md b/NodjsPartieArduino/node_modules/delegates/Readme.md new file mode 100644 index 0000000..ab8cf4a --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/Readme.md @@ -0,0 +1,94 @@ + +# delegates + + Node method and accessor delegation utilty. + +## Installation + +``` +$ npm install delegates +``` + +## Example + +```js +var delegate = require('delegates'); + +... + +delegate(proto, 'request') + .method('acceptsLanguages') + .method('acceptsEncodings') + .method('acceptsCharsets') + .method('accepts') + .method('is') + .access('querystring') + .access('idempotent') + .access('socket') + .access('length') + .access('query') + .access('search') + .access('status') + .access('method') + .access('path') + .access('body') + .access('host') + .access('url') + .getter('subdomains') + .getter('protocol') + .getter('header') + .getter('stale') + .getter('fresh') + .getter('secure') + .getter('ips') + .getter('ip') +``` + +# API + +## Delegate(proto, prop) + +Creates a delegator instance used to configure using the `prop` on the given +`proto` object. (which is usually a prototype) + +## Delegate#method(name) + +Allows the given method `name` to be accessed on the host. + +## Delegate#getter(name) + +Creates a "getter" for the property with the given `name` on the delegated +object. + +## Delegate#setter(name) + +Creates a "setter" for the property with the given `name` on the delegated +object. + +## Delegate#access(name) + +Creates an "accessor" (ie: both getter *and* setter) for the property with the +given `name` on the delegated object. + +## Delegate#fluent(name) + +A unique type of "accessor" that works for a "fluent" API. When called as a +getter, the method returns the expected value. However, if the method is called +with a value, it will return itself so it can be chained. For example: + +```js +delegate(proto, 'request') + .fluent('query') + +// getter +var q = request.query(); + +// setter (chainable) +request + .query({ a: 1 }) + .query({ b: 2 }); +``` + +# License + + MIT diff --git a/NodjsPartieArduino/node_modules/delegates/index.js b/NodjsPartieArduino/node_modules/delegates/index.js new file mode 100644 index 0000000..17c222d --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/index.js @@ -0,0 +1,121 @@ + +/** + * Expose `Delegator`. + */ + +module.exports = Delegator; + +/** + * Initialize a delegator. + * + * @param {Object} proto + * @param {String} target + * @api public + */ + +function Delegator(proto, target) { + if (!(this instanceof Delegator)) return new Delegator(proto, target); + this.proto = proto; + this.target = target; + this.methods = []; + this.getters = []; + this.setters = []; + this.fluents = []; +} + +/** + * Delegate method `name`. + * + * @param {String} name + * @return {Delegator} self + * @api public + */ + +Delegator.prototype.method = function(name){ + var proto = this.proto; + var target = this.target; + this.methods.push(name); + + proto[name] = function(){ + return this[target][name].apply(this[target], arguments); + }; + + return this; +}; + +/** + * Delegator accessor `name`. + * + * @param {String} name + * @return {Delegator} self + * @api public + */ + +Delegator.prototype.access = function(name){ + return this.getter(name).setter(name); +}; + +/** + * Delegator getter `name`. + * + * @param {String} name + * @return {Delegator} self + * @api public + */ + +Delegator.prototype.getter = function(name){ + var proto = this.proto; + var target = this.target; + this.getters.push(name); + + proto.__defineGetter__(name, function(){ + return this[target][name]; + }); + + return this; +}; + +/** + * Delegator setter `name`. + * + * @param {String} name + * @return {Delegator} self + * @api public + */ + +Delegator.prototype.setter = function(name){ + var proto = this.proto; + var target = this.target; + this.setters.push(name); + + proto.__defineSetter__(name, function(val){ + return this[target][name] = val; + }); + + return this; +}; + +/** + * Delegator fluent accessor + * + * @param {String} name + * @return {Delegator} self + * @api public + */ + +Delegator.prototype.fluent = function (name) { + var proto = this.proto; + var target = this.target; + this.fluents.push(name); + + proto[name] = function(val){ + if ('undefined' != typeof val) { + this[target][name] = val; + return this; + } else { + return this[target][name]; + } + }; + + return this; +}; diff --git a/NodjsPartieArduino/node_modules/delegates/package.json b/NodjsPartieArduino/node_modules/delegates/package.json new file mode 100644 index 0000000..7bd6285 --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/package.json @@ -0,0 +1,84 @@ +{ + "_args": [ + [ + { + "raw": "delegates@^1.0.0", + "scope": null, + "escapedName": "delegates", + "name": "delegates", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/are-we-there-yet" + ] + ], + "_from": "delegates@>=1.0.0 <2.0.0", + "_id": "delegates@1.0.0", + "_inCache": true, + "_location": "/delegates", + "_nodeVersion": "4.2.1", + "_npmUser": { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + "_npmVersion": "3.3.12", + "_phantomChildren": {}, + "_requested": { + "raw": "delegates@^1.0.0", + "scope": null, + "escapedName": "delegates", + "name": "delegates", + "rawSpec": "^1.0.0", + "spec": ">=1.0.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/are-we-there-yet" + ], + "_resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "_shasum": "84c6e159b81904fdca59a0ef44cd870d31250f9a", + "_shrinkwrap": null, + "_spec": "delegates@^1.0.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/are-we-there-yet", + "bugs": { + "url": "https://github.com/visionmedia/node-delegates/issues" + }, + "dependencies": {}, + "description": "delegate methods and accessors to another property", + "devDependencies": { + "mocha": "*", + "should": "*" + }, + "directories": {}, + "dist": { + "shasum": "84c6e159b81904fdca59a0ef44cd870d31250f9a", + "tarball": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" + }, + "gitHead": "c4dc07ef1ed51c2b2a63f3585e5ef949ee577a49", + "homepage": "https://github.com/visionmedia/node-delegates#readme", + "keywords": [ + "delegate", + "delegation" + ], + "license": "MIT", + "maintainers": [ + { + "name": "tjholowaychuk", + "email": "tj@vision-media.ca" + }, + { + "name": "dominicbarnes", + "email": "dominic@dbarnes.info" + } + ], + "name": "delegates", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/visionmedia/node-delegates.git" + }, + "scripts": {}, + "version": "1.0.0" +} diff --git a/NodjsPartieArduino/node_modules/delegates/test/index.js b/NodjsPartieArduino/node_modules/delegates/test/index.js new file mode 100644 index 0000000..7b6e3d4 --- /dev/null +++ b/NodjsPartieArduino/node_modules/delegates/test/index.js @@ -0,0 +1,94 @@ + +var assert = require('assert'); +var delegate = require('..'); + +describe('.method(name)', function(){ + it('should delegate methods', function(){ + var obj = {}; + + obj.request = { + foo: function(bar){ + assert(this == obj.request); + return bar; + } + }; + + delegate(obj, 'request').method('foo'); + + obj.foo('something').should.equal('something'); + }) +}) + +describe('.getter(name)', function(){ + it('should delegate getters', function(){ + var obj = {}; + + obj.request = { + get type() { + return 'text/html'; + } + } + + delegate(obj, 'request').getter('type'); + + obj.type.should.equal('text/html'); + }) +}) + +describe('.setter(name)', function(){ + it('should delegate setters', function(){ + var obj = {}; + + obj.request = { + get type() { + return this._type.toUpperCase(); + }, + + set type(val) { + this._type = val; + } + } + + delegate(obj, 'request').setter('type'); + + obj.type = 'hey'; + obj.request.type.should.equal('HEY'); + }) +}) + +describe('.access(name)', function(){ + it('should delegate getters and setters', function(){ + var obj = {}; + + obj.request = { + get type() { + return this._type.toUpperCase(); + }, + + set type(val) { + this._type = val; + } + } + + delegate(obj, 'request').access('type'); + + obj.type = 'hey'; + obj.type.should.equal('HEY'); + }) +}) + +describe('.fluent(name)', function () { + it('should delegate in a fluent fashion', function () { + var obj = { + settings: { + env: 'development' + } + }; + + delegate(obj, 'settings').fluent('env'); + + obj.env().should.equal('development'); + obj.env('production').should.equal(obj); + obj.settings.env.should.equal('production'); + }) +}) diff --git a/NodjsPartieArduino/node_modules/depd/History.md b/NodjsPartieArduino/node_modules/depd/History.md new file mode 100644 index 0000000..507ecb8 --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/History.md @@ -0,0 +1,96 @@ +1.1.2 / 2018-01-11 +================== + + * perf: remove argument reassignment + * Support Node.js 0.6 to 9.x + +1.1.1 / 2017-07-27 +================== + + * Remove unnecessary `Buffer` loading + * Support Node.js 0.6 to 8.x + +1.1.0 / 2015-09-14 +================== + + * Enable strict mode in more places + * Support io.js 3.x + * Support io.js 2.x + * Support web browser loading + - Requires bundler like Browserify or webpack + +1.0.1 / 2015-04-07 +================== + + * Fix `TypeError`s when under `'use strict'` code + * Fix useless type name on auto-generated messages + * Support io.js 1.x + * Support Node.js 0.12 + +1.0.0 / 2014-09-17 +================== + + * No changes + +0.4.5 / 2014-09-09 +================== + + * Improve call speed to functions using the function wrapper + * Support Node.js 0.6 + +0.4.4 / 2014-07-27 +================== + + * Work-around v8 generating empty stack traces + +0.4.3 / 2014-07-26 +================== + + * Fix exception when global `Error.stackTraceLimit` is too low + +0.4.2 / 2014-07-19 +================== + + * Correct call site for wrapped functions and properties + +0.4.1 / 2014-07-19 +================== + + * Improve automatic message generation for function properties + +0.4.0 / 2014-07-19 +================== + + * Add `TRACE_DEPRECATION` environment variable + * Remove non-standard grey color from color output + * Support `--no-deprecation` argument + * Support `--trace-deprecation` argument + * Support `deprecate.property(fn, prop, message)` + +0.3.0 / 2014-06-16 +================== + + * Add `NO_DEPRECATION` environment variable + +0.2.0 / 2014-06-15 +================== + + * Add `deprecate.property(obj, prop, message)` + * Remove `supports-color` dependency for node.js 0.8 + +0.1.0 / 2014-06-15 +================== + + * Add `deprecate.function(fn, message)` + * Add `process.on('deprecation', fn)` emitter + * Automatically generate message when omitted from `deprecate()` + +0.0.1 / 2014-06-15 +================== + + * Fix warning for dynamic calls at singe call site + +0.0.0 / 2014-06-15 +================== + + * Initial implementation diff --git a/NodjsPartieArduino/node_modules/depd/LICENSE b/NodjsPartieArduino/node_modules/depd/LICENSE new file mode 100644 index 0000000..84441fb --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2014-2017 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/depd/Readme.md b/NodjsPartieArduino/node_modules/depd/Readme.md new file mode 100644 index 0000000..7790670 --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/Readme.md @@ -0,0 +1,280 @@ +# depd + +[![NPM Version][npm-version-image]][npm-url] +[![NPM Downloads][npm-downloads-image]][npm-url] +[![Node.js Version][node-image]][node-url] +[![Linux Build][travis-image]][travis-url] +[![Windows Build][appveyor-image]][appveyor-url] +[![Coverage Status][coveralls-image]][coveralls-url] + +Deprecate all the things + +> With great modules comes great responsibility; mark things deprecated! + +## Install + +This module is installed directly using `npm`: + +```sh +$ npm install depd +``` + +This module can also be bundled with systems like +[Browserify](http://browserify.org/) or [webpack](https://webpack.github.io/), +though by default this module will alter it's API to no longer display or +track deprecations. + +## API + + + +```js +var deprecate = require('depd')('my-module') +``` + +This library allows you to display deprecation messages to your users. +This library goes above and beyond with deprecation warnings by +introspection of the call stack (but only the bits that it is interested +in). + +Instead of just warning on the first invocation of a deprecated +function and never again, this module will warn on the first invocation +of a deprecated function per unique call site, making it ideal to alert +users of all deprecated uses across the code base, rather than just +whatever happens to execute first. + +The deprecation warnings from this module also include the file and line +information for the call into the module that the deprecated function was +in. + +**NOTE** this library has a similar interface to the `debug` module, and +this module uses the calling file to get the boundary for the call stacks, +so you should always create a new `deprecate` object in each file and not +within some central file. + +### depd(namespace) + +Create a new deprecate function that uses the given namespace name in the +messages and will display the call site prior to the stack entering the +file this function was called from. It is highly suggested you use the +name of your module as the namespace. + +### deprecate(message) + +Call this function from deprecated code to display a deprecation message. +This message will appear once per unique caller site. Caller site is the +first call site in the stack in a different file from the caller of this +function. + +If the message is omitted, a message is generated for you based on the site +of the `deprecate()` call and will display the name of the function called, +similar to the name displayed in a stack trace. + +### deprecate.function(fn, message) + +Call this function to wrap a given function in a deprecation message on any +call to the function. An optional message can be supplied to provide a custom +message. + +### deprecate.property(obj, prop, message) + +Call this function to wrap a given property on object in a deprecation message +on any accessing or setting of the property. An optional message can be supplied +to provide a custom message. + +The method must be called on the object where the property belongs (not +inherited from the prototype). + +If the property is a data descriptor, it will be converted to an accessor +descriptor in order to display the deprecation message. + +### process.on('deprecation', fn) + +This module will allow easy capturing of deprecation errors by emitting the +errors as the type "deprecation" on the global `process`. If there are no +listeners for this type, the errors are written to STDERR as normal, but if +there are any listeners, nothing will be written to STDERR and instead only +emitted. From there, you can write the errors in a different format or to a +logging source. + +The error represents the deprecation and is emitted only once with the same +rules as writing to STDERR. The error has the following properties: + + - `message` - This is the message given by the library + - `name` - This is always `'DeprecationError'` + - `namespace` - This is the namespace the deprecation came from + - `stack` - This is the stack of the call to the deprecated thing + +Example `error.stack` output: + +``` +DeprecationError: my-cool-module deprecated oldfunction + at Object. ([eval]-wrapper:6:22) + at Module._compile (module.js:456:26) + at evalScript (node.js:532:25) + at startup (node.js:80:7) + at node.js:902:3 +``` + +### process.env.NO_DEPRECATION + +As a user of modules that are deprecated, the environment variable `NO_DEPRECATION` +is provided as a quick solution to silencing deprecation warnings from being +output. The format of this is similar to that of `DEBUG`: + +```sh +$ NO_DEPRECATION=my-module,othermod node app.js +``` + +This will suppress deprecations from being output for "my-module" and "othermod". +The value is a list of comma-separated namespaces. To suppress every warning +across all namespaces, use the value `*` for a namespace. + +Providing the argument `--no-deprecation` to the `node` executable will suppress +all deprecations (only available in Node.js 0.8 or higher). + +**NOTE** This will not suppress the deperecations given to any "deprecation" +event listeners, just the output to STDERR. + +### process.env.TRACE_DEPRECATION + +As a user of modules that are deprecated, the environment variable `TRACE_DEPRECATION` +is provided as a solution to getting more detailed location information in deprecation +warnings by including the entire stack trace. The format of this is the same as +`NO_DEPRECATION`: + +```sh +$ TRACE_DEPRECATION=my-module,othermod node app.js +``` + +This will include stack traces for deprecations being output for "my-module" and +"othermod". The value is a list of comma-separated namespaces. To trace every +warning across all namespaces, use the value `*` for a namespace. + +Providing the argument `--trace-deprecation` to the `node` executable will trace +all deprecations (only available in Node.js 0.8 or higher). + +**NOTE** This will not trace the deperecations silenced by `NO_DEPRECATION`. + +## Display + +![message](files/message.png) + +When a user calls a function in your library that you mark deprecated, they +will see the following written to STDERR (in the given colors, similar colors +and layout to the `debug` module): + +``` +bright cyan bright yellow +| | reset cyan +| | | | +▼ ▼ ▼ ▼ +my-cool-module deprecated oldfunction [eval]-wrapper:6:22 +▲ ▲ ▲ ▲ +| | | | +namespace | | location of mycoolmod.oldfunction() call + | deprecation message + the word "deprecated" +``` + +If the user redirects their STDERR to a file or somewhere that does not support +colors, they see (similar layout to the `debug` module): + +``` +Sun, 15 Jun 2014 05:21:37 GMT my-cool-module deprecated oldfunction at [eval]-wrapper:6:22 +▲ ▲ ▲ ▲ ▲ +| | | | | +timestamp of message namespace | | location of mycoolmod.oldfunction() call + | deprecation message + the word "deprecated" +``` + +## Examples + +### Deprecating all calls to a function + +This will display a deprecated message about "oldfunction" being deprecated +from "my-module" on STDERR. + +```js +var deprecate = require('depd')('my-cool-module') + +// message automatically derived from function name +// Object.oldfunction +exports.oldfunction = deprecate.function(function oldfunction () { + // all calls to function are deprecated +}) + +// specific message +exports.oldfunction = deprecate.function(function () { + // all calls to function are deprecated +}, 'oldfunction') +``` + +### Conditionally deprecating a function call + +This will display a deprecated message about "weirdfunction" being deprecated +from "my-module" on STDERR when called with less than 2 arguments. + +```js +var deprecate = require('depd')('my-cool-module') + +exports.weirdfunction = function () { + if (arguments.length < 2) { + // calls with 0 or 1 args are deprecated + deprecate('weirdfunction args < 2') + } +} +``` + +When calling `deprecate` as a function, the warning is counted per call site +within your own module, so you can display different deprecations depending +on different situations and the users will still get all the warnings: + +```js +var deprecate = require('depd')('my-cool-module') + +exports.weirdfunction = function () { + if (arguments.length < 2) { + // calls with 0 or 1 args are deprecated + deprecate('weirdfunction args < 2') + } else if (typeof arguments[0] !== 'string') { + // calls with non-string first argument are deprecated + deprecate('weirdfunction non-string first arg') + } +} +``` + +### Deprecating property access + +This will display a deprecated message about "oldprop" being deprecated +from "my-module" on STDERR when accessed. A deprecation will be displayed +when setting the value and when getting the value. + +```js +var deprecate = require('depd')('my-cool-module') + +exports.oldprop = 'something' + +// message automatically derives from property name +deprecate.property(exports, 'oldprop') + +// explicit message +deprecate.property(exports, 'oldprop', 'oldprop >= 0.10') +``` + +## License + +[MIT](LICENSE) + +[npm-version-image]: https://img.shields.io/npm/v/depd.svg +[npm-downloads-image]: https://img.shields.io/npm/dm/depd.svg +[npm-url]: https://npmjs.org/package/depd +[travis-image]: https://img.shields.io/travis/dougwilson/nodejs-depd/master.svg?label=linux +[travis-url]: https://travis-ci.org/dougwilson/nodejs-depd +[appveyor-image]: https://img.shields.io/appveyor/ci/dougwilson/nodejs-depd/master.svg?label=windows +[appveyor-url]: https://ci.appveyor.com/project/dougwilson/nodejs-depd +[coveralls-image]: https://img.shields.io/coveralls/dougwilson/nodejs-depd/master.svg +[coveralls-url]: https://coveralls.io/r/dougwilson/nodejs-depd?branch=master +[node-image]: https://img.shields.io/node/v/depd.svg +[node-url]: https://nodejs.org/en/download/ diff --git a/NodjsPartieArduino/node_modules/depd/index.js b/NodjsPartieArduino/node_modules/depd/index.js new file mode 100644 index 0000000..d758d3c --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/index.js @@ -0,0 +1,522 @@ +/*! + * depd + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + */ + +/** + * Module dependencies. + */ + +var callSiteToString = require('./lib/compat').callSiteToString +var eventListenerCount = require('./lib/compat').eventListenerCount +var relative = require('path').relative + +/** + * Module exports. + */ + +module.exports = depd + +/** + * Get the path to base files on. + */ + +var basePath = process.cwd() + +/** + * Determine if namespace is contained in the string. + */ + +function containsNamespace (str, namespace) { + var vals = str.split(/[ ,]+/) + var ns = String(namespace).toLowerCase() + + for (var i = 0; i < vals.length; i++) { + var val = vals[i] + + // namespace contained + if (val && (val === '*' || val.toLowerCase() === ns)) { + return true + } + } + + return false +} + +/** + * Convert a data descriptor to accessor descriptor. + */ + +function convertDataDescriptorToAccessor (obj, prop, message) { + var descriptor = Object.getOwnPropertyDescriptor(obj, prop) + var value = descriptor.value + + descriptor.get = function getter () { return value } + + if (descriptor.writable) { + descriptor.set = function setter (val) { return (value = val) } + } + + delete descriptor.value + delete descriptor.writable + + Object.defineProperty(obj, prop, descriptor) + + return descriptor +} + +/** + * Create arguments string to keep arity. + */ + +function createArgumentsString (arity) { + var str = '' + + for (var i = 0; i < arity; i++) { + str += ', arg' + i + } + + return str.substr(2) +} + +/** + * Create stack string from stack. + */ + +function createStackString (stack) { + var str = this.name + ': ' + this.namespace + + if (this.message) { + str += ' deprecated ' + this.message + } + + for (var i = 0; i < stack.length; i++) { + str += '\n at ' + callSiteToString(stack[i]) + } + + return str +} + +/** + * Create deprecate for namespace in caller. + */ + +function depd (namespace) { + if (!namespace) { + throw new TypeError('argument namespace is required') + } + + var stack = getStack() + var site = callSiteLocation(stack[1]) + var file = site[0] + + function deprecate (message) { + // call to self as log + log.call(deprecate, message) + } + + deprecate._file = file + deprecate._ignored = isignored(namespace) + deprecate._namespace = namespace + deprecate._traced = istraced(namespace) + deprecate._warned = Object.create(null) + + deprecate.function = wrapfunction + deprecate.property = wrapproperty + + return deprecate +} + +/** + * Determine if namespace is ignored. + */ + +function isignored (namespace) { + /* istanbul ignore next: tested in a child processs */ + if (process.noDeprecation) { + // --no-deprecation support + return true + } + + var str = process.env.NO_DEPRECATION || '' + + // namespace ignored + return containsNamespace(str, namespace) +} + +/** + * Determine if namespace is traced. + */ + +function istraced (namespace) { + /* istanbul ignore next: tested in a child processs */ + if (process.traceDeprecation) { + // --trace-deprecation support + return true + } + + var str = process.env.TRACE_DEPRECATION || '' + + // namespace traced + return containsNamespace(str, namespace) +} + +/** + * Display deprecation message. + */ + +function log (message, site) { + var haslisteners = eventListenerCount(process, 'deprecation') !== 0 + + // abort early if no destination + if (!haslisteners && this._ignored) { + return + } + + var caller + var callFile + var callSite + var depSite + var i = 0 + var seen = false + var stack = getStack() + var file = this._file + + if (site) { + // provided site + depSite = site + callSite = callSiteLocation(stack[1]) + callSite.name = depSite.name + file = callSite[0] + } else { + // get call site + i = 2 + depSite = callSiteLocation(stack[i]) + callSite = depSite + } + + // get caller of deprecated thing in relation to file + for (; i < stack.length; i++) { + caller = callSiteLocation(stack[i]) + callFile = caller[0] + + if (callFile === file) { + seen = true + } else if (callFile === this._file) { + file = this._file + } else if (seen) { + break + } + } + + var key = caller + ? depSite.join(':') + '__' + caller.join(':') + : undefined + + if (key !== undefined && key in this._warned) { + // already warned + return + } + + this._warned[key] = true + + // generate automatic message from call site + var msg = message + if (!msg) { + msg = callSite === depSite || !callSite.name + ? defaultMessage(depSite) + : defaultMessage(callSite) + } + + // emit deprecation if listeners exist + if (haslisteners) { + var err = DeprecationError(this._namespace, msg, stack.slice(i)) + process.emit('deprecation', err) + return + } + + // format and write message + var format = process.stderr.isTTY + ? formatColor + : formatPlain + var output = format.call(this, msg, caller, stack.slice(i)) + process.stderr.write(output + '\n', 'utf8') +} + +/** + * Get call site location as array. + */ + +function callSiteLocation (callSite) { + var file = callSite.getFileName() || '' + var line = callSite.getLineNumber() + var colm = callSite.getColumnNumber() + + if (callSite.isEval()) { + file = callSite.getEvalOrigin() + ', ' + file + } + + var site = [file, line, colm] + + site.callSite = callSite + site.name = callSite.getFunctionName() + + return site +} + +/** + * Generate a default message from the site. + */ + +function defaultMessage (site) { + var callSite = site.callSite + var funcName = site.name + + // make useful anonymous name + if (!funcName) { + funcName = '' + } + + var context = callSite.getThis() + var typeName = context && callSite.getTypeName() + + // ignore useless type name + if (typeName === 'Object') { + typeName = undefined + } + + // make useful type name + if (typeName === 'Function') { + typeName = context.name || typeName + } + + return typeName && callSite.getMethodName() + ? typeName + '.' + funcName + : funcName +} + +/** + * Format deprecation message without color. + */ + +function formatPlain (msg, caller, stack) { + var timestamp = new Date().toUTCString() + + var formatted = timestamp + + ' ' + this._namespace + + ' deprecated ' + msg + + // add stack trace + if (this._traced) { + for (var i = 0; i < stack.length; i++) { + formatted += '\n at ' + callSiteToString(stack[i]) + } + + return formatted + } + + if (caller) { + formatted += ' at ' + formatLocation(caller) + } + + return formatted +} + +/** + * Format deprecation message with color. + */ + +function formatColor (msg, caller, stack) { + var formatted = '\x1b[36;1m' + this._namespace + '\x1b[22;39m' + // bold cyan + ' \x1b[33;1mdeprecated\x1b[22;39m' + // bold yellow + ' \x1b[0m' + msg + '\x1b[39m' // reset + + // add stack trace + if (this._traced) { + for (var i = 0; i < stack.length; i++) { + formatted += '\n \x1b[36mat ' + callSiteToString(stack[i]) + '\x1b[39m' // cyan + } + + return formatted + } + + if (caller) { + formatted += ' \x1b[36m' + formatLocation(caller) + '\x1b[39m' // cyan + } + + return formatted +} + +/** + * Format call site location. + */ + +function formatLocation (callSite) { + return relative(basePath, callSite[0]) + + ':' + callSite[1] + + ':' + callSite[2] +} + +/** + * Get the stack as array of call sites. + */ + +function getStack () { + var limit = Error.stackTraceLimit + var obj = {} + var prep = Error.prepareStackTrace + + Error.prepareStackTrace = prepareObjectStackTrace + Error.stackTraceLimit = Math.max(10, limit) + + // capture the stack + Error.captureStackTrace(obj) + + // slice this function off the top + var stack = obj.stack.slice(1) + + Error.prepareStackTrace = prep + Error.stackTraceLimit = limit + + return stack +} + +/** + * Capture call site stack from v8. + */ + +function prepareObjectStackTrace (obj, stack) { + return stack +} + +/** + * Return a wrapped function in a deprecation message. + */ + +function wrapfunction (fn, message) { + if (typeof fn !== 'function') { + throw new TypeError('argument fn must be a function') + } + + var args = createArgumentsString(fn.length) + var deprecate = this // eslint-disable-line no-unused-vars + var stack = getStack() + var site = callSiteLocation(stack[1]) + + site.name = fn.name + + // eslint-disable-next-line no-eval + var deprecatedfn = eval('(function (' + args + ') {\n' + + '"use strict"\n' + + 'log.call(deprecate, message, site)\n' + + 'return fn.apply(this, arguments)\n' + + '})') + + return deprecatedfn +} + +/** + * Wrap property in a deprecation message. + */ + +function wrapproperty (obj, prop, message) { + if (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) { + throw new TypeError('argument obj must be object') + } + + var descriptor = Object.getOwnPropertyDescriptor(obj, prop) + + if (!descriptor) { + throw new TypeError('must call property on owner object') + } + + if (!descriptor.configurable) { + throw new TypeError('property must be configurable') + } + + var deprecate = this + var stack = getStack() + var site = callSiteLocation(stack[1]) + + // set site name + site.name = prop + + // convert data descriptor + if ('value' in descriptor) { + descriptor = convertDataDescriptorToAccessor(obj, prop, message) + } + + var get = descriptor.get + var set = descriptor.set + + // wrap getter + if (typeof get === 'function') { + descriptor.get = function getter () { + log.call(deprecate, message, site) + return get.apply(this, arguments) + } + } + + // wrap setter + if (typeof set === 'function') { + descriptor.set = function setter () { + log.call(deprecate, message, site) + return set.apply(this, arguments) + } + } + + Object.defineProperty(obj, prop, descriptor) +} + +/** + * Create DeprecationError for deprecation + */ + +function DeprecationError (namespace, message, stack) { + var error = new Error() + var stackString + + Object.defineProperty(error, 'constructor', { + value: DeprecationError + }) + + Object.defineProperty(error, 'message', { + configurable: true, + enumerable: false, + value: message, + writable: true + }) + + Object.defineProperty(error, 'name', { + enumerable: false, + configurable: true, + value: 'DeprecationError', + writable: true + }) + + Object.defineProperty(error, 'namespace', { + configurable: true, + enumerable: false, + value: namespace, + writable: true + }) + + Object.defineProperty(error, 'stack', { + configurable: true, + enumerable: false, + get: function () { + if (stackString !== undefined) { + return stackString + } + + // prepare stack trace + return (stackString = createStackString.call(this, stack)) + }, + set: function setter (val) { + stackString = val + } + }) + + return error +} diff --git a/NodjsPartieArduino/node_modules/depd/lib/browser/index.js b/NodjsPartieArduino/node_modules/depd/lib/browser/index.js new file mode 100644 index 0000000..6be45cc --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/lib/browser/index.js @@ -0,0 +1,77 @@ +/*! + * depd + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module exports. + * @public + */ + +module.exports = depd + +/** + * Create deprecate for namespace in caller. + */ + +function depd (namespace) { + if (!namespace) { + throw new TypeError('argument namespace is required') + } + + function deprecate (message) { + // no-op in browser + } + + deprecate._file = undefined + deprecate._ignored = true + deprecate._namespace = namespace + deprecate._traced = false + deprecate._warned = Object.create(null) + + deprecate.function = wrapfunction + deprecate.property = wrapproperty + + return deprecate +} + +/** + * Return a wrapped function in a deprecation message. + * + * This is a no-op version of the wrapper, which does nothing but call + * validation. + */ + +function wrapfunction (fn, message) { + if (typeof fn !== 'function') { + throw new TypeError('argument fn must be a function') + } + + return fn +} + +/** + * Wrap property in a deprecation message. + * + * This is a no-op version of the wrapper, which does nothing but call + * validation. + */ + +function wrapproperty (obj, prop, message) { + if (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) { + throw new TypeError('argument obj must be object') + } + + var descriptor = Object.getOwnPropertyDescriptor(obj, prop) + + if (!descriptor) { + throw new TypeError('must call property on owner object') + } + + if (!descriptor.configurable) { + throw new TypeError('property must be configurable') + } +} diff --git a/NodjsPartieArduino/node_modules/depd/lib/compat/callsite-tostring.js b/NodjsPartieArduino/node_modules/depd/lib/compat/callsite-tostring.js new file mode 100644 index 0000000..73186dc --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/lib/compat/callsite-tostring.js @@ -0,0 +1,103 @@ +/*! + * depd + * Copyright(c) 2014 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module exports. + */ + +module.exports = callSiteToString + +/** + * Format a CallSite file location to a string. + */ + +function callSiteFileLocation (callSite) { + var fileName + var fileLocation = '' + + if (callSite.isNative()) { + fileLocation = 'native' + } else if (callSite.isEval()) { + fileName = callSite.getScriptNameOrSourceURL() + if (!fileName) { + fileLocation = callSite.getEvalOrigin() + } + } else { + fileName = callSite.getFileName() + } + + if (fileName) { + fileLocation += fileName + + var lineNumber = callSite.getLineNumber() + if (lineNumber != null) { + fileLocation += ':' + lineNumber + + var columnNumber = callSite.getColumnNumber() + if (columnNumber) { + fileLocation += ':' + columnNumber + } + } + } + + return fileLocation || 'unknown source' +} + +/** + * Format a CallSite to a string. + */ + +function callSiteToString (callSite) { + var addSuffix = true + var fileLocation = callSiteFileLocation(callSite) + var functionName = callSite.getFunctionName() + var isConstructor = callSite.isConstructor() + var isMethodCall = !(callSite.isToplevel() || isConstructor) + var line = '' + + if (isMethodCall) { + var methodName = callSite.getMethodName() + var typeName = getConstructorName(callSite) + + if (functionName) { + if (typeName && functionName.indexOf(typeName) !== 0) { + line += typeName + '.' + } + + line += functionName + + if (methodName && functionName.lastIndexOf('.' + methodName) !== functionName.length - methodName.length - 1) { + line += ' [as ' + methodName + ']' + } + } else { + line += typeName + '.' + (methodName || '') + } + } else if (isConstructor) { + line += 'new ' + (functionName || '') + } else if (functionName) { + line += functionName + } else { + addSuffix = false + line += fileLocation + } + + if (addSuffix) { + line += ' (' + fileLocation + ')' + } + + return line +} + +/** + * Get constructor name of reviver. + */ + +function getConstructorName (obj) { + var receiver = obj.receiver + return (receiver.constructor && receiver.constructor.name) || null +} diff --git a/NodjsPartieArduino/node_modules/depd/lib/compat/event-listener-count.js b/NodjsPartieArduino/node_modules/depd/lib/compat/event-listener-count.js new file mode 100644 index 0000000..3a8925d --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/lib/compat/event-listener-count.js @@ -0,0 +1,22 @@ +/*! + * depd + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module exports. + * @public + */ + +module.exports = eventListenerCount + +/** + * Get the count of listeners on an event emitter of a specific type. + */ + +function eventListenerCount (emitter, type) { + return emitter.listeners(type).length +} diff --git a/NodjsPartieArduino/node_modules/depd/lib/compat/index.js b/NodjsPartieArduino/node_modules/depd/lib/compat/index.js new file mode 100644 index 0000000..955b333 --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/lib/compat/index.js @@ -0,0 +1,79 @@ +/*! + * depd + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var EventEmitter = require('events').EventEmitter + +/** + * Module exports. + * @public + */ + +lazyProperty(module.exports, 'callSiteToString', function callSiteToString () { + var limit = Error.stackTraceLimit + var obj = {} + var prep = Error.prepareStackTrace + + function prepareObjectStackTrace (obj, stack) { + return stack + } + + Error.prepareStackTrace = prepareObjectStackTrace + Error.stackTraceLimit = 2 + + // capture the stack + Error.captureStackTrace(obj) + + // slice the stack + var stack = obj.stack.slice() + + Error.prepareStackTrace = prep + Error.stackTraceLimit = limit + + return stack[0].toString ? toString : require('./callsite-tostring') +}) + +lazyProperty(module.exports, 'eventListenerCount', function eventListenerCount () { + return EventEmitter.listenerCount || require('./event-listener-count') +}) + +/** + * Define a lazy property. + */ + +function lazyProperty (obj, prop, getter) { + function get () { + var val = getter() + + Object.defineProperty(obj, prop, { + configurable: true, + enumerable: true, + value: val + }) + + return val + } + + Object.defineProperty(obj, prop, { + configurable: true, + enumerable: true, + get: get + }) +} + +/** + * Call toString() on the obj + */ + +function toString (obj) { + return obj.toString() +} diff --git a/NodjsPartieArduino/node_modules/depd/package.json b/NodjsPartieArduino/node_modules/depd/package.json new file mode 100644 index 0000000..05c1016 --- /dev/null +++ b/NodjsPartieArduino/node_modules/depd/package.json @@ -0,0 +1,115 @@ +{ + "_args": [ + [ + { + "raw": "depd@~1.1.2", + "scope": null, + "escapedName": "depd", + "name": "depd", + "rawSpec": "~1.1.2", + "spec": ">=1.1.2 <1.2.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "depd@>=1.1.2 <1.2.0", + "_id": "depd@1.1.2", + "_inCache": true, + "_location": "/depd", + "_nodeVersion": "6.11.1", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/depd-1.1.2.tgz_1515736023686_0.5012104702182114" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "3.10.10", + "_phantomChildren": {}, + "_requested": { + "raw": "depd@~1.1.2", + "scope": null, + "escapedName": "depd", + "name": "depd", + "rawSpec": "~1.1.2", + "spec": ">=1.1.2 <1.2.0", + "type": "range" + }, + "_requiredBy": [ + "/body-parser", + "/express", + "/http-errors", + "/send" + ], + "_resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "_shasum": "9bcd52e14c097763e749b274c4346ed2e560b5a9", + "_shrinkwrap": null, + "_spec": "depd@~1.1.2", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "author": { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + }, + "browser": "lib/browser/index.js", + "bugs": { + "url": "https://github.com/dougwilson/nodejs-depd/issues" + }, + "dependencies": {}, + "description": "Deprecate all the things", + "devDependencies": { + "beautify-benchmark": "0.2.4", + "benchmark": "2.1.4", + "eslint": "3.19.0", + "eslint-config-standard": "7.1.0", + "eslint-plugin-markdown": "1.0.0-beta.7", + "eslint-plugin-promise": "3.6.0", + "eslint-plugin-standard": "3.0.1", + "istanbul": "0.4.5", + "mocha": "~1.21.5" + }, + "directories": {}, + "dist": { + "shasum": "9bcd52e14c097763e749b274c4346ed2e560b5a9", + "tarball": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" + }, + "engines": { + "node": ">= 0.6" + }, + "files": [ + "lib/", + "History.md", + "LICENSE", + "index.js", + "Readme.md" + ], + "gitHead": "9a789740084d4f07a3a611432435ae4671f722ff", + "homepage": "https://github.com/dougwilson/nodejs-depd#readme", + "keywords": [ + "deprecate", + "deprecated" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "depd", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/dougwilson/nodejs-depd.git" + }, + "scripts": { + "bench": "node benchmark/index.js", + "lint": "eslint --plugin markdown --ext js,md .", + "test": "mocha --reporter spec --bail test/", + "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --no-exit test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot test/" + }, + "version": "1.1.2" +} diff --git a/NodjsPartieArduino/node_modules/destroy/LICENSE b/NodjsPartieArduino/node_modules/destroy/LICENSE new file mode 100644 index 0000000..a7ae8ee --- /dev/null +++ b/NodjsPartieArduino/node_modules/destroy/LICENSE @@ -0,0 +1,22 @@ + +The MIT License (MIT) + +Copyright (c) 2014 Jonathan Ong me@jongleberry.com + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/destroy/README.md b/NodjsPartieArduino/node_modules/destroy/README.md new file mode 100644 index 0000000..6474bc3 --- /dev/null +++ b/NodjsPartieArduino/node_modules/destroy/README.md @@ -0,0 +1,60 @@ +# Destroy + +[![NPM version][npm-image]][npm-url] +[![Build status][travis-image]][travis-url] +[![Test coverage][coveralls-image]][coveralls-url] +[![License][license-image]][license-url] +[![Downloads][downloads-image]][downloads-url] +[![Gittip][gittip-image]][gittip-url] + +Destroy a stream. + +This module is meant to ensure a stream gets destroyed, handling different APIs +and Node.js bugs. + +## API + +```js +var destroy = require('destroy') +``` + +### destroy(stream) + +Destroy the given stream. In most cases, this is identical to a simple +`stream.destroy()` call. The rules are as follows for a given stream: + + 1. If the `stream` is an instance of `ReadStream`, then call `stream.destroy()` + and add a listener to the `open` event to call `stream.close()` if it is + fired. This is for a Node.js bug that will leak a file descriptor if + `.destroy()` is called before `open`. + 2. If the `stream` is not an instance of `Stream`, then nothing happens. + 3. If the `stream` has a `.destroy()` method, then call it. + +The function returns the `stream` passed in as the argument. + +## Example + +```js +var destroy = require('destroy') + +var fs = require('fs') +var stream = fs.createReadStream('package.json') + +// ... and later +destroy(stream) +``` + +[npm-image]: https://img.shields.io/npm/v/destroy.svg?style=flat-square +[npm-url]: https://npmjs.org/package/destroy +[github-tag]: http://img.shields.io/github/tag/stream-utils/destroy.svg?style=flat-square +[github-url]: https://github.com/stream-utils/destroy/tags +[travis-image]: https://img.shields.io/travis/stream-utils/destroy.svg?style=flat-square +[travis-url]: https://travis-ci.org/stream-utils/destroy +[coveralls-image]: https://img.shields.io/coveralls/stream-utils/destroy.svg?style=flat-square +[coveralls-url]: https://coveralls.io/r/stream-utils/destroy?branch=master +[license-image]: http://img.shields.io/npm/l/destroy.svg?style=flat-square +[license-url]: LICENSE.md +[downloads-image]: http://img.shields.io/npm/dm/destroy.svg?style=flat-square +[downloads-url]: https://npmjs.org/package/destroy +[gittip-image]: https://img.shields.io/gittip/jonathanong.svg?style=flat-square +[gittip-url]: https://www.gittip.com/jonathanong/ diff --git a/NodjsPartieArduino/node_modules/destroy/index.js b/NodjsPartieArduino/node_modules/destroy/index.js new file mode 100644 index 0000000..6da2d26 --- /dev/null +++ b/NodjsPartieArduino/node_modules/destroy/index.js @@ -0,0 +1,75 @@ +/*! + * destroy + * Copyright(c) 2014 Jonathan Ong + * MIT Licensed + */ + +'use strict' + +/** + * Module dependencies. + * @private + */ + +var ReadStream = require('fs').ReadStream +var Stream = require('stream') + +/** + * Module exports. + * @public + */ + +module.exports = destroy + +/** + * Destroy a stream. + * + * @param {object} stream + * @public + */ + +function destroy(stream) { + if (stream instanceof ReadStream) { + return destroyReadStream(stream) + } + + if (!(stream instanceof Stream)) { + return stream + } + + if (typeof stream.destroy === 'function') { + stream.destroy() + } + + return stream +} + +/** + * Destroy a ReadStream. + * + * @param {object} stream + * @private + */ + +function destroyReadStream(stream) { + stream.destroy() + + if (typeof stream.close === 'function') { + // node.js core bug work-around + stream.on('open', onOpenClose) + } + + return stream +} + +/** + * On open handler to close stream. + * @private + */ + +function onOpenClose() { + if (typeof this.fd === 'number') { + // actually close down the fd + this.close() + } +} diff --git a/NodjsPartieArduino/node_modules/destroy/package.json b/NodjsPartieArduino/node_modules/destroy/package.json new file mode 100644 index 0000000..2d7938f --- /dev/null +++ b/NodjsPartieArduino/node_modules/destroy/package.json @@ -0,0 +1,106 @@ +{ + "_args": [ + [ + { + "raw": "destroy@~1.0.4", + "scope": null, + "escapedName": "destroy", + "name": "destroy", + "rawSpec": "~1.0.4", + "spec": ">=1.0.4 <1.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/send" + ] + ], + "_from": "destroy@>=1.0.4 <1.1.0", + "_id": "destroy@1.0.4", + "_inCache": true, + "_location": "/destroy", + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "1.4.28", + "_phantomChildren": {}, + "_requested": { + "raw": "destroy@~1.0.4", + "scope": null, + "escapedName": "destroy", + "name": "destroy", + "rawSpec": "~1.0.4", + "spec": ">=1.0.4 <1.1.0", + "type": "range" + }, + "_requiredBy": [ + "/send" + ], + "_resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "_shasum": "978857442c44749e4206613e37946205826abd80", + "_shrinkwrap": null, + "_spec": "destroy@~1.0.4", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/send", + "author": { + "name": "Jonathan Ong", + "email": "me@jongleberry.com", + "url": "http://jongleberry.com" + }, + "bugs": { + "url": "https://github.com/stream-utils/destroy/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + } + ], + "dependencies": {}, + "description": "destroy a stream if possible", + "devDependencies": { + "istanbul": "0.4.2", + "mocha": "2.3.4" + }, + "directories": {}, + "dist": { + "shasum": "978857442c44749e4206613e37946205826abd80", + "tarball": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz" + }, + "files": [ + "index.js", + "LICENSE" + ], + "gitHead": "86edea01456f5fa1027f6a47250c34c713cbcc3b", + "homepage": "https://github.com/stream-utils/destroy", + "keywords": [ + "stream", + "streams", + "destroy", + "cleanup", + "leak", + "fd" + ], + "license": "MIT", + "maintainers": [ + { + "name": "jongleberry", + "email": "jonathanrichardong@gmail.com" + }, + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "destroy", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/stream-utils/destroy.git" + }, + "scripts": { + "test": "mocha --reporter spec", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot", + "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter dot" + }, + "version": "1.0.4" +} diff --git a/NodjsPartieArduino/node_modules/detect-libc/LICENSE b/NodjsPartieArduino/node_modules/detect-libc/LICENSE new file mode 100644 index 0000000..8dada3e --- /dev/null +++ b/NodjsPartieArduino/node_modules/detect-libc/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/NodjsPartieArduino/node_modules/detect-libc/README.md b/NodjsPartieArduino/node_modules/detect-libc/README.md new file mode 100644 index 0000000..3176357 --- /dev/null +++ b/NodjsPartieArduino/node_modules/detect-libc/README.md @@ -0,0 +1,78 @@ +# detect-libc + +Node.js module to detect the C standard library (libc) implementation +family and version in use on a given Linux system. + +Provides a value suitable for use with the `LIBC` option of +[prebuild](https://www.npmjs.com/package/prebuild), +[prebuild-ci](https://www.npmjs.com/package/prebuild-ci) and +[prebuild-install](https://www.npmjs.com/package/prebuild-install), +therefore allowing build and provision of pre-compiled binaries +for musl-based Linux e.g. Alpine as well as glibc-based. + +Currently supports libc detection of `glibc` and `musl`. + +## Install + +```sh +npm install detect-libc +``` + +## Usage + +### API + +```js +const { GLIBC, MUSL, family, version, isNonGlibcLinux } = require('detect-libc'); +``` + +* `GLIBC` is a String containing the value "glibc" for comparison with `family`. +* `MUSL` is a String containing the value "musl" for comparison with `family`. +* `family` is a String representing the system libc family. +* `version` is a String representing the system libc version number. +* `isNonGlibcLinux` is a Boolean representing whether the system is a non-glibc Linux, e.g. Alpine. + +### detect-libc command line tool + +When run on a Linux system with a non-glibc libc, +the child command will be run with the `LIBC` environment variable +set to the relevant value. + +On all other platforms will run the child command as-is. + +The command line feature requires `spawnSync` provided by Node v0.12+. + +```sh +detect-libc child-command +``` + +## Integrating with prebuild + +```json + "scripts": { + "install": "detect-libc prebuild-install || node-gyp rebuild", + "test": "mocha && detect-libc prebuild-ci" + }, + "dependencies": { + "detect-libc": "^1.0.2", + "prebuild-install": "^2.2.0" + }, + "devDependencies": { + "prebuild": "^6.2.1", + "prebuild-ci": "^2.2.3" + } +``` + +## Licence + +Copyright 2017 Lovell Fuller + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0.html) + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/NodjsPartieArduino/node_modules/detect-libc/bin/detect-libc.js b/NodjsPartieArduino/node_modules/detect-libc/bin/detect-libc.js new file mode 100644 index 0000000..5486127 --- /dev/null +++ b/NodjsPartieArduino/node_modules/detect-libc/bin/detect-libc.js @@ -0,0 +1,18 @@ +#!/usr/bin/env node + +'use strict'; + +var spawnSync = require('child_process').spawnSync; +var libc = require('../'); + +var spawnOptions = { + env: process.env, + shell: true, + stdio: 'inherit' +}; + +if (libc.isNonGlibcLinux) { + spawnOptions.env.LIBC = process.env.LIBC || libc.family; +} + +process.exit(spawnSync(process.argv[2], process.argv.slice(3), spawnOptions).status); diff --git a/NodjsPartieArduino/node_modules/detect-libc/lib/detect-libc.js b/NodjsPartieArduino/node_modules/detect-libc/lib/detect-libc.js new file mode 100644 index 0000000..1855fe1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/detect-libc/lib/detect-libc.js @@ -0,0 +1,92 @@ +'use strict'; + +var platform = require('os').platform(); +var spawnSync = require('child_process').spawnSync; +var readdirSync = require('fs').readdirSync; + +var GLIBC = 'glibc'; +var MUSL = 'musl'; + +var spawnOptions = { + encoding: 'utf8', + env: process.env +}; + +if (!spawnSync) { + spawnSync = function () { + return { status: 126, stdout: '', stderr: '' }; + }; +} + +function contains (needle) { + return function (haystack) { + return haystack.indexOf(needle) !== -1; + }; +} + +function versionFromMuslLdd (out) { + return out.split(/[\r\n]+/)[1].trim().split(/\s/)[1]; +} + +function safeReaddirSync (path) { + try { + return readdirSync(path); + } catch (e) {} + return []; +} + +var family = ''; +var version = ''; +var method = ''; + +if (platform === 'linux') { + // Try getconf + var glibc = spawnSync('getconf', ['GNU_LIBC_VERSION'], spawnOptions); + if (glibc.status === 0) { + family = GLIBC; + version = glibc.stdout.trim().split(' ')[1]; + method = 'getconf'; + } else { + // Try ldd + var ldd = spawnSync('ldd', ['--version'], spawnOptions); + if (ldd.status === 0 && ldd.stdout.indexOf(MUSL) !== -1) { + family = MUSL; + version = versionFromMuslLdd(ldd.stdout); + method = 'ldd'; + } else if (ldd.status === 1 && ldd.stderr.indexOf(MUSL) !== -1) { + family = MUSL; + version = versionFromMuslLdd(ldd.stderr); + method = 'ldd'; + } else { + // Try filesystem (family only) + var lib = safeReaddirSync('/lib'); + if (lib.some(contains('-linux-gnu'))) { + family = GLIBC; + method = 'filesystem'; + } else if (lib.some(contains('libc.musl-'))) { + family = MUSL; + method = 'filesystem'; + } else if (lib.some(contains('ld-musl-'))) { + family = MUSL; + method = 'filesystem'; + } else { + var usrSbin = safeReaddirSync('/usr/sbin'); + if (usrSbin.some(contains('glibc'))) { + family = GLIBC; + method = 'filesystem'; + } + } + } + } +} + +var isNonGlibcLinux = (family !== '' && family !== GLIBC); + +module.exports = { + GLIBC: GLIBC, + MUSL: MUSL, + family: family, + version: version, + method: method, + isNonGlibcLinux: isNonGlibcLinux +}; diff --git a/NodjsPartieArduino/node_modules/detect-libc/package.json b/NodjsPartieArduino/node_modules/detect-libc/package.json new file mode 100644 index 0000000..e2449d7 --- /dev/null +++ b/NodjsPartieArduino/node_modules/detect-libc/package.json @@ -0,0 +1,106 @@ +{ + "_args": [ + [ + { + "raw": "detect-libc@^1.0.3", + "scope": null, + "escapedName": "detect-libc", + "name": "detect-libc", + "rawSpec": "^1.0.3", + "spec": ">=1.0.3 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prebuild-install" + ] + ], + "_from": "detect-libc@>=1.0.3 <2.0.0", + "_id": "detect-libc@1.0.3", + "_inCache": true, + "_location": "/detect-libc", + "_nodeVersion": "8.1.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/detect-libc-1.0.3.tgz_1511377655799_0.23113705799914896" + }, + "_npmUser": { + "name": "lovell", + "email": "npm@lovell.info" + }, + "_npmVersion": "3.10.10", + "_phantomChildren": {}, + "_requested": { + "raw": "detect-libc@^1.0.3", + "scope": null, + "escapedName": "detect-libc", + "name": "detect-libc", + "rawSpec": "^1.0.3", + "spec": ">=1.0.3 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/prebuild-install" + ], + "_resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "_shasum": "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b", + "_shrinkwrap": null, + "_spec": "detect-libc@^1.0.3", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/prebuild-install", + "author": { + "name": "Lovell Fuller", + "email": "npm@lovell.info" + }, + "bin": { + "detect-libc": "./bin/detect-libc.js" + }, + "bugs": { + "url": "https://github.com/lovell/detect-libc/issues" + }, + "contributors": [ + { + "name": "Niklas Salmoukas", + "email": "niklas@salmoukas.com" + } + ], + "dependencies": {}, + "description": "Node.js module to detect the C standard library (libc) implementation family and version", + "devDependencies": { + "ava": "^0.23.0", + "nyc": "^11.3.0", + "proxyquire": "^1.8.0", + "semistandard": "^11.0.0" + }, + "directories": {}, + "dist": { + "shasum": "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b", + "tarball": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz" + }, + "engines": { + "node": ">=0.10" + }, + "gitHead": "88df1a5950bf3cd9bffa1e0137ab6471c4546118", + "homepage": "https://github.com/lovell/detect-libc#readme", + "keywords": [ + "libc", + "glibc", + "musl" + ], + "license": "Apache-2.0", + "main": "lib/detect-libc.js", + "maintainers": [ + { + "name": "lovell", + "email": "npm@lovell.info" + } + ], + "name": "detect-libc", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/lovell/detect-libc.git" + }, + "scripts": { + "test": "semistandard && nyc --reporter=lcov ava" + }, + "version": "1.0.3" +} diff --git a/NodjsPartieArduino/node_modules/ee-first/LICENSE b/NodjsPartieArduino/node_modules/ee-first/LICENSE new file mode 100644 index 0000000..a7ae8ee --- /dev/null +++ b/NodjsPartieArduino/node_modules/ee-first/LICENSE @@ -0,0 +1,22 @@ + +The MIT License (MIT) + +Copyright (c) 2014 Jonathan Ong me@jongleberry.com + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/ee-first/README.md b/NodjsPartieArduino/node_modules/ee-first/README.md new file mode 100644 index 0000000..cbd2478 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ee-first/README.md @@ -0,0 +1,80 @@ +# EE First + +[![NPM version][npm-image]][npm-url] +[![Build status][travis-image]][travis-url] +[![Test coverage][coveralls-image]][coveralls-url] +[![License][license-image]][license-url] +[![Downloads][downloads-image]][downloads-url] +[![Gittip][gittip-image]][gittip-url] + +Get the first event in a set of event emitters and event pairs, +then clean up after itself. + +## Install + +```sh +$ npm install ee-first +``` + +## API + +```js +var first = require('ee-first') +``` + +### first(arr, listener) + +Invoke `listener` on the first event from the list specified in `arr`. `arr` is +an array of arrays, with each array in the format `[ee, ...event]`. `listener` +will be called only once, the first time any of the given events are emitted. If +`error` is one of the listened events, then if that fires first, the `listener` +will be given the `err` argument. + +The `listener` is invoked as `listener(err, ee, event, args)`, where `err` is the +first argument emitted from an `error` event, if applicable; `ee` is the event +emitter that fired; `event` is the string event name that fired; and `args` is an +array of the arguments that were emitted on the event. + +```js +var ee1 = new EventEmitter() +var ee2 = new EventEmitter() + +first([ + [ee1, 'close', 'end', 'error'], + [ee2, 'error'] +], function (err, ee, event, args) { + // listener invoked +}) +``` + +#### .cancel() + +The group of listeners can be cancelled before being invoked and have all the event +listeners removed from the underlying event emitters. + +```js +var thunk = first([ + [ee1, 'close', 'end', 'error'], + [ee2, 'error'] +], function (err, ee, event, args) { + // listener invoked +}) + +// cancel and clean up +thunk.cancel() +``` + +[npm-image]: https://img.shields.io/npm/v/ee-first.svg?style=flat-square +[npm-url]: https://npmjs.org/package/ee-first +[github-tag]: http://img.shields.io/github/tag/jonathanong/ee-first.svg?style=flat-square +[github-url]: https://github.com/jonathanong/ee-first/tags +[travis-image]: https://img.shields.io/travis/jonathanong/ee-first.svg?style=flat-square +[travis-url]: https://travis-ci.org/jonathanong/ee-first +[coveralls-image]: https://img.shields.io/coveralls/jonathanong/ee-first.svg?style=flat-square +[coveralls-url]: https://coveralls.io/r/jonathanong/ee-first?branch=master +[license-image]: http://img.shields.io/npm/l/ee-first.svg?style=flat-square +[license-url]: LICENSE.md +[downloads-image]: http://img.shields.io/npm/dm/ee-first.svg?style=flat-square +[downloads-url]: https://npmjs.org/package/ee-first +[gittip-image]: https://img.shields.io/gittip/jonathanong.svg?style=flat-square +[gittip-url]: https://www.gittip.com/jonathanong/ diff --git a/NodjsPartieArduino/node_modules/ee-first/index.js b/NodjsPartieArduino/node_modules/ee-first/index.js new file mode 100644 index 0000000..501287c --- /dev/null +++ b/NodjsPartieArduino/node_modules/ee-first/index.js @@ -0,0 +1,95 @@ +/*! + * ee-first + * Copyright(c) 2014 Jonathan Ong + * MIT Licensed + */ + +'use strict' + +/** + * Module exports. + * @public + */ + +module.exports = first + +/** + * Get the first event in a set of event emitters and event pairs. + * + * @param {array} stuff + * @param {function} done + * @public + */ + +function first(stuff, done) { + if (!Array.isArray(stuff)) + throw new TypeError('arg must be an array of [ee, events...] arrays') + + var cleanups = [] + + for (var i = 0; i < stuff.length; i++) { + var arr = stuff[i] + + if (!Array.isArray(arr) || arr.length < 2) + throw new TypeError('each array member must be [ee, events...]') + + var ee = arr[0] + + for (var j = 1; j < arr.length; j++) { + var event = arr[j] + var fn = listener(event, callback) + + // listen to the event + ee.on(event, fn) + // push this listener to the list of cleanups + cleanups.push({ + ee: ee, + event: event, + fn: fn, + }) + } + } + + function callback() { + cleanup() + done.apply(null, arguments) + } + + function cleanup() { + var x + for (var i = 0; i < cleanups.length; i++) { + x = cleanups[i] + x.ee.removeListener(x.event, x.fn) + } + } + + function thunk(fn) { + done = fn + } + + thunk.cancel = cleanup + + return thunk +} + +/** + * Create the event listener. + * @private + */ + +function listener(event, done) { + return function onevent(arg1) { + var args = new Array(arguments.length) + var ee = this + var err = event === 'error' + ? arg1 + : null + + // copy args to prevent arguments escaping scope + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i] + } + + done(err, ee, event, args) + } +} diff --git a/NodjsPartieArduino/node_modules/ee-first/package.json b/NodjsPartieArduino/node_modules/ee-first/package.json new file mode 100644 index 0000000..6d74453 --- /dev/null +++ b/NodjsPartieArduino/node_modules/ee-first/package.json @@ -0,0 +1,98 @@ +{ + "_args": [ + [ + { + "raw": "ee-first@1.1.1", + "scope": null, + "escapedName": "ee-first", + "name": "ee-first", + "rawSpec": "1.1.1", + "spec": "1.1.1", + "type": "version" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/on-finished" + ] + ], + "_from": "ee-first@1.1.1", + "_id": "ee-first@1.1.1", + "_inCache": true, + "_location": "/ee-first", + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "1.4.28", + "_phantomChildren": {}, + "_requested": { + "raw": "ee-first@1.1.1", + "scope": null, + "escapedName": "ee-first", + "name": "ee-first", + "rawSpec": "1.1.1", + "spec": "1.1.1", + "type": "version" + }, + "_requiredBy": [ + "/on-finished" + ], + "_resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "_shasum": "590c61156b0ae2f4f0255732a158b266bc56b21d", + "_shrinkwrap": null, + "_spec": "ee-first@1.1.1", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/on-finished", + "author": { + "name": "Jonathan Ong", + "email": "me@jongleberry.com", + "url": "http://jongleberry.com" + }, + "bugs": { + "url": "https://github.com/jonathanong/ee-first/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + } + ], + "dependencies": {}, + "description": "return the first event in a set of ee/event pairs", + "devDependencies": { + "istanbul": "0.3.9", + "mocha": "2.2.5" + }, + "directories": {}, + "dist": { + "shasum": "590c61156b0ae2f4f0255732a158b266bc56b21d", + "tarball": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" + }, + "files": [ + "index.js", + "LICENSE" + ], + "gitHead": "512e0ce4cc3643f603708f965a97b61b1a9c0441", + "homepage": "https://github.com/jonathanong/ee-first", + "license": "MIT", + "maintainers": [ + { + "name": "jongleberry", + "email": "jonathanrichardong@gmail.com" + }, + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "ee-first", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/jonathanong/ee-first.git" + }, + "scripts": { + "test": "mocha --reporter spec --bail --check-leaks test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", + "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" + }, + "version": "1.1.1" +} diff --git a/NodjsPartieArduino/node_modules/encodeurl/HISTORY.md b/NodjsPartieArduino/node_modules/encodeurl/HISTORY.md new file mode 100644 index 0000000..41313b2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/encodeurl/HISTORY.md @@ -0,0 +1,14 @@ +1.0.2 / 2018-01-21 +================== + + * Fix encoding `%` as last character + +1.0.1 / 2016-06-09 +================== + + * Fix encoding unpaired surrogates at start/end of string + +1.0.0 / 2016-06-08 +================== + + * Initial release diff --git a/NodjsPartieArduino/node_modules/encodeurl/LICENSE b/NodjsPartieArduino/node_modules/encodeurl/LICENSE new file mode 100644 index 0000000..8812229 --- /dev/null +++ b/NodjsPartieArduino/node_modules/encodeurl/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2016 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/encodeurl/README.md b/NodjsPartieArduino/node_modules/encodeurl/README.md new file mode 100644 index 0000000..127c5a0 --- /dev/null +++ b/NodjsPartieArduino/node_modules/encodeurl/README.md @@ -0,0 +1,128 @@ +# encodeurl + +[![NPM Version][npm-image]][npm-url] +[![NPM Downloads][downloads-image]][downloads-url] +[![Node.js Version][node-version-image]][node-version-url] +[![Build Status][travis-image]][travis-url] +[![Test Coverage][coveralls-image]][coveralls-url] + +Encode a URL to a percent-encoded form, excluding already-encoded sequences + +## Installation + +This is a [Node.js](https://nodejs.org/en/) module available through the +[npm registry](https://www.npmjs.com/). Installation is done using the +[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally): + +```sh +$ npm install encodeurl +``` + +## API + +```js +var encodeUrl = require('encodeurl') +``` + +### encodeUrl(url) + +Encode a URL to a percent-encoded form, excluding already-encoded sequences. + +This function will take an already-encoded URL and encode all the non-URL +code points (as UTF-8 byte sequences). This function will not encode the +"%" character unless it is not part of a valid sequence (`%20` will be +left as-is, but `%foo` will be encoded as `%25foo`). + +This encode is meant to be "safe" and does not throw errors. It will try as +hard as it can to properly encode the given URL, including replacing any raw, +unpaired surrogate pairs with the Unicode replacement character prior to +encoding. + +This function is _similar_ to the intrinsic function `encodeURI`, except it +will not encode the `%` character if that is part of a valid sequence, will +not encode `[` and `]` (for IPv6 hostnames) and will replace raw, unpaired +surrogate pairs with the Unicode replacement character (instead of throwing). + +## Examples + +### Encode a URL containing user-controled data + +```js +var encodeUrl = require('encodeurl') +var escapeHtml = require('escape-html') + +http.createServer(function onRequest (req, res) { + // get encoded form of inbound url + var url = encodeUrl(req.url) + + // create html message + var body = '

Location ' + escapeHtml(url) + ' not found

' + + // send a 404 + res.statusCode = 404 + res.setHeader('Content-Type', 'text/html; charset=UTF-8') + res.setHeader('Content-Length', String(Buffer.byteLength(body, 'utf-8'))) + res.end(body, 'utf-8') +}) +``` + +### Encode a URL for use in a header field + +```js +var encodeUrl = require('encodeurl') +var escapeHtml = require('escape-html') +var url = require('url') + +http.createServer(function onRequest (req, res) { + // parse inbound url + var href = url.parse(req) + + // set new host for redirect + href.host = 'localhost' + href.protocol = 'https:' + href.slashes = true + + // create location header + var location = encodeUrl(url.format(href)) + + // create html message + var body = '

Redirecting to new site: ' + escapeHtml(location) + '

' + + // send a 301 + res.statusCode = 301 + res.setHeader('Content-Type', 'text/html; charset=UTF-8') + res.setHeader('Content-Length', String(Buffer.byteLength(body, 'utf-8'))) + res.setHeader('Location', location) + res.end(body, 'utf-8') +}) +``` + +## Testing + +```sh +$ npm test +$ npm run lint +``` + +## References + +- [RFC 3986: Uniform Resource Identifier (URI): Generic Syntax][rfc-3986] +- [WHATWG URL Living Standard][whatwg-url] + +[rfc-3986]: https://tools.ietf.org/html/rfc3986 +[whatwg-url]: https://url.spec.whatwg.org/ + +## License + +[MIT](LICENSE) + +[npm-image]: https://img.shields.io/npm/v/encodeurl.svg +[npm-url]: https://npmjs.org/package/encodeurl +[node-version-image]: https://img.shields.io/node/v/encodeurl.svg +[node-version-url]: https://nodejs.org/en/download +[travis-image]: https://img.shields.io/travis/pillarjs/encodeurl.svg +[travis-url]: https://travis-ci.org/pillarjs/encodeurl +[coveralls-image]: https://img.shields.io/coveralls/pillarjs/encodeurl.svg +[coveralls-url]: https://coveralls.io/r/pillarjs/encodeurl?branch=master +[downloads-image]: https://img.shields.io/npm/dm/encodeurl.svg +[downloads-url]: https://npmjs.org/package/encodeurl diff --git a/NodjsPartieArduino/node_modules/encodeurl/index.js b/NodjsPartieArduino/node_modules/encodeurl/index.js new file mode 100644 index 0000000..fc4906c --- /dev/null +++ b/NodjsPartieArduino/node_modules/encodeurl/index.js @@ -0,0 +1,60 @@ +/*! + * encodeurl + * Copyright(c) 2016 Douglas Christopher Wilson + * MIT Licensed + */ + +'use strict' + +/** + * Module exports. + * @public + */ + +module.exports = encodeUrl + +/** + * RegExp to match non-URL code points, *after* encoding (i.e. not including "%") + * and including invalid escape sequences. + * @private + */ + +var ENCODE_CHARS_REGEXP = /(?:[^\x21\x25\x26-\x3B\x3D\x3F-\x5B\x5D\x5F\x61-\x7A\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g + +/** + * RegExp to match unmatched surrogate pair. + * @private + */ + +var UNMATCHED_SURROGATE_PAIR_REGEXP = /(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g + +/** + * String to replace unmatched surrogate pair with. + * @private + */ + +var UNMATCHED_SURROGATE_PAIR_REPLACE = '$1\uFFFD$2' + +/** + * Encode a URL to a percent-encoded form, excluding already-encoded sequences. + * + * This function will take an already-encoded URL and encode all the non-URL + * code points. This function will not encode the "%" character unless it is + * not part of a valid sequence (`%20` will be left as-is, but `%foo` will + * be encoded as `%25foo`). + * + * This encode is meant to be "safe" and does not throw errors. It will try as + * hard as it can to properly encode the given URL, including replacing any raw, + * unpaired surrogate pairs with the Unicode replacement character prior to + * encoding. + * + * @param {string} url + * @return {string} + * @public + */ + +function encodeUrl (url) { + return String(url) + .replace(UNMATCHED_SURROGATE_PAIR_REGEXP, UNMATCHED_SURROGATE_PAIR_REPLACE) + .replace(ENCODE_CHARS_REGEXP, encodeURI) +} diff --git a/NodjsPartieArduino/node_modules/encodeurl/package.json b/NodjsPartieArduino/node_modules/encodeurl/package.json new file mode 100644 index 0000000..928eecc --- /dev/null +++ b/NodjsPartieArduino/node_modules/encodeurl/package.json @@ -0,0 +1,114 @@ +{ + "_args": [ + [ + { + "raw": "encodeurl@~1.0.2", + "scope": null, + "escapedName": "encodeurl", + "name": "encodeurl", + "rawSpec": "~1.0.2", + "spec": ">=1.0.2 <1.1.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express" + ] + ], + "_from": "encodeurl@>=1.0.2 <1.1.0", + "_id": "encodeurl@1.0.2", + "_inCache": true, + "_location": "/encodeurl", + "_nodeVersion": "6.11.1", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/encodeurl-1.0.2.tgz_1516591169672_0.5424360500182956" + }, + "_npmUser": { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + }, + "_npmVersion": "3.10.10", + "_phantomChildren": {}, + "_requested": { + "raw": "encodeurl@~1.0.2", + "scope": null, + "escapedName": "encodeurl", + "name": "encodeurl", + "rawSpec": "~1.0.2", + "spec": ">=1.0.2 <1.1.0", + "type": "range" + }, + "_requiredBy": [ + "/express", + "/finalhandler", + "/send", + "/serve-static" + ], + "_resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "_shasum": "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59", + "_shrinkwrap": null, + "_spec": "encodeurl@~1.0.2", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/express", + "bugs": { + "url": "https://github.com/pillarjs/encodeurl/issues" + }, + "contributors": [ + { + "name": "Douglas Christopher Wilson", + "email": "doug@somethingdoug.com" + } + ], + "dependencies": {}, + "description": "Encode a URL to a percent-encoded form, excluding already-encoded sequences", + "devDependencies": { + "eslint": "3.19.0", + "eslint-config-standard": "10.2.1", + "eslint-plugin-import": "2.8.0", + "eslint-plugin-node": "5.2.1", + "eslint-plugin-promise": "3.6.0", + "eslint-plugin-standard": "3.0.1", + "istanbul": "0.4.5", + "mocha": "2.5.3" + }, + "directories": {}, + "dist": { + "shasum": "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59", + "tarball": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" + }, + "engines": { + "node": ">= 0.8" + }, + "files": [ + "LICENSE", + "HISTORY.md", + "README.md", + "index.js" + ], + "gitHead": "1a7301e330bf20fd7c8c173102315e45cd1f5d1e", + "homepage": "https://github.com/pillarjs/encodeurl#readme", + "keywords": [ + "encode", + "encodeurl", + "url" + ], + "license": "MIT", + "maintainers": [ + { + "name": "dougwilson", + "email": "doug@somethingdoug.com" + } + ], + "name": "encodeurl", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git+https://github.com/pillarjs/encodeurl.git" + }, + "scripts": { + "lint": "eslint .", + "test": "mocha --reporter spec --bail --check-leaks test/", + "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", + "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" + }, + "version": "1.0.2" +} diff --git a/NodjsPartieArduino/node_modules/end-of-stream/LICENSE b/NodjsPartieArduino/node_modules/end-of-stream/LICENSE new file mode 100644 index 0000000..757562e --- /dev/null +++ b/NodjsPartieArduino/node_modules/end-of-stream/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014 Mathias Buus + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/NodjsPartieArduino/node_modules/end-of-stream/README.md b/NodjsPartieArduino/node_modules/end-of-stream/README.md new file mode 100644 index 0000000..f2560c9 --- /dev/null +++ b/NodjsPartieArduino/node_modules/end-of-stream/README.md @@ -0,0 +1,52 @@ +# end-of-stream + +A node module that calls a callback when a readable/writable/duplex stream has completed or failed. + + npm install end-of-stream + +## Usage + +Simply pass a stream and a callback to the `eos`. +Both legacy streams, streams2 and stream3 are supported. + +``` js +var eos = require('end-of-stream'); + +eos(readableStream, function(err) { + // this will be set to the stream instance + if (err) return console.log('stream had an error or closed early'); + console.log('stream has ended', this === readableStream); +}); + +eos(writableStream, function(err) { + if (err) return console.log('stream had an error or closed early'); + console.log('stream has finished', this === writableStream); +}); + +eos(duplexStream, function(err) { + if (err) return console.log('stream had an error or closed early'); + console.log('stream has ended and finished', this === duplexStream); +}); + +eos(duplexStream, {readable:false}, function(err) { + if (err) return console.log('stream had an error or closed early'); + console.log('stream has finished but might still be readable'); +}); + +eos(duplexStream, {writable:false}, function(err) { + if (err) return console.log('stream had an error or closed early'); + console.log('stream has ended but might still be writable'); +}); + +eos(readableStream, {error:false}, function(err) { + // do not treat emit('error', err) as a end-of-stream +}); +``` + +## License + +MIT + +## Related + +`end-of-stream` is part of the [mississippi stream utility collection](https://github.com/maxogden/mississippi) which includes more useful stream modules similar to this one. diff --git a/NodjsPartieArduino/node_modules/end-of-stream/index.js b/NodjsPartieArduino/node_modules/end-of-stream/index.js new file mode 100644 index 0000000..be426c2 --- /dev/null +++ b/NodjsPartieArduino/node_modules/end-of-stream/index.js @@ -0,0 +1,87 @@ +var once = require('once'); + +var noop = function() {}; + +var isRequest = function(stream) { + return stream.setHeader && typeof stream.abort === 'function'; +}; + +var isChildProcess = function(stream) { + return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3 +}; + +var eos = function(stream, opts, callback) { + if (typeof opts === 'function') return eos(stream, null, opts); + if (!opts) opts = {}; + + callback = once(callback || noop); + + var ws = stream._writableState; + var rs = stream._readableState; + var readable = opts.readable || (opts.readable !== false && stream.readable); + var writable = opts.writable || (opts.writable !== false && stream.writable); + + var onlegacyfinish = function() { + if (!stream.writable) onfinish(); + }; + + var onfinish = function() { + writable = false; + if (!readable) callback.call(stream); + }; + + var onend = function() { + readable = false; + if (!writable) callback.call(stream); + }; + + var onexit = function(exitCode) { + callback.call(stream, exitCode ? new Error('exited with error code: ' + exitCode) : null); + }; + + var onerror = function(err) { + callback.call(stream, err); + }; + + var onclose = function() { + if (readable && !(rs && rs.ended)) return callback.call(stream, new Error('premature close')); + if (writable && !(ws && ws.ended)) return callback.call(stream, new Error('premature close')); + }; + + var onrequest = function() { + stream.req.on('finish', onfinish); + }; + + if (isRequest(stream)) { + stream.on('complete', onfinish); + stream.on('abort', onclose); + if (stream.req) onrequest(); + else stream.on('request', onrequest); + } else if (writable && !ws) { // legacy streams + stream.on('end', onlegacyfinish); + stream.on('close', onlegacyfinish); + } + + if (isChildProcess(stream)) stream.on('exit', onexit); + + stream.on('end', onend); + stream.on('finish', onfinish); + if (opts.error !== false) stream.on('error', onerror); + stream.on('close', onclose); + + return function() { + stream.removeListener('complete', onfinish); + stream.removeListener('abort', onclose); + stream.removeListener('request', onrequest); + if (stream.req) stream.req.removeListener('finish', onfinish); + stream.removeListener('end', onlegacyfinish); + stream.removeListener('close', onlegacyfinish); + stream.removeListener('finish', onfinish); + stream.removeListener('exit', onexit); + stream.removeListener('end', onend); + stream.removeListener('error', onerror); + stream.removeListener('close', onclose); + }; +}; + +module.exports = eos; diff --git a/NodjsPartieArduino/node_modules/end-of-stream/package.json b/NodjsPartieArduino/node_modules/end-of-stream/package.json new file mode 100644 index 0000000..2b9ce2e --- /dev/null +++ b/NodjsPartieArduino/node_modules/end-of-stream/package.json @@ -0,0 +1,101 @@ +{ + "_args": [ + [ + { + "raw": "end-of-stream@^1.1.0", + "scope": null, + "escapedName": "end-of-stream", + "name": "end-of-stream", + "rawSpec": "^1.1.0", + "spec": ">=1.1.0 <2.0.0", + "type": "range" + }, + "/home/etudiant/kt175410/node-arduino-serialport/node_modules/pump" + ] + ], + "_from": "end-of-stream@>=1.1.0 <2.0.0", + "_id": "end-of-stream@1.4.1", + "_inCache": true, + "_location": "/end-of-stream", + "_nodeVersion": "8.9.3", + "_npmOperationalInternal": { + "host": "s3://npm-registry-packages", + "tmp": "tmp/end-of-stream-1.4.1.tgz_1515600688004_0.3708031203132123" + }, + "_npmUser": { + "name": "mafintosh", + "email": "mathiasbuus@gmail.com" + }, + "_npmVersion": "5.5.1", + "_phantomChildren": {}, + "_requested": { + "raw": "end-of-stream@^1.1.0", + "scope": null, + "escapedName": "end-of-stream", + "name": "end-of-stream", + "rawSpec": "^1.1.0", + "spec": ">=1.1.0 <2.0.0", + "type": "range" + }, + "_requiredBy": [ + "/pump", + "/tar-fs/pump", + "/tar-stream" + ], + "_resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "_shasum": "ed29634d19baba463b6ce6b80a37213eab71ec43", + "_shrinkwrap": null, + "_spec": "end-of-stream@^1.1.0", + "_where": "/home/etudiant/kt175410/node-arduino-serialport/node_modules/pump", + "author": { + "name": "Mathias Buus", + "email": "mathiasbuus@gmail.com" + }, + "bugs": { + "url": "https://github.com/mafintosh/end-of-stream/issues" + }, + "dependencies": { + "once": "^1.4.0" + }, + "description": "Call a callback when a readable/writable/duplex stream has completed or failed.", + "devDependencies": {}, + "directories": {}, + "dist": { + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "shasum": "ed29634d19baba463b6ce6b80a37213eab71ec43", + "tarball": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz" + }, + "files": [ + "index.js" + ], + "gitHead": "8a49159ed2661ee8ddb393c2503aee489f9ae271", + "homepage": "https://github.com/mafintosh/end-of-stream", + "keywords": [ + "stream", + "streams", + "callback", + "finish", + "close", + "end", + "wait" + ], + "license": "MIT", + "main": "index.js", + "maintainers": [ + { + "name": "mafintosh", + "email": "mathiasbuus@gmail.com" + } + ], + "name": "end-of-stream", + "optionalDependencies": {}, + "readme": "ERROR: No README data found!", + "repository": { + "type": "git", + "url": "git://github.com/mafintosh/end-of-stream.git" + }, + "scripts": { + "test": "node test.js" + }, + "version": "1.4.1" +} diff --git a/NodjsPartieArduino/node_modules/engine.io-client/LICENSE b/NodjsPartieArduino/node_modules/engine.io-client/LICENSE new file mode 100644 index 0000000..b248ba1 --- /dev/null +++ b/NodjsPartieArduino/node_modules/engine.io-client/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2014-2015 Automattic + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NodjsPartieArduino/node_modules/engine.io-client/README.md b/NodjsPartieArduino/node_modules/engine.io-client/README.md new file mode 100644 index 0000000..9ab91ca --- /dev/null +++ b/NodjsPartieArduino/node_modules/engine.io-client/README.md @@ -0,0 +1,299 @@ + +# Engine.IO client + +[![Build Status](https://travis-ci.org/socketio/engine.io-client.svg?branch=master)](http://travis-ci.org/socketio/engine.io-client) +[![NPM version](https://badge.fury.io/js/engine.io-client.svg)](http://badge.fury.io/js/engine.io-client) + +This is the client for [Engine.IO](http://github.com/socketio/engine.io), +the implementation of transport-based cross-browser/cross-device +bi-directional communication layer for [Socket.IO](http://github.com/socketio/socket.io). + +## How to use + +### Standalone + +You can find an `engine.io.js` file in this repository, which is a +standalone build you can use as follows: + +```html + + +``` + +### With browserify + +Engine.IO is a commonjs module, which means you can include it by using +`require` on the browser and package using [browserify](http://browserify.org/): + +1. install the client package + + ```bash + $ npm install engine.io-client + ``` + +1. write your app code + + ```js + var socket = require('engine.io-client')('ws://localhost'); + socket.on('open', function(){ + socket.on('message', function(data){}); + socket.on('close', function(){}); + }); + ``` + +1. build your app bundle + + ```bash + $ browserify app.js > bundle.js + ``` + +1. include on your page + + ```html + + ``` + +### Sending and receiving binary + +```html + + +``` + +### Node.JS + +Add `engine.io-client` to your `package.json` and then: + +```js +var socket = require('engine.io-client')('ws://localhost'); +socket.on('open', function(){ + socket.on('message', function(data){}); + socket.on('close', function(){}); +}); +``` + +### Node.js with certificates +```js +var opts = { + key: fs.readFileSync('test/fixtures/client.key'), + cert: fs.readFileSync('test/fixtures/client.crt'), + ca: fs.readFileSync('test/fixtures/ca.crt') +}; + +var socket = require('engine.io-client')('ws://localhost', opts); +socket.on('open', function(){ + socket.on('message', function(data){}); + socket.on('close', function(){}); +}); +``` + +### Node.js with extraHeaders +```js +var opts = { + extraHeaders: { + 'X-Custom-Header-For-My-Project': 'my-secret-access-token', + 'Cookie': 'user_session=NI2JlCKF90aE0sJZD9ZzujtdsUqNYSBYxzlTsvdSUe35ZzdtVRGqYFr0kdGxbfc5gUOkR9RGp20GVKza; path=/; expires=Tue, 07-Apr-2015 18:18:08 GMT; secure; HttpOnly' + } +}; + +var socket = require('engine.io-client')('ws://localhost', opts); +socket.on('open', function(){ + socket.on('message', function(data){}); + socket.on('close', function(){}); +}); +``` + +## Features + +- Lightweight +- Runs on browser and node.js seamlessly +- Transports are independent of `Engine` + - Easy to debug + - Easy to unit test +- Runs inside HTML5 WebWorker +- Can send and receive binary data + - Receives as ArrayBuffer or Blob when in browser, and Buffer or ArrayBuffer + in Node + - When XHR2 or WebSockets are used, binary is emitted directly. Otherwise + binary is encoded into base64 strings, and decoded when binary types are + supported. + - With browsers that don't support ArrayBuffer, an object { base64: true, + data: dataAsBase64String } is emitted on the `message` event. + +## API + +### Socket + +The client class. Mixes in [Emitter](http://github.com/component/emitter). +Exposed as `eio` in the browser standalone build. + +#### Properties + +- `protocol` _(Number)_: protocol revision number +- `binaryType` _(String)_ : can be set to 'arraybuffer' or 'blob' in browsers, + and `buffer` or `arraybuffer` in Node. Blob is only used in browser if it's + supported. + +#### Events + +- `open` + - Fired upon successful connection. +- `message` + - Fired when data is received from the server. + - **Arguments** + - `String` | `ArrayBuffer`: utf-8 encoded data or ArrayBuffer containing + binary data +- `close` + - Fired upon disconnection. In compliance with the WebSocket API spec, this event may be + fired even if the `open` event does not occur (i.e. due to connection error or `close()`). +- `error` + - Fired when an error occurs. +- `flush` + - Fired upon completing a buffer flush +- `drain` + - Fired after `drain` event of transport if writeBuffer is empty +- `upgradeError` + - Fired if an error occurs with a transport we're trying to upgrade to. +- `upgrade` + - Fired upon upgrade success, after the new transport is set +- `ping` + - Fired upon _flushing_ a ping packet (ie: actual packet write out) +- `pong` + - Fired upon receiving a pong packet. + +#### Methods + +- **constructor** + - Initializes the client + - **Parameters** + - `String` uri + - `Object`: optional, options object + - **Options** + - `agent` (`http.Agent`): `http.Agent` to use, defaults to `false` (NodeJS only) + - `upgrade` (`Boolean`): defaults to true, whether the client should try + to upgrade the transport from long-polling to something better. + - `forceJSONP` (`Boolean`): forces JSONP for polling transport. + - `jsonp` (`Boolean`): determines whether to use JSONP when + necessary for polling. If disabled (by settings to false) an error will + be emitted (saying "No transports available") if no other transports + are available. If another transport is available for opening a + connection (e.g. WebSocket) that transport + will be used instead. + - `forceBase64` (`Boolean`): forces base 64 encoding for polling transport even when XHR2 responseType is available and WebSocket even if the used standard supports binary. + - `enablesXDR` (`Boolean`): enables XDomainRequest for IE8 to avoid loading bar flashing with click sound. default to `false` because XDomainRequest has a flaw of not sending cookie. + - `timestampRequests` (`Boolean`): whether to add the timestamp with each + transport request. Note: polling requests are always stamped unless this + option is explicitly set to `false` (`false`) + - `timestampParam` (`String`): timestamp parameter (`t`) + - `policyPort` (`Number`): port the policy server listens on (`843`) + - `path` (`String`): path to connect to, default is `/engine.io` + - `transports` (`Array`): a list of transports to try (in order). + Defaults to `['polling', 'websocket']`. `Engine` + always attempts to connect directly with the first one, provided the + feature detection test for it passes. + - `transportOptions` (`Object`): hash of options, indexed by transport name, overriding the common options for the given transport + - `rememberUpgrade` (`Boolean`): defaults to false. + If true and if the previous websocket connection to the server succeeded, + the connection attempt will bypass the normal upgrade process and will initially + try websocket. A connection attempt following a transport error will use the + normal upgrade process. It is recommended you turn this on only when using + SSL/TLS connections, or if you know that your network does not block websockets. + - `pfx` (`String`|`Buffer`): Certificate, Private key and CA certificates to use for SSL. Can be used in Node.js client environment to manually specify certificate information. + - `key` (`String`): Private key to use for SSL. Can be used in Node.js client environment to manually specify certificate information. + - `passphrase` (`String`): A string of passphrase for the private key or pfx. Can be used in Node.js client environment to manually specify certificate information. + - `cert` (`String`): Public x509 certificate to use. Can be used in Node.js client environment to manually specify certificate information. + - `ca` (`String`|`Array`): An authority certificate or array of authority certificates to check the remote host against.. Can be used in Node.js client environment to manually specify certificate information. + - `ciphers` (`String`): A string describing the ciphers to use or exclude. Consult the [cipher format list](http://www.openssl.org/docs/apps/ciphers.html#CIPHER_LIST_FORMAT) for details on the format. Can be used in Node.js client environment to manually specify certificate information. + - `rejectUnauthorized` (`Boolean`): If true, the server certificate is verified against the list of supplied CAs. An 'error' event is emitted if verification fails. Verification happens at the connection level, before the HTTP request is sent. Can be used in Node.js client environment to manually specify certificate information. + - `perMessageDeflate` (`Object|Boolean`): parameters of the WebSocket permessage-deflate extension + (see [ws module](https://github.com/einaros/ws) api docs). Set to `false` to disable. (`true`) + - `threshold` (`Number`): data is compressed only if the byte size is above this value. This option is ignored on the browser. (`1024`) + - `extraHeaders` (`Object`): Headers that will be passed for each request to the server (via xhr-polling and via websockets). These values then can be used during handshake or for special proxies. Can only be used in Node.js client environment. + - `onlyBinaryUpgrades` (`Boolean`): whether transport upgrades should be restricted to transports supporting binary data (`false`) + - `forceNode` (`Boolean`): Uses NodeJS implementation for websockets - even if there is a native Browser-Websocket available, which is preferred by default over the NodeJS implementation. (This is useful when using hybrid platforms like nw.js or electron) (`false`, NodeJS only) + - `localAddress` (`String`): the local IP address to connect to + - **Polling-only options** + - `requestTimeout` (`Number`): Timeout for xhr-polling requests in milliseconds (`0`) + - **Websocket-only options** + - `protocols` (`Array`): a list of subprotocols (see [MDN reference](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_servers#Subprotocols)) +- `send` + - Sends a message to the server + - **Parameters** + - `String` | `ArrayBuffer` | `ArrayBufferView` | `Blob`: data to send + - `Object`: optional, options object + - `Function`: optional, callback upon `drain` + - **Options** + - `compress` (`Boolean`): whether to compress sending data. This option is ignored and forced to be `true` on the browser. (`true`) +- `close` + - Disconnects the client. + +### Transport + +The transport class. Private. _Inherits from EventEmitter_. + +#### Events + +- `poll`: emitted by polling transports upon starting a new request +- `pollComplete`: emitted by polling transports upon completing a request +- `drain`: emitted by polling transports upon a buffer drain + +## Tests + +`engine.io-client` is used to test +[engine](http://github.com/socketio/engine.io). Running the `engine.io` +test suite ensures the client works and vice-versa. + +Browser tests are run using [zuul](https://github.com/defunctzombie/zuul). You can +run the tests locally using the following command. + +``` +./node_modules/.bin/zuul --local 8080 -- test/index.js +``` + +Additionally, `engine.io-client` has a standalone test suite you can run +with `make test` which will run node.js and browser tests. You must have zuul setup with +a saucelabs account. + +## Support + +The support channels for `engine.io-client` are the same as `socket.io`: + - irc.freenode.net **#socket.io** + - [Google Groups](http://groups.google.com/group/socket_io) + - [Website](http://socket.io) + +## Development + +To contribute patches, run tests or benchmarks, make sure to clone the +repository: + +```bash +git clone git://github.com/socketio/engine.io-client.git +``` + +Then: + +```bash +cd engine.io-client +npm install +``` + +See the `Tests` section above for how to run tests before submitting any patches. + +## License + +MIT - Copyright (c) 2014 Automattic, Inc. diff --git a/NodjsPartieArduino/node_modules/engine.io-client/engine.io.js b/NodjsPartieArduino/node_modules/engine.io-client/engine.io.js new file mode 100644 index 0000000..c57356f --- /dev/null +++ b/NodjsPartieArduino/node_modules/engine.io-client/engine.io.js @@ -0,0 +1,4647 @@ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else if(typeof exports === 'object') + exports["eio"] = factory(); + else + root["eio"] = factory(); +})(this, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; + +/******/ // The require function +/******/ function __webpack_require__(moduleId) { + +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) +/******/ return installedModules[moduleId].exports; + +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ exports: {}, +/******/ id: moduleId, +/******/ loaded: false +/******/ }; + +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); + +/******/ // Flag the module as loaded +/******/ module.loaded = true; + +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } + + +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; + +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; + +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; + +/******/ // Load entry module and return exports +/******/ return __webpack_require__(0); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + module.exports = __webpack_require__(1); + + /** + * Exports parser + * + * @api public + * + */ + module.exports.parser = __webpack_require__(8); + +/***/ }, +/* 1 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + /** + * Module dependencies. + */ + + var transports = __webpack_require__(2); + var Emitter = __webpack_require__(17); + var debug = __webpack_require__(21)('engine.io-client:socket'); + var index = __webpack_require__(28); + var parser = __webpack_require__(8); + var parseuri = __webpack_require__(29); + var parseqs = __webpack_require__(18); + + /** + * Module exports. + */ + + module.exports = Socket; + + /** + * Socket constructor. + * + * @param {String|Object} uri or options + * @param {Object} options + * @api public + */ + + function Socket(uri, opts) { + if (!(this instanceof Socket)) return new Socket(uri, opts); + + opts = opts || {}; + + if (uri && 'object' === (typeof uri === 'undefined' ? 'undefined' : _typeof(uri))) { + opts = uri; + uri = null; + } + + if (uri) { + uri = parseuri(uri); + opts.hostname = uri.host; + opts.secure = uri.protocol === 'https' || uri.protocol === 'wss'; + opts.port = uri.port; + if (uri.query) opts.query = uri.query; + } else if (opts.host) { + opts.hostname = parseuri(opts.host).host; + } + + this.secure = null != opts.secure ? opts.secure : typeof location !== 'undefined' && 'https:' === location.protocol; + + if (opts.hostname && !opts.port) { + // if no port is specified manually, use the protocol default + opts.port = this.secure ? '443' : '80'; + } + + this.agent = opts.agent || false; + this.hostname = opts.hostname || (typeof location !== 'undefined' ? location.hostname : 'localhost'); + this.port = opts.port || (typeof location !== 'undefined' && location.port ? location.port : this.secure ? 443 : 80); + this.query = opts.query || {}; + if ('string' === typeof this.query) this.query = parseqs.decode(this.query); + this.upgrade = false !== opts.upgrade; + this.path = (opts.path || '/engine.io').replace(/\/$/, '') + '/'; + this.forceJSONP = !!opts.forceJSONP; + this.jsonp = false !== opts.jsonp; + this.forceBase64 = !!opts.forceBase64; + this.enablesXDR = !!opts.enablesXDR; + this.timestampParam = opts.timestampParam || 't'; + this.timestampRequests = opts.timestampRequests; + this.transports = opts.transports || ['polling', 'websocket']; + this.transportOptions = opts.transportOptions || {}; + this.readyState = ''; + this.writeBuffer = []; + this.prevBufferLen = 0; + this.policyPort = opts.policyPort || 843; + this.rememberUpgrade = opts.rememberUpgrade || false; + this.binaryType = null; + this.onlyBinaryUpgrades = opts.onlyBinaryUpgrades; + this.perMessageDeflate = false !== opts.perMessageDeflate ? opts.perMessageDeflate || {} : false; + + if (true === this.perMessageDeflate) this.perMessageDeflate = {}; + if (this.perMessageDeflate && null == this.perMessageDeflate.threshold) { + this.perMessageDeflate.threshold = 1024; + } + + // SSL options for Node.js client + this.pfx = opts.pfx || null; + this.key = opts.key || null; + this.passphrase = opts.passphrase || null; + this.cert = opts.cert || null; + this.ca = opts.ca || null; + this.ciphers = opts.ciphers || null; + this.rejectUnauthorized = opts.rejectUnauthorized === undefined ? true : opts.rejectUnauthorized; + this.forceNode = !!opts.forceNode; + + // detect ReactNative environment + this.isReactNative = typeof navigator !== 'undefined' && typeof navigator.product === 'string' && navigator.product.toLowerCase() === 'reactnative'; + + // other options for Node.js or ReactNative client + if (typeof self === 'undefined' || this.isReactNative) { + if (opts.extraHeaders && Object.keys(opts.extraHeaders).length > 0) { + this.extraHeaders = opts.extraHeaders; + } + + if (opts.localAddress) { + this.localAddress = opts.localAddress; + } + } + + // set on handshake + this.id = null; + this.upgrades = null; + this.pingInterval = null; + this.pingTimeout = null; + + // set on heartbeat + this.pingIntervalTimer = null; + this.pingTimeoutTimer = null; + + this.open(); + } + + Socket.priorWebsocketSuccess = false; + + /** + * Mix in `Emitter`. + */ + + Emitter(Socket.prototype); + + /** + * Protocol version. + * + * @api public + */ + + Socket.protocol = parser.protocol; // this is an int + + /** + * Expose deps for legacy compatibility + * and standalone browser access. + */ + + Socket.Socket = Socket; + Socket.Transport = __webpack_require__(7); + Socket.transports = __webpack_require__(2); + Socket.parser = __webpack_require__(8); + + /** + * Creates transport of the given type. + * + * @param {String} transport name + * @return {Transport} + * @api private + */ + + Socket.prototype.createTransport = function (name) { + debug('creating transport "%s"', name); + var query = clone(this.query); + + // append engine.io protocol identifier + query.EIO = parser.protocol; + + // transport name + query.transport = name; + + // per-transport options + var options = this.transportOptions[name] || {}; + + // session id if we already have one + if (this.id) query.sid = this.id; + + var transport = new transports[name]({ + query: query, + socket: this, + agent: options.agent || this.agent, + hostname: options.hostname || this.hostname, + port: options.port || this.port, + secure: options.secure || this.secure, + path: options.path || this.path, + forceJSONP: options.forceJSONP || this.forceJSONP, + jsonp: options.jsonp || this.jsonp, + forceBase64: options.forceBase64 || this.forceBase64, + enablesXDR: options.enablesXDR || this.enablesXDR, + timestampRequests: options.timestampRequests || this.timestampRequests, + timestampParam: options.timestampParam || this.timestampParam, + policyPort: options.policyPort || this.policyPort, + pfx: options.pfx || this.pfx, + key: options.key || this.key, + passphrase: options.passphrase || this.passphrase, + cert: options.cert || this.cert, + ca: options.ca || this.ca, + ciphers: options.ciphers || this.ciphers, + rejectUnauthorized: options.rejectUnauthorized || this.rejectUnauthorized, + perMessageDeflate: options.perMessageDeflate || this.perMessageDeflate, + extraHeaders: options.extraHeaders || this.extraHeaders, + forceNode: options.forceNode || this.forceNode, + localAddress: options.localAddress || this.localAddress, + requestTimeout: options.requestTimeout || this.requestTimeout, + protocols: options.protocols || void 0, + isReactNative: this.isReactNative + }); + + return transport; + }; + + function clone(obj) { + var o = {}; + for (var i in obj) { + if (obj.hasOwnProperty(i)) { + o[i] = obj[i]; + } + } + return o; + } + + /** + * Initializes transport to use and starts probe. + * + * @api private + */ + Socket.prototype.open = function () { + var transport; + if (this.rememberUpgrade && Socket.priorWebsocketSuccess && this.transports.indexOf('websocket') !== -1) { + transport = 'websocket'; + } else if (0 === this.transports.length) { + // Emit error on next tick so it can be listened to + var self = this; + setTimeout(function () { + self.emit('error', 'No transports available'); + }, 0); + return; + } else { + transport = this.transports[0]; + } + this.readyState = 'opening'; + + // Retry with the next transport if the transport is disabled (jsonp: false) + try { + transport = this.createTransport(transport); + } catch (e) { + this.transports.shift(); + this.open(); + return; + } + + transport.open(); + this.setTransport(transport); + }; + + /** + * Sets the current transport. Disables the existing one (if any). + * + * @api private + */ + + Socket.prototype.setTransport = function (transport) { + debug('setting transport %s', transport.name); + var self = this; + + if (this.transport) { + debug('clearing existing transport %s', this.transport.name); + this.transport.removeAllListeners(); + } + + // set up transport + this.transport = transport; + + // set up transport listeners + transport.on('drain', function () { + self.onDrain(); + }).on('packet', function (packet) { + self.onPacket(packet); + }).on('error', function (e) { + self.onError(e); + }).on('close', function () { + self.onClose('transport close'); + }); + }; + + /** + * Probes a transport. + * + * @param {String} transport name + * @api private + */ + + Socket.prototype.probe = function (name) { + debug('probing transport "%s"', name); + var transport = this.createTransport(name, { probe: 1 }); + var failed = false; + var self = this; + + Socket.priorWebsocketSuccess = false; + + function onTransportOpen() { + if (self.onlyBinaryUpgrades) { + var upgradeLosesBinary = !this.supportsBinary && self.transport.supportsBinary; + failed = failed || upgradeLosesBinary; + } + if (failed) return; + + debug('probe transport "%s" opened', name); + transport.send([{ type: 'ping', data: 'probe' }]); + transport.once('packet', function (msg) { + if (failed) return; + if ('pong' === msg.type && 'probe' === msg.data) { + debug('probe transport "%s" pong', name); + self.upgrading = true; + self.emit('upgrading', transport); + if (!transport) return; + Socket.priorWebsocketSuccess = 'websocket' === transport.name; + + debug('pausing current transport "%s"', self.transport.name); + self.transport.pause(function () { + if (failed) return; + if ('closed' === self.readyState) return; + debug('changing transport and sending upgrade packet'); + + cleanup(); + + self.setTransport(transport); + transport.send([{ type: 'upgrade' }]); + self.emit('upgrade', transport); + transport = null; + self.upgrading = false; + self.flush(); + }); + } else { + debug('probe transport "%s" failed', name); + var err = new Error('probe error'); + err.transport = transport.name; + self.emit('upgradeError', err); + } + }); + } + + function freezeTransport() { + if (failed) return; + + // Any callback called by transport should be ignored since now + failed = true; + + cleanup(); + + transport.close(); + transport = null; + } + + // Handle any error that happens while probing + function onerror(err) { + var error = new Error('probe error: ' + err); + error.transport = transport.name; + + freezeTransport(); + + debug('probe transport "%s" failed because of error: %s', name, err); + + self.emit('upgradeError', error); + } + + function onTransportClose() { + onerror('transport closed'); + } + + // When the socket is closed while we're probing + function onclose() { + onerror('socket closed'); + } + + // When the socket is upgraded while we're probing + function onupgrade(to) { + if (transport && to.name !== transport.name) { + debug('"%s" works - aborting "%s"', to.name, transport.name); + freezeTransport(); + } + } + + // Remove all listeners on the transport and on self + function cleanup() { + transport.removeListener('open', onTransportOpen); + transport.removeListener('error', onerror); + transport.removeListener('close', onTransportClose); + self.removeListener('close', onclose); + self.removeListener('upgrading', onupgrade); + } + + transport.once('open', onTransportOpen); + transport.once('error', onerror); + transport.once('close', onTransportClose); + + this.once('close', onclose); + this.once('upgrading', onupgrade); + + transport.open(); + }; + + /** + * Called when connection is deemed open. + * + * @api public + */ + + Socket.prototype.onOpen = function () { + debug('socket open'); + this.readyState = 'open'; + Socket.priorWebsocketSuccess = 'websocket' === this.transport.name; + this.emit('open'); + this.flush(); + + // we check for `readyState` in case an `open` + // listener already closed the socket + if ('open' === this.readyState && this.upgrade && this.transport.pause) { + debug('starting upgrade probes'); + for (var i = 0, l = this.upgrades.length; i < l; i++) { + this.probe(this.upgrades[i]); + } + } + }; + + /** + * Handles a packet. + * + * @api private + */ + + Socket.prototype.onPacket = function (packet) { + if ('opening' === this.readyState || 'open' === this.readyState || 'closing' === this.readyState) { + debug('socket receive: type "%s", data "%s"', packet.type, packet.data); + + this.emit('packet', packet); + + // Socket is live - any packet counts + this.emit('heartbeat'); + + switch (packet.type) { + case 'open': + this.onHandshake(JSON.parse(packet.data)); + break; + + case 'pong': + this.setPing(); + this.emit('pong'); + break; + + case 'error': + var err = new Error('server error'); + err.code = packet.data; + this.onError(err); + break; + + case 'message': + this.emit('data', packet.data); + this.emit('message', packet.data); + break; + } + } else { + debug('packet received with socket readyState "%s"', this.readyState); + } + }; + + /** + * Called upon handshake completion. + * + * @param {Object} handshake obj + * @api private + */ + + Socket.prototype.onHandshake = function (data) { + this.emit('handshake', data); + this.id = data.sid; + this.transport.query.sid = data.sid; + this.upgrades = this.filterUpgrades(data.upgrades); + this.pingInterval = data.pingInterval; + this.pingTimeout = data.pingTimeout; + this.onOpen(); + // In case open handler closes socket + if ('closed' === this.readyState) return; + this.setPing(); + + // Prolong liveness of socket on heartbeat + this.removeListener('heartbeat', this.onHeartbeat); + this.on('heartbeat', this.onHeartbeat); + }; + + /** + * Resets ping timeout. + * + * @api private + */ + + Socket.prototype.onHeartbeat = function (timeout) { + clearTimeout(this.pingTimeoutTimer); + var self = this; + self.pingTimeoutTimer = setTimeout(function () { + if ('closed' === self.readyState) return; + self.onClose('ping timeout'); + }, timeout || self.pingInterval + self.pingTimeout); + }; + + /** + * Pings server every `this.pingInterval` and expects response + * within `this.pingTimeout` or closes connection. + * + * @api private + */ + + Socket.prototype.setPing = function () { + var self = this; + clearTimeout(self.pingIntervalTimer); + self.pingIntervalTimer = setTimeout(function () { + debug('writing ping packet - expecting pong within %sms', self.pingTimeout); + self.ping(); + self.onHeartbeat(self.pingTimeout); + }, self.pingInterval); + }; + + /** + * Sends a ping packet. + * + * @api private + */ + + Socket.prototype.ping = function () { + var self = this; + this.sendPacket('ping', function () { + self.emit('ping'); + }); + }; + + /** + * Called on `drain` event + * + * @api private + */ + + Socket.prototype.onDrain = function () { + this.writeBuffer.splice(0, this.prevBufferLen); + + // setting prevBufferLen = 0 is very important + // for example, when upgrading, upgrade packet is sent over, + // and a nonzero prevBufferLen could cause problems on `drain` + this.prevBufferLen = 0; + + if (0 === this.writeBuffer.length) { + this.emit('drain'); + } else { + this.flush(); + } + }; + + /** + * Flush write buffers. + * + * @api private + */ + + Socket.prototype.flush = function () { + if ('closed' !== this.readyState && this.transport.writable && !this.upgrading && this.writeBuffer.length) { + debug('flushing %d packets in socket', this.writeBuffer.length); + this.transport.send(this.writeBuffer); + // keep track of current length of writeBuffer + // splice writeBuffer and callbackBuffer on `drain` + this.prevBufferLen = this.writeBuffer.length; + this.emit('flush'); + } + }; + + /** + * Sends a message. + * + * @param {String} message. + * @param {Function} callback function. + * @param {Object} options. + * @return {Socket} for chaining. + * @api public + */ + + Socket.prototype.write = Socket.prototype.send = function (msg, options, fn) { + this.sendPacket('message', msg, options, fn); + return this; + }; + + /** + * Sends a packet. + * + * @param {String} packet type. + * @param {String} data. + * @param {Object} options. + * @param {Function} callback function. + * @api private + */ + + Socket.prototype.sendPacket = function (type, data, options, fn) { + if ('function' === typeof data) { + fn = data; + data = undefined; + } + + if ('function' === typeof options) { + fn = options; + options = null; + } + + if ('closing' === this.readyState || 'closed' === this.readyState) { + return; + } + + options = options || {}; + options.compress = false !== options.compress; + + var packet = { + type: type, + data: data, + options: options + }; + this.emit('packetCreate', packet); + this.writeBuffer.push(packet); + if (fn) this.once('flush', fn); + this.flush(); + }; + + /** + * Closes the connection. + * + * @api private + */ + + Socket.prototype.close = function () { + if ('opening' === this.readyState || 'open' === this.readyState) { + this.readyState = 'closing'; + + var self = this; + + if (this.writeBuffer.length) { + this.once('drain', function () { + if (this.upgrading) { + waitForUpgrade(); + } else { + close(); + } + }); + } else if (this.upgrading) { + waitForUpgrade(); + } else { + close(); + } + } + + function close() { + self.onClose('forced close'); + debug('socket closing - telling transport to close'); + self.transport.close(); + } + + function cleanupAndClose() { + self.removeListener('upgrade', cleanupAndClose); + self.removeListener('upgradeError', cleanupAndClose); + close(); + } + + function waitForUpgrade() { + // wait for upgrade to finish since we can't send packets while pausing a transport + self.once('upgrade', cleanupAndClose); + self.once('upgradeError', cleanupAndClose); + } + + return this; + }; + + /** + * Called upon transport error + * + * @api private + */ + + Socket.prototype.onError = function (err) { + debug('socket error %j', err); + Socket.priorWebsocketSuccess = false; + this.emit('error', err); + this.onClose('transport error', err); + }; + + /** + * Called upon transport close. + * + * @api private + */ + + Socket.prototype.onClose = function (reason, desc) { + if ('opening' === this.readyState || 'open' === this.readyState || 'closing' === this.readyState) { + debug('socket close with reason: "%s"', reason); + var self = this; + + // clear timers + clearTimeout(this.pingIntervalTimer); + clearTimeout(this.pingTimeoutTimer); + + // stop event from firing again for transport + this.transport.removeAllListeners('close'); + + // ensure transport won't stay open + this.transport.close(); + + // ignore further transport communication + this.transport.removeAllListeners(); + + // set ready state + this.readyState = 'closed'; + + // clear session id + this.id = null; + + // emit close event + this.emit('close', reason, desc); + + // clean buffers after, so users can still + // grab the buffers on `close` event + self.writeBuffer = []; + self.prevBufferLen = 0; + } + }; + + /** + * Filters upgrades, returning only those matching client transports. + * + * @param {Array} server upgrades + * @api private + * + */ + + Socket.prototype.filterUpgrades = function (upgrades) { + var filteredUpgrades = []; + for (var i = 0, j = upgrades.length; i < j; i++) { + if (~index(this.transports, upgrades[i])) filteredUpgrades.push(upgrades[i]); + } + return filteredUpgrades; + }; + +/***/ }, +/* 2 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + /** + * Module dependencies + */ + + var XMLHttpRequest = __webpack_require__(3); + var XHR = __webpack_require__(5); + var JSONP = __webpack_require__(25); + var websocket = __webpack_require__(26); + + /** + * Export transports. + */ + + exports.polling = polling; + exports.websocket = websocket; + + /** + * Polling transport polymorphic constructor. + * Decides on xhr vs jsonp based on feature detection. + * + * @api private + */ + + function polling(opts) { + var xhr; + var xd = false; + var xs = false; + var jsonp = false !== opts.jsonp; + + if (typeof location !== 'undefined') { + var isSSL = 'https:' === location.protocol; + var port = location.port; + + // some user agents have empty `location.port` + if (!port) { + port = isSSL ? 443 : 80; + } + + xd = opts.hostname !== location.hostname || port !== opts.port; + xs = opts.secure !== isSSL; + } + + opts.xdomain = xd; + opts.xscheme = xs; + xhr = new XMLHttpRequest(opts); + + if ('open' in xhr && !opts.forceJSONP) { + return new XHR(opts); + } else { + if (!jsonp) throw new Error('JSONP disabled'); + return new JSONP(opts); + } + } + +/***/ }, +/* 3 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + // browser shim for xmlhttprequest module + + var hasCORS = __webpack_require__(4); + + module.exports = function (opts) { + var xdomain = opts.xdomain; + + // scheme must be same when usign XDomainRequest + // http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx + var xscheme = opts.xscheme; + + // XDomainRequest has a flow of not sending cookie, therefore it should be disabled as a default. + // https://github.com/Automattic/engine.io-client/pull/217 + var enablesXDR = opts.enablesXDR; + + // XMLHttpRequest can be disabled on IE + try { + if ('undefined' !== typeof XMLHttpRequest && (!xdomain || hasCORS)) { + return new XMLHttpRequest(); + } + } catch (e) {} + + // Use XDomainRequest for IE8 if enablesXDR is true + // because loading bar keeps flashing when using jsonp-polling + // https://github.com/yujiosaka/socke.io-ie8-loading-example + try { + if ('undefined' !== typeof XDomainRequest && !xscheme && enablesXDR) { + return new XDomainRequest(); + } + } catch (e) {} + + if (!xdomain) { + try { + return new self[['Active'].concat('Object').join('X')]('Microsoft.XMLHTTP'); + } catch (e) {} + } + }; + +/***/ }, +/* 4 */ +/***/ function(module, exports) { + + + /** + * Module exports. + * + * Logic borrowed from Modernizr: + * + * - https://github.com/Modernizr/Modernizr/blob/master/feature-detects/cors.js + */ + + try { + module.exports = typeof XMLHttpRequest !== 'undefined' && + 'withCredentials' in new XMLHttpRequest(); + } catch (err) { + // if XMLHttp support is disabled in IE then it will throw + // when trying to create + module.exports = false; + } + + +/***/ }, +/* 5 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + /* global attachEvent */ + + /** + * Module requirements. + */ + + var XMLHttpRequest = __webpack_require__(3); + var Polling = __webpack_require__(6); + var Emitter = __webpack_require__(17); + var inherit = __webpack_require__(19); + var debug = __webpack_require__(21)('engine.io-client:polling-xhr'); + + /** + * Module exports. + */ + + module.exports = XHR; + module.exports.Request = Request; + + /** + * Empty function + */ + + function empty() {} + + /** + * XHR Polling constructor. + * + * @param {Object} opts + * @api public + */ + + function XHR(opts) { + Polling.call(this, opts); + this.requestTimeout = opts.requestTimeout; + this.extraHeaders = opts.extraHeaders; + + if (typeof location !== 'undefined') { + var isSSL = 'https:' === location.protocol; + var port = location.port; + + // some user agents have empty `location.port` + if (!port) { + port = isSSL ? 443 : 80; + } + + this.xd = typeof location !== 'undefined' && opts.hostname !== location.hostname || port !== opts.port; + this.xs = opts.secure !== isSSL; + } + } + + /** + * Inherits from Polling. + */ + + inherit(XHR, Polling); + + /** + * XHR supports binary + */ + + XHR.prototype.supportsBinary = true; + + /** + * Creates a request. + * + * @param {String} method + * @api private + */ + + XHR.prototype.request = function (opts) { + opts = opts || {}; + opts.uri = this.uri(); + opts.xd = this.xd; + opts.xs = this.xs; + opts.agent = this.agent || false; + opts.supportsBinary = this.supportsBinary; + opts.enablesXDR = this.enablesXDR; + + // SSL options for Node.js client + opts.pfx = this.pfx; + opts.key = this.key; + opts.passphrase = this.passphrase; + opts.cert = this.cert; + opts.ca = this.ca; + opts.ciphers = this.ciphers; + opts.rejectUnauthorized = this.rejectUnauthorized; + opts.requestTimeout = this.requestTimeout; + + // other options for Node.js client + opts.extraHeaders = this.extraHeaders; + + return new Request(opts); + }; + + /** + * Sends data. + * + * @param {String} data to send. + * @param {Function} called upon flush. + * @api private + */ + + XHR.prototype.doWrite = function (data, fn) { + var isBinary = typeof data !== 'string' && data !== undefined; + var req = this.request({ method: 'POST', data: data, isBinary: isBinary }); + var self = this; + req.on('success', fn); + req.on('error', function (err) { + self.onError('xhr post error', err); + }); + this.sendXhr = req; + }; + + /** + * Starts a poll cycle. + * + * @api private + */ + + XHR.prototype.doPoll = function () { + debug('xhr poll'); + var req = this.request(); + var self = this; + req.on('data', function (data) { + self.onData(data); + }); + req.on('error', function (err) { + self.onError('xhr poll error', err); + }); + this.pollXhr = req; + }; + + /** + * Request constructor + * + * @param {Object} options + * @api public + */ + + function Request(opts) { + this.method = opts.method || 'GET'; + this.uri = opts.uri; + this.xd = !!opts.xd; + this.xs = !!opts.xs; + this.async = false !== opts.async; + this.data = undefined !== opts.data ? opts.data : null; + this.agent = opts.agent; + this.isBinary = opts.isBinary; + this.supportsBinary = opts.supportsBinary; + this.enablesXDR = opts.enablesXDR; + this.requestTimeout = opts.requestTimeout; + + // SSL options for Node.js client + this.pfx = opts.pfx; + this.key = opts.key; + this.passphrase = opts.passphrase; + this.cert = opts.cert; + this.ca = opts.ca; + this.ciphers = opts.ciphers; + this.rejectUnauthorized = opts.rejectUnauthorized; + + // other options for Node.js client + this.extraHeaders = opts.extraHeaders; + + this.create(); + } + + /** + * Mix in `Emitter`. + */ + + Emitter(Request.prototype); + + /** + * Creates the XHR object and sends the request. + * + * @api private + */ + + Request.prototype.create = function () { + var opts = { agent: this.agent, xdomain: this.xd, xscheme: this.xs, enablesXDR: this.enablesXDR }; + + // SSL options for Node.js client + opts.pfx = this.pfx; + opts.key = this.key; + opts.passphrase = this.passphrase; + opts.cert = this.cert; + opts.ca = this.ca; + opts.ciphers = this.ciphers; + opts.rejectUnauthorized = this.rejectUnauthorized; + + var xhr = this.xhr = new XMLHttpRequest(opts); + var self = this; + + try { + debug('xhr open %s: %s', this.method, this.uri); + xhr.open(this.method, this.uri, this.async); + try { + if (this.extraHeaders) { + xhr.setDisableHeaderCheck && xhr.setDisableHeaderCheck(true); + for (var i in this.extraHeaders) { + if (this.extraHeaders.hasOwnProperty(i)) { + xhr.setRequestHeader(i, this.extraHeaders[i]); + } + } + } + } catch (e) {} + + if ('POST' === this.method) { + try { + if (this.isBinary) { + xhr.setRequestHeader('Content-type', 'application/octet-stream'); + } else { + xhr.setRequestHeader('Content-type', 'text/plain;charset=UTF-8'); + } + } catch (e) {} + } + + try { + xhr.setRequestHeader('Accept', '*/*'); + } catch (e) {} + + // ie6 check + if ('withCredentials' in xhr) { + xhr.withCredentials = true; + } + + if (this.requestTimeout) { + xhr.timeout = this.requestTimeout; + } + + if (this.hasXDR()) { + xhr.onload = function () { + self.onLoad(); + }; + xhr.onerror = function () { + self.onError(xhr.responseText); + }; + } else { + xhr.onreadystatechange = function () { + if (xhr.readyState === 2) { + try { + var contentType = xhr.getResponseHeader('Content-Type'); + if (self.supportsBinary && contentType === 'application/octet-stream') { + xhr.responseType = 'arraybuffer'; + } + } catch (e) {} + } + if (4 !== xhr.readyState) return; + if (200 === xhr.status || 1223 === xhr.status) { + self.onLoad(); + } else { + // make sure the `error` event handler that's user-set + // does not throw in the same tick and gets caught here + setTimeout(function () { + self.onError(xhr.status); + }, 0); + } + }; + } + + debug('xhr data %s', this.data); + xhr.send(this.data); + } catch (e) { + // Need to defer since .create() is called directly fhrom the constructor + // and thus the 'error' event can only be only bound *after* this exception + // occurs. Therefore, also, we cannot throw here at all. + setTimeout(function () { + self.onError(e); + }, 0); + return; + } + + if (typeof document !== 'undefined') { + this.index = Request.requestsCount++; + Request.requests[this.index] = this; + } + }; + + /** + * Called upon successful response. + * + * @api private + */ + + Request.prototype.onSuccess = function () { + this.emit('success'); + this.cleanup(); + }; + + /** + * Called if we have data. + * + * @api private + */ + + Request.prototype.onData = function (data) { + this.emit('data', data); + this.onSuccess(); + }; + + /** + * Called upon error. + * + * @api private + */ + + Request.prototype.onError = function (err) { + this.emit('error', err); + this.cleanup(true); + }; + + /** + * Cleans up house. + * + * @api private + */ + + Request.prototype.cleanup = function (fromError) { + if ('undefined' === typeof this.xhr || null === this.xhr) { + return; + } + // xmlhttprequest + if (this.hasXDR()) { + this.xhr.onload = this.xhr.onerror = empty; + } else { + this.xhr.onreadystatechange = empty; + } + + if (fromError) { + try { + this.xhr.abort(); + } catch (e) {} + } + + if (typeof document !== 'undefined') { + delete Request.requests[this.index]; + } + + this.xhr = null; + }; + + /** + * Called upon load. + * + * @api private + */ + + Request.prototype.onLoad = function () { + var data; + try { + var contentType; + try { + contentType = this.xhr.getResponseHeader('Content-Type'); + } catch (e) {} + if (contentType === 'application/octet-stream') { + data = this.xhr.response || this.xhr.responseText; + } else { + data = this.xhr.responseText; + } + } catch (e) { + this.onError(e); + } + if (null != data) { + this.onData(data); + } + }; + + /** + * Check if it has XDomainRequest. + * + * @api private + */ + + Request.prototype.hasXDR = function () { + return typeof XDomainRequest !== 'undefined' && !this.xs && this.enablesXDR; + }; + + /** + * Aborts the request. + * + * @api public + */ + + Request.prototype.abort = function () { + this.cleanup(); + }; + + /** + * Aborts pending requests when unloading the window. This is needed to prevent + * memory leaks (e.g. when using IE) and to ensure that no spurious error is + * emitted. + */ + + Request.requestsCount = 0; + Request.requests = {}; + + if (typeof document !== 'undefined') { + if (typeof attachEvent === 'function') { + attachEvent('onunload', unloadHandler); + } else if (typeof addEventListener === 'function') { + var terminationEvent = 'onpagehide' in self ? 'pagehide' : 'unload'; + addEventListener(terminationEvent, unloadHandler, false); + } + } + + function unloadHandler() { + for (var i in Request.requests) { + if (Request.requests.hasOwnProperty(i)) { + Request.requests[i].abort(); + } + } + } + +/***/ }, +/* 6 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + /** + * Module dependencies. + */ + + var Transport = __webpack_require__(7); + var parseqs = __webpack_require__(18); + var parser = __webpack_require__(8); + var inherit = __webpack_require__(19); + var yeast = __webpack_require__(20); + var debug = __webpack_require__(21)('engine.io-client:polling'); + + /** + * Module exports. + */ + + module.exports = Polling; + + /** + * Is XHR2 supported? + */ + + var hasXHR2 = function () { + var XMLHttpRequest = __webpack_require__(3); + var xhr = new XMLHttpRequest({ xdomain: false }); + return null != xhr.responseType; + }(); + + /** + * Polling interface. + * + * @param {Object} opts + * @api private + */ + + function Polling(opts) { + var forceBase64 = opts && opts.forceBase64; + if (!hasXHR2 || forceBase64) { + this.supportsBinary = false; + } + Transport.call(this, opts); + } + + /** + * Inherits from Transport. + */ + + inherit(Polling, Transport); + + /** + * Transport name. + */ + + Polling.prototype.name = 'polling'; + + /** + * Opens the socket (triggers polling). We write a PING message to determine + * when the transport is open. + * + * @api private + */ + + Polling.prototype.doOpen = function () { + this.poll(); + }; + + /** + * Pauses polling. + * + * @param {Function} callback upon buffers are flushed and transport is paused + * @api private + */ + + Polling.prototype.pause = function (onPause) { + var self = this; + + this.readyState = 'pausing'; + + function pause() { + debug('paused'); + self.readyState = 'paused'; + onPause(); + } + + if (this.polling || !this.writable) { + var total = 0; + + if (this.polling) { + debug('we are currently polling - waiting to pause'); + total++; + this.once('pollComplete', function () { + debug('pre-pause polling complete'); + --total || pause(); + }); + } + + if (!this.writable) { + debug('we are currently writing - waiting to pause'); + total++; + this.once('drain', function () { + debug('pre-pause writing complete'); + --total || pause(); + }); + } + } else { + pause(); + } + }; + + /** + * Starts polling cycle. + * + * @api public + */ + + Polling.prototype.poll = function () { + debug('polling'); + this.polling = true; + this.doPoll(); + this.emit('poll'); + }; + + /** + * Overloads onData to detect payloads. + * + * @api private + */ + + Polling.prototype.onData = function (data) { + var self = this; + debug('polling got data %s', data); + var callback = function callback(packet, index, total) { + // if its the first message we consider the transport open + if ('opening' === self.readyState) { + self.onOpen(); + } + + // if its a close packet, we close the ongoing requests + if ('close' === packet.type) { + self.onClose(); + return false; + } + + // otherwise bypass onData and handle the message + self.onPacket(packet); + }; + + // decode payload + parser.decodePayload(data, this.socket.binaryType, callback); + + // if an event did not trigger closing + if ('closed' !== this.readyState) { + // if we got data we're not polling + this.polling = false; + this.emit('pollComplete'); + + if ('open' === this.readyState) { + this.poll(); + } else { + debug('ignoring poll - transport state "%s"', this.readyState); + } + } + }; + + /** + * For polling, send a close packet. + * + * @api private + */ + + Polling.prototype.doClose = function () { + var self = this; + + function close() { + debug('writing close packet'); + self.write([{ type: 'close' }]); + } + + if ('open' === this.readyState) { + debug('transport open - closing'); + close(); + } else { + // in case we're trying to close while + // handshaking is in progress (GH-164) + debug('transport not open - deferring close'); + this.once('open', close); + } + }; + + /** + * Writes a packets payload. + * + * @param {Array} data packets + * @param {Function} drain callback + * @api private + */ + + Polling.prototype.write = function (packets) { + var self = this; + this.writable = false; + var callbackfn = function callbackfn() { + self.writable = true; + self.emit('drain'); + }; + + parser.encodePayload(packets, this.supportsBinary, function (data) { + self.doWrite(data, callbackfn); + }); + }; + + /** + * Generates uri for connection. + * + * @api private + */ + + Polling.prototype.uri = function () { + var query = this.query || {}; + var schema = this.secure ? 'https' : 'http'; + var port = ''; + + // cache busting is forced + if (false !== this.timestampRequests) { + query[this.timestampParam] = yeast(); + } + + if (!this.supportsBinary && !query.sid) { + query.b64 = 1; + } + + query = parseqs.encode(query); + + // avoid port if default for schema + if (this.port && ('https' === schema && Number(this.port) !== 443 || 'http' === schema && Number(this.port) !== 80)) { + port = ':' + this.port; + } + + // prepend ? to query + if (query.length) { + query = '?' + query; + } + + var ipv6 = this.hostname.indexOf(':') !== -1; + return schema + '://' + (ipv6 ? '[' + this.hostname + ']' : this.hostname) + port + this.path + query; + }; + +/***/ }, +/* 7 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + /** + * Module dependencies. + */ + + var parser = __webpack_require__(8); + var Emitter = __webpack_require__(17); + + /** + * Module exports. + */ + + module.exports = Transport; + + /** + * Transport abstract constructor. + * + * @param {Object} options. + * @api private + */ + + function Transport(opts) { + this.path = opts.path; + this.hostname = opts.hostname; + this.port = opts.port; + this.secure = opts.secure; + this.query = opts.query; + this.timestampParam = opts.timestampParam; + this.timestampRequests = opts.timestampRequests; + this.readyState = ''; + this.agent = opts.agent || false; + this.socket = opts.socket; + this.enablesXDR = opts.enablesXDR; + + // SSL options for Node.js client + this.pfx = opts.pfx; + this.key = opts.key; + this.passphrase = opts.passphrase; + this.cert = opts.cert; + this.ca = opts.ca; + this.ciphers = opts.ciphers; + this.rejectUnauthorized = opts.rejectUnauthorized; + this.forceNode = opts.forceNode; + + // results of ReactNative environment detection + this.isReactNative = opts.isReactNative; + + // other options for Node.js client + this.extraHeaders = opts.extraHeaders; + this.localAddress = opts.localAddress; + } + + /** + * Mix in `Emitter`. + */ + + Emitter(Transport.prototype); + + /** + * Emits an error. + * + * @param {String} str + * @return {Transport} for chaining + * @api public + */ + + Transport.prototype.onError = function (msg, desc) { + var err = new Error(msg); + err.type = 'TransportError'; + err.description = desc; + this.emit('error', err); + return this; + }; + + /** + * Opens the transport. + * + * @api public + */ + + Transport.prototype.open = function () { + if ('closed' === this.readyState || '' === this.readyState) { + this.readyState = 'opening'; + this.doOpen(); + } + + return this; + }; + + /** + * Closes the transport. + * + * @api private + */ + + Transport.prototype.close = function () { + if ('opening' === this.readyState || 'open' === this.readyState) { + this.doClose(); + this.onClose(); + } + + return this; + }; + + /** + * Sends multiple packets. + * + * @param {Array} packets + * @api private + */ + + Transport.prototype.send = function (packets) { + if ('open' === this.readyState) { + this.write(packets); + } else { + throw new Error('Transport not open'); + } + }; + + /** + * Called upon open + * + * @api private + */ + + Transport.prototype.onOpen = function () { + this.readyState = 'open'; + this.writable = true; + this.emit('open'); + }; + + /** + * Called with data. + * + * @param {String} data + * @api private + */ + + Transport.prototype.onData = function (data) { + var packet = parser.decodePacket(data, this.socket.binaryType); + this.onPacket(packet); + }; + + /** + * Called with a decoded packet. + */ + + Transport.prototype.onPacket = function (packet) { + this.emit('packet', packet); + }; + + /** + * Called upon close. + * + * @api private + */ + + Transport.prototype.onClose = function () { + this.readyState = 'closed'; + this.emit('close'); + }; + +/***/ }, +/* 8 */ +/***/ function(module, exports, __webpack_require__) { + + /** + * Module dependencies. + */ + + var keys = __webpack_require__(9); + var hasBinary = __webpack_require__(10); + var sliceBuffer = __webpack_require__(12); + var after = __webpack_require__(13); + var utf8 = __webpack_require__(14); + + var base64encoder; + if (typeof ArrayBuffer !== 'undefined') { + base64encoder = __webpack_require__(15); + } + + /** + * Check if we are running an android browser. That requires us to use + * ArrayBuffer with polling transports... + * + * http://ghinda.net/jpeg-blob-ajax-android/ + */ + + var isAndroid = typeof navigator !== 'undefined' && /Android/i.test(navigator.userAgent); + + /** + * Check if we are running in PhantomJS. + * Uploading a Blob with PhantomJS does not work correctly, as reported here: + * https://github.com/ariya/phantomjs/issues/11395 + * @type boolean + */ + var isPhantomJS = typeof navigator !== 'undefined' && /PhantomJS/i.test(navigator.userAgent); + + /** + * When true, avoids using Blobs to encode payloads. + * @type boolean + */ + var dontSendBlobs = isAndroid || isPhantomJS; + + /** + * Current protocol version. + */ + + exports.protocol = 3; + + /** + * Packet types. + */ + + var packets = exports.packets = { + open: 0 // non-ws + , close: 1 // non-ws + , ping: 2 + , pong: 3 + , message: 4 + , upgrade: 5 + , noop: 6 + }; + + var packetslist = keys(packets); + + /** + * Premade error packet. + */ + + var err = { type: 'error', data: 'parser error' }; + + /** + * Create a blob api even for blob builder when vendor prefixes exist + */ + + var Blob = __webpack_require__(16); + + /** + * Encodes a packet. + * + * [ ] + * + * Example: + * + * 5hello world + * 3 + * 4 + * + * Binary is encoded in an identical principle + * + * @api private + */ + + exports.encodePacket = function (packet, supportsBinary, utf8encode, callback) { + if (typeof supportsBinary === 'function') { + callback = supportsBinary; + supportsBinary = false; + } + + if (typeof utf8encode === 'function') { + callback = utf8encode; + utf8encode = null; + } + + var data = (packet.data === undefined) + ? undefined + : packet.data.buffer || packet.data; + + if (typeof ArrayBuffer !== 'undefined' && data instanceof ArrayBuffer) { + return encodeArrayBuffer(packet, supportsBinary, callback); + } else if (typeof Blob !== 'undefined' && data instanceof Blob) { + return encodeBlob(packet, supportsBinary, callback); + } + + // might be an object with { base64: true, data: dataAsBase64String } + if (data && data.base64) { + return encodeBase64Object(packet, callback); + } + + // Sending data as a utf-8 string + var encoded = packets[packet.type]; + + // data fragment is optional + if (undefined !== packet.data) { + encoded += utf8encode ? utf8.encode(String(packet.data), { strict: false }) : String(packet.data); + } + + return callback('' + encoded); + + }; + + function encodeBase64Object(packet, callback) { + // packet data is an object { base64: true, data: dataAsBase64String } + var message = 'b' + exports.packets[packet.type] + packet.data.data; + return callback(message); + } + + /** + * Encode packet helpers for binary types + */ + + function encodeArrayBuffer(packet, supportsBinary, callback) { + if (!supportsBinary) { + return exports.encodeBase64Packet(packet, callback); + } + + var data = packet.data; + var contentArray = new Uint8Array(data); + var resultBuffer = new Uint8Array(1 + data.byteLength); + + resultBuffer[0] = packets[packet.type]; + for (var i = 0; i < contentArray.length; i++) { + resultBuffer[i+1] = contentArray[i]; + } + + return callback(resultBuffer.buffer); + } + + function encodeBlobAsArrayBuffer(packet, supportsBinary, callback) { + if (!supportsBinary) { + return exports.encodeBase64Packet(packet, callback); + } + + var fr = new FileReader(); + fr.onload = function() { + exports.encodePacket({ type: packet.type, data: fr.result }, supportsBinary, true, callback); + }; + return fr.readAsArrayBuffer(packet.data); + } + + function encodeBlob(packet, supportsBinary, callback) { + if (!supportsBinary) { + return exports.encodeBase64Packet(packet, callback); + } + + if (dontSendBlobs) { + return encodeBlobAsArrayBuffer(packet, supportsBinary, callback); + } + + var length = new Uint8Array(1); + length[0] = packets[packet.type]; + var blob = new Blob([length.buffer, packet.data]); + + return callback(blob); + } + + /** + * Encodes a packet with binary data in a base64 string + * + * @param {Object} packet, has `type` and `data` + * @return {String} base64 encoded message + */ + + exports.encodeBase64Packet = function(packet, callback) { + var message = 'b' + exports.packets[packet.type]; + if (typeof Blob !== 'undefined' && packet.data instanceof Blob) { + var fr = new FileReader(); + fr.onload = function() { + var b64 = fr.result.split(',')[1]; + callback(message + b64); + }; + return fr.readAsDataURL(packet.data); + } + + var b64data; + try { + b64data = String.fromCharCode.apply(null, new Uint8Array(packet.data)); + } catch (e) { + // iPhone Safari doesn't let you apply with typed arrays + var typed = new Uint8Array(packet.data); + var basic = new Array(typed.length); + for (var i = 0; i < typed.length; i++) { + basic[i] = typed[i]; + } + b64data = String.fromCharCode.apply(null, basic); + } + message += btoa(b64data); + return callback(message); + }; + + /** + * Decodes a packet. Changes format to Blob if requested. + * + * @return {Object} with `type` and `data` (if any) + * @api private + */ + + exports.decodePacket = function (data, binaryType, utf8decode) { + if (data === undefined) { + return err; + } + // String data + if (typeof data === 'string') { + if (data.charAt(0) === 'b') { + return exports.decodeBase64Packet(data.substr(1), binaryType); + } + + if (utf8decode) { + data = tryDecode(data); + if (data === false) { + return err; + } + } + var type = data.charAt(0); + + if (Number(type) != type || !packetslist[type]) { + return err; + } + + if (data.length > 1) { + return { type: packetslist[type], data: data.substring(1) }; + } else { + return { type: packetslist[type] }; + } + } + + var asArray = new Uint8Array(data); + var type = asArray[0]; + var rest = sliceBuffer(data, 1); + if (Blob && binaryType === 'blob') { + rest = new Blob([rest]); + } + return { type: packetslist[type], data: rest }; + }; + + function tryDecode(data) { + try { + data = utf8.decode(data, { strict: false }); + } catch (e) { + return false; + } + return data; + } + + /** + * Decodes a packet encoded in a base64 string + * + * @param {String} base64 encoded message + * @return {Object} with `type` and `data` (if any) + */ + + exports.decodeBase64Packet = function(msg, binaryType) { + var type = packetslist[msg.charAt(0)]; + if (!base64encoder) { + return { type: type, data: { base64: true, data: msg.substr(1) } }; + } + + var data = base64encoder.decode(msg.substr(1)); + + if (binaryType === 'blob' && Blob) { + data = new Blob([data]); + } + + return { type: type, data: data }; + }; + + /** + * Encodes multiple messages (payload). + * + * :data + * + * Example: + * + * 11:hello world2:hi + * + * If any contents are binary, they will be encoded as base64 strings. Base64 + * encoded strings are marked with a b before the length specifier + * + * @param {Array} packets + * @api private + */ + + exports.encodePayload = function (packets, supportsBinary, callback) { + if (typeof supportsBinary === 'function') { + callback = supportsBinary; + supportsBinary = null; + } + + var isBinary = hasBinary(packets); + + if (supportsBinary && isBinary) { + if (Blob && !dontSendBlobs) { + return exports.encodePayloadAsBlob(packets, callback); + } + + return exports.encodePayloadAsArrayBuffer(packets, callback); + } + + if (!packets.length) { + return callback('0:'); + } + + function setLengthHeader(message) { + return message.length + ':' + message; + } + + function encodeOne(packet, doneCallback) { + exports.encodePacket(packet, !isBinary ? false : supportsBinary, false, function(message) { + doneCallback(null, setLengthHeader(message)); + }); + } + + map(packets, encodeOne, function(err, results) { + return callback(results.join('')); + }); + }; + + /** + * Async array map using after + */ + + function map(ary, each, done) { + var result = new Array(ary.length); + var next = after(ary.length, done); + + var eachWithIndex = function(i, el, cb) { + each(el, function(error, msg) { + result[i] = msg; + cb(error, result); + }); + }; + + for (var i = 0; i < ary.length; i++) { + eachWithIndex(i, ary[i], next); + } + } + + /* + * Decodes data when a payload is maybe expected. Possible binary contents are + * decoded from their base64 representation + * + * @param {String} data, callback method + * @api public + */ + + exports.decodePayload = function (data, binaryType, callback) { + if (typeof data !== 'string') { + return exports.decodePayloadAsBinary(data, binaryType, callback); + } + + if (typeof binaryType === 'function') { + callback = binaryType; + binaryType = null; + } + + var packet; + if (data === '') { + // parser error - ignoring payload + return callback(err, 0, 1); + } + + var length = '', n, msg; + + for (var i = 0, l = data.length; i < l; i++) { + var chr = data.charAt(i); + + if (chr !== ':') { + length += chr; + continue; + } + + if (length === '' || (length != (n = Number(length)))) { + // parser error - ignoring payload + return callback(err, 0, 1); + } + + msg = data.substr(i + 1, n); + + if (length != msg.length) { + // parser error - ignoring payload + return callback(err, 0, 1); + } + + if (msg.length) { + packet = exports.decodePacket(msg, binaryType, false); + + if (err.type === packet.type && err.data === packet.data) { + // parser error in individual packet - ignoring payload + return callback(err, 0, 1); + } + + var ret = callback(packet, i + n, l); + if (false === ret) return; + } + + // advance cursor + i += n; + length = ''; + } + + if (length !== '') { + // parser error - ignoring payload + return callback(err, 0, 1); + } + + }; + + /** + * Encodes multiple messages (payload) as binary. + * + * <1 = binary, 0 = string>[...] + * + * Example: + * 1 3 255 1 2 3, if the binary contents are interpreted as 8 bit integers + * + * @param {Array} packets + * @return {ArrayBuffer} encoded payload + * @api private + */ + + exports.encodePayloadAsArrayBuffer = function(packets, callback) { + if (!packets.length) { + return callback(new ArrayBuffer(0)); + } + + function encodeOne(packet, doneCallback) { + exports.encodePacket(packet, true, true, function(data) { + return doneCallback(null, data); + }); + } + + map(packets, encodeOne, function(err, encodedPackets) { + var totalLength = encodedPackets.reduce(function(acc, p) { + var len; + if (typeof p === 'string'){ + len = p.length; + } else { + len = p.byteLength; + } + return acc + len.toString().length + len + 2; // string/binary identifier + separator = 2 + }, 0); + + var resultArray = new Uint8Array(totalLength); + + var bufferIndex = 0; + encodedPackets.forEach(function(p) { + var isString = typeof p === 'string'; + var ab = p; + if (isString) { + var view = new Uint8Array(p.length); + for (var i = 0; i < p.length; i++) { + view[i] = p.charCodeAt(i); + } + ab = view.buffer; + } + + if (isString) { // not true binary + resultArray[bufferIndex++] = 0; + } else { // true binary + resultArray[bufferIndex++] = 1; + } + + var lenStr = ab.byteLength.toString(); + for (var i = 0; i < lenStr.length; i++) { + resultArray[bufferIndex++] = parseInt(lenStr[i]); + } + resultArray[bufferIndex++] = 255; + + var view = new Uint8Array(ab); + for (var i = 0; i < view.length; i++) { + resultArray[bufferIndex++] = view[i]; + } + }); + + return callback(resultArray.buffer); + }); + }; + + /** + * Encode as Blob + */ + + exports.encodePayloadAsBlob = function(packets, callback) { + function encodeOne(packet, doneCallback) { + exports.encodePacket(packet, true, true, function(encoded) { + var binaryIdentifier = new Uint8Array(1); + binaryIdentifier[0] = 1; + if (typeof encoded === 'string') { + var view = new Uint8Array(encoded.length); + for (var i = 0; i < encoded.length; i++) { + view[i] = encoded.charCodeAt(i); + } + encoded = view.buffer; + binaryIdentifier[0] = 0; + } + + var len = (encoded instanceof ArrayBuffer) + ? encoded.byteLength + : encoded.size; + + var lenStr = len.toString(); + var lengthAry = new Uint8Array(lenStr.length + 1); + for (var i = 0; i < lenStr.length; i++) { + lengthAry[i] = parseInt(lenStr[i]); + } + lengthAry[lenStr.length] = 255; + + if (Blob) { + var blob = new Blob([binaryIdentifier.buffer, lengthAry.buffer, encoded]); + doneCallback(null, blob); + } + }); + } + + map(packets, encodeOne, function(err, results) { + return callback(new Blob(results)); + }); + }; + + /* + * Decodes data when a payload is maybe expected. Strings are decoded by + * interpreting each byte as a key code for entries marked to start with 0. See + * description of encodePayloadAsBinary + * + * @param {ArrayBuffer} data, callback method + * @api public + */ + + exports.decodePayloadAsBinary = function (data, binaryType, callback) { + if (typeof binaryType === 'function') { + callback = binaryType; + binaryType = null; + } + + var bufferTail = data; + var buffers = []; + + while (bufferTail.byteLength > 0) { + var tailArray = new Uint8Array(bufferTail); + var isString = tailArray[0] === 0; + var msgLength = ''; + + for (var i = 1; ; i++) { + if (tailArray[i] === 255) break; + + // 310 = char length of Number.MAX_VALUE + if (msgLength.length > 310) { + return callback(err, 0, 1); + } + + msgLength += tailArray[i]; + } + + bufferTail = sliceBuffer(bufferTail, 2 + msgLength.length); + msgLength = parseInt(msgLength); + + var msg = sliceBuffer(bufferTail, 0, msgLength); + if (isString) { + try { + msg = String.fromCharCode.apply(null, new Uint8Array(msg)); + } catch (e) { + // iPhone Safari doesn't let you apply to typed arrays + var typed = new Uint8Array(msg); + msg = ''; + for (var i = 0; i < typed.length; i++) { + msg += String.fromCharCode(typed[i]); + } + } + } + + buffers.push(msg); + bufferTail = sliceBuffer(bufferTail, msgLength); + } + + var total = buffers.length; + buffers.forEach(function(buffer, i) { + callback(exports.decodePacket(buffer, binaryType, true), i, total); + }); + }; + + +/***/ }, +/* 9 */ +/***/ function(module, exports) { + + + /** + * Gets the keys for an object. + * + * @return {Array} keys + * @api private + */ + + module.exports = Object.keys || function keys (obj){ + var arr = []; + var has = Object.prototype.hasOwnProperty; + + for (var i in obj) { + if (has.call(obj, i)) { + arr.push(i); + } + } + return arr; + }; + + +/***/ }, +/* 10 */ +/***/ function(module, exports, __webpack_require__) { + + /* global Blob File */ + + /* + * Module requirements. + */ + + var isArray = __webpack_require__(11); + + var toString = Object.prototype.toString; + var withNativeBlob = typeof Blob === 'function' || + typeof Blob !== 'undefined' && toString.call(Blob) === '[object BlobConstructor]'; + var withNativeFile = typeof File === 'function' || + typeof File !== 'undefined' && toString.call(File) === '[object FileConstructor]'; + + /** + * Module exports. + */ + + module.exports = hasBinary; + + /** + * Checks for binary data. + * + * Supports Buffer, ArrayBuffer, Blob and File. + * + * @param {Object} anything + * @api public + */ + + function hasBinary (obj) { + if (!obj || typeof obj !== 'object') { + return false; + } + + if (isArray(obj)) { + for (var i = 0, l = obj.length; i < l; i++) { + if (hasBinary(obj[i])) { + return true; + } + } + return false; + } + + if ((typeof Buffer === 'function' && Buffer.isBuffer && Buffer.isBuffer(obj)) || + (typeof ArrayBuffer === 'function' && obj instanceof ArrayBuffer) || + (withNativeBlob && obj instanceof Blob) || + (withNativeFile && obj instanceof File) + ) { + return true; + } + + // see: https://github.com/Automattic/has-binary/pull/4 + if (obj.toJSON && typeof obj.toJSON === 'function' && arguments.length === 1) { + return hasBinary(obj.toJSON(), true); + } + + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key) && hasBinary(obj[key])) { + return true; + } + } + + return false; + } + + +/***/ }, +/* 11 */ +/***/ function(module, exports) { + + var toString = {}.toString; + + module.exports = Array.isArray || function (arr) { + return toString.call(arr) == '[object Array]'; + }; + + +/***/ }, +/* 12 */ +/***/ function(module, exports) { + + /** + * An abstraction for slicing an arraybuffer even when + * ArrayBuffer.prototype.slice is not supported + * + * @api public + */ + + module.exports = function(arraybuffer, start, end) { + var bytes = arraybuffer.byteLength; + start = start || 0; + end = end || bytes; + + if (arraybuffer.slice) { return arraybuffer.slice(start, end); } + + if (start < 0) { start += bytes; } + if (end < 0) { end += bytes; } + if (end > bytes) { end = bytes; } + + if (start >= bytes || start >= end || bytes === 0) { + return new ArrayBuffer(0); + } + + var abv = new Uint8Array(arraybuffer); + var result = new Uint8Array(end - start); + for (var i = start, ii = 0; i < end; i++, ii++) { + result[ii] = abv[i]; + } + return result.buffer; + }; + + +/***/ }, +/* 13 */ +/***/ function(module, exports) { + + module.exports = after + + function after(count, callback, err_cb) { + var bail = false + err_cb = err_cb || noop + proxy.count = count + + return (count === 0) ? callback() : proxy + + function proxy(err, result) { + if (proxy.count <= 0) { + throw new Error('after called too many times') + } + --proxy.count + + // after first error, rest are passed to err_cb + if (err) { + bail = true + callback(err) + // future error callbacks will go to error handler + callback = err_cb + } else if (proxy.count === 0 && !bail) { + callback(null, result) + } + } + } + + function noop() {} + + +/***/ }, +/* 14 */ +/***/ function(module, exports) { + + /*! https://mths.be/utf8js v2.1.2 by @mathias */ + + var stringFromCharCode = String.fromCharCode; + + // Taken from https://mths.be/punycode + function ucs2decode(string) { + var output = []; + var counter = 0; + var length = string.length; + var value; + var extra; + while (counter < length) { + value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // high surrogate, and there is a next character + extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // low surrogate + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // unmatched surrogate; only append this code unit, in case the next + // code unit is the high surrogate of a surrogate pair + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; + } + + // Taken from https://mths.be/punycode + function ucs2encode(array) { + var length = array.length; + var index = -1; + var value; + var output = ''; + while (++index < length) { + value = array[index]; + if (value > 0xFFFF) { + value -= 0x10000; + output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800); + value = 0xDC00 | value & 0x3FF; + } + output += stringFromCharCode(value); + } + return output; + } + + function checkScalarValue(codePoint, strict) { + if (codePoint >= 0xD800 && codePoint <= 0xDFFF) { + if (strict) { + throw Error( + 'Lone surrogate U+' + codePoint.toString(16).toUpperCase() + + ' is not a scalar value' + ); + } + return false; + } + return true; + } + /*--------------------------------------------------------------------------*/ + + function createByte(codePoint, shift) { + return stringFromCharCode(((codePoint >> shift) & 0x3F) | 0x80); + } + + function encodeCodePoint(codePoint, strict) { + if ((codePoint & 0xFFFFFF80) == 0) { // 1-byte sequence + return stringFromCharCode(codePoint); + } + var symbol = ''; + if ((codePoint & 0xFFFFF800) == 0) { // 2-byte sequence + symbol = stringFromCharCode(((codePoint >> 6) & 0x1F) | 0xC0); + } + else if ((codePoint & 0xFFFF0000) == 0) { // 3-byte sequence + if (!checkScalarValue(codePoint, strict)) { + codePoint = 0xFFFD; + } + symbol = stringFromCharCode(((codePoint >> 12) & 0x0F) | 0xE0); + symbol += createByte(codePoint, 6); + } + else if ((codePoint & 0xFFE00000) == 0) { // 4-byte sequence + symbol = stringFromCharCode(((codePoint >> 18) & 0x07) | 0xF0); + symbol += createByte(codePoint, 12); + symbol += createByte(codePoint, 6); + } + symbol += stringFromCharCode((codePoint & 0x3F) | 0x80); + return symbol; + } + + function utf8encode(string, opts) { + opts = opts || {}; + var strict = false !== opts.strict; + + var codePoints = ucs2decode(string); + var length = codePoints.length; + var index = -1; + var codePoint; + var byteString = ''; + while (++index < length) { + codePoint = codePoints[index]; + byteString += encodeCodePoint(codePoint, strict); + } + return byteString; + } + + /*--------------------------------------------------------------------------*/ + + function readContinuationByte() { + if (byteIndex >= byteCount) { + throw Error('Invalid byte index'); + } + + var continuationByte = byteArray[byteIndex] & 0xFF; + byteIndex++; + + if ((continuationByte & 0xC0) == 0x80) { + return continuationByte & 0x3F; + } + + // If we end up here, it’s not a continuation byte + throw Error('Invalid continuation byte'); + } + + function decodeSymbol(strict) { + var byte1; + var byte2; + var byte3; + var byte4; + var codePoint; + + if (byteIndex > byteCount) { + throw Error('Invalid byte index'); + } + + if (byteIndex == byteCount) { + return false; + } + + // Read first byte + byte1 = byteArray[byteIndex] & 0xFF; + byteIndex++; + + // 1-byte sequence (no continuation bytes) + if ((byte1 & 0x80) == 0) { + return byte1; + } + + // 2-byte sequence + if ((byte1 & 0xE0) == 0xC0) { + byte2 = readContinuationByte(); + codePoint = ((byte1 & 0x1F) << 6) | byte2; + if (codePoint >= 0x80) { + return codePoint; + } else { + throw Error('Invalid continuation byte'); + } + } + + // 3-byte sequence (may include unpaired surrogates) + if ((byte1 & 0xF0) == 0xE0) { + byte2 = readContinuationByte(); + byte3 = readContinuationByte(); + codePoint = ((byte1 & 0x0F) << 12) | (byte2 << 6) | byte3; + if (codePoint >= 0x0800) { + return checkScalarValue(codePoint, strict) ? codePoint : 0xFFFD; + } else { + throw Error('Invalid continuation byte'); + } + } + + // 4-byte sequence + if ((byte1 & 0xF8) == 0xF0) { + byte2 = readContinuationByte(); + byte3 = readContinuationByte(); + byte4 = readContinuationByte(); + codePoint = ((byte1 & 0x07) << 0x12) | (byte2 << 0x0C) | + (byte3 << 0x06) | byte4; + if (codePoint >= 0x010000 && codePoint <= 0x10FFFF) { + return codePoint; + } + } + + throw Error('Invalid UTF-8 detected'); + } + + var byteArray; + var byteCount; + var byteIndex; + function utf8decode(byteString, opts) { + opts = opts || {}; + var strict = false !== opts.strict; + + byteArray = ucs2decode(byteString); + byteCount = byteArray.length; + byteIndex = 0; + var codePoints = []; + var tmp; + while ((tmp = decodeSymbol(strict)) !== false) { + codePoints.push(tmp); + } + return ucs2encode(codePoints); + } + + module.exports = { + version: '2.1.2', + encode: utf8encode, + decode: utf8decode + }; + + +/***/ }, +/* 15 */ +/***/ function(module, exports) { + + /* + * base64-arraybuffer + * https://github.com/niklasvh/base64-arraybuffer + * + * Copyright (c) 2012 Niklas von Hertzen + * Licensed under the MIT license. + */ + (function(){ + "use strict"; + + var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + + // Use a lookup table to find the index. + var lookup = new Uint8Array(256); + for (var i = 0; i < chars.length; i++) { + lookup[chars.charCodeAt(i)] = i; + } + + exports.encode = function(arraybuffer) { + var bytes = new Uint8Array(arraybuffer), + i, len = bytes.length, base64 = ""; + + for (i = 0; i < len; i+=3) { + base64 += chars[bytes[i] >> 2]; + base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)]; + base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)]; + base64 += chars[bytes[i + 2] & 63]; + } + + if ((len % 3) === 2) { + base64 = base64.substring(0, base64.length - 1) + "="; + } else if (len % 3 === 1) { + base64 = base64.substring(0, base64.length - 2) + "=="; + } + + return base64; + }; + + exports.decode = function(base64) { + var bufferLength = base64.length * 0.75, + len = base64.length, i, p = 0, + encoded1, encoded2, encoded3, encoded4; + + if (base64[base64.length - 1] === "=") { + bufferLength--; + if (base64[base64.length - 2] === "=") { + bufferLength--; + } + } + + var arraybuffer = new ArrayBuffer(bufferLength), + bytes = new Uint8Array(arraybuffer); + + for (i = 0; i < len; i+=4) { + encoded1 = lookup[base64.charCodeAt(i)]; + encoded2 = lookup[base64.charCodeAt(i+1)]; + encoded3 = lookup[base64.charCodeAt(i+2)]; + encoded4 = lookup[base64.charCodeAt(i+3)]; + + bytes[p++] = (encoded1 << 2) | (encoded2 >> 4); + bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2); + bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63); + } + + return arraybuffer; + }; + })(); + + +/***/ }, +/* 16 */ +/***/ function(module, exports) { + + /** + * Create a blob builder even when vendor prefixes exist + */ + + var BlobBuilder = typeof BlobBuilder !== 'undefined' ? BlobBuilder : + typeof WebKitBlobBuilder !== 'undefined' ? WebKitBlobBuilder : + typeof MSBlobBuilder !== 'undefined' ? MSBlobBuilder : + typeof MozBlobBuilder !== 'undefined' ? MozBlobBuilder : + false; + + /** + * Check if Blob constructor is supported + */ + + var blobSupported = (function() { + try { + var a = new Blob(['hi']); + return a.size === 2; + } catch(e) { + return false; + } + })(); + + /** + * Check if Blob constructor supports ArrayBufferViews + * Fails in Safari 6, so we need to map to ArrayBuffers there. + */ + + var blobSupportsArrayBufferView = blobSupported && (function() { + try { + var b = new Blob([new Uint8Array([1,2])]); + return b.size === 2; + } catch(e) { + return false; + } + })(); + + /** + * Check if BlobBuilder is supported + */ + + var blobBuilderSupported = BlobBuilder + && BlobBuilder.prototype.append + && BlobBuilder.prototype.getBlob; + + /** + * Helper function that maps ArrayBufferViews to ArrayBuffers + * Used by BlobBuilder constructor and old browsers that didn't + * support it in the Blob constructor. + */ + + function mapArrayBufferViews(ary) { + return ary.map(function(chunk) { + if (chunk.buffer instanceof ArrayBuffer) { + var buf = chunk.buffer; + + // if this is a subarray, make a copy so we only + // include the subarray region from the underlying buffer + if (chunk.byteLength !== buf.byteLength) { + var copy = new Uint8Array(chunk.byteLength); + copy.set(new Uint8Array(buf, chunk.byteOffset, chunk.byteLength)); + buf = copy.buffer; + } + + return buf; + } + + return chunk; + }); + } + + function BlobBuilderConstructor(ary, options) { + options = options || {}; + + var bb = new BlobBuilder(); + mapArrayBufferViews(ary).forEach(function(part) { + bb.append(part); + }); + + return (options.type) ? bb.getBlob(options.type) : bb.getBlob(); + }; + + function BlobConstructor(ary, options) { + return new Blob(mapArrayBufferViews(ary), options || {}); + }; + + if (typeof Blob !== 'undefined') { + BlobBuilderConstructor.prototype = Blob.prototype; + BlobConstructor.prototype = Blob.prototype; + } + + module.exports = (function() { + if (blobSupported) { + return blobSupportsArrayBufferView ? Blob : BlobConstructor; + } else if (blobBuilderSupported) { + return BlobBuilderConstructor; + } else { + return undefined; + } + })(); + + +/***/ }, +/* 17 */ +/***/ function(module, exports, __webpack_require__) { + + + /** + * Expose `Emitter`. + */ + + if (true) { + module.exports = Emitter; + } + + /** + * Initialize a new `Emitter`. + * + * @api public + */ + + function Emitter(obj) { + if (obj) return mixin(obj); + }; + + /** + * Mixin the emitter properties. + * + * @param {Object} obj + * @return {Object} + * @api private + */ + + function mixin(obj) { + for (var key in Emitter.prototype) { + obj[key] = Emitter.prototype[key]; + } + return obj; + } + + /** + * Listen on the given `event` with `fn`. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + + Emitter.prototype.on = + Emitter.prototype.addEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + (this._callbacks['$' + event] = this._callbacks['$' + event] || []) + .push(fn); + return this; + }; + + /** + * Adds an `event` listener that will be invoked a single + * time then automatically removed. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + + Emitter.prototype.once = function(event, fn){ + function on() { + this.off(event, on); + fn.apply(this, arguments); + } + + on.fn = fn; + this.on(event, on); + return this; + }; + + /** + * Remove the given callback for `event` or all + * registered callbacks. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + + Emitter.prototype.off = + Emitter.prototype.removeListener = + Emitter.prototype.removeAllListeners = + Emitter.prototype.removeEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + + // all + if (0 == arguments.length) { + this._callbacks = {}; + return this; + } + + // specific event + var callbacks = this._callbacks['$' + event]; + if (!callbacks) return this; + + // remove all handlers + if (1 == arguments.length) { + delete this._callbacks['$' + event]; + return this; + } + + // remove specific handler + var cb; + for (var i = 0; i < callbacks.length; i++) { + cb = callbacks[i]; + if (cb === fn || cb.fn === fn) { + callbacks.splice(i, 1); + break; + } + } + return this; + }; + + /** + * Emit `event` with the given args. + * + * @param {String} event + * @param {Mixed} ... + * @return {Emitter} + */ + + Emitter.prototype.emit = function(event){ + this._callbacks = this._callbacks || {}; + var args = [].slice.call(arguments, 1) + , callbacks = this._callbacks['$' + event]; + + if (callbacks) { + callbacks = callbacks.slice(0); + for (var i = 0, len = callbacks.length; i < len; ++i) { + callbacks[i].apply(this, args); + } + } + + return this; + }; + + /** + * Return array of callbacks for `event`. + * + * @param {String} event + * @return {Array} + * @api public + */ + + Emitter.prototype.listeners = function(event){ + this._callbacks = this._callbacks || {}; + return this._callbacks['$' + event] || []; + }; + + /** + * Check if this emitter has `event` handlers. + * + * @param {String} event + * @return {Boolean} + * @api public + */ + + Emitter.prototype.hasListeners = function(event){ + return !! this.listeners(event).length; + }; + + +/***/ }, +/* 18 */ +/***/ function(module, exports) { + + /** + * Compiles a querystring + * Returns string representation of the object + * + * @param {Object} + * @api private + */ + + exports.encode = function (obj) { + var str = ''; + + for (var i in obj) { + if (obj.hasOwnProperty(i)) { + if (str.length) str += '&'; + str += encodeURIComponent(i) + '=' + encodeURIComponent(obj[i]); + } + } + + return str; + }; + + /** + * Parses a simple querystring into an object + * + * @param {String} qs + * @api private + */ + + exports.decode = function(qs){ + var qry = {}; + var pairs = qs.split('&'); + for (var i = 0, l = pairs.length; i < l; i++) { + var pair = pairs[i].split('='); + qry[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]); + } + return qry; + }; + + +/***/ }, +/* 19 */ +/***/ function(module, exports) { + + + module.exports = function(a, b){ + var fn = function(){}; + fn.prototype = b.prototype; + a.prototype = new fn; + a.prototype.constructor = a; + }; + +/***/ }, +/* 20 */ +/***/ function(module, exports) { + + 'use strict'; + + var alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_'.split('') + , length = 64 + , map = {} + , seed = 0 + , i = 0 + , prev; + + /** + * Return a string representing the specified number. + * + * @param {Number} num The number to convert. + * @returns {String} The string representation of the number. + * @api public + */ + function encode(num) { + var encoded = ''; + + do { + encoded = alphabet[num % length] + encoded; + num = Math.floor(num / length); + } while (num > 0); + + return encoded; + } + + /** + * Return the integer value specified by the given string. + * + * @param {String} str The string to convert. + * @returns {Number} The integer value represented by the string. + * @api public + */ + function decode(str) { + var decoded = 0; + + for (i = 0; i < str.length; i++) { + decoded = decoded * length + map[str.charAt(i)]; + } + + return decoded; + } + + /** + * Yeast: A tiny growing id generator. + * + * @returns {String} A unique id. + * @api public + */ + function yeast() { + var now = encode(+new Date()); + + if (now !== prev) return seed = 0, prev = now; + return now +'.'+ encode(seed++); + } + + // + // Map each character to its index. + // + for (; i < length; i++) map[alphabet[i]] = i; + + // + // Expose the `yeast`, `encode` and `decode` functions. + // + yeast.encode = encode; + yeast.decode = decode; + module.exports = yeast; + + +/***/ }, +/* 21 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(process) {/** + * This is the web browser implementation of `debug()`. + * + * Expose `debug()` as the module. + */ + + exports = module.exports = __webpack_require__(23); + exports.log = log; + exports.formatArgs = formatArgs; + exports.save = save; + exports.load = load; + exports.useColors = useColors; + exports.storage = 'undefined' != typeof chrome + && 'undefined' != typeof chrome.storage + ? chrome.storage.local + : localstorage(); + + /** + * Colors. + */ + + exports.colors = [ + '#0000CC', '#0000FF', '#0033CC', '#0033FF', '#0066CC', '#0066FF', '#0099CC', + '#0099FF', '#00CC00', '#00CC33', '#00CC66', '#00CC99', '#00CCCC', '#00CCFF', + '#3300CC', '#3300FF', '#3333CC', '#3333FF', '#3366CC', '#3366FF', '#3399CC', + '#3399FF', '#33CC00', '#33CC33', '#33CC66', '#33CC99', '#33CCCC', '#33CCFF', + '#6600CC', '#6600FF', '#6633CC', '#6633FF', '#66CC00', '#66CC33', '#9900CC', + '#9900FF', '#9933CC', '#9933FF', '#99CC00', '#99CC33', '#CC0000', '#CC0033', + '#CC0066', '#CC0099', '#CC00CC', '#CC00FF', '#CC3300', '#CC3333', '#CC3366', + '#CC3399', '#CC33CC', '#CC33FF', '#CC6600', '#CC6633', '#CC9900', '#CC9933', + '#CCCC00', '#CCCC33', '#FF0000', '#FF0033', '#FF0066', '#FF0099', '#FF00CC', + '#FF00FF', '#FF3300', '#FF3333', '#FF3366', '#FF3399', '#FF33CC', '#FF33FF', + '#FF6600', '#FF6633', '#FF9900', '#FF9933', '#FFCC00', '#FFCC33' + ]; + + /** + * Currently only WebKit-based Web Inspectors, Firefox >= v31, + * and the Firebug extension (any Firefox version) are known + * to support "%c" CSS customizations. + * + * TODO: add a `localStorage` variable to explicitly enable/disable colors + */ + + function useColors() { + // NB: In an Electron preload script, document will be defined but not fully + // initialized. Since we know we're in Chrome, we'll just detect this case + // explicitly + if (typeof window !== 'undefined' && window.process && window.process.type === 'renderer') { + return true; + } + + // Internet Explorer and Edge do not support colors. + if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { + return false; + } + + // is webkit? http://stackoverflow.com/a/16459606/376773 + // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 + return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) || + // is firebug? http://stackoverflow.com/a/398120/376773 + (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) || + // is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) || + // double check webkit in userAgent just in case we are in a worker + (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)); + } + + /** + * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default. + */ + + exports.formatters.j = function(v) { + try { + return JSON.stringify(v); + } catch (err) { + return '[UnexpectedJSONParseError]: ' + err.message; + } + }; + + + /** + * Colorize log arguments if enabled. + * + * @api public + */ + + function formatArgs(args) { + var useColors = this.useColors; + + args[0] = (useColors ? '%c' : '') + + this.namespace + + (useColors ? ' %c' : ' ') + + args[0] + + (useColors ? '%c ' : ' ') + + '+' + exports.humanize(this.diff); + + if (!useColors) return; + + var c = 'color: ' + this.color; + args.splice(1, 0, c, 'color: inherit') + + // the final "%c" is somewhat tricky, because there could be other + // arguments passed either before or after the %c, so we need to + // figure out the correct index to insert the CSS into + var index = 0; + var lastC = 0; + args[0].replace(/%[a-zA-Z%]/g, function(match) { + if ('%%' === match) return; + index++; + if ('%c' === match) { + // we only are interested in the *last* %c + // (the user may have provided their own) + lastC = index; + } + }); + + args.splice(lastC, 0, c); + } + + /** + * Invokes `console.log()` when available. + * No-op when `console.log` is not a "function". + * + * @api public + */ + + function log() { + // this hackery is required for IE8/9, where + // the `console.log` function doesn't have 'apply' + return 'object' === typeof console + && console.log + && Function.prototype.apply.call(console.log, console, arguments); + } + + /** + * Save `namespaces`. + * + * @param {String} namespaces + * @api private + */ + + function save(namespaces) { + try { + if (null == namespaces) { + exports.storage.removeItem('debug'); + } else { + exports.storage.debug = namespaces; + } + } catch(e) {} + } + + /** + * Load `namespaces`. + * + * @return {String} returns the previously persisted debug modes + * @api private + */ + + function load() { + var r; + try { + r = exports.storage.debug; + } catch(e) {} + + // If debug isn't set in LS, and we're in Electron, try to load $DEBUG + if (!r && typeof process !== 'undefined' && 'env' in process) { + r = process.env.DEBUG; + } + + return r; + } + + /** + * Enable namespaces listed in `localStorage.debug` initially. + */ + + exports.enable(load()); + + /** + * Localstorage attempts to return the localstorage. + * + * This is necessary because safari throws + * when a user disables cookies/localstorage + * and you attempt to access it. + * + * @return {LocalStorage} + * @api private + */ + + function localstorage() { + try { + return window.localStorage; + } catch (e) {} + } + + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(22))) + +/***/ }, +/* 22 */ +/***/ function(module, exports) { + + // shim for using process in browser + var process = module.exports = {}; + + // cached from whatever global is present so that test runners that stub it + // don't break things. But we need to wrap it in a try catch in case it is + // wrapped in strict mode code which doesn't define any globals. It's inside a + // function because try/catches deoptimize in certain engines. + + var cachedSetTimeout; + var cachedClearTimeout; + + function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); + } + function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); + } + (function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } + } ()) + function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + + } + function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + + } + var queue = []; + var draining = false; + var currentQueue; + var queueIndex = -1; + + function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } + } + + function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); + } + + process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } + }; + + // v8 likes predictible objects + function Item(fun, array) { + this.fun = fun; + this.array = array; + } + Item.prototype.run = function () { + this.fun.apply(null, this.array); + }; + process.title = 'browser'; + process.browser = true; + process.env = {}; + process.argv = []; + process.version = ''; // empty string to avoid regexp issues + process.versions = {}; + + function noop() {} + + process.on = noop; + process.addListener = noop; + process.once = noop; + process.off = noop; + process.removeListener = noop; + process.removeAllListeners = noop; + process.emit = noop; + process.prependListener = noop; + process.prependOnceListener = noop; + + process.listeners = function (name) { return [] } + + process.binding = function (name) { + throw new Error('process.binding is not supported'); + }; + + process.cwd = function () { return '/' }; + process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); + }; + process.umask = function() { return 0; }; + + +/***/ }, +/* 23 */ +/***/ function(module, exports, __webpack_require__) { + + + /** + * This is the common logic for both the Node.js and web browser + * implementations of `debug()`. + * + * Expose `debug()` as the module. + */ + + exports = module.exports = createDebug.debug = createDebug['default'] = createDebug; + exports.coerce = coerce; + exports.disable = disable; + exports.enable = enable; + exports.enabled = enabled; + exports.humanize = __webpack_require__(24); + + /** + * Active `debug` instances. + */ + exports.instances = []; + + /** + * The currently active debug mode names, and names to skip. + */ + + exports.names = []; + exports.skips = []; + + /** + * Map of special "%n" handling functions, for the debug "format" argument. + * + * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". + */ + + exports.formatters = {}; + + /** + * Select a color. + * @param {String} namespace + * @return {Number} + * @api private + */ + + function selectColor(namespace) { + var hash = 0, i; + + for (i in namespace) { + hash = ((hash << 5) - hash) + namespace.charCodeAt(i); + hash |= 0; // Convert to 32bit integer + } + + return exports.colors[Math.abs(hash) % exports.colors.length]; + } + + /** + * Create a debugger with the given `namespace`. + * + * @param {String} namespace + * @return {Function} + * @api public + */ + + function createDebug(namespace) { + + var prevTime; + + function debug() { + // disabled? + if (!debug.enabled) return; + + var self = debug; + + // set `diff` timestamp + var curr = +new Date(); + var ms = curr - (prevTime || curr); + self.diff = ms; + self.prev = prevTime; + self.curr = curr; + prevTime = curr; + + // turn the `arguments` into a proper Array + var args = new Array(arguments.length); + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i]; + } + + args[0] = exports.coerce(args[0]); + + if ('string' !== typeof args[0]) { + // anything else let's inspect with %O + args.unshift('%O'); + } + + // apply any `formatters` transformations + var index = 0; + args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format) { + // if we encounter an escaped % then don't increase the array index + if (match === '%%') return match; + index++; + var formatter = exports.formatters[format]; + if ('function' === typeof formatter) { + var val = args[index]; + match = formatter.call(self, val); + + // now we need to remove `args[index]` since it's inlined in the `format` + args.splice(index, 1); + index--; + } + return match; + }); + + // apply env-specific formatting (colors, etc.) + exports.formatArgs.call(self, args); + + var logFn = debug.log || exports.log || console.log.bind(console); + logFn.apply(self, args); + } + + debug.namespace = namespace; + debug.enabled = exports.enabled(namespace); + debug.useColors = exports.useColors(); + debug.color = selectColor(namespace); + debug.destroy = destroy; + + // env-specific initialization logic for debug instances + if ('function' === typeof exports.init) { + exports.init(debug); + } + + exports.instances.push(debug); + + return debug; + } + + function destroy () { + var index = exports.instances.indexOf(this); + if (index !== -1) { + exports.instances.splice(index, 1); + return true; + } else { + return false; + } + } + + /** + * Enables a debug mode by namespaces. This can include modes + * separated by a colon and wildcards. + * + * @param {String} namespaces + * @api public + */ + + function enable(namespaces) { + exports.save(namespaces); + + exports.names = []; + exports.skips = []; + + var i; + var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); + var len = split.length; + + for (i = 0; i < len; i++) { + if (!split[i]) continue; // ignore empty strings + namespaces = split[i].replace(/\*/g, '.*?'); + if (namespaces[0] === '-') { + exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$')); + } else { + exports.names.push(new RegExp('^' + namespaces + '$')); + } + } + + for (i = 0; i < exports.instances.length; i++) { + var instance = exports.instances[i]; + instance.enabled = exports.enabled(instance.namespace); + } + } + + /** + * Disable debug output. + * + * @api public + */ + + function disable() { + exports.enable(''); + } + + /** + * Returns true if the given mode name is enabled, false otherwise. + * + * @param {String} name + * @return {Boolean} + * @api public + */ + + function enabled(name) { + if (name[name.length - 1] === '*') { + return true; + } + var i, len; + for (i = 0, len = exports.skips.length; i < len; i++) { + if (exports.skips[i].test(name)) { + return false; + } + } + for (i = 0, len = exports.names.length; i < len; i++) { + if (exports.names[i].test(name)) { + return true; + } + } + return false; + } + + /** + * Coerce `val`. + * + * @param {Mixed} val + * @return {Mixed} + * @api private + */ + + function coerce(val) { + if (val instanceof Error) return val.stack || val.message; + return val; + } + + +/***/ }, +/* 24 */ +/***/ function(module, exports) { + + /** + * Helpers. + */ + + var s = 1000; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var y = d * 365.25; + + /** + * Parse or format the given `val`. + * + * Options: + * + * - `long` verbose formatting [false] + * + * @param {String|Number} val + * @param {Object} [options] + * @throws {Error} throw an error if val is not a non-empty string or a number + * @return {String|Number} + * @api public + */ + + module.exports = function(val, options) { + options = options || {}; + var type = typeof val; + if (type === 'string' && val.length > 0) { + return parse(val); + } else if (type === 'number' && isNaN(val) === false) { + return options.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + 'val is not a non-empty string or a valid number. val=' + + JSON.stringify(val) + ); + }; + + /** + * Parse the given `str` and return milliseconds. + * + * @param {String} str + * @return {Number} + * @api private + */ + + function parse(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec( + str + ); + if (!match) { + return; + } + var n = parseFloat(match[1]); + var type = (match[2] || 'ms').toLowerCase(); + switch (type) { + case 'years': + case 'year': + case 'yrs': + case 'yr': + case 'y': + return n * y; + case 'days': + case 'day': + case 'd': + return n * d; + case 'hours': + case 'hour': + case 'hrs': + case 'hr': + case 'h': + return n * h; + case 'minutes': + case 'minute': + case 'mins': + case 'min': + case 'm': + return n * m; + case 'seconds': + case 'second': + case 'secs': + case 'sec': + case 's': + return n * s; + case 'milliseconds': + case 'millisecond': + case 'msecs': + case 'msec': + case 'ms': + return n; + default: + return undefined; + } + } + + /** + * Short format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + + function fmtShort(ms) { + if (ms >= d) { + return Math.round(ms / d) + 'd'; + } + if (ms >= h) { + return Math.round(ms / h) + 'h'; + } + if (ms >= m) { + return Math.round(ms / m) + 'm'; + } + if (ms >= s) { + return Math.round(ms / s) + 's'; + } + return ms + 'ms'; + } + + /** + * Long format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + + function fmtLong(ms) { + return plural(ms, d, 'day') || + plural(ms, h, 'hour') || + plural(ms, m, 'minute') || + plural(ms, s, 'second') || + ms + ' ms'; + } + + /** + * Pluralization helper. + */ + + function plural(ms, n, name) { + if (ms < n) { + return; + } + if (ms < n * 1.5) { + return Math.floor(ms / n) + ' ' + name; + } + return Math.ceil(ms / n) + ' ' + name + 's'; + } + + +/***/ }, +/* 25 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(global) {'use strict'; + + /** + * Module requirements. + */ + + var Polling = __webpack_require__(6); + var inherit = __webpack_require__(19); + + /** + * Module exports. + */ + + module.exports = JSONPPolling; + + /** + * Cached regular expressions. + */ + + var rNewline = /\n/g; + var rEscapedNewline = /\\n/g; + + /** + * Global JSONP callbacks. + */ + + var callbacks; + + /** + * Noop. + */ + + function empty() {} + + /** + * Until https://github.com/tc39/proposal-global is shipped. + */ + function glob() { + return typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {}; + } + + /** + * JSONP Polling constructor. + * + * @param {Object} opts. + * @api public + */ + + function JSONPPolling(opts) { + Polling.call(this, opts); + + this.query = this.query || {}; + + // define global callbacks array if not present + // we do this here (lazily) to avoid unneeded global pollution + if (!callbacks) { + // we need to consider multiple engines in the same page + var global = glob(); + callbacks = global.___eio = global.___eio || []; + } + + // callback identifier + this.index = callbacks.length; + + // add callback to jsonp global + var self = this; + callbacks.push(function (msg) { + self.onData(msg); + }); + + // append to query string + this.query.j = this.index; + + // prevent spurious errors from being emitted when the window is unloaded + if (typeof addEventListener === 'function') { + addEventListener('beforeunload', function () { + if (self.script) self.script.onerror = empty; + }, false); + } + } + + /** + * Inherits from Polling. + */ + + inherit(JSONPPolling, Polling); + + /* + * JSONP only supports binary as base64 encoded strings + */ + + JSONPPolling.prototype.supportsBinary = false; + + /** + * Closes the socket. + * + * @api private + */ + + JSONPPolling.prototype.doClose = function () { + if (this.script) { + this.script.parentNode.removeChild(this.script); + this.script = null; + } + + if (this.form) { + this.form.parentNode.removeChild(this.form); + this.form = null; + this.iframe = null; + } + + Polling.prototype.doClose.call(this); + }; + + /** + * Starts a poll cycle. + * + * @api private + */ + + JSONPPolling.prototype.doPoll = function () { + var self = this; + var script = document.createElement('script'); + + if (this.script) { + this.script.parentNode.removeChild(this.script); + this.script = null; + } + + script.async = true; + script.src = this.uri(); + script.onerror = function (e) { + self.onError('jsonp poll error', e); + }; + + var insertAt = document.getElementsByTagName('script')[0]; + if (insertAt) { + insertAt.parentNode.insertBefore(script, insertAt); + } else { + (document.head || document.body).appendChild(script); + } + this.script = script; + + var isUAgecko = 'undefined' !== typeof navigator && /gecko/i.test(navigator.userAgent); + + if (isUAgecko) { + setTimeout(function () { + var iframe = document.createElement('iframe'); + document.body.appendChild(iframe); + document.body.removeChild(iframe); + }, 100); + } + }; + + /** + * Writes with a hidden iframe. + * + * @param {String} data to send + * @param {Function} called upon flush. + * @api private + */ + + JSONPPolling.prototype.doWrite = function (data, fn) { + var self = this; + + if (!this.form) { + var form = document.createElement('form'); + var area = document.createElement('textarea'); + var id = this.iframeId = 'eio_iframe_' + this.index; + var iframe; + + form.className = 'socketio'; + form.style.position = 'absolute'; + form.style.top = '-1000px'; + form.style.left = '-1000px'; + form.target = id; + form.method = 'POST'; + form.setAttribute('accept-charset', 'utf-8'); + area.name = 'd'; + form.appendChild(area); + document.body.appendChild(form); + + this.form = form; + this.area = area; + } + + this.form.action = this.uri(); + + function complete() { + initIframe(); + fn(); + } + + function initIframe() { + if (self.iframe) { + try { + self.form.removeChild(self.iframe); + } catch (e) { + self.onError('jsonp polling iframe removal error', e); + } + } + + try { + // ie6 dynamic iframes with target="" support (thanks Chris Lambacher) + var html = '