diff --git a/package-lock.json b/package-lock.json index fcdd5cd..96a6b5d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "rats-search", - "version": "0.6.1", + "version": "0.8.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1457,15 +1457,14 @@ } }, "addr-to-ip-port": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/addr-to-ip-port/-/addr-to-ip-port-1.4.2.tgz", - "integrity": "sha1-fkb/Hya3qfXjP9g51XrvYwO0xpI=" + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/addr-to-ip-port/-/addr-to-ip-port-1.4.3.tgz", + "integrity": "sha512-+KHTG8KSAFdKYmLNZp3VnKj94AZ94gDdu2ipAwxNuMmN9vpf5hdsQgk1hNXFqQOXfd+BMHokyDa1GwDAlGAtGQ==" }, "ajv": { "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, "requires": { "co": "4.6.0", "fast-deep-equal": "1.0.0", @@ -1787,8 +1786,7 @@ "asn1": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "dev": true + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" }, "asn1.js": { "version": "4.9.2", @@ -1813,8 +1811,7 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "assertion-error": { "version": "1.1.0", @@ -1832,7 +1829,6 @@ "version": "2.6.0", "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "dev": true, "requires": { "lodash": "4.17.5" } @@ -1857,8 +1853,7 @@ "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "atob": { "version": "1.1.3", @@ -1900,14 +1895,12 @@ "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", - "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", - "dev": true + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" }, "babel-code-frame": { "version": "6.26.0", @@ -2031,7 +2024,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", - "dev": true, "optional": true, "requires": { "tweetnacl": "0.14.5" @@ -2110,13 +2102,13 @@ "integrity": "sha1-n2dWEvDmr8bvNFDfulH/cjir83E=" }, "bittorrent-protocol": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/bittorrent-protocol/-/bittorrent-protocol-2.2.3.tgz", - "integrity": "sha512-nMPIjGGuQS9InlqYfXUZrxaivlftJLbSLQI1WQYBG1od1FnIf1iU2mN4tJctPvqw95jZ6qfAHig6dPIeKCXhrg==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/bittorrent-protocol/-/bittorrent-protocol-2.4.0.tgz", + "integrity": "sha512-q5ILfNwWpVLu1/+djBaDeDZBvJq0fXpKy2jchyfFZlyTqOG2snMd3jlpss4BVsklpjs8rbLPH/7N+SfvrsT3+g==", "requires": { - "bencode": "1.0.0", - "bitfield": "1.1.2", - "debug": "2.6.9", + "bencode": "2.0.0", + "bitfield": "2.0.0", + "debug": "3.1.0", "inherits": "2.0.3", "randombytes": "2.0.6", "readable-stream": "2.3.4", @@ -2126,14 +2118,19 @@ "xtend": "4.0.1" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", "requires": { - "ms": "2.0.0" + "safe-buffer": "5.1.1" } }, + "bitfield": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bitfield/-/bitfield-2.0.0.tgz", + "integrity": "sha512-4xM4DYejOHQ/qWBfeqBXNA4mJ12PwcOibFYnH1kYh5U9BHciCqEJBqGNVnMJXUhm8mflujNRLSv7IiVQxovgjw==" + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -2179,11 +2176,11 @@ } }, "bittorrent-tracker": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-9.4.0.tgz", - "integrity": "sha512-crjYvkPtIJa+0DELC49AEAAgte+Z9a3DUxssW4he5xmsXltl3A6PnG4YnLcDYexdMM/RSqUSWhArFanU+XnyOw==", + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-9.6.0.tgz", + "integrity": "sha512-WEypMPSaVnfeWD1dEE83CqkykFjEzxmMPziHKuBEayaE3M9e1E/HYORrZ+29NoePB9ysiGHy7c8wMrtaoUfjcw==", "requires": { - "bencode": "1.0.0", + "bencode": "2.0.0", "bittorrent-peerid": "1.2.0", "bn.js": "4.11.8", "bufferutil": "3.0.3", @@ -2200,20 +2197,72 @@ "run-series": "1.1.4", "safe-buffer": "5.1.1", "simple-get": "2.7.0", - "simple-peer": "8.5.0", + "simple-peer": "9.0.0", "simple-websocket": "7.0.1", "string2compact": "1.2.2", "uniq": "1.0.1", "unordered-array-remove": "1.0.2", - "ws": "4.0.0", + "ws": "4.1.0", "xtend": "4.0.1" }, "dependencies": { + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "readable-stream": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.4.tgz", + "integrity": "sha512-vuYxeWYM+fde14+rajzqgeohAI7YoJcHE7kXDAc4Nk0EbuKnJfqtY9YtRkLo/tqkuF7MsBQRhPnPeyjYITp3ZQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "simple-peer": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/simple-peer/-/simple-peer-9.0.0.tgz", + "integrity": "sha512-oQEM7S540h7+aOgttTputZ9Nkd5DP9jqMif2fdUvoRGVvjBn5jIeV8CADOULMosRIYaaAXKzkB6G6xUw3MLIXQ==", + "requires": { + "debug": "3.1.0", + "get-browser-rtc": "1.0.2", + "inherits": "2.0.3", + "randombytes": "2.0.6", + "readable-stream": "2.3.4" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", @@ -2329,7 +2378,6 @@ "version": "4.3.1", "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", - "dev": true, "requires": { "hoek": "4.2.0" } @@ -2739,8 +2787,7 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "center-align": { "version": "0.1.3", @@ -3104,8 +3151,7 @@ "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" }, "coa": { "version": "1.0.4", @@ -3192,7 +3238,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", - "dev": true, "requires": { "delayed-stream": "1.0.0" } @@ -3470,11 +3515,11 @@ } }, "create-torrent": { - "version": "3.29.2", - "resolved": "https://registry.npmjs.org/create-torrent/-/create-torrent-3.29.2.tgz", - "integrity": "sha512-UG4yQZ9XiXXHAJdb0HI4If+GQg3PMRIpYoFYvMbgrL4vgjOpcPs7qQPBWqnxWul/gGGVdBk/n0Oa6XLV6xGONA==", + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/create-torrent/-/create-torrent-3.30.0.tgz", + "integrity": "sha512-sTpbGpKKw/PaV7FHW6xhluPeAHe+hA+j4BIp8QY5abHxco45TCk08H5Joiv7lDAjP9YhSw6jWnJzJwJc6sILSw==", "requires": { - "bencode": "1.0.0", + "bencode": "2.0.0", "block-stream2": "1.1.0", "filestream": "4.1.3", "flatten": "1.0.2", @@ -3490,6 +3535,14 @@ "xtend": "4.0.1" }, "dependencies": { + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", + "requires": { + "safe-buffer": "5.1.1" + } + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -3549,7 +3602,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", - "dev": true, "requires": { "boom": "5.2.0" }, @@ -3558,7 +3610,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", - "dev": true, "requires": { "hoek": "4.2.0" } @@ -3787,7 +3838,6 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, "requires": { "assert-plus": "1.0.0" } @@ -3863,8 +3913,7 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, "delegates": { "version": "1.0.0", @@ -4008,7 +4057,6 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "dev": true, "optional": true, "requires": { "jsbn": "0.1.1" @@ -4779,20 +4827,17 @@ "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fast-deep-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", - "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=", - "dev": true + "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, "fastparse": { "version": "1.1.1", @@ -4951,14 +4996,12 @@ "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", - "dev": true, "requires": { "asynckit": "0.4.0", "combined-stream": "1.0.5", @@ -6054,7 +6097,6 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, "requires": { "assert-plus": "1.0.0" } @@ -6156,14 +6198,12 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "dev": true, "requires": { "ajv": "5.5.2", "har-schema": "2.0.0" @@ -6282,7 +6322,6 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", - "dev": true, "requires": { "boom": "4.3.1", "cryptiles": "3.1.2", @@ -6310,8 +6349,7 @@ "hoek": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", - "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==", - "dev": true + "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" }, "hoist-non-react-statics": { "version": "2.3.1", @@ -6340,7 +6378,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, "requires": { "assert-plus": "1.0.0", "jsprim": "1.4.1", @@ -6953,8 +6990,7 @@ "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "js-base64": { "version": "2.4.3", @@ -6981,7 +7017,6 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true, "optional": true }, "jsesc": { @@ -7005,14 +7040,12 @@ "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" }, "json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, "json-socket": { "version": "0.3.0", @@ -7022,8 +7055,7 @@ "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { "version": "0.5.1", @@ -7044,7 +7076,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -7074,19 +7105,29 @@ "requires": { "buffer-equals": "1.0.4", "k-bucket": "3.3.1", - "k-rpc-socket": "1.7.2", + "k-rpc-socket": "1.8.0", "randombytes": "2.0.6", "safe-buffer": "5.1.1" } }, "k-rpc-socket": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/k-rpc-socket/-/k-rpc-socket-1.7.2.tgz", - "integrity": "sha512-g1FH/9Ahiy9iAfH/fwqpoaD6KgpgKRdzG++1hEuH6Lg9epAgYwG2ca37CMDgIIegyju0Ct8GO1eVaBCkAcbABQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/k-rpc-socket/-/k-rpc-socket-1.8.0.tgz", + "integrity": "sha512-f/9TynsO8YYjZ6JjNNtSSH7CJcIHcio1buy3zqByGxb/GX8AWLdL6FZEWTrN8V3/J7W4/E0ZTQQ+Jt2rVq7ELg==", "requires": { - "bencode": "1.0.0", + "bencode": "2.0.0", "buffer-equals": "1.0.4", "safe-buffer": "5.1.1" + }, + "dependencies": { + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", + "requires": { + "safe-buffer": "5.1.1" + } + } } }, "keycode": { @@ -7112,6 +7153,11 @@ "graceful-fs": "4.1.11" } }, + "last-one-wins": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/last-one-wins/-/last-one-wins-1.0.4.tgz", + "integrity": "sha1-wb/Qy8tGeQ7JFWuNGu6Py4bNoio=" + }, "latest-version": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", @@ -7604,7 +7650,6 @@ "version": "2.1.17", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", - "dev": true, "requires": { "mime-db": "1.30.0" } @@ -7904,6 +7949,17 @@ } } }, + "nat-upnp": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/nat-upnp/-/nat-upnp-1.1.1.tgz", + "integrity": "sha512-b1Q+sf9fHGCXhlWErNgTTEto8A02MnNysw3vx3kD1657+/Ae23vPEAB6QBh+9RqLL4+xw/LmjVTiLy6A7Cx0xw==", + "requires": { + "async": "2.6.0", + "ip": "1.1.5", + "request": "2.83.0", + "xml2js": "0.1.14" + } + }, "nerf-dart": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/nerf-dart/-/nerf-dart-1.0.0.tgz", @@ -7921,9 +7977,9 @@ "integrity": "sha1-53eKzeLlWALgrRh5w5z2917aYdg=" }, "node-abi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.2.0.tgz", - "integrity": "sha512-FqVC0WNNL8fQWQK3GYTESfwZXZKDbSIiEEIvufq7HV6Lj0IDDZRVa4CU/KTA0JVlqY9eTDSuPiC8FS9UfGVuzA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.3.0.tgz", + "integrity": "sha512-zwm6vU3SsVgw3e9fu48JBaRBCJGIvAgysDsqtf5+vEexFE71bEOtaMWb5zr/zODZNzTPtQlqUUpC79k68Hspow==", "optional": true, "requires": { "semver": "5.5.0" @@ -8119,8 +8175,7 @@ "oauth-sign": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" }, "object-assign": { "version": "4.1.1", @@ -8426,7 +8481,7 @@ "blob-to-buffer": "1.2.7", "get-stdin": "5.0.1", "magnet-uri": "5.1.7", - "parse-torrent-file": "4.0.3", + "parse-torrent-file": "4.1.0", "simple-get": "2.7.0" }, "dependencies": { @@ -8438,13 +8493,23 @@ } }, "parse-torrent-file": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.0.3.tgz", - "integrity": "sha512-Ob1IK1FC165T6dslPBdgxfbQIZI1+QE0sqOfoB+YS/XfDda2Xa2xDZmE0vcGD4ei5Lw6FQYNhsHX9RzZzHwFtQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.1.0.tgz", + "integrity": "sha512-Bd6yLjRgkl0dfMi7/x9hJDL1eaAnmhFD3JoCLTuIjR+CM9gr55YMHNo+hTbObYjoj2SPWIUAelZMQ5IbpmzbmQ==", "requires": { - "bencode": "1.0.0", + "bencode": "2.0.0", "simple-sha1": "2.1.0", "uniq": "1.0.1" + }, + "dependencies": { + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", + "requires": { + "safe-buffer": "5.1.1" + } + } } }, "pascalcase": { @@ -8534,8 +8599,7 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "piece-length": { "version": "1.0.0", @@ -9105,7 +9169,7 @@ "github-from-package": "0.0.0", "minimist": "1.2.0", "mkdirp": "0.5.1", - "node-abi": "2.2.0", + "node-abi": "2.3.0", "noop-logger": "0.1.1", "npmlog": "4.1.2", "os-homedir": "1.0.2", @@ -9261,8 +9325,7 @@ "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "pupa": { "version": "1.0.0", @@ -9278,8 +9341,7 @@ "qs": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" }, "query-string": { "version": "4.3.4", @@ -9680,6 +9742,11 @@ "symbol-observable": "1.2.0" } }, + "record-cache": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/record-cache/-/record-cache-1.0.1.tgz", + "integrity": "sha512-PqZBqRbn00rDt2nAvb/7oC5dbhY0VuOUjLhFKqZ6C7aaJmSc1BgqewKXxFScXnFe4cCZAmTvD4xRLimtvOIi1A==" + }, "redent": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", @@ -9865,9 +9932,9 @@ "dev": true }, "render-media": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/render-media/-/render-media-2.10.0.tgz", - "integrity": "sha1-V/OfigJn5KZ5XPuhlImYK0BxdFo=", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/render-media/-/render-media-2.11.0.tgz", + "integrity": "sha512-TjQjOxZ0HfSxZCfSSMxMvQNvXgQhPScpH8kd+zt+BE65jXVXa65mMPfEMmvGzMpDuXHgqJzAtvdcnXcxMaTu+A==", "requires": { "debug": "2.6.9", "is-ascii": "1.0.0", @@ -9915,7 +9982,6 @@ "version": "2.83.0", "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", - "dev": true, "requires": { "aws-sign2": "0.7.0", "aws4": "1.6.0", @@ -10036,9 +10102,9 @@ "integrity": "sha1-iac93F51ye+KtjIMChYA1qQRebk=" }, "rusha": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/rusha/-/rusha-0.8.12.tgz", - "integrity": "sha1-XYOM4fzosUVnTudx6q1byyV15ks=" + "version": "0.8.13", + "resolved": "https://registry.npmjs.org/rusha/-/rusha-0.8.13.tgz", + "integrity": "sha1-mghOe4YLF7/zAVuSxnpqM2GRUTo=" }, "rx-lite": { "version": "4.0.8", @@ -10235,7 +10301,7 @@ "resolved": "https://registry.npmjs.org/simple-sha1/-/simple-sha1-2.1.0.tgz", "integrity": "sha1-lCe7lv8SY8wQqEFM7dUaGLkZ6LM=", "requires": { - "rusha": "0.8.12" + "rusha": "0.8.13" } }, "simple-websocket": { @@ -10248,7 +10314,7 @@ "randombytes": "2.0.6", "readable-stream": "2.3.4", "safe-buffer": "5.1.1", - "ws": "4.0.0" + "ws": "4.1.0" }, "dependencies": { "isarray": { @@ -10444,7 +10510,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", - "dev": true, "requires": { "hoek": "4.2.0" } @@ -10602,7 +10667,6 @@ "version": "1.13.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", - "dev": true, "requires": { "asn1": "0.2.3", "assert-plus": "1.0.0", @@ -10856,7 +10920,7 @@ "resolved": "https://registry.npmjs.org/string2compact/-/string2compact-1.2.2.tgz", "integrity": "sha1-Qgs6nuHEaFSRm0oq6sZcQ/pQWXs=", "requires": { - "addr-to-ip-port": "1.4.2", + "addr-to-ip-port": "1.4.3", "ipaddr.js": "1.5.4" } }, @@ -10869,8 +10933,7 @@ "stringstream": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", - "dev": true + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" }, "strip-ansi": { "version": "3.0.1", @@ -11263,24 +11326,43 @@ } }, "torrent-discovery": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-8.3.1.tgz", - "integrity": "sha1-e0+jOQwqlau4e0sDJDazCArWrdY=", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-8.4.0.tgz", + "integrity": "sha512-UzlkS9UBynp1HdkuNjFfRIKVLG/TyEiKQGkvHDiBV2pzyD0mpB+vn15iqDuNkNXX6qF0OwBVe1eU/PyvI14I0w==", "requires": { - "bittorrent-dht": "7.10.0", - "bittorrent-tracker": "9.4.0", - "debug": "2.6.9", + "bittorrent-dht": "8.1.0", + "bittorrent-tracker": "9.6.0", + "debug": "3.1.0", "inherits": "2.0.3", "run-parallel": "1.1.7", "xtend": "4.0.1" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", "requires": { - "ms": "2.0.0" + "safe-buffer": "5.1.1" + } + }, + "bittorrent-dht": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-8.1.0.tgz", + "integrity": "sha512-Lm8iBOIjeVRz+28aKYANGeJzQLNDr49bWobde86vCcx2/DVKIao3lOWEnlzu0j39D8PHfGmO7L/ixMiCv1/CJQ==", + "requires": { + "bencode": "2.0.0", + "buffer-equals": "1.0.4", + "debug": "3.1.0", + "inherits": "2.0.3", + "k-bucket": "3.3.1", + "k-rpc": "4.2.1", + "last-one-wins": "1.0.4", + "lru": "3.1.0", + "randombytes": "2.0.6", + "record-cache": "1.0.1", + "safe-buffer": "5.1.1", + "simple-sha1": "2.1.0" } }, "xtend": { @@ -11299,7 +11381,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", - "dev": true, "requires": { "punycode": "1.4.1" } @@ -11358,7 +11439,6 @@ "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, "optional": true }, "type-detect": { @@ -11457,11 +11537,6 @@ "resolved": "https://registry.npmjs.org/uint64be/-/uint64be-1.0.1.tgz", "integrity": "sha1-H3FUIC8qG4rzU4cd2mUb80zpPpU=" }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" - }, "unherit": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.0.tgz", @@ -11842,37 +11917,52 @@ } }, "ut_metadata": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/ut_metadata/-/ut_metadata-3.0.11.tgz", - "integrity": "sha512-PbDsUBK3zyiL3q4i785QtLMpuYHDToGFt2HGnb6Ax9dGIYYVfeGKmAiRf4n0wvz3bqoIvESDBO/He/6QErpakg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ut_metadata/-/ut_metadata-3.2.0.tgz", + "integrity": "sha512-EfEV2pPUYCBDSLb1ZO5e+XloK2npOJKb3adc7Oxc4nZyPpB5Ke7SSdLk1TVlsc6LJG1KCP9ARQ1WrwmLdgGF2A==", "requires": { - "bencode": "1.0.0", - "bitfield": "1.1.2", - "debug": "2.6.9", + "bencode": "2.0.0", + "bitfield": "2.0.0", + "debug": "3.1.0", "inherits": "2.0.3", "safe-buffer": "5.1.1", "simple-sha1": "2.1.0" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", "requires": { - "ms": "2.0.0" + "safe-buffer": "5.1.1" } + }, + "bitfield": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bitfield/-/bitfield-2.0.0.tgz", + "integrity": "sha512-4xM4DYejOHQ/qWBfeqBXNA4mJ12PwcOibFYnH1kYh5U9BHciCqEJBqGNVnMJXUhm8mflujNRLSv7IiVQxovgjw==" } } }, "ut_pex": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/ut_pex/-/ut_pex-1.1.6.tgz", - "integrity": "sha512-cgIQHCp7FSGFmuD8qzDL0cSBT0rnImYwxWkCzpfhgCc6XMKqmZdNT8+fgw4U0Fbba/Az/q8uZR2loR8EymFmLg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ut_pex/-/ut_pex-1.2.0.tgz", + "integrity": "sha512-ICiTfNctYEW7k70OYtRA5cqg1hwOKIRiC903CIJDLZQM0afPV0drf8c4LHFSaDuNZTyZeC5P5EjGLOTfWQIn1g==", "requires": { - "bencode": "1.0.0", + "bencode": "2.0.0", "compact2string": "1.4.0", "inherits": "2.0.3", "string2compact": "1.2.2" + }, + "dependencies": { + "bencode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.0.tgz", + "integrity": "sha512-wr2HwwrUpfB5c68zmAudOltC7rZ1G0+lQOcnuEcfIM3AWAVnB3rHI3nlgd/2CWTfQ3w3zagKt89zni/M+VLZ8g==", + "requires": { + "safe-buffer": "5.1.1" + } + } } }, "utf8-byte-length": { @@ -11906,8 +11996,7 @@ "uuid": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", - "dev": true + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" }, "validate-npm-package-license": { "version": "3.0.1", @@ -11935,7 +12024,6 @@ "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, "requires": { "assert-plus": "1.0.0", "core-util-is": "1.0.2", @@ -12282,12 +12370,12 @@ "webtorrent": { "version": "github:DEgITx/webtorrent#4222a53369e420ab98e7c61adab3de56d0cefff6", "requires": { - "addr-to-ip-port": "1.4.2", + "addr-to-ip-port": "1.4.3", "bitfield": "1.1.2", "bittorrent-dht": "7.10.0", - "bittorrent-protocol": "2.2.3", + "bittorrent-protocol": "2.4.0", "chunk-store-stream": "2.0.2", - "create-torrent": "3.29.2", + "create-torrent": "3.30.0", "debug": "3.1.0", "end-of-stream": "1.4.1", "fs-chunk-store": "1.6.5", @@ -12304,7 +12392,7 @@ "randombytes": "2.0.6", "range-parser": "1.2.0", "readable-stream": "2.3.4", - "render-media": "2.10.0", + "render-media": "2.11.0", "run-parallel": "1.1.7", "run-parallel-limit": "1.0.3", "safe-buffer": "5.1.1", @@ -12316,12 +12404,12 @@ "stream-to-blob": "1.0.0", "stream-to-blob-url": "2.1.0", "stream-with-known-length-to-buffer": "1.0.0", - "torrent-discovery": "8.3.1", + "torrent-discovery": "8.4.0", "torrent-piece": "1.1.1", "uniq": "1.0.1", "unordered-array-remove": "1.0.2", - "ut_metadata": "3.0.11", - "ut_pex": "1.1.6", + "ut_metadata": "3.2.0", + "ut_pex": "1.2.0", "xtend": "4.0.1", "zero-fill": "2.2.3" }, @@ -12492,13 +12580,12 @@ } }, "ws": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-4.0.0.tgz", - "integrity": "sha512-QYslsH44bH8O7/W2815u5DpnCpXWpEK44FmaHffNwgJI4JMaSZONgPBTOfrxJ29mXKbXak+LsJ2uAkDTYq2ptQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-4.1.0.tgz", + "integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==", "requires": { "async-limiter": "1.0.0", - "safe-buffer": "5.1.1", - "ultron": "1.1.1" + "safe-buffer": "5.1.1" } }, "x-is-function": { @@ -12517,6 +12604,14 @@ "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", "dev": true }, + "xml2js": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.1.14.tgz", + "integrity": "sha1-UnTmf1pkxfkpdM2FE54DMq3GuQw=", + "requires": { + "sax": "1.2.4" + } + }, "xmlbuilder": { "version": "8.2.2", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz", diff --git a/package.json b/package.json index 00ec163..d6ae74c 100644 --- a/package.json +++ b/package.json @@ -91,6 +91,7 @@ "material-ui": "^0.20.0", "moment": "^2.20.1", "mysql": "^2.15.0", + "nat-upnp": "^1.1.1", "react": "^16.2.0", "react-dom": "^16.2.0", "react-input-range": "^1.3.0", diff --git a/src/app/admin-page.js b/src/app/admin-page.js index 9ae2518..b93df0c 100644 --- a/src/app/admin-page.js +++ b/src/app/admin-page.js @@ -110,6 +110,16 @@ export default class AdminPage extends Page {