diff --git a/backend/config/constants.js b/backend/config/constants.js
index ce392dd..16a5705 100644
--- a/backend/config/constants.js
+++ b/backend/config/constants.js
@@ -1,9 +1,9 @@
const constants = {};
constants.skillStage = {
- IN_DEVELOPMENT : 'development',
- LIVE : 'live'
-}
+ IN_DEVELOPMENT: 'development',
+ LIVE: 'live',
+};
constants.amazonResultCodes = {
OK: 200,
@@ -36,12 +36,17 @@ constants.voiceResponseStrings = {
QUESTION_NOT_FOUND: 'Sorry, I didnt understand',
GENERIC_CONTINUE: 'Say something to continue',
DIDNT_ASK_ANYTHING: 'There was no question to answer to',
+ ERROR_SUMMARIZING_CONTENT: 'Sorry, there was problem with summarizing news',
+ ERROR_FETCHING_CONTENT: 'Failed to get content',
};
//Timing is given in [ms]
constants.voiceResponseTimings = {
PAUSE_BETWEEN_QUESTIONS: 650,
PAUSE_AFTER_WELCOME_MESSAGE: 650,
+ PAUSE_BETWEEN_TITLES: 500,
+ PAUSE_BETWEEN_TITLE_AND_CONTENT: 500,
+ PAUSE_BETWEEN_NEWS: 800,
};
constants.stringConstraints = {
@@ -65,8 +70,15 @@ constants.stringConstraints = {
constants.answerType = {
PREDEFINED: 0,
- EXTERNAL_SOURCE_WP_TITLES : 1,
- EXTERNAL_SOURCE_WP_NEWS : 2
-}
+ EXTERNAL_SOURCE_WP_TITLES: 1,
+ EXTERNAL_SOURCE_WP_NEWS: 2,
+};
+
+constants.contentType = {
+ TITLES: 0,
+ NEWS: 1,
+};
+
+constants.FIXED_SUMMARY_LENGTH = 3;
module.exports = constants;
diff --git a/backend/helpers/externalSource.js b/backend/helpers/externalSource.js
index f271d96..1c310d1 100644
--- a/backend/helpers/externalSource.js
+++ b/backend/helpers/externalSource.js
@@ -1,5 +1,8 @@
let request = require ('request');
let Parser = require ('rss-parser');
+let summarizer = require ('nodejs-text-summarizer');
+var htmlToText = require ('html-to-text');
+const constants = require ('../config/constants');
let parser = new Parser ();
@@ -8,37 +11,102 @@ getDataFromWPJSON = function (sourceUrl, page = 1, maxPosts = 10) {
var options = {
method: 'GET',
url: `${sourceUrl}/wp-json/wp/v2/posts`,
- qs:{
- page:page,
- per_page:maxPosts
- }
+ qs: {
+ page: page,
+ per_page: maxPosts,
+ },
};
- request (options, (error, response, body)=> {
+ request (options, (error, response, body) => {
if (error) {
reject (error);
} else {
- resolve(JSON.parse (body));
+ resolve (JSON.parse (body));
}
});
});
-}
+};
-module.exports = {
- getAnswerFromWP : function (sourceUrl){
- //This function will extract needed data from JSON, which we got from getDataFromWPJSON
- //At the moment, it's taking titles and creates answer
- return new Promise((resolve,reject)=>{
- getDataFromWPJSON(sourceUrl).then(rawData=>{
- let result='';
- rawData.forEach(post=>{
- result += post.title.rendered + ' '
- });
- resolve(result);
- }).catch(err=>{
- reject('Failed to get answer');
- });
+summarizeText = function (text, length, clearText = true) {
+ let preparedText = text;
+ if (clearText) {
+ preparedText = htmlToText.fromString (text, {
+ wordwrap: false,
+ ignoreHref: true,
+ ignoreImage: true,
});
}
-}
+ return summarizer (preparedText, {n: length});
+};
+
+getTitlesFromWP = function (sourceUrl) {
+ return new Promise ((resolve, reject) => {
+ getDataFromWPJSON (sourceUrl)
+ .then (rawData => {
+ let result = '';
+ rawData.forEach (post => {
+ result +=
+ post.title.rendered +
+ ` `;
+ });
+ resolve (result);
+ })
+ .catch (err => {
+ reject (constants.voiceResponseStrings.ERROR_FETCHING_CONTENT);
+ });
+ });
+};
+
+getLatestNewsFromWP = function (
+ sourceUrl,
+ postCount = 10,
+ includeTitle = false
+) {
+ return new Promise ((resolve, reject) => {
+ getDataFromWPJSON (sourceUrl, 1, postCount)
+ .then (rawData => {
+ let result = '';
+ let htmlToTextOptions = {
+ wordwrap: false,
+ ignoreHref: true,
+ ignoreImage: true,
+ };
+
+ try {
+ rawData.forEach (post => {
+ result += includeTitle ? post.title.rendered : '';
+ result += includeTitle
+ ? ``
+ : '';
+ result += summarizeText (
+ post.content.rendered,
+ constants.FIXED_SUMMARY_LENGTH
+ );
+ result += ``;
+ });
+
+ resolve (result);
+ } catch (err) {
+ reject (constants.voiceResponseStrings.ERROR_SUMMARIZING_CONTENT);
+ }
+ })
+ .catch (err => {
+ reject (constants.voiceResponseStrings.ERROR_FETCHING_CONTENT);
+ });
+ });
+};
+
+module.exports = {
+ getAnswerFromWP: function (sourceUrl, contentType) {
+ //This function will extract needed data from JSON, which we got from getDataFromWPJSON
+ switch (contentType) {
+ case constants.contentType.TITLES:
+ return getTitlesFromWP (sourceUrl);
+ break;
+ case constants.contentType.NEWS:
+ return getLatestNewsFromWP (sourceUrl);
+ break;
+ }
+ },
+};
diff --git a/backend/models/alexa.js b/backend/models/alexa.js
index e501f6a..92ff8e5 100644
--- a/backend/models/alexa.js
+++ b/backend/models/alexa.js
@@ -76,30 +76,45 @@ module.exports = {
let answerPromiseProps = {
resolve: null,
- reject: null
- }
+ reject: null,
+ };
let answerPromise = new Promise ((resolve, reject) => {
answerPromiseProps = {
- resolve:resolve,
- reject:reject
- }
+ resolve: resolve,
+ reject: reject,
+ };
});
-
- switch (intent.answerType){
+
+ switch (intent.answerType) {
case constants.answerType.PREDEFINED:
- answerPromiseProps.resolve(intent.answer);
+ answerPromiseProps.resolve (intent.answer);
break;
case constants.answerType.EXTERNAL_SOURCE_WP_TITLES:
- predefinedSourceHelper.getAnswerFromWP(intent.externalAnswerSource).then(answer=>{
- answerPromiseProps.resolve(answer);
- }).catch(error=>{
- answerPromiseProps.reject(error);
- });
+ predefinedSourceHelper
+ .getAnswerFromWP (
+ intent.externalAnswerSource,
+ constants.contentType.TITLES
+ )
+ .then (answer => {
+ answerPromiseProps.resolve (answer);
+ })
+ .catch (error => {
+ answerPromiseProps.reject (error);
+ });
break;
case constants.answerType.EXTERNAL_SOURCE_WP_NEWS:
- answer = 'Not implemented yet'
- answerPromiseProps.resolve(answer);
+ predefinedSourceHelper
+ .getAnswerFromWP (
+ intent.externalAnswerSource,
+ constants.contentType.NEWS
+ )
+ .then (answer => {
+ answerPromiseProps.resolve (answer);
+ })
+ .catch (error => {
+ answerPromiseProps.reject (error);
+ });
break;
}
diff --git a/backend/package-lock.json b/backend/package-lock.json
index c41b0c3..5e90d35 100644
--- a/backend/package-lock.json
+++ b/backend/package-lock.json
@@ -13,28 +13,6 @@
"negotiator": "0.6.1"
}
},
- "addressparser": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz",
- "integrity": "sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y=",
- "optional": true
- },
- "agent-base": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-2.1.1.tgz",
- "integrity": "sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc=",
- "requires": {
- "extend": "3.0.1",
- "semver": "5.0.3"
- },
- "dependencies": {
- "semver": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz",
- "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no="
- }
- }
- },
"ajv": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.0.tgz",
@@ -49,69 +27,13 @@
"alexa-sdk": {
"version": "1.0.25",
"resolved": "https://registry.npmjs.org/alexa-sdk/-/alexa-sdk-1.0.25.tgz",
- "integrity": "sha512-+FVFNi+mxBZm2HL+oi5u4JTNjQ2uDs4Tp9eqcWIxL3AAD+AU4a6gWpu6LEjxIVCqaI1Ro/RyDm3mnJZA9g6G8w==",
+ "integrity": "sha1-usOJeSqrogu3vXmerwSev/W9gnM=",
"requires": {
"aws-sdk": "2.215.1",
"i18next": "3.5.2",
"i18next-sprintf-postprocessor": "0.2.2"
}
},
- "amqplib": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.5.2.tgz",
- "integrity": "sha512-l9mCs6LbydtHqRniRwYkKdqxVa6XMz3Vw1fh+2gJaaVgTM6Jk3o8RccAKWKtlhT1US5sWrFh+KKxsVUALURSIA==",
- "optional": true,
- "requires": {
- "bitsyntax": "0.0.4",
- "bluebird": "3.5.1",
- "buffer-more-ints": "0.0.2",
- "readable-stream": "1.1.14",
- "safe-buffer": "5.1.1"
- },
- "dependencies": {
- "bluebird": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
- "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
- "optional": true
- },
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
- "optional": true
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "optional": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "0.0.1",
- "string_decoder": "0.10.31"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "optional": true
- }
- }
- },
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
- },
- "ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
- "optional": true
- },
"apparatus": {
"version": "0.0.9",
"resolved": "https://registry.npmjs.org/apparatus/-/apparatus-0.0.9.tgz",
@@ -135,21 +57,6 @@
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
},
- "ast-types": {
- "version": "0.11.3",
- "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.3.tgz",
- "integrity": "sha512-XA5o5dsNw8MhyW0Q7MWXJWc4oOzZKbdsEJq45h7c8q/d9DwWZ5F2ugUc1PuMLPGsUnphCt/cNDHu8JeBbxf1qA==",
- "optional": true
- },
- "async": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/async/-/async-2.1.5.tgz",
- "integrity": "sha1-5YfGhYCZSsZ/xW/4bTrFa9voELw=",
- "optional": true,
- "requires": {
- "lodash": "4.17.5"
- }
- },
"asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
@@ -182,15 +89,6 @@
"resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
"integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4="
},
- "axios": {
- "version": "0.15.3",
- "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz",
- "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=",
- "optional": true,
- "requires": {
- "follow-redirects": "1.0.0"
- }
- },
"base64-js": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.3.tgz",
@@ -205,45 +103,11 @@
"tweetnacl": "0.14.5"
}
},
- "bitsyntax": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.0.4.tgz",
- "integrity": "sha1-6xDMb4K4xJDj6FaY8H6D1G4MuoI=",
- "optional": true,
- "requires": {
- "buffer-more-ints": "0.0.2"
- }
- },
- "bl": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz",
- "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=",
- "optional": true,
- "requires": {
- "readable-stream": "2.0.6"
- },
- "dependencies": {
- "readable-stream": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
- "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
- "optional": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "1.0.7",
- "string_decoder": "0.10.31",
- "util-deprecate": "1.0.2"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "optional": true
- }
- }
+ "bindings": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz",
+ "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==",
+ "optional": true
},
"body-parser": {
"version": "1.18.2",
@@ -285,31 +149,11 @@
"isarray": "1.0.0"
}
},
- "buffer-more-ints": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/buffer-more-ints/-/buffer-more-ints-0.0.2.tgz",
- "integrity": "sha1-JrOIXRD6E9t/wBquOquHAZngEkw="
- },
"buffer-shims": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz",
"integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E="
},
- "buildmail": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/buildmail/-/buildmail-4.0.1.tgz",
- "integrity": "sha1-h393OLeHKYccmhBeO4N9K+EaenI=",
- "optional": true,
- "requires": {
- "addressparser": "1.0.1",
- "libbase64": "0.1.0",
- "libmime": "3.0.0",
- "libqp": "1.1.0",
- "nodemailer-fetch": "1.6.0",
- "nodemailer-shared": "1.1.0",
- "punycode": "1.4.1"
- }
- },
"bytes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
@@ -320,11 +164,6 @@
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
"integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
},
- "circular-json": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.1.tgz",
- "integrity": "sha512-UjgcRlTAhAkLeXmDe2wK7ktwy/tgAqxiSndTIPiFZuIPLZmzHzWMwUIe9h9m/OokypG7snxCDEuwJshGBdPvaw=="
- },
"co": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
@@ -338,12 +177,6 @@
"delayed-stream": "1.0.0"
}
},
- "commander": {
- "version": "2.12.2",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.2.tgz",
- "integrity": "sha1-D1lGxCftnsDZGka7ne9T5UZQ5VU=",
- "optional": true
- },
"complex.js": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/complex.js/-/complex.js-2.0.4.tgz",
@@ -400,17 +233,6 @@
"assert-plus": "1.0.0"
}
},
- "data-uri-to-buffer": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz",
- "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==",
- "optional": true
- },
- "date-format": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz",
- "integrity": "sha1-YV6CjiM90aubua4JUODOzPpuytg="
- },
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
@@ -424,23 +246,6 @@
"resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-9.0.1.tgz",
"integrity": "sha512-2h0iKbJwnImBk4TGk7CG1xadoA0g3LDPlQhQzbZ221zvG0p2YVUedbKIPsOZXKZGx6YmZMJKYOalpCMxSdDqTQ=="
},
- "deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
- "optional": true
- },
- "degenerator": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz",
- "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=",
- "optional": true,
- "requires": {
- "ast-types": "0.11.3",
- "escodegen": "1.9.1",
- "esprima": "3.1.3"
- }
- },
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -456,11 +261,43 @@
"resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
},
- "double-ended-queue": {
- "version": "2.1.0-0",
- "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz",
- "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=",
- "optional": true
+ "dom-serializer": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz",
+ "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=",
+ "requires": {
+ "domelementtype": "1.1.3",
+ "entities": "1.1.1"
+ },
+ "dependencies": {
+ "domelementtype": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz",
+ "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs="
+ }
+ }
+ },
+ "domelementtype": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz",
+ "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI="
+ },
+ "domhandler": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.1.tgz",
+ "integrity": "sha1-iS5HAAqZvlW783dP/qBWHYh5wlk=",
+ "requires": {
+ "domelementtype": "1.3.0"
+ }
+ },
+ "domutils": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz",
+ "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==",
+ "requires": {
+ "dom-serializer": "0.1.0",
+ "domelementtype": "1.3.0"
+ }
},
"ecc-jsbn": {
"version": "0.1.1",
@@ -514,42 +351,6 @@
"resolved": "https://registry.npmjs.org/escape-latex/-/escape-latex-1.0.0.tgz",
"integrity": "sha512-oogO9Cg3n/4nspF34CTfXFymgI79skca66DebIIQgxVy6qRVqczl/ji2YGAqhFCzpD/oAt/fCWF4qlhMAfda+g=="
},
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "optional": true
- },
- "escodegen": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz",
- "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==",
- "optional": true,
- "requires": {
- "esprima": "3.1.3",
- "estraverse": "4.2.0",
- "esutils": "2.0.2",
- "optionator": "0.8.2",
- "source-map": "0.6.1"
- }
- },
- "esprima": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
- "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM="
- },
- "estraverse": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz",
- "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=",
- "optional": true
- },
- "esutils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
- "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
- "optional": true
- },
"etag": {
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
@@ -629,18 +430,6 @@
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
"integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I="
},
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
- "optional": true
- },
- "file-uri-to-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
- "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
- "optional": true
- },
"finalhandler": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
@@ -662,15 +451,6 @@
}
}
},
- "follow-redirects": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz",
- "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=",
- "optional": true,
- "requires": {
- "debug": "2.6.9"
- }
- },
"forever-agent": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
@@ -701,71 +481,6 @@
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
},
- "ftp": {
- "version": "0.3.10",
- "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz",
- "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=",
- "optional": true,
- "requires": {
- "readable-stream": "1.1.14",
- "xregexp": "2.0.0"
- },
- "dependencies": {
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
- "optional": true
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "optional": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "0.0.1",
- "string_decoder": "0.10.31"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "optional": true
- }
- }
- },
- "generate-function": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
- "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
- "optional": true
- },
- "generate-object-property": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
- "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
- "optional": true,
- "requires": {
- "is-property": "1.0.2"
- }
- },
- "get-uri": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.1.tgz",
- "integrity": "sha512-7aelVrYqCLuVjq2kEKRTH8fXPTC0xKTkM+G7UlFkEwCXY3sFbSxvY375JoFowOAYbkaU47SrBvOefUlLZZ+6QA==",
- "optional": true,
- "requires": {
- "data-uri-to-buffer": "1.2.0",
- "debug": "2.6.9",
- "extend": "3.0.1",
- "file-uri-to-path": "1.0.0",
- "ftp": "0.3.10",
- "readable-stream": "2.2.7"
- }
- },
"getpass": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
@@ -788,15 +503,6 @@
"har-schema": "2.0.0"
}
},
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
- "optional": true,
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
"hawk": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
@@ -808,21 +514,40 @@
"sntp": "2.1.0"
}
},
- "hipchat-notifier": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz",
- "integrity": "sha1-ttJJdVQ3wZEII2d5nTupoPI7Ix4=",
- "optional": true,
- "requires": {
- "lodash": "4.17.5",
- "request": "2.83.0"
- }
+ "he": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz",
+ "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0="
},
"hoek": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz",
"integrity": "sha1-ctnQdU9/4lyi0BrY+PmpRJqJUm0="
},
+ "html-to-text": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-4.0.0.tgz",
+ "integrity": "sha512-QQl5EEd97h6+3crtgBhkEAO6sQnZyDff8DAeJzoSkOc1Dqe1UvTUZER0B+KjBe6fPZqq549l2VUhtracus3ndA==",
+ "requires": {
+ "he": "1.1.1",
+ "htmlparser2": "3.9.2",
+ "lodash": "4.17.5",
+ "optimist": "0.6.1"
+ }
+ },
+ "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.4.1",
+ "domutils": "1.7.0",
+ "entities": "1.1.1",
+ "inherits": "2.0.3",
+ "readable-stream": "2.2.7"
+ }
+ },
"http-errors": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
@@ -834,16 +559,6 @@
"statuses": "1.4.0"
}
},
- "http-proxy-agent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-1.0.0.tgz",
- "integrity": "sha1-zBzjjkU7+YSg93AtLdWcc9CBKEo=",
- "requires": {
- "agent-base": "2.1.1",
- "debug": "2.6.9",
- "extend": "3.0.1"
- }
- },
"http-signature": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
@@ -854,37 +569,6 @@
"sshpk": "1.13.1"
}
},
- "httpntlm": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/httpntlm/-/httpntlm-1.6.1.tgz",
- "integrity": "sha1-rQFScUOi6Hc8+uapb1hla7UqNLI=",
- "requires": {
- "httpreq": "0.4.24",
- "underscore": "1.7.0"
- },
- "dependencies": {
- "underscore": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz",
- "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk="
- }
- }
- },
- "httpreq": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/httpreq/-/httpreq-0.4.24.tgz",
- "integrity": "sha1-QzX/2CzZaWaKOUZckprGHWOTYn8="
- },
- "https-proxy-agent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz",
- "integrity": "sha1-NffabEjOTdv6JkiRrFk+5f+GceY=",
- "requires": {
- "agent-base": "2.1.1",
- "debug": "2.6.9",
- "extend": "3.0.1"
- }
- },
"i18next": {
"version": "3.5.2",
"resolved": "https://registry.npmjs.org/i18next/-/i18next-3.5.2.tgz",
@@ -905,53 +589,16 @@
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz",
"integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q="
},
- "inflection": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.10.0.tgz",
- "integrity": "sha1-W//LEZetPoEFD44X4hZoCH7p6y8=",
- "optional": true
- },
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
},
- "ip": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/ip/-/ip-1.0.1.tgz",
- "integrity": "sha1-x+NWzeoiWucbNtcPLnGpK6TkJZA=",
- "optional": true
- },
"ipaddr.js": {
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz",
"integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A="
},
- "is-my-ip-valid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
- "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==",
- "optional": true
- },
- "is-my-json-valid": {
- "version": "2.17.2",
- "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz",
- "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==",
- "optional": true,
- "requires": {
- "generate-function": "2.0.0",
- "generate-object-property": "1.2.0",
- "is-my-ip-valid": "1.0.0",
- "jsonpointer": "4.0.1",
- "xtend": "4.0.1"
- }
- },
- "is-property": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
- "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
- "optional": true
- },
"is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
@@ -1012,12 +659,6 @@
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
},
- "jsonpointer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
- "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=",
- "optional": true
- },
"jsprim": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
@@ -1029,338 +670,11 @@
"verror": "1.10.0"
}
},
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "optional": true,
- "requires": {
- "prelude-ls": "1.1.2",
- "type-check": "0.3.2"
- }
- },
- "libbase64": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-0.1.0.tgz",
- "integrity": "sha1-YjUag5VjrF/1vSbxL2Dpgwu3UeY="
- },
- "libmime": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/libmime/-/libmime-3.0.0.tgz",
- "integrity": "sha1-UaGp50SOy9Ms2lRCFnW7IbwJPaY=",
- "requires": {
- "iconv-lite": "0.4.15",
- "libbase64": "0.1.0",
- "libqp": "1.1.0"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.4.15",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz",
- "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es="
- }
- }
- },
- "libqp": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz",
- "integrity": "sha1-9ebgatdLeU+1tbZpiL9yjvHe2+g="
- },
"lodash": {
"version": "4.17.5",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
"integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw=="
},
- "log4js": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/log4js/-/log4js-2.5.3.tgz",
- "integrity": "sha512-YL/qpTxYtK0iWWbuKCrevDZz5lh+OjyHHD+mICqpjnYGKdNRBvPeh/1uYjkKUemT1CSO4wwLOwphWMpKAnD9kw==",
- "requires": {
- "amqplib": "0.5.2",
- "axios": "0.15.3",
- "circular-json": "0.5.1",
- "date-format": "1.2.0",
- "debug": "3.1.0",
- "hipchat-notifier": "1.1.0",
- "loggly": "1.1.1",
- "mailgun-js": "0.7.15",
- "nodemailer": "2.7.2",
- "redis": "2.8.0",
- "semver": "5.4.1",
- "slack-node": "0.2.0",
- "streamroller": "0.7.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"
- }
- },
- "ip": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz",
- "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=",
- "optional": true
- },
- "nodemailer": {
- "version": "2.7.2",
- "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-2.7.2.tgz",
- "integrity": "sha1-8kLmSa7q45tsftdA73sGHEBNMPk=",
- "optional": true,
- "requires": {
- "libmime": "3.0.0",
- "mailcomposer": "4.0.1",
- "nodemailer-direct-transport": "3.3.2",
- "nodemailer-shared": "1.1.0",
- "nodemailer-smtp-pool": "2.8.2",
- "nodemailer-smtp-transport": "2.7.2",
- "socks": "1.1.9"
- }
- },
- "socks": {
- "version": "1.1.9",
- "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.9.tgz",
- "integrity": "sha1-Yo1+TQSRJDVEWsC25Fk3bLPm1pE=",
- "optional": true,
- "requires": {
- "ip": "1.1.5",
- "smart-buffer": "1.1.15"
- }
- }
- }
- },
- "loggly": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/loggly/-/loggly-1.1.1.tgz",
- "integrity": "sha1-Cg/B0/o6XsRP3HuJe+uipGlc6+4=",
- "optional": true,
- "requires": {
- "json-stringify-safe": "5.0.1",
- "request": "2.75.0",
- "timespan": "2.3.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
- "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
- "optional": true
- },
- "aws-sign2": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
- "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
- "optional": true
- },
- "boom": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
- "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "caseless": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
- "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=",
- "optional": true
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "optional": true,
- "requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
- }
- },
- "cryptiles": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
- "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
- "optional": true,
- "requires": {
- "boom": "2.10.1"
- }
- },
- "form-data": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.0.0.tgz",
- "integrity": "sha1-bwrrrcxdoWwT4ezBETfYX5uIOyU=",
- "optional": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.17"
- }
- },
- "har-validator": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
- "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
- "optional": true,
- "requires": {
- "chalk": "1.1.3",
- "commander": "2.12.2",
- "is-my-json-valid": "2.17.2",
- "pinkie-promise": "2.0.1"
- }
- },
- "hawk": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
- "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
- "optional": true,
- "requires": {
- "boom": "2.10.1",
- "cryptiles": "2.0.5",
- "hoek": "2.16.3",
- "sntp": "1.0.9"
- }
- },
- "hoek": {
- "version": "2.16.3",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
- "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
- },
- "http-signature": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
- "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
- "optional": true,
- "requires": {
- "assert-plus": "0.2.0",
- "jsprim": "1.4.1",
- "sshpk": "1.13.1"
- }
- },
- "node-uuid": {
- "version": "1.4.8",
- "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
- "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=",
- "optional": true
- },
- "qs": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz",
- "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=",
- "optional": true
- },
- "request": {
- "version": "2.75.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.75.0.tgz",
- "integrity": "sha1-0rgmiihtoT6qXQGt9dGMyQ9lfZM=",
- "optional": true,
- "requires": {
- "aws-sign2": "0.6.0",
- "aws4": "1.6.0",
- "bl": "1.1.2",
- "caseless": "0.11.0",
- "combined-stream": "1.0.5",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.0.0",
- "har-validator": "2.0.6",
- "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.17",
- "node-uuid": "1.4.8",
- "oauth-sign": "0.8.2",
- "qs": "6.2.3",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.3",
- "tunnel-agent": "0.4.3"
- }
- },
- "sntp": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
- "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
- "optional": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "tunnel-agent": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
- "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=",
- "optional": true
- }
- }
- },
- "lru-cache": {
- "version": "2.6.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.6.5.tgz",
- "integrity": "sha1-5W1jVBSO3o13B7WNFDIg/QjfD9U=",
- "optional": true
- },
- "mailcomposer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz",
- "integrity": "sha1-DhxEsqB890DuF9wUm6AJ8Zyt/rQ=",
- "optional": true,
- "requires": {
- "buildmail": "4.0.1",
- "libmime": "3.0.0"
- }
- },
- "mailgun-js": {
- "version": "0.7.15",
- "resolved": "https://registry.npmjs.org/mailgun-js/-/mailgun-js-0.7.15.tgz",
- "integrity": "sha1-7jZqINrGTDwVwD1sGz4O15UlKrs=",
- "optional": true,
- "requires": {
- "async": "2.1.5",
- "debug": "2.2.0",
- "form-data": "2.1.4",
- "inflection": "1.10.0",
- "is-stream": "1.1.0",
- "path-proxy": "1.0.0",
- "proxy-agent": "2.0.0",
- "q": "1.4.1",
- "tsscmp": "1.0.5"
- },
- "dependencies": {
- "debug": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
- "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
- "optional": true,
- "requires": {
- "ms": "0.7.1"
- }
- },
- "form-data": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
- "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
- "optional": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.17"
- }
- },
- "ms": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
- "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=",
- "optional": true
- }
- }
- },
"mathjs": {
"version": "3.20.2",
"resolved": "https://registry.npmjs.org/mathjs/-/mathjs-3.20.2.tgz",
@@ -1410,17 +724,9 @@
}
},
"minimist": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
- "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
- },
- "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"
- }
+ "version": "0.0.10",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
+ "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8="
},
"mongodb": {
"version": "2.2.33",
@@ -1461,15 +767,21 @@
}
}
},
+ "nan": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
+ "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
+ "optional": true
+ },
"natural": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/natural/-/natural-0.4.0.tgz",
- "integrity": "sha1-PraS2Vanb/BfSjeaJ31FUzOQZ2Q=",
+ "version": "0.5.6",
+ "resolved": "https://registry.npmjs.org/natural/-/natural-0.5.6.tgz",
+ "integrity": "sha1-8hUrYfNr78b+Dta8gR+0mebp3M0=",
"requires": {
"apparatus": "0.0.9",
- "log4js": "2.5.3",
"sylvester": "0.0.21",
- "underscore": "1.8.3"
+ "underscore": "1.8.3",
+ "webworker-threads": "0.7.13"
}
},
"negotiator": {
@@ -1477,12 +789,6 @@
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
"integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
},
- "netmask": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz",
- "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=",
- "optional": true
- },
"node-fetch": {
"version": "1.7.3",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
@@ -1493,14 +799,12 @@
}
},
"nodejs-text-summarizer": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/nodejs-text-summarizer/-/nodejs-text-summarizer-2.0.3.tgz",
- "integrity": "sha1-HA4uE2Kr9AChPV9tVa4uv6r5voc=",
+ "version": "github:GotPPay/nodejs-text-summarizer#9be60ffe387560b97f05c178be7db220012a52c1",
"requires": {
"lodash": "4.17.5",
"mathjs": "3.20.2",
"nalapa": "1.11.0",
- "natural": "0.4.0",
+ "natural": "0.5.6",
"underscore.string": "3.3.4"
}
},
@@ -1509,56 +813,6 @@
"resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-4.6.3.tgz",
"integrity": "sha512-1AmOpDZJtyPAO+gfUBfT+MWHbYwQ+DZvb1gvYaTxBZV/lUeysZIt4kDq8Dlwt6ViUZGp3cMGR+D1MNQYyYiVUg=="
},
- "nodemailer-direct-transport": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz",
- "integrity": "sha1-6W+vuQNYVglH5WkBfZfmBzilCoY=",
- "optional": true,
- "requires": {
- "nodemailer-shared": "1.1.0",
- "smtp-connection": "2.12.0"
- }
- },
- "nodemailer-fetch": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz",
- "integrity": "sha1-ecSQihwPXzdbc/6IjamCj23JY6Q="
- },
- "nodemailer-shared": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz",
- "integrity": "sha1-z1mU4v0mjQD1zw+nZ6CBae2wfsA=",
- "requires": {
- "nodemailer-fetch": "1.6.0"
- }
- },
- "nodemailer-smtp-pool": {
- "version": "2.8.2",
- "resolved": "https://registry.npmjs.org/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz",
- "integrity": "sha1-LrlNbPhXgLG0clzoU7nL1ejajHI=",
- "optional": true,
- "requires": {
- "nodemailer-shared": "1.1.0",
- "nodemailer-wellknown": "0.1.10",
- "smtp-connection": "2.12.0"
- }
- },
- "nodemailer-smtp-transport": {
- "version": "2.7.2",
- "resolved": "https://registry.npmjs.org/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz",
- "integrity": "sha1-A9ccdjFPFKx9vHvwM6am0W1n+3c=",
- "optional": true,
- "requires": {
- "nodemailer-shared": "1.1.0",
- "nodemailer-wellknown": "0.1.10",
- "smtp-connection": "2.12.0"
- }
- },
- "nodemailer-wellknown": {
- "version": "0.1.10",
- "resolved": "https://registry.npmjs.org/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz",
- "integrity": "sha1-WG24EB2zDLRDjrVGc3pBqtDPE9U="
- },
"oauth-sign": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
@@ -1572,56 +826,13 @@
"ee-first": "1.1.1"
}
},
- "optionator": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz",
- "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=",
- "optional": true,
+ "optimist": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
+ "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
"requires": {
- "deep-is": "0.1.3",
- "fast-levenshtein": "2.0.6",
- "levn": "0.3.0",
- "prelude-ls": "1.1.2",
- "type-check": "0.3.2",
- "wordwrap": "1.0.0"
- }
- },
- "pac-proxy-agent": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-1.1.0.tgz",
- "integrity": "sha512-QBELCWyLYPgE2Gj+4wUEiMscHrQ8nRPBzYItQNOHWavwBt25ohZHQC4qnd5IszdVVrFbLsQ+dPkm6eqdjJAmwQ==",
- "optional": true,
- "requires": {
- "agent-base": "2.1.1",
- "debug": "2.6.9",
- "extend": "3.0.1",
- "get-uri": "2.0.1",
- "http-proxy-agent": "1.0.0",
- "https-proxy-agent": "1.0.0",
- "pac-resolver": "2.0.0",
- "raw-body": "2.3.2",
- "socks-proxy-agent": "2.1.1"
- }
- },
- "pac-resolver": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-2.0.0.tgz",
- "integrity": "sha1-mbiNLxk/ve78HJpSnB8yYKtSd80=",
- "optional": true,
- "requires": {
- "co": "3.0.6",
- "degenerator": "1.0.4",
- "ip": "1.0.1",
- "netmask": "1.0.6",
- "thunkify": "2.1.2"
- },
- "dependencies": {
- "co": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/co/-/co-3.0.6.tgz",
- "integrity": "sha1-FEXyJsXrlWE45oyawwFn6n0ua9o=",
- "optional": true
- }
+ "minimist": "0.0.10",
+ "wordwrap": "0.0.3"
}
},
"parseurl": {
@@ -1629,23 +840,6 @@
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
"integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
},
- "path-proxy": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/path-proxy/-/path-proxy-1.0.0.tgz",
- "integrity": "sha1-GOijaFn8nS8aU7SN7hOFQ8Ag3l4=",
- "optional": true,
- "requires": {
- "inflection": "1.3.8"
- },
- "dependencies": {
- "inflection": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.3.8.tgz",
- "integrity": "sha1-y9Fg2p91sUw8xjV41POWeEvzAU4=",
- "optional": true
- }
- }
- },
"path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
@@ -1656,26 +850,6 @@
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
},
- "pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "optional": true
- },
- "pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "optional": true,
- "requires": {
- "pinkie": "2.0.4"
- }
- },
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ="
- },
"process-nextick-args": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
@@ -1690,33 +864,11 @@
"ipaddr.js": "1.5.2"
}
},
- "proxy-agent": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-2.0.0.tgz",
- "integrity": "sha1-V+tTR6qAXXTsaByyVknbo5yTNJk=",
- "optional": true,
- "requires": {
- "agent-base": "2.1.1",
- "debug": "2.6.9",
- "extend": "3.0.1",
- "http-proxy-agent": "1.0.0",
- "https-proxy-agent": "1.0.0",
- "lru-cache": "2.6.5",
- "pac-proxy-agent": "1.1.0",
- "socks-proxy-agent": "2.1.1"
- }
- },
"punycode": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
"integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
},
- "q": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz",
- "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=",
- "optional": true
- },
"qs": {
"version": "6.5.1",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
@@ -1757,29 +909,6 @@
"util-deprecate": "1.0.2"
}
},
- "redis": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz",
- "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==",
- "optional": true,
- "requires": {
- "double-ended-queue": "2.1.0-0",
- "redis-commands": "1.3.5",
- "redis-parser": "2.6.0"
- }
- },
- "redis-commands": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.5.tgz",
- "integrity": "sha512-foGF8u6MXGFF++1TZVC6icGXuMYPftKXt1FBT2vrfU9ZATNtZJ8duRC5d1lEfE8hyVe3jhelHGB91oB7I6qLsA==",
- "optional": true
- },
- "redis-parser": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz",
- "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=",
- "optional": true
- },
"request": {
"version": "2.83.0",
"resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz",
@@ -1809,18 +938,6 @@
"uuid": "3.1.0"
}
},
- "requestretry": {
- "version": "1.13.0",
- "resolved": "https://registry.npmjs.org/requestretry/-/requestretry-1.13.0.tgz",
- "integrity": "sha512-Lmh9qMvnQXADGAQxsXHP4rbgO6pffCfuR8XUBdP9aitJcLQJxhp7YZK4xAVYXnPJ5E52mwrfiKQtKonPL8xsmg==",
- "optional": true,
- "requires": {
- "extend": "3.0.1",
- "lodash": "4.17.5",
- "request": "2.83.0",
- "when": "3.7.8"
- }
- },
"require_optional": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz",
@@ -1907,29 +1024,6 @@
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
"integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
},
- "slack-node": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/slack-node/-/slack-node-0.2.0.tgz",
- "integrity": "sha1-3kuN3aqLeT9h29KTgQT9q/N9+jA=",
- "optional": true,
- "requires": {
- "requestretry": "1.13.0"
- }
- },
- "smart-buffer": {
- "version": "1.1.15",
- "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz",
- "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY="
- },
- "smtp-connection": {
- "version": "2.12.0",
- "resolved": "https://registry.npmjs.org/smtp-connection/-/smtp-connection-2.12.0.tgz",
- "integrity": "sha1-1275EnyyPCJZ7bHoNJwujV4tdME=",
- "requires": {
- "httpntlm": "1.6.1",
- "nodemailer-shared": "1.1.0"
- }
- },
"sntp": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz",
@@ -1938,38 +1032,6 @@
"hoek": "4.2.0"
}
},
- "socks": {
- "version": "1.1.10",
- "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz",
- "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=",
- "requires": {
- "ip": "1.1.5",
- "smart-buffer": "1.1.15"
- },
- "dependencies": {
- "ip": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz",
- "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo="
- }
- }
- },
- "socks-proxy-agent": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-2.1.1.tgz",
- "integrity": "sha512-sFtmYqdUK5dAMh85H0LEVFUCO7OhJJe1/z2x/Z6mxp3s7/QPf1RkZmpZy+BpuU0bEjcV9npqKjq9Y3kwFUjnxw==",
- "requires": {
- "agent-base": "2.1.1",
- "extend": "3.0.1",
- "socks": "1.1.10"
- }
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "optional": true
- },
"sprintf-js": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.1.tgz",
@@ -1995,46 +1057,6 @@
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
"integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic="
},
- "streamroller": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz",
- "integrity": "sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ==",
- "requires": {
- "date-format": "1.2.0",
- "debug": "3.1.0",
- "mkdirp": "0.5.1",
- "readable-stream": "2.3.5"
- },
- "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"
- }
- },
- "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=="
- },
- "readable-stream": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
- "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
- "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.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- }
- }
- },
"string_decoder": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
@@ -2048,38 +1070,11 @@
"resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
"integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg="
},
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "optional": true,
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
- "optional": true
- },
"sylvester": {
"version": "0.0.21",
"resolved": "https://registry.npmjs.org/sylvester/-/sylvester-0.0.21.tgz",
"integrity": "sha1-KYexzivS84sNzio0OIiEv6RADqc="
},
- "thunkify": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz",
- "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=",
- "optional": true
- },
- "timespan": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz",
- "integrity": "sha1-SQLOBAvRPYRcj1myfp1ZutbzmSk=",
- "optional": true
- },
"tiny-emitter": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz",
@@ -2093,12 +1088,6 @@
"punycode": "1.4.1"
}
},
- "tsscmp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.5.tgz",
- "integrity": "sha1-fcSjOvcVgatDN9qR2FylQn69mpc=",
- "optional": true
- },
"tunnel-agent": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
@@ -2113,14 +1102,6 @@
"integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
"optional": true
},
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "requires": {
- "prelude-ls": "1.1.2"
- }
- },
"type-is": {
"version": "1.6.15",
"resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz",
@@ -2200,22 +1181,25 @@
"extsprintf": "1.3.0"
}
},
+ "webworker-threads": {
+ "version": "0.7.13",
+ "resolved": "https://registry.npmjs.org/webworker-threads/-/webworker-threads-0.7.13.tgz",
+ "integrity": "sha1-yEsYtrokElu503NC5E3rgVFi+4M=",
+ "optional": true,
+ "requires": {
+ "bindings": "1.3.0",
+ "nan": "2.10.0"
+ }
+ },
"whatwg-fetch": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz",
"integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ="
},
- "when": {
- "version": "3.7.8",
- "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz",
- "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=",
- "optional": true
- },
"wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
- "optional": true
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
+ "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc="
},
"xml2js": {
"version": "0.4.17",
@@ -2233,18 +1217,6 @@
"requires": {
"lodash": "4.17.5"
}
- },
- "xregexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz",
- "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=",
- "optional": true
- },
- "xtend": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
- "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
- "optional": true
}
}
}
diff --git a/backend/package.json b/backend/package.json
index 351ef68..7504d2d 100644
--- a/backend/package.json
+++ b/backend/package.json
@@ -8,9 +8,10 @@
"body-parser": "^1.13.1",
"ejs": "^2.5.7",
"express": "^4.13.0",
+ "html-to-text": "^4.0.0",
"isomorphic-fetch": "^2.2.1",
"mongodb": "^2.2.33",
- "nodejs-text-summarizer": "^2.0.3",
+ "nodejs-text-summarizer": "GotPPay/nodejs-text-summarizer",
"nodemailer": "^4.4.1",
"request": "^2.83.0",
"rss-parser": "^3.1.1"