├── .babelrc
├── .gitignore
├── .prettierrc
├── LICENSE
├── Procfile
├── README.md
├── dist
├── app.js
├── index.js
└── searchBooks.js
├── package-lock.json
├── package.json
└── src
├── index.js
└── searchBooks.js
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["@babel/preset-env"],
3 | "plugins": [
4 | [
5 | "@babel/plugin-transform-runtime",
6 | {
7 | "regenerator": true
8 | }
9 | ]
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | .env
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Dmytro Barylo
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Procfile:
--------------------------------------------------------------------------------
1 | worker: node dist/index.js
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # BooksAndBot
2 |
3 | [@BooksAndBot](https://telegram.me/BooksAndBot) is an inline bot that allows you to search for books and share them in a conversation.
4 |
5 | Powered by [Goodreads](https://www.goodreads.com/).
6 |
7 | ## Demo
8 |
9 | 
10 |
11 | ## Development
12 |
13 | 1. You'll need a few things:
14 |
15 | - A Telegram bot token. Contact [@BotFather](http://telegram.me/BotFather) in order to create a new bot and receive a token.
16 | - A Goodreads API key. Apply for one [here](https://www.goodreads.com/api).
17 |
18 | 2. Create `.env` file in the root directory with following variables:
19 |
20 | ```shell
21 | BOT_TOKEN=YOUR_TELEGRAM_BOT_TOKEN
22 | GOODREADS_API_KEY=YOUR_GOODREADS_API_KEY
23 | ```
24 |
25 | 3. Install dependencies and start the app:
26 |
27 | ```shell
28 | npm i
29 | npm start
30 | ```
31 |
--------------------------------------------------------------------------------
/dist/app.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4 |
5 | var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6 |
7 | var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8 |
9 | require("dotenv/config");
10 |
11 | var _telegraf = _interopRequireDefault(require("telegraf"));
12 |
13 | var _searchBooks = _interopRequireDefault(require("./searchBooks"));
14 |
15 | var createMessageText = function createMessageText(book) {
16 | return "\n".concat(book.title, "\n").concat(book.author, "\n");
17 | };
18 |
19 | var bot = new _telegraf["default"](process.env.BOT_TOKEN);
20 | bot.on("inline_query",
21 | /*#__PURE__*/
22 | function () {
23 | var _ref = (0, _asyncToGenerator2["default"])(
24 | /*#__PURE__*/
25 | _regenerator["default"].mark(function _callee(ctx) {
26 | var searchResults, results;
27 | return _regenerator["default"].wrap(function _callee$(_context) {
28 | while (1) {
29 | switch (_context.prev = _context.next) {
30 | case 0:
31 | _context.next = 2;
32 | return (0, _searchBooks["default"])(ctx.inlineQuery.query);
33 |
34 | case 2:
35 | searchResults = _context.sent;
36 | results = searchResults && searchResults.length ? searchResults.map(function (book, id) {
37 | return {
38 | id: id,
39 | type: "article",
40 | title: book.title,
41 | description: book.author,
42 | thumb_url: book.thumb_url,
43 | input_message_content: {
44 | message_text: createMessageText(book),
45 | parse_mode: "HTML"
46 | },
47 | reply_markup: {
48 | inline_keyboard: [[{
49 | text: "Show on Goodreads",
50 | url: book.url
51 | }]]
52 | }
53 | };
54 | }) : [];
55 | ctx.answerInlineQuery(results);
56 |
57 | case 5:
58 | case "end":
59 | return _context.stop();
60 | }
61 | }
62 | }, _callee);
63 | }));
64 |
65 | return function (_x) {
66 | return _ref.apply(this, arguments);
67 | };
68 | }());
69 | bot.launch();
--------------------------------------------------------------------------------
/dist/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4 |
5 | var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6 |
7 | require("dotenv/config");
8 |
9 | var _telegraf = _interopRequireDefault(require("telegraf"));
10 |
11 | var _searchBooks = _interopRequireDefault(require("./searchBooks"));
12 |
13 | var BOT_TOKEN = process.env.BOT_TOKEN || "";
14 | var PORT = process.env.PORT || 3000;
15 | var URL = process.env.URL || "https://books-and-bot.herokuapp.com/";
16 |
17 | var createMessageText = function createMessageText(book) {
18 | return "\n".concat(book.title, "\n").concat(book.author, "\n");
19 | };
20 |
21 | var bot = new _telegraf["default"](BOT_TOKEN);
22 | bot.on("inline_query", function _callee(ctx) {
23 | var searchResults, results;
24 | return _regenerator["default"].async(function _callee$(_context) {
25 | while (1) {
26 | switch (_context.prev = _context.next) {
27 | case 0:
28 | _context.next = 2;
29 | return _regenerator["default"].awrap((0, _searchBooks["default"])(ctx.inlineQuery.query));
30 |
31 | case 2:
32 | searchResults = _context.sent;
33 | results = searchResults && searchResults.length ? searchResults.map(function (book, id) {
34 | return {
35 | id: id,
36 | type: "article",
37 | title: book.title,
38 | description: book.author,
39 | thumb_url: book.thumb_url,
40 | input_message_content: {
41 | message_text: createMessageText(book),
42 | parse_mode: "HTML"
43 | },
44 | reply_markup: {
45 | inline_keyboard: [[{
46 | text: "Show on Goodreads",
47 | url: book.url
48 | }]]
49 | }
50 | };
51 | }) : [];
52 | ctx.answerInlineQuery(results);
53 |
54 | case 5:
55 | case "end":
56 | return _context.stop();
57 | }
58 | }
59 | });
60 | });
61 | bot.telegram.setWebhook("".concat(URL, "/bot").concat(BOT_TOKEN));
62 | bot.startWebhook("/bot".concat(BOT_TOKEN), null, PORT);
63 | bot.launch();
--------------------------------------------------------------------------------
/dist/searchBooks.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4 |
5 | Object.defineProperty(exports, "__esModule", {
6 | value: true
7 | });
8 | exports["default"] = void 0;
9 |
10 | var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11 |
12 | require("dotenv/config");
13 |
14 | var _nodeFetch = _interopRequireDefault(require("node-fetch"));
15 |
16 | var _querystring = _interopRequireDefault(require("querystring"));
17 |
18 | var _xml2jsEs6Promise = _interopRequireDefault(require("xml2js-es6-promise"));
19 |
20 | var _callee = function _callee(query) {
21 | var data, url, response, text, js;
22 | return _regenerator["default"].async(function _callee$(_context) {
23 | while (1) {
24 | switch (_context.prev = _context.next) {
25 | case 0:
26 | if (query) {
27 | _context.next = 2;
28 | break;
29 | }
30 |
31 | return _context.abrupt("return", null);
32 |
33 | case 2:
34 | query = _querystring["default"].escape(query);
35 | data = null;
36 | url = "https://www.goodreads.com/search/index.xml?key=".concat(process.env.GOODREADS_API_KEY, "&q=").concat(query, "&field=title");
37 | _context.prev = 5;
38 | _context.next = 8;
39 | return _regenerator["default"].awrap((0, _nodeFetch["default"])(url));
40 |
41 | case 8:
42 | response = _context.sent;
43 | _context.next = 11;
44 | return _regenerator["default"].awrap(response.text());
45 |
46 | case 11:
47 | text = _context.sent;
48 | _context.next = 14;
49 | return _regenerator["default"].awrap((0, _xml2jsEs6Promise["default"])(text));
50 |
51 | case 14:
52 | js = _context.sent;
53 | if (js.GoodreadsResponse) data = js.GoodreadsResponse.search[0].results[0].work.map(function (result) {
54 | var book = result.best_book[0];
55 | var title = book.title[0];
56 | var author = "by ".concat(book.author.map(function (a) {
57 | return a.name;
58 | }).join(", "));
59 | var url = "https://www.goodreads.com/book/show/".concat(book.id[0]._);
60 | var thumb_url = book.image_url[0];
61 | var cover_url = null; // Using dirty and unstable way to get a book cover :(
62 |
63 | if (thumb_url.indexOf("._SX") !== -1) {
64 | var n = thumb_url.lastIndexOf("._SX");
65 | cover_url = "".concat(thumb_url.slice(0, n), "._SY400_.jpg");
66 | } else if (thumb_url.indexOf("._SY") !== -1) {
67 | var _n = thumb_url.lastIndexOf("._SY");
68 |
69 | cover_url = "".concat(thumb_url.slice(0, _n), "._SY400_.jpg");
70 | } else {
71 | cover_url = thumb_url;
72 | }
73 |
74 | return {
75 | title: title,
76 | author: author,
77 | url: url,
78 | thumb_url: thumb_url,
79 | cover_url: cover_url
80 | };
81 | });
82 | _context.next = 21;
83 | break;
84 |
85 | case 18:
86 | _context.prev = 18;
87 | _context.t0 = _context["catch"](5);
88 | console.log(_context.t0);
89 |
90 | case 21:
91 | return _context.abrupt("return", data);
92 |
93 | case 22:
94 | case "end":
95 | return _context.stop();
96 | }
97 | }
98 | }, null, null, [[5, 18]]);
99 | };
100 |
101 | exports["default"] = _callee;
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "books-and-bot",
3 | "version": "1.0.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@babel/cli": {
8 | "version": "7.7.4",
9 | "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.7.4.tgz",
10 | "integrity": "sha512-O7mmzaWdm+VabWQmxuM8hqNrWGGihN83KfhPUzp2lAW4kzIMwBxujXkZbD4fMwKMYY9FXTbDvXsJqU+5XHXi4A==",
11 | "dev": true,
12 | "requires": {
13 | "chokidar": "^2.1.8",
14 | "commander": "^4.0.1",
15 | "convert-source-map": "^1.1.0",
16 | "fs-readdir-recursive": "^1.1.0",
17 | "glob": "^7.0.0",
18 | "lodash": "^4.17.13",
19 | "make-dir": "^2.1.0",
20 | "slash": "^2.0.0",
21 | "source-map": "^0.5.0"
22 | }
23 | },
24 | "@babel/code-frame": {
25 | "version": "7.5.5",
26 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz",
27 | "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==",
28 | "dev": true,
29 | "requires": {
30 | "@babel/highlight": "^7.0.0"
31 | }
32 | },
33 | "@babel/core": {
34 | "version": "7.7.4",
35 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.4.tgz",
36 | "integrity": "sha512-+bYbx56j4nYBmpsWtnPUsKW3NdnYxbqyfrP2w9wILBuHzdfIKz9prieZK0DFPyIzkjYVUe4QkusGL07r5pXznQ==",
37 | "dev": true,
38 | "requires": {
39 | "@babel/code-frame": "^7.5.5",
40 | "@babel/generator": "^7.7.4",
41 | "@babel/helpers": "^7.7.4",
42 | "@babel/parser": "^7.7.4",
43 | "@babel/template": "^7.7.4",
44 | "@babel/traverse": "^7.7.4",
45 | "@babel/types": "^7.7.4",
46 | "convert-source-map": "^1.7.0",
47 | "debug": "^4.1.0",
48 | "json5": "^2.1.0",
49 | "lodash": "^4.17.13",
50 | "resolve": "^1.3.2",
51 | "semver": "^5.4.1",
52 | "source-map": "^0.5.0"
53 | },
54 | "dependencies": {
55 | "debug": {
56 | "version": "4.1.1",
57 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
58 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
59 | "dev": true,
60 | "requires": {
61 | "ms": "^2.1.1"
62 | }
63 | },
64 | "ms": {
65 | "version": "2.1.2",
66 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
67 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
68 | "dev": true
69 | }
70 | }
71 | },
72 | "@babel/generator": {
73 | "version": "7.7.4",
74 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.4.tgz",
75 | "integrity": "sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg==",
76 | "dev": true,
77 | "requires": {
78 | "@babel/types": "^7.7.4",
79 | "jsesc": "^2.5.1",
80 | "lodash": "^4.17.13",
81 | "source-map": "^0.5.0"
82 | }
83 | },
84 | "@babel/helper-annotate-as-pure": {
85 | "version": "7.7.4",
86 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz",
87 | "integrity": "sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og==",
88 | "dev": true,
89 | "requires": {
90 | "@babel/types": "^7.7.4"
91 | }
92 | },
93 | "@babel/helper-builder-binary-assignment-operator-visitor": {
94 | "version": "7.7.4",
95 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.4.tgz",
96 | "integrity": "sha512-Biq/d/WtvfftWZ9Uf39hbPBYDUo986m5Bb4zhkeYDGUllF43D+nUe5M6Vuo6/8JDK/0YX/uBdeoQpyaNhNugZQ==",
97 | "dev": true,
98 | "requires": {
99 | "@babel/helper-explode-assignable-expression": "^7.7.4",
100 | "@babel/types": "^7.7.4"
101 | }
102 | },
103 | "@babel/helper-call-delegate": {
104 | "version": "7.7.4",
105 | "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.7.4.tgz",
106 | "integrity": "sha512-8JH9/B7J7tCYJ2PpWVpw9JhPuEVHztagNVuQAFBVFYluRMlpG7F1CgKEgGeL6KFqcsIa92ZYVj6DSc0XwmN1ZA==",
107 | "dev": true,
108 | "requires": {
109 | "@babel/helper-hoist-variables": "^7.7.4",
110 | "@babel/traverse": "^7.7.4",
111 | "@babel/types": "^7.7.4"
112 | }
113 | },
114 | "@babel/helper-create-regexp-features-plugin": {
115 | "version": "7.7.4",
116 | "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz",
117 | "integrity": "sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A==",
118 | "dev": true,
119 | "requires": {
120 | "@babel/helper-regex": "^7.4.4",
121 | "regexpu-core": "^4.6.0"
122 | }
123 | },
124 | "@babel/helper-define-map": {
125 | "version": "7.7.4",
126 | "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.7.4.tgz",
127 | "integrity": "sha512-v5LorqOa0nVQUvAUTUF3KPastvUt/HzByXNamKQ6RdJRTV7j8rLL+WB5C/MzzWAwOomxDhYFb1wLLxHqox86lg==",
128 | "dev": true,
129 | "requires": {
130 | "@babel/helper-function-name": "^7.7.4",
131 | "@babel/types": "^7.7.4",
132 | "lodash": "^4.17.13"
133 | }
134 | },
135 | "@babel/helper-explode-assignable-expression": {
136 | "version": "7.7.4",
137 | "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.4.tgz",
138 | "integrity": "sha512-2/SicuFrNSXsZNBxe5UGdLr+HZg+raWBLE9vC98bdYOKX/U6PY0mdGlYUJdtTDPSU0Lw0PNbKKDpwYHJLn2jLg==",
139 | "dev": true,
140 | "requires": {
141 | "@babel/traverse": "^7.7.4",
142 | "@babel/types": "^7.7.4"
143 | }
144 | },
145 | "@babel/helper-function-name": {
146 | "version": "7.7.4",
147 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz",
148 | "integrity": "sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ==",
149 | "dev": true,
150 | "requires": {
151 | "@babel/helper-get-function-arity": "^7.7.4",
152 | "@babel/template": "^7.7.4",
153 | "@babel/types": "^7.7.4"
154 | }
155 | },
156 | "@babel/helper-get-function-arity": {
157 | "version": "7.7.4",
158 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz",
159 | "integrity": "sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA==",
160 | "dev": true,
161 | "requires": {
162 | "@babel/types": "^7.7.4"
163 | }
164 | },
165 | "@babel/helper-hoist-variables": {
166 | "version": "7.7.4",
167 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.4.tgz",
168 | "integrity": "sha512-wQC4xyvc1Jo/FnLirL6CEgPgPCa8M74tOdjWpRhQYapz5JC7u3NYU1zCVoVAGCE3EaIP9T1A3iW0WLJ+reZlpQ==",
169 | "dev": true,
170 | "requires": {
171 | "@babel/types": "^7.7.4"
172 | }
173 | },
174 | "@babel/helper-member-expression-to-functions": {
175 | "version": "7.7.4",
176 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.4.tgz",
177 | "integrity": "sha512-9KcA1X2E3OjXl/ykfMMInBK+uVdfIVakVe7W7Lg3wfXUNyS3Q1HWLFRwZIjhqiCGbslummPDnmb7vIekS0C1vw==",
178 | "dev": true,
179 | "requires": {
180 | "@babel/types": "^7.7.4"
181 | }
182 | },
183 | "@babel/helper-module-imports": {
184 | "version": "7.7.4",
185 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.4.tgz",
186 | "integrity": "sha512-dGcrX6K9l8258WFjyDLJwuVKxR4XZfU0/vTUgOQYWEnRD8mgr+p4d6fCUMq/ys0h4CCt/S5JhbvtyErjWouAUQ==",
187 | "dev": true,
188 | "requires": {
189 | "@babel/types": "^7.7.4"
190 | }
191 | },
192 | "@babel/helper-module-transforms": {
193 | "version": "7.7.4",
194 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.4.tgz",
195 | "integrity": "sha512-ehGBu4mXrhs0FxAqN8tWkzF8GSIGAiEumu4ONZ/hD9M88uHcD+Yu2ttKfOCgwzoesJOJrtQh7trI5YPbRtMmnA==",
196 | "dev": true,
197 | "requires": {
198 | "@babel/helper-module-imports": "^7.7.4",
199 | "@babel/helper-simple-access": "^7.7.4",
200 | "@babel/helper-split-export-declaration": "^7.7.4",
201 | "@babel/template": "^7.7.4",
202 | "@babel/types": "^7.7.4",
203 | "lodash": "^4.17.13"
204 | }
205 | },
206 | "@babel/helper-optimise-call-expression": {
207 | "version": "7.7.4",
208 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz",
209 | "integrity": "sha512-VB7gWZ2fDkSuqW6b1AKXkJWO5NyNI3bFL/kK79/30moK57blr6NbH8xcl2XcKCwOmJosftWunZqfO84IGq3ZZg==",
210 | "dev": true,
211 | "requires": {
212 | "@babel/types": "^7.7.4"
213 | }
214 | },
215 | "@babel/helper-plugin-utils": {
216 | "version": "7.0.0",
217 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz",
218 | "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==",
219 | "dev": true
220 | },
221 | "@babel/helper-regex": {
222 | "version": "7.5.5",
223 | "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz",
224 | "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==",
225 | "dev": true,
226 | "requires": {
227 | "lodash": "^4.17.13"
228 | }
229 | },
230 | "@babel/helper-remap-async-to-generator": {
231 | "version": "7.7.4",
232 | "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.4.tgz",
233 | "integrity": "sha512-Sk4xmtVdM9sA/jCI80f+KS+Md+ZHIpjuqmYPk1M7F/upHou5e4ReYmExAiu6PVe65BhJPZA2CY9x9k4BqE5klw==",
234 | "dev": true,
235 | "requires": {
236 | "@babel/helper-annotate-as-pure": "^7.7.4",
237 | "@babel/helper-wrap-function": "^7.7.4",
238 | "@babel/template": "^7.7.4",
239 | "@babel/traverse": "^7.7.4",
240 | "@babel/types": "^7.7.4"
241 | }
242 | },
243 | "@babel/helper-replace-supers": {
244 | "version": "7.7.4",
245 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.7.4.tgz",
246 | "integrity": "sha512-pP0tfgg9hsZWo5ZboYGuBn/bbYT/hdLPVSS4NMmiRJdwWhP0IznPwN9AE1JwyGsjSPLC364I0Qh5p+EPkGPNpg==",
247 | "dev": true,
248 | "requires": {
249 | "@babel/helper-member-expression-to-functions": "^7.7.4",
250 | "@babel/helper-optimise-call-expression": "^7.7.4",
251 | "@babel/traverse": "^7.7.4",
252 | "@babel/types": "^7.7.4"
253 | }
254 | },
255 | "@babel/helper-simple-access": {
256 | "version": "7.7.4",
257 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.4.tgz",
258 | "integrity": "sha512-zK7THeEXfan7UlWsG2A6CI/L9jVnI5+xxKZOdej39Y0YtDYKx9raHk5F2EtK9K8DHRTihYwg20ADt9S36GR78A==",
259 | "dev": true,
260 | "requires": {
261 | "@babel/template": "^7.7.4",
262 | "@babel/types": "^7.7.4"
263 | }
264 | },
265 | "@babel/helper-split-export-declaration": {
266 | "version": "7.7.4",
267 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz",
268 | "integrity": "sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug==",
269 | "dev": true,
270 | "requires": {
271 | "@babel/types": "^7.7.4"
272 | }
273 | },
274 | "@babel/helper-wrap-function": {
275 | "version": "7.7.4",
276 | "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.4.tgz",
277 | "integrity": "sha512-VsfzZt6wmsocOaVU0OokwrIytHND55yvyT4BPB9AIIgwr8+x7617hetdJTsuGwygN5RC6mxA9EJztTjuwm2ofg==",
278 | "dev": true,
279 | "requires": {
280 | "@babel/helper-function-name": "^7.7.4",
281 | "@babel/template": "^7.7.4",
282 | "@babel/traverse": "^7.7.4",
283 | "@babel/types": "^7.7.4"
284 | }
285 | },
286 | "@babel/helpers": {
287 | "version": "7.7.4",
288 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.4.tgz",
289 | "integrity": "sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg==",
290 | "dev": true,
291 | "requires": {
292 | "@babel/template": "^7.7.4",
293 | "@babel/traverse": "^7.7.4",
294 | "@babel/types": "^7.7.4"
295 | }
296 | },
297 | "@babel/highlight": {
298 | "version": "7.5.0",
299 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz",
300 | "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==",
301 | "dev": true,
302 | "requires": {
303 | "chalk": "^2.0.0",
304 | "esutils": "^2.0.2",
305 | "js-tokens": "^4.0.0"
306 | }
307 | },
308 | "@babel/node": {
309 | "version": "7.7.4",
310 | "resolved": "https://registry.npmjs.org/@babel/node/-/node-7.7.4.tgz",
311 | "integrity": "sha512-Vhhq2kK+BpsR2tW35zP8yOJZ7ONMVBwCD9fmNeRTU3MNNpcJDrrtVP5NK8ZX4nQAs0GSq6ky8noyn6MCVgL08g==",
312 | "dev": true,
313 | "requires": {
314 | "@babel/register": "^7.7.4",
315 | "commander": "^2.8.1",
316 | "core-js": "^3.2.1",
317 | "lodash": "^4.17.13",
318 | "node-environment-flags": "^1.0.5",
319 | "regenerator-runtime": "^0.13.3",
320 | "v8flags": "^3.1.1"
321 | },
322 | "dependencies": {
323 | "commander": {
324 | "version": "2.20.3",
325 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
326 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
327 | "dev": true
328 | },
329 | "core-js": {
330 | "version": "3.4.7",
331 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.4.7.tgz",
332 | "integrity": "sha512-qaPVGw30J1wQ0GR3GvoPqlGf9GZfKKF4kFC7kiHlcsPTqH3txrs9crCp3ZiMAXuSenhz89Jnl4GZs/67S5VOSg==",
333 | "dev": true
334 | }
335 | }
336 | },
337 | "@babel/parser": {
338 | "version": "7.7.4",
339 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.4.tgz",
340 | "integrity": "sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g==",
341 | "dev": true
342 | },
343 | "@babel/plugin-proposal-async-generator-functions": {
344 | "version": "7.7.4",
345 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.4.tgz",
346 | "integrity": "sha512-1ypyZvGRXriY/QP668+s8sFr2mqinhkRDMPSQLNghCQE+GAkFtp+wkHVvg2+Hdki8gwP+NFzJBJ/N1BfzCCDEw==",
347 | "dev": true,
348 | "requires": {
349 | "@babel/helper-plugin-utils": "^7.0.0",
350 | "@babel/helper-remap-async-to-generator": "^7.7.4",
351 | "@babel/plugin-syntax-async-generators": "^7.7.4"
352 | }
353 | },
354 | "@babel/plugin-proposal-dynamic-import": {
355 | "version": "7.7.4",
356 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.4.tgz",
357 | "integrity": "sha512-StH+nGAdO6qDB1l8sZ5UBV8AC3F2VW2I8Vfld73TMKyptMU9DY5YsJAS8U81+vEtxcH3Y/La0wG0btDrhpnhjQ==",
358 | "dev": true,
359 | "requires": {
360 | "@babel/helper-plugin-utils": "^7.0.0",
361 | "@babel/plugin-syntax-dynamic-import": "^7.7.4"
362 | }
363 | },
364 | "@babel/plugin-proposal-json-strings": {
365 | "version": "7.7.4",
366 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.7.4.tgz",
367 | "integrity": "sha512-wQvt3akcBTfLU/wYoqm/ws7YOAQKu8EVJEvHip/mzkNtjaclQoCCIqKXFP5/eyfnfbQCDV3OLRIK3mIVyXuZlw==",
368 | "dev": true,
369 | "requires": {
370 | "@babel/helper-plugin-utils": "^7.0.0",
371 | "@babel/plugin-syntax-json-strings": "^7.7.4"
372 | }
373 | },
374 | "@babel/plugin-proposal-object-rest-spread": {
375 | "version": "7.7.4",
376 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz",
377 | "integrity": "sha512-rnpnZR3/iWKmiQyJ3LKJpSwLDcX/nSXhdLk4Aq/tXOApIvyu7qoabrige0ylsAJffaUC51WiBu209Q0U+86OWQ==",
378 | "dev": true,
379 | "requires": {
380 | "@babel/helper-plugin-utils": "^7.0.0",
381 | "@babel/plugin-syntax-object-rest-spread": "^7.7.4"
382 | }
383 | },
384 | "@babel/plugin-proposal-optional-catch-binding": {
385 | "version": "7.7.4",
386 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.7.4.tgz",
387 | "integrity": "sha512-DyM7U2bnsQerCQ+sejcTNZh8KQEUuC3ufzdnVnSiUv/qoGJp2Z3hanKL18KDhsBT5Wj6a7CMT5mdyCNJsEaA9w==",
388 | "dev": true,
389 | "requires": {
390 | "@babel/helper-plugin-utils": "^7.0.0",
391 | "@babel/plugin-syntax-optional-catch-binding": "^7.7.4"
392 | }
393 | },
394 | "@babel/plugin-proposal-unicode-property-regex": {
395 | "version": "7.7.4",
396 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.4.tgz",
397 | "integrity": "sha512-cHgqHgYvffluZk85dJ02vloErm3Y6xtH+2noOBOJ2kXOJH3aVCDnj5eR/lVNlTnYu4hndAPJD3rTFjW3qee0PA==",
398 | "dev": true,
399 | "requires": {
400 | "@babel/helper-create-regexp-features-plugin": "^7.7.4",
401 | "@babel/helper-plugin-utils": "^7.0.0"
402 | }
403 | },
404 | "@babel/plugin-syntax-async-generators": {
405 | "version": "7.7.4",
406 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.7.4.tgz",
407 | "integrity": "sha512-Li4+EjSpBgxcsmeEF8IFcfV/+yJGxHXDirDkEoyFjumuwbmfCVHUt0HuowD/iGM7OhIRyXJH9YXxqiH6N815+g==",
408 | "dev": true,
409 | "requires": {
410 | "@babel/helper-plugin-utils": "^7.0.0"
411 | }
412 | },
413 | "@babel/plugin-syntax-dynamic-import": {
414 | "version": "7.7.4",
415 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.7.4.tgz",
416 | "integrity": "sha512-jHQW0vbRGvwQNgyVxwDh4yuXu4bH1f5/EICJLAhl1SblLs2CDhrsmCk+v5XLdE9wxtAFRyxx+P//Iw+a5L/tTg==",
417 | "dev": true,
418 | "requires": {
419 | "@babel/helper-plugin-utils": "^7.0.0"
420 | }
421 | },
422 | "@babel/plugin-syntax-json-strings": {
423 | "version": "7.7.4",
424 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.7.4.tgz",
425 | "integrity": "sha512-QpGupahTQW1mHRXddMG5srgpHWqRLwJnJZKXTigB9RPFCCGbDGCgBeM/iC82ICXp414WeYx/tD54w7M2qRqTMg==",
426 | "dev": true,
427 | "requires": {
428 | "@babel/helper-plugin-utils": "^7.0.0"
429 | }
430 | },
431 | "@babel/plugin-syntax-object-rest-spread": {
432 | "version": "7.7.4",
433 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz",
434 | "integrity": "sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg==",
435 | "dev": true,
436 | "requires": {
437 | "@babel/helper-plugin-utils": "^7.0.0"
438 | }
439 | },
440 | "@babel/plugin-syntax-optional-catch-binding": {
441 | "version": "7.7.4",
442 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.7.4.tgz",
443 | "integrity": "sha512-4ZSuzWgFxqHRE31Glu+fEr/MirNZOMYmD/0BhBWyLyOOQz/gTAl7QmWm2hX1QxEIXsr2vkdlwxIzTyiYRC4xcQ==",
444 | "dev": true,
445 | "requires": {
446 | "@babel/helper-plugin-utils": "^7.0.0"
447 | }
448 | },
449 | "@babel/plugin-syntax-top-level-await": {
450 | "version": "7.7.4",
451 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.4.tgz",
452 | "integrity": "sha512-wdsOw0MvkL1UIgiQ/IFr3ETcfv1xb8RMM0H9wbiDyLaJFyiDg5oZvDLCXosIXmFeIlweML5iOBXAkqddkYNizg==",
453 | "dev": true,
454 | "requires": {
455 | "@babel/helper-plugin-utils": "^7.0.0"
456 | }
457 | },
458 | "@babel/plugin-transform-arrow-functions": {
459 | "version": "7.7.4",
460 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.7.4.tgz",
461 | "integrity": "sha512-zUXy3e8jBNPiffmqkHRNDdZM2r8DWhCB7HhcoyZjiK1TxYEluLHAvQuYnTT+ARqRpabWqy/NHkO6e3MsYB5YfA==",
462 | "dev": true,
463 | "requires": {
464 | "@babel/helper-plugin-utils": "^7.0.0"
465 | }
466 | },
467 | "@babel/plugin-transform-async-to-generator": {
468 | "version": "7.7.4",
469 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.4.tgz",
470 | "integrity": "sha512-zpUTZphp5nHokuy8yLlyafxCJ0rSlFoSHypTUWgpdwoDXWQcseaect7cJ8Ppk6nunOM6+5rPMkod4OYKPR5MUg==",
471 | "dev": true,
472 | "requires": {
473 | "@babel/helper-module-imports": "^7.7.4",
474 | "@babel/helper-plugin-utils": "^7.0.0",
475 | "@babel/helper-remap-async-to-generator": "^7.7.4"
476 | }
477 | },
478 | "@babel/plugin-transform-block-scoped-functions": {
479 | "version": "7.7.4",
480 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.7.4.tgz",
481 | "integrity": "sha512-kqtQzwtKcpPclHYjLK//3lH8OFsCDuDJBaFhVwf8kqdnF6MN4l618UDlcA7TfRs3FayrHj+svYnSX8MC9zmUyQ==",
482 | "dev": true,
483 | "requires": {
484 | "@babel/helper-plugin-utils": "^7.0.0"
485 | }
486 | },
487 | "@babel/plugin-transform-block-scoping": {
488 | "version": "7.7.4",
489 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.7.4.tgz",
490 | "integrity": "sha512-2VBe9u0G+fDt9B5OV5DQH4KBf5DoiNkwFKOz0TCvBWvdAN2rOykCTkrL+jTLxfCAm76l9Qo5OqL7HBOx2dWggg==",
491 | "dev": true,
492 | "requires": {
493 | "@babel/helper-plugin-utils": "^7.0.0",
494 | "lodash": "^4.17.13"
495 | }
496 | },
497 | "@babel/plugin-transform-classes": {
498 | "version": "7.7.4",
499 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.4.tgz",
500 | "integrity": "sha512-sK1mjWat7K+buWRuImEzjNf68qrKcrddtpQo3swi9j7dUcG6y6R6+Di039QN2bD1dykeswlagupEmpOatFHHUg==",
501 | "dev": true,
502 | "requires": {
503 | "@babel/helper-annotate-as-pure": "^7.7.4",
504 | "@babel/helper-define-map": "^7.7.4",
505 | "@babel/helper-function-name": "^7.7.4",
506 | "@babel/helper-optimise-call-expression": "^7.7.4",
507 | "@babel/helper-plugin-utils": "^7.0.0",
508 | "@babel/helper-replace-supers": "^7.7.4",
509 | "@babel/helper-split-export-declaration": "^7.7.4",
510 | "globals": "^11.1.0"
511 | }
512 | },
513 | "@babel/plugin-transform-computed-properties": {
514 | "version": "7.7.4",
515 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.7.4.tgz",
516 | "integrity": "sha512-bSNsOsZnlpLLyQew35rl4Fma3yKWqK3ImWMSC/Nc+6nGjC9s5NFWAer1YQ899/6s9HxO2zQC1WoFNfkOqRkqRQ==",
517 | "dev": true,
518 | "requires": {
519 | "@babel/helper-plugin-utils": "^7.0.0"
520 | }
521 | },
522 | "@babel/plugin-transform-destructuring": {
523 | "version": "7.7.4",
524 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.7.4.tgz",
525 | "integrity": "sha512-4jFMXI1Cu2aXbcXXl8Lr6YubCn6Oc7k9lLsu8v61TZh+1jny2BWmdtvY9zSUlLdGUvcy9DMAWyZEOqjsbeg/wA==",
526 | "dev": true,
527 | "requires": {
528 | "@babel/helper-plugin-utils": "^7.0.0"
529 | }
530 | },
531 | "@babel/plugin-transform-dotall-regex": {
532 | "version": "7.7.4",
533 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz",
534 | "integrity": "sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw==",
535 | "dev": true,
536 | "requires": {
537 | "@babel/helper-create-regexp-features-plugin": "^7.7.4",
538 | "@babel/helper-plugin-utils": "^7.0.0"
539 | }
540 | },
541 | "@babel/plugin-transform-duplicate-keys": {
542 | "version": "7.7.4",
543 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.7.4.tgz",
544 | "integrity": "sha512-g1y4/G6xGWMD85Tlft5XedGaZBCIVN+/P0bs6eabmcPP9egFleMAo65OOjlhcz1njpwagyY3t0nsQC9oTFegJA==",
545 | "dev": true,
546 | "requires": {
547 | "@babel/helper-plugin-utils": "^7.0.0"
548 | }
549 | },
550 | "@babel/plugin-transform-exponentiation-operator": {
551 | "version": "7.7.4",
552 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.7.4.tgz",
553 | "integrity": "sha512-MCqiLfCKm6KEA1dglf6Uqq1ElDIZwFuzz1WH5mTf8k2uQSxEJMbOIEh7IZv7uichr7PMfi5YVSrr1vz+ipp7AQ==",
554 | "dev": true,
555 | "requires": {
556 | "@babel/helper-builder-binary-assignment-operator-visitor": "^7.7.4",
557 | "@babel/helper-plugin-utils": "^7.0.0"
558 | }
559 | },
560 | "@babel/plugin-transform-for-of": {
561 | "version": "7.7.4",
562 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.7.4.tgz",
563 | "integrity": "sha512-zZ1fD1B8keYtEcKF+M1TROfeHTKnijcVQm0yO/Yu1f7qoDoxEIc/+GX6Go430Bg84eM/xwPFp0+h4EbZg7epAA==",
564 | "dev": true,
565 | "requires": {
566 | "@babel/helper-plugin-utils": "^7.0.0"
567 | }
568 | },
569 | "@babel/plugin-transform-function-name": {
570 | "version": "7.7.4",
571 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.4.tgz",
572 | "integrity": "sha512-E/x09TvjHNhsULs2IusN+aJNRV5zKwxu1cpirZyRPw+FyyIKEHPXTsadj48bVpc1R5Qq1B5ZkzumuFLytnbT6g==",
573 | "dev": true,
574 | "requires": {
575 | "@babel/helper-function-name": "^7.7.4",
576 | "@babel/helper-plugin-utils": "^7.0.0"
577 | }
578 | },
579 | "@babel/plugin-transform-literals": {
580 | "version": "7.7.4",
581 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.7.4.tgz",
582 | "integrity": "sha512-X2MSV7LfJFm4aZfxd0yLVFrEXAgPqYoDG53Br/tCKiKYfX0MjVjQeWPIhPHHsCqzwQANq+FLN786fF5rgLS+gw==",
583 | "dev": true,
584 | "requires": {
585 | "@babel/helper-plugin-utils": "^7.0.0"
586 | }
587 | },
588 | "@babel/plugin-transform-member-expression-literals": {
589 | "version": "7.7.4",
590 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.7.4.tgz",
591 | "integrity": "sha512-9VMwMO7i69LHTesL0RdGy93JU6a+qOPuvB4F4d0kR0zyVjJRVJRaoaGjhtki6SzQUu8yen/vxPKN6CWnCUw6bA==",
592 | "dev": true,
593 | "requires": {
594 | "@babel/helper-plugin-utils": "^7.0.0"
595 | }
596 | },
597 | "@babel/plugin-transform-modules-amd": {
598 | "version": "7.7.4",
599 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.4.tgz",
600 | "integrity": "sha512-/542/5LNA18YDtg1F+QHvvUSlxdvjZoD/aldQwkq+E3WCkbEjNSN9zdrOXaSlfg3IfGi22ijzecklF/A7kVZFQ==",
601 | "dev": true,
602 | "requires": {
603 | "@babel/helper-module-transforms": "^7.7.4",
604 | "@babel/helper-plugin-utils": "^7.0.0",
605 | "babel-plugin-dynamic-import-node": "^2.3.0"
606 | }
607 | },
608 | "@babel/plugin-transform-modules-commonjs": {
609 | "version": "7.7.4",
610 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz",
611 | "integrity": "sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA==",
612 | "dev": true,
613 | "requires": {
614 | "@babel/helper-module-transforms": "^7.7.4",
615 | "@babel/helper-plugin-utils": "^7.0.0",
616 | "@babel/helper-simple-access": "^7.7.4",
617 | "babel-plugin-dynamic-import-node": "^2.3.0"
618 | }
619 | },
620 | "@babel/plugin-transform-modules-systemjs": {
621 | "version": "7.7.4",
622 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.4.tgz",
623 | "integrity": "sha512-y2c96hmcsUi6LrMqvmNDPBBiGCiQu0aYqpHatVVu6kD4mFEXKjyNxd/drc18XXAf9dv7UXjrZwBVmTTGaGP8iw==",
624 | "dev": true,
625 | "requires": {
626 | "@babel/helper-hoist-variables": "^7.7.4",
627 | "@babel/helper-plugin-utils": "^7.0.0",
628 | "babel-plugin-dynamic-import-node": "^2.3.0"
629 | }
630 | },
631 | "@babel/plugin-transform-modules-umd": {
632 | "version": "7.7.4",
633 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.4.tgz",
634 | "integrity": "sha512-u2B8TIi0qZI4j8q4C51ktfO7E3cQ0qnaXFI1/OXITordD40tt17g/sXqgNNCcMTcBFKrUPcGDx+TBJuZxLx7tw==",
635 | "dev": true,
636 | "requires": {
637 | "@babel/helper-module-transforms": "^7.7.4",
638 | "@babel/helper-plugin-utils": "^7.0.0"
639 | }
640 | },
641 | "@babel/plugin-transform-named-capturing-groups-regex": {
642 | "version": "7.7.4",
643 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.4.tgz",
644 | "integrity": "sha512-jBUkiqLKvUWpv9GLSuHUFYdmHg0ujC1JEYoZUfeOOfNydZXp1sXObgyPatpcwjWgsdBGsagWW0cdJpX/DO2jMw==",
645 | "dev": true,
646 | "requires": {
647 | "@babel/helper-create-regexp-features-plugin": "^7.7.4"
648 | }
649 | },
650 | "@babel/plugin-transform-new-target": {
651 | "version": "7.7.4",
652 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.7.4.tgz",
653 | "integrity": "sha512-CnPRiNtOG1vRodnsyGX37bHQleHE14B9dnnlgSeEs3ek3fHN1A1SScglTCg1sfbe7sRQ2BUcpgpTpWSfMKz3gg==",
654 | "dev": true,
655 | "requires": {
656 | "@babel/helper-plugin-utils": "^7.0.0"
657 | }
658 | },
659 | "@babel/plugin-transform-object-super": {
660 | "version": "7.7.4",
661 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.7.4.tgz",
662 | "integrity": "sha512-ho+dAEhC2aRnff2JCA0SAK7V2R62zJd/7dmtoe7MHcso4C2mS+vZjn1Pb1pCVZvJs1mgsvv5+7sT+m3Bysb6eg==",
663 | "dev": true,
664 | "requires": {
665 | "@babel/helper-plugin-utils": "^7.0.0",
666 | "@babel/helper-replace-supers": "^7.7.4"
667 | }
668 | },
669 | "@babel/plugin-transform-parameters": {
670 | "version": "7.7.4",
671 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.7.4.tgz",
672 | "integrity": "sha512-VJwhVePWPa0DqE9vcfptaJSzNDKrWU/4FbYCjZERtmqEs05g3UMXnYMZoXja7JAJ7Y7sPZipwm/pGApZt7wHlw==",
673 | "dev": true,
674 | "requires": {
675 | "@babel/helper-call-delegate": "^7.7.4",
676 | "@babel/helper-get-function-arity": "^7.7.4",
677 | "@babel/helper-plugin-utils": "^7.0.0"
678 | }
679 | },
680 | "@babel/plugin-transform-property-literals": {
681 | "version": "7.7.4",
682 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.7.4.tgz",
683 | "integrity": "sha512-MatJhlC4iHsIskWYyawl53KuHrt+kALSADLQQ/HkhTjX954fkxIEh4q5slL4oRAnsm/eDoZ4q0CIZpcqBuxhJQ==",
684 | "dev": true,
685 | "requires": {
686 | "@babel/helper-plugin-utils": "^7.0.0"
687 | }
688 | },
689 | "@babel/plugin-transform-regenerator": {
690 | "version": "7.7.4",
691 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.4.tgz",
692 | "integrity": "sha512-e7MWl5UJvmPEwFJTwkBlPmqixCtr9yAASBqff4ggXTNicZiwbF8Eefzm6NVgfiBp7JdAGItecnctKTgH44q2Jw==",
693 | "dev": true,
694 | "requires": {
695 | "regenerator-transform": "^0.14.0"
696 | }
697 | },
698 | "@babel/plugin-transform-reserved-words": {
699 | "version": "7.7.4",
700 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.7.4.tgz",
701 | "integrity": "sha512-OrPiUB5s5XvkCO1lS7D8ZtHcswIC57j62acAnJZKqGGnHP+TIc/ljQSrgdX/QyOTdEK5COAhuc820Hi1q2UgLQ==",
702 | "dev": true,
703 | "requires": {
704 | "@babel/helper-plugin-utils": "^7.0.0"
705 | }
706 | },
707 | "@babel/plugin-transform-runtime": {
708 | "version": "7.7.4",
709 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.7.4.tgz",
710 | "integrity": "sha512-O8kSkS5fP74Ad/8pfsCMGa8sBRdLxYoSReaARRNSz3FbFQj3z/QUvoUmJ28gn9BO93YfnXc3j+Xyaqe8cKDNBQ==",
711 | "dev": true,
712 | "requires": {
713 | "@babel/helper-module-imports": "^7.7.4",
714 | "@babel/helper-plugin-utils": "^7.0.0",
715 | "resolve": "^1.8.1",
716 | "semver": "^5.5.1"
717 | }
718 | },
719 | "@babel/plugin-transform-shorthand-properties": {
720 | "version": "7.7.4",
721 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.7.4.tgz",
722 | "integrity": "sha512-q+suddWRfIcnyG5YiDP58sT65AJDZSUhXQDZE3r04AuqD6d/XLaQPPXSBzP2zGerkgBivqtQm9XKGLuHqBID6Q==",
723 | "dev": true,
724 | "requires": {
725 | "@babel/helper-plugin-utils": "^7.0.0"
726 | }
727 | },
728 | "@babel/plugin-transform-spread": {
729 | "version": "7.7.4",
730 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.7.4.tgz",
731 | "integrity": "sha512-8OSs0FLe5/80cndziPlg4R0K6HcWSM0zyNhHhLsmw/Nc5MaA49cAsnoJ/t/YZf8qkG7fD+UjTRaApVDB526d7Q==",
732 | "dev": true,
733 | "requires": {
734 | "@babel/helper-plugin-utils": "^7.0.0"
735 | }
736 | },
737 | "@babel/plugin-transform-sticky-regex": {
738 | "version": "7.7.4",
739 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.7.4.tgz",
740 | "integrity": "sha512-Ls2NASyL6qtVe1H1hXts9yuEeONV2TJZmplLONkMPUG158CtmnrzW5Q5teibM5UVOFjG0D3IC5mzXR6pPpUY7A==",
741 | "dev": true,
742 | "requires": {
743 | "@babel/helper-plugin-utils": "^7.0.0",
744 | "@babel/helper-regex": "^7.0.0"
745 | }
746 | },
747 | "@babel/plugin-transform-template-literals": {
748 | "version": "7.7.4",
749 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.7.4.tgz",
750 | "integrity": "sha512-sA+KxLwF3QwGj5abMHkHgshp9+rRz+oY9uoRil4CyLtgEuE/88dpkeWgNk5qKVsJE9iSfly3nvHapdRiIS2wnQ==",
751 | "dev": true,
752 | "requires": {
753 | "@babel/helper-annotate-as-pure": "^7.7.4",
754 | "@babel/helper-plugin-utils": "^7.0.0"
755 | }
756 | },
757 | "@babel/plugin-transform-typeof-symbol": {
758 | "version": "7.7.4",
759 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.7.4.tgz",
760 | "integrity": "sha512-KQPUQ/7mqe2m0B8VecdyaW5XcQYaePyl9R7IsKd+irzj6jvbhoGnRE+M0aNkyAzI07VfUQ9266L5xMARitV3wg==",
761 | "dev": true,
762 | "requires": {
763 | "@babel/helper-plugin-utils": "^7.0.0"
764 | }
765 | },
766 | "@babel/plugin-transform-unicode-regex": {
767 | "version": "7.7.4",
768 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.4.tgz",
769 | "integrity": "sha512-N77UUIV+WCvE+5yHw+oks3m18/umd7y392Zv7mYTpFqHtkpcc+QUz+gLJNTWVlWROIWeLqY0f3OjZxV5TcXnRw==",
770 | "dev": true,
771 | "requires": {
772 | "@babel/helper-create-regexp-features-plugin": "^7.7.4",
773 | "@babel/helper-plugin-utils": "^7.0.0"
774 | }
775 | },
776 | "@babel/preset-env": {
777 | "version": "7.7.4",
778 | "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.7.4.tgz",
779 | "integrity": "sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g==",
780 | "dev": true,
781 | "requires": {
782 | "@babel/helper-module-imports": "^7.7.4",
783 | "@babel/helper-plugin-utils": "^7.0.0",
784 | "@babel/plugin-proposal-async-generator-functions": "^7.7.4",
785 | "@babel/plugin-proposal-dynamic-import": "^7.7.4",
786 | "@babel/plugin-proposal-json-strings": "^7.7.4",
787 | "@babel/plugin-proposal-object-rest-spread": "^7.7.4",
788 | "@babel/plugin-proposal-optional-catch-binding": "^7.7.4",
789 | "@babel/plugin-proposal-unicode-property-regex": "^7.7.4",
790 | "@babel/plugin-syntax-async-generators": "^7.7.4",
791 | "@babel/plugin-syntax-dynamic-import": "^7.7.4",
792 | "@babel/plugin-syntax-json-strings": "^7.7.4",
793 | "@babel/plugin-syntax-object-rest-spread": "^7.7.4",
794 | "@babel/plugin-syntax-optional-catch-binding": "^7.7.4",
795 | "@babel/plugin-syntax-top-level-await": "^7.7.4",
796 | "@babel/plugin-transform-arrow-functions": "^7.7.4",
797 | "@babel/plugin-transform-async-to-generator": "^7.7.4",
798 | "@babel/plugin-transform-block-scoped-functions": "^7.7.4",
799 | "@babel/plugin-transform-block-scoping": "^7.7.4",
800 | "@babel/plugin-transform-classes": "^7.7.4",
801 | "@babel/plugin-transform-computed-properties": "^7.7.4",
802 | "@babel/plugin-transform-destructuring": "^7.7.4",
803 | "@babel/plugin-transform-dotall-regex": "^7.7.4",
804 | "@babel/plugin-transform-duplicate-keys": "^7.7.4",
805 | "@babel/plugin-transform-exponentiation-operator": "^7.7.4",
806 | "@babel/plugin-transform-for-of": "^7.7.4",
807 | "@babel/plugin-transform-function-name": "^7.7.4",
808 | "@babel/plugin-transform-literals": "^7.7.4",
809 | "@babel/plugin-transform-member-expression-literals": "^7.7.4",
810 | "@babel/plugin-transform-modules-amd": "^7.7.4",
811 | "@babel/plugin-transform-modules-commonjs": "^7.7.4",
812 | "@babel/plugin-transform-modules-systemjs": "^7.7.4",
813 | "@babel/plugin-transform-modules-umd": "^7.7.4",
814 | "@babel/plugin-transform-named-capturing-groups-regex": "^7.7.4",
815 | "@babel/plugin-transform-new-target": "^7.7.4",
816 | "@babel/plugin-transform-object-super": "^7.7.4",
817 | "@babel/plugin-transform-parameters": "^7.7.4",
818 | "@babel/plugin-transform-property-literals": "^7.7.4",
819 | "@babel/plugin-transform-regenerator": "^7.7.4",
820 | "@babel/plugin-transform-reserved-words": "^7.7.4",
821 | "@babel/plugin-transform-shorthand-properties": "^7.7.4",
822 | "@babel/plugin-transform-spread": "^7.7.4",
823 | "@babel/plugin-transform-sticky-regex": "^7.7.4",
824 | "@babel/plugin-transform-template-literals": "^7.7.4",
825 | "@babel/plugin-transform-typeof-symbol": "^7.7.4",
826 | "@babel/plugin-transform-unicode-regex": "^7.7.4",
827 | "@babel/types": "^7.7.4",
828 | "browserslist": "^4.6.0",
829 | "core-js-compat": "^3.1.1",
830 | "invariant": "^2.2.2",
831 | "js-levenshtein": "^1.1.3",
832 | "semver": "^5.5.0"
833 | }
834 | },
835 | "@babel/register": {
836 | "version": "7.7.4",
837 | "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.7.4.tgz",
838 | "integrity": "sha512-/fmONZqL6ZMl9KJUYajetCrID6m0xmL4odX7v+Xvoxcv0DdbP/oO0TWIeLUCHqczQ6L6njDMqmqHFy2cp3FFsA==",
839 | "dev": true,
840 | "requires": {
841 | "find-cache-dir": "^2.0.0",
842 | "lodash": "^4.17.13",
843 | "make-dir": "^2.1.0",
844 | "pirates": "^4.0.0",
845 | "source-map-support": "^0.5.16"
846 | }
847 | },
848 | "@babel/runtime": {
849 | "version": "7.7.4",
850 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.7.4.tgz",
851 | "integrity": "sha512-r24eVUUr0QqNZa+qrImUk8fn5SPhHq+IfYvIoIMg0do3GdK9sMdiLKP3GYVVaxpPKORgm8KRKaNTEhAjgIpLMw==",
852 | "dev": true,
853 | "requires": {
854 | "regenerator-runtime": "^0.13.2"
855 | }
856 | },
857 | "@babel/template": {
858 | "version": "7.7.4",
859 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.4.tgz",
860 | "integrity": "sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw==",
861 | "dev": true,
862 | "requires": {
863 | "@babel/code-frame": "^7.0.0",
864 | "@babel/parser": "^7.7.4",
865 | "@babel/types": "^7.7.4"
866 | }
867 | },
868 | "@babel/traverse": {
869 | "version": "7.7.4",
870 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.4.tgz",
871 | "integrity": "sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw==",
872 | "dev": true,
873 | "requires": {
874 | "@babel/code-frame": "^7.5.5",
875 | "@babel/generator": "^7.7.4",
876 | "@babel/helper-function-name": "^7.7.4",
877 | "@babel/helper-split-export-declaration": "^7.7.4",
878 | "@babel/parser": "^7.7.4",
879 | "@babel/types": "^7.7.4",
880 | "debug": "^4.1.0",
881 | "globals": "^11.1.0",
882 | "lodash": "^4.17.13"
883 | },
884 | "dependencies": {
885 | "debug": {
886 | "version": "4.1.1",
887 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
888 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
889 | "dev": true,
890 | "requires": {
891 | "ms": "^2.1.1"
892 | }
893 | },
894 | "ms": {
895 | "version": "2.1.2",
896 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
897 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
898 | "dev": true
899 | }
900 | }
901 | },
902 | "@babel/types": {
903 | "version": "7.7.4",
904 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.4.tgz",
905 | "integrity": "sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA==",
906 | "dev": true,
907 | "requires": {
908 | "esutils": "^2.0.2",
909 | "lodash": "^4.17.13",
910 | "to-fast-properties": "^2.0.0"
911 | }
912 | },
913 | "@types/node": {
914 | "version": "12.12.14",
915 | "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.14.tgz",
916 | "integrity": "sha512-u/SJDyXwuihpwjXy7hOOghagLEV1KdAST6syfnOk6QZAMzZuWZqXy5aYYZbh8Jdpd4escVFP0MvftHNDb9pruA=="
917 | },
918 | "abbrev": {
919 | "version": "1.1.1",
920 | "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
921 | "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
922 | "dev": true
923 | },
924 | "ansi-align": {
925 | "version": "2.0.0",
926 | "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz",
927 | "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=",
928 | "dev": true,
929 | "requires": {
930 | "string-width": "^2.0.0"
931 | }
932 | },
933 | "ansi-regex": {
934 | "version": "3.0.0",
935 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
936 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
937 | "dev": true
938 | },
939 | "ansi-styles": {
940 | "version": "3.2.1",
941 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
942 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
943 | "dev": true,
944 | "requires": {
945 | "color-convert": "^1.9.0"
946 | }
947 | },
948 | "anymatch": {
949 | "version": "2.0.0",
950 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
951 | "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
952 | "dev": true,
953 | "requires": {
954 | "micromatch": "^3.1.4",
955 | "normalize-path": "^2.1.1"
956 | },
957 | "dependencies": {
958 | "normalize-path": {
959 | "version": "2.1.1",
960 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
961 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
962 | "dev": true,
963 | "requires": {
964 | "remove-trailing-separator": "^1.0.1"
965 | }
966 | }
967 | }
968 | },
969 | "arr-diff": {
970 | "version": "4.0.0",
971 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
972 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
973 | "dev": true
974 | },
975 | "arr-flatten": {
976 | "version": "1.1.0",
977 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
978 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
979 | "dev": true
980 | },
981 | "arr-union": {
982 | "version": "3.1.0",
983 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
984 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
985 | "dev": true
986 | },
987 | "array-unique": {
988 | "version": "0.3.2",
989 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
990 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
991 | "dev": true
992 | },
993 | "assign-symbols": {
994 | "version": "1.0.0",
995 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
996 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
997 | "dev": true
998 | },
999 | "async-each": {
1000 | "version": "1.0.3",
1001 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
1002 | "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
1003 | "dev": true
1004 | },
1005 | "atob": {
1006 | "version": "2.1.2",
1007 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
1008 | "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
1009 | "dev": true
1010 | },
1011 | "babel-plugin-dynamic-import-node": {
1012 | "version": "2.3.0",
1013 | "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz",
1014 | "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==",
1015 | "dev": true,
1016 | "requires": {
1017 | "object.assign": "^4.1.0"
1018 | }
1019 | },
1020 | "babel-polyfill": {
1021 | "version": "6.26.0",
1022 | "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
1023 | "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=",
1024 | "requires": {
1025 | "babel-runtime": "^6.26.0",
1026 | "core-js": "^2.5.0",
1027 | "regenerator-runtime": "^0.10.5"
1028 | },
1029 | "dependencies": {
1030 | "regenerator-runtime": {
1031 | "version": "0.10.5",
1032 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
1033 | "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg="
1034 | }
1035 | }
1036 | },
1037 | "babel-runtime": {
1038 | "version": "6.26.0",
1039 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
1040 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
1041 | "requires": {
1042 | "core-js": "^2.4.0",
1043 | "regenerator-runtime": "^0.11.0"
1044 | },
1045 | "dependencies": {
1046 | "regenerator-runtime": {
1047 | "version": "0.11.1",
1048 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
1049 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
1050 | }
1051 | }
1052 | },
1053 | "balanced-match": {
1054 | "version": "1.0.0",
1055 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
1056 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
1057 | "dev": true
1058 | },
1059 | "base": {
1060 | "version": "0.11.2",
1061 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
1062 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
1063 | "dev": true,
1064 | "requires": {
1065 | "cache-base": "^1.0.1",
1066 | "class-utils": "^0.3.5",
1067 | "component-emitter": "^1.2.1",
1068 | "define-property": "^1.0.0",
1069 | "isobject": "^3.0.1",
1070 | "mixin-deep": "^1.2.0",
1071 | "pascalcase": "^0.1.1"
1072 | },
1073 | "dependencies": {
1074 | "define-property": {
1075 | "version": "1.0.0",
1076 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
1077 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
1078 | "dev": true,
1079 | "requires": {
1080 | "is-descriptor": "^1.0.0"
1081 | }
1082 | },
1083 | "is-accessor-descriptor": {
1084 | "version": "1.0.0",
1085 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1086 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1087 | "dev": true,
1088 | "requires": {
1089 | "kind-of": "^6.0.0"
1090 | }
1091 | },
1092 | "is-data-descriptor": {
1093 | "version": "1.0.0",
1094 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1095 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1096 | "dev": true,
1097 | "requires": {
1098 | "kind-of": "^6.0.0"
1099 | }
1100 | },
1101 | "is-descriptor": {
1102 | "version": "1.0.2",
1103 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1104 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1105 | "dev": true,
1106 | "requires": {
1107 | "is-accessor-descriptor": "^1.0.0",
1108 | "is-data-descriptor": "^1.0.0",
1109 | "kind-of": "^6.0.2"
1110 | }
1111 | }
1112 | }
1113 | },
1114 | "binary-extensions": {
1115 | "version": "1.13.1",
1116 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
1117 | "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
1118 | "dev": true
1119 | },
1120 | "boxen": {
1121 | "version": "1.3.0",
1122 | "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz",
1123 | "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==",
1124 | "dev": true,
1125 | "requires": {
1126 | "ansi-align": "^2.0.0",
1127 | "camelcase": "^4.0.0",
1128 | "chalk": "^2.0.1",
1129 | "cli-boxes": "^1.0.0",
1130 | "string-width": "^2.0.0",
1131 | "term-size": "^1.2.0",
1132 | "widest-line": "^2.0.0"
1133 | }
1134 | },
1135 | "brace-expansion": {
1136 | "version": "1.1.11",
1137 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1138 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1139 | "dev": true,
1140 | "requires": {
1141 | "balanced-match": "^1.0.0",
1142 | "concat-map": "0.0.1"
1143 | }
1144 | },
1145 | "braces": {
1146 | "version": "2.3.2",
1147 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
1148 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
1149 | "dev": true,
1150 | "requires": {
1151 | "arr-flatten": "^1.1.0",
1152 | "array-unique": "^0.3.2",
1153 | "extend-shallow": "^2.0.1",
1154 | "fill-range": "^4.0.0",
1155 | "isobject": "^3.0.1",
1156 | "repeat-element": "^1.1.2",
1157 | "snapdragon": "^0.8.1",
1158 | "snapdragon-node": "^2.0.1",
1159 | "split-string": "^3.0.2",
1160 | "to-regex": "^3.0.1"
1161 | },
1162 | "dependencies": {
1163 | "extend-shallow": {
1164 | "version": "2.0.1",
1165 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1166 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1167 | "dev": true,
1168 | "requires": {
1169 | "is-extendable": "^0.1.0"
1170 | }
1171 | }
1172 | }
1173 | },
1174 | "browserslist": {
1175 | "version": "4.8.0",
1176 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.8.0.tgz",
1177 | "integrity": "sha512-HYnxc/oLRWvJ3TsGegR0SRL/UDnknGq2s/a8dYYEO+kOQ9m9apKoS5oiathLKZdh/e9uE+/J3j92qPlGD/vTqA==",
1178 | "dev": true,
1179 | "requires": {
1180 | "caniuse-lite": "^1.0.30001012",
1181 | "electron-to-chromium": "^1.3.317",
1182 | "node-releases": "^1.1.41"
1183 | }
1184 | },
1185 | "buffer-from": {
1186 | "version": "1.1.1",
1187 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
1188 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
1189 | "dev": true
1190 | },
1191 | "cache-base": {
1192 | "version": "1.0.1",
1193 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
1194 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
1195 | "dev": true,
1196 | "requires": {
1197 | "collection-visit": "^1.0.0",
1198 | "component-emitter": "^1.2.1",
1199 | "get-value": "^2.0.6",
1200 | "has-value": "^1.0.0",
1201 | "isobject": "^3.0.1",
1202 | "set-value": "^2.0.0",
1203 | "to-object-path": "^0.3.0",
1204 | "union-value": "^1.0.0",
1205 | "unset-value": "^1.0.0"
1206 | }
1207 | },
1208 | "camelcase": {
1209 | "version": "4.1.0",
1210 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
1211 | "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=",
1212 | "dev": true
1213 | },
1214 | "caniuse-lite": {
1215 | "version": "1.0.30001013",
1216 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001013.tgz",
1217 | "integrity": "sha512-hOAXaWKuq/UVFgYawxIOdPdyMQdYcwOCDOjnZcKn7wCgFUrhP7smuNZjGLuJlPSgE6aRA4cRJ+bGSrhtEt7ZAg==",
1218 | "dev": true
1219 | },
1220 | "capture-stack-trace": {
1221 | "version": "1.0.1",
1222 | "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz",
1223 | "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==",
1224 | "dev": true
1225 | },
1226 | "chalk": {
1227 | "version": "2.4.2",
1228 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
1229 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
1230 | "dev": true,
1231 | "requires": {
1232 | "ansi-styles": "^3.2.1",
1233 | "escape-string-regexp": "^1.0.5",
1234 | "supports-color": "^5.3.0"
1235 | }
1236 | },
1237 | "chokidar": {
1238 | "version": "2.1.8",
1239 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
1240 | "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
1241 | "dev": true,
1242 | "requires": {
1243 | "anymatch": "^2.0.0",
1244 | "async-each": "^1.0.1",
1245 | "braces": "^2.3.2",
1246 | "fsevents": "^1.2.7",
1247 | "glob-parent": "^3.1.0",
1248 | "inherits": "^2.0.3",
1249 | "is-binary-path": "^1.0.0",
1250 | "is-glob": "^4.0.0",
1251 | "normalize-path": "^3.0.0",
1252 | "path-is-absolute": "^1.0.0",
1253 | "readdirp": "^2.2.1",
1254 | "upath": "^1.1.1"
1255 | }
1256 | },
1257 | "ci-info": {
1258 | "version": "1.6.0",
1259 | "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz",
1260 | "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==",
1261 | "dev": true
1262 | },
1263 | "class-utils": {
1264 | "version": "0.3.6",
1265 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
1266 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
1267 | "dev": true,
1268 | "requires": {
1269 | "arr-union": "^3.1.0",
1270 | "define-property": "^0.2.5",
1271 | "isobject": "^3.0.0",
1272 | "static-extend": "^0.1.1"
1273 | },
1274 | "dependencies": {
1275 | "define-property": {
1276 | "version": "0.2.5",
1277 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1278 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1279 | "dev": true,
1280 | "requires": {
1281 | "is-descriptor": "^0.1.0"
1282 | }
1283 | }
1284 | }
1285 | },
1286 | "cli-boxes": {
1287 | "version": "1.0.0",
1288 | "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz",
1289 | "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=",
1290 | "dev": true
1291 | },
1292 | "collection-visit": {
1293 | "version": "1.0.0",
1294 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
1295 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
1296 | "dev": true,
1297 | "requires": {
1298 | "map-visit": "^1.0.0",
1299 | "object-visit": "^1.0.0"
1300 | }
1301 | },
1302 | "color-convert": {
1303 | "version": "1.9.3",
1304 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
1305 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
1306 | "dev": true,
1307 | "requires": {
1308 | "color-name": "1.1.3"
1309 | }
1310 | },
1311 | "color-name": {
1312 | "version": "1.1.3",
1313 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
1314 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
1315 | "dev": true
1316 | },
1317 | "commander": {
1318 | "version": "4.0.1",
1319 | "resolved": "https://registry.npmjs.org/commander/-/commander-4.0.1.tgz",
1320 | "integrity": "sha512-IPF4ouhCP+qdlcmCedhxX4xiGBPyigb8v5NeUp+0LyhwLgxMqyp3S0vl7TAPfS/hiP7FC3caI/PB9lTmP8r1NA==",
1321 | "dev": true
1322 | },
1323 | "commondir": {
1324 | "version": "1.0.1",
1325 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
1326 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
1327 | "dev": true
1328 | },
1329 | "component-emitter": {
1330 | "version": "1.3.0",
1331 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
1332 | "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
1333 | "dev": true
1334 | },
1335 | "concat-map": {
1336 | "version": "0.0.1",
1337 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
1338 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
1339 | "dev": true
1340 | },
1341 | "configstore": {
1342 | "version": "3.1.2",
1343 | "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz",
1344 | "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==",
1345 | "dev": true,
1346 | "requires": {
1347 | "dot-prop": "^4.1.0",
1348 | "graceful-fs": "^4.1.2",
1349 | "make-dir": "^1.0.0",
1350 | "unique-string": "^1.0.0",
1351 | "write-file-atomic": "^2.0.0",
1352 | "xdg-basedir": "^3.0.0"
1353 | },
1354 | "dependencies": {
1355 | "make-dir": {
1356 | "version": "1.3.0",
1357 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
1358 | "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
1359 | "dev": true,
1360 | "requires": {
1361 | "pify": "^3.0.0"
1362 | }
1363 | },
1364 | "pify": {
1365 | "version": "3.0.0",
1366 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
1367 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
1368 | "dev": true
1369 | }
1370 | }
1371 | },
1372 | "convert-source-map": {
1373 | "version": "1.7.0",
1374 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
1375 | "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
1376 | "dev": true,
1377 | "requires": {
1378 | "safe-buffer": "~5.1.1"
1379 | }
1380 | },
1381 | "copy-descriptor": {
1382 | "version": "0.1.1",
1383 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
1384 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
1385 | "dev": true
1386 | },
1387 | "core-js": {
1388 | "version": "2.6.5",
1389 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz",
1390 | "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A=="
1391 | },
1392 | "core-js-compat": {
1393 | "version": "3.4.7",
1394 | "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.4.7.tgz",
1395 | "integrity": "sha512-57+mgz/P/xsGdjwQYkwtBZR3LuISaxD1dEwVDtbk8xJMqAmwqaxLOvnNT7kdJ7jYE/NjNptyzXi+IQFMi/2fCw==",
1396 | "dev": true,
1397 | "requires": {
1398 | "browserslist": "^4.8.0",
1399 | "semver": "^6.3.0"
1400 | },
1401 | "dependencies": {
1402 | "semver": {
1403 | "version": "6.3.0",
1404 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1405 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1406 | "dev": true
1407 | }
1408 | }
1409 | },
1410 | "core-util-is": {
1411 | "version": "1.0.2",
1412 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
1413 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
1414 | "dev": true
1415 | },
1416 | "create-error-class": {
1417 | "version": "3.0.2",
1418 | "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz",
1419 | "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=",
1420 | "dev": true,
1421 | "requires": {
1422 | "capture-stack-trace": "^1.0.0"
1423 | }
1424 | },
1425 | "cross-spawn": {
1426 | "version": "5.1.0",
1427 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
1428 | "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
1429 | "dev": true,
1430 | "requires": {
1431 | "lru-cache": "^4.0.1",
1432 | "shebang-command": "^1.2.0",
1433 | "which": "^1.2.9"
1434 | }
1435 | },
1436 | "crypto-random-string": {
1437 | "version": "1.0.0",
1438 | "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz",
1439 | "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=",
1440 | "dev": true
1441 | },
1442 | "debug": {
1443 | "version": "2.6.9",
1444 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1445 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1446 | "dev": true,
1447 | "requires": {
1448 | "ms": "2.0.0"
1449 | }
1450 | },
1451 | "decode-uri-component": {
1452 | "version": "0.2.0",
1453 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
1454 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
1455 | "dev": true
1456 | },
1457 | "deep-extend": {
1458 | "version": "0.6.0",
1459 | "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
1460 | "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
1461 | "dev": true
1462 | },
1463 | "define-properties": {
1464 | "version": "1.1.3",
1465 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
1466 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
1467 | "dev": true,
1468 | "requires": {
1469 | "object-keys": "^1.0.12"
1470 | }
1471 | },
1472 | "define-property": {
1473 | "version": "2.0.2",
1474 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
1475 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
1476 | "dev": true,
1477 | "requires": {
1478 | "is-descriptor": "^1.0.2",
1479 | "isobject": "^3.0.1"
1480 | },
1481 | "dependencies": {
1482 | "is-accessor-descriptor": {
1483 | "version": "1.0.0",
1484 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1485 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1486 | "dev": true,
1487 | "requires": {
1488 | "kind-of": "^6.0.0"
1489 | }
1490 | },
1491 | "is-data-descriptor": {
1492 | "version": "1.0.0",
1493 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1494 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1495 | "dev": true,
1496 | "requires": {
1497 | "kind-of": "^6.0.0"
1498 | }
1499 | },
1500 | "is-descriptor": {
1501 | "version": "1.0.2",
1502 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1503 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1504 | "dev": true,
1505 | "requires": {
1506 | "is-accessor-descriptor": "^1.0.0",
1507 | "is-data-descriptor": "^1.0.0",
1508 | "kind-of": "^6.0.2"
1509 | }
1510 | }
1511 | }
1512 | },
1513 | "dot-prop": {
1514 | "version": "4.2.0",
1515 | "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz",
1516 | "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==",
1517 | "dev": true,
1518 | "requires": {
1519 | "is-obj": "^1.0.0"
1520 | }
1521 | },
1522 | "dotenv": {
1523 | "version": "8.2.0",
1524 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz",
1525 | "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw=="
1526 | },
1527 | "duplexer3": {
1528 | "version": "0.1.4",
1529 | "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
1530 | "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
1531 | "dev": true
1532 | },
1533 | "electron-to-chromium": {
1534 | "version": "1.3.322",
1535 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.322.tgz",
1536 | "integrity": "sha512-Tc8JQEfGQ1MzfSzI/bTlSr7btJv/FFO7Yh6tanqVmIWOuNCu6/D1MilIEgLtmWqIrsv+o4IjpLAhgMBr/ncNAA==",
1537 | "dev": true
1538 | },
1539 | "es-abstract": {
1540 | "version": "1.16.2",
1541 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.2.tgz",
1542 | "integrity": "sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA==",
1543 | "dev": true,
1544 | "requires": {
1545 | "es-to-primitive": "^1.2.1",
1546 | "function-bind": "^1.1.1",
1547 | "has": "^1.0.3",
1548 | "has-symbols": "^1.0.1",
1549 | "is-callable": "^1.1.4",
1550 | "is-regex": "^1.0.4",
1551 | "object-inspect": "^1.7.0",
1552 | "object-keys": "^1.1.1",
1553 | "string.prototype.trimleft": "^2.1.0",
1554 | "string.prototype.trimright": "^2.1.0"
1555 | }
1556 | },
1557 | "es-to-primitive": {
1558 | "version": "1.2.1",
1559 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
1560 | "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
1561 | "dev": true,
1562 | "requires": {
1563 | "is-callable": "^1.1.4",
1564 | "is-date-object": "^1.0.1",
1565 | "is-symbol": "^1.0.2"
1566 | }
1567 | },
1568 | "escape-string-regexp": {
1569 | "version": "1.0.5",
1570 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1571 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1572 | "dev": true
1573 | },
1574 | "esutils": {
1575 | "version": "2.0.3",
1576 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1577 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
1578 | "dev": true
1579 | },
1580 | "execa": {
1581 | "version": "0.7.0",
1582 | "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
1583 | "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
1584 | "dev": true,
1585 | "requires": {
1586 | "cross-spawn": "^5.0.1",
1587 | "get-stream": "^3.0.0",
1588 | "is-stream": "^1.1.0",
1589 | "npm-run-path": "^2.0.0",
1590 | "p-finally": "^1.0.0",
1591 | "signal-exit": "^3.0.0",
1592 | "strip-eof": "^1.0.0"
1593 | }
1594 | },
1595 | "expand-brackets": {
1596 | "version": "2.1.4",
1597 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
1598 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
1599 | "dev": true,
1600 | "requires": {
1601 | "debug": "^2.3.3",
1602 | "define-property": "^0.2.5",
1603 | "extend-shallow": "^2.0.1",
1604 | "posix-character-classes": "^0.1.0",
1605 | "regex-not": "^1.0.0",
1606 | "snapdragon": "^0.8.1",
1607 | "to-regex": "^3.0.1"
1608 | },
1609 | "dependencies": {
1610 | "define-property": {
1611 | "version": "0.2.5",
1612 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1613 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1614 | "dev": true,
1615 | "requires": {
1616 | "is-descriptor": "^0.1.0"
1617 | }
1618 | },
1619 | "extend-shallow": {
1620 | "version": "2.0.1",
1621 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1622 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1623 | "dev": true,
1624 | "requires": {
1625 | "is-extendable": "^0.1.0"
1626 | }
1627 | }
1628 | }
1629 | },
1630 | "extend-shallow": {
1631 | "version": "3.0.2",
1632 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
1633 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
1634 | "dev": true,
1635 | "requires": {
1636 | "assign-symbols": "^1.0.0",
1637 | "is-extendable": "^1.0.1"
1638 | },
1639 | "dependencies": {
1640 | "is-extendable": {
1641 | "version": "1.0.1",
1642 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
1643 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
1644 | "dev": true,
1645 | "requires": {
1646 | "is-plain-object": "^2.0.4"
1647 | }
1648 | }
1649 | }
1650 | },
1651 | "extglob": {
1652 | "version": "2.0.4",
1653 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
1654 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
1655 | "dev": true,
1656 | "requires": {
1657 | "array-unique": "^0.3.2",
1658 | "define-property": "^1.0.0",
1659 | "expand-brackets": "^2.1.4",
1660 | "extend-shallow": "^2.0.1",
1661 | "fragment-cache": "^0.2.1",
1662 | "regex-not": "^1.0.0",
1663 | "snapdragon": "^0.8.1",
1664 | "to-regex": "^3.0.1"
1665 | },
1666 | "dependencies": {
1667 | "define-property": {
1668 | "version": "1.0.0",
1669 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
1670 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
1671 | "dev": true,
1672 | "requires": {
1673 | "is-descriptor": "^1.0.0"
1674 | }
1675 | },
1676 | "extend-shallow": {
1677 | "version": "2.0.1",
1678 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1679 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1680 | "dev": true,
1681 | "requires": {
1682 | "is-extendable": "^0.1.0"
1683 | }
1684 | },
1685 | "is-accessor-descriptor": {
1686 | "version": "1.0.0",
1687 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1688 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1689 | "dev": true,
1690 | "requires": {
1691 | "kind-of": "^6.0.0"
1692 | }
1693 | },
1694 | "is-data-descriptor": {
1695 | "version": "1.0.0",
1696 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1697 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1698 | "dev": true,
1699 | "requires": {
1700 | "kind-of": "^6.0.0"
1701 | }
1702 | },
1703 | "is-descriptor": {
1704 | "version": "1.0.2",
1705 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1706 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1707 | "dev": true,
1708 | "requires": {
1709 | "is-accessor-descriptor": "^1.0.0",
1710 | "is-data-descriptor": "^1.0.0",
1711 | "kind-of": "^6.0.2"
1712 | }
1713 | }
1714 | }
1715 | },
1716 | "fill-range": {
1717 | "version": "4.0.0",
1718 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
1719 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
1720 | "dev": true,
1721 | "requires": {
1722 | "extend-shallow": "^2.0.1",
1723 | "is-number": "^3.0.0",
1724 | "repeat-string": "^1.6.1",
1725 | "to-regex-range": "^2.1.0"
1726 | },
1727 | "dependencies": {
1728 | "extend-shallow": {
1729 | "version": "2.0.1",
1730 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1731 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1732 | "dev": true,
1733 | "requires": {
1734 | "is-extendable": "^0.1.0"
1735 | }
1736 | }
1737 | }
1738 | },
1739 | "find-cache-dir": {
1740 | "version": "2.1.0",
1741 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
1742 | "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
1743 | "dev": true,
1744 | "requires": {
1745 | "commondir": "^1.0.1",
1746 | "make-dir": "^2.0.0",
1747 | "pkg-dir": "^3.0.0"
1748 | }
1749 | },
1750 | "find-up": {
1751 | "version": "3.0.0",
1752 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
1753 | "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
1754 | "dev": true,
1755 | "requires": {
1756 | "locate-path": "^3.0.0"
1757 | }
1758 | },
1759 | "for-in": {
1760 | "version": "1.0.2",
1761 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
1762 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
1763 | "dev": true
1764 | },
1765 | "fragment-cache": {
1766 | "version": "0.2.1",
1767 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
1768 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
1769 | "dev": true,
1770 | "requires": {
1771 | "map-cache": "^0.2.2"
1772 | }
1773 | },
1774 | "fs-readdir-recursive": {
1775 | "version": "1.1.0",
1776 | "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz",
1777 | "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==",
1778 | "dev": true
1779 | },
1780 | "fs.realpath": {
1781 | "version": "1.0.0",
1782 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1783 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1784 | "dev": true
1785 | },
1786 | "fsevents": {
1787 | "version": "1.2.9",
1788 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz",
1789 | "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==",
1790 | "dev": true,
1791 | "optional": true,
1792 | "requires": {
1793 | "nan": "^2.12.1",
1794 | "node-pre-gyp": "^0.12.0"
1795 | },
1796 | "dependencies": {
1797 | "abbrev": {
1798 | "version": "1.1.1",
1799 | "bundled": true,
1800 | "dev": true,
1801 | "optional": true
1802 | },
1803 | "ansi-regex": {
1804 | "version": "2.1.1",
1805 | "bundled": true,
1806 | "dev": true,
1807 | "optional": true
1808 | },
1809 | "aproba": {
1810 | "version": "1.2.0",
1811 | "bundled": true,
1812 | "dev": true,
1813 | "optional": true
1814 | },
1815 | "are-we-there-yet": {
1816 | "version": "1.1.5",
1817 | "bundled": true,
1818 | "dev": true,
1819 | "optional": true,
1820 | "requires": {
1821 | "delegates": "^1.0.0",
1822 | "readable-stream": "^2.0.6"
1823 | }
1824 | },
1825 | "balanced-match": {
1826 | "version": "1.0.0",
1827 | "bundled": true,
1828 | "dev": true,
1829 | "optional": true
1830 | },
1831 | "brace-expansion": {
1832 | "version": "1.1.11",
1833 | "bundled": true,
1834 | "dev": true,
1835 | "optional": true,
1836 | "requires": {
1837 | "balanced-match": "^1.0.0",
1838 | "concat-map": "0.0.1"
1839 | }
1840 | },
1841 | "chownr": {
1842 | "version": "1.1.1",
1843 | "bundled": true,
1844 | "dev": true,
1845 | "optional": true
1846 | },
1847 | "code-point-at": {
1848 | "version": "1.1.0",
1849 | "bundled": true,
1850 | "dev": true,
1851 | "optional": true
1852 | },
1853 | "concat-map": {
1854 | "version": "0.0.1",
1855 | "bundled": true,
1856 | "dev": true,
1857 | "optional": true
1858 | },
1859 | "console-control-strings": {
1860 | "version": "1.1.0",
1861 | "bundled": true,
1862 | "dev": true,
1863 | "optional": true
1864 | },
1865 | "core-util-is": {
1866 | "version": "1.0.2",
1867 | "bundled": true,
1868 | "dev": true,
1869 | "optional": true
1870 | },
1871 | "debug": {
1872 | "version": "4.1.1",
1873 | "bundled": true,
1874 | "dev": true,
1875 | "optional": true,
1876 | "requires": {
1877 | "ms": "^2.1.1"
1878 | }
1879 | },
1880 | "deep-extend": {
1881 | "version": "0.6.0",
1882 | "bundled": true,
1883 | "dev": true,
1884 | "optional": true
1885 | },
1886 | "delegates": {
1887 | "version": "1.0.0",
1888 | "bundled": true,
1889 | "dev": true,
1890 | "optional": true
1891 | },
1892 | "detect-libc": {
1893 | "version": "1.0.3",
1894 | "bundled": true,
1895 | "dev": true,
1896 | "optional": true
1897 | },
1898 | "fs-minipass": {
1899 | "version": "1.2.5",
1900 | "bundled": true,
1901 | "dev": true,
1902 | "optional": true,
1903 | "requires": {
1904 | "minipass": "^2.2.1"
1905 | }
1906 | },
1907 | "fs.realpath": {
1908 | "version": "1.0.0",
1909 | "bundled": true,
1910 | "dev": true,
1911 | "optional": true
1912 | },
1913 | "gauge": {
1914 | "version": "2.7.4",
1915 | "bundled": true,
1916 | "dev": true,
1917 | "optional": true,
1918 | "requires": {
1919 | "aproba": "^1.0.3",
1920 | "console-control-strings": "^1.0.0",
1921 | "has-unicode": "^2.0.0",
1922 | "object-assign": "^4.1.0",
1923 | "signal-exit": "^3.0.0",
1924 | "string-width": "^1.0.1",
1925 | "strip-ansi": "^3.0.1",
1926 | "wide-align": "^1.1.0"
1927 | }
1928 | },
1929 | "glob": {
1930 | "version": "7.1.3",
1931 | "bundled": true,
1932 | "dev": true,
1933 | "optional": true,
1934 | "requires": {
1935 | "fs.realpath": "^1.0.0",
1936 | "inflight": "^1.0.4",
1937 | "inherits": "2",
1938 | "minimatch": "^3.0.4",
1939 | "once": "^1.3.0",
1940 | "path-is-absolute": "^1.0.0"
1941 | }
1942 | },
1943 | "has-unicode": {
1944 | "version": "2.0.1",
1945 | "bundled": true,
1946 | "dev": true,
1947 | "optional": true
1948 | },
1949 | "iconv-lite": {
1950 | "version": "0.4.24",
1951 | "bundled": true,
1952 | "dev": true,
1953 | "optional": true,
1954 | "requires": {
1955 | "safer-buffer": ">= 2.1.2 < 3"
1956 | }
1957 | },
1958 | "ignore-walk": {
1959 | "version": "3.0.1",
1960 | "bundled": true,
1961 | "dev": true,
1962 | "optional": true,
1963 | "requires": {
1964 | "minimatch": "^3.0.4"
1965 | }
1966 | },
1967 | "inflight": {
1968 | "version": "1.0.6",
1969 | "bundled": true,
1970 | "dev": true,
1971 | "optional": true,
1972 | "requires": {
1973 | "once": "^1.3.0",
1974 | "wrappy": "1"
1975 | }
1976 | },
1977 | "inherits": {
1978 | "version": "2.0.3",
1979 | "bundled": true,
1980 | "dev": true,
1981 | "optional": true
1982 | },
1983 | "ini": {
1984 | "version": "1.3.5",
1985 | "bundled": true,
1986 | "dev": true,
1987 | "optional": true
1988 | },
1989 | "is-fullwidth-code-point": {
1990 | "version": "1.0.0",
1991 | "bundled": true,
1992 | "dev": true,
1993 | "optional": true,
1994 | "requires": {
1995 | "number-is-nan": "^1.0.0"
1996 | }
1997 | },
1998 | "isarray": {
1999 | "version": "1.0.0",
2000 | "bundled": true,
2001 | "dev": true,
2002 | "optional": true
2003 | },
2004 | "minimatch": {
2005 | "version": "3.0.4",
2006 | "bundled": true,
2007 | "dev": true,
2008 | "optional": true,
2009 | "requires": {
2010 | "brace-expansion": "^1.1.7"
2011 | }
2012 | },
2013 | "minimist": {
2014 | "version": "0.0.8",
2015 | "bundled": true,
2016 | "dev": true,
2017 | "optional": true
2018 | },
2019 | "minipass": {
2020 | "version": "2.3.5",
2021 | "bundled": true,
2022 | "dev": true,
2023 | "optional": true,
2024 | "requires": {
2025 | "safe-buffer": "^5.1.2",
2026 | "yallist": "^3.0.0"
2027 | }
2028 | },
2029 | "minizlib": {
2030 | "version": "1.2.1",
2031 | "bundled": true,
2032 | "dev": true,
2033 | "optional": true,
2034 | "requires": {
2035 | "minipass": "^2.2.1"
2036 | }
2037 | },
2038 | "mkdirp": {
2039 | "version": "0.5.1",
2040 | "bundled": true,
2041 | "dev": true,
2042 | "optional": true,
2043 | "requires": {
2044 | "minimist": "0.0.8"
2045 | }
2046 | },
2047 | "ms": {
2048 | "version": "2.1.1",
2049 | "bundled": true,
2050 | "dev": true,
2051 | "optional": true
2052 | },
2053 | "needle": {
2054 | "version": "2.3.0",
2055 | "bundled": true,
2056 | "dev": true,
2057 | "optional": true,
2058 | "requires": {
2059 | "debug": "^4.1.0",
2060 | "iconv-lite": "^0.4.4",
2061 | "sax": "^1.2.4"
2062 | }
2063 | },
2064 | "node-pre-gyp": {
2065 | "version": "0.12.0",
2066 | "bundled": true,
2067 | "dev": true,
2068 | "optional": true,
2069 | "requires": {
2070 | "detect-libc": "^1.0.2",
2071 | "mkdirp": "^0.5.1",
2072 | "needle": "^2.2.1",
2073 | "nopt": "^4.0.1",
2074 | "npm-packlist": "^1.1.6",
2075 | "npmlog": "^4.0.2",
2076 | "rc": "^1.2.7",
2077 | "rimraf": "^2.6.1",
2078 | "semver": "^5.3.0",
2079 | "tar": "^4"
2080 | }
2081 | },
2082 | "nopt": {
2083 | "version": "4.0.1",
2084 | "bundled": true,
2085 | "dev": true,
2086 | "optional": true,
2087 | "requires": {
2088 | "abbrev": "1",
2089 | "osenv": "^0.1.4"
2090 | }
2091 | },
2092 | "npm-bundled": {
2093 | "version": "1.0.6",
2094 | "bundled": true,
2095 | "dev": true,
2096 | "optional": true
2097 | },
2098 | "npm-packlist": {
2099 | "version": "1.4.1",
2100 | "bundled": true,
2101 | "dev": true,
2102 | "optional": true,
2103 | "requires": {
2104 | "ignore-walk": "^3.0.1",
2105 | "npm-bundled": "^1.0.1"
2106 | }
2107 | },
2108 | "npmlog": {
2109 | "version": "4.1.2",
2110 | "bundled": true,
2111 | "dev": true,
2112 | "optional": true,
2113 | "requires": {
2114 | "are-we-there-yet": "~1.1.2",
2115 | "console-control-strings": "~1.1.0",
2116 | "gauge": "~2.7.3",
2117 | "set-blocking": "~2.0.0"
2118 | }
2119 | },
2120 | "number-is-nan": {
2121 | "version": "1.0.1",
2122 | "bundled": true,
2123 | "dev": true,
2124 | "optional": true
2125 | },
2126 | "object-assign": {
2127 | "version": "4.1.1",
2128 | "bundled": true,
2129 | "dev": true,
2130 | "optional": true
2131 | },
2132 | "once": {
2133 | "version": "1.4.0",
2134 | "bundled": true,
2135 | "dev": true,
2136 | "optional": true,
2137 | "requires": {
2138 | "wrappy": "1"
2139 | }
2140 | },
2141 | "os-homedir": {
2142 | "version": "1.0.2",
2143 | "bundled": true,
2144 | "dev": true,
2145 | "optional": true
2146 | },
2147 | "os-tmpdir": {
2148 | "version": "1.0.2",
2149 | "bundled": true,
2150 | "dev": true,
2151 | "optional": true
2152 | },
2153 | "osenv": {
2154 | "version": "0.1.5",
2155 | "bundled": true,
2156 | "dev": true,
2157 | "optional": true,
2158 | "requires": {
2159 | "os-homedir": "^1.0.0",
2160 | "os-tmpdir": "^1.0.0"
2161 | }
2162 | },
2163 | "path-is-absolute": {
2164 | "version": "1.0.1",
2165 | "bundled": true,
2166 | "dev": true,
2167 | "optional": true
2168 | },
2169 | "process-nextick-args": {
2170 | "version": "2.0.0",
2171 | "bundled": true,
2172 | "dev": true,
2173 | "optional": true
2174 | },
2175 | "rc": {
2176 | "version": "1.2.8",
2177 | "bundled": true,
2178 | "dev": true,
2179 | "optional": true,
2180 | "requires": {
2181 | "deep-extend": "^0.6.0",
2182 | "ini": "~1.3.0",
2183 | "minimist": "^1.2.0",
2184 | "strip-json-comments": "~2.0.1"
2185 | },
2186 | "dependencies": {
2187 | "minimist": {
2188 | "version": "1.2.0",
2189 | "bundled": true,
2190 | "dev": true,
2191 | "optional": true
2192 | }
2193 | }
2194 | },
2195 | "readable-stream": {
2196 | "version": "2.3.6",
2197 | "bundled": true,
2198 | "dev": true,
2199 | "optional": true,
2200 | "requires": {
2201 | "core-util-is": "~1.0.0",
2202 | "inherits": "~2.0.3",
2203 | "isarray": "~1.0.0",
2204 | "process-nextick-args": "~2.0.0",
2205 | "safe-buffer": "~5.1.1",
2206 | "string_decoder": "~1.1.1",
2207 | "util-deprecate": "~1.0.1"
2208 | }
2209 | },
2210 | "rimraf": {
2211 | "version": "2.6.3",
2212 | "bundled": true,
2213 | "dev": true,
2214 | "optional": true,
2215 | "requires": {
2216 | "glob": "^7.1.3"
2217 | }
2218 | },
2219 | "safe-buffer": {
2220 | "version": "5.1.2",
2221 | "bundled": true,
2222 | "dev": true,
2223 | "optional": true
2224 | },
2225 | "safer-buffer": {
2226 | "version": "2.1.2",
2227 | "bundled": true,
2228 | "dev": true,
2229 | "optional": true
2230 | },
2231 | "sax": {
2232 | "version": "1.2.4",
2233 | "bundled": true,
2234 | "dev": true,
2235 | "optional": true
2236 | },
2237 | "semver": {
2238 | "version": "5.7.0",
2239 | "bundled": true,
2240 | "dev": true,
2241 | "optional": true
2242 | },
2243 | "set-blocking": {
2244 | "version": "2.0.0",
2245 | "bundled": true,
2246 | "dev": true,
2247 | "optional": true
2248 | },
2249 | "signal-exit": {
2250 | "version": "3.0.2",
2251 | "bundled": true,
2252 | "dev": true,
2253 | "optional": true
2254 | },
2255 | "string-width": {
2256 | "version": "1.0.2",
2257 | "bundled": true,
2258 | "dev": true,
2259 | "optional": true,
2260 | "requires": {
2261 | "code-point-at": "^1.0.0",
2262 | "is-fullwidth-code-point": "^1.0.0",
2263 | "strip-ansi": "^3.0.0"
2264 | }
2265 | },
2266 | "string_decoder": {
2267 | "version": "1.1.1",
2268 | "bundled": true,
2269 | "dev": true,
2270 | "optional": true,
2271 | "requires": {
2272 | "safe-buffer": "~5.1.0"
2273 | }
2274 | },
2275 | "strip-ansi": {
2276 | "version": "3.0.1",
2277 | "bundled": true,
2278 | "dev": true,
2279 | "optional": true,
2280 | "requires": {
2281 | "ansi-regex": "^2.0.0"
2282 | }
2283 | },
2284 | "strip-json-comments": {
2285 | "version": "2.0.1",
2286 | "bundled": true,
2287 | "dev": true,
2288 | "optional": true
2289 | },
2290 | "tar": {
2291 | "version": "4.4.8",
2292 | "bundled": true,
2293 | "dev": true,
2294 | "optional": true,
2295 | "requires": {
2296 | "chownr": "^1.1.1",
2297 | "fs-minipass": "^1.2.5",
2298 | "minipass": "^2.3.4",
2299 | "minizlib": "^1.1.1",
2300 | "mkdirp": "^0.5.0",
2301 | "safe-buffer": "^5.1.2",
2302 | "yallist": "^3.0.2"
2303 | }
2304 | },
2305 | "util-deprecate": {
2306 | "version": "1.0.2",
2307 | "bundled": true,
2308 | "dev": true,
2309 | "optional": true
2310 | },
2311 | "wide-align": {
2312 | "version": "1.1.3",
2313 | "bundled": true,
2314 | "dev": true,
2315 | "optional": true,
2316 | "requires": {
2317 | "string-width": "^1.0.2 || 2"
2318 | }
2319 | },
2320 | "wrappy": {
2321 | "version": "1.0.2",
2322 | "bundled": true,
2323 | "dev": true,
2324 | "optional": true
2325 | },
2326 | "yallist": {
2327 | "version": "3.0.3",
2328 | "bundled": true,
2329 | "dev": true,
2330 | "optional": true
2331 | }
2332 | }
2333 | },
2334 | "function-bind": {
2335 | "version": "1.1.1",
2336 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2337 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
2338 | "dev": true
2339 | },
2340 | "get-stream": {
2341 | "version": "3.0.0",
2342 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
2343 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
2344 | "dev": true
2345 | },
2346 | "get-value": {
2347 | "version": "2.0.6",
2348 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
2349 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
2350 | "dev": true
2351 | },
2352 | "glob": {
2353 | "version": "7.1.6",
2354 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
2355 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
2356 | "dev": true,
2357 | "requires": {
2358 | "fs.realpath": "^1.0.0",
2359 | "inflight": "^1.0.4",
2360 | "inherits": "2",
2361 | "minimatch": "^3.0.4",
2362 | "once": "^1.3.0",
2363 | "path-is-absolute": "^1.0.0"
2364 | }
2365 | },
2366 | "glob-parent": {
2367 | "version": "3.1.0",
2368 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
2369 | "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
2370 | "dev": true,
2371 | "requires": {
2372 | "is-glob": "^3.1.0",
2373 | "path-dirname": "^1.0.0"
2374 | },
2375 | "dependencies": {
2376 | "is-glob": {
2377 | "version": "3.1.0",
2378 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
2379 | "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
2380 | "dev": true,
2381 | "requires": {
2382 | "is-extglob": "^2.1.0"
2383 | }
2384 | }
2385 | }
2386 | },
2387 | "global-dirs": {
2388 | "version": "0.1.1",
2389 | "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
2390 | "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=",
2391 | "dev": true,
2392 | "requires": {
2393 | "ini": "^1.3.4"
2394 | }
2395 | },
2396 | "globals": {
2397 | "version": "11.12.0",
2398 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
2399 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
2400 | "dev": true
2401 | },
2402 | "got": {
2403 | "version": "6.7.1",
2404 | "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz",
2405 | "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=",
2406 | "dev": true,
2407 | "requires": {
2408 | "create-error-class": "^3.0.0",
2409 | "duplexer3": "^0.1.4",
2410 | "get-stream": "^3.0.0",
2411 | "is-redirect": "^1.0.0",
2412 | "is-retry-allowed": "^1.0.0",
2413 | "is-stream": "^1.0.0",
2414 | "lowercase-keys": "^1.0.0",
2415 | "safe-buffer": "^5.0.1",
2416 | "timed-out": "^4.0.0",
2417 | "unzip-response": "^2.0.1",
2418 | "url-parse-lax": "^1.0.0"
2419 | }
2420 | },
2421 | "graceful-fs": {
2422 | "version": "4.2.3",
2423 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz",
2424 | "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==",
2425 | "dev": true
2426 | },
2427 | "has": {
2428 | "version": "1.0.3",
2429 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
2430 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
2431 | "dev": true,
2432 | "requires": {
2433 | "function-bind": "^1.1.1"
2434 | }
2435 | },
2436 | "has-flag": {
2437 | "version": "3.0.0",
2438 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
2439 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
2440 | "dev": true
2441 | },
2442 | "has-symbols": {
2443 | "version": "1.0.1",
2444 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
2445 | "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
2446 | "dev": true
2447 | },
2448 | "has-value": {
2449 | "version": "1.0.0",
2450 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
2451 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
2452 | "dev": true,
2453 | "requires": {
2454 | "get-value": "^2.0.6",
2455 | "has-values": "^1.0.0",
2456 | "isobject": "^3.0.0"
2457 | }
2458 | },
2459 | "has-values": {
2460 | "version": "1.0.0",
2461 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
2462 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
2463 | "dev": true,
2464 | "requires": {
2465 | "is-number": "^3.0.0",
2466 | "kind-of": "^4.0.0"
2467 | },
2468 | "dependencies": {
2469 | "kind-of": {
2470 | "version": "4.0.0",
2471 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
2472 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
2473 | "dev": true,
2474 | "requires": {
2475 | "is-buffer": "^1.1.5"
2476 | }
2477 | }
2478 | }
2479 | },
2480 | "homedir-polyfill": {
2481 | "version": "1.0.3",
2482 | "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
2483 | "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
2484 | "dev": true,
2485 | "requires": {
2486 | "parse-passwd": "^1.0.0"
2487 | }
2488 | },
2489 | "ignore-by-default": {
2490 | "version": "1.0.1",
2491 | "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz",
2492 | "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=",
2493 | "dev": true
2494 | },
2495 | "import-lazy": {
2496 | "version": "2.1.0",
2497 | "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz",
2498 | "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=",
2499 | "dev": true
2500 | },
2501 | "imurmurhash": {
2502 | "version": "0.1.4",
2503 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
2504 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
2505 | "dev": true
2506 | },
2507 | "inflight": {
2508 | "version": "1.0.6",
2509 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
2510 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
2511 | "dev": true,
2512 | "requires": {
2513 | "once": "^1.3.0",
2514 | "wrappy": "1"
2515 | }
2516 | },
2517 | "inherits": {
2518 | "version": "2.0.4",
2519 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
2520 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
2521 | "dev": true
2522 | },
2523 | "ini": {
2524 | "version": "1.3.5",
2525 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
2526 | "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
2527 | "dev": true
2528 | },
2529 | "invariant": {
2530 | "version": "2.2.4",
2531 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
2532 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
2533 | "dev": true,
2534 | "requires": {
2535 | "loose-envify": "^1.0.0"
2536 | }
2537 | },
2538 | "is-accessor-descriptor": {
2539 | "version": "0.1.6",
2540 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
2541 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
2542 | "dev": true,
2543 | "requires": {
2544 | "kind-of": "^3.0.2"
2545 | },
2546 | "dependencies": {
2547 | "kind-of": {
2548 | "version": "3.2.2",
2549 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2550 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2551 | "dev": true,
2552 | "requires": {
2553 | "is-buffer": "^1.1.5"
2554 | }
2555 | }
2556 | }
2557 | },
2558 | "is-binary-path": {
2559 | "version": "1.0.1",
2560 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
2561 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
2562 | "dev": true,
2563 | "requires": {
2564 | "binary-extensions": "^1.0.0"
2565 | }
2566 | },
2567 | "is-buffer": {
2568 | "version": "1.1.6",
2569 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
2570 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
2571 | "dev": true
2572 | },
2573 | "is-callable": {
2574 | "version": "1.1.4",
2575 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz",
2576 | "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==",
2577 | "dev": true
2578 | },
2579 | "is-ci": {
2580 | "version": "1.2.1",
2581 | "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz",
2582 | "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==",
2583 | "dev": true,
2584 | "requires": {
2585 | "ci-info": "^1.5.0"
2586 | }
2587 | },
2588 | "is-data-descriptor": {
2589 | "version": "0.1.4",
2590 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
2591 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
2592 | "dev": true,
2593 | "requires": {
2594 | "kind-of": "^3.0.2"
2595 | },
2596 | "dependencies": {
2597 | "kind-of": {
2598 | "version": "3.2.2",
2599 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2600 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2601 | "dev": true,
2602 | "requires": {
2603 | "is-buffer": "^1.1.5"
2604 | }
2605 | }
2606 | }
2607 | },
2608 | "is-date-object": {
2609 | "version": "1.0.1",
2610 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
2611 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=",
2612 | "dev": true
2613 | },
2614 | "is-descriptor": {
2615 | "version": "0.1.6",
2616 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
2617 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
2618 | "dev": true,
2619 | "requires": {
2620 | "is-accessor-descriptor": "^0.1.6",
2621 | "is-data-descriptor": "^0.1.4",
2622 | "kind-of": "^5.0.0"
2623 | },
2624 | "dependencies": {
2625 | "kind-of": {
2626 | "version": "5.1.0",
2627 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
2628 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
2629 | "dev": true
2630 | }
2631 | }
2632 | },
2633 | "is-extendable": {
2634 | "version": "0.1.1",
2635 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
2636 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
2637 | "dev": true
2638 | },
2639 | "is-extglob": {
2640 | "version": "2.1.1",
2641 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
2642 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
2643 | "dev": true
2644 | },
2645 | "is-fullwidth-code-point": {
2646 | "version": "2.0.0",
2647 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2648 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2649 | "dev": true
2650 | },
2651 | "is-glob": {
2652 | "version": "4.0.1",
2653 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
2654 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
2655 | "dev": true,
2656 | "requires": {
2657 | "is-extglob": "^2.1.1"
2658 | }
2659 | },
2660 | "is-installed-globally": {
2661 | "version": "0.1.0",
2662 | "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz",
2663 | "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=",
2664 | "dev": true,
2665 | "requires": {
2666 | "global-dirs": "^0.1.0",
2667 | "is-path-inside": "^1.0.0"
2668 | }
2669 | },
2670 | "is-npm": {
2671 | "version": "1.0.0",
2672 | "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz",
2673 | "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=",
2674 | "dev": true
2675 | },
2676 | "is-number": {
2677 | "version": "3.0.0",
2678 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
2679 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
2680 | "dev": true,
2681 | "requires": {
2682 | "kind-of": "^3.0.2"
2683 | },
2684 | "dependencies": {
2685 | "kind-of": {
2686 | "version": "3.2.2",
2687 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
2688 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
2689 | "dev": true,
2690 | "requires": {
2691 | "is-buffer": "^1.1.5"
2692 | }
2693 | }
2694 | }
2695 | },
2696 | "is-obj": {
2697 | "version": "1.0.1",
2698 | "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
2699 | "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
2700 | "dev": true
2701 | },
2702 | "is-path-inside": {
2703 | "version": "1.0.1",
2704 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
2705 | "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
2706 | "dev": true,
2707 | "requires": {
2708 | "path-is-inside": "^1.0.1"
2709 | }
2710 | },
2711 | "is-plain-object": {
2712 | "version": "2.0.4",
2713 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
2714 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
2715 | "dev": true,
2716 | "requires": {
2717 | "isobject": "^3.0.1"
2718 | }
2719 | },
2720 | "is-redirect": {
2721 | "version": "1.0.0",
2722 | "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz",
2723 | "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=",
2724 | "dev": true
2725 | },
2726 | "is-regex": {
2727 | "version": "1.0.4",
2728 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
2729 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
2730 | "dev": true,
2731 | "requires": {
2732 | "has": "^1.0.1"
2733 | }
2734 | },
2735 | "is-retry-allowed": {
2736 | "version": "1.2.0",
2737 | "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz",
2738 | "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==",
2739 | "dev": true
2740 | },
2741 | "is-stream": {
2742 | "version": "1.1.0",
2743 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
2744 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
2745 | "dev": true
2746 | },
2747 | "is-symbol": {
2748 | "version": "1.0.3",
2749 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
2750 | "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
2751 | "dev": true,
2752 | "requires": {
2753 | "has-symbols": "^1.0.1"
2754 | }
2755 | },
2756 | "is-windows": {
2757 | "version": "1.0.2",
2758 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
2759 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
2760 | "dev": true
2761 | },
2762 | "isarray": {
2763 | "version": "1.0.0",
2764 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2765 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2766 | "dev": true
2767 | },
2768 | "isexe": {
2769 | "version": "2.0.0",
2770 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
2771 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
2772 | "dev": true
2773 | },
2774 | "isobject": {
2775 | "version": "3.0.1",
2776 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
2777 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
2778 | "dev": true
2779 | },
2780 | "js-levenshtein": {
2781 | "version": "1.1.6",
2782 | "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz",
2783 | "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==",
2784 | "dev": true
2785 | },
2786 | "js-tokens": {
2787 | "version": "4.0.0",
2788 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
2789 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
2790 | "dev": true
2791 | },
2792 | "jsesc": {
2793 | "version": "2.5.2",
2794 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
2795 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
2796 | "dev": true
2797 | },
2798 | "json5": {
2799 | "version": "2.1.1",
2800 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz",
2801 | "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==",
2802 | "dev": true,
2803 | "requires": {
2804 | "minimist": "^1.2.0"
2805 | }
2806 | },
2807 | "kind-of": {
2808 | "version": "6.0.2",
2809 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
2810 | "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
2811 | "dev": true
2812 | },
2813 | "latest-version": {
2814 | "version": "3.1.0",
2815 | "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz",
2816 | "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=",
2817 | "dev": true,
2818 | "requires": {
2819 | "package-json": "^4.0.0"
2820 | }
2821 | },
2822 | "locate-path": {
2823 | "version": "3.0.0",
2824 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
2825 | "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
2826 | "dev": true,
2827 | "requires": {
2828 | "p-locate": "^3.0.0",
2829 | "path-exists": "^3.0.0"
2830 | }
2831 | },
2832 | "lodash": {
2833 | "version": "4.17.19",
2834 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
2835 | "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
2836 | "dev": true
2837 | },
2838 | "loose-envify": {
2839 | "version": "1.4.0",
2840 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
2841 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
2842 | "dev": true,
2843 | "requires": {
2844 | "js-tokens": "^3.0.0 || ^4.0.0"
2845 | }
2846 | },
2847 | "lowercase-keys": {
2848 | "version": "1.0.1",
2849 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
2850 | "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==",
2851 | "dev": true
2852 | },
2853 | "lru-cache": {
2854 | "version": "4.1.5",
2855 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
2856 | "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
2857 | "dev": true,
2858 | "requires": {
2859 | "pseudomap": "^1.0.2",
2860 | "yallist": "^2.1.2"
2861 | }
2862 | },
2863 | "make-dir": {
2864 | "version": "2.1.0",
2865 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
2866 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
2867 | "dev": true,
2868 | "requires": {
2869 | "pify": "^4.0.1",
2870 | "semver": "^5.6.0"
2871 | }
2872 | },
2873 | "map-cache": {
2874 | "version": "0.2.2",
2875 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
2876 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
2877 | "dev": true
2878 | },
2879 | "map-visit": {
2880 | "version": "1.0.0",
2881 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
2882 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
2883 | "dev": true,
2884 | "requires": {
2885 | "object-visit": "^1.0.0"
2886 | }
2887 | },
2888 | "micromatch": {
2889 | "version": "3.1.10",
2890 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
2891 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
2892 | "dev": true,
2893 | "requires": {
2894 | "arr-diff": "^4.0.0",
2895 | "array-unique": "^0.3.2",
2896 | "braces": "^2.3.1",
2897 | "define-property": "^2.0.2",
2898 | "extend-shallow": "^3.0.2",
2899 | "extglob": "^2.0.4",
2900 | "fragment-cache": "^0.2.1",
2901 | "kind-of": "^6.0.2",
2902 | "nanomatch": "^1.2.9",
2903 | "object.pick": "^1.3.0",
2904 | "regex-not": "^1.0.0",
2905 | "snapdragon": "^0.8.1",
2906 | "to-regex": "^3.0.2"
2907 | }
2908 | },
2909 | "minimatch": {
2910 | "version": "3.0.4",
2911 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
2912 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
2913 | "dev": true,
2914 | "requires": {
2915 | "brace-expansion": "^1.1.7"
2916 | }
2917 | },
2918 | "minimist": {
2919 | "version": "1.2.0",
2920 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
2921 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
2922 | },
2923 | "mixin-deep": {
2924 | "version": "1.3.2",
2925 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
2926 | "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
2927 | "dev": true,
2928 | "requires": {
2929 | "for-in": "^1.0.2",
2930 | "is-extendable": "^1.0.1"
2931 | },
2932 | "dependencies": {
2933 | "is-extendable": {
2934 | "version": "1.0.1",
2935 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
2936 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
2937 | "dev": true,
2938 | "requires": {
2939 | "is-plain-object": "^2.0.4"
2940 | }
2941 | }
2942 | }
2943 | },
2944 | "module-alias": {
2945 | "version": "2.2.2",
2946 | "resolved": "https://registry.npmjs.org/module-alias/-/module-alias-2.2.2.tgz",
2947 | "integrity": "sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q=="
2948 | },
2949 | "ms": {
2950 | "version": "2.0.0",
2951 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
2952 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
2953 | "dev": true
2954 | },
2955 | "nan": {
2956 | "version": "2.14.0",
2957 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz",
2958 | "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==",
2959 | "dev": true,
2960 | "optional": true
2961 | },
2962 | "nanomatch": {
2963 | "version": "1.2.13",
2964 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
2965 | "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
2966 | "dev": true,
2967 | "requires": {
2968 | "arr-diff": "^4.0.0",
2969 | "array-unique": "^0.3.2",
2970 | "define-property": "^2.0.2",
2971 | "extend-shallow": "^3.0.2",
2972 | "fragment-cache": "^0.2.1",
2973 | "is-windows": "^1.0.2",
2974 | "kind-of": "^6.0.2",
2975 | "object.pick": "^1.3.0",
2976 | "regex-not": "^1.0.0",
2977 | "snapdragon": "^0.8.1",
2978 | "to-regex": "^3.0.1"
2979 | }
2980 | },
2981 | "node-environment-flags": {
2982 | "version": "1.0.6",
2983 | "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz",
2984 | "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==",
2985 | "dev": true,
2986 | "requires": {
2987 | "object.getownpropertydescriptors": "^2.0.3",
2988 | "semver": "^5.7.0"
2989 | }
2990 | },
2991 | "node-fetch": {
2992 | "version": "2.6.0",
2993 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz",
2994 | "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA=="
2995 | },
2996 | "node-modules-regexp": {
2997 | "version": "1.0.0",
2998 | "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz",
2999 | "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=",
3000 | "dev": true
3001 | },
3002 | "node-releases": {
3003 | "version": "1.1.41",
3004 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.41.tgz",
3005 | "integrity": "sha512-+IctMa7wIs8Cfsa8iYzeaLTFwv5Y4r5jZud+4AnfymzeEXKBCavFX0KBgzVaPVqf0ywa6PrO8/b+bPqdwjGBSg==",
3006 | "dev": true,
3007 | "requires": {
3008 | "semver": "^6.3.0"
3009 | },
3010 | "dependencies": {
3011 | "semver": {
3012 | "version": "6.3.0",
3013 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
3014 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
3015 | "dev": true
3016 | }
3017 | }
3018 | },
3019 | "nodemon": {
3020 | "version": "1.19.4",
3021 | "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-1.19.4.tgz",
3022 | "integrity": "sha512-VGPaqQBNk193lrJFotBU8nvWZPqEZY2eIzymy2jjY0fJ9qIsxA0sxQ8ATPl0gZC645gijYEc1jtZvpS8QWzJGQ==",
3023 | "dev": true,
3024 | "requires": {
3025 | "chokidar": "^2.1.8",
3026 | "debug": "^3.2.6",
3027 | "ignore-by-default": "^1.0.1",
3028 | "minimatch": "^3.0.4",
3029 | "pstree.remy": "^1.1.7",
3030 | "semver": "^5.7.1",
3031 | "supports-color": "^5.5.0",
3032 | "touch": "^3.1.0",
3033 | "undefsafe": "^2.0.2",
3034 | "update-notifier": "^2.5.0"
3035 | },
3036 | "dependencies": {
3037 | "debug": {
3038 | "version": "3.2.6",
3039 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
3040 | "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
3041 | "dev": true,
3042 | "requires": {
3043 | "ms": "^2.1.1"
3044 | }
3045 | },
3046 | "ms": {
3047 | "version": "2.1.2",
3048 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3049 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
3050 | "dev": true
3051 | }
3052 | }
3053 | },
3054 | "nopt": {
3055 | "version": "1.0.10",
3056 | "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
3057 | "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
3058 | "dev": true,
3059 | "requires": {
3060 | "abbrev": "1"
3061 | }
3062 | },
3063 | "normalize-path": {
3064 | "version": "3.0.0",
3065 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
3066 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
3067 | "dev": true
3068 | },
3069 | "npm-run-path": {
3070 | "version": "2.0.2",
3071 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
3072 | "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
3073 | "dev": true,
3074 | "requires": {
3075 | "path-key": "^2.0.0"
3076 | }
3077 | },
3078 | "object-copy": {
3079 | "version": "0.1.0",
3080 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
3081 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
3082 | "dev": true,
3083 | "requires": {
3084 | "copy-descriptor": "^0.1.0",
3085 | "define-property": "^0.2.5",
3086 | "kind-of": "^3.0.3"
3087 | },
3088 | "dependencies": {
3089 | "define-property": {
3090 | "version": "0.2.5",
3091 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
3092 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
3093 | "dev": true,
3094 | "requires": {
3095 | "is-descriptor": "^0.1.0"
3096 | }
3097 | },
3098 | "kind-of": {
3099 | "version": "3.2.2",
3100 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3101 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3102 | "dev": true,
3103 | "requires": {
3104 | "is-buffer": "^1.1.5"
3105 | }
3106 | }
3107 | }
3108 | },
3109 | "object-inspect": {
3110 | "version": "1.7.0",
3111 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz",
3112 | "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==",
3113 | "dev": true
3114 | },
3115 | "object-keys": {
3116 | "version": "1.1.1",
3117 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
3118 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
3119 | "dev": true
3120 | },
3121 | "object-visit": {
3122 | "version": "1.0.1",
3123 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
3124 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
3125 | "dev": true,
3126 | "requires": {
3127 | "isobject": "^3.0.0"
3128 | }
3129 | },
3130 | "object.assign": {
3131 | "version": "4.1.0",
3132 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
3133 | "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
3134 | "dev": true,
3135 | "requires": {
3136 | "define-properties": "^1.1.2",
3137 | "function-bind": "^1.1.1",
3138 | "has-symbols": "^1.0.0",
3139 | "object-keys": "^1.0.11"
3140 | }
3141 | },
3142 | "object.getownpropertydescriptors": {
3143 | "version": "2.0.3",
3144 | "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz",
3145 | "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=",
3146 | "dev": true,
3147 | "requires": {
3148 | "define-properties": "^1.1.2",
3149 | "es-abstract": "^1.5.1"
3150 | }
3151 | },
3152 | "object.pick": {
3153 | "version": "1.3.0",
3154 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
3155 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
3156 | "dev": true,
3157 | "requires": {
3158 | "isobject": "^3.0.1"
3159 | }
3160 | },
3161 | "once": {
3162 | "version": "1.4.0",
3163 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
3164 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
3165 | "dev": true,
3166 | "requires": {
3167 | "wrappy": "1"
3168 | }
3169 | },
3170 | "p-finally": {
3171 | "version": "1.0.0",
3172 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
3173 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
3174 | "dev": true
3175 | },
3176 | "p-limit": {
3177 | "version": "2.2.1",
3178 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz",
3179 | "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==",
3180 | "dev": true,
3181 | "requires": {
3182 | "p-try": "^2.0.0"
3183 | }
3184 | },
3185 | "p-locate": {
3186 | "version": "3.0.0",
3187 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
3188 | "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
3189 | "dev": true,
3190 | "requires": {
3191 | "p-limit": "^2.0.0"
3192 | }
3193 | },
3194 | "p-try": {
3195 | "version": "2.2.0",
3196 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
3197 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
3198 | "dev": true
3199 | },
3200 | "package-json": {
3201 | "version": "4.0.1",
3202 | "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz",
3203 | "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=",
3204 | "dev": true,
3205 | "requires": {
3206 | "got": "^6.7.1",
3207 | "registry-auth-token": "^3.0.1",
3208 | "registry-url": "^3.0.3",
3209 | "semver": "^5.1.0"
3210 | }
3211 | },
3212 | "parse-passwd": {
3213 | "version": "1.0.0",
3214 | "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
3215 | "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
3216 | "dev": true
3217 | },
3218 | "pascalcase": {
3219 | "version": "0.1.1",
3220 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
3221 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
3222 | "dev": true
3223 | },
3224 | "path-dirname": {
3225 | "version": "1.0.2",
3226 | "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
3227 | "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
3228 | "dev": true
3229 | },
3230 | "path-exists": {
3231 | "version": "3.0.0",
3232 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
3233 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
3234 | "dev": true
3235 | },
3236 | "path-is-absolute": {
3237 | "version": "1.0.1",
3238 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
3239 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
3240 | "dev": true
3241 | },
3242 | "path-is-inside": {
3243 | "version": "1.0.2",
3244 | "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
3245 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
3246 | "dev": true
3247 | },
3248 | "path-key": {
3249 | "version": "2.0.1",
3250 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
3251 | "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
3252 | "dev": true
3253 | },
3254 | "path-parse": {
3255 | "version": "1.0.6",
3256 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
3257 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
3258 | "dev": true
3259 | },
3260 | "pify": {
3261 | "version": "4.0.1",
3262 | "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
3263 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
3264 | "dev": true
3265 | },
3266 | "pirates": {
3267 | "version": "4.0.1",
3268 | "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz",
3269 | "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==",
3270 | "dev": true,
3271 | "requires": {
3272 | "node-modules-regexp": "^1.0.0"
3273 | }
3274 | },
3275 | "pkg-dir": {
3276 | "version": "3.0.0",
3277 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
3278 | "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
3279 | "dev": true,
3280 | "requires": {
3281 | "find-up": "^3.0.0"
3282 | }
3283 | },
3284 | "posix-character-classes": {
3285 | "version": "0.1.1",
3286 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
3287 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
3288 | "dev": true
3289 | },
3290 | "prepend-http": {
3291 | "version": "1.0.4",
3292 | "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
3293 | "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
3294 | "dev": true
3295 | },
3296 | "private": {
3297 | "version": "0.1.8",
3298 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
3299 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
3300 | "dev": true
3301 | },
3302 | "process-nextick-args": {
3303 | "version": "2.0.1",
3304 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
3305 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
3306 | "dev": true
3307 | },
3308 | "pseudomap": {
3309 | "version": "1.0.2",
3310 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
3311 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
3312 | "dev": true
3313 | },
3314 | "pstree.remy": {
3315 | "version": "1.1.7",
3316 | "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.7.tgz",
3317 | "integrity": "sha512-xsMgrUwRpuGskEzBFkH8NmTimbZ5PcPup0LA8JJkHIm2IMUbQcpo3yeLNWVrufEYjh8YwtSVh0xz6UeWc5Oh5A==",
3318 | "dev": true
3319 | },
3320 | "rc": {
3321 | "version": "1.2.8",
3322 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
3323 | "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
3324 | "dev": true,
3325 | "requires": {
3326 | "deep-extend": "^0.6.0",
3327 | "ini": "~1.3.0",
3328 | "minimist": "^1.2.0",
3329 | "strip-json-comments": "~2.0.1"
3330 | }
3331 | },
3332 | "readable-stream": {
3333 | "version": "2.3.6",
3334 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
3335 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
3336 | "dev": true,
3337 | "requires": {
3338 | "core-util-is": "~1.0.0",
3339 | "inherits": "~2.0.3",
3340 | "isarray": "~1.0.0",
3341 | "process-nextick-args": "~2.0.0",
3342 | "safe-buffer": "~5.1.1",
3343 | "string_decoder": "~1.1.1",
3344 | "util-deprecate": "~1.0.1"
3345 | }
3346 | },
3347 | "readdirp": {
3348 | "version": "2.2.1",
3349 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
3350 | "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
3351 | "dev": true,
3352 | "requires": {
3353 | "graceful-fs": "^4.1.11",
3354 | "micromatch": "^3.1.10",
3355 | "readable-stream": "^2.0.2"
3356 | }
3357 | },
3358 | "regenerate": {
3359 | "version": "1.4.0",
3360 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz",
3361 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==",
3362 | "dev": true
3363 | },
3364 | "regenerate-unicode-properties": {
3365 | "version": "8.1.0",
3366 | "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz",
3367 | "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==",
3368 | "dev": true,
3369 | "requires": {
3370 | "regenerate": "^1.4.0"
3371 | }
3372 | },
3373 | "regenerator-runtime": {
3374 | "version": "0.13.3",
3375 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
3376 | "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
3377 | "dev": true
3378 | },
3379 | "regenerator-transform": {
3380 | "version": "0.14.1",
3381 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz",
3382 | "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==",
3383 | "dev": true,
3384 | "requires": {
3385 | "private": "^0.1.6"
3386 | }
3387 | },
3388 | "regex-not": {
3389 | "version": "1.0.2",
3390 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
3391 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
3392 | "dev": true,
3393 | "requires": {
3394 | "extend-shallow": "^3.0.2",
3395 | "safe-regex": "^1.1.0"
3396 | }
3397 | },
3398 | "regexpu-core": {
3399 | "version": "4.6.0",
3400 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz",
3401 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==",
3402 | "dev": true,
3403 | "requires": {
3404 | "regenerate": "^1.4.0",
3405 | "regenerate-unicode-properties": "^8.1.0",
3406 | "regjsgen": "^0.5.0",
3407 | "regjsparser": "^0.6.0",
3408 | "unicode-match-property-ecmascript": "^1.0.4",
3409 | "unicode-match-property-value-ecmascript": "^1.1.0"
3410 | }
3411 | },
3412 | "registry-auth-token": {
3413 | "version": "3.4.0",
3414 | "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz",
3415 | "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==",
3416 | "dev": true,
3417 | "requires": {
3418 | "rc": "^1.1.6",
3419 | "safe-buffer": "^5.0.1"
3420 | }
3421 | },
3422 | "registry-url": {
3423 | "version": "3.1.0",
3424 | "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz",
3425 | "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=",
3426 | "dev": true,
3427 | "requires": {
3428 | "rc": "^1.0.1"
3429 | }
3430 | },
3431 | "regjsgen": {
3432 | "version": "0.5.1",
3433 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz",
3434 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==",
3435 | "dev": true
3436 | },
3437 | "regjsparser": {
3438 | "version": "0.6.0",
3439 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz",
3440 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==",
3441 | "dev": true,
3442 | "requires": {
3443 | "jsesc": "~0.5.0"
3444 | },
3445 | "dependencies": {
3446 | "jsesc": {
3447 | "version": "0.5.0",
3448 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
3449 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
3450 | "dev": true
3451 | }
3452 | }
3453 | },
3454 | "remove-trailing-separator": {
3455 | "version": "1.1.0",
3456 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
3457 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
3458 | "dev": true
3459 | },
3460 | "repeat-element": {
3461 | "version": "1.1.3",
3462 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
3463 | "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
3464 | "dev": true
3465 | },
3466 | "repeat-string": {
3467 | "version": "1.6.1",
3468 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
3469 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
3470 | "dev": true
3471 | },
3472 | "resolve": {
3473 | "version": "1.13.1",
3474 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.13.1.tgz",
3475 | "integrity": "sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w==",
3476 | "dev": true,
3477 | "requires": {
3478 | "path-parse": "^1.0.6"
3479 | }
3480 | },
3481 | "resolve-url": {
3482 | "version": "0.2.1",
3483 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
3484 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
3485 | "dev": true
3486 | },
3487 | "ret": {
3488 | "version": "0.1.15",
3489 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
3490 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
3491 | "dev": true
3492 | },
3493 | "safe-buffer": {
3494 | "version": "5.1.2",
3495 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
3496 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
3497 | "dev": true
3498 | },
3499 | "safe-regex": {
3500 | "version": "1.1.0",
3501 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
3502 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
3503 | "dev": true,
3504 | "requires": {
3505 | "ret": "~0.1.10"
3506 | }
3507 | },
3508 | "sandwich-stream": {
3509 | "version": "2.0.2",
3510 | "resolved": "https://registry.npmjs.org/sandwich-stream/-/sandwich-stream-2.0.2.tgz",
3511 | "integrity": "sha512-jLYV0DORrzY3xaz/S9ydJL6Iz7essZeAfnAavsJ+zsJGZ1MOnsS52yRjU3uF3pJa/lla7+wisp//fxOwOH8SKQ=="
3512 | },
3513 | "sax": {
3514 | "version": "1.2.4",
3515 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
3516 | "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
3517 | },
3518 | "semver": {
3519 | "version": "5.7.1",
3520 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
3521 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
3522 | "dev": true
3523 | },
3524 | "semver-diff": {
3525 | "version": "2.1.0",
3526 | "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz",
3527 | "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=",
3528 | "dev": true,
3529 | "requires": {
3530 | "semver": "^5.0.3"
3531 | }
3532 | },
3533 | "set-value": {
3534 | "version": "2.0.1",
3535 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
3536 | "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
3537 | "dev": true,
3538 | "requires": {
3539 | "extend-shallow": "^2.0.1",
3540 | "is-extendable": "^0.1.1",
3541 | "is-plain-object": "^2.0.3",
3542 | "split-string": "^3.0.1"
3543 | },
3544 | "dependencies": {
3545 | "extend-shallow": {
3546 | "version": "2.0.1",
3547 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
3548 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
3549 | "dev": true,
3550 | "requires": {
3551 | "is-extendable": "^0.1.0"
3552 | }
3553 | }
3554 | }
3555 | },
3556 | "shebang-command": {
3557 | "version": "1.2.0",
3558 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
3559 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
3560 | "dev": true,
3561 | "requires": {
3562 | "shebang-regex": "^1.0.0"
3563 | }
3564 | },
3565 | "shebang-regex": {
3566 | "version": "1.0.0",
3567 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
3568 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
3569 | "dev": true
3570 | },
3571 | "signal-exit": {
3572 | "version": "3.0.2",
3573 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
3574 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
3575 | "dev": true
3576 | },
3577 | "slash": {
3578 | "version": "2.0.0",
3579 | "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
3580 | "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==",
3581 | "dev": true
3582 | },
3583 | "snapdragon": {
3584 | "version": "0.8.2",
3585 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
3586 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
3587 | "dev": true,
3588 | "requires": {
3589 | "base": "^0.11.1",
3590 | "debug": "^2.2.0",
3591 | "define-property": "^0.2.5",
3592 | "extend-shallow": "^2.0.1",
3593 | "map-cache": "^0.2.2",
3594 | "source-map": "^0.5.6",
3595 | "source-map-resolve": "^0.5.0",
3596 | "use": "^3.1.0"
3597 | },
3598 | "dependencies": {
3599 | "define-property": {
3600 | "version": "0.2.5",
3601 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
3602 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
3603 | "dev": true,
3604 | "requires": {
3605 | "is-descriptor": "^0.1.0"
3606 | }
3607 | },
3608 | "extend-shallow": {
3609 | "version": "2.0.1",
3610 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
3611 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
3612 | "dev": true,
3613 | "requires": {
3614 | "is-extendable": "^0.1.0"
3615 | }
3616 | }
3617 | }
3618 | },
3619 | "snapdragon-node": {
3620 | "version": "2.1.1",
3621 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
3622 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
3623 | "dev": true,
3624 | "requires": {
3625 | "define-property": "^1.0.0",
3626 | "isobject": "^3.0.0",
3627 | "snapdragon-util": "^3.0.1"
3628 | },
3629 | "dependencies": {
3630 | "define-property": {
3631 | "version": "1.0.0",
3632 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
3633 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
3634 | "dev": true,
3635 | "requires": {
3636 | "is-descriptor": "^1.0.0"
3637 | }
3638 | },
3639 | "is-accessor-descriptor": {
3640 | "version": "1.0.0",
3641 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
3642 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
3643 | "dev": true,
3644 | "requires": {
3645 | "kind-of": "^6.0.0"
3646 | }
3647 | },
3648 | "is-data-descriptor": {
3649 | "version": "1.0.0",
3650 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
3651 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
3652 | "dev": true,
3653 | "requires": {
3654 | "kind-of": "^6.0.0"
3655 | }
3656 | },
3657 | "is-descriptor": {
3658 | "version": "1.0.2",
3659 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
3660 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
3661 | "dev": true,
3662 | "requires": {
3663 | "is-accessor-descriptor": "^1.0.0",
3664 | "is-data-descriptor": "^1.0.0",
3665 | "kind-of": "^6.0.2"
3666 | }
3667 | }
3668 | }
3669 | },
3670 | "snapdragon-util": {
3671 | "version": "3.0.1",
3672 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
3673 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
3674 | "dev": true,
3675 | "requires": {
3676 | "kind-of": "^3.2.0"
3677 | },
3678 | "dependencies": {
3679 | "kind-of": {
3680 | "version": "3.2.2",
3681 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3682 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3683 | "dev": true,
3684 | "requires": {
3685 | "is-buffer": "^1.1.5"
3686 | }
3687 | }
3688 | }
3689 | },
3690 | "source-map": {
3691 | "version": "0.5.7",
3692 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
3693 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
3694 | "dev": true
3695 | },
3696 | "source-map-resolve": {
3697 | "version": "0.5.2",
3698 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz",
3699 | "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==",
3700 | "dev": true,
3701 | "requires": {
3702 | "atob": "^2.1.1",
3703 | "decode-uri-component": "^0.2.0",
3704 | "resolve-url": "^0.2.1",
3705 | "source-map-url": "^0.4.0",
3706 | "urix": "^0.1.0"
3707 | }
3708 | },
3709 | "source-map-support": {
3710 | "version": "0.5.16",
3711 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz",
3712 | "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==",
3713 | "dev": true,
3714 | "requires": {
3715 | "buffer-from": "^1.0.0",
3716 | "source-map": "^0.6.0"
3717 | },
3718 | "dependencies": {
3719 | "source-map": {
3720 | "version": "0.6.1",
3721 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
3722 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
3723 | "dev": true
3724 | }
3725 | }
3726 | },
3727 | "source-map-url": {
3728 | "version": "0.4.0",
3729 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
3730 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
3731 | "dev": true
3732 | },
3733 | "split-string": {
3734 | "version": "3.1.0",
3735 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
3736 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
3737 | "dev": true,
3738 | "requires": {
3739 | "extend-shallow": "^3.0.0"
3740 | }
3741 | },
3742 | "static-extend": {
3743 | "version": "0.1.2",
3744 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
3745 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
3746 | "dev": true,
3747 | "requires": {
3748 | "define-property": "^0.2.5",
3749 | "object-copy": "^0.1.0"
3750 | },
3751 | "dependencies": {
3752 | "define-property": {
3753 | "version": "0.2.5",
3754 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
3755 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
3756 | "dev": true,
3757 | "requires": {
3758 | "is-descriptor": "^0.1.0"
3759 | }
3760 | }
3761 | }
3762 | },
3763 | "string-width": {
3764 | "version": "2.1.1",
3765 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
3766 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
3767 | "dev": true,
3768 | "requires": {
3769 | "is-fullwidth-code-point": "^2.0.0",
3770 | "strip-ansi": "^4.0.0"
3771 | }
3772 | },
3773 | "string.prototype.trimleft": {
3774 | "version": "2.1.0",
3775 | "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz",
3776 | "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==",
3777 | "dev": true,
3778 | "requires": {
3779 | "define-properties": "^1.1.3",
3780 | "function-bind": "^1.1.1"
3781 | }
3782 | },
3783 | "string.prototype.trimright": {
3784 | "version": "2.1.0",
3785 | "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz",
3786 | "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==",
3787 | "dev": true,
3788 | "requires": {
3789 | "define-properties": "^1.1.3",
3790 | "function-bind": "^1.1.1"
3791 | }
3792 | },
3793 | "string_decoder": {
3794 | "version": "1.1.1",
3795 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
3796 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
3797 | "dev": true,
3798 | "requires": {
3799 | "safe-buffer": "~5.1.0"
3800 | }
3801 | },
3802 | "strip-ansi": {
3803 | "version": "4.0.0",
3804 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
3805 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
3806 | "dev": true,
3807 | "requires": {
3808 | "ansi-regex": "^3.0.0"
3809 | }
3810 | },
3811 | "strip-eof": {
3812 | "version": "1.0.0",
3813 | "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
3814 | "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
3815 | "dev": true
3816 | },
3817 | "strip-json-comments": {
3818 | "version": "2.0.1",
3819 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
3820 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
3821 | "dev": true
3822 | },
3823 | "supports-color": {
3824 | "version": "5.5.0",
3825 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
3826 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
3827 | "dev": true,
3828 | "requires": {
3829 | "has-flag": "^3.0.0"
3830 | }
3831 | },
3832 | "telegraf": {
3833 | "version": "3.34.1",
3834 | "resolved": "https://registry.npmjs.org/telegraf/-/telegraf-3.34.1.tgz",
3835 | "integrity": "sha512-XKempUafzdi3TrPIA/jo2e7sRoLjE7oexgYTzQ7BeWHPnEi+Wh5EvOroOElSD9V4SCt9bub3HM352VK7dJS8Zw==",
3836 | "requires": {
3837 | "@types/node": "^12.0.4",
3838 | "debug": "^4.0.1",
3839 | "minimist": "^1.2.0",
3840 | "module-alias": "^2.2.2",
3841 | "node-fetch": "^2.2.0",
3842 | "sandwich-stream": "^2.0.1",
3843 | "telegram-typings": "^3.6.0"
3844 | },
3845 | "dependencies": {
3846 | "debug": {
3847 | "version": "4.1.1",
3848 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
3849 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
3850 | "requires": {
3851 | "ms": "^2.1.1"
3852 | }
3853 | },
3854 | "ms": {
3855 | "version": "2.1.2",
3856 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
3857 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
3858 | }
3859 | }
3860 | },
3861 | "telegram-typings": {
3862 | "version": "3.6.1",
3863 | "resolved": "https://registry.npmjs.org/telegram-typings/-/telegram-typings-3.6.1.tgz",
3864 | "integrity": "sha512-njVv1EAhIZnmQVLocZEADYUyqA1WIXuVcDYlsp+mXua/XB0pxx+PKtMSPeZ/EE4wPWTw9h/hA9ASTT6yQelkiw=="
3865 | },
3866 | "term-size": {
3867 | "version": "1.2.0",
3868 | "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz",
3869 | "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=",
3870 | "dev": true,
3871 | "requires": {
3872 | "execa": "^0.7.0"
3873 | }
3874 | },
3875 | "timed-out": {
3876 | "version": "4.0.1",
3877 | "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz",
3878 | "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=",
3879 | "dev": true
3880 | },
3881 | "to-fast-properties": {
3882 | "version": "2.0.0",
3883 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
3884 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
3885 | "dev": true
3886 | },
3887 | "to-object-path": {
3888 | "version": "0.3.0",
3889 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
3890 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
3891 | "dev": true,
3892 | "requires": {
3893 | "kind-of": "^3.0.2"
3894 | },
3895 | "dependencies": {
3896 | "kind-of": {
3897 | "version": "3.2.2",
3898 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3899 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3900 | "dev": true,
3901 | "requires": {
3902 | "is-buffer": "^1.1.5"
3903 | }
3904 | }
3905 | }
3906 | },
3907 | "to-regex": {
3908 | "version": "3.0.2",
3909 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
3910 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
3911 | "dev": true,
3912 | "requires": {
3913 | "define-property": "^2.0.2",
3914 | "extend-shallow": "^3.0.2",
3915 | "regex-not": "^1.0.2",
3916 | "safe-regex": "^1.1.0"
3917 | }
3918 | },
3919 | "to-regex-range": {
3920 | "version": "2.1.1",
3921 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
3922 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
3923 | "dev": true,
3924 | "requires": {
3925 | "is-number": "^3.0.0",
3926 | "repeat-string": "^1.6.1"
3927 | }
3928 | },
3929 | "touch": {
3930 | "version": "3.1.0",
3931 | "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz",
3932 | "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==",
3933 | "dev": true,
3934 | "requires": {
3935 | "nopt": "~1.0.10"
3936 | }
3937 | },
3938 | "undefsafe": {
3939 | "version": "2.0.2",
3940 | "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz",
3941 | "integrity": "sha1-Il9rngM3Zj4Njnz9aG/Cg2zKznY=",
3942 | "dev": true,
3943 | "requires": {
3944 | "debug": "^2.2.0"
3945 | }
3946 | },
3947 | "unicode-canonical-property-names-ecmascript": {
3948 | "version": "1.0.4",
3949 | "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
3950 | "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
3951 | "dev": true
3952 | },
3953 | "unicode-match-property-ecmascript": {
3954 | "version": "1.0.4",
3955 | "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
3956 | "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
3957 | "dev": true,
3958 | "requires": {
3959 | "unicode-canonical-property-names-ecmascript": "^1.0.4",
3960 | "unicode-property-aliases-ecmascript": "^1.0.4"
3961 | }
3962 | },
3963 | "unicode-match-property-value-ecmascript": {
3964 | "version": "1.1.0",
3965 | "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz",
3966 | "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==",
3967 | "dev": true
3968 | },
3969 | "unicode-property-aliases-ecmascript": {
3970 | "version": "1.0.5",
3971 | "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz",
3972 | "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==",
3973 | "dev": true
3974 | },
3975 | "union-value": {
3976 | "version": "1.0.1",
3977 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
3978 | "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
3979 | "dev": true,
3980 | "requires": {
3981 | "arr-union": "^3.1.0",
3982 | "get-value": "^2.0.6",
3983 | "is-extendable": "^0.1.1",
3984 | "set-value": "^2.0.1"
3985 | }
3986 | },
3987 | "unique-string": {
3988 | "version": "1.0.0",
3989 | "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz",
3990 | "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=",
3991 | "dev": true,
3992 | "requires": {
3993 | "crypto-random-string": "^1.0.0"
3994 | }
3995 | },
3996 | "unset-value": {
3997 | "version": "1.0.0",
3998 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
3999 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
4000 | "dev": true,
4001 | "requires": {
4002 | "has-value": "^0.3.1",
4003 | "isobject": "^3.0.0"
4004 | },
4005 | "dependencies": {
4006 | "has-value": {
4007 | "version": "0.3.1",
4008 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
4009 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
4010 | "dev": true,
4011 | "requires": {
4012 | "get-value": "^2.0.3",
4013 | "has-values": "^0.1.4",
4014 | "isobject": "^2.0.0"
4015 | },
4016 | "dependencies": {
4017 | "isobject": {
4018 | "version": "2.1.0",
4019 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
4020 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
4021 | "dev": true,
4022 | "requires": {
4023 | "isarray": "1.0.0"
4024 | }
4025 | }
4026 | }
4027 | },
4028 | "has-values": {
4029 | "version": "0.1.4",
4030 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
4031 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
4032 | "dev": true
4033 | }
4034 | }
4035 | },
4036 | "unzip-response": {
4037 | "version": "2.0.1",
4038 | "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz",
4039 | "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=",
4040 | "dev": true
4041 | },
4042 | "upath": {
4043 | "version": "1.2.0",
4044 | "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
4045 | "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
4046 | "dev": true
4047 | },
4048 | "update-notifier": {
4049 | "version": "2.5.0",
4050 | "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz",
4051 | "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==",
4052 | "dev": true,
4053 | "requires": {
4054 | "boxen": "^1.2.1",
4055 | "chalk": "^2.0.1",
4056 | "configstore": "^3.0.0",
4057 | "import-lazy": "^2.1.0",
4058 | "is-ci": "^1.0.10",
4059 | "is-installed-globally": "^0.1.0",
4060 | "is-npm": "^1.0.0",
4061 | "latest-version": "^3.0.0",
4062 | "semver-diff": "^2.0.0",
4063 | "xdg-basedir": "^3.0.0"
4064 | }
4065 | },
4066 | "urix": {
4067 | "version": "0.1.0",
4068 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
4069 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
4070 | "dev": true
4071 | },
4072 | "url-parse-lax": {
4073 | "version": "1.0.0",
4074 | "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
4075 | "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=",
4076 | "dev": true,
4077 | "requires": {
4078 | "prepend-http": "^1.0.1"
4079 | }
4080 | },
4081 | "use": {
4082 | "version": "3.1.1",
4083 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
4084 | "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
4085 | "dev": true
4086 | },
4087 | "util-deprecate": {
4088 | "version": "1.0.2",
4089 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
4090 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
4091 | "dev": true
4092 | },
4093 | "v8flags": {
4094 | "version": "3.1.3",
4095 | "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz",
4096 | "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==",
4097 | "dev": true,
4098 | "requires": {
4099 | "homedir-polyfill": "^1.0.1"
4100 | }
4101 | },
4102 | "which": {
4103 | "version": "1.3.1",
4104 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
4105 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
4106 | "dev": true,
4107 | "requires": {
4108 | "isexe": "^2.0.0"
4109 | }
4110 | },
4111 | "widest-line": {
4112 | "version": "2.0.1",
4113 | "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz",
4114 | "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==",
4115 | "dev": true,
4116 | "requires": {
4117 | "string-width": "^2.1.1"
4118 | }
4119 | },
4120 | "wrappy": {
4121 | "version": "1.0.2",
4122 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
4123 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
4124 | "dev": true
4125 | },
4126 | "write-file-atomic": {
4127 | "version": "2.4.3",
4128 | "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz",
4129 | "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==",
4130 | "dev": true,
4131 | "requires": {
4132 | "graceful-fs": "^4.1.11",
4133 | "imurmurhash": "^0.1.4",
4134 | "signal-exit": "^3.0.2"
4135 | }
4136 | },
4137 | "xdg-basedir": {
4138 | "version": "3.0.0",
4139 | "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz",
4140 | "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=",
4141 | "dev": true
4142 | },
4143 | "xml2js": {
4144 | "version": "0.4.19",
4145 | "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz",
4146 | "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==",
4147 | "requires": {
4148 | "sax": ">=0.6.0",
4149 | "xmlbuilder": "~9.0.1"
4150 | }
4151 | },
4152 | "xml2js-es6-promise": {
4153 | "version": "1.1.1",
4154 | "resolved": "https://registry.npmjs.org/xml2js-es6-promise/-/xml2js-es6-promise-1.1.1.tgz",
4155 | "integrity": "sha1-zVaI2dY0TmfJCPceWwo9iNEo6aI=",
4156 | "requires": {
4157 | "xml2js": "^0.4.16"
4158 | }
4159 | },
4160 | "xmlbuilder": {
4161 | "version": "9.0.7",
4162 | "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
4163 | "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0="
4164 | },
4165 | "yallist": {
4166 | "version": "2.1.2",
4167 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
4168 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
4169 | "dev": true
4170 | }
4171 | }
4172 | }
4173 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "books-and-bot",
3 | "version": "1.0.0",
4 | "description": "Telegram bot",
5 | "main": "dist/index.js",
6 | "scripts": {
7 | "start": "nodemon --exec babel-node src/index.js",
8 | "build": "babel src --out-dir dist",
9 | "serve": "node dist/index.js"
10 | },
11 | "author": "dmtrbrl (https://github.com/dmtrbrl)",
12 | "license": "ISC",
13 | "dependencies": {
14 | "babel-polyfill": "^6.26.0",
15 | "dotenv": "^8.2.0",
16 | "node-fetch": "^2.6.0",
17 | "telegraf": "^3.34.1",
18 | "xml2js-es6-promise": "^1.1.1"
19 | },
20 | "devDependencies": {
21 | "@babel/cli": "^7.7.4",
22 | "@babel/core": "^7.7.4",
23 | "@babel/node": "^7.7.4",
24 | "@babel/plugin-transform-runtime": "^7.7.4",
25 | "@babel/preset-env": "^7.7.4",
26 | "@babel/runtime": "^7.7.4",
27 | "nodemon": "^1.19.4"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import { } from "dotenv/config";
2 | import Telegraf from "telegraf";
3 | import searchBooks from "./searchBooks";
4 |
5 | const BOT_TOKEN = process.env.BOT_TOKEN || "";
6 | const PORT = process.env.PORT || 3000;
7 | const URL = process.env.URL || "https://books-and-bot.herokuapp.com/";
8 |
9 | const createMessageText = book => {
10 | return `
11 | ${book.title}
12 | ${book.author}
13 | `;
14 | };
15 |
16 | const bot = new Telegraf(BOT_TOKEN);
17 | bot.on("inline_query", async ctx => {
18 | const searchResults = await searchBooks(ctx.inlineQuery.query);
19 | const results =
20 | searchResults && searchResults.length
21 | ? searchResults.map((book, id) => ({
22 | id,
23 | type: "article",
24 | title: book.title,
25 | description: book.author,
26 | thumb_url: book.thumb_url,
27 | input_message_content: {
28 | message_text: createMessageText(book),
29 | parse_mode: "HTML"
30 | },
31 | reply_markup: {
32 | inline_keyboard: [
33 | [
34 | {
35 | text: "Show on Goodreads",
36 | url: book.url
37 | }
38 | ]
39 | ]
40 | }
41 | }))
42 | : [];
43 | ctx.answerInlineQuery(results);
44 | });
45 | bot.telegram.setWebhook(`${URL}/bot${BOT_TOKEN}`);
46 | bot.startWebhook(`/bot${BOT_TOKEN}`, null, PORT);
47 | bot.launch();
48 |
--------------------------------------------------------------------------------
/src/searchBooks.js:
--------------------------------------------------------------------------------
1 | import {} from "dotenv/config";
2 | import fetch from "node-fetch";
3 | import querystring from "querystring";
4 | import xml2js from "xml2js-es6-promise";
5 |
6 | export default async query => {
7 | if (!query) return null;
8 | query = querystring.escape(query);
9 | let data = null;
10 | const url = `https://www.goodreads.com/search/index.xml?key=${
11 | process.env.GOODREADS_API_KEY
12 | }&q=${query}&field=title`;
13 |
14 | try {
15 | const response = await fetch(url);
16 | const text = await response.text();
17 | const js = await xml2js(text);
18 |
19 | if (js.GoodreadsResponse)
20 | data = js.GoodreadsResponse.search[0].results[0].work.map(result => {
21 | const book = result.best_book[0];
22 | let title = book.title[0];
23 | let author = `by ${book.author.map(a => a.name).join(", ")}`;
24 | let url = `https://www.goodreads.com/book/show/${book.id[0]._}`;
25 | let thumb_url = book.image_url[0];
26 | let cover_url = null;
27 |
28 | // Using dirty and unstable way to get a book cover :(
29 | if (thumb_url.indexOf("._SX") !== -1) {
30 | let n = thumb_url.lastIndexOf("._SX");
31 | cover_url = `${thumb_url.slice(0, n)}._SY400_.jpg`;
32 | } else if (thumb_url.indexOf("._SY") !== -1) {
33 | let n = thumb_url.lastIndexOf("._SY");
34 | cover_url = `${thumb_url.slice(0, n)}._SY400_.jpg`;
35 | } else {
36 | cover_url = thumb_url;
37 | }
38 |
39 | return {
40 | title,
41 | author,
42 | url,
43 | thumb_url,
44 | cover_url
45 | };
46 | });
47 | } catch (error) {
48 | console.log(error);
49 | }
50 |
51 | return data;
52 | };
53 |
--------------------------------------------------------------------------------