From 460ce2644a7e106ff5385411a0358908e48be605 Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Fri, 5 May 2017 12:54:33 +0530 Subject: [PATCH 1/8] fix: Update to loopback@^3 and add strong-error-hanlder@^1 --- package.json | 2 +- server/config.json | 3 ++- server/middleware.json | 8 +++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 62e3ee8e694..6cd801acc35 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,7 @@ "jsonlint-cli": "^1.0.1", "lightbox2": "~2.8.2", "lodash": "^4.1.0", - "loopback": "^2.22.0", + "loopback": "^3.8.0", "loopback-boot": "^2.13.0", "loopback-component-passport": "^2.0.0", "loopback-connector-mongodb": "1.17.0", diff --git a/server/config.json b/server/config.json index 02cb729409c..8d0e2976c0b 100644 --- a/server/config.json +++ b/server/config.json @@ -10,7 +10,8 @@ "rest": { "handleErrors": false, "normalizeHttpPath": false, - "xml": false + "xml": false, + "handleErrors": false }, "json": { "strict": false, diff --git a/server/middleware.json b/server/middleware.json index 18f7aaa5cc3..f19ec96c620 100644 --- a/server/middleware.json +++ b/server/middleware.json @@ -54,6 +54,12 @@ "files": {}, "final:after": { "./middlewares/error-reporter": {}, - "./middlewares/error-handlers": {} + "./middlewares/error-handlers": {}, + "strong-error-handler": { + "params": { + "debug": false, + "log": true + } + } } } From 4967b2a2bee99eede67f02e62b676dbe6eec8320 Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Fri, 5 May 2017 13:00:42 +0530 Subject: [PATCH 2/8] chore(dependencies): Add and update CORS config --- package.json | 1 + server/config.json | 5 +---- server/middleware.json | 7 +++++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 6cd801acc35..0f4e551800d 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ "compression": "^1.6.0", "connect-mongo": "^1.3.2", "cookie-parser": "^1.4.0", + "cors": "^2.8.3", "csurf": "^1.8.3", "d3": "~3.5.17", "debug": "^2.2.0", diff --git a/server/config.json b/server/config.json index 8d0e2976c0b..5afb58fec8c 100644 --- a/server/config.json +++ b/server/config.json @@ -21,9 +21,6 @@ "extended": true, "limit": "100kb" }, - "cors": { - "origin": true, - "credentials": true - } + "cors": false } } diff --git a/server/middleware.json b/server/middleware.json index f19ec96c620..dfcabd66c6a 100644 --- a/server/middleware.json +++ b/server/middleware.json @@ -16,6 +16,13 @@ "compression": {}, "morgan": { "params": ":status :method :response-time ms - :url" + }, + "cors": { + "params": { + "origin": true, + "credentials": true, + "maxAge": 86400 + } } }, "session": { From 318d7c0ccc8ef1a451b6b44fa9d3bc7ad0bd5402 Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Mon, 29 May 2017 00:32:13 +0530 Subject: [PATCH 3/8] fix(context): remove use of current-context --- server/config.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/server/config.json b/server/config.json index 5afb58fec8c..cb159c8f0b0 100644 --- a/server/config.json +++ b/server/config.json @@ -4,9 +4,6 @@ "port": 3000, "legacyExplorer": false, "remoting": { - "context": { - "enableHttpContext": false - }, "rest": { "handleErrors": false, "normalizeHttpPath": false, From 187dbdfc92aa59986452f9a5fa353decc56d01ae Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Mon, 29 May 2017 00:48:14 +0530 Subject: [PATCH 4/8] fix(models): Update remote method definitions --- common/models/user.js | 1 - 1 file changed, 1 deletion(-) diff --git a/common/models/user.js b/common/models/user.js index 28483950b98..5166c140735 100644 --- a/common/models/user.js +++ b/common/models/user.js @@ -778,7 +778,6 @@ module.exports = function(User) { User.remoteMethod( 'updateTheme', { - isStatic: false, description: 'updates the users chosen theme', accepts: [ { From c9a961d3d80c1b810dd677a531fde3f60c98729f Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Sat, 3 Jun 2017 00:14:05 +0530 Subject: [PATCH 5/8] fix(github-auth): add missing properties to user --- common/models/user.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/models/user.json b/common/models/user.json index 521b36f9bf1..98b8fd5a319 100644 --- a/common/models/user.json +++ b/common/models/user.json @@ -55,6 +55,12 @@ "joinedGithubOn": { "type": "date" }, + "website": { + "type": "string" + }, + "githubProfile": { + "type": "string" + }, "isMigrationGrandfathered": { "type": "boolean", "default": false From 2f5a7869f032b0d7307e72d97643571f9593780c Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Sat, 3 Jun 2017 00:32:44 +0530 Subject: [PATCH 6/8] chore(lb3-dependancies): Update to latest add-ons --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 0f4e551800d..f8b3a160992 100644 --- a/package.json +++ b/package.json @@ -76,9 +76,9 @@ "lightbox2": "~2.8.2", "lodash": "^4.1.0", "loopback": "^3.8.0", - "loopback-boot": "^2.13.0", - "loopback-component-passport": "^2.0.0", - "loopback-connector-mongodb": "1.17.0", + "loopback-boot": "^2.24.0", + "loopback-component-passport": "^3.3.0", + "loopback-connector-mongodb": "^3.1.0", "method-override": "^2.3.0", "moment": "^2.10.2", "moment-timezone": "^0.5.0", From c50965290e2460c6f2c23ceb32188e884550c550 Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Sat, 3 Jun 2017 13:21:50 +0530 Subject: [PATCH 7/8] fix(email-auth): add missing properties to user --- common/models/user.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/common/models/user.json b/common/models/user.json index 98b8fd5a319..ce04d939f7e 100644 --- a/common/models/user.json +++ b/common/models/user.json @@ -61,6 +61,9 @@ "githubProfile": { "type": "string" }, + "_csrf": { + "type": "string" + }, "isMigrationGrandfathered": { "type": "boolean", "default": false From ecd0802f1e367d86a528a08edd8b97114e5c37c0 Mon Sep 17 00:00:00 2001 From: Mrugesh Mohapatra Date: Sun, 3 Sep 2017 04:41:24 +0530 Subject: [PATCH 8/8] chore(dependencies): Update to latest semvers --- package-lock.json | 661 +++++++++++++++++++++++++++++++++++----------- package.json | 10 +- 2 files changed, 508 insertions(+), 163 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8a8563abf15..e04c4464867 100644 --- a/package-lock.json +++ b/package-lock.json @@ -521,15 +521,6 @@ "integrity": "sha1-dhfBkXQB/Yykooqtzj266Yr+tDI=", "dev": true }, - "async-listener": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/async-listener/-/async-listener-0.6.8.tgz", - "integrity": "sha512-1Sy1jDhjlgxcSd9/ICHqiAHT8VSJ9R1lzEyWwP/4Hm9p8nVTNtU0SxG/Z15XHD/aZvQraSw9BpDU3EBcFnOVrw==", - "requires": { - "semver": "5.4.1", - "shimmer": "1.1.0" - } - }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -3118,15 +3109,6 @@ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, - "continuation-local-storage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/continuation-local-storage/-/continuation-local-storage-3.2.0.tgz", - "integrity": "sha1-4Z/Da1lwkKXU5KOy6j68XilpSiQ=", - "requires": { - "async-listener": "0.6.8", - "emitter-listener": "1.0.1" - } - }, "conventional-commit-types": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/conventional-commit-types/-/conventional-commit-types-2.2.0.tgz", @@ -3942,21 +3924,6 @@ "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", "integrity": "sha1-zIcsFoiArjxxiXYv1f/ACJbJUYo=" }, - "emitter-listener": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/emitter-listener/-/emitter-listener-1.0.1.tgz", - "integrity": "sha1-skmepuWCMKUsJo1d8mHuzZ8Q/pc=", - "requires": { - "shimmer": "1.0.0" - }, - "dependencies": { - "shimmer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.0.0.tgz", - "integrity": "sha1-ScLXHGeDYLgCvhiyeDgtHLuAXDk=" - } - } - }, "emitter-steward": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/emitter-steward/-/emitter-steward-1.0.0.tgz", @@ -8382,9 +8349,9 @@ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isemail": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/isemail/-/isemail-1.2.0.tgz", - "integrity": "sha1-vgPfjMPineTSxd9lASY/H6RZXpo=" + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isemail/-/isemail-2.2.1.tgz", + "integrity": "sha1-A1PT2aYpUQgMJiwqoKQrjqjp4qY=" }, "isexe": { "version": "2.0.0", @@ -9649,33 +9616,93 @@ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" }, "loopback": { - "version": "2.39.0", - "resolved": "https://registry.npmjs.org/loopback/-/loopback-2.39.0.tgz", - "integrity": "sha512-vTZJsN92zUbGj03MBrQYgtR8RCk8z+23OAplXAsv21FBnxdoW2Yrxvv7tyeno9uyl7252PZpvQokGaHtiWaW/Q==", + "version": "3.16.2", + "resolved": "https://registry.npmjs.org/loopback/-/loopback-3.16.2.tgz", + "integrity": "sha512-07mqcSZ2f9jRmA7wXen+2TQIn8MUKkTI0l78rvIBqVlmsUyFAaLCcVzISwzG1xi435jET802YOWYIACLlTT3NQ==", "requires": { "async": "2.1.5", "bcryptjs": "2.4.3", + "bluebird": "3.5.1", "body-parser": "1.18.2", "canonical-json": "0.0.4", - "cookie-parser": "1.4.3", "debug": "2.6.9", "depd": "1.1.1", "ejs": "2.5.7", - "errorhandler": "1.5.0", "express": "4.16.2", "inflection": "1.12.0", - "isemail": "1.2.0", - "loopback-connector-remote": "1.3.3", - "loopback-context": "1.0.0", - "loopback-phase": "1.4.1", + "isemail": "2.2.1", + "loopback-connector-remote": "3.1.1", + "loopback-datasource-juggler": "3.13.0", + "loopback-phase": "3.1.0", "nodemailer": "2.7.2", "nodemailer-stub-transport": "1.1.0", "serve-favicon": "2.4.5", "stable": "0.1.6", - "strong-globalize": "2.10.0", - "strong-remoting": "2.34.0", + "strong-globalize": "3.1.0", + "strong-remoting": "3.6.0", "uid2": "0.0.3", "underscore.string": "3.3.4" + }, + "dependencies": { + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.2.7" + } + }, + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + }, + "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" + } + } + } + } } }, "loopback-boot": { @@ -9733,9 +9760,9 @@ } }, "loopback-component-passport": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loopback-component-passport/-/loopback-component-passport-2.3.0.tgz", - "integrity": "sha1-N9weQlVPS2QCZOjKH3CPJcPuq2Q=", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/loopback-component-passport/-/loopback-component-passport-3.4.1.tgz", + "integrity": "sha1-LHyB6iPHLkN56BFLmS16v5Af2IU=", "requires": { "passport": "0.3.2", "strong-globalize": "2.10.0", @@ -9759,34 +9786,89 @@ } }, "loopback-connector": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/loopback-connector/-/loopback-connector-2.7.1.tgz", - "integrity": "sha1-YK/CROMZGZdjkamXg4aFeB+ijlI=", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/loopback-connector/-/loopback-connector-4.4.0.tgz", + "integrity": "sha1-FRNlMolredjcKAvifWV/rQAMEgk=", "requires": { - "async": "1.5.2", + "async": "2.1.5", "bluebird": "3.5.1", - "debug": "2.6.9", + "debug": "3.1.0", "msgpack5": "3.6.0", - "strong-globalize": "2.10.0" + "strong-globalize": "3.1.0", + "uuid": "3.1.0" }, "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + "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" + } + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.2.7" + } + }, + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + } + } } } }, "loopback-connector-mongodb": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/loopback-connector-mongodb/-/loopback-connector-mongodb-1.17.0.tgz", - "integrity": "sha1-12coqjFWJCpmxl69lyftz8ikc0k=", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/loopback-connector-mongodb/-/loopback-connector-mongodb-3.3.0.tgz", + "integrity": "sha1-WsS9GfgDFtyN8N8tg3NxSU/Ks8g=", "requires": { "async": "1.5.2", "debug": "2.6.9", - "loopback-connector": "2.7.1", - "mongodb": "2.1.21", - "strong-globalize": "2.10.0" + "loopback-connector": "4.4.0", + "mongodb": "2.2.33", + "strong-globalize": "3.1.0" }, "dependencies": { "async": { @@ -9794,114 +9876,235 @@ "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" }, - "bson": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/bson/-/bson-0.4.23.tgz", - "integrity": "sha1-5louPHUH/63kEJvHV1p25Q+NqRU=" + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" }, - "es6-promise": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz", - "integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=" - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "mongodb": { - "version": "2.1.21", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.1.21.tgz", - "integrity": "sha1-dkcJ28zrWCW06zH5U5X5Zf1EInI=", + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", "requires": { - "es6-promise": "3.0.2", - "mongodb-core": "1.3.21", - "readable-stream": "1.0.31" - } - }, - "mongodb-core": { - "version": "1.3.21", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-1.3.21.tgz", - "integrity": "sha1-/hKee+4rOybBQJ3gKrYNA/YpHMo=", - "requires": { - "bson": "0.4.23", - "require_optional": "1.0.1" - } - }, - "readable-stream": { - "version": "1.0.31", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.31.tgz", - "integrity": "sha1-jyUC4LyeOw2huUUgqrtOJgPsr64=", - "requires": { - "core-util-is": "1.0.2", + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" + "readable-stream": "2.2.7" } }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + }, + "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" + } + } + } } } }, "loopback-connector-remote": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/loopback-connector-remote/-/loopback-connector-remote-1.3.3.tgz", - "integrity": "sha1-ePpyTk4ptNeqXcpVybNKC819Y+A=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/loopback-connector-remote/-/loopback-connector-remote-3.1.1.tgz", + "integrity": "sha1-wQM29Se/h8PZs/Y8GWDLHAMhOhM=", "requires": { - "loopback-datasource-juggler": "2.55.3", - "strong-remoting": "2.34.0" - } - }, - "loopback-context": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/loopback-context/-/loopback-context-1.0.0.tgz", - "integrity": "sha1-MMmyMVzqsD7JAac5QudhTNk+lUg=", - "requires": { - "continuation-local-storage": "3.2.0" + "loopback-datasource-juggler": "3.13.0", + "strong-remoting": "3.6.0" } }, "loopback-datasource-juggler": { - "version": "2.55.3", - "resolved": "https://registry.npmjs.org/loopback-datasource-juggler/-/loopback-datasource-juggler-2.55.3.tgz", - "integrity": "sha1-RqPNj5O6VaCoz89xa91DpbSre3w=", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/loopback-datasource-juggler/-/loopback-datasource-juggler-3.13.0.tgz", + "integrity": "sha1-dJMsruVxM3q+jz1t+XTUF7MaAqc=", "requires": { - "async": "1.0.0", - "debug": "2.6.9", + "async": "2.1.5", + "bluebird": "3.5.1", + "debug": "3.1.0", "depd": "1.1.1", "inflection": "1.12.0", - "loopback-connector": "2.7.1", + "lodash": "4.17.4", + "loopback-connector": "4.4.0", "minimatch": "3.0.4", "qs": "6.5.1", "shortid": "2.2.8", - "strong-globalize": "2.10.0", + "strong-globalize": "3.1.0", "traverse": "0.6.6", "uuid": "3.1.0" }, "dependencies": { - "async": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=" + "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" + } + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.2.7" + } + }, + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + } + } } } }, + "loopback-datatype-geopoint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/loopback-datatype-geopoint/-/loopback-datatype-geopoint-1.0.0.tgz", + "integrity": "sha1-/apcerjXMKmrflRVS+Fl8xzfYQA=" + }, "loopback-phase": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/loopback-phase/-/loopback-phase-1.4.1.tgz", - "integrity": "sha1-125asObsecxTcNPFMPY0hxAgvO4=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/loopback-phase/-/loopback-phase-3.1.0.tgz", + "integrity": "sha512-0FFccBdB28h5/G9r1bjeuDqE5xD/Wv42uo8dWKMz4yd300+Jc5dfso/dmJzdSyLMxI8RLtx15mkFT9JVAXRduw==", "requires": { "async": "0.9.2", "debug": "2.6.9", - "strong-globalize": "2.10.0" + "strong-globalize": "3.1.0" }, "dependencies": { "async": { "version": "0.9.2", "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.2.7" + } + }, + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + }, + "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" + } + } + } } } }, @@ -11438,8 +11641,7 @@ "options": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", - "dev": true + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" }, "orchestrator": { "version": "0.3.8", @@ -13429,11 +13631,6 @@ "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", "dev": true }, - "shimmer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.1.0.tgz", - "integrity": "sha1-l9c3cTf/u6tCVSLkKf4KqJpIizU=" - }, "shortid": { "version": "2.2.8", "resolved": "https://registry.npmjs.org/shortid/-/shortid-2.2.8.tgz", @@ -14093,13 +14290,6 @@ "integrity": "sha1-MZJGHfo4x4Qk3Zv46gJWGaElqhA=", "requires": { "options": "0.0.6" - }, - "dependencies": { - "options": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" - } } }, "sshpk": { @@ -14300,6 +14490,93 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=" }, + "strong-error-handler": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/strong-error-handler/-/strong-error-handler-2.3.0.tgz", + "integrity": "sha512-aBeGbfOBm2LyAtno8yXJSRNDW3vZxjIHNI6y120WirkDIPV5Ytcx9Y1IG22qo3tXi6Zo2s1OJssUM9ji8PzwXA==", + "requires": { + "accepts": "1.3.4", + "debug": "2.6.9", + "ejs": "2.5.7", + "http-status": "1.0.1", + "js2xmlparser": "3.0.0", + "strong-globalize": "3.1.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.2.7" + } + }, + "http-status": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/http-status/-/http-status-1.0.1.tgz", + "integrity": "sha1-3EMAGov8UKyH1IWokvdXiWS8lKI=" + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "requires": { + "xmlcreate": "1.0.2" + } + }, + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "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" + } + } + } + } + } + }, "strong-globalize": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-2.10.0.tgz", @@ -14357,28 +14634,91 @@ } }, "strong-remoting": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/strong-remoting/-/strong-remoting-2.34.0.tgz", - "integrity": "sha512-Llm7SbEcYAe4HwPShjnN4wVRlK1afOHWqs1afQYyILfBpPFUh9OXFGH9msdAR8VyulvxlZznTisyrV2GJSCSIQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/strong-remoting/-/strong-remoting-3.6.0.tgz", + "integrity": "sha1-XVxD/Fffmy8axt2KF+C9iiNfjD0=", "requires": { "async": "2.1.5", "body-parser": "1.18.2", - "cors": "2.8.4", "debug": "2.6.9", "depd": "1.1.1", + "escape-string-regexp": "1.0.5", "eventemitter2": "2.2.2", "express": "4.16.2", "inflection": "1.12.0", "jayson": "1.2.2", "js2xmlparser": "1.0.0", - "loopback-phase": "1.4.1", + "loopback-datatype-geopoint": "1.0.0", + "loopback-phase": "3.1.0", "mux-demux": "3.7.9", "qs": "6.5.1", "request": "2.83.0", "sse": "0.0.6", - "strong-globalize": "2.10.0", + "strong-error-handler": "2.3.0", + "strong-globalize": "3.1.0", "traverse": "0.6.6", "xml2js": "0.4.19" + }, + "dependencies": { + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.2.7" + } + }, + "strong-globalize": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strong-globalize/-/strong-globalize-3.1.0.tgz", + "integrity": "sha512-n81I4Zc+V9gSju7SW7QoZkMoBH4j806nrJdigBDF8juzbGGDI+TNaiw9moHNHyHwBV9E9zy1bGGmBWm80II6ww==", + "requires": { + "async": "2.6.0", + "debug": "3.1.0", + "esprima": "4.0.0", + "estraverse": "4.2.0", + "g11n-pipeline": "2.0.2", + "htmlparser2": "3.9.2", + "lodash": "4.17.4", + "md5": "2.2.1", + "mkdirp": "0.5.1", + "mktmpdir": "0.1.1", + "optional": "0.1.4", + "os-locale": "2.1.0", + "posix-getopt": "1.2.0", + "word-count": "0.2.2", + "xtend": "4.0.1", + "yamljs": "0.3.0" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "4.17.4" + } + }, + "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" + } + } + } + } } }, "strong-swagger-ui": { @@ -15916,6 +16256,11 @@ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.4.tgz", "integrity": "sha1-UZy0ymhtAFqEINNJbz8MruzKWA8=" }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" + }, "xmldom": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", diff --git a/package.json b/package.json index f8b3a160992..ca3c68adc5d 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "compression": "^1.6.0", "connect-mongo": "^1.3.2", "cookie-parser": "^1.4.0", - "cors": "^2.8.3", + "cors": "^2.8.4", "csurf": "^1.8.3", "d3": "~3.5.17", "debug": "^2.2.0", @@ -75,10 +75,10 @@ "jsonlint-cli": "^1.0.1", "lightbox2": "~2.8.2", "lodash": "^4.1.0", - "loopback": "^3.8.0", - "loopback-boot": "^2.24.0", - "loopback-component-passport": "^3.3.0", - "loopback-connector-mongodb": "^3.1.0", + "loopback": "^3.11.1", + "loopback-boot": "^2.26.1", + "loopback-component-passport": "^3.4.1", + "loopback-connector-mongodb": "^3.2.1", "method-override": "^2.3.0", "moment": "^2.10.2", "moment-timezone": "^0.5.0",