From 0dc8d7d56cf68d086321119dd5496aca45ca2f7f Mon Sep 17 00:00:00 2001 From: plane000 Date: Sat, 21 Jul 2018 20:09:38 +0100 Subject: [PATCH] arduino websocket serial project --- C#/ferdinand32 RAT/Payload/Payload/Program.cs | 9 - C++/Arduino/Joystick_Mouse.rar | Bin 0 -> 164754 bytes .../Servo_controller/Servo_controller.ino | 22 + C++/Arduino/Tempsensor/Tempsensor.ino | 35 +- JavaScript/adruino-temp-sensor/client/draw.js | 49 + .../adruino-temp-sensor/client/index.html | 16 + JavaScript/adruino-temp-sensor/client/main.js | 26 + .../adruino-temp-sensor/client/style.css | 15 + JavaScript/adruino-temp-sensor/index.js | 72 + .../adruino-temp-sensor/package-lock.json | 2175 +++++++++++++++++ JavaScript/adruino-temp-sensor/package.json | 18 + .../weather-api-resolver/client/index.html | 2 +- JavaScript/web-chat/index.js | 0 JavaScript/web-chat/package-lock.json | 373 +++ JavaScript/web-chat/package.json | 14 + 15 files changed, 2787 insertions(+), 39 deletions(-) create mode 100644 C++/Arduino/Joystick_Mouse.rar create mode 100644 C++/Arduino/Servo_controller/Servo_controller.ino create mode 100644 JavaScript/adruino-temp-sensor/client/draw.js create mode 100644 JavaScript/adruino-temp-sensor/client/index.html create mode 100644 JavaScript/adruino-temp-sensor/client/main.js create mode 100644 JavaScript/adruino-temp-sensor/client/style.css create mode 100644 JavaScript/adruino-temp-sensor/index.js create mode 100644 JavaScript/adruino-temp-sensor/package-lock.json create mode 100644 JavaScript/adruino-temp-sensor/package.json create mode 100644 JavaScript/web-chat/index.js create mode 100644 JavaScript/web-chat/package-lock.json create mode 100644 JavaScript/web-chat/package.json diff --git a/C#/ferdinand32 RAT/Payload/Payload/Program.cs b/C#/ferdinand32 RAT/Payload/Payload/Program.cs index 6cae635..306023e 100644 --- a/C#/ferdinand32 RAT/Payload/Payload/Program.cs +++ b/C#/ferdinand32 RAT/Payload/Payload/Program.cs @@ -39,30 +39,21 @@ namespace Payload { public void Initialize() { try { - Console.WriteLine("2"); if (Config.InstallPath == System.Reflection.Assembly.GetEntryAssembly().Location) { return; } - Console.WriteLine("3"); if (!Directory.Exists(Config.InstallFolder)) { Directory.CreateDirectory(Config.InstallFolder); } - Console.WriteLine("4"); try { File.Copy(System.Reflection.Assembly.GetEntryAssembly().Location, Config.InstallPath, true); } catch { } - Console.WriteLine("5"); - Process.Start(Config.InstallPath); - Console.WriteLine("6"); - Environment.Exit(0); - - Console.WriteLine("7"); } catch (Exception e) { Console.WriteLine(e); } diff --git a/C++/Arduino/Joystick_Mouse.rar b/C++/Arduino/Joystick_Mouse.rar new file mode 100644 index 0000000000000000000000000000000000000000..21b1101f7831915d3231b6cb1c7cb0aced08230b GIT binary patch literal 164754 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�#t+Y0&Fj_u)k7n1mw_~uC+x0GCjKO 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ءW{Vyj)%-w~RnWghFTR^glH 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�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
eUd9GTC~iVqab?21=MP1@ za52SV${FWKf;Aq+jwEd~Y_+J&maPD=IFTz@O`*Q3r*dV*rioue(?HhLp*NvoouVORfX10{ijvRx z7|~XoWs7-Y)nmo6mo0Bs?TloqO&FqUC~IRe%=pb1JiGhrsWK>|$dg4ya~Lsnd4GR?7#0pi6&3yIwC>(tNR1-?JbU>7MH-4g zeSv=f*FlN?gT6)F)B|Q2b$2Waa<0r@!~Tv15${0O2FV~;1}pPv-;fUj8VP~?H_`Mx zL;wN(5BT~XJ_a-&ra_~Qz|$-aAZ1Qc=OFtGQ!SW`4EPN4{$Lo%bOzkiY-nRO28NEq z86(pL50Z`41*4+ae%}EIf71I<|K!q}YN>|B<@WlPSYcDjD3N4_DWAcM$JmnMU&R72 z`lW~%(7qd2jsuX)pu^HQJZj~hQdnAS_YPmqj)2IdAF$~K=9&^ph@y=Vafh5_3*{XI%PpDiE% zH_5?-h6U$LW`h*~2Ok^xk$Xn=6MF;vPM;K`39|L!ybo~g;D7IL1MVyFA<@->#eJ$-$Jon@qJdh5HZ zOVIy=3{hNLT2@!tYqfE%?(Z$Db=B3Dru(q6vDaNz+gIFI0X4OacmvmgMU7>Jt=xF= ztiT1Z3%U>bHLPo3HCu=6ovr0%we{Woa2c1kKyTLp_j9hboUDVs+&_M8cr{h8%WYwI zd#lvgR{{@p_V>Vat=4NRYwNEgO1ZW${9`%+uPp4r7ocmjwbk3(hgF1oz&n6y1cJ~8 zu4}8zh=MI!2T&lF)|XedR`r$Edf%3|x976fYp*Xu=C;N)qZg*_lv}lM4 z{-v#jEy^h>;Y@CbbVIa%hw4Tk-;Zk*0tv&eNn#D~M}>#A2uU0WvV$5~->b#w>az2tcJw-M|? z7uM1*V@Lq@HPN*;R(Cblb+*^`mX`YaYmIG

4+2MS%@SKHeIWBW^hFW@S^vPFik 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

@@o=LO|v$5l2Y#+6tqgCfa7h(6}MQ#KM%8Q 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 z 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%0DD+r0Af5Zs|v@)aGxs))#2n&gFLHvu( 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 literal 0 HcmV?d00001 diff --git a/C++/Arduino/Servo_controller/Servo_controller.ino b/C++/Arduino/Servo_controller/Servo_controller.ino new file mode 100644 index 0000000..a75a88d --- /dev/null +++ b/C++/Arduino/Servo_controller/Servo_controller.ino @@ -0,0 +1,22 @@ +#include +#define SERVO_PIN 9 +#define XJOY_PIN A1 +Servo myservo ; + +void setup() +{ + Serial.begin(9600); + myservo.attach(9); +} + +void loop() +{ + delay(200); + int joystickXVal = analogRead(XJOY_PIN) ; //read joystick input on pin A1 + Serial.print(joystickXVal); //print the value from A1 + Serial.println(" = input from joystick"); //print "=input from joystick" next to the value + Serial.print((joystickXVal+520)/10); //print a from A1 calculated, scaled value + Serial.println(" = output to servo"); //print "=output to servo" next to the value + Serial.println() ; + myservo.write((joystickXVal+520)/10); //write the calculated value to the servo +} diff --git a/C++/Arduino/Tempsensor/Tempsensor.ino b/C++/Arduino/Tempsensor/Tempsensor.ino index 1ab2db2..e84954a 100644 --- a/C++/Arduino/Tempsensor/Tempsensor.ino +++ b/C++/Arduino/Tempsensor/Tempsensor.ino @@ -1,48 +1,25 @@ -lol#include +#include #include -#include #define DHTPIN 13 #define DHTTYPE DHT11 -const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2; -LiquidCrystal lcd(rs, en, d4, d5, d6, d7); - DHT dht(DHTPIN, DHTTYPE); void setup() { - Serial.begin(9600); - lcd.begin(16, 2); + Serial.begin(115200); dht.begin(); } void loop() { - float humidity = dht.readHumidity(); float temperature = dht.readTemperature(); - if (isnan(temperature) || isnan(humidity)) { - Serial.println("Failed to fetch"); - lcd.clear(); - lcd.print("Failed to fetch"); + if (isnan(temperature)) { + Serial.println("-1000000"); delay(500); return; } - String temp = (String)(int)temperature; - String humid = (String)(int)humidity; - - - String ln1 = "Temperature : " + temp + " °C"; - String ln2 = "Humidity : " + humid + " %"; - - Serial.println(ln1); - Serial.println(ln2); - Serial.println(); - - lcd.setCursor(0,0); - lcd.print(ln1); - lcd.setCursor(0,1); - lcd.print(ln2); - - delay(500); + Serial.println((String)temperature); + delay(30); } diff --git a/JavaScript/adruino-temp-sensor/client/draw.js b/JavaScript/adruino-temp-sensor/client/draw.js new file mode 100644 index 0000000..8bc9a30 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/client/draw.js @@ -0,0 +1,49 @@ +const MAX_POINTS = 60; +const X_MAX = 60; +const Y_MAX = 40; +const X_DIV = 5; +const Y_DIV = 4; + +let canvas = document.getElementById('graph'); +let ctx = canvas.getContext('2d'); +let points = []; + +function addPoint(temp) { + if (points.length <= MAX_POINTS) { + points.push(temp); + } + else { + for (let i = 0; i <= MAX_POINTS - 1; i++) { + points[i] = points[i + 1]; + } + points[MAX_POINTS] = temp; + } + + ctx.clearRect(0, 0, canvas.width, canvas.height); + + ctx.strokeStyle = "black"; + ctx.font = "20px Courrier New"; + ctx.textAlign="right"; + for (let i = X_DIV; i < MAX_POINTS; i += X_DIV) { + ctx.beginPath(); + ctx.moveTo(i * (canvas.width / MAX_POINTS), 0); + ctx.lineTo(i * (canvas.width / MAX_POINTS), canvas.height); + ctx.stroke(); + } + + for (let i = Y_DIV; i < Y_MAX; i += Y_DIV) { + ctx.fillText(Y_MAX - i , canvas.width - 1, i * (canvas.height / Y_MAX) - 2); + ctx.beginPath(); + ctx.moveTo(0, i * (canvas.height / Y_MAX)); + ctx.lineTo(canvas.width, i * (canvas.height / Y_MAX)); + ctx.stroke(); + } + + ctx.strokeStyle = "blue"; + for (let i = 0; i < points.length && points.length > 1; i++) { + ctx.beginPath(); + ctx.moveTo(i * (canvas.width / MAX_POINTS), canvas.height - (points[i] * 10)); + ctx.lineTo((i + 1) * (canvas.width / MAX_POINTS), canvas.height - (points[i + 1] * 10)); + ctx.stroke(); + } +} diff --git a/JavaScript/adruino-temp-sensor/client/index.html b/JavaScript/adruino-temp-sensor/client/index.html new file mode 100644 index 0000000..0190bc9 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/client/index.html @@ -0,0 +1,16 @@ + + + + + + Temperature + + + + + + + + + + diff --git a/JavaScript/adruino-temp-sensor/client/main.js b/JavaScript/adruino-temp-sensor/client/main.js new file mode 100644 index 0000000..3718836 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/client/main.js @@ -0,0 +1,26 @@ +console.log('Connecting to server') + +var socket = io.connect('benkyd.duckdns.org:8081'); +let temp = []; + +socket.on('connect', function(data) { + socket.emit('handshake', 'client'); +}); + +socket.on('handshake', function(data) { + socket.emit('ready'); +}); + +socket.on('temp', function(data) { + console.log(data); + addPoint(data); +}); + +socket.on('lasthour', function(data) { + console.log(data); + data.forEach(point => { + if (point != NaN || point != null || point != 'undefined' || point != 'NaN' || point != 'null' || point != 'undefined') { + addPoint(point); + } + }); +}); diff --git a/JavaScript/adruino-temp-sensor/client/style.css b/JavaScript/adruino-temp-sensor/client/style.css new file mode 100644 index 0000000..587b834 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/client/style.css @@ -0,0 +1,15 @@ +body { + background-color: #2f2f2f; +} + +canvas { + background-color: rgb(245,245,245); + padding: 0; + margin: auto; + display: block; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; +} diff --git a/JavaScript/adruino-temp-sensor/index.js b/JavaScript/adruino-temp-sensor/index.js new file mode 100644 index 0000000..01b5847 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/index.js @@ -0,0 +1,72 @@ +const SerialPort = require('serialport'); +const parsers = SerialPort.parsers; +const fs = require('fs'); +let express = require('express'); +let app = express(); +let server = require('http').createServer(app); +let io = require('socket.io')(server); +/* COMMUNICATION WITH ARDUINO AND CLENSING OF DATA */ + +let lastHour = [] +let temperature; +const parser = new parsers.Readline({ + delimiter: '\r\n' +}); + +const port = new SerialPort('COM3', { + baudRate: 115200 +}); + +port.pipe(parser); + +port.on('open', () => { + console.log('Serial connection on COM3 initialized') +}); + +port.on('data', (data) => { + let temp = parseFloat(data.toString()); + if (temp == NaN) return; + if (temp == NaN) return; + if (temp == undefined) return; + if (temp == null) return; + if (temp + 5 < temperature) return; + if (temp - 5 > temperature) return; + temperature = temp; +}); + +/* SIMPLE WEBSERVER */ + +app.use('/', express.static(__dirname + '/client')); +app.get('/', function(req, res) { + res.sendFile(__dirname + '/client/index.html'); +}); +app.listen(8080); +console.log('Server listening on 80') + +/* WEBSOCKETS */ + +server.listen(8081); + +io.on('connection', (socket) => { + let ip = socket.request.connection.remoteAddress; + if (ip.startsWith('::ffff:')) ip = ip.substring(7); + + socket.on('handshake', function(data) { + console.log('New client connecting at ' + ip) + socket.emit('handshake', 'server'); + }); + + socket.on('ready', function(data) { + console.log('Handshake with ' + ip + ' successful') + socket.emit('lasthour', lastHour); + + setInterval(() => { + socket.emit('temp', temperature); + }, 60000); + }); +}); + +setInterval(() => { + lastHour.push(temperature); + if (lastHour.length > 60) lastHour.splice(0,1); +}, 60000) diff --git a/JavaScript/adruino-temp-sensor/package-lock.json b/JavaScript/adruino-temp-sensor/package-lock.json new file mode 100644 index 0000000..55d0cf0 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/package-lock.json @@ -0,0 +1,2175 @@ +{ + "name": "adruino-temp-sensor", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@serialport/parser-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-byte-length/-/parser-byte-length-1.0.5.tgz", + "integrity": "sha512-GCz/v/KG2Wv7SdQ2nv8jYGBY6D4h5tibj9bs0+pnryCDAr8xmmvnesFW15FIu4rwOMgsKhCHyp7roD8bRGs63A==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "@serialport/parser-cctalk": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-cctalk/-/parser-cctalk-1.0.5.tgz", + "integrity": "sha512-VdoG1rRXb5deHM1c9Akn9djoJuHn030v7owYHEqpJeS6Rs6wrC4Hrkw8NxvV9ZPlMqAJ+5uJCaAUzB1tbVd3rA==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "@serialport/parser-delimiter": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-1.0.5.tgz", + "integrity": "sha512-srDzeNwGM/GjtqK/nFDRIDpcZ6XDgkakFMXBtNDSI+XP6fqO1ynEZok8ljKJxM2ay0CNG83C6/X2xIOHvWhFYQ==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "@serialport/parser-readline": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-1.0.5.tgz", + "integrity": "sha512-QkZoCQPHwdZOMQk7SHz3QSp7xqK4jdNql9M80oXqWt7kNhFvNXguWzf17FfQrPRIb0qiz+96+P6uAOIi02Yxbg==", + "requires": { + "@serialport/parser-delimiter": "1.0.5", + "safe-buffer": "5.1.2" + } + }, + "@serialport/parser-ready": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-ready/-/parser-ready-1.0.5.tgz", + "integrity": "sha512-U/ZkxyY35Z7WrDc0O8TGcGPOdwv6fGVJcZq5vXVko2MRt8wiKVD192mmbfTRZXFAX+rARXtQa3ad3yJzXVhb1g==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "@serialport/parser-regex": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@serialport/parser-regex/-/parser-regex-1.0.5.tgz", + "integrity": "sha512-sX3tRuwwwGV+CZbKEUAKZD/wtG8ZRcGxbiDIm8nyzsPCGv52ck3RlQ9Vp4K8fYjcrGGwm3BWizC4uSzaTLOk1A==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "requires": { + "mime-types": "2.1.19", + "negotiator": "0.6.1" + } + }, + "after": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=" + }, + "ansi-bgblack": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgblack/-/ansi-bgblack-0.1.1.tgz", + "integrity": "sha1-poulAHiHcBtqr74/oNrf36juPKI=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgblue": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgblue/-/ansi-bgblue-0.1.1.tgz", + "integrity": "sha1-Z73ATtybm1J4lp2hlt6j11yMNhM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgcyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgcyan/-/ansi-bgcyan-0.1.1.tgz", + "integrity": "sha1-WEiUJWAL3p9VBwaN2Wnr/bUP52g=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bggreen": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bggreen/-/ansi-bggreen-0.1.1.tgz", + "integrity": "sha1-TjGRJIUplD9DIelr8THRwTgWr0k=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgmagenta": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgmagenta/-/ansi-bgmagenta-0.1.1.tgz", + "integrity": "sha1-myhDLAduqpmUGGcqPvvhk5HCx6E=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgred": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgred/-/ansi-bgred-0.1.1.tgz", + "integrity": "sha1-p2+Sg4OCukMpCmwXeEJPmE1vEEE=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgwhite": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgwhite/-/ansi-bgwhite-0.1.1.tgz", + "integrity": "sha1-ZQRlE3elim7OzQMxmU5IAljhG6g=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bgyellow": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bgyellow/-/ansi-bgyellow-0.1.1.tgz", + "integrity": "sha1-w/4usIzUdmSAKeaHTRWgs49h1E8=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-black": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-black/-/ansi-black-0.1.1.tgz", + "integrity": "sha1-9hheiJNgslRaHsUMC/Bj/EMDJFM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-blue": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-blue/-/ansi-blue-0.1.1.tgz", + "integrity": "sha1-FbgEmQ6S/JyoxUds6PaZd3wh7b8=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-bold": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-bold/-/ansi-bold-0.1.1.tgz", + "integrity": "sha1-PmOVCvWswq4uZw5vZ96xFdGl9QU=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-colors": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-0.2.0.tgz", + "integrity": "sha1-csMd4qDZoszQysMMyYI+6y9kNLU=", + "requires": { + "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.2" + } + }, + "ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-dim": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-dim/-/ansi-dim-0.1.1.tgz", + "integrity": "sha1-QN5MYDqoCG2Oeoa4/5mNXDbu/Ww=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-green": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-green/-/ansi-green-0.1.1.tgz", + "integrity": "sha1-il2al55FjVfEDjNYCzc5C44Q0Pc=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-grey": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-grey/-/ansi-grey-0.1.1.tgz", + "integrity": "sha1-WdmLasK6GfilF5jphT+6eDOaM8E=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-hidden": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-hidden/-/ansi-hidden-0.1.1.tgz", + "integrity": "sha1-7WpMSY0rt8uyidvyqNHcyFZ/rg8=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-inverse": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-inverse/-/ansi-inverse-0.1.1.tgz", + "integrity": "sha1-tq9Fgm/oJr+1KKbHmIV5Q1XM0mk=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-italic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-italic/-/ansi-italic-0.1.1.tgz", + "integrity": "sha1-EEdDRj9iXBQqA2c5z4XtpoiYbyM=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-magenta": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-magenta/-/ansi-magenta-0.1.1.tgz", + "integrity": "sha1-BjtboW+z8j4c/aKwfAqJ3hHkMK4=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-reset": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-reset/-/ansi-reset-0.1.1.tgz", + "integrity": "sha1-5+cSksPH3c1NYu9KbHwFmAkRw7c=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-strikethrough": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-strikethrough/-/ansi-strikethrough-0.1.1.tgz", + "integrity": "sha1-2Eh3FAss/wfRyT685pkE9oiF5Wg=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-underline": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-underline/-/ansi-underline-0.1.1.tgz", + "integrity": "sha1-38kg9Ml7WXfqFi34/7mIMIqqcaQ=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-white": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-white/-/ansi-white-0.1.1.tgz", + "integrity": "sha1-nHe3wZPF7pkuYBHTbsTJIbRXiUQ=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" + }, + "ansi-yellow": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-yellow/-/ansi-yellow-0.1.1.tgz", + "integrity": "sha1-y5NW8vRscy8OMZnmEClVp32oPB0=", + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.6" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-swap": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arr-swap/-/arr-swap-1.0.1.tgz", + "integrity": "sha1-FHWQ7WX8gVvAf+8Jl8Llgj1kNTQ=", + "requires": { + "is-number": "3.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + } + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "arraybuffer.slice": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==" + }, + "async-limiter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" + }, + "backo2": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=" + }, + "base64-arraybuffer": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", + "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=" + }, + "base64id": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", + "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=" + }, + "better-assert": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", + "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "requires": { + "callsite": "1.0.0" + } + }, + "bindings": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" + }, + "bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "requires": { + "readable-stream": "2.3.6", + "safe-buffer": "5.1.2" + } + }, + "blob": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", + "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=" + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "requires": { + "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.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.16" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "requires": { + "buffer-alloc-unsafe": "1.1.0", + "buffer-fill": "1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "callsite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", + "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=" + }, + "choices-separator": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/choices-separator/-/choices-separator-2.0.0.tgz", + "integrity": "sha1-kv0XYxgteQM/XFxR0Lo1LlVnxpY=", + "requires": { + "ansi-dim": "0.1.1", + "debug": "2.6.9", + "strip-color": "0.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "chownr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", + "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" + }, + "clone-deep": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-1.0.0.tgz", + "integrity": "sha512-hmJRX8x1QOJVV+GUjOBzi6iauhPqc9hIF6xitWRBbiPZOBb6vGo/mDRIK9P74RTKSQK7AE8B0DDWY/vpRrPmQw==", + "requires": { + "for-own": "1.0.0", + "is-plain-object": "2.0.4", + "kind-of": "5.1.0", + "shallow-clone": "1.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "1.0.0", + "object-visit": "1.0.1" + } + }, + "commander": { + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz", + "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==" + }, + "component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=" + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + }, + "component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "requires": { + "ms": "2.0.0" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "1.0.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "1.0.2" + } + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "requires": { + "once": "1.4.0" + } + }, + "engine.io": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.0.tgz", + "integrity": "sha512-mRbgmAtQ4GAlKwuPnnAvXXwdPhEx+jkc0OBCLrXuD/CRvwNK3AxRSnqK4FSqmAMRRHryVJP8TopOvmEaA64fKw==", + "requires": { + "accepts": "1.3.5", + "base64id": "1.0.0", + "cookie": "0.3.1", + "debug": "3.1.0", + "engine.io-parser": "2.1.2", + "ws": "3.3.3" + } + }, + "engine.io-client": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", + "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", + "requires": { + "component-emitter": "1.2.1", + "component-inherit": "0.0.3", + "debug": "3.1.0", + "engine.io-parser": "2.1.2", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "ws": "3.3.3", + "xmlhttprequest-ssl": "1.5.5", + "yeast": "0.1.2" + } + }, + "engine.io-parser": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz", + "integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==", + "requires": { + "after": "0.8.2", + "arraybuffer.slice": "0.0.7", + "base64-arraybuffer": "0.1.5", + "blob": "0.0.4", + "has-binary2": "1.0.3" + } + }, + "error-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/error-symbol/-/error-symbol-0.1.0.tgz", + "integrity": "sha1-Ck2uN9YA0VopukU9jvkg8YRDM/Y=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "expand-template": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.1.tgz", + "integrity": "sha512-cebqLtV8KOZfw0UI8TEFWxtczxxC1jvyUvx6H4fyp1K1FN7A4Q+uggVUlOsI1K8AGU0rwOGqP8nCapdrw8CYQg==" + }, + "express": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", + "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "requires": { + "accepts": "1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.3", + "qs": "6.5.1", + "range-parser": "1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "1.4.0", + "type-is": "1.6.16", + "utils-merge": "1.0.1", + "vary": "1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + } + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.4.0", + "unpipe": "1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "requires": { + "for-in": "1.0.2" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", + "integrity": "sha1-invTcYa23d84E/I4WLV+yq9eQdQ=" + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.3" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, + "has-binary2": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", + "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "requires": { + "isarray": "2.0.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=" + } + } + }, + "has-cors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", + "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "requires": { + "depd": "1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": "1.4.0" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" + }, + "info-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/info-symbol/-/info-symbol-0.1.0.tgz", + "integrity": "sha1-J4QdcoZ920JCzWEtecEGM4gcang=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "ipaddr.js": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", + "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-number": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-6.0.0.tgz", + "integrity": "sha512-Wu1VHeILBK8KAWJUAiSZQX94GmOE45Rg6/538fKwiloUu21KncEkYGPqob2oSZ5mUT73vLGrHQjKw3KMPwfDzg==" + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "3.0.1" + } + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "koalas": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/koalas/-/koalas-1.0.2.tgz", + "integrity": "sha1-MYQz8HQjXbePrlZhoCqMpT7ilc0=" + }, + "lazy-cache": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", + "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "requires": { + "set-getter": "0.1.0" + } + }, + "log-ok": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/log-ok/-/log-ok-0.1.1.tgz", + "integrity": "sha1-vqPdNqzQuKckDXhza1uXxlREozQ=", + "requires": { + "ansi-green": "0.1.1", + "success-symbol": "0.1.0" + } + }, + "log-utils": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/log-utils/-/log-utils-0.2.1.tgz", + "integrity": "sha1-pMIXoN2aUFFdm5ICBgkas9TgMc8=", + "requires": { + "ansi-colors": "0.2.0", + "error-symbol": "0.1.0", + "info-symbol": "0.1.0", + "log-ok": "0.1.1", + "success-symbol": "0.1.0", + "time-stamp": "1.1.0", + "warning-symbol": "0.1.0" + } + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "1.0.1" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "mime-db": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", + "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==" + }, + "mime-types": { + "version": "2.1.19", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", + "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", + "requires": { + "mime-db": "1.35.0" + } + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "requires": { + "for-in": "0.1.8", + "is-extendable": "0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + }, + "nan": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", + "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "node-abi": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.4.3.tgz", + "integrity": "sha512-b656V5C0628gOOA2kwcpNA/bxdlqYF9FvxJ+qqVX0ctdXNVZpS8J6xEUYir3WAKc7U0BH/NRlSpNbGsy+azjeg==", + "requires": { + "semver": "5.5.0" + } + }, + "noop-logger": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", + "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "1.1.5", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-component": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", + "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "3.0.1" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "parseqs": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", + "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "requires": { + "better-assert": "1.0.2" + } + }, + "parseuri": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", + "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "requires": { + "better-assert": "1.0.2" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "pointer-symbol": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pointer-symbol/-/pointer-symbol-1.0.0.tgz", + "integrity": "sha1-YPkRAgTqepKbYmRKITFVQ8uz1Ec=" + }, + "prebuild-install": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-4.0.0.tgz", + "integrity": "sha512-7tayxeYboJX0RbVzdnKyGl2vhQRWr6qfClEXDhOkXjuaOKCw2q8aiuFhONRYVsG/czia7KhpykIlI2S2VaPunA==", + "requires": { + "detect-libc": "1.0.3", + "expand-template": "1.1.1", + "github-from-package": "0.0.0", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "node-abi": "2.4.3", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "2.0.1", + "rc": "1.2.8", + "simple-get": "2.8.1", + "tar-fs": "1.16.3", + "tunnel-agent": "0.6.0", + "which-pm-runs": "1.0.0" + } + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "promirepl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promirepl/-/promirepl-1.0.1.tgz", + "integrity": "sha1-KVGq66K/P+InT/Y6FtlMBMpghy4=" + }, + "prompt-actions": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/prompt-actions/-/prompt-actions-3.0.2.tgz", + "integrity": "sha512-dhz2Fl7vK+LPpmnQ/S/eSut4BnH4NZDLyddHKi5uTU/2PDn3grEMGkgsll16V5RpVUh/yxdiam0xsM0RD4xvtg==", + "requires": { + "debug": "2.6.9" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "prompt-base": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/prompt-base/-/prompt-base-4.1.0.tgz", + "integrity": "sha512-svGzgLUKZoqomz9SGMkf1hBG8Wl3K7JGuRCXc/Pv7xw8239hhaTBXrmjt7EXA9P/QZzdyT8uNWt9F/iJTXq75g==", + "requires": { + "component-emitter": "1.2.1", + "debug": "3.1.0", + "koalas": "1.0.2", + "log-utils": "0.2.1", + "prompt-actions": "3.0.2", + "prompt-question": "5.0.2", + "readline-ui": "2.2.3", + "readline-utils": "2.2.3", + "static-extend": "0.1.2" + } + }, + "prompt-checkbox": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/prompt-checkbox/-/prompt-checkbox-2.2.0.tgz", + "integrity": "sha512-T/QWgkdUmKjRSr0FQlV8O+LfgmBk8PwDbWhzllm7mwWNAjs3qOVuru5Y1gV4/14L73zCncqcuwGwvnDyVcVgvA==", + "requires": { + "ansi-cyan": "0.1.1", + "debug": "2.6.9", + "prompt-base": "4.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "prompt-choices": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/prompt-choices/-/prompt-choices-4.1.0.tgz", + "integrity": "sha512-ZNYLv6rW9z9n0WdwCkEuS+w5nUAGzRgtRt6GQ5aFNFz6MIcU7nHFlHOwZtzy7RQBk80KzUGPSRQphvMiQzB8pg==", + "requires": { + "arr-flatten": "1.1.0", + "arr-swap": "1.0.1", + "choices-separator": "2.0.0", + "clone-deep": "4.0.0", + "collection-visit": "1.0.0", + "define-property": "2.0.2", + "is-number": "6.0.0", + "kind-of": "6.0.2", + "koalas": "1.0.2", + "log-utils": "0.2.1", + "pointer-symbol": "1.0.0", + "radio-symbol": "2.0.0", + "set-value": "3.0.0", + "strip-color": "0.1.0", + "terminal-paginator": "2.0.2", + "toggle-array": "1.0.1" + }, + "dependencies": { + "clone-deep": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.0.tgz", + "integrity": "sha512-aNJ5/7Bz2IYBb7nIj34TLGk78lBXpXUgV9qsLngtTvJ9+scsZNnlU0OX2S2N4ax/sUQt7sDBkXiGjGJEmNbXOQ==", + "requires": { + "kind-of": "6.0.2", + "shallow-clone": "3.0.0" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "1.0.2", + "isobject": "3.0.1" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "shallow-clone": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.0.tgz", + "integrity": "sha512-Drg+nOI+ofeuslBf0nulyWLZhK1BZprqNvPJaiB4VvES+9gC6GG+qOVAfuO12zVSgxq9SKevcme7S3uDT6Be8w==", + "requires": { + "kind-of": "6.0.2" + } + } + } + }, + "prompt-list": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/prompt-list/-/prompt-list-3.2.0.tgz", + "integrity": "sha512-PDao47cmC9+m2zEUghH+WIIascd8SuyyWO+akuUubd0XxOQyUH96HMdIcL3YnNS8kJUHwddH1rHVgL9vZA1QsQ==", + "requires": { + "ansi-cyan": "0.1.1", + "ansi-dim": "0.1.1", + "prompt-radio": "1.2.1" + } + }, + "prompt-question": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/prompt-question/-/prompt-question-5.0.2.tgz", + "integrity": "sha512-wreaLbbu8f5+7zXds199uiT11Ojp59Z4iBi6hONlSLtsKGTvL2UY8VglcxQ3t/X4qWIxsNCg6aT4O8keO65v6Q==", + "requires": { + "clone-deep": "1.0.0", + "debug": "3.1.0", + "define-property": "1.0.0", + "isobject": "3.0.1", + "kind-of": "5.1.0", + "koalas": "1.0.2", + "prompt-choices": "4.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "prompt-radio": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prompt-radio/-/prompt-radio-1.2.1.tgz", + "integrity": "sha512-vH1iAkgbWyvZBC1BTajydiHmwJP4F1b684gq0fm2wOjPVW1zaDo01OXWr/Dske0XdoHhtZFNMOXNj/ZUSRBywg==", + "requires": { + "debug": "2.6.9", + "prompt-checkbox": "2.2.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "proxy-addr": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", + "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.6.0" + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "requires": { + "end-of-stream": "1.4.1", + "once": "1.4.0" + } + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "radio-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/radio-symbol/-/radio-symbol-2.0.0.tgz", + "integrity": "sha1-eqm/xQSFY21S3XbWqOYxspB5muE=", + "requires": { + "ansi-gray": "0.1.1", + "ansi-green": "0.1.1", + "is-windows": "1.0.2" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + }, + "dependencies": { + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.4.0" + } + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "0.6.0", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "readline-ui": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/readline-ui/-/readline-ui-2.2.3.tgz", + "integrity": "sha512-ix7jz0PxqQqcIuq3yQTHv1TOhlD2IHO74aNO+lSuXsRYm1d+pdyup1yF3zKyLK1wWZrVNGjkzw5tUegO2IDy+A==", + "requires": { + "component-emitter": "1.2.1", + "debug": "2.6.9", + "readline-utils": "2.2.3", + "string-width": "2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + } + } + }, + "readline-utils": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/readline-utils/-/readline-utils-2.2.3.tgz", + "integrity": "sha1-b4R9a48ZFcORtYHDZ81HhzhiNRo=", + "requires": { + "arr-flatten": "1.1.0", + "extend-shallow": "2.0.1", + "is-buffer": "1.1.6", + "is-number": "3.0.0", + "is-windows": "1.0.2", + "koalas": "1.0.2", + "mute-stream": "0.0.7", + "strip-color": "0.1.0", + "window-size": "1.1.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + } + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.3", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.4.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "serialport": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/serialport/-/serialport-6.2.2.tgz", + "integrity": "sha512-BQqTR06ZXKwKB6rUjeANm3aIZo0rqNbQsrQX5zKEDcNY4rxiu5dvdcfIOaAGuZkhW7jAKJsgKC5TjeURtLVuOQ==", + "requires": { + "@serialport/parser-byte-length": "1.0.5", + "@serialport/parser-cctalk": "1.0.5", + "@serialport/parser-delimiter": "1.0.5", + "@serialport/parser-readline": "1.0.5", + "@serialport/parser-ready": "1.0.5", + "@serialport/parser-regex": "1.0.5", + "bindings": "1.3.0", + "commander": "2.16.0", + "debug": "3.1.0", + "nan": "2.10.0", + "prebuild-install": "4.0.0", + "promirepl": "1.0.1", + "prompt-list": "3.2.0", + "safe-buffer": "5.1.2" + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.2" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-getter": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz", + "integrity": "sha1-12nBgsnVpR9AkUXy+6guXoboA3Y=", + "requires": { + "to-object-path": "0.3.0" + } + }, + "set-value": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-3.0.0.tgz", + "integrity": "sha512-tqkg9wJ2TOsxbzIMG5NMAmzjdbDTAD0in7XuUzmFpJE4Ipi2QFBfgC2Z1/gfxcAmWCPsuutiEJyDIMRsrjrMOQ==", + "requires": { + "is-plain-object": "2.0.4" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "shallow-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "requires": { + "is-extendable": "0.1.1", + "kind-of": "5.1.0", + "mixin-object": "2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "simple-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", + "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=" + }, + "simple-get": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", + "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", + "requires": { + "decompress-response": "3.3.0", + "once": "1.4.0", + "simple-concat": "1.0.0" + } + }, + "socket.io": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", + "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", + "requires": { + "debug": "3.1.0", + "engine.io": "3.2.0", + "has-binary2": "1.0.3", + "socket.io-adapter": "1.1.1", + "socket.io-client": "2.1.1", + "socket.io-parser": "3.2.0" + } + }, + "socket.io-adapter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz", + "integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=" + }, + "socket.io-client": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", + "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", + "requires": { + "backo2": "1.0.2", + "base64-arraybuffer": "0.1.5", + "component-bind": "1.0.0", + "component-emitter": "1.2.1", + "debug": "3.1.0", + "engine.io-client": "3.2.1", + "has-binary2": "1.0.3", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "object-component": "0.0.3", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "socket.io-parser": "3.2.0", + "to-array": "0.1.4" + } + }, + "socket.io-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", + "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", + "requires": { + "component-emitter": "1.2.1", + "debug": "3.1.0", + "isarray": "2.0.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=" + } + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "0.2.5", + "object-copy": "0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-color": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/strip-color/-/strip-color-0.1.0.tgz", + "integrity": "sha1-EG9l09PmotlAHKwOsM6LinArT3s=" + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "success-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/success-symbol/-/success-symbol-0.1.0.tgz", + "integrity": "sha1-JAIuSG878c3KCUKDt2nEctO3KJc=" + }, + "tar-fs": { + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz", + "integrity": "sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==", + "requires": { + "chownr": "1.0.1", + "mkdirp": "0.5.1", + "pump": "1.0.3", + "tar-stream": "1.6.1" + }, + "dependencies": { + "pump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", + "requires": { + "end-of-stream": "1.4.1", + "once": "1.4.0" + } + } + } + }, + "tar-stream": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.1.tgz", + "integrity": "sha512-IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA==", + "requires": { + "bl": "1.2.2", + "buffer-alloc": "1.2.0", + "end-of-stream": "1.4.1", + "fs-constants": "1.0.0", + "readable-stream": "2.3.6", + "to-buffer": "1.1.1", + "xtend": "4.0.1" + } + }, + "terminal-paginator": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/terminal-paginator/-/terminal-paginator-2.0.2.tgz", + "integrity": "sha512-IZMT5ECF9p4s+sNCV8uvZSW9E1+9zy9Ji9xz2oee8Jfo7hUFpauyjxkhfRcIH6Lu3Wdepv5D1kVRc8Hx74/LfQ==", + "requires": { + "debug": "2.6.9", + "extend-shallow": "2.0.1", + "log-utils": "0.2.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" + }, + "to-array": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", + "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=" + }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "3.2.2" + } + }, + "toggle-array": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toggle-array/-/toggle-array-1.0.1.tgz", + "integrity": "sha1-y/WEB5K9UJfzMReugkyTKv/ofVg=", + "requires": { + "isobject": "3.0.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.19" + } + }, + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "warning-symbol": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/warning-symbol/-/warning-symbol-0.1.0.tgz", + "integrity": "sha1-uzHdEbeg+dZ6su2V9Fe2WCW7rSE=" + }, + "which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=" + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "1.0.2" + } + }, + "window-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-1.1.0.tgz", + "integrity": "sha1-O0AtMkTzVWHbLJdhrZ0eUoawei0=", + "requires": { + "define-property": "1.0.0", + "is-number": "3.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "requires": { + "async-limiter": "1.0.0", + "safe-buffer": "5.1.2", + "ultron": "1.1.1" + } + }, + "xmlhttprequest-ssl": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", + "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "yeast": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", + "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=" + } + } +} diff --git a/JavaScript/adruino-temp-sensor/package.json b/JavaScript/adruino-temp-sensor/package.json new file mode 100644 index 0000000..2a31098 --- /dev/null +++ b/JavaScript/adruino-temp-sensor/package.json @@ -0,0 +1,18 @@ +{ + "name": "adruino-temp-sensor", + "version": "1.0.0", + "description": "", + "main": "index.js", + "dependencies": { + "express": "^4.16.3", + "fs": "0.0.1-security", + "serialport": "^6.2.2", + "socket.io": "^2.1.1" + }, + "devDependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "Ben (plane000)", + "license": "MIT" +} diff --git a/JavaScript/weather-api-resolver/client/index.html b/JavaScript/weather-api-resolver/client/index.html index 4823032..a15e86c 100644 --- a/JavaScript/weather-api-resolver/client/index.html +++ b/JavaScript/weather-api-resolver/client/index.html @@ -23,7 +23,7 @@ latitude:
- + diff --git a/JavaScript/web-chat/index.js b/JavaScript/web-chat/index.js new file mode 100644 index 0000000..e69de29 diff --git a/JavaScript/web-chat/package-lock.json b/JavaScript/web-chat/package-lock.json new file mode 100644 index 0000000..463e06b --- /dev/null +++ b/JavaScript/web-chat/package-lock.json @@ -0,0 +1,373 @@ +{ + "name": "web-chat", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "requires": { + "mime-types": "2.1.19", + "negotiator": "0.6.1" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "requires": { + "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.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.16" + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "express": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", + "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "requires": { + "accepts": "1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.3", + "qs": "6.5.1", + "range-parser": "1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "1.4.0", + "type-is": "1.6.16", + "utils-merge": "1.0.1", + "vary": "1.1.2" + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.4.0", + "unpipe": "1.0.0" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "requires": { + "depd": "1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": "1.4.0" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ipaddr.js": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", + "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "mime-db": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", + "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==" + }, + "mime-types": { + "version": "2.1.19", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", + "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", + "requires": { + "mime-db": "1.35.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "proxy-addr": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", + "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.6.0" + } + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + }, + "dependencies": { + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.4.0" + } + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + } + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.3", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.4.0" + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.2" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.19" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + } + } +} diff --git a/JavaScript/web-chat/package.json b/JavaScript/web-chat/package.json new file mode 100644 index 0000000..0c80676 --- /dev/null +++ b/JavaScript/web-chat/package.json @@ -0,0 +1,14 @@ +{ + "name": "web-chat", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "Ben (plane000)", + "license": "MIT", + "dependencies": { + "express": "^4.16.3" + } +}