hypixel-api-reborn 11.3.4 → 12.0.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +12 -0
- package/.github/ISSUE_TEMPLATE/Bug_report.md +9 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +25 -0
- package/.github/SECURITY.md +21 -0
- package/.github/labels.yml +24 -0
- package/.github/workflows/ci-cd.yml +126 -0
- package/.vscode/extensions.json +10 -0
- package/README.md +0 -63
- package/dist/API/getAchievements.d.ts +10 -0
- package/dist/API/getAchievements.js +22 -0
- package/dist/API/getAchievements.js.map +1 -0
- package/dist/API/getActiveHouses.d.ts +10 -0
- package/dist/API/getActiveHouses.js +22 -0
- package/dist/API/getActiveHouses.js.map +1 -0
- package/dist/API/getBoosters.d.ts +10 -0
- package/dist/API/getBoosters.js +22 -0
- package/dist/API/getBoosters.js.map +1 -0
- package/dist/API/getChallenges.d.ts +10 -0
- package/dist/API/getChallenges.js +22 -0
- package/dist/API/getChallenges.js.map +1 -0
- package/dist/API/getGameCounts.d.ts +10 -0
- package/dist/API/getGameCounts.js +22 -0
- package/dist/API/getGameCounts.js.map +1 -0
- package/dist/API/getGuild.d.ts +10 -0
- package/dist/API/getGuild.js +36 -0
- package/dist/API/getGuild.js.map +1 -0
- package/dist/API/getGuildAchievements.d.ts +10 -0
- package/dist/API/getGuildAchievements.js +22 -0
- package/dist/API/getGuildAchievements.js.map +1 -0
- package/dist/API/getHouse.d.ts +10 -0
- package/dist/API/getHouse.js +24 -0
- package/dist/API/getHouse.js.map +1 -0
- package/dist/API/getLeaderboards.d.ts +9 -0
- package/dist/API/getLeaderboards.js +32 -0
- package/dist/API/getLeaderboards.js.map +1 -0
- package/dist/API/getPlayer.d.ts +10 -0
- package/dist/API/getPlayer.js +37 -0
- package/dist/API/getPlayer.js.map +1 -0
- package/dist/API/getPlayerHouses.d.ts +10 -0
- package/dist/API/getPlayerHouses.js +25 -0
- package/dist/API/getPlayerHouses.js.map +1 -0
- package/dist/API/getQuests.d.ts +10 -0
- package/dist/API/getQuests.js +22 -0
- package/dist/API/getQuests.js.map +1 -0
- package/dist/API/getRecentGames.d.ts +10 -0
- package/dist/API/getRecentGames.js +25 -0
- package/dist/API/getRecentGames.js.map +1 -0
- package/dist/API/getSkyblockAuction.d.ts +10 -0
- package/dist/API/getSkyblockAuction.js +38 -0
- package/dist/API/getSkyblockAuction.js.map +1 -0
- package/dist/API/getSkyblockAuctions.d.ts +24 -0
- package/dist/API/getSkyblockAuctions.js +57 -0
- package/dist/API/getSkyblockAuctions.js.map +1 -0
- package/dist/API/getSkyblockAuctionsByPlayer.d.ts +10 -0
- package/dist/API/getSkyblockAuctionsByPlayer.js +25 -0
- package/dist/API/getSkyblockAuctionsByPlayer.js.map +1 -0
- package/dist/API/getSkyblockBazaar.d.ts +10 -0
- package/dist/API/getSkyblockBazaar.js +22 -0
- package/dist/API/getSkyblockBazaar.js.map +1 -0
- package/dist/API/getSkyblockBingo.d.ts +10 -0
- package/dist/API/getSkyblockBingo.js +22 -0
- package/dist/API/getSkyblockBingo.js.map +1 -0
- package/dist/API/getSkyblockFireSales.d.ts +10 -0
- package/dist/API/getSkyblockFireSales.js +22 -0
- package/dist/API/getSkyblockFireSales.js.map +1 -0
- package/dist/API/getSkyblockGarden.d.ts +10 -0
- package/dist/API/getSkyblockGarden.js +24 -0
- package/dist/API/getSkyblockGarden.js.map +1 -0
- package/dist/API/getSkyblockGovernment.d.ts +10 -0
- package/dist/API/getSkyblockGovernment.js +22 -0
- package/dist/API/getSkyblockGovernment.js.map +1 -0
- package/dist/API/getSkyblockMember.d.ts +10 -0
- package/dist/API/getSkyblockMember.js +46 -0
- package/dist/API/getSkyblockMember.js.map +1 -0
- package/dist/API/getSkyblockMuseum.d.ts +10 -0
- package/dist/API/getSkyblockMuseum.js +25 -0
- package/dist/API/getSkyblockMuseum.js.map +1 -0
- package/dist/API/getSkyblockNews.d.ts +10 -0
- package/dist/API/getSkyblockNews.js +22 -0
- package/dist/API/getSkyblockNews.js.map +1 -0
- package/dist/API/getSkyblockProfiles.d.ts +10 -0
- package/dist/API/getSkyblockProfiles.js +47 -0
- package/dist/API/getSkyblockProfiles.js.map +1 -0
- package/dist/API/getStatus.d.ts +10 -0
- package/dist/API/getStatus.js +23 -0
- package/dist/API/getStatus.js.map +1 -0
- package/dist/API/getWatchdogStats.d.ts +10 -0
- package/dist/API/getWatchdogStats.js +22 -0
- package/dist/API/getWatchdogStats.js.map +1 -0
- package/dist/API/index.d.ts +57 -0
- package/dist/API/index.js +62 -0
- package/dist/API/index.js.map +1 -0
- package/dist/Client.d.ts +29 -0
- package/dist/Client.js +76 -0
- package/dist/Client.js.map +1 -0
- package/dist/Errors.d.ts +27 -0
- package/dist/Errors.js +31 -0
- package/dist/Errors.js.map +1 -0
- package/dist/Private/CacheHandler.d.ts +14 -0
- package/dist/Private/CacheHandler.js +37 -0
- package/dist/Private/CacheHandler.js.map +1 -0
- package/dist/Private/Endpoint.d.ts +7 -0
- package/dist/Private/Endpoint.js +13 -0
- package/dist/Private/Endpoint.js.map +1 -0
- package/dist/Private/RateLimit.d.ts +13 -0
- package/dist/Private/RateLimit.js +33 -0
- package/dist/Private/RateLimit.js.map +1 -0
- package/dist/Private/Requests.d.ts +29 -0
- package/dist/Private/Requests.js +112 -0
- package/dist/Private/Requests.js.map +1 -0
- package/dist/Private/Updater.d.ts +11 -0
- package/dist/Private/Updater.js +47 -0
- package/dist/Private/Updater.js.map +1 -0
- package/dist/index.d.ts +115 -0
- package/dist/index.js +132 -0
- package/dist/index.js.map +1 -0
- package/dist/package.json +66 -0
- package/dist/src/API/getAchievements.js +16 -0
- package/dist/src/API/getAchievements.test.js +74 -0
- package/dist/src/API/getActiveHouses.js +16 -0
- package/dist/src/API/getActiveHouses.test.js +43 -0
- package/dist/src/API/getBoosters.js +16 -0
- package/dist/src/API/getBoosters.test.js +72 -0
- package/dist/src/API/getChallenges.js +16 -0
- package/dist/src/API/getChallenges.test.js +51 -0
- package/dist/src/API/getGameCounts.js +16 -0
- package/dist/src/API/getGameCounts.test.js +26 -0
- package/dist/src/API/getGuild.js +30 -0
- package/dist/src/API/getGuild.test.js +508 -0
- package/dist/src/API/getGuildAchievements.js +16 -0
- package/dist/src/API/getGuildAchievements.test.js +51 -0
- package/dist/src/API/getHouse.js +18 -0
- package/dist/src/API/getHouse.test.js +51 -0
- package/dist/src/API/getLeaderboards.js +23 -0
- package/dist/src/API/getLeaderboards.test.js +55 -0
- package/dist/src/API/getPlayer.js +31 -0
- package/dist/src/API/getPlayer.test.js +290 -0
- package/dist/src/API/getPlayerHouses.js +19 -0
- package/dist/src/API/getPlayerHouses.test.js +50 -0
- package/dist/src/API/getQuests.js +16 -0
- package/dist/src/API/getQuests.test.js +48 -0
- package/dist/src/API/getRecentGames.js +19 -0
- package/dist/src/API/getRecentGames.test.js +52 -0
- package/dist/src/API/getSkyblockAuction.js +32 -0
- package/dist/src/API/getSkyblockAuction.test.js +382 -0
- package/dist/src/API/getSkyblockAuctions.js +51 -0
- package/dist/src/API/getSkyblockAuctions.test.js +366 -0
- package/dist/src/API/getSkyblockAuctionsByPlayer.js +19 -0
- package/dist/src/API/getSkyblockAuctionsByPlayer.test.js +207 -0
- package/dist/src/API/getSkyblockBazaar.js +16 -0
- package/dist/src/API/getSkyblockBazaar.test.js +51 -0
- package/dist/src/API/getSkyblockBingo.js +16 -0
- package/dist/src/API/getSkyblockBingo.test.js +40 -0
- package/dist/src/API/getSkyblockFireSales.js +16 -0
- package/dist/src/API/getSkyblockFireSales.test.js +55 -0
- package/dist/src/API/getSkyblockGarden.js +18 -0
- package/dist/src/API/getSkyblockGarden.test.js +43 -0
- package/dist/src/API/getSkyblockGovernment.js +16 -0
- package/dist/src/API/getSkyblockGovernment.test.js +60 -0
- package/dist/src/API/getSkyblockMember.js +40 -0
- package/dist/src/API/getSkyblockMember.test.js +648 -0
- package/dist/src/API/getSkyblockMuseum.js +19 -0
- package/dist/src/API/getSkyblockMuseum.test.js +78 -0
- package/dist/src/API/getSkyblockNews.js +16 -0
- package/dist/src/API/getSkyblockNews.test.js +35 -0
- package/dist/src/API/getSkyblockProfiles.js +41 -0
- package/dist/src/API/getSkyblockProfiles.test.js +121 -0
- package/dist/src/API/getStatus.js +17 -0
- package/dist/src/API/getStatus.test.js +57 -0
- package/dist/src/API/getWatchdogStats.js +16 -0
- package/dist/src/API/getWatchdogStats.test.js +37 -0
- package/dist/src/API/index.js +56 -0
- package/dist/src/Client.js +70 -0
- package/dist/src/Client.test.js +115 -0
- package/dist/src/Errors.js +28 -0
- package/dist/src/Private/CacheHandler.js +31 -0
- package/dist/src/Private/CacheHandler.test.js +37 -0
- package/dist/src/Private/Endpoint.js +10 -0
- package/dist/src/Private/Endpoint.test.js +17 -0
- package/dist/src/Private/RateLimit.js +30 -0
- package/dist/src/Private/RateLimit.test.js +73 -0
- package/dist/src/Private/Requests.js +106 -0
- package/dist/src/Private/Requests.test.js +48 -0
- package/dist/src/Private/Updater.js +41 -0
- package/dist/src/Private/Updater.test.js +52 -0
- package/dist/src/index.js +34 -0
- package/dist/src/structures/Boosters/Booster.js +38 -0
- package/dist/src/structures/Boosters/Booster.test.js +7 -0
- package/dist/src/structures/Color.js +73 -0
- package/dist/src/structures/Color.test.js +23 -0
- package/dist/src/structures/Game.js +31 -0
- package/dist/src/structures/GameCounts.js +23 -0
- package/dist/src/structures/Guild/Guild.js +61 -0
- package/dist/src/structures/Guild/GuildMember.js +30 -0
- package/dist/src/structures/Guild/GuildRank.js +20 -0
- package/dist/src/structures/House.js +22 -0
- package/dist/src/structures/House.test.js +24 -0
- package/dist/src/structures/ItemBytes.js +10 -0
- package/dist/src/structures/Leaderboard.js +17 -0
- package/dist/src/structures/Leaderboard.test.js +25 -0
- package/dist/src/structures/MiniGames/Arcade.js +437 -0
- package/dist/src/structures/MiniGames/Arcade.test.js +643 -0
- package/dist/src/structures/MiniGames/ArenaBrawl.js +48 -0
- package/dist/src/structures/MiniGames/ArenaBrawl.test.js +120 -0
- package/dist/src/structures/MiniGames/BedWars.js +299 -0
- package/dist/src/structures/MiniGames/BedWars.test.js +936 -0
- package/dist/src/structures/MiniGames/BlitzSurvivalGames.js +170 -0
- package/dist/src/structures/MiniGames/BlitzSurvivalGames.test.js +2238 -0
- package/dist/src/structures/MiniGames/BuildBattle.js +27 -0
- package/dist/src/structures/MiniGames/BuildBattle.test.js +42 -0
- package/dist/src/structures/MiniGames/CopsAndCrims.js +126 -0
- package/dist/src/structures/MiniGames/CopsAndCrims.test.js +162 -0
- package/dist/src/structures/MiniGames/Duels.js +466 -0
- package/dist/src/structures/MiniGames/Duels.test.js +1853 -0
- package/dist/src/structures/MiniGames/MegaWalls.js +194 -0
- package/dist/src/structures/MiniGames/MegaWalls.test.js +4790 -0
- package/dist/src/structures/MiniGames/MurderMystery.js +84 -0
- package/dist/src/structures/MiniGames/MurderMystery.test.js +241 -0
- package/dist/src/structures/MiniGames/Paintball.js +36 -0
- package/dist/src/structures/MiniGames/Paintball.test.js +51 -0
- package/dist/src/structures/MiniGames/Pit.js +124 -0
- package/dist/src/structures/MiniGames/Pit.test.js +218 -0
- package/dist/src/structures/MiniGames/PitInventoryItem.js +19 -0
- package/dist/src/structures/MiniGames/Quakecraft.js +68 -0
- package/dist/src/structures/MiniGames/Quakecraft.test.js +105 -0
- package/dist/src/structures/MiniGames/SkyWars.js +264 -0
- package/dist/src/structures/MiniGames/Skywars.test.js +413 -0
- package/dist/src/structures/MiniGames/SmashHeroes.js +110 -0
- package/dist/src/structures/MiniGames/SmashHeroes.test.js +647 -0
- package/dist/src/structures/MiniGames/SpeedUHC.js +72 -0
- package/dist/src/structures/MiniGames/SpeedUHC.test.js +245 -0
- package/dist/src/structures/MiniGames/TNTGames.js +120 -0
- package/dist/src/structures/MiniGames/TNTGames.test.js +139 -0
- package/dist/src/structures/MiniGames/TurboKartRacers.js +57 -0
- package/dist/src/structures/MiniGames/TurboKartRacers.test.js +140 -0
- package/dist/src/structures/MiniGames/UHC.js +109 -0
- package/dist/src/structures/MiniGames/UHC.test.js +180 -0
- package/dist/src/structures/MiniGames/VampireZ.js +38 -0
- package/dist/src/structures/MiniGames/VampireZ.test.js +59 -0
- package/dist/src/structures/MiniGames/Walls.js +22 -0
- package/dist/src/structures/MiniGames/Walls.test.js +32 -0
- package/dist/src/structures/MiniGames/Warlords.js +76 -0
- package/dist/src/structures/MiniGames/Warlords.test.js +405 -0
- package/dist/src/structures/MiniGames/WoolWars.js +81 -0
- package/dist/src/structures/MiniGames/WoolWars.test.js +251 -0
- package/dist/src/structures/Pet.js +38 -0
- package/dist/src/structures/Pets.js +14 -0
- package/dist/src/structures/Player.js +147 -0
- package/dist/src/structures/Player.test.js +96 -0
- package/dist/src/structures/PlayerCosmetics.js +53 -0
- package/dist/src/structures/RecentGame.js +25 -0
- package/dist/src/structures/SkyBlock/Auctions/Auction.js +39 -0
- package/dist/src/structures/SkyBlock/Auctions/AuctionInfo.js +15 -0
- package/dist/src/structures/SkyBlock/Auctions/BaseAuction.js +19 -0
- package/dist/src/structures/SkyBlock/Auctions/BaseAuction.test.js +20 -0
- package/dist/src/structures/SkyBlock/Auctions/Bid.js +20 -0
- package/dist/src/structures/SkyBlock/Bazaar/Order.js +16 -0
- package/dist/src/structures/SkyBlock/Bazaar/Order.test.js +23 -0
- package/dist/src/structures/SkyBlock/Bazaar/Product.js +23 -0
- package/dist/src/structures/SkyBlock/Bazaar/Product.test.js +46 -0
- package/dist/src/structures/SkyBlock/News/SkyblockNews.js +32 -0
- package/dist/src/structures/SkyBlock/SkyblockGarden.js +62 -0
- package/dist/src/structures/SkyBlock/SkyblockGarden.test.js +22 -0
- package/dist/src/structures/SkyBlock/SkyblockInventoryItem.js +78 -0
- package/dist/src/structures/SkyBlock/SkyblockMember.js +406 -0
- package/dist/src/structures/SkyBlock/SkyblockMember.test.js +71 -0
- package/dist/src/structures/SkyBlock/SkyblockMuseum.js +29 -0
- package/dist/src/structures/SkyBlock/SkyblockMuseumItem.js +24 -0
- package/dist/src/structures/SkyBlock/SkyblockPet.js +27 -0
- package/dist/src/structures/SkyBlock/SkyblockProfile.js +36 -0
- package/dist/src/structures/SkyBlock/Static/Bingo.js +49 -0
- package/dist/src/structures/SkyBlock/Static/BingoData.js +19 -0
- package/dist/src/structures/SkyBlock/Static/Candidate.js +19 -0
- package/dist/src/structures/SkyBlock/Static/FireSale.js +22 -0
- package/dist/src/structures/SkyBlock/Static/Government.js +33 -0
- package/dist/src/structures/SkyBlock/Static/Perk.js +9 -0
- package/dist/src/structures/Static/Achievement.js +44 -0
- package/dist/src/structures/Static/AchievementTier.js +14 -0
- package/dist/src/structures/Static/Achievements.js +15 -0
- package/dist/src/structures/Static/Challenges.js +15 -0
- package/dist/src/structures/Static/GameAchievements.js +14 -0
- package/dist/src/structures/Static/GameChallenges.js +18 -0
- package/dist/src/structures/Static/GameQuests.js +10 -0
- package/dist/src/structures/Static/GuildAchievements.js +15 -0
- package/dist/src/structures/Static/Quest.js +24 -0
- package/dist/src/structures/Static/Quests.js +15 -0
- package/dist/src/structures/Status.js +17 -0
- package/dist/src/structures/Status.test.js +18 -0
- package/dist/src/structures/WatchdogStats.js +15 -0
- package/dist/src/structures/WatchdogStats.test.js +23 -0
- package/dist/src/utils/Constants.js +2170 -0
- package/dist/src/utils/Guild.js +71 -0
- package/dist/src/utils/Player.js +88 -0
- package/dist/src/utils/Player.test.js +82 -0
- package/dist/src/utils/SkyblockUtils.js +342 -0
- package/dist/src/utils/SkyblockUtils.test.js +8 -0
- package/dist/src/utils/divide.js +6 -0
- package/dist/src/utils/divide.test.js +12 -0
- package/dist/src/utils/isGuildID.js +3 -0
- package/dist/src/utils/isGuildID.test.js +16 -0
- package/dist/src/utils/isUUID.js +5 -0
- package/dist/src/utils/isUUID.test.js +31 -0
- package/dist/src/utils/oscillation.js +13 -0
- package/dist/src/utils/oscillation.test.js +17 -0
- package/dist/src/utils/removeSnakeCase.js +14 -0
- package/dist/src/utils/romanize.js +41 -0
- package/dist/src/utils/romanize.test.js +8 -0
- package/dist/structures/Boosters/Booster.d.ts +17 -0
- package/dist/structures/Boosters/Booster.js +44 -0
- package/dist/structures/Boosters/Booster.js.map +1 -0
- package/dist/structures/Color.d.ts +9 -0
- package/dist/structures/Color.js +76 -0
- package/dist/structures/Color.js.map +1 -0
- package/dist/structures/Game.d.ts +16 -0
- package/dist/structures/Game.js +35 -0
- package/dist/structures/Game.js.map +1 -0
- package/dist/structures/GameCounts.d.ts +7 -0
- package/dist/structures/GameCounts.js +29 -0
- package/dist/structures/GameCounts.js.map +1 -0
- package/dist/structures/Guild/Guild.d.ts +39 -0
- package/dist/structures/Guild/Guild.js +67 -0
- package/dist/structures/Guild/Guild.js.map +1 -0
- package/dist/structures/Guild/GuildMember.d.ts +15 -0
- package/dist/structures/Guild/GuildMember.js +33 -0
- package/dist/structures/Guild/GuildMember.js.map +1 -0
- package/dist/structures/Guild/GuildRank.d.ts +11 -0
- package/dist/structures/Guild/GuildRank.js +23 -0
- package/dist/structures/Guild/GuildRank.js.map +1 -0
- package/dist/structures/House.d.ts +12 -0
- package/dist/structures/House.js +25 -0
- package/dist/structures/House.js.map +1 -0
- package/dist/structures/ItemBytes.d.ts +7 -0
- package/dist/structures/ItemBytes.js +17 -0
- package/dist/structures/ItemBytes.js.map +1 -0
- package/dist/structures/Leaderboard.d.ts +8 -0
- package/dist/structures/Leaderboard.js +16 -0
- package/dist/structures/Leaderboard.js.map +1 -0
- package/dist/structures/MiniGames/Arcade.d.ts +234 -0
- package/dist/structures/MiniGames/Arcade.js +466 -0
- package/dist/structures/MiniGames/Arcade.js.map +1 -0
- package/dist/structures/MiniGames/ArenaBrawl.d.ts +26 -0
- package/dist/structures/MiniGames/ArenaBrawl.js +54 -0
- package/dist/structures/MiniGames/ArenaBrawl.js.map +1 -0
- package/dist/structures/MiniGames/BedWars.d.ts +116 -0
- package/dist/structures/MiniGames/BedWars.js +300 -0
- package/dist/structures/MiniGames/BedWars.js.map +1 -0
- package/dist/structures/MiniGames/BlitzSurvivalGames.d.ts +87 -0
- package/dist/structures/MiniGames/BlitzSurvivalGames.js +176 -0
- package/dist/structures/MiniGames/BlitzSurvivalGames.js.map +1 -0
- package/dist/structures/MiniGames/BuildBattle.d.ts +18 -0
- package/dist/structures/MiniGames/BuildBattle.js +33 -0
- package/dist/structures/MiniGames/BuildBattle.js.map +1 -0
- package/dist/structures/MiniGames/CopsAndCrims.d.ts +67 -0
- package/dist/structures/MiniGames/CopsAndCrims.js +132 -0
- package/dist/structures/MiniGames/CopsAndCrims.js.map +1 -0
- package/dist/structures/MiniGames/Duels.d.ts +188 -0
- package/dist/structures/MiniGames/Duels.js +473 -0
- package/dist/structures/MiniGames/Duels.js.map +1 -0
- package/dist/structures/MiniGames/MegaWalls.d.ts +99 -0
- package/dist/structures/MiniGames/MegaWalls.js +200 -0
- package/dist/structures/MiniGames/MegaWalls.js.map +1 -0
- package/dist/structures/MiniGames/MurderMystery.d.ts +44 -0
- package/dist/structures/MiniGames/MurderMystery.js +90 -0
- package/dist/structures/MiniGames/MurderMystery.js.map +1 -0
- package/dist/structures/MiniGames/Paintball.d.ts +19 -0
- package/dist/structures/MiniGames/Paintball.js +42 -0
- package/dist/structures/MiniGames/Paintball.js.map +1 -0
- package/dist/structures/MiniGames/Pit.d.ts +41 -0
- package/dist/structures/MiniGames/Pit.js +138 -0
- package/dist/structures/MiniGames/Pit.js.map +1 -0
- package/dist/structures/MiniGames/PitInventoryItem.d.ts +10 -0
- package/dist/structures/MiniGames/PitInventoryItem.js +20 -0
- package/dist/structures/MiniGames/PitInventoryItem.js.map +1 -0
- package/dist/structures/MiniGames/Quakecraft.d.ts +35 -0
- package/dist/structures/MiniGames/Quakecraft.js +74 -0
- package/dist/structures/MiniGames/Quakecraft.js.map +1 -0
- package/dist/structures/MiniGames/SkyWars.d.ts +112 -0
- package/dist/structures/MiniGames/SkyWars.js +272 -0
- package/dist/structures/MiniGames/SkyWars.js.map +1 -0
- package/dist/structures/MiniGames/SmashHeroes.d.ts +58 -0
- package/dist/structures/MiniGames/SmashHeroes.js +116 -0
- package/dist/structures/MiniGames/SmashHeroes.js.map +1 -0
- package/dist/structures/MiniGames/SpeedUHC.d.ts +36 -0
- package/dist/structures/MiniGames/SpeedUHC.js +74 -0
- package/dist/structures/MiniGames/SpeedUHC.js.map +1 -0
- package/dist/structures/MiniGames/TNTGames.d.ts +66 -0
- package/dist/structures/MiniGames/TNTGames.js +126 -0
- package/dist/structures/MiniGames/TNTGames.js.map +1 -0
- package/dist/structures/MiniGames/TurboKartRacers.d.ts +31 -0
- package/dist/structures/MiniGames/TurboKartRacers.js +60 -0
- package/dist/structures/MiniGames/TurboKartRacers.js.map +1 -0
- package/dist/structures/MiniGames/UHC.d.ts +31 -0
- package/dist/structures/MiniGames/UHC.js +115 -0
- package/dist/structures/MiniGames/UHC.js.map +1 -0
- package/dist/structures/MiniGames/VampireZ.d.ts +21 -0
- package/dist/structures/MiniGames/VampireZ.js +44 -0
- package/dist/structures/MiniGames/VampireZ.js.map +1 -0
- package/dist/structures/MiniGames/Walls.d.ts +12 -0
- package/dist/structures/MiniGames/Walls.js +28 -0
- package/dist/structures/MiniGames/Walls.js.map +1 -0
- package/dist/structures/MiniGames/Warlords.d.ts +40 -0
- package/dist/structures/MiniGames/Warlords.js +82 -0
- package/dist/structures/MiniGames/Warlords.js.map +1 -0
- package/dist/structures/MiniGames/WoolWars.d.ts +49 -0
- package/dist/structures/MiniGames/WoolWars.js +87 -0
- package/dist/structures/MiniGames/WoolWars.js.map +1 -0
- package/dist/structures/Pet.d.ts +19 -0
- package/dist/structures/Pet.js +41 -0
- package/dist/structures/Pet.js.map +1 -0
- package/dist/structures/Pets.d.ts +38 -0
- package/dist/structures/Pets.js +20 -0
- package/dist/structures/Pets.js.map +1 -0
- package/dist/structures/Player.d.ts +73 -0
- package/dist/structures/Player.js +158 -0
- package/dist/structures/Player.js.map +1 -0
- package/dist/structures/PlayerCosmetics.d.ts +26 -0
- package/dist/structures/PlayerCosmetics.js +120 -0
- package/dist/structures/PlayerCosmetics.js.map +1 -0
- package/dist/structures/RecentGame.d.ts +13 -0
- package/dist/structures/RecentGame.js +30 -0
- package/dist/structures/RecentGame.js.map +1 -0
- package/dist/structures/ServerInfo.d.ts +20 -0
- package/dist/structures/ServerInfo.js +34 -0
- package/dist/structures/ServerInfo.js.map +1 -0
- package/dist/structures/SkyBlock/Auctions/Auction.d.ts +22 -0
- package/dist/structures/SkyBlock/Auctions/Auction.js +45 -0
- package/dist/structures/SkyBlock/Auctions/Auction.js.map +1 -0
- package/dist/structures/SkyBlock/Auctions/AuctionInfo.d.ts +10 -0
- package/dist/structures/SkyBlock/Auctions/AuctionInfo.js +21 -0
- package/dist/structures/SkyBlock/Auctions/AuctionInfo.js.map +1 -0
- package/dist/structures/SkyBlock/Auctions/BaseAuction.d.ts +11 -0
- package/dist/structures/SkyBlock/Auctions/BaseAuction.js +25 -0
- package/dist/structures/SkyBlock/Auctions/BaseAuction.js.map +1 -0
- package/dist/structures/SkyBlock/Auctions/Bid.d.ts +11 -0
- package/dist/structures/SkyBlock/Auctions/Bid.js +23 -0
- package/dist/structures/SkyBlock/Auctions/Bid.js.map +1 -0
- package/dist/structures/SkyBlock/Bazzar/Order.d.ts +9 -0
- package/dist/structures/SkyBlock/Bazzar/Order.js +19 -0
- package/dist/structures/SkyBlock/Bazzar/Order.js.map +1 -0
- package/dist/structures/SkyBlock/Bazzar/Product.d.ts +19 -0
- package/dist/structures/SkyBlock/Bazzar/Product.js +33 -0
- package/dist/structures/SkyBlock/Bazzar/Product.js.map +1 -0
- package/dist/structures/SkyBlock/News/SkyblockNews.d.ts +10 -0
- package/dist/structures/SkyBlock/News/SkyblockNews.js +35 -0
- package/dist/structures/SkyBlock/News/SkyblockNews.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockGarden.d.ts +60 -0
- package/dist/structures/SkyBlock/SkyblockGarden.js +65 -0
- package/dist/structures/SkyBlock/SkyblockGarden.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockInventoryItem.d.ts +38 -0
- package/dist/structures/SkyBlock/SkyblockInventoryItem.js +83 -0
- package/dist/structures/SkyBlock/SkyblockInventoryItem.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockMember.d.ts +80 -0
- package/dist/structures/SkyBlock/SkyblockMember.js +288 -0
- package/dist/structures/SkyBlock/SkyblockMember.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockMuseum.d.ts +10 -0
- package/dist/structures/SkyBlock/SkyblockMuseum.js +35 -0
- package/dist/structures/SkyBlock/SkyblockMuseum.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockMuseumItem.d.ts +11 -0
- package/dist/structures/SkyBlock/SkyblockMuseumItem.js +30 -0
- package/dist/structures/SkyBlock/SkyblockMuseumItem.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockPet.d.ts +15 -0
- package/dist/structures/SkyBlock/SkyblockPet.js +33 -0
- package/dist/structures/SkyBlock/SkyblockPet.js.map +1 -0
- package/dist/structures/SkyBlock/SkyblockProfile.d.ts +14 -0
- package/dist/structures/SkyBlock/SkyblockProfile.js +42 -0
- package/dist/structures/SkyBlock/SkyblockProfile.js.map +1 -0
- package/dist/structures/SkyBlock/Static/Bingo.d.ts +16 -0
- package/dist/structures/SkyBlock/Static/Bingo.js +52 -0
- package/dist/structures/SkyBlock/Static/Bingo.js.map +1 -0
- package/dist/structures/SkyBlock/Static/BingoData.d.ts +10 -0
- package/dist/structures/SkyBlock/Static/BingoData.js +25 -0
- package/dist/structures/SkyBlock/Static/BingoData.js.map +1 -0
- package/dist/structures/SkyBlock/Static/Candidate.d.ts +11 -0
- package/dist/structures/SkyBlock/Static/Candidate.js +25 -0
- package/dist/structures/SkyBlock/Static/Candidate.js.map +1 -0
- package/dist/structures/SkyBlock/Static/FireSale.d.ts +12 -0
- package/dist/structures/SkyBlock/Static/FireSale.js +25 -0
- package/dist/structures/SkyBlock/Static/FireSale.js.map +1 -0
- package/dist/structures/SkyBlock/Static/Government.d.ts +13 -0
- package/dist/structures/SkyBlock/Static/Government.js +39 -0
- package/dist/structures/SkyBlock/Static/Government.js.map +1 -0
- package/dist/structures/SkyBlock/Static/Perk.d.ts +6 -0
- package/dist/structures/SkyBlock/Static/Perk.js +12 -0
- package/dist/structures/SkyBlock/Static/Perk.js.map +1 -0
- package/dist/structures/Static/Achievement.d.ts +14 -0
- package/dist/structures/Static/Achievement.js +50 -0
- package/dist/structures/Static/Achievement.js.map +1 -0
- package/dist/structures/Static/AchievementTier.d.ts +7 -0
- package/dist/structures/Static/AchievementTier.js +17 -0
- package/dist/structures/Static/AchievementTier.js.map +1 -0
- package/dist/structures/Static/Achievements.d.ts +9 -0
- package/dist/structures/Static/Achievements.js +21 -0
- package/dist/structures/Static/Achievements.js.map +1 -0
- package/dist/structures/Static/Challenges.d.ts +9 -0
- package/dist/structures/Static/Challenges.js +21 -0
- package/dist/structures/Static/Challenges.js.map +1 -0
- package/dist/structures/Static/GameAchievements.d.ts +10 -0
- package/dist/structures/Static/GameAchievements.js +20 -0
- package/dist/structures/Static/GameAchievements.js.map +1 -0
- package/dist/structures/Static/GameChallenges.d.ts +13 -0
- package/dist/structures/Static/GameChallenges.js +21 -0
- package/dist/structures/Static/GameChallenges.js.map +1 -0
- package/dist/structures/Static/GameQuests.d.ts +8 -0
- package/dist/structures/Static/GameQuests.js +16 -0
- package/dist/structures/Static/GameQuests.js.map +1 -0
- package/dist/structures/Static/GuildAchievements.d.ts +8 -0
- package/dist/structures/Static/GuildAchievements.js +21 -0
- package/dist/structures/Static/GuildAchievements.js.map +1 -0
- package/dist/structures/Static/Quest.d.ts +20 -0
- package/dist/structures/Static/Quest.js +27 -0
- package/dist/structures/Static/Quest.js.map +1 -0
- package/dist/structures/Static/Quests.d.ts +9 -0
- package/dist/structures/Static/Quests.js +21 -0
- package/dist/structures/Static/Quests.js.map +1 -0
- package/dist/structures/Status.d.ts +10 -0
- package/dist/structures/Status.js +23 -0
- package/dist/structures/Status.js.map +1 -0
- package/dist/structures/Watchdog/Stats.d.ts +9 -0
- package/dist/structures/Watchdog/Stats.js +18 -0
- package/dist/structures/Watchdog/Stats.js.map +1 -0
- package/dist/utils/Constants.d.ts +1017 -0
- package/dist/utils/Constants.js +2197 -0
- package/dist/utils/Constants.js.map +1 -0
- package/dist/utils/Guild.d.ts +15 -0
- package/dist/utils/Guild.js +85 -0
- package/dist/utils/Guild.js.map +1 -0
- package/dist/utils/Player.d.ts +8 -0
- package/dist/utils/Player.js +98 -0
- package/dist/utils/Player.js.map +1 -0
- package/dist/utils/SkyblockUtils.d.ts +131 -0
- package/dist/utils/SkyblockUtils.js +394 -0
- package/dist/utils/SkyblockUtils.js.map +1 -0
- package/dist/utils/divide.d.ts +1 -0
- package/dist/utils/divide.js +10 -0
- package/dist/utils/divide.js.map +1 -0
- package/dist/utils/isGuildID.d.ts +1 -0
- package/dist/utils/isGuildID.js +7 -0
- package/dist/utils/isGuildID.js.map +1 -0
- package/dist/utils/isUUID.d.ts +1 -0
- package/dist/utils/isUUID.js +9 -0
- package/dist/utils/isUUID.js.map +1 -0
- package/dist/utils/oscillation.d.ts +2 -0
- package/dist/utils/oscillation.js +15 -0
- package/dist/utils/oscillation.js.map +1 -0
- package/dist/utils/removeSnakeCase.d.ts +3 -0
- package/dist/utils/removeSnakeCase.js +20 -0
- package/dist/utils/removeSnakeCase.js.map +1 -0
- package/dist/utils/romanize.d.ts +1 -0
- package/dist/utils/romanize.js +45 -0
- package/dist/utils/romanize.js.map +1 -0
- package/{eslint.config.mjs → eslint.config.js} +16 -14
- package/package.json +32 -25
- package/renovate.json +21 -0
- package/src/API/API.d.ts +16 -0
- package/src/API/getAchievements.test.ts +81 -0
- package/src/API/getAchievements.ts +20 -0
- package/src/API/getActiveHouses.test.ts +45 -0
- package/src/API/getActiveHouses.ts +20 -0
- package/src/API/getBoosters.test.ts +53 -0
- package/src/API/getBoosters.ts +20 -0
- package/src/API/getChallenges.test.ts +54 -0
- package/src/API/getChallenges.ts +19 -0
- package/src/API/getGameCounts.test.ts +28 -0
- package/src/API/getGameCounts.ts +20 -0
- package/src/API/getGuild.test.ts +478 -0
- package/src/API/getGuild.ts +35 -0
- package/src/API/getGuildAchievements.test.ts +59 -0
- package/src/API/getGuildAchievements.ts +20 -0
- package/src/API/getHouse.test.ts +55 -0
- package/src/API/getHouse.ts +21 -0
- package/src/API/getLeaderboards.test.ts +41 -0
- package/src/API/getLeaderboards.ts +30 -0
- package/src/API/getPlayer.test.ts +494 -0
- package/src/API/getPlayer.ts +33 -0
- package/src/API/getPlayerHouses.test.ts +53 -0
- package/src/API/getPlayerHouses.ts +22 -0
- package/src/API/getQuests.test.ts +51 -0
- package/src/API/getQuests.ts +20 -0
- package/src/API/getRecentGames.test.ts +51 -0
- package/src/API/getRecentGames.ts +22 -0
- package/src/API/getSkyblockAuction.test.ts +293 -0
- package/src/API/getSkyblockAuction.ts +36 -0
- package/src/API/getSkyblockAuctions.test.ts +346 -0
- package/src/API/getSkyblockAuctions.ts +59 -0
- package/src/API/getSkyblockAuctionsByPlayer.test.ts +249 -0
- package/src/API/getSkyblockAuctionsByPlayer.ts +22 -0
- package/src/API/getSkyblockBazaar.test.ts +52 -0
- package/src/API/getSkyblockBazaar.ts +20 -0
- package/src/API/getSkyblockBingo.test.ts +42 -0
- package/src/API/getSkyblockBingo.ts +20 -0
- package/src/API/getSkyblockFireSales.test.ts +43 -0
- package/src/API/getSkyblockFireSales.ts +20 -0
- package/src/API/getSkyblockGarden.test.ts +60 -0
- package/src/API/getSkyblockGarden.ts +21 -0
- package/src/API/getSkyblockGovernment.test.ts +78 -0
- package/src/API/getSkyblockGovernment.ts +20 -0
- package/src/API/getSkyblockMember.test.ts +308 -0
- package/src/API/getSkyblockMember.ts +45 -0
- package/src/API/getSkyblockMuseum.test.ts +91 -0
- package/src/API/getSkyblockMuseum.ts +22 -0
- package/src/API/getSkyblockNews.test.ts +45 -0
- package/src/API/getSkyblockNews.ts +20 -0
- package/src/API/getSkyblockProfiles.test.ts +164 -0
- package/src/API/getSkyblockProfiles.ts +43 -0
- package/src/API/getStatus.test.ts +42 -0
- package/src/API/getStatus.ts +21 -0
- package/src/API/getWatchdogStats.test.ts +44 -0
- package/src/API/getWatchdogStats.ts +20 -0
- package/src/API/index.ts +56 -0
- package/src/Client.test.ts +148 -0
- package/src/Client.ts +91 -0
- package/src/Errors.ts +42 -0
- package/src/Private/CacheHandler.test.ts +49 -0
- package/src/Private/CacheHandler.ts +41 -0
- package/src/Private/Endpoint.test.ts +23 -0
- package/src/Private/Endpoint.ts +14 -0
- package/src/Private/RateLimit.test.ts +99 -0
- package/src/Private/RateLimit.ts +38 -0
- package/src/Private/Requests.test.ts +59 -0
- package/src/Private/Requests.ts +128 -0
- package/src/Private/Updater.test.ts +68 -0
- package/src/Private/Updater.ts +48 -0
- package/src/index.ts +119 -0
- package/src/structures/Boosters/Booster.ts +40 -0
- package/src/structures/Color.ts +79 -0
- package/src/structures/Game.ts +147 -0
- package/src/structures/GameCounts.ts +26 -0
- package/src/structures/Guild/Guild.ts +67 -0
- package/src/structures/Guild/GuildMember.ts +33 -0
- package/src/structures/Guild/GuildRank.ts +22 -0
- package/src/structures/House.ts +24 -0
- package/src/structures/ItemBytes.ts +18 -0
- package/src/structures/Leaderboard.ts +14 -0
- package/src/structures/MiniGames/Arcade.ts +460 -0
- package/src/structures/MiniGames/ArenaBrawl.ts +51 -0
- package/src/structures/MiniGames/{BedWars.js → BedWars.ts} +198 -298
- package/src/structures/MiniGames/BlitzSurvivalGames.ts +173 -0
- package/src/structures/MiniGames/BuildBattle.ts +36 -0
- package/src/structures/MiniGames/CopsAndCrims.ts +131 -0
- package/src/structures/MiniGames/{Duels.js → Duels.ts} +200 -737
- package/src/structures/MiniGames/MegaWalls.ts +197 -0
- package/src/structures/MiniGames/MurderMystery.ts +87 -0
- package/src/structures/MiniGames/Paintball.ts +38 -0
- package/src/structures/MiniGames/Pit.ts +139 -0
- package/src/structures/MiniGames/PitInventoryItem.ts +18 -0
- package/src/structures/MiniGames/Quakecraft.ts +70 -0
- package/src/structures/MiniGames/SkyWars.ts +288 -0
- package/src/structures/MiniGames/SmashHeroes.ts +114 -0
- package/src/structures/MiniGames/SpeedUHC.ts +71 -0
- package/src/structures/MiniGames/TNTGames.ts +126 -0
- package/src/structures/MiniGames/TurboKartRacers.ts +59 -0
- package/src/structures/MiniGames/{UHC.js → UHC.ts} +32 -114
- package/src/structures/MiniGames/VampireZ.ts +41 -0
- package/src/structures/MiniGames/Walls.ts +24 -0
- package/src/structures/MiniGames/Warlords.ts +79 -0
- package/src/structures/MiniGames/WoolWars.ts +106 -0
- package/src/structures/Pet.ts +40 -0
- package/src/structures/Pets.ts +46 -0
- package/src/structures/Player.ts +199 -0
- package/src/structures/{PlayerCosmetics.js → PlayerCosmetics.ts} +36 -63
- package/src/structures/RecentGame.ts +27 -0
- package/src/structures/ServerInfo.ts +40 -0
- package/src/structures/SkyBlock/Auctions/Auction.ts +43 -0
- package/src/structures/SkyBlock/Auctions/AuctionInfo.ts +20 -0
- package/src/structures/SkyBlock/Auctions/BaseAuction.ts +22 -0
- package/src/structures/SkyBlock/Auctions/Bid.ts +22 -0
- package/src/structures/SkyBlock/Bazzar/Order.ts +18 -0
- package/src/structures/SkyBlock/Bazzar/Product.ts +40 -0
- package/src/structures/SkyBlock/News/SkyblockNews.ts +35 -0
- package/src/structures/SkyBlock/SkyblockGarden.ts +118 -0
- package/src/structures/SkyBlock/SkyblockInventoryItem.ts +83 -0
- package/src/structures/SkyBlock/SkyblockMember.ts +317 -0
- package/src/structures/SkyBlock/SkyblockMuseum.ts +43 -0
- package/src/structures/SkyBlock/SkyblockMuseumItem.ts +26 -0
- package/src/structures/SkyBlock/SkyblockPet.ts +30 -0
- package/src/structures/SkyBlock/SkyblockProfile.ts +42 -0
- package/src/structures/SkyBlock/Static/Bingo.ts +50 -0
- package/src/structures/SkyBlock/Static/BingoData.ts +21 -0
- package/src/structures/SkyBlock/Static/Candidate.ts +22 -0
- package/src/structures/SkyBlock/Static/FireSale.ts +24 -0
- package/src/structures/SkyBlock/Static/Government.ts +42 -0
- package/src/structures/SkyBlock/Static/Perk.ts +10 -0
- package/src/structures/Static/Achievement.ts +49 -0
- package/src/structures/Static/AchievementTier.ts +18 -0
- package/src/structures/Static/Achievements.ts +20 -0
- package/src/structures/Static/Challenges.ts +20 -0
- package/src/structures/Static/GameAchievements.ts +19 -0
- package/src/structures/Static/GameChallenges.ts +28 -0
- package/src/structures/Static/GameQuests.ts +13 -0
- package/src/structures/Static/GuildAchievements.ts +19 -0
- package/src/structures/Static/Quest.ts +37 -0
- package/src/structures/Static/Quests.ts +20 -0
- package/src/structures/Status.ts +20 -0
- package/src/structures/Watchdog/Stats.ts +16 -0
- package/src/typings/index.d.ts +24 -0
- package/src/utils/{Constants.js → Constants.ts} +201 -1248
- package/src/utils/Guild.ts +90 -0
- package/src/utils/Player.ts +93 -0
- package/src/utils/SkyblockUtils.test.ts +9 -0
- package/src/utils/SkyblockUtils.ts +516 -0
- package/src/utils/divide.test.ts +13 -0
- package/src/utils/{divide.js → divide.ts} +2 -2
- package/src/utils/isGuildID.test.ts +19 -0
- package/src/utils/isGuildID.ts +3 -0
- package/src/utils/isUUID.test.ts +35 -0
- package/src/utils/{isUUID.js → isUUID.ts} +2 -2
- package/src/utils/oscillation.ts +11 -0
- package/src/utils/removeSnakeCase.ts +18 -0
- package/src/utils/romanize.test.ts +9 -0
- package/src/utils/{romanize.js → romanize.ts} +3 -4
- package/tsconfig.json +25 -0
- package/vitest.config.ts +8 -0
- package/vitest.setup.ts +2 -0
- package/src/API/getAPIStatus.js +0 -8
- package/src/API/getAchievements.js +0 -7
- package/src/API/getBoosters.js +0 -7
- package/src/API/getChallenges.js +0 -7
- package/src/API/getGameCounts.js +0 -7
- package/src/API/getGuild.js +0 -19
- package/src/API/getGuildAchievements.js +0 -7
- package/src/API/getLeaderboards.js +0 -15
- package/src/API/getPlayer.js +0 -23
- package/src/API/getQuests.js +0 -7
- package/src/API/getRecentGames.js +0 -14
- package/src/API/getServerInfo.js +0 -71
- package/src/API/getStatus.js +0 -9
- package/src/API/getWatchdogStats.js +0 -7
- package/src/API/housing/getActiveHouses.js +0 -7
- package/src/API/housing/getHouse.js +0 -9
- package/src/API/housing/getPlayerHouses.js +0 -11
- package/src/API/index.js +0 -35
- package/src/API/skyblock/getAuction.js +0 -21
- package/src/API/skyblock/getAuctions.js +0 -74
- package/src/API/skyblock/getAuctionsByPlayer.js +0 -11
- package/src/API/skyblock/getBazaar.js +0 -8
- package/src/API/skyblock/getBingo.js +0 -7
- package/src/API/skyblock/getBingoByPlayer.js +0 -14
- package/src/API/skyblock/getEndedAuctions.js +0 -11
- package/src/API/skyblock/getFireSales.js +0 -7
- package/src/API/skyblock/getGarden.js +0 -11
- package/src/API/skyblock/getGovernment.js +0 -7
- package/src/API/skyblock/getMember.js +0 -35
- package/src/API/skyblock/getMuseum.js +0 -15
- package/src/API/skyblock/getNews.js +0 -7
- package/src/API/skyblock/getProfiles.js +0 -49
- package/src/Client.js +0 -547
- package/src/Errors.js +0 -66
- package/src/Private/defaultCache.js +0 -77
- package/src/Private/rateLimit.js +0 -83
- package/src/Private/requests.js +0 -76
- package/src/Private/updater.js +0 -34
- package/src/Private/uuidCache.js +0 -30
- package/src/Private/validate.js +0 -108
- package/src/index.js +0 -96
- package/src/structures/APIIncident.js +0 -71
- package/src/structures/APIStatus.js +0 -46
- package/src/structures/Boosters/Booster.js +0 -84
- package/src/structures/Color.js +0 -174
- package/src/structures/Game.js +0 -166
- package/src/structures/GameCounts.js +0 -151
- package/src/structures/Guild/Guild.js +0 -191
- package/src/structures/Guild/GuildMember.js +0 -66
- package/src/structures/Guild/GuildRank.js +0 -48
- package/src/structures/House.js +0 -54
- package/src/structures/ItemBytes.js +0 -33
- package/src/structures/Leaderboard.js +0 -31
- package/src/structures/MiniGames/Arcade.js +0 -1058
- package/src/structures/MiniGames/ArenaBrawl.js +0 -118
- package/src/structures/MiniGames/BlitzSurvivalGames.js +0 -424
- package/src/structures/MiniGames/BuildBattle.js +0 -64
- package/src/structures/MiniGames/CopsAndCrims.js +0 -318
- package/src/structures/MiniGames/MegaWalls.js +0 -478
- package/src/structures/MiniGames/MurderMystery.js +0 -214
- package/src/structures/MiniGames/Paintball.js +0 -87
- package/src/structures/MiniGames/Pit.js +0 -247
- package/src/structures/MiniGames/PitInventoryItem.js +0 -43
- package/src/structures/MiniGames/Quakecraft.js +0 -164
- package/src/structures/MiniGames/SkyWars.js +0 -669
- package/src/structures/MiniGames/SmashHeroes.js +0 -272
- package/src/structures/MiniGames/SpeedUHC.js +0 -168
- package/src/structures/MiniGames/TNTGames.js +0 -285
- package/src/structures/MiniGames/TurboKartRacers.js +0 -141
- package/src/structures/MiniGames/VampireZ.js +0 -93
- package/src/structures/MiniGames/Walls.js +0 -52
- package/src/structures/MiniGames/Warlords.js +0 -187
- package/src/structures/MiniGames/WoolWars.js +0 -174
- package/src/structures/Pet.js +0 -96
- package/src/structures/Pets.js +0 -64
- package/src/structures/Player.js +0 -346
- package/src/structures/RecentGame.js +0 -57
- package/src/structures/ServerInfo.js +0 -78
- package/src/structures/SkyBlock/Auctions/Auction.js +0 -106
- package/src/structures/SkyBlock/Auctions/AuctionInfo.js +0 -56
- package/src/structures/SkyBlock/Auctions/BaseAuction.js +0 -46
- package/src/structures/SkyBlock/Auctions/Bid.js +0 -49
- package/src/structures/SkyBlock/Auctions/PartialAuction.js +0 -26
- package/src/structures/SkyBlock/Bazzar/Order.js +0 -38
- package/src/structures/SkyBlock/Bazzar/Product.js +0 -53
- package/src/structures/SkyBlock/News/SkyblockNews.js +0 -60
- package/src/structures/SkyBlock/PlayerBingo.js +0 -49
- package/src/structures/SkyBlock/SkyblockGarden.js +0 -146
- package/src/structures/SkyBlock/SkyblockInventoryItem.js +0 -168
- package/src/structures/SkyBlock/SkyblockMember.js +0 -591
- package/src/structures/SkyBlock/SkyblockMuseum.js +0 -60
- package/src/structures/SkyBlock/SkyblockMuseumItem.js +0 -54
- package/src/structures/SkyBlock/SkyblockPet.js +0 -71
- package/src/structures/SkyBlock/SkyblockProfile.js +0 -81
- package/src/structures/SkyBlock/Static/Bingo.js +0 -101
- package/src/structures/SkyBlock/Static/BingoData.js +0 -45
- package/src/structures/SkyBlock/Static/Candidate.js +0 -50
- package/src/structures/SkyBlock/Static/FireSale.js +0 -55
- package/src/structures/SkyBlock/Static/Government.js +0 -79
- package/src/structures/SkyBlock/Static/Perk.js +0 -23
- package/src/structures/Static/Achievement.js +0 -87
- package/src/structures/Static/AchievementTier.js +0 -33
- package/src/structures/Static/Achievements.js +0 -30
- package/src/structures/Static/Challenges.js +0 -29
- package/src/structures/Static/GameAchievements.js +0 -36
- package/src/structures/Static/GameChallenges.js +0 -40
- package/src/structures/Static/GameQuests.js +0 -24
- package/src/structures/Static/GuildAchievements.js +0 -34
- package/src/structures/Static/Quest.js +0 -66
- package/src/structures/Static/Quests.js +0 -31
- package/src/structures/Status.js +0 -41
- package/src/structures/Watchdog/Stats.js +0 -36
- package/src/utils/Guild.js +0 -90
- package/src/utils/Player.js +0 -112
- package/src/utils/SkyblockUtils.js +0 -667
- package/src/utils/arrayTools.js +0 -4
- package/src/utils/index.js +0 -14
- package/src/utils/isGuildID.js +0 -3
- package/src/utils/oscillation.js +0 -17
- package/src/utils/removeSnakeCase.js +0 -33
- package/src/utils/rgbToHexColor.js +0 -8
- package/src/utils/toUuid.js +0 -24
- package/src/utils/varInt.js +0 -17
- package/typings/index.d.ts +0 -4297
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
import Constants from '../../utils/Constants';
|
|
2
|
+
import SkyblockInventoryItem from './SkyblockInventoryItem';
|
|
3
|
+
import SkyblockPet from './SkyblockPet';
|
|
4
|
+
import { getNetworth } from 'skyhelper-networth';
|
|
5
|
+
import { createFarmingWeightCalculator } from 'farming-weight';
|
|
6
|
+
import { decode, getBestiaryLevel, getChocolateFactory, getDungeons, getJacobData, getLevelByXp, getPetLevel, getSkills, getSlayer, getTrophyFishRank } from '../../utils/SkyblockUtils';
|
|
7
|
+
export class MemberStats {
|
|
8
|
+
candy;
|
|
9
|
+
petMilestones;
|
|
10
|
+
highestCriticalDamage;
|
|
11
|
+
highestDamage;
|
|
12
|
+
glowingMusroomsBroken;
|
|
13
|
+
kills;
|
|
14
|
+
deaths;
|
|
15
|
+
auctions;
|
|
16
|
+
gifts;
|
|
17
|
+
itemsFished;
|
|
18
|
+
mythos;
|
|
19
|
+
constructor(data) {
|
|
20
|
+
this.candy = {
|
|
21
|
+
green: data?.candy_collected?.green_candy || 0,
|
|
22
|
+
purple: data?.candy_collected?.purple_candy || 0,
|
|
23
|
+
total: data?.candy_collected?.total || 0,
|
|
24
|
+
festivals: []
|
|
25
|
+
};
|
|
26
|
+
Object.keys(data?.candy_collected || {}).forEach((year) => {
|
|
27
|
+
if ('total' !== year && 'green_candy' !== year && 'purple_candy' !== year) {
|
|
28
|
+
this.candy?.festivals?.push({
|
|
29
|
+
year: Number(data?.candy_collected?.[`spooky_festival_${year}`] || '0'),
|
|
30
|
+
collected: {
|
|
31
|
+
green: data?.candy_collected?.[`spooky_festival_${year}`]?.green_candy || 0,
|
|
32
|
+
purple: data?.candy_collected?.[`spooky_festival_${year}`]?.purple_candy || 0,
|
|
33
|
+
total: data?.candy_collected?.[`spooky_festival_${year}`]?.total || 0
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
this.petMilestones = {
|
|
39
|
+
oresMinned: data?.pets?.milestones?.ores_mined || 0,
|
|
40
|
+
seaCreaturesKilled: data?.pets?.milestones?.sea_creatures_killed || 0
|
|
41
|
+
};
|
|
42
|
+
this.highestCriticalDamage = data?.highest_critical_damage || 0;
|
|
43
|
+
this.highestDamage = data?.highest_damage || 0;
|
|
44
|
+
this.glowingMusroomsBroken = data?.glowing_mushrooms_broken || 0;
|
|
45
|
+
this.kills = {
|
|
46
|
+
total: Object.values(data?.kills || {})?.reduce((acc, curr) => acc + curr, 0),
|
|
47
|
+
...Object.keys(data?.kills || {})
|
|
48
|
+
.filter((key) => 'total' !== key)
|
|
49
|
+
.sort((a, b) => data?.kills[b] - data?.kills[a])
|
|
50
|
+
.map((key) => ({ [key]: data?.kills[key] }))
|
|
51
|
+
.reduce((acc, curr) => ({ ...acc, ...curr }), {})
|
|
52
|
+
};
|
|
53
|
+
this.deaths = {
|
|
54
|
+
total: Object.values(data?.deaths || {})?.reduce((acc, curr) => acc + curr, 0),
|
|
55
|
+
...Object.keys(data?.deaths || {})
|
|
56
|
+
.filter((key) => 'total' !== key)
|
|
57
|
+
.sort((a, b) => data?.deaths[b] - data?.deaths[a])
|
|
58
|
+
.map((key) => ({ [key]: data?.deaths[key] }))
|
|
59
|
+
.reduce((acc, curr) => ({ ...acc, ...curr }), {})
|
|
60
|
+
};
|
|
61
|
+
this.auctions = {
|
|
62
|
+
bids: data?.auctions?.bids || 0,
|
|
63
|
+
highestBid: data?.auctions?.highest_bid || 0,
|
|
64
|
+
goldSpent: data?.auctions?.gold_spent || 0,
|
|
65
|
+
goldEarnt: data?.auctions?.gold_earnt || 0,
|
|
66
|
+
auctionsWon: data?.auctions?.won || 0,
|
|
67
|
+
auctionsCompleted: data?.auctions?.completed || 0,
|
|
68
|
+
auctionsCreated: data?.auctions?.created || 0,
|
|
69
|
+
auctionFees: data?.auctions?.auction_fees || 0,
|
|
70
|
+
auctionsWithOutBids: data?.auctions?.no_bids || 0,
|
|
71
|
+
bought: {
|
|
72
|
+
uncommon: data?.auctions?.total_bought?.uncommon || 0,
|
|
73
|
+
common: data?.auctions?.total_bought?.common || 0,
|
|
74
|
+
rare: data?.auctions?.total_bought?.rare || 0,
|
|
75
|
+
epic: data?.auctions?.total_bought?.epic || 0,
|
|
76
|
+
legendary: data?.auctions?.total_bought?.legendary || 0,
|
|
77
|
+
special: data?.auctions?.total_bought?.special || 0,
|
|
78
|
+
mythic: data?.auctions?.total_bought?.mythic || 0,
|
|
79
|
+
total: data?.auctions?.total_bought?.uncommon ||
|
|
80
|
+
0 + data?.auctions?.total_bought?.common ||
|
|
81
|
+
0 + data?.auctions?.total_bought?.rare ||
|
|
82
|
+
0 + data?.auctions?.total_bought?.epic ||
|
|
83
|
+
0 + data?.auctions?.total_bought?.legendary ||
|
|
84
|
+
0 + data?.auctions?.total_bought?.special ||
|
|
85
|
+
0 + data?.auctions?.total_bought?.mythic ||
|
|
86
|
+
0
|
|
87
|
+
},
|
|
88
|
+
sold: {
|
|
89
|
+
uncommon: data?.auctions?.total_sold?.uncommon || 0,
|
|
90
|
+
common: data?.auctions?.total_sold?.common || 0,
|
|
91
|
+
rare: data?.auctions?.total_sold?.rare || 0,
|
|
92
|
+
epic: data?.auctions?.total_sold?.epic || 0,
|
|
93
|
+
legendary: data?.auctions?.total_sold?.legendary || 0,
|
|
94
|
+
special: data?.auctions?.total_sold?.special || 0,
|
|
95
|
+
mythic: data?.auctions?.total_sold?.mythic || 0,
|
|
96
|
+
total: data?.auctions?.total_sold?.uncommon ||
|
|
97
|
+
0 + data?.auctions?.total_sold?.common ||
|
|
98
|
+
0 + data?.auctions?.total_sold?.rare ||
|
|
99
|
+
0 + data?.auctions?.total_sold?.epic ||
|
|
100
|
+
0 + data?.auctions?.total_sold?.legendary ||
|
|
101
|
+
0 + data?.auctions?.total_sold?.special ||
|
|
102
|
+
0 + data?.auctions?.total_sold?.mythic ||
|
|
103
|
+
0
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
this.gifts = { given: data?.gifts?.total_given || 0, received: data?.gifts?.total_received || 0 };
|
|
107
|
+
this.itemsFished = {
|
|
108
|
+
total: data?.items_fished?.total || 0,
|
|
109
|
+
normal: data?.items_fished?.normal || 0,
|
|
110
|
+
tresure: data?.items_fished?.treasure || 0,
|
|
111
|
+
largeTresure: data?.items_fished?.large_treasure || 0
|
|
112
|
+
};
|
|
113
|
+
this.mythos = {
|
|
114
|
+
kills: data?.mythos?.kills || 0,
|
|
115
|
+
burrowsDugNext: {
|
|
116
|
+
total: data?.mythos?.burrows_dug_next?.total || 0,
|
|
117
|
+
common: data?.mythos?.burrows_dug_next?.common || 0
|
|
118
|
+
},
|
|
119
|
+
burrowsDugCombat: {
|
|
120
|
+
total: data?.mythos?.burrows_dug_combat?.total || 0,
|
|
121
|
+
common: data?.mythos?.burrows_dug_combat?.common || 0
|
|
122
|
+
},
|
|
123
|
+
burrowsDugTreasure: {
|
|
124
|
+
total: data?.mythos?.burrows_dug_treasure?.total || 0,
|
|
125
|
+
common: data?.mythos?.burrows_dug_treasure?.common || 0
|
|
126
|
+
},
|
|
127
|
+
burrowsDugComplate: {
|
|
128
|
+
total: data?.mythos?.burrows_dug_complete?.total || 0,
|
|
129
|
+
common: data?.mythos?.burrows_dug_complete?.common || 0
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
class SkyblockMemberMinion {
|
|
135
|
+
t1;
|
|
136
|
+
t2;
|
|
137
|
+
t3;
|
|
138
|
+
t4;
|
|
139
|
+
t5;
|
|
140
|
+
t6;
|
|
141
|
+
t7;
|
|
142
|
+
t8;
|
|
143
|
+
t9;
|
|
144
|
+
t10;
|
|
145
|
+
t11;
|
|
146
|
+
t12;
|
|
147
|
+
constructor(data) {
|
|
148
|
+
this.t1 = false;
|
|
149
|
+
this.t2 = false;
|
|
150
|
+
this.t3 = false;
|
|
151
|
+
this.t4 = false;
|
|
152
|
+
this.t5 = false;
|
|
153
|
+
this.t6 = false;
|
|
154
|
+
this.t7 = false;
|
|
155
|
+
this.t8 = false;
|
|
156
|
+
this.t9 = false;
|
|
157
|
+
this.t10 = false;
|
|
158
|
+
this.t11 = false;
|
|
159
|
+
this.t12 = false;
|
|
160
|
+
data.forEach((tier) => {
|
|
161
|
+
if (1 <= tier && 12 >= tier) {
|
|
162
|
+
this[`t${tier}`] = true;
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
export class SkyblockMemberMinions {
|
|
168
|
+
constructor(data) {
|
|
169
|
+
const parsed = this.#parse(data);
|
|
170
|
+
Object.keys(parsed).forEach((minion) => {
|
|
171
|
+
this[minion] = new SkyblockMemberMinion(parsed[minion]);
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
#parse(data) {
|
|
175
|
+
return data.reduce((acc, item) => {
|
|
176
|
+
const lastUnderscoreIndex = item.lastIndexOf('_');
|
|
177
|
+
if (-1 === lastUnderscoreIndex)
|
|
178
|
+
return acc;
|
|
179
|
+
const name = item.substring(0, lastUnderscoreIndex);
|
|
180
|
+
const number = item.substring(lastUnderscoreIndex + 1);
|
|
181
|
+
const num = parseInt(number, 10);
|
|
182
|
+
if (isNaN(num))
|
|
183
|
+
return acc;
|
|
184
|
+
if (!acc[name])
|
|
185
|
+
acc[name] = [];
|
|
186
|
+
acc[name].push(num);
|
|
187
|
+
return acc;
|
|
188
|
+
}, {});
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
class SkyblockMember {
|
|
192
|
+
uuid;
|
|
193
|
+
gameMode;
|
|
194
|
+
selected;
|
|
195
|
+
garden;
|
|
196
|
+
museum;
|
|
197
|
+
profileName;
|
|
198
|
+
profileId;
|
|
199
|
+
firstJoinTimestamp;
|
|
200
|
+
firstJoinAt;
|
|
201
|
+
experience;
|
|
202
|
+
level;
|
|
203
|
+
hotm;
|
|
204
|
+
trophyFish;
|
|
205
|
+
highestMagicalPower;
|
|
206
|
+
fairySouls;
|
|
207
|
+
fairyExchanges;
|
|
208
|
+
skills;
|
|
209
|
+
bestiary;
|
|
210
|
+
slayer;
|
|
211
|
+
dungeons;
|
|
212
|
+
collections;
|
|
213
|
+
purse;
|
|
214
|
+
stats;
|
|
215
|
+
pets;
|
|
216
|
+
jacob;
|
|
217
|
+
chocolate;
|
|
218
|
+
minions;
|
|
219
|
+
getArmor;
|
|
220
|
+
getWardrobe;
|
|
221
|
+
getEnderChest;
|
|
222
|
+
getInventory;
|
|
223
|
+
getPetScore;
|
|
224
|
+
getEquipment;
|
|
225
|
+
getPersonalVault;
|
|
226
|
+
getNetworth;
|
|
227
|
+
getFarmingWeight;
|
|
228
|
+
constructor(data) {
|
|
229
|
+
this.uuid = data?.uuid || '';
|
|
230
|
+
this.gameMode = data?.gameMode || null;
|
|
231
|
+
this.selected = data?.selected || false;
|
|
232
|
+
this.garden = data?.garden || null;
|
|
233
|
+
this.museum = data?.museum || null;
|
|
234
|
+
this.profileName = data?.profileName || '';
|
|
235
|
+
this.profileId = data?.profileId || '';
|
|
236
|
+
this.firstJoinTimestamp = data?.m?.profile?.first_join || null;
|
|
237
|
+
this.firstJoinAt = this.firstJoinTimestamp ? new Date(this.firstJoinTimestamp) : null;
|
|
238
|
+
this.experience = data?.m?.leveling?.experience || 0;
|
|
239
|
+
this.level = this.experience / 100;
|
|
240
|
+
this.hotm = getLevelByXp(data?.m?.mining_core?.experience, 'hotm');
|
|
241
|
+
this.trophyFish = getTrophyFishRank(data?.m?.trophy_fish?.rewards?.length || 0);
|
|
242
|
+
this.highestMagicalPower = data?.m?.accessory_bag_storage?.highest_magical_power || 0;
|
|
243
|
+
this.fairySouls = data?.m?.fairy_soul?.total_collected || 0;
|
|
244
|
+
this.fairyExchanges = data?.m?.fairy_soul?.fairy_exchanges || 0;
|
|
245
|
+
this.skills = getSkills(data?.m);
|
|
246
|
+
this.bestiary = getBestiaryLevel(data?.m);
|
|
247
|
+
this.slayer = getSlayer(data?.m);
|
|
248
|
+
this.dungeons = getDungeons(data?.m);
|
|
249
|
+
this.collections = data?.m?.collection || {};
|
|
250
|
+
this.purse = data?.m?.currencies?.coin_purse ?? 0;
|
|
251
|
+
this.stats = new MemberStats(data?.m?.player_stats);
|
|
252
|
+
this.pets = data?.m?.pets_data?.pets ? data?.m?.pets_data?.pets?.map((pet) => new SkyblockPet(pet)) : [];
|
|
253
|
+
this.jacob = getJacobData(data?.m);
|
|
254
|
+
this.chocolate = getChocolateFactory(data?.m);
|
|
255
|
+
this.minions = new SkyblockMemberMinions(data?.m?.player_data?.crafted_generators || []);
|
|
256
|
+
this.getArmor = async () => {
|
|
257
|
+
const base64 = data?.m?.inventory?.inv_armor;
|
|
258
|
+
const decoded = await decode(base64?.data);
|
|
259
|
+
const armor = {
|
|
260
|
+
helmet: decoded[3]?.id ? new SkyblockInventoryItem(decoded[3]) : null,
|
|
261
|
+
chestplate: decoded[2]?.id ? new SkyblockInventoryItem(decoded[2]) : null,
|
|
262
|
+
leggings: decoded[1]?.id ? new SkyblockInventoryItem(decoded[1]) : null,
|
|
263
|
+
boots: decoded[0]?.id ? new SkyblockInventoryItem(decoded[0]) : null
|
|
264
|
+
};
|
|
265
|
+
return armor;
|
|
266
|
+
};
|
|
267
|
+
this.getWardrobe = async () => {
|
|
268
|
+
const base64 = data?.m?.inventory?.wardrobe_contents?.data;
|
|
269
|
+
if (!base64)
|
|
270
|
+
return [];
|
|
271
|
+
const decoded = await decode(base64);
|
|
272
|
+
const armor = decoded
|
|
273
|
+
.filter((item) => 0 !== Object.keys(item).length)
|
|
274
|
+
.map((item) => new SkyblockInventoryItem(item));
|
|
275
|
+
return armor;
|
|
276
|
+
};
|
|
277
|
+
this.getEnderChest = async () => {
|
|
278
|
+
let chest = data?.m?.inventory?.ender_chest_contents;
|
|
279
|
+
if (!chest)
|
|
280
|
+
return [];
|
|
281
|
+
try {
|
|
282
|
+
chest = await decode(chest?.data);
|
|
283
|
+
const edited = [];
|
|
284
|
+
for (let i = 0; i < chest.length; i++) {
|
|
285
|
+
if (!chest[i]?.id)
|
|
286
|
+
continue;
|
|
287
|
+
edited.push(new SkyblockInventoryItem(chest[i]));
|
|
288
|
+
}
|
|
289
|
+
return edited;
|
|
290
|
+
}
|
|
291
|
+
catch {
|
|
292
|
+
return [];
|
|
293
|
+
}
|
|
294
|
+
};
|
|
295
|
+
this.getInventory = async () => {
|
|
296
|
+
let inventory = data?.m?.inventory?.inv_contents;
|
|
297
|
+
if (!inventory)
|
|
298
|
+
return [];
|
|
299
|
+
try {
|
|
300
|
+
inventory = await decode(inventory?.data);
|
|
301
|
+
const edited = [];
|
|
302
|
+
for (let i = 0; i < inventory.length; i++) {
|
|
303
|
+
if (!inventory[i]?.id)
|
|
304
|
+
continue;
|
|
305
|
+
edited.push(new SkyblockInventoryItem(inventory[i]));
|
|
306
|
+
}
|
|
307
|
+
return edited;
|
|
308
|
+
}
|
|
309
|
+
catch {
|
|
310
|
+
return [];
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
this.getPetScore = () => {
|
|
314
|
+
const highestRarity = {};
|
|
315
|
+
for (const pet of data?.m?.pets_data?.pets) {
|
|
316
|
+
if (!(pet?.type in highestRarity) ||
|
|
317
|
+
Constants.petScore[pet?.tier] > highestRarity[pet?.type]) {
|
|
318
|
+
highestRarity[pet?.type] = Constants.petScore[pet?.tier];
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
const highestLevel = {};
|
|
322
|
+
for (const pet of data?.m?.pets_data?.pets) {
|
|
323
|
+
const maxLevel = 'GOLDEN_DRAGON' === pet?.type ? 200 : 100;
|
|
324
|
+
const petLevel = getPetLevel(pet?.exp, pet?.tier, maxLevel);
|
|
325
|
+
if (!(pet?.type in highestLevel) || petLevel?.level > highestLevel[pet?.type]) {
|
|
326
|
+
if (petLevel?.level < maxLevel) {
|
|
327
|
+
continue;
|
|
328
|
+
}
|
|
329
|
+
highestLevel[pet?.type] = 1;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
return (Object.values(highestRarity).reduce((a, b) => a + b, 0) + Object.values(highestLevel).reduce((a, b) => a + b, 0));
|
|
333
|
+
};
|
|
334
|
+
this.getEquipment = async () => {
|
|
335
|
+
let equipment = data?.m?.inventory?.equipment_contents;
|
|
336
|
+
if (!equipment) {
|
|
337
|
+
return { gauntlet: null, belt: null, cloak: null, necklace: null };
|
|
338
|
+
}
|
|
339
|
+
try {
|
|
340
|
+
equipment = await decode(equipment?.data);
|
|
341
|
+
const playerEquipment = {
|
|
342
|
+
gauntlet: equipment?.[3]?.id ? new SkyblockInventoryItem(equipment[3]) : null,
|
|
343
|
+
belt: equipment?.[2]?.id ? new SkyblockInventoryItem(equipment[2]) : null,
|
|
344
|
+
cloak: equipment?.[1]?.id ? new SkyblockInventoryItem(equipment[1]) : null,
|
|
345
|
+
necklace: equipment?.[0]?.id ? new SkyblockInventoryItem(equipment[0]) : null
|
|
346
|
+
};
|
|
347
|
+
return playerEquipment;
|
|
348
|
+
}
|
|
349
|
+
catch {
|
|
350
|
+
return { gauntlet: null, belt: null, cloak: null, necklace: null };
|
|
351
|
+
}
|
|
352
|
+
};
|
|
353
|
+
this.getPersonalVault = async () => {
|
|
354
|
+
let vault = data?.m?.inventory?.personal_vault_contents;
|
|
355
|
+
if (!vault)
|
|
356
|
+
return [];
|
|
357
|
+
try {
|
|
358
|
+
vault = await decode(vault?.data);
|
|
359
|
+
const edited = [];
|
|
360
|
+
for (let i = 0; i < vault?.length; i++) {
|
|
361
|
+
if (!vault[i]?.id)
|
|
362
|
+
continue;
|
|
363
|
+
edited.push(new SkyblockInventoryItem(vault[i]));
|
|
364
|
+
}
|
|
365
|
+
return edited;
|
|
366
|
+
}
|
|
367
|
+
catch {
|
|
368
|
+
return [];
|
|
369
|
+
}
|
|
370
|
+
};
|
|
371
|
+
this.getNetworth = async () => {
|
|
372
|
+
try {
|
|
373
|
+
const nw = await getNetworth(data?.m, data?.banking?.balance ?? 0, {
|
|
374
|
+
onlyNetworth: true,
|
|
375
|
+
v2Endpoint: true,
|
|
376
|
+
cache: true,
|
|
377
|
+
museumData: data?.museum?.raw ?? {}
|
|
378
|
+
});
|
|
379
|
+
return nw;
|
|
380
|
+
}
|
|
381
|
+
catch {
|
|
382
|
+
return null;
|
|
383
|
+
}
|
|
384
|
+
};
|
|
385
|
+
this.getFarmingWeight = () => {
|
|
386
|
+
try {
|
|
387
|
+
return createFarmingWeightCalculator({
|
|
388
|
+
collection: this.collections,
|
|
389
|
+
farmingXp: this.skills.farming.xp,
|
|
390
|
+
levelCapUpgrade: this.jacob.perks.farmingLevelCap,
|
|
391
|
+
anitaBonusFarmingFortuneLevel: this.jacob.perks.doubleDrops,
|
|
392
|
+
minions: data?.m?.player_data?.crafted_generators,
|
|
393
|
+
contests: Object.values(this.jacob.contests),
|
|
394
|
+
pests: data?.m?.bestiary?.kills
|
|
395
|
+
}).getWeightInfo().totalWeight;
|
|
396
|
+
}
|
|
397
|
+
catch {
|
|
398
|
+
return 0;
|
|
399
|
+
}
|
|
400
|
+
};
|
|
401
|
+
}
|
|
402
|
+
toString() {
|
|
403
|
+
return this.uuid;
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
export default SkyblockMember;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import SkyblockMember from './SkyblockMember';
|
|
2
|
+
import { expect, expectTypeOf, test } from 'vitest';
|
|
3
|
+
test('SkyblockMember', () => {
|
|
4
|
+
const data = new SkyblockMember({ stats: 'meow' });
|
|
5
|
+
expect(data).toBeDefined();
|
|
6
|
+
expect(data).toBeInstanceOf(SkyblockMember);
|
|
7
|
+
expectTypeOf(data).toEqualTypeOf();
|
|
8
|
+
expect(data.uuid).toBeDefined();
|
|
9
|
+
expectTypeOf(data.uuid).toEqualTypeOf();
|
|
10
|
+
expect(data.gameMode).toBeDefined();
|
|
11
|
+
expectTypeOf(data.gameMode).toEqualTypeOf();
|
|
12
|
+
expect(data.selected).toBeDefined();
|
|
13
|
+
expectTypeOf(data.selected).toEqualTypeOf();
|
|
14
|
+
expect(data.garden).toBeDefined();
|
|
15
|
+
expect(data.garden).toBeNull();
|
|
16
|
+
expectTypeOf(data.garden).toEqualTypeOf();
|
|
17
|
+
expect(data.museum).toBeDefined();
|
|
18
|
+
expectTypeOf(data.museum).toEqualTypeOf();
|
|
19
|
+
expect(data.profileName).toBeDefined();
|
|
20
|
+
expectTypeOf(data.profileName).toEqualTypeOf();
|
|
21
|
+
expect(data.profileId).toBeDefined();
|
|
22
|
+
expectTypeOf(data.profileId).toEqualTypeOf();
|
|
23
|
+
expect(data.firstJoinTimestamp).toBeDefined();
|
|
24
|
+
expectTypeOf(data.firstJoinTimestamp).toEqualTypeOf();
|
|
25
|
+
expect(data.firstJoinAt).toBeDefined();
|
|
26
|
+
expectTypeOf(data.firstJoinAt).toEqualTypeOf();
|
|
27
|
+
expect(data.experience).toBeDefined();
|
|
28
|
+
expect(data.experience).toBeGreaterThanOrEqual(0);
|
|
29
|
+
expectTypeOf(data.experience).toEqualTypeOf();
|
|
30
|
+
expect(data.level).toBeDefined();
|
|
31
|
+
expect(data.level).toBeGreaterThanOrEqual(0);
|
|
32
|
+
expectTypeOf(data.level).toEqualTypeOf();
|
|
33
|
+
expect(data.hotm).toBeDefined();
|
|
34
|
+
expectTypeOf(data.hotm).toEqualTypeOf();
|
|
35
|
+
expect(data.trophyFish).toBeDefined();
|
|
36
|
+
expectTypeOf(data.trophyFish).toEqualTypeOf();
|
|
37
|
+
expect(data.highestMagicalPower).toBeDefined();
|
|
38
|
+
expect(data.highestMagicalPower).toBeGreaterThanOrEqual(0);
|
|
39
|
+
expectTypeOf(data.highestMagicalPower).toEqualTypeOf();
|
|
40
|
+
expect(data.fairySouls).toBeDefined();
|
|
41
|
+
expect(data.fairySouls).toBeGreaterThanOrEqual(0);
|
|
42
|
+
expectTypeOf(data.fairySouls).toEqualTypeOf();
|
|
43
|
+
expect(data.fairyExchanges).toBeDefined();
|
|
44
|
+
expect(data.fairyExchanges).toBeGreaterThanOrEqual(0);
|
|
45
|
+
expectTypeOf(data.fairyExchanges).toEqualTypeOf();
|
|
46
|
+
expect(data.skills).toBeDefined();
|
|
47
|
+
expectTypeOf(data.skills).toEqualTypeOf();
|
|
48
|
+
expect(data.bestiary).toBeDefined();
|
|
49
|
+
expect(data.bestiary).toBeGreaterThanOrEqual(0);
|
|
50
|
+
expectTypeOf(data.bestiary).toEqualTypeOf();
|
|
51
|
+
expect(data.slayer).toBeDefined();
|
|
52
|
+
expectTypeOf(data.slayer).toEqualTypeOf();
|
|
53
|
+
expect(data.dungeons).toBeDefined();
|
|
54
|
+
expectTypeOf(data.dungeons).toEqualTypeOf();
|
|
55
|
+
expect(data.collections).toBeDefined();
|
|
56
|
+
expectTypeOf(data.collections).toEqualTypeOf();
|
|
57
|
+
expect(data.purse).toBeDefined();
|
|
58
|
+
expect(data.purse).toBeGreaterThanOrEqual(0);
|
|
59
|
+
expectTypeOf(data.purse).toEqualTypeOf();
|
|
60
|
+
expect(data.stats).toBeDefined();
|
|
61
|
+
expectTypeOf(data.stats).toEqualTypeOf();
|
|
62
|
+
expect(data.pets).toBeDefined();
|
|
63
|
+
expectTypeOf(data.pets).toEqualTypeOf();
|
|
64
|
+
expect(data.jacob).toBeDefined();
|
|
65
|
+
expectTypeOf(data.jacob).toEqualTypeOf();
|
|
66
|
+
expect(data.chocolate).toBeDefined();
|
|
67
|
+
expectTypeOf(data.chocolate).toEqualTypeOf();
|
|
68
|
+
expect(data.toString()).toBeDefined();
|
|
69
|
+
expect(data.toString()).toBe(data.uuid);
|
|
70
|
+
expectTypeOf(data.toString()).toEqualTypeOf();
|
|
71
|
+
});
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import SkyblockMuseumItem from './SkyblockMuseumItem';
|
|
2
|
+
import { decode } from '../../utils/SkyblockUtils';
|
|
3
|
+
class SkyblockMuseum {
|
|
4
|
+
raw;
|
|
5
|
+
value;
|
|
6
|
+
appraisal;
|
|
7
|
+
getItems;
|
|
8
|
+
getSpecial;
|
|
9
|
+
constructor(data) {
|
|
10
|
+
this.raw = data.m.members?.[data.uuid] ?? {};
|
|
11
|
+
this.value = data.value;
|
|
12
|
+
this.appraisal = data.appraisal;
|
|
13
|
+
this.getItems = async () => {
|
|
14
|
+
const items = [];
|
|
15
|
+
for (const item of Object.keys(data?.m?.members[data?.uuid]?.items) || {}) {
|
|
16
|
+
items.push(new SkyblockMuseumItem(item, data?.m?.members[data?.uuid]?.items[item], await decode(data?.m?.members[data?.uuid]?.items[item]?.items?.data)));
|
|
17
|
+
}
|
|
18
|
+
return items;
|
|
19
|
+
};
|
|
20
|
+
this.getSpecial = async () => {
|
|
21
|
+
const items = [];
|
|
22
|
+
for (const item of Object.keys(data?.m?.members[data?.uuid]?.special || {})) {
|
|
23
|
+
items.push(new SkyblockMuseumItem(item, data?.m?.members[data?.uuid]?.special[item], await decode(data?.m?.members[data?.uuid]?.special[item]?.items?.data)));
|
|
24
|
+
}
|
|
25
|
+
return items;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export default SkyblockMuseum;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import SkyblockInventoryItem from './SkyblockInventoryItem';
|
|
2
|
+
class SkyblockMuseumItem {
|
|
3
|
+
name;
|
|
4
|
+
donated;
|
|
5
|
+
items;
|
|
6
|
+
borrowing;
|
|
7
|
+
featuredSlot;
|
|
8
|
+
constructor(name, data, decoded) {
|
|
9
|
+
this.name = name;
|
|
10
|
+
this.donated = data.donated_time || 0;
|
|
11
|
+
this.featuredSlot = data.featured_slot || null;
|
|
12
|
+
this.borrowing = data.borrowing || false;
|
|
13
|
+
this.items = [];
|
|
14
|
+
decoded.forEach((item) => {
|
|
15
|
+
if (!item.tag)
|
|
16
|
+
return;
|
|
17
|
+
this.items.push(new SkyblockInventoryItem(item));
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
toString() {
|
|
21
|
+
return this.name;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export default SkyblockMuseumItem;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import Constants from '../../utils/Constants';
|
|
2
|
+
class SkyblockPet {
|
|
3
|
+
uuid;
|
|
4
|
+
name;
|
|
5
|
+
xp;
|
|
6
|
+
active;
|
|
7
|
+
rarity;
|
|
8
|
+
petScore;
|
|
9
|
+
heldItem;
|
|
10
|
+
candyUsed;
|
|
11
|
+
skin;
|
|
12
|
+
constructor(data) {
|
|
13
|
+
this.uuid = data.uuid;
|
|
14
|
+
this.name = data.type;
|
|
15
|
+
this.xp = data.exp || 0;
|
|
16
|
+
this.active = Boolean(data.active);
|
|
17
|
+
this.rarity = data.tier;
|
|
18
|
+
this.petScore = Constants.petScore[this.rarity] || 0;
|
|
19
|
+
this.heldItem = data.heldItem ? data.heldItem.replace(/^PET_ITEM_/, '') : null;
|
|
20
|
+
this.candyUsed = data.candyUsed || 0;
|
|
21
|
+
this.skin = data.skin;
|
|
22
|
+
}
|
|
23
|
+
toString() {
|
|
24
|
+
return this.name;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export default SkyblockPet;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import SkyblockMember from './SkyblockMember';
|
|
2
|
+
class SkyblockProfile {
|
|
3
|
+
profileId;
|
|
4
|
+
profileName;
|
|
5
|
+
gameMode;
|
|
6
|
+
banking;
|
|
7
|
+
communityUpgrades;
|
|
8
|
+
selected;
|
|
9
|
+
members;
|
|
10
|
+
me;
|
|
11
|
+
constructor(data) {
|
|
12
|
+
this.profileId = data.profileId;
|
|
13
|
+
this.profileName = data.profileName;
|
|
14
|
+
this.gameMode = data.gameMode;
|
|
15
|
+
this.banking = data.banking;
|
|
16
|
+
this.communityUpgrades = data.communityUpgrades;
|
|
17
|
+
this.selected = data.selected;
|
|
18
|
+
this.members = Object.keys(data.members).map((uuid) => new SkyblockMember({
|
|
19
|
+
uuid: uuid,
|
|
20
|
+
profileId: this.profileId,
|
|
21
|
+
garden: data.garden,
|
|
22
|
+
museum: data.museum,
|
|
23
|
+
profileName: this.profileName,
|
|
24
|
+
gameMode: this.gameMode,
|
|
25
|
+
m: data.members[uuid],
|
|
26
|
+
banking: this.banking,
|
|
27
|
+
communityUpgrades: this.communityUpgrades,
|
|
28
|
+
selected: this.selected
|
|
29
|
+
}));
|
|
30
|
+
this.me = this.members.find((x) => x.uuid === data.uuid);
|
|
31
|
+
}
|
|
32
|
+
toString() {
|
|
33
|
+
return this.profileName;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export default SkyblockProfile;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
function parsePosition(position) {
|
|
2
|
+
const x = (position % 5) + 1;
|
|
3
|
+
const y = Math.floor(position / 5) + 1;
|
|
4
|
+
return [x, y];
|
|
5
|
+
}
|
|
6
|
+
class Bingo {
|
|
7
|
+
name;
|
|
8
|
+
id;
|
|
9
|
+
row;
|
|
10
|
+
column;
|
|
11
|
+
rawLore;
|
|
12
|
+
lore;
|
|
13
|
+
tiers;
|
|
14
|
+
tierStep;
|
|
15
|
+
requiredAmount;
|
|
16
|
+
type;
|
|
17
|
+
constructor(data, position = 0) {
|
|
18
|
+
this.name = data.name;
|
|
19
|
+
this.id = data.id;
|
|
20
|
+
const [row, column] = parsePosition(position);
|
|
21
|
+
this.row = row;
|
|
22
|
+
this.column = column;
|
|
23
|
+
this.rawLore = data.lore;
|
|
24
|
+
this.lore = data.lore?.replace?.(/§([1-9]|[a-l])|§/gm, '') || [];
|
|
25
|
+
this.tiers = Array.isArray(data.tiers) ? data.tiers.map((x) => parseInt(x, 10) || 0) : [];
|
|
26
|
+
this.tierStep = this.getTierStep();
|
|
27
|
+
this.requiredAmount = parseInt(data.requiredAmount, 10) ?? null;
|
|
28
|
+
this.type = this.tiers ? 'TIERED' : this.requiredAmount ? 'ONE_TIER' : 'ONE_TIME';
|
|
29
|
+
}
|
|
30
|
+
toString() {
|
|
31
|
+
return this.id;
|
|
32
|
+
}
|
|
33
|
+
getTierStep() {
|
|
34
|
+
if ('TIERED' !== this.type)
|
|
35
|
+
return null;
|
|
36
|
+
// No step possible
|
|
37
|
+
if (2 > this.tiers.length)
|
|
38
|
+
return null;
|
|
39
|
+
const hypotheticStep = this.tiers[1] - this.tiers[0];
|
|
40
|
+
// Check if every 2 elements have the same step
|
|
41
|
+
const isConstant = this.tiers.slice(1).every((el, index) => {
|
|
42
|
+
return hypotheticStep === this.tiers[index - 1] - el;
|
|
43
|
+
});
|
|
44
|
+
if (!isConstant)
|
|
45
|
+
return null;
|
|
46
|
+
return hypotheticStep;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export default Bingo;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import Bingo from './Bingo';
|
|
2
|
+
class BingoData {
|
|
3
|
+
lastUpdatedTimestamp;
|
|
4
|
+
lastUpdatedAt;
|
|
5
|
+
id;
|
|
6
|
+
goals;
|
|
7
|
+
constructor(data) {
|
|
8
|
+
this.lastUpdatedTimestamp = parseInt(data.lastUpdated, 10);
|
|
9
|
+
this.lastUpdatedAt = new Date(this.lastUpdatedTimestamp);
|
|
10
|
+
this.id = parseInt(data.id, 10) || null;
|
|
11
|
+
this.goals = Array.isArray(data.goals) ? data.goals.map((goal, index) => new Bingo(goal, index)) : null;
|
|
12
|
+
}
|
|
13
|
+
getGoal(column, row) {
|
|
14
|
+
if (!this.goals || 1 > this.goals.length)
|
|
15
|
+
return;
|
|
16
|
+
return this.goals.find((goal) => goal.row === row && goal.column === column);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export default BingoData;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import Perk from './Perk';
|
|
2
|
+
class Candidate {
|
|
3
|
+
name;
|
|
4
|
+
keyBenefit;
|
|
5
|
+
perks;
|
|
6
|
+
isMayor;
|
|
7
|
+
votesReceived;
|
|
8
|
+
constructor(data, isMayor = false) {
|
|
9
|
+
this.name = data.name;
|
|
10
|
+
this.keyBenefit = data.key;
|
|
11
|
+
this.perks = data.perks.map((x) => new Perk(x));
|
|
12
|
+
this.isMayor = isMayor || false;
|
|
13
|
+
this.votesReceived = parseInt(data.votes, 10);
|
|
14
|
+
}
|
|
15
|
+
toString() {
|
|
16
|
+
return this.name;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export default Candidate;
|