diff --git a/week1/index.js b/week1/index.js
index 5eee15634..33a93fcee 100644
--- a/week1/index.js
+++ b/week1/index.js
@@ -1,3 +1,4 @@
+var state = 10
import HTTP from 'http'
import Path from 'path'
@@ -5,34 +6,51 @@ import sendIndexHTML from './responses/sendIndexHTML'
import sendPage2HTML from './responses/sendPage2HTML'
import sendStylesCSS from './responses/sendStylesCSS'
import sendText from './responses/sendText'
+import sendState from './responses/sendState'
+import addToState from './responses/addToState'
const server = HTTP.createServer((request, response) => {
- console.log(request.method, request.url)
+ console.log(request.method, request.url)
- switch (request.url) {
- case '/':
- sendIndexHTML(response)
- break
- case '/page2':
- sendPage2HTML(response)
- break
- case '/styles.css':
- sendStylesCSS(response)
- break
- default:
- const extension = Path.extname(request.url)
- if (extension === '') {
- response.statusCode = 302
- response.setHeader('Location', '/')
- } else {
- response.statusCode = 404
- sendText(response, "File not found")
- }
- }
-
- response.end()
+ switch (request.url) {
+ case '/':
+ sendIndexHTML(response)
+ break
+ case '/page2':
+ sendPage2HTML(response)
+ break
+ case '/styles.css':
+ sendStylesCSS(response)
+ break
+ case '/state':
+ sendState(response, state)
+ break
+ case '/add':
+ state += 1
+ addToState(response)
+ break
+ case '/remove':
+ state -= 1
+ renderState(response)
+ break
+ case '/reset':
+ state = 10
+ renderState(response)
+ break
+ default:
+ const extension = request.url
+ if (extension === '') {
+ response.statusCode = 302
+ response.setHeader('Location', '/')
+ } else {
+ response.statusCode = 404
+ sendText(response, "Sorry... we couldn't find the link you are looking for.")
+ }
+ }
+
+ response.end()
})
-server.listen(3001)
+server.listen(8080)
console.log('Server started')
\ No newline at end of file
diff --git a/week1/responses/addToState.js b/week1/responses/addToState.js
new file mode 100644
index 000000000..599d2987e
--- /dev/null
+++ b/week1/responses/addToState.js
@@ -0,0 +1,15 @@
+export default function addToState(response) {
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
+
+
+
+ Codestin Search App
+
+
+
+ OK
+
+
+ `)
+}
\ No newline at end of file
diff --git a/week1/responses/resetState.js b/week1/responses/resetState.js
new file mode 100644
index 000000000..40ed55e8d
--- /dev/null
+++ b/week1/responses/resetState.js
@@ -0,0 +1,15 @@
+export default function resetState(response) {
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
+
+
+
+ Codestin Search App
+
+
+
+ OK
+
+
+ `)
+}
\ No newline at end of file
diff --git a/week1/responses/sendIndexHTML.js b/week1/responses/sendIndexHTML.js
index 3262f7bd5..51b1dfb9e 100644
--- a/week1/responses/sendIndexHTML.js
+++ b/week1/responses/sendIndexHTML.js
@@ -1,6 +1,6 @@
export default function sendIndexHTML(response) {
- response.setHeader('Content-Type', 'text/html')
- response.write(`
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
@@ -8,7 +8,7 @@ export default function sendIndexHTML(response) {
- Hello I am a website
+ Hello I am a website
`)
diff --git a/week1/responses/sendPage2HTML.js b/week1/responses/sendPage2HTML.js
index 2c6fd6d21..884b8563e 100644
--- a/week1/responses/sendPage2HTML.js
+++ b/week1/responses/sendPage2HTML.js
@@ -1,6 +1,6 @@
export default function sendPage2HTML(response) {
- response.setHeader('Content-Type', 'text/html')
- response.write(`
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
diff --git a/week1/responses/sendState.js b/week1/responses/sendState.js
new file mode 100644
index 000000000..1bfa3bbeb
--- /dev/null
+++ b/week1/responses/sendState.js
@@ -0,0 +1,15 @@
+export default function sendState(response, state) {
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
+
+
+
+ Codestin Search App
+
+
+
+ the value of state is:${state}
+
+
+ `)
+}
\ No newline at end of file
diff --git a/week1/responses/sendText.js b/week1/responses/sendText.js
index b01d4c72b..996a1a34e 100644
--- a/week1/responses/sendText.js
+++ b/week1/responses/sendText.js
@@ -1,4 +1,15 @@
export default function sendText(response, text) {
- response.setHeader('Content-Type', 'text/plain')
- response.write(text)
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
+
+
+
+ Codestin Search App
+
+
+
+ ${text}
+
+
+`)
}
\ No newline at end of file
diff --git a/week1/responses/substractFromState.js b/week1/responses/substractFromState.js
new file mode 100644
index 000000000..8666f3103
--- /dev/null
+++ b/week1/responses/substractFromState.js
@@ -0,0 +1,15 @@
+export default function substractFromState(response) {
+ response.setHeader('Content-Type', 'text/html')
+ response.write(`
+
+
+
+ Codestin Search App
+
+
+
+ OK
+
+
+ `)
+}
\ No newline at end of file
diff --git a/week3/README.md b/week3/README.md
index 0aaa27ecf..c39bd02ed 100644
--- a/week3/README.md
+++ b/week3/README.md
@@ -28,6 +28,11 @@ There are currently four actions:
- `update` (`PUT /todos/:id`): Updates the description of a todo
- `remove` (`DELETE /todos/:id`): Deletes a todo
+Recently added:
+- `clear` (`DELETE /todos`): Clears all todos
+- `markAsDone` (POST /todos/:id/done`): Marks todo as done
+- `markAsNotDone` (DELETE /todos/:id/done`): Marks todo as not done
+
## Directory structure
- `actions`: Contains the actions as listed above, each as a express handler (function accepting request and response)
diff --git a/week3/actions/create.js b/week3/actions/create.js
index 4948a8513..f2bfc9f81 100644
--- a/week3/actions/create.js
+++ b/week3/actions/create.js
@@ -4,6 +4,7 @@ const deserializeTodo = require('../util/deserializeTodo')
module.exports = function create(request, response) {
const todo = deserializeTodo(request, response)
+
if (todo == null) { return }
Todo.create(todo.description, (error, todo) => {
diff --git a/week3/actions/index.js b/week3/actions/index.js
index 58056b22a..6fa8355cc 100644
--- a/week3/actions/index.js
+++ b/week3/actions/index.js
@@ -2,5 +2,8 @@ module.exports = {
list: require('./list'),
create: require('./create'),
update: require('./update'),
- remove: require('./remove')
+ remove: require('./remove'),
+ clear: require('./clear'),
+ markAsDone: require('./markAsDone'),
+ markAsNotDone: require('./markAsNotDone')
}
\ No newline at end of file
diff --git a/week3/actions/remove.js b/week3/actions/remove.js
index 41a83104d..86b564711 100644
--- a/week3/actions/remove.js
+++ b/week3/actions/remove.js
@@ -1,6 +1,6 @@
const Todo = require('../models/todo')
-module.exports = function create(request, response) {
+module.exports = function remove(request, response) {
const id = request.params.id
diff --git a/week3/actions/update.js b/week3/actions/update.js
index 20ae8b021..fa2a9e929 100644
--- a/week3/actions/update.js
+++ b/week3/actions/update.js
@@ -7,7 +7,7 @@ module.exports = function update(request, response) {
const todo = deserializeTodo(request, response)
if (todo == null) { return }
- Todo.update(id, todo.description, (error, todo) => {
+ Todo.update(id, todo.description, null, (error, todo) => {
if (error == null) {
response.json({todo})
} else if (error.name === 'NotFound') {
diff --git a/week3/data/todos.json b/week3/data/todos.json
index 3c4a24a8c..3f6f7d9c0 100644
--- a/week3/data/todos.json
+++ b/week3/data/todos.json
@@ -1 +1 @@
-[{"id":"f3e2462d-0bfb-46f2-8ea8-4fc7020f0f30","description":"Go into bed","done":false},{"id":"a2e2a68e-1a49-4fb5-ba66-f618a523e631","description":"Go into bed","done":false},{"id":"c8f9c333-2372-41c9-bc7b-3448b61f3371","description":"Do something","done":false},{"id":"bde9faac-582c-4536-8d01-b98252618340","description":"Blablabla","done":false}]
\ No newline at end of file
+[{"id":"bc65d46c-3fda-4ce0-ba25-cc7f23a9b236","description":"(create todo description)","done":false},{"id":"b3661391-202c-4077-a31c-2c1950a81b72","description":"(Updated todo description)","done":false}]
\ No newline at end of file
diff --git a/week3/index.js b/week3/index.js
index a28d0d431..37c8f3bd3 100644
--- a/week3/index.js
+++ b/week3/index.js
@@ -5,11 +5,14 @@ const app = Express()
app.use(bodyParser.json())
-const {list, create, update, remove} = require('./actions')
+const {list, create, update, remove, clear, markAsDone, markAsNotDone} = require('./actions')
app.get('/todos', list)
app.post('/todos', create)
app.put('/todos/:id', update)
app.delete('/todos/:id', remove)
+app.delete('/todos', clear)
+app.post('/todos/:id/done', markAsDone)
+app.delete('/todos/:id/done', markAsNotDone)
-app.listen(3000)
\ No newline at end of file
+app.listen(8080)
\ No newline at end of file
diff --git a/week3/models/todo.js b/week3/models/todo.js
index 2db6c7455..5d5f33a01 100644
--- a/week3/models/todo.js
+++ b/week3/models/todo.js
@@ -39,7 +39,7 @@ class Todo {
})
}
- update(id, description, callback) {
+ update(id, description, state, callback) {
this.load((error, todos) => {
if (error) { callback(error); return }
@@ -52,8 +52,12 @@ class Todo {
return
}
- todo.description = description
+ if (description) {todo.description = description}
+ //add functionality to update the "state" of "todo" item
+ if (state !== null) { todo.done = state }
+ ////////////////////////////////////////////////
+
this.save(todos, error => {
if (error) { callback(error); return }
@@ -65,16 +69,20 @@ class Todo {
remove(id, callback) {
this.load((error, todos) => {
if (error) { callback(error); return }
-
- todos = todos.filter(t => t.id !== id)
-
+
+ //add check to CLEAR todo list if "id" present
+ if (id){
+ todos = todos.filter(t => t.id !== id)
+ } else {
+ todos.splice(0, todos.length)
+ }
+ ////////////////////////////////////////////////
this.save(todos, error => {
if (error) { callback(error); return }
callback()
})
})
}
-
}
module.exports = new Todo()
\ No newline at end of file
diff --git a/week3/package-lock.json b/week3/package-lock.json
index dc87fa5d3..8fe43a1ac 100644
--- a/week3/package-lock.json
+++ b/week3/package-lock.json
@@ -725,7 +725,6 @@
"requires": {
"anymatch": "1.3.2",
"async-each": "1.0.1",
- "fsevents": "1.1.2",
"glob-parent": "2.0.0",
"inherits": "2.0.3",
"is-binary-path": "1.0.1",
@@ -983,905 +982,6 @@
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
"dev": true
},
- "fsevents": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.2.tgz",
- "integrity": "sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw==",
- "dev": true,
- "optional": true,
- "requires": {
- "nan": "2.7.0",
- "node-pre-gyp": "0.6.36"
- },
- "dependencies": {
- "abbrev": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "ajv": {
- "version": "4.11.8",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "co": "4.6.0",
- "json-stable-stringify": "1.0.1"
- }
- },
- "ansi-regex": {
- "version": "2.1.1",
- "bundled": true,
- "dev": true
- },
- "aproba": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "are-we-there-yet": {
- "version": "1.1.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "delegates": "1.0.0",
- "readable-stream": "2.2.9"
- }
- },
- "asn1": {
- "version": "0.2.3",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "assert-plus": {
- "version": "0.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "asynckit": {
- "version": "0.4.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "aws-sign2": {
- "version": "0.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "aws4": {
- "version": "1.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "balanced-match": {
- "version": "0.4.2",
- "bundled": true,
- "dev": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "tweetnacl": "0.14.5"
- }
- },
- "block-stream": {
- "version": "0.0.9",
- "bundled": true,
- "dev": true,
- "requires": {
- "inherits": "2.0.3"
- }
- },
- "boom": {
- "version": "2.10.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "brace-expansion": {
- "version": "1.1.7",
- "bundled": true,
- "dev": true,
- "requires": {
- "balanced-match": "0.4.2",
- "concat-map": "0.0.1"
- }
- },
- "buffer-shims": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "caseless": {
- "version": "0.12.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "co": {
- "version": "4.6.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "code-point-at": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true
- },
- "combined-stream": {
- "version": "1.0.5",
- "bundled": true,
- "dev": true,
- "requires": {
- "delayed-stream": "1.0.0"
- }
- },
- "concat-map": {
- "version": "0.0.1",
- "bundled": true,
- "dev": true
- },
- "console-control-strings": {
- "version": "1.1.0",
- "bundled": true,
- "dev": true
- },
- "core-util-is": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- },
- "cryptiles": {
- "version": "2.0.5",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "boom": "2.10.1"
- }
- },
- "dashdash": {
- "version": "1.14.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "debug": {
- "version": "2.6.8",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "deep-extend": {
- "version": "0.4.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "delayed-stream": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "delegates": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "ecc-jsbn": {
- "version": "0.1.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "extend": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "extsprintf": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- },
- "forever-agent": {
- "version": "0.6.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "form-data": {
- "version": "2.1.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.15"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "fstream": {
- "version": "1.0.11",
- "bundled": true,
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "inherits": "2.0.3",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.1"
- }
- },
- "fstream-ignore": {
- "version": "1.0.5",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "fstream": "1.0.11",
- "inherits": "2.0.3",
- "minimatch": "3.0.4"
- }
- },
- "gauge": {
- "version": "2.7.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "aproba": "1.1.1",
- "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.2"
- }
- },
- "getpass": {
- "version": "0.1.7",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "glob": {
- "version": "7.1.2",
- "bundled": true,
- "dev": true,
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- },
- "graceful-fs": {
- "version": "4.1.11",
- "bundled": true,
- "dev": true
- },
- "har-schema": {
- "version": "1.0.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "har-validator": {
- "version": "4.2.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "ajv": "4.11.8",
- "har-schema": "1.0.5"
- }
- },
- "has-unicode": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "hawk": {
- "version": "3.1.3",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "boom": "2.10.1",
- "cryptiles": "2.0.5",
- "hoek": "2.16.3",
- "sntp": "1.0.9"
- }
- },
- "hoek": {
- "version": "2.16.3",
- "bundled": true,
- "dev": true
- },
- "http-signature": {
- "version": "1.1.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "0.2.0",
- "jsprim": "1.4.0",
- "sshpk": "1.13.0"
- }
- },
- "inflight": {
- "version": "1.0.6",
- "bundled": true,
- "dev": true,
- "requires": {
- "once": "1.4.0",
- "wrappy": "1.0.2"
- }
- },
- "inherits": {
- "version": "2.0.3",
- "bundled": true,
- "dev": true
- },
- "ini": {
- "version": "1.3.4",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "is-typedarray": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "isarray": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true
- },
- "isstream": {
- "version": "0.1.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "jodid25519": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "jsbn": {
- "version": "0.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "json-schema": {
- "version": "0.2.3",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "jsonify": "0.0.0"
- }
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "jsonify": {
- "version": "0.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "jsprim": {
- "version": "1.4.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.0.2",
- "json-schema": "0.2.3",
- "verror": "1.3.6"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "mime-db": {
- "version": "1.27.0",
- "bundled": true,
- "dev": true
- },
- "mime-types": {
- "version": "2.1.15",
- "bundled": true,
- "dev": true,
- "requires": {
- "mime-db": "1.27.0"
- }
- },
- "minimatch": {
- "version": "3.0.4",
- "bundled": true,
- "dev": true,
- "requires": {
- "brace-expansion": "1.1.7"
- }
- },
- "minimist": {
- "version": "0.0.8",
- "bundled": true,
- "dev": true
- },
- "mkdirp": {
- "version": "0.5.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "minimist": "0.0.8"
- }
- },
- "ms": {
- "version": "2.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "node-pre-gyp": {
- "version": "0.6.36",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "mkdirp": "0.5.1",
- "nopt": "4.0.1",
- "npmlog": "4.1.0",
- "rc": "1.2.1",
- "request": "2.81.0",
- "rimraf": "2.6.1",
- "semver": "5.3.0",
- "tar": "2.2.1",
- "tar-pack": "3.4.0"
- }
- },
- "nopt": {
- "version": "4.0.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "abbrev": "1.1.0",
- "osenv": "0.1.4"
- }
- },
- "npmlog": {
- "version": "4.1.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "are-we-there-yet": "1.1.4",
- "console-control-strings": "1.1.0",
- "gauge": "2.7.4",
- "set-blocking": "2.0.0"
- }
- },
- "number-is-nan": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true
- },
- "oauth-sign": {
- "version": "0.8.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "object-assign": {
- "version": "4.1.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "once": {
- "version": "1.4.0",
- "bundled": true,
- "dev": true,
- "requires": {
- "wrappy": "1.0.2"
- }
- },
- "os-homedir": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "osenv": {
- "version": "0.1.4",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- }
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true
- },
- "performance-now": {
- "version": "0.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "process-nextick-args": {
- "version": "1.0.7",
- "bundled": true,
- "dev": true
- },
- "punycode": {
- "version": "1.4.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "qs": {
- "version": "6.4.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "rc": {
- "version": "1.2.1",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "deep-extend": "0.4.2",
- "ini": "1.3.4",
- "minimist": "1.2.0",
- "strip-json-comments": "2.0.1"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "readable-stream": {
- "version": "2.2.9",
- "bundled": true,
- "dev": true,
- "requires": {
- "buffer-shims": "1.0.0",
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "1.0.7",
- "string_decoder": "1.0.1",
- "util-deprecate": "1.0.2"
- }
- },
- "request": {
- "version": "2.81.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "aws-sign2": "0.6.0",
- "aws4": "1.6.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.5",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.1.4",
- "har-validator": "4.2.1",
- "hawk": "3.1.3",
- "http-signature": "1.1.1",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.15",
- "oauth-sign": "0.8.2",
- "performance-now": "0.2.0",
- "qs": "6.4.0",
- "safe-buffer": "5.0.1",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.2",
- "tunnel-agent": "0.6.0",
- "uuid": "3.0.1"
- }
- },
- "rimraf": {
- "version": "2.6.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "glob": "7.1.2"
- }
- },
- "safe-buffer": {
- "version": "5.0.1",
- "bundled": true,
- "dev": true
- },
- "semver": {
- "version": "5.3.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "set-blocking": {
- "version": "2.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "sntp": {
- "version": "1.0.9",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "sshpk": {
- "version": "1.13.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "asn1": "0.2.3",
- "assert-plus": "1.0.0",
- "bcrypt-pbkdf": "1.0.1",
- "dashdash": "1.14.1",
- "ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
- "jodid25519": "1.0.2",
- "jsbn": "0.1.1",
- "tweetnacl": "0.14.5"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "bundled": true,
- "dev": true,
- "optional": true
- }
- }
- },
- "string-width": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- },
- "string_decoder": {
- "version": "1.0.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "safe-buffer": "5.0.1"
- }
- },
- "stringstream": {
- "version": "0.0.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "strip-json-comments": {
- "version": "2.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "tar": {
- "version": "2.2.1",
- "bundled": true,
- "dev": true,
- "requires": {
- "block-stream": "0.0.9",
- "fstream": "1.0.11",
- "inherits": "2.0.3"
- }
- },
- "tar-pack": {
- "version": "3.4.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "debug": "2.6.8",
- "fstream": "1.0.11",
- "fstream-ignore": "1.0.5",
- "once": "1.4.0",
- "readable-stream": "2.2.9",
- "rimraf": "2.6.1",
- "tar": "2.2.1",
- "uid-number": "0.0.6"
- }
- },
- "tough-cookie": {
- "version": "2.3.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "punycode": "1.4.1"
- }
- },
- "tunnel-agent": {
- "version": "0.6.0",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "safe-buffer": "5.0.1"
- }
- },
- "tweetnacl": {
- "version": "0.14.5",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "uid-number": {
- "version": "0.0.6",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "util-deprecate": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- },
- "uuid": {
- "version": "3.0.1",
- "bundled": true,
- "dev": true,
- "optional": true
- },
- "verror": {
- "version": "1.3.6",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "extsprintf": "1.0.2"
- }
- },
- "wide-align": {
- "version": "1.1.2",
- "bundled": true,
- "dev": true,
- "optional": true,
- "requires": {
- "string-width": "1.0.2"
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "bundled": true,
- "dev": true
- }
- }
- },
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
@@ -2222,13 +1322,6 @@
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
- "nan": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz",
- "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=",
- "dev": true,
- "optional": true
- },
"negotiator": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",