oceanic can suck my left nut

This commit is contained in:
Cynthia Foxwell 2023-01-21 21:45:57 -07:00
parent 5c3d649492
commit 3be78312e1
8 changed files with 66 additions and 411 deletions

View File

@ -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"

View File

@ -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

View File

@ -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"));

View File

@ -1,4 +1,4 @@
const {Collection} = require("oceanic.js");
const {Collection} = require("@projectdysnomia/dysnomia");
const murmurhash = require("murmurhash").v3;
const {tinycolor} = require("@ctrl/tinycolor");

View File

@ -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,

View File

@ -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(() => {});
}
});
}

View File

@ -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(

View File

@ -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 {