'use strict';
+const Fs = require('fs');
+const Path = require('path');
-var fs = require('fs');
-
-var Promise = require('bluebird');
-require('neon');
-
-var Conjugator = require('./Conjugator');
-
-var InsultGenerator = Class({}, "InsultGenerator")({
- prototype : {
- file : null,
- verbs: null,
- nouns: null,
-
- _maxTries: 10,
- _loaded: false,
- _verbRe: /^[0-9]+\-v\s+?lemma\s+?([^ ]+)/,
- _nounRe: /^[0-9]+\-n\s+?lemma\s+?([^ ]+)/,
- _conjugator: null,
-
- init : function init(config) {
- config = config || {};
-
- Object.keys(config).forEach(function (property) {
- this[property] = config[property];
- }, this);
-
- this._conjugator = new Conjugator();
- },
-
- generate : function generate(config) {
- var selectedVerb;
- return this._load()
- .then(function () {
- return this._getVerb();
- }.bind(this)).then(function (verb) {
- return this._conjugateVerb(verb);
- }.bind(this)).then(function (conjugatedVerb) {
- selectedVerb = conjugatedVerb;
- return this._getNoun();
- }.bind(this)).then(function (noun) {
- return this._generateInsult(selectedVerb, noun);
- }.bind(this));
- },
-
- _load : function _load() {
- return this._loadFile()
- .then(function () {
- return this._loadVerbs();
- }.bind(this)).then(function () {
- return this._loadNouns();
- }.bind(this));
- },
-
- _loadFile : function _loadFile() {
- return new Promise(function (resolve, reject) {
- if (this._loaded) {
- return resolve();
- }
+const Conjugator = require('./Conjugator');
- fs.readFile(this.file, {encoding: 'utf8'}, function (err, contents) {
- if (err) {
- return reject(err);
- }
+const internals = {
+ kMaxAttempts: 10,
+ kVowels: ['a', 'e', 'i', 'o', 'u'],
+ kWordFile: Path.resolve(__dirname, '../ext/words.tab'),
+ kWordRe: /^[0-9]+\-(n|v)\s+?lemma\s+?([^ ]+)/,
- this._contents = contents;
- this._loaded = true;
- resolve();
- }.bind(this));
- }.bind(this));
- },
-
- _loadVerbs : function _loadVerbs() {
- return new Promise(function (resolve, reject) {
- if (this.verbs) {
- return resolve();
- }
+ wordList: null,
- this.verbs = [];
- this._contents.split('\n').forEach(function (line) {
- var matches;
- matches = line.match(this._verbRe);
+ // Gets the list of words, key can be either nouns or verbs
- if (matches) {
- if (this.verbs.indexOf(matches[1]) === -1) {
- this.verbs.push(matches[1])
- }
- }
- }, this);
+ async getWordList(key) {
+
+ internals.wordList = internals.wordList || await internals.readWordFile();
+ return internals.wordList[key];
+ },
+
+ // Read the list of words and returns it
+
+ readWordFile() {
- resolve();
- }.bind(this));
- },
+ return new Promise(function (resolve, reject) {
- _loadNouns : function _loadNouns() {
- return new Promise(function (resolve, reject) {
- if (this.nouns) {
- return resolve();
+ console.debug('Reading word file');
+ Fs.readFile(internals.kWordFile, {encoding: 'utf8'}, function (err, contents) {
+
+ if (err) {
+ return reject(err);
}
- this.nouns = [];
- this._contents.split('\n').forEach(function (line) {
- var matches;
- matches = line.match(this._nounRe);
+ const verbs = new Set();
+ const nouns = new Set();
+ const words = contents.split('\n');
+
+ console.debug(`Found ${words.length} words, categorizing`);
+
+ words.forEach(function (line) {
+
+ const matches = line.match(internals.kWordRe);
if (matches) {
- if (this.nouns.indexOf(matches[1]) === -1) {
- this.nouns.push(matches[1])
+ if (matches[1] === 'v') {
+ return verbs.add(matches[2]);
}
+
+ nouns.add(matches[2]);
}
- }, this);
-
- resolve();
- }.bind(this));
- },
-
- _getVerb : function _getVerb() {
- var index;
- index = Math.floor(Math.random()*this.verbs.length);
- return Promise.resolve(this.verbs[index]);
- },
-
- _conjugateVerb : function _conjugateVerb(verb) {
- return new Promise(function (resolve, reject) {
- var tries;
-
- tries = 0;
-
- var attemptConjugation = function attemptConjugation(verb, tries) {
- if (tries > this._maxTries) {
- return reject(new Error("Couldn't find a proper verb"));
- };
-
- this._conjugator.conjugate(verb)
- .then(function (conjugatedVerb) {
- resolve(conjugatedVerb);
- })
- .catch(function (err) {
- this._getVerb().then(function (verb) {
- attemptConjugation.bind(this)(verb, tries + 1);
- }.bind(this))
- }.bind(this));
- };
-
- setTimeout(attemptConjugation.bind(this, verb, 0), 0);
- }.bind(this));
- },
-
- _getNoun : function _getNoun() {
- var index, noun;
- index = Math.floor(Math.random()*this.nouns.length);
- return Promise.resolve(this.nouns[index].toLowerCase());
- },
-
- _generateInsult : function _generateInsult(verb, noun) {
- return Promise.resolve(verb + this._pluralize(noun));
- },
-
- // Super dumb pluralizer
- _pluralize : function _pluralize(noun) {
- var lastLetter;
-
- lastLetter = noun[noun.length - 1];
-
- if (lastLetter === "s") {
- return noun;
- }
-
- if (["a","e","i","o","u"].indexOf(lastLetter) >= 0) {
- return noun + "s"
- }
-
- return noun + "es";
+ });
+
+ console.debug(`Nouns: ${nouns.size}, Verbs: ${verbs.size}`);
+
+ resolve({
+ verbs: [...verbs],
+ nouns: [...nouns]
+ });
+ });
+ });
+ },
+
+ // Gets a conjugated verb
+
+ async getVerb() {
+
+ const verbs = await internals.getWordList('verbs');
+ const verb = verbs[Math.floor(Math.random()*verbs.length)];
+ return await Conjugator.conjugate(verb);
+ },
+
+ // Gets a pluralized noun
+
+ async getNoun() {
+
+ const nouns = await internals.getWordList('nouns');
+ const noun = nouns[Math.floor(Math.random()*nouns.length)];
+ return internals.pluralize(noun);
+ },
+
+ // Pluralizes a word
+
+ pluralize(noun) {
+
+ const lastLetter = noun[noun.length - 1];
+
+ if (lastLetter === 's') {
+ return noun;
}
+
+ if (internals.kVowels.indexOf(lastLetter) >= 0) {
+ return noun + 's'
+ }
+
+ return noun + 'es';
}
-});
+};
+
+module.exports = {
-module.exports = InsultGenerator;
+ // Generates an insult.
+
+ async generate() {
+
+ const verb = await internals.getVerb();
+ const noun = await internals.getNoun();
+
+ return (verb + noun).toLowerCase();
+ }
+};
"lockfileVersion": 1,
"requires": true,
"dependencies": {
- "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="
- },
- "asn1": {
- "version": "0.1.11",
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz",
- "integrity": "sha1-VZvhg3bQik7E2+gId9J4GGObLfc="
- },
- "assert-plus": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz",
- "integrity": "sha1-7nQAlBMALYTOxyGcasgRgS5yMWA="
- },
- "async": {
- "version": "2.6.3",
- "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
- "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
- "requires": {
- "lodash": "^4.17.14"
- },
- "dependencies": {
- "lodash": {
- "version": "4.17.15",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
- "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
- }
- }
- },
- "aws-sign2": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz",
- "integrity": "sha1-xXED96F/wDfwLXwuZLYC6iI/fWM="
- },
- "bl": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz",
- "integrity": "sha1-/FQhoo/UImA2w7OJGmaiW8ZNIm4=",
- "requires": {
- "readable-stream": "~2.0.5"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
- },
- "readable-stream": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
- "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "~1.0.0",
- "process-nextick-args": "~1.0.6",
- "string_decoder": "~0.10.x",
- "util-deprecate": "~1.0.1"
- }
- }
- }
- },
- "bluebird": {
- "version": "2.9.34",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz",
- "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g="
+ "@hapi/accept": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/accept/-/accept-5.0.1.tgz",
+ "integrity": "sha512-fMr4d7zLzsAXo28PRRQPXR1o2Wmu+6z+VY1UzDp0iFo13Twj8WePakwXBiqn3E1aAlTpSNzCXdnnQXFhst8h8Q==",
+ "requires": {
+ "@hapi/boom": "9.x.x",
+ "@hapi/hoek": "9.x.x"
+ }
},
- "boolbase": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
- "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
+ "@hapi/address": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/address/-/address-4.0.1.tgz",
+ "integrity": "sha512-0oEP5UiyV4f3d6cBL8F3Z5S7iWSX39Knnl0lY8i+6gfmmIBj44JCBNtcMgwyS+5v7j3VYavNay0NFHDS+UGQcw==",
+ "requires": {
+ "@hapi/hoek": "^9.0.0"
+ }
},
- "boom": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
- "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
+ "@hapi/ammo": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/ammo/-/ammo-5.0.1.tgz",
+ "integrity": "sha512-FbCNwcTbnQP4VYYhLNGZmA76xb2aHg9AMPiy18NZyWMG310P5KdFGyA9v2rm5ujrIny77dEEIkMOwl0Xv+fSSA==",
"requires": {
- "hoek": "2.x.x"
+ "@hapi/hoek": "9.x.x"
}
},
- "caseless": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
- "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c="
+ "@hapi/b64": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/b64/-/b64-5.0.0.tgz",
+ "integrity": "sha512-ngu0tSEmrezoiIaNGG6rRvKOUkUuDdf4XTPnONHGYfSGRmDqPZX5oJL6HAdKTo1UQHECbdB4OzhWrfgVppjHUw==",
+ "requires": {
+ "@hapi/hoek": "9.x.x"
+ }
},
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "@hapi/boom": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-9.1.0.tgz",
+ "integrity": "sha512-4nZmpp4tXbm162LaZT45P7F7sgiem8dwAh2vHWT6XX24dozNjGMg6BvKCRvtCUcmcXqeMIUqWN8Rc5X8yKuROQ==",
"requires": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
+ "@hapi/hoek": "9.x.x"
}
},
- "cheerio": {
- "version": "0.19.0",
- "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.19.0.tgz",
- "integrity": "sha1-dy5wFfLuKZZQltcepBdbdas1SSU=",
+ "@hapi/bounce": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/bounce/-/bounce-2.0.0.tgz",
+ "integrity": "sha512-JesW92uyzOOyuzJKjoLHM1ThiOvHPOLDHw01YV8yh5nCso7sDwJho1h0Ad2N+E62bZyz46TG3xhAi/78Gsct6A==",
"requires": {
- "css-select": "~1.0.0",
- "dom-serializer": "~0.1.0",
- "entities": "~1.1.1",
- "htmlparser2": "~3.8.1",
- "lodash": "^3.2.0"
+ "@hapi/boom": "9.x.x",
+ "@hapi/hoek": "9.x.x"
}
},
- "combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "@hapi/bourne": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-2.0.0.tgz",
+ "integrity": "sha512-WEezM1FWztfbzqIUbsDzFRVMxSoLy3HugVcux6KDDtTqzPsLE8NDRHfXvev66aH1i2oOKKar3/XDjbvh/OUBdg=="
+ },
+ "@hapi/call": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/call/-/call-8.0.0.tgz",
+ "integrity": "sha512-4xHIWWqaIDQlVU88XAnomACSoC7iWUfaLfdu2T7I0y+HFFwZUrKKGfwn6ik4kwKsJRMnOliG3UXsF8V/94+Lkg==",
"requires": {
- "delayed-stream": "~1.0.0"
+ "@hapi/address": "4.x.x",
+ "@hapi/boom": "9.x.x",
+ "@hapi/hoek": "9.x.x"
}
},
- "commander": {
- "version": "2.20.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz",
- "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ=="
+ "@hapi/catbox": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/catbox/-/catbox-11.1.0.tgz",
+ "integrity": "sha512-FDEjfn26RZRyOEPeZdaAL7dRiAK5FOGuwTnTw0gxK30csAlKeOHsEnoIxnLIXx7QOS17eUaOk6+MiweWQM6Keg==",
+ "requires": {
+ "@hapi/boom": "9.x.x",
+ "@hapi/hoek": "9.x.x",
+ "@hapi/joi": "17.x.x",
+ "@hapi/podium": "4.x.x"
+ }
},
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ "@hapi/catbox-memory": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/catbox-memory/-/catbox-memory-5.0.0.tgz",
+ "integrity": "sha512-ByuxVJPHNaXwLzbBv4GdTr6ccpe1nG+AfYt+8ftDWEJY7EWBWzD+Klhy5oPTDGzU26pNUh1e7fcYI1ILZRxAXQ==",
+ "requires": {
+ "@hapi/boom": "9.x.x",
+ "@hapi/hoek": "9.x.x"
+ }
},
- "cryptiles": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
- "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
+ "@hapi/content": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/content/-/content-5.0.2.tgz",
+ "integrity": "sha512-mre4dl1ygd4ZyOH3tiYBrOUBzV7Pu/EOs8VLGf58vtOEECWed8Uuw6B4iR9AN/8uQt42tB04qpVaMyoMQh0oMw==",
"requires": {
- "boom": "2.x.x"
+ "@hapi/boom": "9.x.x"
}
},
- "css-select": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.0.0.tgz",
- "integrity": "sha1-sRIcpRhI3SZOIkTQWM7iVN7rRLA=",
+ "@hapi/cryptiles": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/cryptiles/-/cryptiles-5.0.0.tgz",
+ "integrity": "sha512-Yq43ti9N51Z7jbm0Q7YVCcofA+4Gh5wsBX/jZ++Z+FM8GYfBQ1WmI9ufZSL+BVX8vRxzDkdQ2fKoG6cxOQlnVQ==",
"requires": {
- "boolbase": "~1.0.0",
- "css-what": "1.0",
- "domutils": "1.4",
- "nth-check": "~1.0.0"
+ "@hapi/boom": "9.x.x"
}
},
- "css-what": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/css-what/-/css-what-1.0.0.tgz",
- "integrity": "sha1-18wt9FGAZm+Z0rFEYmOUaeAPc2w="
+ "@hapi/file": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/file/-/file-2.0.0.tgz",
+ "integrity": "sha512-WSrlgpvEqgPWkI18kkGELEZfXr0bYLtr16iIN4Krh9sRnzBZN6nnWxHFxtsnP684wueEySBbXPDg/WfA9xJdBQ=="
},
- "ctype": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz",
- "integrity": "sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8="
+ "@hapi/formula": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/formula/-/formula-2.0.0.tgz",
+ "integrity": "sha512-V87P8fv7PI0LH7LiVi8Lkf3x+KCO7pQozXRssAHNXXL9L1K+uyu4XypLXwxqVDKgyQai6qj3/KteNlrqDx4W5A=="
},
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
+ "@hapi/hapi": {
+ "version": "19.1.1",
+ "resolved": "https://registry.npmjs.org/@hapi/hapi/-/hapi-19.1.1.tgz",
+ "integrity": "sha512-rpQzSs0XsHSF7usM4qdJJ0Bcmhs9stWhUW3OiamW33bw4qL8q3uEgUKB9KH8ODmluCAkkXOQ0X0Dh9t94E5VIw==",
+ "requires": {
+ "@hapi/accept": "^5.0.1",
+ "@hapi/ammo": "^5.0.1",
+ "@hapi/boom": "9.x.x",
+ "@hapi/bounce": "2.x.x",
+ "@hapi/call": "8.x.x",
+ "@hapi/catbox": "11.x.x",
+ "@hapi/catbox-memory": "5.x.x",
+ "@hapi/heavy": "7.x.x",
+ "@hapi/hoek": "9.x.x",
+ "@hapi/joi": "17.x.x",
+ "@hapi/mimos": "5.x.x",
+ "@hapi/podium": "4.x.x",
+ "@hapi/shot": "5.x.x",
+ "@hapi/somever": "3.x.x",
+ "@hapi/statehood": "^7.0.2",
+ "@hapi/subtext": "^7.0.3",
+ "@hapi/teamwork": "4.x.x",
+ "@hapi/topo": "5.x.x"
+ }
},
- "dom-serializer": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
- "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
+ "@hapi/heavy": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/heavy/-/heavy-7.0.0.tgz",
+ "integrity": "sha512-n/nheUG6zNleWkjY+3fzV3VJIAumUCaa/WoTmurjqlYY5JgC5ZKOpvP7tWi8rXmKZhbcXgjH3fHFoM55LoBT7g==",
"requires": {
- "domelementtype": "^1.3.0",
- "entities": "^1.1.1"
+ "@hapi/boom": "9.x.x",
+ "@hapi/hoek": "9.x.x",
+ "@hapi/joi": "17.x.x"
}
},
- "domelementtype": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
- "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
+ "@hapi/hoek": {
+ "version": "9.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.0.4.tgz",
+ "integrity": "sha512-EwaJS7RjoXUZ2cXXKZZxZqieGtc7RbvQhUy8FwDoMQtxWVi14tFjeFCYPZAM1mBCpOpiBpyaZbb9NeHc7eGKgw=="
},
- "domhandler": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
- "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
+ "@hapi/iron": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/iron/-/iron-6.0.0.tgz",
+ "integrity": "sha512-zvGvWDufiTGpTJPG1Y/McN8UqWBu0k/xs/7l++HVU535NLHXsHhy54cfEMdW7EjwKfbBfM9Xy25FmTiobb7Hvw==",
"requires": {
- "domelementtype": "1"
+ "@hapi/b64": "5.x.x",
+ "@hapi/boom": "9.x.x",
+ "@hapi/bourne": "2.x.x",
+ "@hapi/cryptiles": "5.x.x",
+ "@hapi/hoek": "9.x.x"
}
},
- "domutils": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.4.3.tgz",
- "integrity": "sha1-CGVRN5bGswYDGFDhdVFrr4C3Km8=",
+ "@hapi/joi": {
+ "version": "17.1.1",
+ "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-17.1.1.tgz",
+ "integrity": "sha512-p4DKeZAoeZW4g3u7ZeRo+vCDuSDgSvtsB/NpfjXEHTUjSeINAi/RrVOWiVQ1isaoLzMvFEhe8n5065mQq1AdQg==",
"requires": {
- "domelementtype": "1"
+ "@hapi/address": "^4.0.1",
+ "@hapi/formula": "^2.0.0",
+ "@hapi/hoek": "^9.0.0",
+ "@hapi/pinpoint": "^2.0.0",
+ "@hapi/topo": "^5.0.0"
}
},
- "entities": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
- "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
+ "@hapi/mimos": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/mimos/-/mimos-5.0.0.tgz",
+ "integrity": "sha512-EVS6wJYeE73InTlPWt+2e3Izn319iIvffDreci3qDNT+t3lA5ylJ0/SoTaID8e0TPNUkHUSsgJZXEmLHvoYzrA==",
+ "requires": {
+ "@hapi/hoek": "9.x.x",
+ "mime-db": "1.x.x"
+ }
},
- "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="
+ "@hapi/nigel": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/nigel/-/nigel-4.0.0.tgz",
+ "integrity": "sha512-Bqs1pjcDnDQo/XGoiCCNHWTFcMzPbz3L4KU04njeFQMzzEmsojMRX7TX+PezQYCMKtHJOtMg0bHxZyMGqYtbSA==",
+ "requires": {
+ "@hapi/hoek": "9.x.x",
+ "@hapi/vise": "4.x.x"
+ }
},
- "extend": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
- "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+ "@hapi/pez": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/pez/-/pez-5.0.2.tgz",
+ "integrity": "sha512-jr1lAm8mE7J2IBxvDIuDI1qy2aAsoaD2jxOUd/7JRg/Vmrzco8HdKhtz4fKk6KHU6zbbsAp5m5aSWWVTUrag7g==",
+ "requires": {
+ "@hapi/b64": "5.x.x",
+ "@hapi/boom": "9.x.x",
+ "@hapi/content": "^5.0.2",
+ "@hapi/hoek": "9.x.x",
+ "@hapi/nigel": "4.x.x"
+ }
},
- "forever-agent": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
- "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
+ "@hapi/pinpoint": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-2.0.0.tgz",
+ "integrity": "sha512-vzXR5MY7n4XeIvLpfl3HtE3coZYO4raKXW766R6DZw/6aLqR26iuZ109K7a0NtF2Db0jxqh7xz2AxkUwpUFybw=="
},
- "form-data": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-1.0.1.tgz",
- "integrity": "sha1-rjFduaSQf6BlUCMEpm13M0de43w=",
+ "@hapi/podium": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-4.1.0.tgz",
+ "integrity": "sha512-k/n0McAu8PvonfQRLyKKUvvdb+Gh/O5iAeIwv535Hpxw9B1qZcrYdZyWtHZ8O5PkA9/b/Kk+BdvtgcxeKMB/2g==",
"requires": {
- "async": "^2.0.1",
- "combined-stream": "^1.0.5",
- "mime-types": "^2.1.11"
+ "@hapi/hoek": "9.x.x",
+ "@hapi/joi": "17.x.x",
+ "@hapi/teamwork": "4.x.x"
}
},
- "generate-function": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz",
- "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==",
+ "@hapi/shot": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/shot/-/shot-5.0.0.tgz",
+ "integrity": "sha512-JXddnJkRh3Xhv9lY1tA+TSIUaoODKbdNIPL/M8WFvFQKOttmGaDeqTW5e8Gf01LtLI7L5DraLMULHjrK1+YNFg==",
"requires": {
- "is-property": "^1.0.2"
+ "@hapi/hoek": "9.x.x",
+ "@hapi/joi": "17.x.x"
}
},
- "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=",
- "requires": {
- "is-property": "^1.0.0"
- }
- },
- "hapi": {
- "version": "9.2.0",
- "resolved": "https://registry.npmjs.org/hapi/-/hapi-9.2.0.tgz",
- "integrity": "sha1-aBa1nThwEup84c4zZlWwK0YK40Y=",
- "requires": {
- "accept": "1.x.x",
- "ammo": "1.x.x",
- "boom": "^2.5.x",
- "call": "2.x.x",
- "catbox": "6.x.x",
- "catbox-memory": "1.x.x",
- "cryptiles": "2.x.x",
- "heavy": "3.x.x",
- "hoek": "^2.14.x",
- "iron": "2.x.x",
- "items": "1.x.x",
- "joi": "6.x.x",
- "kilt": "^1.1.x",
- "mimos": "2.x.x",
- "peekaboo": "1.x.x",
- "qs": "4.x.x",
- "shot": "1.x.x",
- "statehood": "2.x.x",
- "subtext": "2.x.x",
- "topo": "1.x.x"
- },
- "dependencies": {
- "accept": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/accept/-/accept-1.1.0.tgz",
- "integrity": "sha1-x7VWfJmt5Kx8k38qm8HFZhYKMLU=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x"
- }
- },
- "ammo": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/ammo/-/ammo-1.0.1.tgz",
- "integrity": "sha1-j4rdFM1Jve3jurOj4OvK8h0D3os=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x"
- }
- },
- "boom": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/boom/-/boom-2.8.0.tgz",
- "integrity": "sha1-MXvf1HAY/n3Xmw6dpz7+JEEZ/fE=",
- "requires": {
- "hoek": "2.x.x"
- }
- },
- "call": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/call/-/call-2.0.2.tgz",
- "integrity": "sha1-nJgxq9B2lIb97oOkEUm4KbMtBsA=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x"
- }
- },
- "catbox": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/catbox/-/catbox-6.0.0.tgz",
- "integrity": "sha1-6i8pT6Bemvx+IhDTI/XeU6OAQ+c=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x",
- "joi": "6.x.x"
- }
- },
- "catbox-memory": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/catbox-memory/-/catbox-memory-1.1.2.tgz",
- "integrity": "sha1-M8kYOjKzGUXuikhNDjw8u4Lq7Bo=",
- "requires": {
- "hoek": "2.x.x"
- }
- },
- "cryptiles": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.4.tgz",
- "integrity": "sha1-CeoXdbnhx95+YKmdQqtvCM4aEoU=",
- "requires": {
- "boom": "2.x.x"
- }
- },
- "heavy": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/heavy/-/heavy-3.0.0.tgz",
- "integrity": "sha1-/QEIdiExYy+IVIontVQSws9SKwA=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x",
- "joi": "5.x.x"
- }
- },
- "hoek": {
- "version": "2.14.0",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.14.0.tgz",
- "integrity": "sha1-gSEWkfUqWoNa5J7b8eickANHaqQ="
- },
- "iron": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/iron/-/iron-2.1.3.tgz",
- "integrity": "sha1-cbjzV9gGquA6kKdFuaqv/sfi3eQ=",
- "requires": {
- "boom": "2.x.x",
- "cryptiles": "2.x.x",
- "hoek": "2.x.x"
- }
- },
- "items": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/items/-/items-1.1.0.tgz",
- "integrity": "sha1-rZ1VhAsimGDLPRYLMidMLUvZ4mI="
- },
- "joi": {
- "version": "6.6.1",
- "resolved": "https://registry.npmjs.org/joi/-/joi-6.6.1.tgz",
- "integrity": "sha1-NXR2aGFCb4xBGb9qgLU9C0ib9Qc=",
- "requires": {
- "hoek": "^2.2.x",
- "isemail": "1.x.x",
- "moment": "2.x.x",
- "topo": "1.x.x"
- },
- "dependencies": {
- "isemail": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/isemail/-/isemail-1.1.1.tgz",
- "integrity": "sha1-4Mj23D9HCX53dzlcaJYnGqJWw7U="
- },
- "moment": {
- "version": "2.10.6",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.10.6.tgz",
- "integrity": "sha1-bLIZZ8ecunsMpeZmRPFzZis++nc="
- }
- }
- },
- "kilt": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/kilt/-/kilt-1.1.1.tgz",
- "integrity": "sha1-d7SmFjyn+lshN6iMFzNCFuwj1ds=",
- "requires": {
- "hoek": "2.x.x"
- }
- },
- "mimos": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/mimos/-/mimos-2.0.2.tgz",
- "integrity": "sha1-wyQXF+dblZkr54esfdbbGptTmx4=",
- "requires": {
- "hoek": "2.x.x",
- "mime-db": "1.x.x"
- },
- "dependencies": {
- "mime-db": {
- "version": "1.18.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.18.0.tgz",
- "integrity": "sha1-UxfigiTAivHUhPYJc904a6jzieA="
- }
- }
- },
- "peekaboo": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/peekaboo/-/peekaboo-1.0.0.tgz",
- "integrity": "sha1-wNspJq1lTSygH3ymUKtFkadk/EI="
- },
- "qs": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-4.0.0.tgz",
- "integrity": "sha1-wx2bdOwn33XlQ6hseHKO2NRiNgc="
- },
- "shot": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/shot/-/shot-1.6.0.tgz",
- "integrity": "sha1-jIo2fgyIyI/O1d6y7aWUW0avErI=",
- "requires": {
- "hoek": "2.x.x"
- }
- },
- "statehood": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/statehood/-/statehood-2.1.1.tgz",
- "integrity": "sha1-AfFwtmxeklqvZ5qdMiulkYb8AAk=",
- "requires": {
- "boom": "2.x.x",
- "cryptiles": "2.x.x",
- "hoek": "2.x.x",
- "iron": "2.x.x",
- "items": "1.x.x",
- "joi": "6.x.x"
- }
- },
- "subtext": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/subtext/-/subtext-2.0.0.tgz",
- "integrity": "sha1-I5lQ6SCBQ/FUirJeHJV5vbaNiU4=",
- "requires": {
- "boom": "2.x.x",
- "content": "1.x.x",
- "hoek": "2.x.x",
- "pez": "1.x.x",
- "qs": "4.x.x",
- "wreck": "6.x.x"
- },
- "dependencies": {
- "content": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/content/-/content-1.0.2.tgz",
- "integrity": "sha1-y37fMq/vF8SKz9vSH/mMIzFa6CQ=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x"
- }
- },
- "pez": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/pez/-/pez-1.0.0.tgz",
- "integrity": "sha1-hEMYpc5wku7d/6KV4YB5rHefoBg=",
- "requires": {
- "b64": "2.x.x",
- "boom": "2.x.x",
- "content": "1.x.x",
- "hoek": "2.x.x",
- "nigel": "1.x.x"
- },
- "dependencies": {
- "b64": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/b64/-/b64-2.0.0.tgz",
- "integrity": "sha1-tZlbJPR+v9nxMQF6bntdZHVvtvM=",
- "requires": {
- "hoek": "2.x.x"
- }
- },
- "nigel": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/nigel/-/nigel-1.0.1.tgz",
- "integrity": "sha1-RjmJr4gSePuqHTzJOCPb0XtDYKE=",
- "requires": {
- "hoek": "2.x.x",
- "vise": "1.x.x"
- },
- "dependencies": {
- "vise": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/vise/-/vise-1.0.0.tgz",
- "integrity": "sha1-KDRb5N5aNB4V/SgW/Z6j5zA+jfM=",
- "requires": {
- "hoek": "2.x.x"
- }
- }
- }
- }
- }
- },
- "wreck": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/wreck/-/wreck-6.1.0.tgz",
- "integrity": "sha1-DLV9Jkk8LGN91Dkizv5xLGmVSM8=",
- "requires": {
- "boom": "2.x.x",
- "hoek": "2.x.x"
- }
- }
- }
- },
- "topo": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/topo/-/topo-1.0.3.tgz",
- "integrity": "sha1-576uXqSQZ9dp5Sjn40ZC7e1/Llo=",
- "requires": {
- "hoek": "2.x.x"
- }
- }
- }
- },
- "har-validator": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-1.8.0.tgz",
- "integrity": "sha1-2DhCsOtMQ1lgrrEIoGejqpTA7rI=",
- "requires": {
- "bluebird": "^2.9.30",
- "chalk": "^1.0.0",
- "commander": "^2.8.1",
- "is-my-json-valid": "^2.12.0"
- }
- },
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+ "@hapi/somever": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/somever/-/somever-3.0.0.tgz",
+ "integrity": "sha512-Upw/kmKotC9iEmK4y047HMYe4LDKsE5NWfjgX41XNKmFvxsQL7OiaCWVhuyyhU0ShDGBfIAnCH8jZr49z/JzZA==",
"requires": {
- "ansi-regex": "^2.0.0"
+ "@hapi/bounce": "2.x.x",
+ "@hapi/hoek": "9.x.x"
}
},
- "hawk": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
- "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
+ "@hapi/statehood": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/statehood/-/statehood-7.0.2.tgz",
+ "integrity": "sha512-+0VNxysQu+UYzkfvAXq3X4aN65TnUwiR7gsq2cQ/4Rq26nCJjHAfrkYReEeshU2hPmJ3m5QuaBzyDqRm8WOpyg==",
"requires": {
- "boom": "2.x.x",
- "cryptiles": "2.x.x",
- "hoek": "2.x.x",
- "sntp": "1.x.x"
+ "@hapi/boom": "9.x.x",
+ "@hapi/bounce": "2.x.x",
+ "@hapi/bourne": "2.x.x",
+ "@hapi/cryptiles": "5.x.x",
+ "@hapi/hoek": "9.x.x",
+ "@hapi/iron": "6.x.x",
+ "@hapi/joi": "17.x.x"
}
},
- "hoek": {
- "version": "2.16.3",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
- "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
+ "@hapi/subtext": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/@hapi/subtext/-/subtext-7.0.3.tgz",
+ "integrity": "sha512-CekDizZkDGERJ01C0+TzHlKtqdXZxzSWTOaH6THBrbOHnsr3GY+yiMZC+AfNCypfE17RaIakGIAbpL2Tk1z2+A==",
+ "requires": {
+ "@hapi/boom": "9.x.x",
+ "@hapi/bourne": "2.x.x",
+ "@hapi/content": "^5.0.2",
+ "@hapi/file": "2.x.x",
+ "@hapi/hoek": "9.x.x",
+ "@hapi/pez": "^5.0.1",
+ "@hapi/wreck": "17.x.x"
+ }
},
- "htmlparser2": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
- "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
- "requires": {
- "domelementtype": "1",
- "domhandler": "2.3",
- "domutils": "1.5",
- "entities": "1.0",
- "readable-stream": "1.1"
- },
- "dependencies": {
- "domutils": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
- "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
- "requires": {
- "dom-serializer": "0",
- "domelementtype": "1"
- }
- },
- "entities": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
- "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY="
- }
- }
- },
- "http-signature": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-0.11.0.tgz",
- "integrity": "sha1-F5bPZ6ABrVzWhJ3KCZFIXwkIn+Y=",
- "requires": {
- "asn1": "0.1.11",
- "assert-plus": "^0.1.5",
- "ctype": "0.5.3"
+ "@hapi/teamwork": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-4.0.0.tgz",
+ "integrity": "sha512-V6xYOrr5aFv/IJqNPneaYCu8vuGTKisamqHVRS3JJnbZr18TrpXdsJOYk9pjPhFti+M2YETPebQLUr820N5NoQ=="
+ },
+ "@hapi/topo": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.0.0.tgz",
+ "integrity": "sha512-tFJlT47db0kMqVm3H4nQYgn6Pwg10GTZHb1pwmSiv1K4ks6drQOtfEF5ZnPjkvC+y4/bUPHK+bc87QvLcL+WMw==",
+ "requires": {
+ "@hapi/hoek": "^9.0.0"
}
},
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ "@hapi/vise": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/vise/-/vise-4.0.0.tgz",
+ "integrity": "sha512-eYyLkuUiFZTer59h+SGy7hUm+qE9p+UemePTHLlIWppEd+wExn3Df5jO04bFQTm7nleF5V8CtuYQYb+VFpZ6Sg==",
+ "requires": {
+ "@hapi/hoek": "9.x.x"
+ }
+ },
+ "@hapi/wreck": {
+ "version": "17.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/wreck/-/wreck-17.0.0.tgz",
+ "integrity": "sha512-d8lqCinbKyDByn7GzJDRDbitddhIEydNm44UcAMejfhEH3o4IYvKYq6K8cAqXbilXPuvZc0ErlUOg9SDdgRtMw==",
+ "requires": {
+ "@hapi/boom": "9.x.x",
+ "@hapi/bourne": "2.x.x",
+ "@hapi/hoek": "9.x.x"
+ }
},
- "ip-regex": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
- "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk="
+ "@types/node": {
+ "version": "13.13.0",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.0.tgz",
+ "integrity": "sha512-WE4IOAC6r/yBZss1oQGM5zs2D7RuKR6Q+w+X2SouPofnWn+LbCqClRyhO3ZE7Ix8nmFgo/oVuuE01cJT2XB13A=="
},
- "is-my-ip-valid": {
+ "boolbase": {
"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=="
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
+ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
},
- "is-my-json-valid": {
- "version": "2.20.0",
- "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz",
- "integrity": "sha512-XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA==",
+ "cheerio": {
+ "version": "1.0.0-rc.3",
+ "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz",
+ "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==",
"requires": {
- "generate-function": "^2.0.0",
- "generate-object-property": "^1.1.0",
- "is-my-ip-valid": "^1.0.0",
- "jsonpointer": "^4.0.0",
- "xtend": "^4.0.0"
+ "css-select": "~1.2.0",
+ "dom-serializer": "~0.1.1",
+ "entities": "~1.1.1",
+ "htmlparser2": "^3.9.1",
+ "lodash": "^4.15.0",
+ "parse5": "^3.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="
+ "css-select": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
+ "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
+ "requires": {
+ "boolbase": "~1.0.0",
+ "css-what": "2.1",
+ "domutils": "1.5.1",
+ "nth-check": "~1.0.1"
+ }
+ },
+ "css-what": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
+ "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg=="
},
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
+ "dom-serializer": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
+ "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
+ "requires": {
+ "domelementtype": "^1.3.0",
+ "entities": "^1.1.1"
+ }
},
- "isstream": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
- "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
+ "domelementtype": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
+ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
},
- "json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
+ "domhandler": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
+ "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
+ "requires": {
+ "domelementtype": "1"
+ }
},
- "jsonpointer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
- "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk="
+ "domutils": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
+ "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
+ "requires": {
+ "dom-serializer": "0",
+ "domelementtype": "1"
+ }
},
- "lodash": {
+ "entities": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
+ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
+ },
+ "htmlparser2": {
"version": "3.10.1",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
- "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y="
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
+ "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
+ "requires": {
+ "domelementtype": "^1.3.1",
+ "domhandler": "^2.3.0",
+ "domutils": "^1.5.1",
+ "entities": "^1.1.1",
+ "inherits": "^2.0.1",
+ "readable-stream": "^3.1.1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "lodash": {
+ "version": "4.17.15",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
+ "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
},
"mime-db": {
"version": "1.40.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz",
"integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA=="
},
- "mime-types": {
- "version": "2.1.24",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz",
- "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==",
- "requires": {
- "mime-db": "1.40.0"
- }
- },
- "neon": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/neon/-/neon-2.0.0.tgz",
- "integrity": "sha1-63AJLFf7A+IgHDaCrtW1SrntExY="
- },
- "node-uuid": {
- "version": "1.4.8",
- "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
- "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc="
+ "node-fetch": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz",
+ "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA=="
},
"nth-check": {
"version": "1.0.2",
"boolbase": "~1.0.0"
}
},
- "oauth-sign": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
- "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
- },
- "process-nextick-args": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
- "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
- },
- "psl": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.2.0.tgz",
- "integrity": "sha512-GEn74ZffufCmkDDLNcl3uuyF/aSD6exEyh1v/ZSdAomB82t6G9hzJVRx0jBmLDW+VfZqks3aScmMw9DszwUalA=="
- },
- "punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
- },
- "qs": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-4.0.0.tgz",
- "integrity": "sha1-wx2bdOwn33XlQ6hseHKO2NRiNgc="
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "request": {
- "version": "2.61.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.61.0.tgz",
- "integrity": "sha1-aXPLKslIhfAmk/VU7sZEgdYBP58=",
- "requires": {
- "aws-sign2": "~0.5.0",
- "bl": "~1.0.0",
- "caseless": "~0.11.0",
- "combined-stream": "~1.0.1",
- "extend": "~3.0.0",
- "forever-agent": "~0.6.0",
- "form-data": "~1.0.0-rc1",
- "har-validator": "^1.6.1",
- "hawk": "~3.1.0",
- "http-signature": "~0.11.0",
- "isstream": "~0.1.1",
- "json-stringify-safe": "~5.0.0",
- "mime-types": "~2.1.2",
- "node-uuid": "~1.4.0",
- "oauth-sign": "~0.8.0",
- "qs": "~4.0.0",
- "stringstream": "~0.0.4",
- "tough-cookie": ">=0.12.0",
- "tunnel-agent": "~0.4.0"
- }
- },
- "sntp": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
- "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
- "requires": {
- "hoek": "2.x.x"
+ "parse5": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
+ "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==",
+ "requires": {
+ "@types/node": "*"
}
},
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
- },
- "stringstream": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz",
- "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA=="
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "readable-stream": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
"requires": {
- "ansi-regex": "^2.0.0"
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
}
},
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
+ "safe-buffer": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
+ "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="
},
- "tough-cookie": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz",
- "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==",
+ "string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
"requires": {
- "ip-regex": "^2.1.0",
- "psl": "^1.1.28",
- "punycode": "^2.1.1"
+ "safe-buffer": "~5.2.0"
}
},
- "tunnel-agent": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
- "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us="
- },
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
- },
- "xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
}
}
}