MinsoftK
...@@ -1180,6 +1180,12 @@ ...@@ -1180,6 +1180,12 @@
1180 "tslib": "^1.9.3" 1180 "tslib": "^1.9.3"
1181 } 1181 }
1182 }, 1182 },
1183 + "abab": {
1184 + "version": "1.0.4",
1185 + "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz",
1186 + "integrity": "sha1-X6rZwsB/YN12dw9xzwJbYqY8/U4=",
1187 + "optional": true
1188 + },
1183 "abbrev": { 1189 "abbrev": {
1184 "version": "1.1.1", 1190 "version": "1.1.1",
1185 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 1191 "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
...@@ -1195,6 +1201,21 @@ ...@@ -1195,6 +1201,21 @@
1195 "negotiator": "0.6.2" 1201 "negotiator": "0.6.2"
1196 } 1202 }
1197 }, 1203 },
1204 + "acorn": {
1205 + "version": "2.7.0",
1206 + "resolved": "https://registry.npmjs.org/acorn/-/acorn-2.7.0.tgz",
1207 + "integrity": "sha1-q259nYhqrKiwhbwzEreaGYQz8Oc=",
1208 + "optional": true
1209 + },
1210 + "acorn-globals": {
1211 + "version": "1.0.9",
1212 + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-1.0.9.tgz",
1213 + "integrity": "sha1-VbtemGkVB7dFedBRNBMhfDgMVM8=",
1214 + "optional": true,
1215 + "requires": {
1216 + "acorn": "^2.1.0"
1217 + }
1218 + },
1198 "aggregate-error": { 1219 "aggregate-error": {
1199 "version": "3.0.1", 1220 "version": "3.0.1",
1200 "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", 1221 "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz",
...@@ -1204,6 +1225,17 @@ ...@@ -1204,6 +1225,17 @@
1204 "indent-string": "^4.0.0" 1225 "indent-string": "^4.0.0"
1205 } 1226 }
1206 }, 1227 },
1228 + "ajv": {
1229 + "version": "6.12.2",
1230 + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz",
1231 + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==",
1232 + "requires": {
1233 + "fast-deep-equal": "^3.1.1",
1234 + "fast-json-stable-stringify": "^2.0.0",
1235 + "json-schema-traverse": "^0.4.1",
1236 + "uri-js": "^4.2.2"
1237 + }
1238 + },
1207 "ansi-align": { 1239 "ansi-align": {
1208 "version": "2.0.0", 1240 "version": "2.0.0",
1209 "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", 1241 "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz",
...@@ -1340,6 +1372,24 @@ ...@@ -1340,6 +1372,24 @@
1340 "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", 1372 "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
1341 "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" 1373 "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
1342 }, 1374 },
1375 + "asn1": {
1376 + "version": "0.2.4",
1377 + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
1378 + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
1379 + "requires": {
1380 + "safer-buffer": "~2.1.0"
1381 + }
1382 + },
1383 + "assert-plus": {
1384 + "version": "1.0.0",
1385 + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1386 + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
1387 + },
1388 + "assertion-error": {
1389 + "version": "1.0.0",
1390 + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.0.0.tgz",
1391 + "integrity": "sha1-x/hUOP3UZrx8oWq5DIFRN5el0js="
1392 + },
1343 "async-limiter": { 1393 "async-limiter": {
1344 "version": "1.0.1", 1394 "version": "1.0.1",
1345 "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", 1395 "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
...@@ -1350,6 +1400,103 @@ ...@@ -1350,6 +1400,103 @@
1350 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 1400 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
1351 "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 1401 "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
1352 }, 1402 },
1403 + "aws-sign2": {
1404 + "version": "0.7.0",
1405 + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
1406 + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
1407 + },
1408 + "aws4": {
1409 + "version": "1.9.1",
1410 + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz",
1411 + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug=="
1412 + },
1413 + "babel-code-frame": {
1414 + "version": "6.26.0",
1415 + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
1416 + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
1417 + "requires": {
1418 + "chalk": "^1.1.3",
1419 + "esutils": "^2.0.2",
1420 + "js-tokens": "^3.0.2"
1421 + },
1422 + "dependencies": {
1423 + "ansi-regex": {
1424 + "version": "2.1.1",
1425 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
1426 + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
1427 + },
1428 + "ansi-styles": {
1429 + "version": "2.2.1",
1430 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
1431 + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
1432 + },
1433 + "chalk": {
1434 + "version": "1.1.3",
1435 + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
1436 + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
1437 + "requires": {
1438 + "ansi-styles": "^2.2.1",
1439 + "escape-string-regexp": "^1.0.2",
1440 + "has-ansi": "^2.0.0",
1441 + "strip-ansi": "^3.0.0",
1442 + "supports-color": "^2.0.0"
1443 + }
1444 + },
1445 + "js-tokens": {
1446 + "version": "3.0.2",
1447 + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
1448 + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls="
1449 + },
1450 + "strip-ansi": {
1451 + "version": "3.0.1",
1452 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
1453 + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
1454 + "requires": {
1455 + "ansi-regex": "^2.0.0"
1456 + }
1457 + },
1458 + "supports-color": {
1459 + "version": "2.0.0",
1460 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
1461 + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
1462 + }
1463 + }
1464 + },
1465 + "babel-generator": {
1466 + "version": "6.26.1",
1467 + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
1468 + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
1469 + "requires": {
1470 + "babel-messages": "^6.23.0",
1471 + "babel-runtime": "^6.26.0",
1472 + "babel-types": "^6.26.0",
1473 + "detect-indent": "^4.0.0",
1474 + "jsesc": "^1.3.0",
1475 + "lodash": "^4.17.4",
1476 + "source-map": "^0.5.7",
1477 + "trim-right": "^1.0.1"
1478 + },
1479 + "dependencies": {
1480 + "jsesc": {
1481 + "version": "1.3.0",
1482 + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
1483 + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s="
1484 + },
1485 + "source-map": {
1486 + "version": "0.5.7",
1487 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
1488 + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
1489 + }
1490 + }
1491 + },
1492 + "babel-messages": {
1493 + "version": "6.23.0",
1494 + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
1495 + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
1496 + "requires": {
1497 + "babel-runtime": "^6.22.0"
1498 + }
1499 + },
1353 "babel-plugin-dynamic-import-node": { 1500 "babel-plugin-dynamic-import-node": {
1354 "version": "2.3.0", 1501 "version": "2.3.0",
1355 "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", 1502 "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz",
...@@ -1359,6 +1506,68 @@ ...@@ -1359,6 +1506,68 @@
1359 "object.assign": "^4.1.0" 1506 "object.assign": "^4.1.0"
1360 } 1507 }
1361 }, 1508 },
1509 + "babel-runtime": {
1510 + "version": "6.26.0",
1511 + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
1512 + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
1513 + "requires": {
1514 + "core-js": "^2.4.0",
1515 + "regenerator-runtime": "^0.11.0"
1516 + },
1517 + "dependencies": {
1518 + "regenerator-runtime": {
1519 + "version": "0.11.1",
1520 + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
1521 + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
1522 + }
1523 + }
1524 + },
1525 + "babel-traverse": {
1526 + "version": "6.26.0",
1527 + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
1528 + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
1529 + "requires": {
1530 + "babel-code-frame": "^6.26.0",
1531 + "babel-messages": "^6.23.0",
1532 + "babel-runtime": "^6.26.0",
1533 + "babel-types": "^6.26.0",
1534 + "babylon": "^6.18.0",
1535 + "debug": "^2.6.8",
1536 + "globals": "^9.18.0",
1537 + "invariant": "^2.2.2",
1538 + "lodash": "^4.17.4"
1539 + },
1540 + "dependencies": {
1541 + "globals": {
1542 + "version": "9.18.0",
1543 + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
1544 + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ=="
1545 + }
1546 + }
1547 + },
1548 + "babel-types": {
1549 + "version": "6.26.0",
1550 + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
1551 + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
1552 + "requires": {
1553 + "babel-runtime": "^6.26.0",
1554 + "esutils": "^2.0.2",
1555 + "lodash": "^4.17.4",
1556 + "to-fast-properties": "^1.0.3"
1557 + },
1558 + "dependencies": {
1559 + "to-fast-properties": {
1560 + "version": "1.0.3",
1561 + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
1562 + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc="
1563 + }
1564 + }
1565 + },
1566 + "babylon": {
1567 + "version": "6.18.0",
1568 + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
1569 + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ=="
1570 + },
1362 "backo2": { 1571 "backo2": {
1363 "version": "1.0.2", 1572 "version": "1.0.2",
1364 "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", 1573 "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
...@@ -1379,6 +1588,14 @@ ...@@ -1379,6 +1588,14 @@
1379 "safe-buffer": "5.1.2" 1588 "safe-buffer": "5.1.2"
1380 } 1589 }
1381 }, 1590 },
1591 + "bcrypt-pbkdf": {
1592 + "version": "1.0.2",
1593 + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
1594 + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
1595 + "requires": {
1596 + "tweetnacl": "^0.14.3"
1597 + }
1598 + },
1382 "bcryptjs": { 1599 "bcryptjs": {
1383 "version": "2.4.3", 1600 "version": "2.4.3",
1384 "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", 1601 "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz",
...@@ -1434,6 +1651,11 @@ ...@@ -1434,6 +1651,11 @@
1434 "body-parser": "^1.18.2" 1651 "body-parser": "^1.18.2"
1435 } 1652 }
1436 }, 1653 },
1654 + "boolbase": {
1655 + "version": "1.0.0",
1656 + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
1657 + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
1658 + },
1437 "boxen": { 1659 "boxen": {
1438 "version": "1.3.0", 1660 "version": "1.3.0",
1439 "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", 1661 "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz",
...@@ -1530,6 +1752,20 @@ ...@@ -1530,6 +1752,20 @@
1530 "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", 1752 "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==",
1531 "dev": true 1753 "dev": true
1532 }, 1754 },
1755 + "caseless": {
1756 + "version": "0.12.0",
1757 + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
1758 + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
1759 + },
1760 + "chai": {
1761 + "version": "2.3.0",
1762 + "resolved": "https://registry.npmjs.org/chai/-/chai-2.3.0.tgz",
1763 + "integrity": "sha1-ii9qNHSNqAEJD9cyh7Kqc5pOkJo=",
1764 + "requires": {
1765 + "assertion-error": "1.0.0",
1766 + "deep-eql": "0.1.3"
1767 + }
1768 + },
1533 "chalk": { 1769 "chalk": {
1534 "version": "2.4.2", 1770 "version": "2.4.2",
1535 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1771 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
...@@ -1541,6 +1777,19 @@ ...@@ -1541,6 +1777,19 @@
1541 "supports-color": "^5.3.0" 1777 "supports-color": "^5.3.0"
1542 } 1778 }
1543 }, 1779 },
1780 + "cheerio": {
1781 + "version": "1.0.0-rc.2",
1782 + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz",
1783 + "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=",
1784 + "requires": {
1785 + "css-select": "~1.2.0",
1786 + "dom-serializer": "~0.1.0",
1787 + "entities": "~1.1.1",
1788 + "htmlparser2": "^3.9.1",
1789 + "lodash": "^4.15.0",
1790 + "parse5": "^3.0.1"
1791 + }
1792 + },
1544 "chokidar": { 1793 "chokidar": {
1545 "version": "3.3.1", 1794 "version": "3.3.1",
1546 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", 1795 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz",
...@@ -1583,6 +1832,11 @@ ...@@ -1583,6 +1832,11 @@
1583 "color-name": "1.1.3" 1832 "color-name": "1.1.3"
1584 } 1833 }
1585 }, 1834 },
1835 + "color-logger": {
1836 + "version": "0.0.6",
1837 + "resolved": "https://registry.npmjs.org/color-logger/-/color-logger-0.0.6.tgz",
1838 + "integrity": "sha1-5WJF7ymCJlcRDHy3WpzXhstp7Rs="
1839 + },
1586 "color-name": { 1840 "color-name": {
1587 "version": "1.1.3", 1841 "version": "1.1.3",
1588 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1842 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
...@@ -1724,6 +1978,45 @@ ...@@ -1724,6 +1978,45 @@
1724 "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", 1978 "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=",
1725 "dev": true 1979 "dev": true
1726 }, 1980 },
1981 + "css-select": {
1982 + "version": "1.2.0",
1983 + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
1984 + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
1985 + "requires": {
1986 + "boolbase": "~1.0.0",
1987 + "css-what": "2.1",
1988 + "domutils": "1.5.1",
1989 + "nth-check": "~1.0.1"
1990 + }
1991 + },
1992 + "css-what": {
1993 + "version": "2.1.3",
1994 + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
1995 + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg=="
1996 + },
1997 + "cssom": {
1998 + "version": "0.3.8",
1999 + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
2000 + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
2001 + "optional": true
2002 + },
2003 + "cssstyle": {
2004 + "version": "0.2.37",
2005 + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz",
2006 + "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=",
2007 + "optional": true,
2008 + "requires": {
2009 + "cssom": "0.3.x"
2010 + }
2011 + },
2012 + "dashdash": {
2013 + "version": "1.14.1",
2014 + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
2015 + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
2016 + "requires": {
2017 + "assert-plus": "^1.0.0"
2018 + }
2019 + },
1727 "debug": { 2020 "debug": {
1728 "version": "2.6.9", 2021 "version": "2.6.9",
1729 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 2022 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
...@@ -1732,12 +2025,26 @@ ...@@ -1732,12 +2025,26 @@
1732 "ms": "2.0.0" 2025 "ms": "2.0.0"
1733 } 2026 }
1734 }, 2027 },
2028 + "deep-eql": {
2029 + "version": "0.1.3",
2030 + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-0.1.3.tgz",
2031 + "integrity": "sha1-71WKyrjeJSBs1xOQbXTlaTDrafI=",
2032 + "requires": {
2033 + "type-detect": "0.1.1"
2034 + }
2035 + },
1735 "deep-extend": { 2036 "deep-extend": {
1736 "version": "0.6.0", 2037 "version": "0.6.0",
1737 "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", 2038 "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
1738 "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", 2039 "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
1739 "dev": true 2040 "dev": true
1740 }, 2041 },
2042 + "deep-is": {
2043 + "version": "0.1.3",
2044 + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
2045 + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
2046 + "optional": true
2047 + },
1741 "deepmerge": { 2048 "deepmerge": {
1742 "version": "4.2.2", 2049 "version": "4.2.2",
1743 "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", 2050 "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
...@@ -1772,6 +2079,14 @@ ...@@ -1772,6 +2079,14 @@
1772 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", 2079 "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
1773 "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" 2080 "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
1774 }, 2081 },
2082 + "detect-indent": {
2083 + "version": "4.0.0",
2084 + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
2085 + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
2086 + "requires": {
2087 + "repeating": "^2.0.0"
2088 + }
2089 + },
1775 "dicer": { 2090 "dicer": {
1776 "version": "0.2.5", 2091 "version": "0.2.5",
1777 "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.2.5.tgz", 2092 "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.2.5.tgz",
...@@ -1789,6 +2104,37 @@ ...@@ -1789,6 +2104,37 @@
1789 "path-type": "^4.0.0" 2104 "path-type": "^4.0.0"
1790 } 2105 }
1791 }, 2106 },
2107 + "dom-serializer": {
2108 + "version": "0.1.1",
2109 + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
2110 + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
2111 + "requires": {
2112 + "domelementtype": "^1.3.0",
2113 + "entities": "^1.1.1"
2114 + }
2115 + },
2116 + "domelementtype": {
2117 + "version": "1.3.1",
2118 + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
2119 + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
2120 + },
2121 + "domhandler": {
2122 + "version": "2.4.2",
2123 + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
2124 + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
2125 + "requires": {
2126 + "domelementtype": "1"
2127 + }
2128 + },
2129 + "domutils": {
2130 + "version": "1.5.1",
2131 + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
2132 + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
2133 + "requires": {
2134 + "dom-serializer": "0",
2135 + "domelementtype": "1"
2136 + }
2137 + },
1792 "dot-prop": { 2138 "dot-prop": {
1793 "version": "4.2.0", 2139 "version": "4.2.0",
1794 "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", 2140 "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz",
...@@ -1809,6 +2155,15 @@ ...@@ -1809,6 +2155,15 @@
1809 "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", 2155 "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
1810 "dev": true 2156 "dev": true
1811 }, 2157 },
2158 + "ecc-jsbn": {
2159 + "version": "0.1.2",
2160 + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
2161 + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
2162 + "requires": {
2163 + "jsbn": "~0.1.0",
2164 + "safer-buffer": "^2.1.0"
2165 + }
2166 + },
1812 "ecdsa-sig-formatter": { 2167 "ecdsa-sig-formatter": {
1813 "version": "1.0.11", 2168 "version": "1.0.11",
1814 "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", 2169 "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
...@@ -1833,6 +2188,11 @@ ...@@ -1833,6 +2188,11 @@
1833 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 2188 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
1834 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" 2189 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
1835 }, 2190 },
2191 + "entities": {
2192 + "version": "1.1.2",
2193 + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
2194 + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
2195 + },
1836 "es-abstract": { 2196 "es-abstract": {
1837 "version": "1.17.5", 2197 "version": "1.17.5",
1838 "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", 2198 "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
...@@ -1871,14 +2231,72 @@ ...@@ -1871,14 +2231,72 @@
1871 "escape-string-regexp": { 2231 "escape-string-regexp": {
1872 "version": "1.0.5", 2232 "version": "1.0.5",
1873 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 2233 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1874 - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 2234 + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
1875 - "dev": true 2235 + },
2236 + "escodegen": {
2237 + "version": "1.14.1",
2238 + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz",
2239 + "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==",
2240 + "optional": true,
2241 + "requires": {
2242 + "esprima": "^4.0.1",
2243 + "estraverse": "^4.2.0",
2244 + "esutils": "^2.0.2",
2245 + "optionator": "^0.8.1",
2246 + "source-map": "~0.6.1"
2247 + }
2248 + },
2249 + "esdoc": {
2250 + "version": "1.1.0",
2251 + "resolved": "https://registry.npmjs.org/esdoc/-/esdoc-1.1.0.tgz",
2252 + "integrity": "sha512-vsUcp52XJkOWg9m1vDYplGZN2iDzvmjDL5M/Mp8qkoDG3p2s0yIQCIjKR5wfPBaM3eV14a6zhQNYiNTCVzPnxA==",
2253 + "requires": {
2254 + "babel-generator": "6.26.1",
2255 + "babel-traverse": "6.26.0",
2256 + "babylon": "6.18.0",
2257 + "cheerio": "1.0.0-rc.2",
2258 + "color-logger": "0.0.6",
2259 + "escape-html": "1.0.3",
2260 + "fs-extra": "5.0.0",
2261 + "ice-cap": "0.0.4",
2262 + "marked": "0.3.19",
2263 + "minimist": "1.2.0",
2264 + "taffydb": "2.7.3"
2265 + },
2266 + "dependencies": {
2267 + "minimist": {
2268 + "version": "1.2.0",
2269 + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
2270 + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
2271 + }
2272 + }
2273 + },
2274 + "esdoc-coverage-plugin": {
2275 + "version": "1.1.0",
2276 + "resolved": "https://registry.npmjs.org/esdoc-coverage-plugin/-/esdoc-coverage-plugin-1.1.0.tgz",
2277 + "integrity": "sha1-OGmGnNf4eJH5cmJXh2laKZrs5Fw="
2278 + },
2279 + "esdoc-type-inference-plugin": {
2280 + "version": "1.0.2",
2281 + "resolved": "https://registry.npmjs.org/esdoc-type-inference-plugin/-/esdoc-type-inference-plugin-1.0.2.tgz",
2282 + "integrity": "sha512-tMIcEHNe1uhUGA7lT1UTWc9hs2dzthnTgmqXpmeUhurk7fL2tinvoH+IVvG/sLROzwOGZQS9zW/F9KWnpMzLIQ=="
2283 + },
2284 + "esprima": {
2285 + "version": "4.0.1",
2286 + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
2287 + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
2288 + "optional": true
2289 + },
2290 + "estraverse": {
2291 + "version": "4.3.0",
2292 + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
2293 + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
2294 + "optional": true
1876 }, 2295 },
1877 "esutils": { 2296 "esutils": {
1878 "version": "2.0.3", 2297 "version": "2.0.3",
1879 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 2298 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1880 - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 2299 + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
1881 - "dev": true
1882 }, 2300 },
1883 "etag": { 2301 "etag": {
1884 "version": "1.8.1", 2302 "version": "1.8.1",
...@@ -1942,11 +2360,26 @@ ...@@ -1942,11 +2360,26 @@
1942 "vary": "~1.1.2" 2360 "vary": "~1.1.2"
1943 } 2361 }
1944 }, 2362 },
2363 + "extend": {
2364 + "version": "3.0.2",
2365 + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
2366 + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
2367 + },
1945 "extract-files": { 2368 "extract-files": {
1946 "version": "7.0.0", 2369 "version": "7.0.0",
1947 "resolved": "https://registry.npmjs.org/extract-files/-/extract-files-7.0.0.tgz", 2370 "resolved": "https://registry.npmjs.org/extract-files/-/extract-files-7.0.0.tgz",
1948 "integrity": "sha512-3AUlT7TD+DbQXNe3t70QrgJU6Wgcp7rk1Zm0vqWz8OYnw4vxihgG0TgZ2SIGrVqScc4WfOu7B4a0BezGJ0YqvQ==" 2371 "integrity": "sha512-3AUlT7TD+DbQXNe3t70QrgJU6Wgcp7rk1Zm0vqWz8OYnw4vxihgG0TgZ2SIGrVqScc4WfOu7B4a0BezGJ0YqvQ=="
1949 }, 2372 },
2373 + "extsprintf": {
2374 + "version": "1.3.0",
2375 + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
2376 + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
2377 + },
2378 + "fast-deep-equal": {
2379 + "version": "3.1.1",
2380 + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
2381 + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA=="
2382 + },
1950 "fast-glob": { 2383 "fast-glob": {
1951 "version": "3.2.2", 2384 "version": "3.2.2",
1952 "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", 2385 "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz",
...@@ -1965,6 +2398,12 @@ ...@@ -1965,6 +2398,12 @@
1965 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 2398 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1966 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" 2399 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
1967 }, 2400 },
2401 + "fast-levenshtein": {
2402 + "version": "2.0.6",
2403 + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
2404 + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
2405 + "optional": true
2406 + },
1968 "fastq": { 2407 "fastq": {
1969 "version": "1.7.0", 2408 "version": "1.7.0",
1970 "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz", 2409 "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz",
...@@ -2033,6 +2472,11 @@ ...@@ -2033,6 +2472,11 @@
2033 "locate-path": "^3.0.0" 2472 "locate-path": "^3.0.0"
2034 } 2473 }
2035 }, 2474 },
2475 + "forever-agent": {
2476 + "version": "0.6.1",
2477 + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
2478 + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
2479 + },
2036 "form-data": { 2480 "form-data": {
2037 "version": "3.0.0", 2481 "version": "3.0.0",
2038 "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", 2482 "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz",
...@@ -2058,6 +2502,16 @@ ...@@ -2058,6 +2502,16 @@
2058 "resolved": "https://registry.npmjs.org/fs-capacitor/-/fs-capacitor-1.0.1.tgz", 2502 "resolved": "https://registry.npmjs.org/fs-capacitor/-/fs-capacitor-1.0.1.tgz",
2059 "integrity": "sha512-XdZK0Q78WP29Vm3FGgJRhRhrBm51PagovzWtW2kJ3Q6cYJbGtZqWSGTSPwvtEkyjIirFd7b8Yes/dpOYjt4RRQ==" 2503 "integrity": "sha512-XdZK0Q78WP29Vm3FGgJRhRhrBm51PagovzWtW2kJ3Q6cYJbGtZqWSGTSPwvtEkyjIirFd7b8Yes/dpOYjt4RRQ=="
2060 }, 2504 },
2505 + "fs-extra": {
2506 + "version": "5.0.0",
2507 + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-5.0.0.tgz",
2508 + "integrity": "sha512-66Pm4RYbjzdyeuqudYqhFiNBbCIuI9kgRqLPSHIlXHidW8NIQtVdkM1yeZ4lXwuhbTETv3EUGMNHAAw6hiundQ==",
2509 + "requires": {
2510 + "graceful-fs": "^4.1.2",
2511 + "jsonfile": "^4.0.0",
2512 + "universalify": "^0.1.0"
2513 + }
2514 + },
2061 "fsevents": { 2515 "fsevents": {
2062 "version": "2.1.2", 2516 "version": "2.1.2",
2063 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", 2517 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz",
...@@ -2083,6 +2537,14 @@ ...@@ -2083,6 +2537,14 @@
2083 "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", 2537 "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
2084 "dev": true 2538 "dev": true
2085 }, 2539 },
2540 + "getpass": {
2541 + "version": "0.1.7",
2542 + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
2543 + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
2544 + "requires": {
2545 + "assert-plus": "^1.0.0"
2546 + }
2547 + },
2086 "glob-parent": { 2548 "glob-parent": {
2087 "version": "5.1.1", 2549 "version": "5.1.1",
2088 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", 2550 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
...@@ -2141,8 +2603,7 @@ ...@@ -2141,8 +2603,7 @@
2141 "graceful-fs": { 2603 "graceful-fs": {
2142 "version": "4.2.3", 2604 "version": "4.2.3",
2143 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", 2605 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz",
2144 - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", 2606 + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ=="
2145 - "dev": true
2146 }, 2607 },
2147 "graphql": { 2608 "graphql": {
2148 "version": "14.6.0", 2609 "version": "14.6.0",
...@@ -2309,6 +2770,20 @@ ...@@ -2309,6 +2770,20 @@
2309 "subscriptions-transport-ws": "^0.9.8" 2770 "subscriptions-transport-ws": "^0.9.8"
2310 } 2771 }
2311 }, 2772 },
2773 + "har-schema": {
2774 + "version": "2.0.0",
2775 + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
2776 + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
2777 + },
2778 + "har-validator": {
2779 + "version": "5.1.3",
2780 + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz",
2781 + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==",
2782 + "requires": {
2783 + "ajv": "^6.5.5",
2784 + "har-schema": "^2.0.0"
2785 + }
2786 + },
2312 "has": { 2787 "has": {
2313 "version": "1.0.3", 2788 "version": "1.0.3",
2314 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 2789 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
...@@ -2318,6 +2793,21 @@ ...@@ -2318,6 +2793,21 @@
2318 "function-bind": "^1.1.1" 2793 "function-bind": "^1.1.1"
2319 } 2794 }
2320 }, 2795 },
2796 + "has-ansi": {
2797 + "version": "2.0.0",
2798 + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
2799 + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
2800 + "requires": {
2801 + "ansi-regex": "^2.0.0"
2802 + },
2803 + "dependencies": {
2804 + "ansi-regex": {
2805 + "version": "2.1.1",
2806 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
2807 + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
2808 + }
2809 + }
2810 + },
2321 "has-flag": { 2811 "has-flag": {
2322 "version": "3.0.0", 2812 "version": "3.0.0",
2323 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 2813 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
...@@ -2339,6 +2829,44 @@ ...@@ -2339,6 +2829,44 @@
2339 "parse-passwd": "^1.0.0" 2829 "parse-passwd": "^1.0.0"
2340 } 2830 }
2341 }, 2831 },
2832 + "htmlparser2": {
2833 + "version": "3.10.1",
2834 + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
2835 + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
2836 + "requires": {
2837 + "domelementtype": "^1.3.1",
2838 + "domhandler": "^2.3.0",
2839 + "domutils": "^1.5.1",
2840 + "entities": "^1.1.1",
2841 + "inherits": "^2.0.1",
2842 + "readable-stream": "^3.1.1"
2843 + },
2844 + "dependencies": {
2845 + "readable-stream": {
2846 + "version": "3.6.0",
2847 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
2848 + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
2849 + "requires": {
2850 + "inherits": "^2.0.3",
2851 + "string_decoder": "^1.1.1",
2852 + "util-deprecate": "^1.0.1"
2853 + }
2854 + },
2855 + "safe-buffer": {
2856 + "version": "5.2.0",
2857 + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
2858 + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="
2859 + },
2860 + "string_decoder": {
2861 + "version": "1.3.0",
2862 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
2863 + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
2864 + "requires": {
2865 + "safe-buffer": "~5.2.0"
2866 + }
2867 + }
2868 + }
2869 + },
2342 "http-errors": { 2870 "http-errors": {
2343 "version": "1.7.3", 2871 "version": "1.7.3",
2344 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", 2872 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz",
...@@ -2351,6 +2879,72 @@ ...@@ -2351,6 +2879,72 @@
2351 "toidentifier": "1.0.0" 2879 "toidentifier": "1.0.0"
2352 } 2880 }
2353 }, 2881 },
2882 + "http-signature": {
2883 + "version": "1.2.0",
2884 + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
2885 + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
2886 + "requires": {
2887 + "assert-plus": "^1.0.0",
2888 + "jsprim": "^1.2.2",
2889 + "sshpk": "^1.7.0"
2890 + }
2891 + },
2892 + "ice-cap": {
2893 + "version": "0.0.4",
2894 + "resolved": "https://registry.npmjs.org/ice-cap/-/ice-cap-0.0.4.tgz",
2895 + "integrity": "sha1-im0xq0ysjUtW3k+pRt8zUlYbbhg=",
2896 + "requires": {
2897 + "cheerio": "0.20.0",
2898 + "color-logger": "0.0.3"
2899 + },
2900 + "dependencies": {
2901 + "cheerio": {
2902 + "version": "0.20.0",
2903 + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.20.0.tgz",
2904 + "integrity": "sha1-XHEPK6uVZTJyhCugHG6mGzVF7DU=",
2905 + "requires": {
2906 + "css-select": "~1.2.0",
2907 + "dom-serializer": "~0.1.0",
2908 + "entities": "~1.1.1",
2909 + "htmlparser2": "~3.8.1",
2910 + "jsdom": "^7.0.2",
2911 + "lodash": "^4.1.0"
2912 + }
2913 + },
2914 + "color-logger": {
2915 + "version": "0.0.3",
2916 + "resolved": "https://registry.npmjs.org/color-logger/-/color-logger-0.0.3.tgz",
2917 + "integrity": "sha1-2bIt0dlz4Waxi/MT+fSBu6TfIBg="
2918 + },
2919 + "domhandler": {
2920 + "version": "2.3.0",
2921 + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
2922 + "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
2923 + "requires": {
2924 + "domelementtype": "1"
2925 + }
2926 + },
2927 + "htmlparser2": {
2928 + "version": "3.8.3",
2929 + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
2930 + "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
2931 + "requires": {
2932 + "domelementtype": "1",
2933 + "domhandler": "2.3",
2934 + "domutils": "1.5",
2935 + "entities": "1.0",
2936 + "readable-stream": "1.1"
2937 + },
2938 + "dependencies": {
2939 + "entities": {
2940 + "version": "1.0.0",
2941 + "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
2942 + "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY="
2943 + }
2944 + }
2945 + }
2946 + }
2947 + },
2354 "iconv-lite": { 2948 "iconv-lite": {
2355 "version": "0.4.24", 2949 "version": "0.4.24",
2356 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 2950 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
...@@ -2402,7 +2996,6 @@ ...@@ -2402,7 +2996,6 @@
2402 "version": "2.2.4", 2996 "version": "2.2.4",
2403 "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 2997 "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
2404 "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 2998 "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
2405 - "dev": true,
2406 "requires": { 2999 "requires": {
2407 "loose-envify": "^1.0.0" 3000 "loose-envify": "^1.0.0"
2408 } 3001 }
...@@ -2447,6 +3040,11 @@ ...@@ -2447,6 +3040,11 @@
2447 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 3040 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
2448 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" 3041 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
2449 }, 3042 },
3043 + "is-finite": {
3044 + "version": "1.1.0",
3045 + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
3046 + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w=="
3047 + },
2450 "is-fullwidth-code-point": { 3048 "is-fullwidth-code-point": {
2451 "version": "2.0.0", 3049 "version": "2.0.0",
2452 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 3050 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
...@@ -2533,6 +3131,11 @@ ...@@ -2533,6 +3131,11 @@
2533 "has-symbols": "^1.0.1" 3131 "has-symbols": "^1.0.1"
2534 } 3132 }
2535 }, 3133 },
3134 + "is-typedarray": {
3135 + "version": "1.0.0",
3136 + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
3137 + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
3138 + },
2536 "isarray": { 3139 "isarray": {
2537 "version": "0.0.1", 3140 "version": "0.0.1",
2538 "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 3141 "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
...@@ -2544,6 +3147,11 @@ ...@@ -2544,6 +3147,11 @@
2544 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 3147 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
2545 "dev": true 3148 "dev": true
2546 }, 3149 },
3150 + "isstream": {
3151 + "version": "0.1.2",
3152 + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
3153 + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
3154 + },
2547 "iterall": { 3155 "iterall": {
2548 "version": "1.3.0", 3156 "version": "1.3.0",
2549 "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz", 3157 "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz",
...@@ -2552,8 +3160,43 @@ ...@@ -2552,8 +3160,43 @@
2552 "js-tokens": { 3160 "js-tokens": {
2553 "version": "4.0.0", 3161 "version": "4.0.0",
2554 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 3162 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
2555 - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 3163 + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
2556 - "dev": true 3164 + },
3165 + "jsbn": {
3166 + "version": "0.1.1",
3167 + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
3168 + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
3169 + },
3170 + "jsdom": {
3171 + "version": "7.2.2",
3172 + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-7.2.2.tgz",
3173 + "integrity": "sha1-QLQCdwwr2iNGkJa+6Rq2deOx/G4=",
3174 + "optional": true,
3175 + "requires": {
3176 + "abab": "^1.0.0",
3177 + "acorn": "^2.4.0",
3178 + "acorn-globals": "^1.0.4",
3179 + "cssom": ">= 0.3.0 < 0.4.0",
3180 + "cssstyle": ">= 0.2.29 < 0.3.0",
3181 + "escodegen": "^1.6.1",
3182 + "nwmatcher": ">= 1.3.7 < 2.0.0",
3183 + "parse5": "^1.5.1",
3184 + "request": "^2.55.0",
3185 + "sax": "^1.1.4",
3186 + "symbol-tree": ">= 3.1.0 < 4.0.0",
3187 + "tough-cookie": "^2.2.0",
3188 + "webidl-conversions": "^2.0.0",
3189 + "whatwg-url-compat": "~0.6.5",
3190 + "xml-name-validator": ">= 2.0.1 < 3.0.0"
3191 + },
3192 + "dependencies": {
3193 + "parse5": {
3194 + "version": "1.5.1",
3195 + "resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz",
3196 + "integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=",
3197 + "optional": true
3198 + }
3199 + }
2557 }, 3200 },
2558 "jsesc": { 3201 "jsesc": {
2559 "version": "2.5.2", 3202 "version": "2.5.2",
...@@ -2561,6 +3204,21 @@ ...@@ -2561,6 +3204,21 @@
2561 "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 3204 "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
2562 "dev": true 3205 "dev": true
2563 }, 3206 },
3207 + "json-schema": {
3208 + "version": "0.2.3",
3209 + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
3210 + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
3211 + },
3212 + "json-schema-traverse": {
3213 + "version": "0.4.1",
3214 + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
3215 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
3216 + },
3217 + "json-stringify-safe": {
3218 + "version": "5.0.1",
3219 + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
3220 + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
3221 + },
2564 "json5": { 3222 "json5": {
2565 "version": "2.1.3", 3223 "version": "2.1.3",
2566 "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", 3224 "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
...@@ -2570,6 +3228,14 @@ ...@@ -2570,6 +3228,14 @@
2570 "minimist": "^1.2.5" 3228 "minimist": "^1.2.5"
2571 } 3229 }
2572 }, 3230 },
3231 + "jsonfile": {
3232 + "version": "4.0.0",
3233 + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
3234 + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
3235 + "requires": {
3236 + "graceful-fs": "^4.1.6"
3237 + }
3238 + },
2573 "jsonwebtoken": { 3239 "jsonwebtoken": {
2574 "version": "8.5.1", 3240 "version": "8.5.1",
2575 "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", 3241 "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz",
...@@ -2594,6 +3260,17 @@ ...@@ -2594,6 +3260,17 @@
2594 } 3260 }
2595 } 3261 }
2596 }, 3262 },
3263 + "jsprim": {
3264 + "version": "1.4.1",
3265 + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
3266 + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
3267 + "requires": {
3268 + "assert-plus": "1.0.0",
3269 + "extsprintf": "1.3.0",
3270 + "json-schema": "0.2.3",
3271 + "verror": "1.10.0"
3272 + }
3273 + },
2597 "jwa": { 3274 "jwa": {
2598 "version": "1.4.1", 3275 "version": "1.4.1",
2599 "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", 3276 "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz",
...@@ -2637,6 +3314,16 @@ ...@@ -2637,6 +3314,16 @@
2637 "leven": "^3.1.0" 3314 "leven": "^3.1.0"
2638 } 3315 }
2639 }, 3316 },
3317 + "levn": {
3318 + "version": "0.3.0",
3319 + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
3320 + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
3321 + "optional": true,
3322 + "requires": {
3323 + "prelude-ls": "~1.1.2",
3324 + "type-check": "~0.3.2"
3325 + }
3326 + },
2640 "locate-path": { 3327 "locate-path": {
2641 "version": "3.0.0", 3328 "version": "3.0.0",
2642 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", 3329 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
...@@ -2691,7 +3378,6 @@ ...@@ -2691,7 +3378,6 @@
2691 "version": "1.4.0", 3378 "version": "1.4.0",
2692 "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 3379 "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
2693 "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 3380 "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
2694 - "dev": true,
2695 "requires": { 3381 "requires": {
2696 "js-tokens": "^3.0.0 || ^4.0.0" 3382 "js-tokens": "^3.0.0 || ^4.0.0"
2697 } 3383 }
...@@ -2729,6 +3415,11 @@ ...@@ -2729,6 +3415,11 @@
2729 "pify": "^3.0.0" 3415 "pify": "^3.0.0"
2730 } 3416 }
2731 }, 3417 },
3418 + "marked": {
3419 + "version": "0.3.19",
3420 + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz",
3421 + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg=="
3422 + },
2732 "media-typer": { 3423 "media-typer": {
2733 "version": "0.3.0", 3424 "version": "0.3.0",
2734 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 3425 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
...@@ -2868,6 +3559,19 @@ ...@@ -2868,6 +3559,19 @@
2868 "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==", 3559 "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==",
2869 "dev": true 3560 "dev": true
2870 }, 3561 },
3562 + "nodemailer": {
3563 + "version": "6.4.6",
3564 + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.4.6.tgz",
3565 + "integrity": "sha512-/kJ+FYVEm2HuUlw87hjSqTss+GU35D4giOpdSfGp7DO+5h6RlJj7R94YaYHOkoxu1CSaM0d3WRBtCzwXrY6MKA=="
3566 + },
3567 + "nodemailer-sendgrid-transport": {
3568 + "version": "0.2.0",
3569 + "resolved": "https://registry.npmjs.org/nodemailer-sendgrid-transport/-/nodemailer-sendgrid-transport-0.2.0.tgz",
3570 + "integrity": "sha1-pRZZO/49HyeM/hcGDh2yNlio9Pw=",
3571 + "requires": {
3572 + "sendgrid": "^1.8.0"
3573 + }
3574 + },
2871 "nodemon": { 3575 "nodemon": {
2872 "version": "2.0.2", 3576 "version": "2.0.2",
2873 "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.2.tgz", 3577 "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.2.tgz",
...@@ -2927,6 +3631,25 @@ ...@@ -2927,6 +3631,25 @@
2927 "path-key": "^2.0.0" 3631 "path-key": "^2.0.0"
2928 } 3632 }
2929 }, 3633 },
3634 + "nth-check": {
3635 + "version": "1.0.2",
3636 + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
3637 + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
3638 + "requires": {
3639 + "boolbase": "~1.0.0"
3640 + }
3641 + },
3642 + "nwmatcher": {
3643 + "version": "1.4.4",
3644 + "resolved": "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz",
3645 + "integrity": "sha512-3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==",
3646 + "optional": true
3647 + },
3648 + "oauth-sign": {
3649 + "version": "0.9.0",
3650 + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
3651 + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="
3652 + },
2930 "object-assign": { 3653 "object-assign": {
2931 "version": "4.1.1", 3654 "version": "4.1.1",
2932 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 3655 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
...@@ -2985,6 +3708,20 @@ ...@@ -2985,6 +3708,20 @@
2985 "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", 3708 "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==",
2986 "dev": true 3709 "dev": true
2987 }, 3710 },
3711 + "optionator": {
3712 + "version": "0.8.3",
3713 + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
3714 + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
3715 + "optional": true,
3716 + "requires": {
3717 + "deep-is": "~0.1.3",
3718 + "fast-levenshtein": "~2.0.6",
3719 + "levn": "~0.3.0",
3720 + "prelude-ls": "~1.1.2",
3721 + "type-check": "~0.3.2",
3722 + "word-wrap": "~1.2.3"
3723 + }
3724 + },
2988 "p-finally": { 3725 "p-finally": {
2989 "version": "1.0.0", 3726 "version": "1.0.0",
2990 "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 3727 "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
...@@ -3033,6 +3770,14 @@ ...@@ -3033,6 +3770,14 @@
3033 "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", 3770 "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
3034 "dev": true 3771 "dev": true
3035 }, 3772 },
3773 + "parse5": {
3774 + "version": "3.0.3",
3775 + "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
3776 + "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==",
3777 + "requires": {
3778 + "@types/node": "*"
3779 + }
3780 + },
3036 "parseurl": { 3781 "parseurl": {
3037 "version": "1.3.3", 3782 "version": "1.3.3",
3038 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 3783 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
...@@ -3081,6 +3826,11 @@ ...@@ -3081,6 +3826,11 @@
3081 "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", 3826 "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
3082 "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" 3827 "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
3083 }, 3828 },
3829 + "performance-now": {
3830 + "version": "2.1.0",
3831 + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
3832 + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
3833 + },
3084 "picomatch": { 3834 "picomatch": {
3085 "version": "2.2.2", 3835 "version": "2.2.2",
3086 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", 3836 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
...@@ -3164,6 +3914,12 @@ ...@@ -3164,6 +3914,12 @@
3164 } 3914 }
3165 } 3915 }
3166 }, 3916 },
3917 + "prelude-ls": {
3918 + "version": "1.1.2",
3919 + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
3920 + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
3921 + "optional": true
3922 + },
3167 "prepend-http": { 3923 "prepend-http": {
3168 "version": "1.0.4", 3924 "version": "1.0.4",
3169 "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", 3925 "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
...@@ -3191,12 +3947,22 @@ ...@@ -3191,12 +3947,22 @@
3191 "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 3947 "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
3192 "dev": true 3948 "dev": true
3193 }, 3949 },
3950 + "psl": {
3951 + "version": "1.8.0",
3952 + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
3953 + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
3954 + },
3194 "pstree.remy": { 3955 "pstree.remy": {
3195 "version": "1.1.7", 3956 "version": "1.1.7",
3196 "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.7.tgz", 3957 "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.7.tgz",
3197 "integrity": "sha512-xsMgrUwRpuGskEzBFkH8NmTimbZ5PcPup0LA8JJkHIm2IMUbQcpo3yeLNWVrufEYjh8YwtSVh0xz6UeWc5Oh5A==", 3958 "integrity": "sha512-xsMgrUwRpuGskEzBFkH8NmTimbZ5PcPup0LA8JJkHIm2IMUbQcpo3yeLNWVrufEYjh8YwtSVh0xz6UeWc5Oh5A==",
3198 "dev": true 3959 "dev": true
3199 }, 3960 },
3961 + "punycode": {
3962 + "version": "2.1.1",
3963 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
3964 + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
3965 + },
3200 "qs": { 3966 "qs": {
3201 "version": "6.7.0", 3967 "version": "6.7.0",
3202 "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", 3968 "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
...@@ -3361,6 +4127,58 @@ ...@@ -3361,6 +4127,58 @@
3361 "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 4127 "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
3362 "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" 4128 "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
3363 }, 4129 },
4130 + "repeating": {
4131 + "version": "2.0.1",
4132 + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
4133 + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
4134 + "requires": {
4135 + "is-finite": "^1.0.0"
4136 + }
4137 + },
4138 + "request": {
4139 + "version": "2.88.2",
4140 + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
4141 + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
4142 + "requires": {
4143 + "aws-sign2": "~0.7.0",
4144 + "aws4": "^1.8.0",
4145 + "caseless": "~0.12.0",
4146 + "combined-stream": "~1.0.6",
4147 + "extend": "~3.0.2",
4148 + "forever-agent": "~0.6.1",
4149 + "form-data": "~2.3.2",
4150 + "har-validator": "~5.1.3",
4151 + "http-signature": "~1.2.0",
4152 + "is-typedarray": "~1.0.0",
4153 + "isstream": "~0.1.2",
4154 + "json-stringify-safe": "~5.0.1",
4155 + "mime-types": "~2.1.19",
4156 + "oauth-sign": "~0.9.0",
4157 + "performance-now": "^2.1.0",
4158 + "qs": "~6.5.2",
4159 + "safe-buffer": "^5.1.2",
4160 + "tough-cookie": "~2.5.0",
4161 + "tunnel-agent": "^0.6.0",
4162 + "uuid": "^3.3.2"
4163 + },
4164 + "dependencies": {
4165 + "form-data": {
4166 + "version": "2.3.3",
4167 + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
4168 + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
4169 + "requires": {
4170 + "asynckit": "^0.4.0",
4171 + "combined-stream": "^1.0.6",
4172 + "mime-types": "^2.1.12"
4173 + }
4174 + },
4175 + "qs": {
4176 + "version": "6.5.2",
4177 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
4178 + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="
4179 + }
4180 + }
4181 + },
3364 "resolve": { 4182 "resolve": {
3365 "version": "1.15.1", 4183 "version": "1.15.1",
3366 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", 4184 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz",
...@@ -3395,6 +4213,12 @@ ...@@ -3395,6 +4213,12 @@
3395 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 4213 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
3396 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 4214 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
3397 }, 4215 },
4216 + "sax": {
4217 + "version": "1.2.4",
4218 + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
4219 + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
4220 + "optional": true
4221 + },
3398 "semver": { 4222 "semver": {
3399 "version": "5.7.1", 4223 "version": "5.7.1",
3400 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 4224 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
...@@ -3436,6 +4260,24 @@ ...@@ -3436,6 +4260,24 @@
3436 } 4260 }
3437 } 4261 }
3438 }, 4262 },
4263 + "sendgrid": {
4264 + "version": "1.9.2",
4265 + "resolved": "https://registry.npmjs.org/sendgrid/-/sendgrid-1.9.2.tgz",
4266 + "integrity": "sha1-1AfmogawoqaWQkbdnAZBwQvwLxk=",
4267 + "requires": {
4268 + "lodash": "^3.0.1 || ^2.0.0",
4269 + "mime": "^1.2.9",
4270 + "request": "^2.60.0",
4271 + "smtpapi": "^1.2.0"
4272 + },
4273 + "dependencies": {
4274 + "lodash": {
4275 + "version": "3.10.1",
4276 + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
4277 + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y="
4278 + }
4279 + }
4280 + },
3439 "serve-static": { 4281 "serve-static": {
3440 "version": "1.14.1", 4282 "version": "1.14.1",
3441 "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", 4283 "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz",
...@@ -3478,6 +4320,17 @@ ...@@ -3478,6 +4320,17 @@
3478 "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", 4320 "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
3479 "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" 4321 "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q=="
3480 }, 4322 },
4323 + "smtpapi": {
4324 + "version": "1.4.2",
4325 + "resolved": "https://registry.npmjs.org/smtpapi/-/smtpapi-1.4.2.tgz",
4326 + "integrity": "sha512-rkb2Qkl8JnsLr/1unpZs1sUZODVMyl9kcYyBNvsilP+RyWMQw2yXUpgHsW41oEAu2yM5z9e2tmyZu52RAbB8Xw==",
4327 + "requires": {
4328 + "chai": "^2.3.0",
4329 + "esdoc": "^1.0.3",
4330 + "esdoc-coverage-plugin": "^1.1.0",
4331 + "esdoc-type-inference-plugin": "^1.0.1"
4332 + }
4333 + },
3481 "source-map": { 4334 "source-map": {
3482 "version": "0.6.1", 4335 "version": "0.6.1",
3483 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 4336 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
...@@ -3492,6 +4345,22 @@ ...@@ -3492,6 +4345,22 @@
3492 "source-map": "^0.6.0" 4345 "source-map": "^0.6.0"
3493 } 4346 }
3494 }, 4347 },
4348 + "sshpk": {
4349 + "version": "1.16.1",
4350 + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
4351 + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
4352 + "requires": {
4353 + "asn1": "~0.2.3",
4354 + "assert-plus": "^1.0.0",
4355 + "bcrypt-pbkdf": "^1.0.0",
4356 + "dashdash": "^1.12.0",
4357 + "ecc-jsbn": "~0.1.1",
4358 + "getpass": "^0.1.1",
4359 + "jsbn": "~0.1.0",
4360 + "safer-buffer": "^2.0.2",
4361 + "tweetnacl": "~0.14.0"
4362 + }
4363 + },
3495 "statuses": { 4364 "statuses": {
3496 "version": "1.5.0", 4365 "version": "1.5.0",
3497 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", 4366 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
...@@ -3606,6 +4475,17 @@ ...@@ -3606,6 +4475,17 @@
3606 "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", 4475 "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz",
3607 "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==" 4476 "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ=="
3608 }, 4477 },
4478 + "symbol-tree": {
4479 + "version": "3.2.4",
4480 + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
4481 + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
4482 + "optional": true
4483 + },
4484 + "taffydb": {
4485 + "version": "2.7.3",
4486 + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.7.3.tgz",
4487 + "integrity": "sha1-KtNxaWKUmPylvIQkMJbTzeDsOjQ="
4488 + },
3609 "term-size": { 4489 "term-size": {
3610 "version": "1.2.0", 4490 "version": "1.2.0",
3611 "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", 4491 "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz",
...@@ -3649,6 +4529,26 @@ ...@@ -3649,6 +4529,26 @@
3649 "nopt": "~1.0.10" 4529 "nopt": "~1.0.10"
3650 } 4530 }
3651 }, 4531 },
4532 + "tough-cookie": {
4533 + "version": "2.5.0",
4534 + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
4535 + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
4536 + "requires": {
4537 + "psl": "^1.1.28",
4538 + "punycode": "^2.1.1"
4539 + }
4540 + },
4541 + "tr46": {
4542 + "version": "0.0.3",
4543 + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
4544 + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
4545 + "optional": true
4546 + },
4547 + "trim-right": {
4548 + "version": "1.0.1",
4549 + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
4550 + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM="
4551 + },
3652 "ts-invariant": { 4552 "ts-invariant": {
3653 "version": "0.4.4", 4553 "version": "0.4.4",
3654 "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz", 4554 "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz",
...@@ -3662,6 +4562,33 @@ ...@@ -3662,6 +4562,33 @@
3662 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", 4562 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz",
3663 "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" 4563 "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA=="
3664 }, 4564 },
4565 + "tunnel-agent": {
4566 + "version": "0.6.0",
4567 + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
4568 + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
4569 + "requires": {
4570 + "safe-buffer": "^5.0.1"
4571 + }
4572 + },
4573 + "tweetnacl": {
4574 + "version": "0.14.5",
4575 + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
4576 + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
4577 + },
4578 + "type-check": {
4579 + "version": "0.3.2",
4580 + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
4581 + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
4582 + "optional": true,
4583 + "requires": {
4584 + "prelude-ls": "~1.1.2"
4585 + }
4586 + },
4587 + "type-detect": {
4588 + "version": "0.1.1",
4589 + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-0.1.1.tgz",
4590 + "integrity": "sha1-C6XsKohWQORw6k6FBZcZANrFiCI="
4591 + },
3665 "type-is": { 4592 "type-is": {
3666 "version": "1.6.18", 4593 "version": "1.6.18",
3667 "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", 4594 "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
...@@ -3717,6 +4644,11 @@ ...@@ -3717,6 +4644,11 @@
3717 "crypto-random-string": "^1.0.0" 4644 "crypto-random-string": "^1.0.0"
3718 } 4645 }
3719 }, 4646 },
4647 + "universalify": {
4648 + "version": "0.1.2",
4649 + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
4650 + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="
4651 + },
3720 "unixify": { 4652 "unixify": {
3721 "version": "1.0.0", 4653 "version": "1.0.0",
3722 "resolved": "https://registry.npmjs.org/unixify/-/unixify-1.0.0.tgz", 4654 "resolved": "https://registry.npmjs.org/unixify/-/unixify-1.0.0.tgz",
...@@ -3764,6 +4696,14 @@ ...@@ -3764,6 +4696,14 @@
3764 "xdg-basedir": "^3.0.0" 4696 "xdg-basedir": "^3.0.0"
3765 } 4697 }
3766 }, 4698 },
4699 + "uri-js": {
4700 + "version": "4.2.2",
4701 + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
4702 + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
4703 + "requires": {
4704 + "punycode": "^2.1.0"
4705 + }
4706 + },
3767 "url-parse-lax": { 4707 "url-parse-lax": {
3768 "version": "1.0.0", 4708 "version": "1.0.0",
3769 "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", 4709 "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
...@@ -3773,6 +4713,11 @@ ...@@ -3773,6 +4713,11 @@
3773 "prepend-http": "^1.0.1" 4713 "prepend-http": "^1.0.1"
3774 } 4714 }
3775 }, 4715 },
4716 + "util-deprecate": {
4717 + "version": "1.0.2",
4718 + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
4719 + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
4720 + },
3776 "utils-merge": { 4721 "utils-merge": {
3777 "version": "1.0.1", 4722 "version": "1.0.1",
3778 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 4723 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
...@@ -3797,6 +4742,31 @@ ...@@ -3797,6 +4742,31 @@
3797 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 4742 "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
3798 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" 4743 "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
3799 }, 4744 },
4745 + "verror": {
4746 + "version": "1.10.0",
4747 + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
4748 + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
4749 + "requires": {
4750 + "assert-plus": "^1.0.0",
4751 + "core-util-is": "1.0.2",
4752 + "extsprintf": "^1.2.0"
4753 + }
4754 + },
4755 + "webidl-conversions": {
4756 + "version": "2.0.1",
4757 + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-2.0.1.tgz",
4758 + "integrity": "sha1-O/glj30xjHRDw28uFpQCoaZwNQY=",
4759 + "optional": true
4760 + },
4761 + "whatwg-url-compat": {
4762 + "version": "0.6.5",
4763 + "resolved": "https://registry.npmjs.org/whatwg-url-compat/-/whatwg-url-compat-0.6.5.tgz",
4764 + "integrity": "sha1-AImBEa9om7CXVBzVpFymyHmERb8=",
4765 + "optional": true,
4766 + "requires": {
4767 + "tr46": "~0.0.1"
4768 + }
4769 + },
3800 "which": { 4770 "which": {
3801 "version": "1.3.1", 4771 "version": "1.3.1",
3802 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 4772 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
...@@ -3815,6 +4785,12 @@ ...@@ -3815,6 +4785,12 @@
3815 "string-width": "^2.1.1" 4785 "string-width": "^2.1.1"
3816 } 4786 }
3817 }, 4787 },
4788 + "word-wrap": {
4789 + "version": "1.2.3",
4790 + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
4791 + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
4792 + "optional": true
4793 + },
3818 "write-file-atomic": { 4794 "write-file-atomic": {
3819 "version": "2.4.3", 4795 "version": "2.4.3",
3820 "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", 4796 "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz",
...@@ -3840,6 +4816,12 @@ ...@@ -3840,6 +4816,12 @@
3840 "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", 4816 "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=",
3841 "dev": true 4817 "dev": true
3842 }, 4818 },
4819 + "xml-name-validator": {
4820 + "version": "2.0.1",
4821 + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz",
4822 + "integrity": "sha1-TYuPHszTQZqjYgYb7O9RXh5VljU=",
4823 + "optional": true
4824 + },
3843 "yallist": { 4825 "yallist": {
3844 "version": "2.1.2", 4826 "version": "2.1.2",
3845 "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 4827 "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
......
...@@ -20,7 +20,9 @@ ...@@ -20,7 +20,9 @@
20 "graphql-tools": "^4.0.7", 20 "graphql-tools": "^4.0.7",
21 "graphql-yoga": "^1.18.3", 21 "graphql-yoga": "^1.18.3",
22 "jsonwebtoken": "^8.5.1", 22 "jsonwebtoken": "^8.5.1",
23 - "merge-graphql-schemas": "^1.7.7" 23 + "merge-graphql-schemas": "^1.7.7",
24 + "nodemailer": "^6.4.6",
25 + "nodemailer-sendgrid-transport": "^0.2.0"
24 }, 26 },
25 "devDependencies": { 27 "devDependencies": {
26 "@babel/core": "^7.9.0", 28 "@babel/core": "^7.9.0",
......
...@@ -14,7 +14,8 @@ model User { ...@@ -14,7 +14,8 @@ model User {
14 email String @unique 14 email String @unique
15 password String 15 password String
16 name String 16 name String
17 - loginSecret String? 17 + emailSecret String?
18 + phoneSecret String?
18 bio String? 19 bio String?
19 rooms Room[] @relation(references: [id]) 20 rooms Room[] @relation(references: [id])
20 messages Message[] 21 messages Message[]
......
1 -import { prisma } from "../../../utils";
2 -
3 -export default {
4 - Mutation: {
5 - confirmSecretKey: async (_, args) => {},
6 - },
7 -};
1 -import { prisma } from "../../../utils"; 1 +import { prisma, generateToken } from "../../../utils";
2 import bcrypt from "bcryptjs"; 2 import bcrypt from "bcryptjs";
3 -import jwt from "jsonwebtoken";
4 3
5 export default { 4 export default {
6 Mutation: { 5 Mutation: {
...@@ -16,12 +15,7 @@ export default { ...@@ -16,12 +15,7 @@ export default {
16 password: encryptPw, 15 password: encryptPw,
17 }, 16 },
18 }); 17 });
19 - const token = jwt.sign( 18 + const token = generateToken(user.id);
20 - {
21 - id: user.id,
22 - },
23 - process.env.JWT_SECRET
24 - );
25 return { token, user }; 19 return { token, user };
26 }, 20 },
27 }, 21 },
......
1 +type Query {
2 + findEmail(secret: String!): User!
3 +}
1 import { prisma } from "../../../utils"; 1 import { prisma } from "../../../utils";
2 2
3 export default { 3 export default {
4 - Mutation: { 4 + Query: {
5 - requestSecretKey: async (_, args, { request }) => { 5 + findEmail: async (_, args) => {
6 - const { email } = args; 6 + const { secret } = args;
7 }, 7 },
8 }, 8 },
9 }; 9 };
......
1 type Mutation { 1 type Mutation {
2 - confirmSecretKey(secret: String!, email: String!): String! 2 + requestEmailSecret(email: String!): Boolean!
3 } 3 }
......
1 +import { prisma, generateSecret, sendSecretMail } from "../../../utils";
2 +import bcrypt from "bcryptjs";
3 +
4 +export default {
5 + Mutation: {
6 + requestEmailSecret: async (_, args) => {
7 + const { email } = args;
8 + const emailSecret = generateSecret();
9 + const encryptSecret = await bcrypt.hash(emailSecret, 10);
10 + try {
11 + await sendSecretMail(email, emailSecret);
12 + await prisma.user.update({
13 + where: {
14 + email,
15 + },
16 + data: {
17 + emailSecret: encryptSecret,
18 + },
19 + });
20 + return true;
21 + } catch (error) {
22 + console.log(error);
23 + return false;
24 + }
25 + },
26 + },
27 +};
1 -type Mutation {
2 - requestSecretKey(email: String!): Boolean!
3 -}
1 +type Mutation {
2 + resetPassword(
3 + secret: String!
4 + email: String!
5 + passwordOne: String!
6 + passwordTwo: String!
7 + ): User!
8 +}
1 +import { prisma } from "../../../utils";
2 +import bcrypt from "bcryptjs";
3 +
4 +export default {
5 + Mutation: {
6 + resetPassword: async (_, args) => {
7 + const { secret, email, passwordOne, passwordTwo } = args;
8 + const user = await prisma.user.findOne({
9 + where: {
10 + email,
11 + },
12 + });
13 + const encryptSecret = await bcrypt.hash(user.emailSecret, 10);
14 + if (encryptSecret !== secret) {
15 + throw new Error(
16 + "not vaild secret value!, input another value or resend email"
17 + );
18 + } else {
19 + if (passwordOne !== passwordTwo) {
20 + // For check new password is right, the two things must be same.
21 + throw new Error("the two password don't match each other, try again");
22 + } else {
23 + await prisma.user.update({
24 + where: {
25 + email,
26 + },
27 + data: {
28 + emailSecret: "",
29 + password: passwordOne,
30 + },
31 + });
32 + }
33 + return user;
34 + }
35 + },
36 + },
37 +};
...@@ -4,10 +4,12 @@ type User { ...@@ -4,10 +4,12 @@ type User {
4 name: String 4 name: String
5 email: String! 5 email: String!
6 password: String 6 password: String
7 - loginSecret: String 7 + emailSecret: String
8 + phoneSecret: String
8 bio: String 9 bio: String
9 rooms: [Room] 10 rooms: [Room]
10 createdAt: String 11 createdAt: String
12 + messages: [Message]
11 } 13 }
12 14
13 type Room { 15 type Room {
......
1 -import jwt from "jsonwebtoken";
2 import { PrismaClient } from "@prisma/client"; 1 import { PrismaClient } from "@prisma/client";
2 +import { nouns, adjectives } from "./words";
3 +import jwt from "jsonwebtoken";
4 +import nodemailer from "nodemailer";
5 +import sgTransport from "nodemailer-sendgrid-transport";
3 6
4 export const prisma = new PrismaClient(); 7 export const prisma = new PrismaClient();
5 8
...@@ -12,3 +15,31 @@ export const getUserId = (context) => { ...@@ -12,3 +15,31 @@ export const getUserId = (context) => {
12 } 15 }
13 throw new Error("There is no vaild user"); 16 throw new Error("There is no vaild user");
14 }; 17 };
18 +
19 +export const generateSecret = () => {
20 + const randomNumber = Math.floor(Math.random() * adjectives.length);
21 + return `${adjectives[randomNumber]} ${nouns[randomNumber]}`;
22 +};
23 +
24 +const sendEmail = (email) => {
25 + const options = {
26 + auth: {
27 + api_user: process.env.SENDGRID_USERNAME,
28 + api_password: process.env.SENDGRID_PASSWORD,
29 + },
30 + };
31 + const client = nodemailer.createTransport(sgTransport(options));
32 + return client.sendMail(email);
33 +};
34 +
35 +export const sendSecretMail = (address, emailSecret, value) => {
36 + const email = {
37 + from: "vel1024@khu.ac.kr",
38 + to: address,
39 + subject: `Authentication key for forgotten ${value}`,
40 + html: `Hello, This is khuchat, authentication key is <b>${emailSecret}</b>, copy and paste it, Thanks.`,
41 + };
42 + return sendEmail(email);
43 +};
44 +
45 +export const generateToken = (id) => jwt.sign({ id }, process.env.JWT_SECRET);
......
1 +export const adjectives = [
2 + "languid",
3 + "expensive",
4 + "careful",
5 + "feeble",
6 + "inconclusive",
7 + "damp",
8 + "obscene",
9 + "optimal",
10 + "learned",
11 + "measly",
12 + "silent",
13 + "absurd",
14 + "hypnotic",
15 + "smart",
16 + "horrible",
17 + "deep",
18 + "grotesque",
19 + "rigid",
20 + "sweltering",
21 + "quirky",
22 + "pointless",
23 + "spiffy",
24 + "cheap",
25 + "psychotic",
26 + "possible",
27 + "burly",
28 + "huge",
29 + "tranquil",
30 + "impolite",
31 + "clear",
32 + "groovy",
33 + "royal",
34 + "envious",
35 + "voracious",
36 + "substantial",
37 + "gusty",
38 + "absorbing",
39 + "wealthy",
40 + "fancy",
41 + "ultra",
42 + "giant",
43 + "harmonious",
44 + "nauseating",
45 + "literate",
46 + "friendly",
47 + "panicky",
48 + "utopian",
49 + "happy",
50 + "gaudy",
51 + "direful",
52 + "descriptive",
53 + "better",
54 + "ambiguous",
55 + "momentous",
56 + "obsequious",
57 + "secret",
58 + "clever",
59 + "far",
60 + "temporary",
61 + "unable",
62 + "normal",
63 + "imported",
64 + "three",
65 + "five",
66 + "petite",
67 + "natural",
68 + "early",
69 + "profuse",
70 + "flimsy",
71 + "bustling",
72 + "scrawny",
73 + "present",
74 + "gruesome",
75 + "cut",
76 + "fantastic",
77 + "grandiose",
78 + "second-hand",
79 + "noiseless",
80 + "craven",
81 + "grubby",
82 + "vengeful",
83 + "tiny",
84 + "wiry",
85 + "auspicious",
86 + "dull",
87 + "quiet",
88 + "terrific",
89 + "furry",
90 + "crooked",
91 + "wholesale",
92 + "panoramic",
93 + "forgetful",
94 + "gamy",
95 + "victorious",
96 + "special",
97 + "neighborly",
98 + "useful",
99 + "chubby",
100 + "probable",
101 + "abnormal",
102 +];
103 +
104 +export const nouns = [
105 + "rat",
106 + "start",
107 + "icicle",
108 + "hobbies",
109 + "books",
110 + "dress",
111 + "board",
112 + "scale",
113 + "cattle",
114 + "quince",
115 + "cabbage",
116 + "chance",
117 + "attack",
118 + "linen",
119 + "swing",
120 + "skin",
121 + "channel",
122 + "discovery",
123 + "window",
124 + "watch",
125 + "collar",
126 + "creature",
127 + "fall",
128 + "rod",
129 + "skirt",
130 + "trousers",
131 + "guitar",
132 + "pest",
133 + "middle",
134 + "holiday",
135 + "invention",
136 + "pump",
137 + "morning",
138 + "reaction",
139 + "wash",
140 + "cloth",
141 + "hydrant",
142 + "committee",
143 + "meeting",
144 + "star",
145 + "pigs",
146 + "bikes",
147 + "plant",
148 + "stomach",
149 + "transport",
150 + "hole",
151 + "library",
152 + "tank",
153 + "hands",
154 + "offer",
155 + "slip",
156 + "chicken",
157 + "sand",
158 + "wilderness",
159 + "sweater",
160 + "frogs",
161 + "basket",
162 + "flesh",
163 + "cook",
164 + "girl",
165 + "queen",
166 + "nut",
167 + "force",
168 + "laborer",
169 + "basin",
170 + "lumber",
171 + "mine",
172 + "mountain",
173 + "insect",
174 + "store",
175 + "experience",
176 + "credit",
177 + "meat",
178 + "taste",
179 + "iron",
180 + "regret",
181 + "sleep",
182 + "notebook",
183 + "powder",
184 + "fuel",
185 + "lace",
186 + "volleyball",
187 + "look",
188 + "ticket",
189 + "place",
190 + "digestion",
191 + "point",
192 + "crook",
193 + "train",
194 + "judge",
195 + "time",
196 + "truck",
197 + "record",
198 + "sheet",
199 + "join",
200 + "achiever",
201 + "spring",
202 + "death",
203 + "potato",
204 + "liquid",
205 +];