diff --git a/package.json b/package.json index ba2d62f..7e76d0c 100644 --- a/package.json +++ b/package.json @@ -19,14 +19,12 @@ "homepage": "https://gitdab.com/Cynosphere/HiddenPhox#readme", "dependencies": { "@ctrl/tinycolor": "^3.4.1", - "@discordjs/opus": "^0.9.0", - "@discordjs/voice": "^0.14.0", + "@projectdysnomia/dysnomia": "github:projectdysnomia/dysnomia#chore/housekeeping", "dumpy": "github:Cynosphere/dumpy.js", "google-images": "^2.1.0", "jimp": "^0.16.1", "murmurhash": "^2.0.0", "node-ffprobe": "^3.0.0", - "oceanic.js": "^1.1.2", "play-dl": "^1.9.6", "sharp": "^0.28.3", "sqlite3": "^5.0.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e4f6a4d..c013163 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2,8 +2,7 @@ lockfileVersion: 5.4 specifiers: '@ctrl/tinycolor': ^3.4.1 - '@discordjs/opus': ^0.9.0 - '@discordjs/voice': ^0.14.0 + '@projectdysnomia/dysnomia': github:projectdysnomia/dysnomia#chore/housekeeping dumpy: github:Cynosphere/dumpy.js eslint: ^7.26.0 google-images: ^2.1.0 @@ -11,7 +10,6 @@ specifiers: jimp: ^0.16.1 murmurhash: ^2.0.0 node-ffprobe: ^3.0.0 - oceanic.js: ^1.1.2 play-dl: ^1.9.6 prettier: ^2.3.0 sharp: ^0.28.3 @@ -19,14 +17,12 @@ specifiers: dependencies: '@ctrl/tinycolor': 3.4.1 - '@discordjs/opus': 0.9.0 - '@discordjs/voice': 0.14.0_@discordjs+opus@0.9.0 + '@projectdysnomia/dysnomia': github.com/projectdysnomia/dysnomia/13237a1778b426dea2ceda35be89a34092f215dd dumpy: github.com/Cynosphere/dumpy.js/5fc22353cdcb97084bab572266390e780d9f7a7b google-images: 2.1.0 jimp: 0.16.1 murmurhash: 2.0.0 node-ffprobe: 3.0.0 - oceanic.js: 1.1.2_@discordjs+opus@0.9.0 play-dl: 1.9.6 sharp: 0.28.3 sqlite3: 5.0.2 @@ -67,74 +63,6 @@ packages: engines: {node: '>=10'} dev: false - /@discordjs/node-pre-gyp/0.4.5: - resolution: {integrity: sha512-YJOVVZ545x24mHzANfYoy0BJX5PDyeZlpiJjDkUBM/V/Ao7TFX9lcUvCN4nr0tbr5ubeaXxtEBILUrHtTphVeQ==} - hasBin: true - dependencies: - detect-libc: 2.0.1 - https-proxy-agent: 5.0.1 - make-dir: 3.1.0 - node-fetch: 2.6.7 - nopt: 5.0.0 - npmlog: 5.0.1 - rimraf: 3.0.2 - semver: 7.3.5 - tar: 6.1.13 - transitivePeerDependencies: - - encoding - - supports-color - dev: false - - /@discordjs/opus/0.9.0: - resolution: {integrity: sha512-NEE76A96FtQ5YuoAVlOlB3ryMPrkXbUCTQICHGKb8ShtjXyubGicjRMouHtP1RpuDdm16cDa+oI3aAMo1zQRUQ==} - engines: {node: '>=12.0.0'} - requiresBuild: true - dependencies: - '@discordjs/node-pre-gyp': 0.4.5 - node-addon-api: 5.0.0 - transitivePeerDependencies: - - encoding - - supports-color - dev: false - - /@discordjs/voice/0.11.0_@discordjs+opus@0.9.0: - resolution: {integrity: sha512-6+9cj1dxzBJm7WJ9qyG2XZZQ8rcLl6x2caW0C0OxuTtMLAaEDntpb6lqMTFiBg/rDc4Rd59g1w0gJmib33CuHw==} - engines: {node: '>=16.9.0'} - requiresBuild: true - dependencies: - '@types/ws': 8.5.3 - discord-api-types: 0.36.3 - prism-media: 1.3.4_@discordjs+opus@0.9.0 - tslib: 2.4.0 - ws: 8.9.0 - transitivePeerDependencies: - - '@discordjs/opus' - - bufferutil - - ffmpeg-static - - node-opus - - opusscript - - utf-8-validate - dev: false - optional: true - - /@discordjs/voice/0.14.0_@discordjs+opus@0.9.0: - resolution: {integrity: sha512-/LV8LSFuJ1c4OEW1ubPg3al2QNpUpwX8ZL+KL+LORmnUFVCtehSaEh+38uDfWg1O/TgiGI5vOLj4ZKql43drcw==} - engines: {node: '>=16.9.0'} - dependencies: - '@types/ws': 8.5.3 - discord-api-types: 0.37.21 - prism-media: 1.3.4_@discordjs+opus@0.9.0 - tslib: 2.4.1 - ws: 8.11.0 - transitivePeerDependencies: - - '@discordjs/opus' - - bufferutil - - ffmpeg-static - - node-opus - - opusscript - - utf-8-validate - dev: false - /@eslint/eslintrc/0.4.1: resolution: {integrity: sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==} engines: {node: ^10.12.0 || >=12.0.0} @@ -543,12 +471,6 @@ packages: '@types/node': 17.0.35 dev: false - /@types/ws/8.5.3: - resolution: {integrity: sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==} - dependencies: - '@types/node': 17.0.35 - dev: false - /abbrev/1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: false @@ -567,15 +489,6 @@ packages: hasBin: true dev: true - /agent-base/6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - dependencies: - debug: 4.3.1 - transitivePeerDependencies: - - supports-color - dev: false - /ajv/6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -608,11 +521,6 @@ packages: engines: {node: '>=8'} dev: true - /ansi-regex/5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - dev: false - /ansi-styles/3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -642,14 +550,6 @@ packages: readable-stream: 2.3.7 dev: false - /are-we-there-yet/2.0.0: - resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} - engines: {node: '>=10'} - dependencies: - delegates: 1.0.0 - readable-stream: 3.6.0 - dev: false - /argparse/1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} dependencies: @@ -741,13 +641,6 @@ packages: ieee754: 1.2.1 dev: false - /busboy/1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} - dependencies: - streamsearch: 1.1.0 - dev: false - /callsites/3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -784,11 +677,6 @@ packages: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} dev: false - /chownr/2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - dev: false - /code-point-at/1.1.0: resolution: {integrity: sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=} engines: {node: '>=0.10.0'} @@ -819,11 +707,6 @@ packages: simple-swizzle: 0.2.2 dev: false - /color-support/1.1.3: - resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} - hasBin: true - dev: false - /color/3.2.1: resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} dependencies: @@ -895,6 +778,7 @@ packages: optional: true dependencies: ms: 2.1.2 + dev: true /decompress-response/4.2.1: resolution: {integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==} @@ -928,20 +812,6 @@ packages: hasBin: true dev: false - /detect-libc/2.0.1: - resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==} - engines: {node: '>=8'} - dev: false - - /discord-api-types/0.36.3: - resolution: {integrity: sha512-bz/NDyG0KBo/tY14vSkrwQ/n3HKPf87a0WFW/1M9+tXYK+vp5Z5EksawfCWo2zkAc6o7CClc0eff1Pjrqznlwg==} - dev: false - optional: true - - /discord-api-types/0.37.21: - resolution: {integrity: sha512-GB4ThibZEzWXcvgL2QfjKoDX5j1sNLWtgibodiJ9M9PM0u9bdR2t3vZ24oQWLKlksJehSJmZDtRsAibhcr46vw==} - dev: false - /doctrine/3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} @@ -967,6 +837,7 @@ packages: /emoji-regex/8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: true /end-of-stream/1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} @@ -1180,13 +1051,6 @@ packages: minipass: 2.9.0 dev: false - /fs-minipass/2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - dependencies: - minipass: 3.3.6 - dev: false - /fs.realpath/1.0.0: resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} @@ -1218,21 +1082,6 @@ packages: wide-align: 1.1.3 dev: false - /gauge/3.0.2: - resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} - engines: {node: '>=10'} - dependencies: - aproba: 1.2.0 - color-support: 1.1.3 - console-control-strings: 1.1.0 - has-unicode: 2.0.1 - object-assign: 4.1.1 - signal-exit: 3.0.3 - string-width: 4.2.3 - strip-ansi: 6.0.1 - wide-align: 1.1.3 - dev: false - /get-stream/3.0.0: resolution: {integrity: sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=} engines: {node: '>=4'} @@ -1272,6 +1121,7 @@ packages: minimatch: 3.0.4 once: 1.4.0 path-is-absolute: 1.0.1 + dev: true /glob/7.1.7: resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} @@ -1376,16 +1226,6 @@ packages: dev: false optional: true - /https-proxy-agent/5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - dependencies: - agent-base: 6.0.2 - debug: 4.3.1 - transitivePeerDependencies: - - supports-color - dev: false - /husky/8.0.2: resolution: {integrity: sha512-Tkv80jtvbnkK3mYWxPZePGFpQ/tT3HNSs/sasF9P2YfkMezDl3ON37YN6jUUI4eTg5LcyVynlb6r4eyvOmspvg==} engines: {node: '>=14'} @@ -1464,6 +1304,7 @@ packages: /is-fullwidth-code-point/3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + dev: true /is-function/1.0.2: resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==} @@ -1607,13 +1448,6 @@ packages: dependencies: yallist: 4.0.0 - /make-dir/3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.0 - dev: false - /mime-db/1.48.0: resolution: {integrity: sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==} engines: {node: '>= 0.6'} @@ -1661,34 +1495,12 @@ packages: yallist: 3.1.1 dev: false - /minipass/3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - dependencies: - yallist: 4.0.0 - dev: false - - /minipass/4.0.0: - resolution: {integrity: sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==} - engines: {node: '>=8'} - dependencies: - yallist: 4.0.0 - dev: false - /minizlib/1.3.3: resolution: {integrity: sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==} dependencies: minipass: 2.9.0 dev: false - /minizlib/2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - dev: false - /mkdirp-classic/0.5.3: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} dev: false @@ -1700,14 +1512,9 @@ packages: minimist: 1.2.5 dev: false - /mkdirp/1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - dev: false - /ms/2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + dev: true /ms/2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -1747,10 +1554,6 @@ packages: resolution: {integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==} dev: false - /node-addon-api/5.0.0: - resolution: {integrity: sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==} - dev: false - /node-fetch/2.6.7: resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} engines: {node: 4.x || >=6.0.0} @@ -1824,14 +1627,6 @@ packages: osenv: 0.1.5 dev: false - /nopt/5.0.0: - resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} - engines: {node: '>=6'} - hasBin: true - dependencies: - abbrev: 1.1.1 - dev: false - /npm-bundled/1.1.2: resolution: {integrity: sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==} dependencies: @@ -1859,15 +1654,6 @@ packages: set-blocking: 2.0.0 dev: false - /npmlog/5.0.1: - resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} - dependencies: - are-we-there-yet: 2.0.0 - console-control-strings: 1.1.0 - gauge: 3.0.2 - set-blocking: 2.0.0 - dev: false - /number-is-nan/1.0.1: resolution: {integrity: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=} engines: {node: '>=0.10.0'} @@ -1883,23 +1669,6 @@ packages: engines: {node: '>=0.10.0'} dev: false - /oceanic.js/1.1.2_@discordjs+opus@0.9.0: - resolution: {integrity: sha512-aABMK2UERHvyiwjWFx5m5ZZY7oPUHmVSOhICadZh/vqyxvGf48p+aqGlRu9bEtN6XZYPZJecQi/9IPN+phXn1Q==} - engines: {node: '>=16.16.0'} - dependencies: - undici: 5.11.0 - ws: 8.9.0 - optionalDependencies: - '@discordjs/voice': 0.11.0_@discordjs+opus@0.9.0 - transitivePeerDependencies: - - '@discordjs/opus' - - bufferutil - - ffmpeg-static - - node-opus - - opusscript - - utf-8-validate - dev: false - /omggif/1.0.10: resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==} dev: false @@ -1921,6 +1690,12 @@ packages: word-wrap: 1.2.3 dev: true + /opusscript/0.0.8: + resolution: {integrity: sha512-VSTi1aWFuCkRCVq+tx/BQ5q9fMnQ9pVZ3JU4UHKqTkf0ED3fKEPdr+gKAAl3IA2hj9rrP6iyq3hlcJq3HELtNQ==} + requiresBuild: true + dev: false + optional: true + /os-homedir/1.0.2: resolution: {integrity: sha1-/7xJiDNuDoM94MFox+8VISGqf7M=} engines: {node: '>=0.10.0'} @@ -2045,26 +1820,6 @@ packages: hasBin: true dev: true - /prism-media/1.3.4_@discordjs+opus@0.9.0: - resolution: {integrity: sha512-eW7LXORkTCQznZs+eqe9VjGOrLBxcBPXgNyHXMTSRVhphvd/RrxgIR7WaWt4fkLuhshcdT5KHL88LAfcvS3f5g==} - peerDependencies: - '@discordjs/opus': ^0.8.0 - ffmpeg-static: ^5.0.2 || ^4.2.7 || ^3.0.0 || ^2.4.0 - node-opus: ^0.3.3 - opusscript: ^0.0.8 - peerDependenciesMeta: - '@discordjs/opus': - optional: true - ffmpeg-static: - optional: true - node-opus: - optional: true - opusscript: - optional: true - dependencies: - '@discordjs/opus': 0.9.0 - dev: false - /process-nextick-args/2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} dev: false @@ -2191,6 +1946,7 @@ packages: hasBin: true dependencies: glob: 7.1.6 + dev: true /safe-buffer/5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} @@ -2219,11 +1975,6 @@ packages: hasBin: true dev: false - /semver/6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} - hasBin: true - dev: false - /semver/7.3.4: resolution: {integrity: sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==} engines: {node: '>=10'} @@ -2338,11 +2089,6 @@ packages: dev: false optional: true - /streamsearch/1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} - dev: false - /string-width/1.0.2: resolution: {integrity: sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=} engines: {node: '>=0.10.0'} @@ -2361,15 +2107,6 @@ packages: strip-ansi: 6.0.0 dev: true - /string-width/4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - dev: false - /string_decoder/1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} dependencies: @@ -2396,13 +2133,6 @@ packages: ansi-regex: 5.0.0 dev: true - /strip-ansi/6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - dependencies: - ansi-regex: 5.0.1 - dev: false - /strip-json-comments/2.0.1: resolution: {integrity: sha1-PFMZQukIwml8DsNEhYwobHygpgo=} engines: {node: '>=0.10.0'} @@ -2479,18 +2209,6 @@ packages: yallist: 3.1.1 dev: false - /tar/6.1.13: - resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} - engines: {node: '>=10'} - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 4.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - dev: false - /text-table/0.2.0: resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=} dev: true @@ -2521,15 +2239,6 @@ packages: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false - /tslib/2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - dev: false - optional: true - - /tslib/2.4.1: - resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} - dev: false - /tunnel-agent/0.6.0: resolution: {integrity: sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=} dependencies: @@ -2541,6 +2250,12 @@ packages: dev: false optional: true + /tweetnacl/1.0.3: + resolution: {integrity: sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==} + requiresBuild: true + dev: false + optional: true + /type-check/0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -2558,13 +2273,6 @@ packages: engines: {node: '>=8'} dev: true - /undici/5.11.0: - resolution: {integrity: sha512-oWjWJHzFet0Ow4YZBkyiJwiK5vWqEYoH7BINzJAJOLedZ++JpAlCbUktW2GQ2DS2FpKmxD/JMtWUUWl1BtghGw==} - engines: {node: '>=12.18'} - dependencies: - busboy: 1.6.0 - dev: false - /unzip-response/2.0.1: resolution: {integrity: sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=} engines: {node: '>=4'} @@ -2654,25 +2362,12 @@ packages: /wrappy/1.0.2: resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} - /ws/8.11.0: - resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==} + /ws/8.12.0: + resolution: {integrity: sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false - - /ws/8.9.0: - resolution: {integrity: sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 + utf-8-validate: '>=5.0.2' peerDependenciesMeta: bufferutil: optional: true @@ -2730,3 +2425,18 @@ packages: transitivePeerDependencies: - encoding dev: false + + github.com/projectdysnomia/dysnomia/13237a1778b426dea2ceda35be89a34092f215dd: + resolution: {tarball: https://codeload.github.com/projectdysnomia/dysnomia/tar.gz/13237a1778b426dea2ceda35be89a34092f215dd} + name: '@projectdysnomia/dysnomia' + version: 0.1.0-dev + engines: {node: '>=10.4.0'} + dependencies: + ws: 8.12.0 + optionalDependencies: + opusscript: 0.0.8 + tweetnacl: 1.0.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: false diff --git a/src/index.js b/src/index.js index 7958d20..f0e15c0 100644 --- a/src/index.js +++ b/src/index.js @@ -1,4 +1,4 @@ -const {Client, Collection} = require("oceanic.js"); +const Dysnomia = require("@projectdysnomia/dysnomia"); const logger = require("./lib/logger.js"); const fs = require("fs"); const {resolve} = require("path"); @@ -10,16 +10,15 @@ const Command = require("./lib/command.js"); const events = require("./lib/events.js"); const timer = require("./lib/timer.js"); -const bot = new Client({ - auth: config.token, +const bot = new Dysnomia.Client(config.token, { defaultImageFormat: "png", defaultImageSize: 1024, gateway: { - intents: ["ALL"], + intents: Object.values(Dysnomia.Constants.Intents), }, }); -const commands = new Collection(); +const commands = new Dysnomia.Collection(); const database = new sqlite3.Database(resolve(__dirname, "..", "database.db")); diff --git a/src/lib/utils.js b/src/lib/utils.js index 4100747..39366d4 100644 --- a/src/lib/utils.js +++ b/src/lib/utils.js @@ -1,4 +1,4 @@ -const {Collection} = require("oceanic.js"); +const {Collection} = require("@projectdysnomia/dysnomia"); const murmurhash = require("murmurhash").v3; const {tinycolor} = require("@ctrl/tinycolor"); diff --git a/src/modules/codePreviews.js b/src/modules/codePreviews.js index 162361b..69f1b8e 100644 --- a/src/modules/codePreviews.js +++ b/src/modules/codePreviews.js @@ -1,4 +1,4 @@ -const {MessageFlags, Routes} = require("oceanic.js"); +const {MessageFlags} = require("@projectdysnomia/dysnomia").Constants; const events = require("../lib/events.js"); const {hasFlag} = require("../lib/guildSettings.js"); @@ -109,17 +109,7 @@ events.add("messageCreate", "codePreviews", async function (msg) { if (out.length > 2000) return; if (out !== "") { - // NB: OceanicJS/Oceanic#32 - //await msg.edit({flags: MessageFlags.SUPPRESS_EMBEDS}).catch(() => {}); - await hf.bot.rest - .authRequest({ - method: "PATCH", - path: Routes.CHANNEL_MESSAGE(msg.channel.id, msg.id), - json: { - flags: MessageFlags.SUPPRESS_EMBEDS, - }, - }) - .catch(() => {}); + await msg.edit({flags: MessageFlags.SUPPRESS_EMBEDS}).catch(() => {}); await msg.channel.createMessage({ content: out, diff --git a/src/modules/fedimbed.js b/src/modules/fedimbed.js index c3e144f..decdfab 100644 --- a/src/modules/fedimbed.js +++ b/src/modules/fedimbed.js @@ -1,4 +1,4 @@ -const {MessageFlags, Routes} = require("oceanic.js"); +const {MessageFlags} = require("@projectdysnomia/dysnomia").Constants; const events = require("../lib/events.js"); const logger = require("../lib/logger.js"); @@ -548,17 +548,7 @@ async function processUrl(msg, url, spoiler = false) { } if ((msg.flags & MessageFlags.SUPPRESS_EMBEDS) === 0) { - // NB: OceanicJS/Oceanic#32 - //msg.edit({flags: MessageFlags.SUPPRESS_EMBEDS}).catch(() => {}); - hf.bot.rest - .authRequest({ - method: "PATCH", - path: Routes.CHANNEL_MESSAGE(msg.channel.id, msg.id), - json: { - flags: MessageFlags.SUPPRESS_EMBEDS, - }, - }) - .catch(() => {}); + msg.edit({flags: MessageFlags.SUPPRESS_EMBEDS}).catch(() => {}); } }); } diff --git a/src/modules/music.js b/src/modules/music.js index 20ffeaa..61f18eb 100644 --- a/src/modules/music.js +++ b/src/modules/music.js @@ -1,10 +1,4 @@ -const {Collection} = require("oceanic.js"); -const { - AudioPlayerStatus, - StreamType, - createAudioPlayer, - createAudioResource, -} = require("@discordjs/voice"); +const {Collection} = require("@projectdysnomia/dysnomia"); const playdl = require("play-dl"); const ffprobe = require("node-ffprobe"); @@ -144,21 +138,11 @@ async function createVoiceConnection(guild_id, voice_id, text_id) { text_id, }; - const guild = hf.bot.guilds.get(guild_id); - state.connection = hf.bot.joinVoiceChannel({ - channelID: voice_id, - guildID: guild_id, + state.connection = hf.bot.joinVoiceChannel(voice_id, { selfDeaf: true, selfMute: false, - voiceAdapterCreator: guild.voiceAdapterCreator, }); state.queue = []; - state.player = createAudioPlayer(); - state.connection.subscribe(state.player); - - state.player.on("stateChange", (oldState, newState) => { - state.status = newState.status; - }); state.onEnd = async function () { if (state.queue.length > 0) { @@ -172,43 +156,23 @@ async function createVoiceConnection(guild_id, voice_id, text_id) { addedBy: next.addedBy, }); } else { - state.player.stop(); - state.connection.disconnect(); + await state.connection.disconnect(); if (!state.__leave) { await hf.bot.guilds.get(guild_id).channels.get(text_id).createMessage({ content: ":musical_note: Queue is empty, leaving voice channel.", }); await hf.bot.leaveVoiceChannel(voice_id); } - state.player.off(AudioPlayerStatus.Idle, state.onEnd); + state.connection.off("end", state.onEnd); voiceStorage.delete(guild_id); } }; - state.player.on(AudioPlayerStatus.Idle, state.onEnd); + state.connection.on("end", state.onEnd); voiceStorage.set(guild_id, state); return state; } -async function processUrl(url) { - const res = await fetch(url); - const contentType = res.headers.get("Content-Type"); - - let type = StreamType.Arbitrary; - if (contentType == "video/webm" || contentType == "audio/webm") { - type = StreamType.WebmOpus; - } else if (contentType == "audio/ogg" || contentType == "video/ogg") { - type = StreamType.OggOpus; - } else if (contentType == "audio/opus") { - type = StreamType.Opus; - } - - return { - stream: res.body, - type, - }; -} - async function enqueue({ guild_id, voice_id, @@ -269,7 +233,7 @@ async function enqueue({ title = info.title; length = info.duration; thumbnail = info.artwork_url; - media = await processUrl(streamUrl); + media = {stream: streamUrl}; } else if (type == "file") { title = url; let info; @@ -295,10 +259,10 @@ async function enqueue({ } length = info.duration ? Math.floor(info.duration) * 1000 : 0; - media = await processUrl(url); + media = {stream: url}; } - if (connection.status && connection.status != AudioPlayerStatus.Idle) { + if (connection.connection.playing) { const queueItem = { url, type, @@ -359,8 +323,10 @@ async function enqueue({ return; } - const resource = createAudioResource(media.stream, {inputType: media.type}); - connection.player.play(resource); + await connection.connection.play(media.stream, { + inlineVolume: true, + voiceDataTimeout: -1, + }); textChannel.createMessage({ embeds: [ @@ -642,15 +608,17 @@ command.callback = async function ( const connection = voiceStorage.get(msg.guildID); const nowPlaying = connection.nowplaying; - if (!nowPlaying || connection.status == AudioPlayerStatus.Idle) + if (!nowPlaying || !connection.connection.playing) return "Nothing is currently playing."; const position = Date.now() - nowPlaying.start; - const timeEnd = nowPlaying.length == 0 ? "\u221e" : formatTime(nowPlaying.length); + const timeEnd = + nowPlaying.length == 0 ? "\u221e" : formatTime(nowPlaying.length); const timePos = formatTime(position); - const progress = nowPlaying.length == 0 ? 1 : position / nowPlaying.length; + const progress = + nowPlaying.length == 0 ? 1 : position / nowPlaying.length; const barLength = Math.round(progress * NOWPLAYING_BAR_LENGTH); const bar = `\`[${"=".repeat(barLength)}${" ".repeat( diff --git a/src/modules/utility.js b/src/modules/utility.js index 04dd113..c41e9ed 100644 --- a/src/modules/utility.js +++ b/src/modules/utility.js @@ -734,7 +734,7 @@ presence.callback = async function (msg, line) { }.${activity.emoji.animated ? "gif" : "png"}`; embed.author = { url, - iconURL: url, + icon_url: url, name: activity.state ?? "\u200b", }; } else {