diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..b30793f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,608 @@ +# CHANGELOG + +## 0.5.6 (8.6.2023) + +Patch Release + +**Package** +- Dependencies Update + +**Documentation** +- Add CHANGELOG.md + +**Contributors:** +[cwchristerw]() + +## 0.5.5 (30.4.2023) + +Patch Release + +- Avoid refreshing player too often to keep in Discord API quotas. + +**Package** +- Dependencies Update + +**Miscellaneous:** +- Dockerfile: Use "docker.io/library/node:20-alpine" as upstream to image. + +**Documentation** +- Use Podman in instructions. + +__**Contributors:**__ +[cwchristerw]() + +## 0.5.4 (21.12.2023) + +Patch Release + +- Update new stationlistUrl address +- Change player interval to every 10 seconds in Play function +- Handle application commands better in commands.ts +- Handle DiscordAPIError: unknown interaction in uncaughtException event +- Remove audioPlayer maxMissedFrames in Streamer class +- Remove Bug command +- Remove Invite command + +**Package** +- Dependencies Update + +**Miscellaneous:** +- Dockerfile +- Github Workflow: Labeler (update) + +**Docs** +- .env_example Update + +__**Contributors:**__ +[cwchristerw]() + +## 0.5.3 (29.11.2023) + +Patch Release + +- Add duration to Play command +- Add RadioPlay playlist support to track info +- Remove Now Playing command + +**Package** +- Dependencies Update +- Typescript Typings + +__**Contributors:**__ +[cwchristerw]() + +## 0.5.2 (23.11.2023) + +Patch Release + +- Display track info in play and nowplaying commands +- Fix idling audioPlayer + +**Package** +- Update Dependencies +- Typescript Typings + +**Docs** +- Update supported versions list in SECURITY.md + +__**Contributors:**__ +[cwchristerw]() + +## 0.5.1 (13.7.2023) + +Patch Release + +**Package** +- Update Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.5.0 (9.6.2023) + +Minor Release + +- Create event listeners once in Streamer class. +- Limit commands in maintenance mode. +- Remove unnecessary await in Play command. +- Replace multiple forEach loop to for...of loops. +- Move events and funcs from RadioClient to events.ts and funcs.ts respectively. +- Remove execute functions in events and commands.ts. +- Move emojis into messages.ts. +- Fallback missing version into version 0.0.0. +- Change em dash to dash in Stations class. +- Remove messageCreate event and deprecation messages. +- Converted codebase to Typescript + +**Package** +- NodeJS 18 +- Use lockfileVersion 3 +- Remove node-fetch dependency +- Update Dependencies + +**Documentation** +- Removed version 0.4.x support in Security Policy + +**Miscellaneous:** +- Dockerfile + +__**Contributors:**__ +[cwchristerw]() + +## 0.4.3 (4.6.2023) + +Patch Release + +**Package** +- Update Dependencies + +***Miscellaneous:*** +- Github Workflow: Docker Build & TypeScript Build (update) + +__**Contributors:**__ +[cwchristerw]() + +## 0.4.2 (24.5.2023) + +Patch Release + +- Fix Status command +- Replaced SelectMenuBuilder (deprecated) with StringSelectMenuBuilder (Discord.js) + +**Package** +- Update Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.4.1 (29.11.2022) + +Patch Release + +**Package** +- Update Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.4.0 (19.7.2022) + +Minor Release + +**Package** +- Update Dependencies + +**Docs** +- Improviding Docker instructions in README.md + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.20 (7.4.2022) + +Patch Release + +- Added dashboard link to Statistics command. Preparations to [#24]() +- Minor changes in Ready event and Stations class. +- Fixed multiple bugs [#286](), [#284](), [#283](), [#227](). + +**Package** +- Update Dependencies + +***Miscellaneous:*** +- Github Workflow: Dependabot Auto-Merge (update) + +**Docs** +- Improviding Docker instructions in README.md + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.19 (26.2.2022) + +Patch Release + +**Package** +- Update Dependencies + +***Miscellaneous:*** +- Github Workflow: Docker Build & TypeScript Build (update) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.18 (26.2.2022) + +Patch Release + +***Miscellaneous:*** +- Github Workflow: Dependabot Auto-Merge (update) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.17 (26.2.2022) + +Patch Release + +**Package** +- Update Dependencies + +***Miscellaneous:*** +- Github Workflow: Dependabot Auto-Merge (update) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.16 (24.2.2022) + +Patch Release + +**Package** +- Update Dependencies + +***Miscellaneous:*** +- Github Workflow: Dependabot Auto-Merge (update) + +**Docs** +- Update year in LICENSE + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.15 (21.2.2022) + +Patch Release + +**Package** +- Updated Dependencies + +***Miscellaneous:*** +- Github Workflow: CodeQL Analyze (update) +- Github Workflow: Dependabot Auto-Merge (new) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.14 (1.2.2022) + +Patch Release + +**Package** +- Updated Dependencies + +***Miscellaneous:*** +- Github Workflow: Typescript Build (updated) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.13 (21.12.2021) + +Patch Release + +- Listen function will use play to restart playing station when streamerMode is manual and audioPlayer has no subscribers in Streamer class +- Prevent bot restarting when uncaughtException event is caused by "DiscordAPIError - Unknown interaction" in uncaughtException event. +- Remove Discord.js voice audioResource event listeners in Streamer class + +**Package** +- Updated Dependencies + +***Miscellaneous:*** +- Github Workflow: Typescript Build (updated) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.12 (30.11.2021) + +Patch Release + +- Add removal feature when station isn't working in Stations class +- Add direct type to search function in Stations class +- Add validation to station at restore function in Radio class +- Add manual mode at play function in Streamer class +- Update audioPlayer idle event in Streamer class +- Update fetch function in Stations class +- Change stationsListURL +- Move previous search function to text type at search function in Stations class + +**Package** +- Updated Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.11 (18.9.2021) + +Patch Release + +- Catch errors inside loadEntry method in Datastore class +- Fix memory leak bug in Streamer class +- Dont delete first streamer when refreshing streamers in Streamer class +- Fix maintenance command + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.10 (17.9.2021) + +Patch Release + +- Fix Stations class bug +- Prevent loadState function updating datastore entries everytime +- Streamlined restore method in Radio class with play command + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.9 (17.9.2021) + +Patch Release + +- Move Datastore class into classes folder. +- Add loadEntry method to Datastore class. +- Move calculateGlobal method from Datastore to Statistics class. +- Create Radio, Stations, Streamer, Statistics class. +- Commands are now set into map in commands.js. +- Remove application command options in maintenance command. +- Add Streamer Mode – Manual and Streamer Mode – Auto to selectMenu in maintenance command. +- Small fixes to next, play and prev command. +- Hide owner when its same as station name in nowplaying command. +- Update fields in status command. +- Delete message when using stop command in different textChannel. +- Small fixes to SIGINT, interactionCreate and ready event. +- Delete radio when no members in voiceChannel with excluding bot users in voiceStateUpdate event. +- Small fixes to check, isDev, listStations and logger function. +- Move checkFetchStatus function to Stations class. +- Delete message and send new message when textChannel has changed in play function. +- Hide owner when its same as station name in play function. +- Move restoreRadios function to Radio class. +- Move saveRadios function to Radio class. +- Move searchStation function to Statistics class. +- Move statisticsUpdate function to Statistics class. +- Update statusFields in messages. +- Rename maintenanceMode in config. +- Add Streamer Mode in config. +- Add Dev Mode in config. + +**Package** +- Updated Dependencies + +**Docs** +- Add new environment variables to .env_example file. + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.8 (10.9.2021) + +Patch Release + +- Add maintenance mode +- Node-fetch update to 3.0.0 with temporary solution +- Create exit event in Client.ts and added logger. +- Remove logger from SIGINT event +- Handle warnings in event instead of default warnings. +- Add logger to uncaughtException event +- Update login error catcher + +**Package** +- Updated Dependencies + +***Miscellaneous:*** +- VSCode settings + +**Docs** +- Contributing Guide – CONTRIBUTING.md (new) +- Security Policy – SECURITY.md (new) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.7 (7.9.2021) + +Patch Release + +- Fixed messageCreate event + +**Package** +- Updated Dependencies + +***Miscellaneous:*** +- Github Workflow: Labeler (updated) + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.6 (6.9.2021) + +Patch Release + +- Fixed prev & next command +- Changed forgotten interaction replies to ephemeral in commands. +- Handle uncaughtException event +- Tidied code + +**Package** +- Updated Dependencies + +***Miscellaneous:*** +- Github Workflow: CodeQL Analyze (new), Labeler (new) + +**Docs** +- Updated README.md + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.5 (6.9.2021) + +Patch Release + +- Avoid answering interaction that came from channels that bot has no rights to view. +- Hide decimals from global percent in statistics +- Check if there members when restoring radio instead of returning to empty channel and staying alone. +- Simplified listStations function and decided to hide one channel because it has maximum of 25 items in select menu options. +- Show unknown errors more transparently by using console.error function when needed. +- Moved restoreRadios function to funcs folder +- Created saveRadios function +- Updated SIGINT event: Removed code that was there before saveRadios function was separated into function script +- Added more controls to maintenance command +- Fixed play command + +__**Contributors:**__ +[cwchristerw]() & [Vekki000]() + +## 0.3.4 (5.9.2021) + +Patch Release + +- Created next & prev command +- Fixed typo in bug command code +- Added loggers to Slash Commands creation process +- Tidied code and moved few functions to funcs folder +- Disabled removing commands when bot is going offline +- Removed deprecated code that may have caused bot to restart unintentionally + +**Package** +- Updated Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.3 (4.9.2021) + +Patch Release + +- Changed few replies to ephemeral in nowplaying command. +- Fixed bug command + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.2 (3.9.2021) + +Patch Release + +- Added station logo to embed thumbnail +- Added empty image to make embeds same size +- Improved mobile user experience by removing unnecessary spaces in messages +- restoreradio.js is now checking that there is stations before continuing. +- Improved Dev bot to remove slash commands during process ending. + +***Package:*** +- Updated Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.1 (3.9.2021) + +Patch Release + +- Added message command deprecation message +- Updated Invite link +- Added messageDelete event +- Edited play message +- Updated logger +- Updated list command +- Gracefully handling process ending when requested (SIGINT & SIGTERM) +- Update startTime when changing stations +- Remove play message when bot is disconnected from voice channel +- Removed references to prefix +- Removed unnecessary comments & messages +- Removed maintenance message in maintenance command because we will automatically resume playing after restart by saving and loading state. + +***Package:*** +- Updated Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.3.0 (31.8.2021) + +Minor Release + +- Slash Commands +- Removed Message Commands +- Improved logging with new logger function +- Yle X is now searchable +- Ephemeral replies +- New invite link +- Using play command now gives you dropdown menu when no station id or name is given to command. +- Elapsed time is better shown because bot has improved msToTime function. +- New Emojis +- We may utilize new Discord features because bot can now handle new types of interactions. +- Version number in console + +***Package:*** +- Updated Dependencies + +***Miscellaneous:*** +- Dockerfile +- Github Workflow: TypeScript Build + +__**Contributors:**__ +[cwchristerw]() + +## 0.2.4 (31.8.2021) + +Patch Release + +Changed voiceAdapterCreator to Discord.js instead of custom adapter. Should fix #26 indefinitely until major changes coming to Discord.js or Discord.js Voice. + +__**Contributors:**__ +[cwchristerw]() + +## 0.2.3 (21.8.2021) + +Patch Release + +- Fixed help command (#28) +- Nulling connection after bot is disconnected + +***Package:*** +- Updated Dependencies + +__**Contributors:**__ +[cwchristerw]() + +## 0.2.2 (21.8.2021) + +Patch Release + +Fixed #26 in voiceStateUpdate.js + +__**Contributors:**__ +[cwchristerw]() + +## 0.2.1 (18.8.2021) + +Patch Release + +***Package:*** +- Updated Dependencies + +***Miscellaneous:*** +- Dockerfile +- Github Workflow: Docker Build (new) + +__**Contributors:**__ +[cwchristerw]() + +## 0.2.0 (8.8.2021) + +Minor Release + +***Miscellaneous:*** +- eslint +- prettier +- Dockerfile +- TypeScript + +__**Contributors:**__ +[cwchristerw]() & [MatteZ02]() + +## 0.1.0 (15.6.2021) +\- diff --git a/package-lock.json b/package-lock.json index cdc7295..4ce6a67 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,44 +1,47 @@ { "name": "eximiabots-radiox", - "version": "0.5.5", + "version": "0.5.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "eximiabots-radiox", - "version": "0.5.5", + "version": "0.5.6", "license": "MIT", "dependencies": { - "@discordjs/voice": "^0.16.1", - "discord.js": "^14.14.1", + "@discordjs/voice": "^0.17.0", + "discord.js": "^14.15.3", "dotenv": "^16.4.5", "libsodium-wrappers": "^0.7.13", "path": "^0.12.7" }, "devDependencies": { - "rimraf": "^5.0.5", + "rimraf": "^5.0.7", "typescript": "^5.4.5" }, "engines": { - "node": ">=18.16.0", - "npm": ">=8.0.0" + "node": ">=20.0.0", + "npm": ">=10.0.0" } }, "node_modules/@discordjs/builders": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.7.0.tgz", - "integrity": "sha512-GDtbKMkg433cOZur8Dv6c25EHxduNIBsxeHrsRoIM8+AwmEZ8r0tEpckx/sHwTLwQPOF3e2JWloZh9ofCaMfAw==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.8.2.tgz", + "integrity": "sha512-6wvG3QaCjtMu0xnle4SoOIeFB4y6fKMN6WZfy3BMKJdQQtPLik8KGzDwBVL/+wTtcE/ZlFjgEk74GublyEVZ7g==", "dependencies": { - "@discordjs/formatters": "^0.3.3", - "@discordjs/util": "^1.0.2", - "@sapphire/shapeshift": "^3.9.3", - "discord-api-types": "0.37.61", + "@discordjs/formatters": "^0.4.0", + "@discordjs/util": "^1.1.0", + "@sapphire/shapeshift": "^3.9.7", + "discord-api-types": "0.37.83", "fast-deep-equal": "^3.1.3", - "ts-mixer": "^6.0.3", + "ts-mixer": "^6.0.4", "tslib": "^2.6.2" }, "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/collection": { @@ -50,99 +53,112 @@ } }, "node_modules/@discordjs/formatters": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.3.3.tgz", - "integrity": "sha512-wTcI1Q5cps1eSGhl6+6AzzZkBBlVrBdc9IUhJbijRgVjCNIIIZPgqnUj3ntFODsHrdbGU8BEG9XmDQmgEEYn3w==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.4.0.tgz", + "integrity": "sha512-fJ06TLC1NiruF35470q3Nr1bi95BdvKFAF+T5bNfZJ4bNdqZ3VZ+Ttg6SThqTxm6qumSG3choxLBHMC69WXNXQ==", "dependencies": { - "discord-api-types": "0.37.61" + "discord-api-types": "0.37.83" }, "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/rest": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.2.0.tgz", - "integrity": "sha512-nXm9wT8oqrYFRMEqTXQx9DUTeEtXUDMmnUKIhZn6O2EeDY9VCdwj23XCPq7fkqMPKdF7ldAfeVKyxxFdbZl59A==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.3.0.tgz", + "integrity": "sha512-C1kAJK8aSYRv3ZwMG8cvrrW4GN0g5eMdP8AuN8ODH5DyOCbHgJspze1my3xHOAgwLJdKUbWNVyAeJ9cEdduqIg==", "dependencies": { - "@discordjs/collection": "^2.0.0", - "@discordjs/util": "^1.0.2", - "@sapphire/async-queue": "^1.5.0", - "@sapphire/snowflake": "^3.5.1", - "@vladfrangu/async_event_emitter": "^2.2.2", - "discord-api-types": "0.37.61", - "magic-bytes.js": "^1.5.0", + "@discordjs/collection": "^2.1.0", + "@discordjs/util": "^1.1.0", + "@sapphire/async-queue": "^1.5.2", + "@sapphire/snowflake": "^3.5.3", + "@vladfrangu/async_event_emitter": "^2.2.4", + "discord-api-types": "0.37.83", + "magic-bytes.js": "^1.10.0", "tslib": "^2.6.2", - "undici": "5.27.2" + "undici": "6.13.0" }, "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/rest/node_modules/@discordjs/collection": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.0.0.tgz", - "integrity": "sha512-YTWIXLrf5FsrLMycpMM9Q6vnZoR/lN2AWX23/Cuo8uOOtS8eHB2dyQaaGnaF8aZPYnttf2bkLMcXn/j6JUOi3w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.0.tgz", + "integrity": "sha512-mLcTACtXUuVgutoznkh6hS3UFqYirDYAg5Dc1m8xn6OvPjetnUlf/xjtqnnc47OwWdaoCQnHmHh9KofhD6uRqw==", "engines": { "node": ">=18" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/util": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@discordjs/util/-/util-1.0.2.tgz", - "integrity": "sha512-IRNbimrmfb75GMNEjyznqM1tkI7HrZOf14njX7tCAAUetyZM1Pr8hX/EK2lxBCOgWDRmigbp24fD1hdMfQK5lw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@discordjs/util/-/util-1.1.0.tgz", + "integrity": "sha512-IndcI5hzlNZ7GS96RV3Xw1R2kaDuXEp7tRIy/KlhidpN/BQ1qh1NZt3377dMLTa44xDUNKT7hnXkA/oUAzD/lg==", "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/voice": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/@discordjs/voice/-/voice-0.16.1.tgz", - "integrity": "sha512-uiWiW0Ta6K473yf8zs13RfKuPqm/xU4m4dAidMkIdwqgy1CztbbZBtPLfDkVSKzpW7s6m072C+uQcs4LwF3FhA==", + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@discordjs/voice/-/voice-0.17.0.tgz", + "integrity": "sha512-hArn9FF5ZYi1IkxdJEVnJi+OxlwLV0NJYWpKXsmNOojtGtAZHxmsELA+MZlu2KW1F/K1/nt7lFOfcMXNYweq9w==", "dependencies": { - "@types/ws": "^8.5.9", - "discord-api-types": "0.37.61", + "@types/ws": "^8.5.10", + "discord-api-types": "0.37.83", "prism-media": "^1.3.5", "tslib": "^2.6.2", - "ws": "^8.14.2" + "ws": "^8.16.0" }, "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/ws": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.0.2.tgz", - "integrity": "sha512-+XI82Rm2hKnFwAySXEep4A7Kfoowt6weO6381jgW+wVdTpMS/56qCvoXyFRY0slcv7c/U8My2PwIB2/wEaAh7Q==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.1.1.tgz", + "integrity": "sha512-PZ+vLpxGCRtmr2RMkqh8Zp+BenUaJqlS6xhgWKEZcgC/vfHLEzpHtKkB0sl3nZWpwtcKk6YWy+pU3okL2I97FA==", "dependencies": { - "@discordjs/collection": "^2.0.0", - "@discordjs/rest": "^2.1.0", - "@discordjs/util": "^1.0.2", - "@sapphire/async-queue": "^1.5.0", - "@types/ws": "^8.5.9", - "@vladfrangu/async_event_emitter": "^2.2.2", - "discord-api-types": "0.37.61", + "@discordjs/collection": "^2.1.0", + "@discordjs/rest": "^2.3.0", + "@discordjs/util": "^1.1.0", + "@sapphire/async-queue": "^1.5.2", + "@types/ws": "^8.5.10", + "@vladfrangu/async_event_emitter": "^2.2.4", + "discord-api-types": "0.37.83", "tslib": "^2.6.2", - "ws": "^8.14.2" + "ws": "^8.16.0" }, "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@discordjs/ws/node_modules/@discordjs/collection": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.0.0.tgz", - "integrity": "sha512-YTWIXLrf5FsrLMycpMM9Q6vnZoR/lN2AWX23/Cuo8uOOtS8eHB2dyQaaGnaF8aZPYnttf2bkLMcXn/j6JUOi3w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.0.tgz", + "integrity": "sha512-mLcTACtXUuVgutoznkh6hS3UFqYirDYAg5Dc1m8xn6OvPjetnUlf/xjtqnnc47OwWdaoCQnHmHh9KofhD6uRqw==", "engines": { "node": ">=18" - } - }, - "node_modules/@fastify/busboy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", - "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "engines": { - "node": ">=14" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, "node_modules/@isaacs/cliui": { @@ -194,18 +210,18 @@ } }, "node_modules/@sapphire/snowflake": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-3.5.1.tgz", - "integrity": "sha512-BxcYGzgEsdlG0dKAyOm0ehLGm2CafIrfQTZGWgkfKYbj+pNNsorZ7EotuZukc2MT70E0UbppVbtpBrqpzVzjNA==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-3.5.3.tgz", + "integrity": "sha512-jjmJywLAFoWeBi1W7994zZyiNWPIiqRRNAmSERxyg93xRGzNYvGjlZ0gR6x0F4gPRi2+0O6S71kOZYyr3cxaIQ==", "engines": { "node": ">=v14.0.0", "npm": ">=7.0.0" } }, "node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "version": "20.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", + "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", "dependencies": { "undici-types": "~5.26.4" } @@ -299,61 +315,39 @@ } }, "node_modules/discord-api-types": { - "version": "0.37.61", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.61.tgz", - "integrity": "sha512-o/dXNFfhBpYHpQFdT6FWzeO7pKc838QeeZ9d91CfVAtpr5XLK4B/zYxQbYgPdoMiTDvJfzcsLW5naXgmHGDNXw==" + "version": "0.37.83", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.83.tgz", + "integrity": "sha512-urGGYeWtWNYMKnYlZnOnDHm8fVRffQs3U0SpE8RHeiuLKb/u92APS8HoQnPTFbnXmY1vVnXjXO4dOxcAn3J+DA==" }, "node_modules/discord.js": { - "version": "14.14.1", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.14.1.tgz", - "integrity": "sha512-/hUVzkIerxKHyRKopJy5xejp4MYKDPTszAnpYxzVVv4qJYf+Tkt+jnT2N29PIPschicaEEpXwF2ARrTYHYwQ5w==", + "version": "14.15.3", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.15.3.tgz", + "integrity": "sha512-/UJDQO10VuU6wQPglA4kz2bw2ngeeSbogiIPx/TsnctfzV/tNf+q+i1HlgtX1OGpeOBpJH9erZQNO5oRM2uAtQ==", "dependencies": { - "@discordjs/builders": "^1.7.0", + "@discordjs/builders": "^1.8.2", "@discordjs/collection": "1.5.3", - "@discordjs/formatters": "^0.3.3", - "@discordjs/rest": "^2.1.0", - "@discordjs/util": "^1.0.2", - "@discordjs/ws": "^1.0.2", - "@sapphire/snowflake": "3.5.1", - "@types/ws": "8.5.9", - "discord-api-types": "0.37.61", + "@discordjs/formatters": "^0.4.0", + "@discordjs/rest": "^2.3.0", + "@discordjs/util": "^1.1.0", + "@discordjs/ws": "^1.1.1", + "@sapphire/snowflake": "3.5.3", + "discord-api-types": "0.37.83", "fast-deep-equal": "3.1.3", "lodash.snakecase": "4.1.1", "tslib": "2.6.2", - "undici": "5.27.2", - "ws": "8.14.2" + "undici": "6.13.0" }, "engines": { "node": ">=16.11.0" + }, + "funding": { + "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/discord.js/node_modules/@types/ws": { - "version": "8.5.9", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.9.tgz", - "integrity": "sha512-jbdrY0a8lxfdTp/+r7Z4CkycbOFN8WX+IOchLJr3juT/xzbJ8URyTVSJ/hvNdadTgM1mnedb47n+Y31GsFnQlg==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/discord.js/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "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 - } - } + "node_modules/discord.js/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/dotenv": { "version": "16.4.5", @@ -400,22 +394,22 @@ } }, "node_modules/glob": { - "version": "10.3.12", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", - "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.6", - "minimatch": "^9.0.1", - "minipass": "^7.0.4", - "path-scurry": "^1.10.2" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -442,9 +436,9 @@ "dev": true }, "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" @@ -512,9 +506,9 @@ } }, "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, "engines": { "node": ">=16 || 14 >=14.17" @@ -539,16 +533,16 @@ } }, "node_modules/path-scurry": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", - "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -588,9 +582,9 @@ } }, "node_modules/rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.7.tgz", + "integrity": "sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==", "dev": true, "dependencies": { "glob": "^10.3.7" @@ -599,7 +593,7 @@ "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">=14" + "node": ">=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -740,9 +734,9 @@ "integrity": "sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==" }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" }, "node_modules/typescript": { "version": "5.4.5", @@ -758,14 +752,11 @@ } }, "node_modules/undici": { - "version": "5.27.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz", - "integrity": "sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.13.0.tgz", + "integrity": "sha512-Q2rtqmZWrbP8nePMq7mOJIN98M0fYvSgV89vwl/BQRT4mDOeY2GXZngfGpcBBhtky3woM7G24wZV3Q304Bv6cw==", "engines": { - "node": ">=14.0" + "node": ">=18.0" } }, "node_modules/undici-types": { diff --git a/package.json b/package.json index 2425ef2..0d0a111 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eximiabots-radiox", - "version": "0.5.5", + "version": "0.5.6", "description": "Internet Radio to your Discord guild", "main": "index.js", "scripts": { @@ -18,18 +18,18 @@ "url": "https://github.com/warengroup/eximiabots-radiox/issues" }, "dependencies": { - "@discordjs/voice": "^0.16.1", - "discord.js": "^14.14.1", + "@discordjs/voice": "^0.17.0", + "discord.js": "^14.15.3", "dotenv": "^16.4.5", "libsodium-wrappers": "^0.7.13", "path": "^0.12.7" }, "devDependencies": { - "rimraf": "^5.0.5", + "rimraf": "^5.0.7", "typescript": "^5.4.5" }, "engines": { - "node": ">=18.16.0", - "npm": ">=8.0.0" + "node": ">=20.0.0", + "npm": ">=10.0.0" } }