@fnlb-project/fnbr 4.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/LICENSE +21 -0
- package/README.md +68 -0
- package/dist/enums/Enums.d.ts +251 -0
- package/dist/enums/Enums.js +202 -0
- package/dist/enums/Enums.js.map +1 -0
- package/dist/index.d.ts +92 -0
- package/dist/index.js +194 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/AuthClients.d.ts +39 -0
- package/dist/resources/AuthClients.js +41 -0
- package/dist/resources/AuthClients.js.map +1 -0
- package/dist/resources/BaseItemRating.json +5203 -0
- package/dist/resources/Endpoints.d.ts +58 -0
- package/dist/resources/Endpoints.js +71 -0
- package/dist/resources/Endpoints.js.map +1 -0
- package/dist/resources/HomebaseRatingMapping.json +255 -0
- package/dist/resources/PowerLevelCurves.d.ts +111 -0
- package/dist/resources/PowerLevelCurves.js +21 -0
- package/dist/resources/PowerLevelCurves.js.map +1 -0
- package/dist/resources/SurvivorItemRating.json +9343 -0
- package/dist/resources/constants.d.ts +2 -0
- package/dist/resources/constants.js +11 -0
- package/dist/resources/constants.js.map +1 -0
- package/dist/resources/defaultPartyMemberMeta.json +28 -0
- package/dist/resources/defaultPartyMeta.json +38 -0
- package/dist/resources/enums.d.ts +12 -0
- package/dist/resources/enums.js +18 -0
- package/dist/resources/enums.js.map +1 -0
- package/dist/resources/httpResponses.d.ts +773 -0
- package/dist/resources/httpResponses.js +3 -0
- package/dist/resources/httpResponses.js.map +1 -0
- package/dist/resources/structs.d.ts +1310 -0
- package/dist/resources/structs.js +3 -0
- package/dist/resources/structs.js.map +1 -0
- package/dist/src/Base.d.ts +15 -0
- package/dist/src/Base.js +15 -0
- package/dist/src/Base.js.map +1 -0
- package/dist/src/Client.d.ts +341 -0
- package/dist/src/Client.js +1043 -0
- package/dist/src/Client.js.map +1 -0
- package/dist/src/auth/Auth.d.ts +66 -0
- package/dist/src/auth/Auth.js +249 -0
- package/dist/src/auth/Auth.js.map +1 -0
- package/dist/src/auth/AuthSession.d.ts +41 -0
- package/dist/src/auth/AuthSession.js +25 -0
- package/dist/src/auth/AuthSession.js.map +1 -0
- package/dist/src/auth/EOSAuthSession.d.ts +19 -0
- package/dist/src/auth/EOSAuthSession.js +80 -0
- package/dist/src/auth/EOSAuthSession.js.map +1 -0
- package/dist/src/auth/FortniteAuthSession.d.ts +53 -0
- package/dist/src/auth/FortniteAuthSession.js +107 -0
- package/dist/src/auth/FortniteAuthSession.js.map +1 -0
- package/dist/src/auth/FortniteClientCredentialsAuthSession.d.ts +18 -0
- package/dist/src/auth/FortniteClientCredentialsAuthSession.js +88 -0
- package/dist/src/auth/FortniteClientCredentialsAuthSession.js.map +1 -0
- package/dist/src/auth/LauncherAuthSession.d.ts +23 -0
- package/dist/src/auth/LauncherAuthSession.js +120 -0
- package/dist/src/auth/LauncherAuthSession.js.map +1 -0
- package/dist/src/exceptions/AuthenticationMissingError.d.ts +15 -0
- package/dist/src/exceptions/AuthenticationMissingError.js +18 -0
- package/dist/src/exceptions/AuthenticationMissingError.js.map +1 -0
- package/dist/src/exceptions/CreativeIslandNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/CreativeIslandNotFoundError.js +18 -0
- package/dist/src/exceptions/CreativeIslandNotFoundError.js.map +1 -0
- package/dist/src/exceptions/CreatorCodeNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/CreatorCodeNotFoundError.js +18 -0
- package/dist/src/exceptions/CreatorCodeNotFoundError.js.map +1 -0
- package/dist/src/exceptions/DuplicateFriendshipError.d.ts +14 -0
- package/dist/src/exceptions/DuplicateFriendshipError.js +18 -0
- package/dist/src/exceptions/DuplicateFriendshipError.js.map +1 -0
- package/dist/src/exceptions/EpicgamesAPIError.d.ts +42 -0
- package/dist/src/exceptions/EpicgamesAPIError.js +27 -0
- package/dist/src/exceptions/EpicgamesAPIError.js.map +1 -0
- package/dist/src/exceptions/EventTimeoutError.d.ts +19 -0
- package/dist/src/exceptions/EventTimeoutError.js +20 -0
- package/dist/src/exceptions/EventTimeoutError.js.map +1 -0
- package/dist/src/exceptions/FriendNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/FriendNotFoundError.js +18 -0
- package/dist/src/exceptions/FriendNotFoundError.js.map +1 -0
- package/dist/src/exceptions/FriendshipRequestAlreadySentError.d.ts +14 -0
- package/dist/src/exceptions/FriendshipRequestAlreadySentError.js +18 -0
- package/dist/src/exceptions/FriendshipRequestAlreadySentError.js.map +1 -0
- package/dist/src/exceptions/InviteeFriendshipRequestLimitExceededError.d.ts +14 -0
- package/dist/src/exceptions/InviteeFriendshipRequestLimitExceededError.js +18 -0
- package/dist/src/exceptions/InviteeFriendshipRequestLimitExceededError.js.map +1 -0
- package/dist/src/exceptions/InviteeFriendshipSettingsError.d.ts +14 -0
- package/dist/src/exceptions/InviteeFriendshipSettingsError.js +18 -0
- package/dist/src/exceptions/InviteeFriendshipSettingsError.js.map +1 -0
- package/dist/src/exceptions/InviteeFriendshipsLimitExceededError.d.ts +14 -0
- package/dist/src/exceptions/InviteeFriendshipsLimitExceededError.js +18 -0
- package/dist/src/exceptions/InviteeFriendshipsLimitExceededError.js.map +1 -0
- package/dist/src/exceptions/InviterFriendshipsLimitExceededError.d.ts +14 -0
- package/dist/src/exceptions/InviterFriendshipsLimitExceededError.js +18 -0
- package/dist/src/exceptions/InviterFriendshipsLimitExceededError.js.map +1 -0
- package/dist/src/exceptions/MatchNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/MatchNotFoundError.js +18 -0
- package/dist/src/exceptions/MatchNotFoundError.js.map +1 -0
- package/dist/src/exceptions/OfferNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/OfferNotFoundError.js +18 -0
- package/dist/src/exceptions/OfferNotFoundError.js.map +1 -0
- package/dist/src/exceptions/PartyAlreadyJoinedError.d.ts +7 -0
- package/dist/src/exceptions/PartyAlreadyJoinedError.js +14 -0
- package/dist/src/exceptions/PartyAlreadyJoinedError.js.map +1 -0
- package/dist/src/exceptions/PartyInvitationExpiredError.d.ts +7 -0
- package/dist/src/exceptions/PartyInvitationExpiredError.js +14 -0
- package/dist/src/exceptions/PartyInvitationExpiredError.js.map +1 -0
- package/dist/src/exceptions/PartyMaxSizeReachedError.d.ts +7 -0
- package/dist/src/exceptions/PartyMaxSizeReachedError.js +14 -0
- package/dist/src/exceptions/PartyMaxSizeReachedError.js.map +1 -0
- package/dist/src/exceptions/PartyMemberNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/PartyMemberNotFoundError.js +18 -0
- package/dist/src/exceptions/PartyMemberNotFoundError.js.map +1 -0
- package/dist/src/exceptions/PartyNotFoundError.d.ts +7 -0
- package/dist/src/exceptions/PartyNotFoundError.js +14 -0
- package/dist/src/exceptions/PartyNotFoundError.js.map +1 -0
- package/dist/src/exceptions/PartyPermissionError.d.ts +7 -0
- package/dist/src/exceptions/PartyPermissionError.js +14 -0
- package/dist/src/exceptions/PartyPermissionError.js.map +1 -0
- package/dist/src/exceptions/SendMessageError.d.ts +27 -0
- package/dist/src/exceptions/SendMessageError.js +21 -0
- package/dist/src/exceptions/SendMessageError.js.map +1 -0
- package/dist/src/exceptions/StatsPrivacyError.d.ts +14 -0
- package/dist/src/exceptions/StatsPrivacyError.js +18 -0
- package/dist/src/exceptions/StatsPrivacyError.js.map +1 -0
- package/dist/src/exceptions/StompConnectionError.d.ts +14 -0
- package/dist/src/exceptions/StompConnectionError.js +18 -0
- package/dist/src/exceptions/StompConnectionError.js.map +1 -0
- package/dist/src/exceptions/UserNotFoundError.d.ts +14 -0
- package/dist/src/exceptions/UserNotFoundError.js +18 -0
- package/dist/src/exceptions/UserNotFoundError.js.map +1 -0
- package/dist/src/exceptions/XMPPConnectionError.d.ts +19 -0
- package/dist/src/exceptions/XMPPConnectionError.js +19 -0
- package/dist/src/exceptions/XMPPConnectionError.js.map +1 -0
- package/dist/src/exceptions/XMPPConnectionTimeoutError.d.ts +14 -0
- package/dist/src/exceptions/XMPPConnectionTimeoutError.js +18 -0
- package/dist/src/exceptions/XMPPConnectionTimeoutError.js.map +1 -0
- package/dist/src/http/HTTP.d.ts +40 -0
- package/dist/src/http/HTTP.js +124 -0
- package/dist/src/http/HTTP.js.map +1 -0
- package/dist/src/managers/ChatManager.d.ts +27 -0
- package/dist/src/managers/ChatManager.js +71 -0
- package/dist/src/managers/ChatManager.js.map +1 -0
- package/dist/src/managers/FriendManager.d.ts +66 -0
- package/dist/src/managers/FriendManager.js +175 -0
- package/dist/src/managers/FriendManager.js.map +1 -0
- package/dist/src/managers/STWManager.d.ts +29 -0
- package/dist/src/managers/STWManager.js +80 -0
- package/dist/src/managers/STWManager.js.map +1 -0
- package/dist/src/managers/TournamentManager.d.ts +51 -0
- package/dist/src/managers/TournamentManager.js +182 -0
- package/dist/src/managers/TournamentManager.js.map +1 -0
- package/dist/src/managers/UserManager.d.ts +78 -0
- package/dist/src/managers/UserManager.js +216 -0
- package/dist/src/managers/UserManager.js.map +1 -0
- package/dist/src/stomp/EOSConnect.d.ts +43 -0
- package/dist/src/stomp/EOSConnect.js +175 -0
- package/dist/src/stomp/EOSConnect.js.map +1 -0
- package/dist/src/structures/Avatar.d.ts +27 -0
- package/dist/src/structures/Avatar.js +22 -0
- package/dist/src/structures/Avatar.js.map +1 -0
- package/dist/src/structures/BaseMessage.d.ts +34 -0
- package/dist/src/structures/BaseMessage.js +22 -0
- package/dist/src/structures/BaseMessage.js.map +1 -0
- package/dist/src/structures/CreatorCode.d.ts +31 -0
- package/dist/src/structures/CreatorCode.js +22 -0
- package/dist/src/structures/CreatorCode.js.map +1 -0
- package/dist/src/structures/EpicgamesServerStatus.d.ts +52 -0
- package/dist/src/structures/EpicgamesServerStatus.js +31 -0
- package/dist/src/structures/EpicgamesServerStatus.js.map +1 -0
- package/dist/src/structures/EpicgamesServerStatusComponent.d.ts +67 -0
- package/dist/src/structures/EpicgamesServerStatusComponent.js +37 -0
- package/dist/src/structures/EpicgamesServerStatusComponent.js.map +1 -0
- package/dist/src/structures/EpicgamesServerStatusIncident.d.ts +58 -0
- package/dist/src/structures/EpicgamesServerStatusIncident.js +36 -0
- package/dist/src/structures/EpicgamesServerStatusIncident.js.map +1 -0
- package/dist/src/structures/EpicgamesServerStatusScheduledMainteance.d.ts +21 -0
- package/dist/src/structures/EpicgamesServerStatusScheduledMainteance.js +20 -0
- package/dist/src/structures/EpicgamesServerStatusScheduledMainteance.js.map +1 -0
- package/dist/src/structures/EventTokens.d.ts +32 -0
- package/dist/src/structures/EventTokens.js +45 -0
- package/dist/src/structures/EventTokens.js.map +1 -0
- package/dist/src/structures/FortniteServerStatus.d.ts +46 -0
- package/dist/src/structures/FortniteServerStatus.js +26 -0
- package/dist/src/structures/FortniteServerStatus.js.map +1 -0
- package/dist/src/structures/GlobalProfile.d.ts +36 -0
- package/dist/src/structures/GlobalProfile.js +25 -0
- package/dist/src/structures/GlobalProfile.js.map +1 -0
- package/dist/src/structures/Image.d.ts +36 -0
- package/dist/src/structures/Image.js +38 -0
- package/dist/src/structures/Image.js.map +1 -0
- package/dist/src/structures/NewsMessage.d.ts +56 -0
- package/dist/src/structures/NewsMessage.js +45 -0
- package/dist/src/structures/NewsMessage.js.map +1 -0
- package/dist/src/structures/NewsMessageVideo.d.ts +47 -0
- package/dist/src/structures/NewsMessageVideo.js +32 -0
- package/dist/src/structures/NewsMessageVideo.js.map +1 -0
- package/dist/src/structures/RadioStation.d.ts +31 -0
- package/dist/src/structures/RadioStation.js +33 -0
- package/dist/src/structures/RadioStation.js.map +1 -0
- package/dist/src/structures/Stats.d.ts +45 -0
- package/dist/src/structures/Stats.js +109 -0
- package/dist/src/structures/Stats.js.map +1 -0
- package/dist/src/structures/Tournament.d.ts +86 -0
- package/dist/src/structures/Tournament.js +64 -0
- package/dist/src/structures/Tournament.js.map +1 -0
- package/dist/src/structures/TournamentWindow.d.ts +124 -0
- package/dist/src/structures/TournamentWindow.js +52 -0
- package/dist/src/structures/TournamentWindow.js.map +1 -0
- package/dist/src/structures/friend/BaseFriendMessage.d.ts +32 -0
- package/dist/src/structures/friend/BaseFriendMessage.js +28 -0
- package/dist/src/structures/friend/BaseFriendMessage.js.map +1 -0
- package/dist/src/structures/friend/BasePendingFriend.d.ts +22 -0
- package/dist/src/structures/friend/BasePendingFriend.js +22 -0
- package/dist/src/structures/friend/BasePendingFriend.js.map +1 -0
- package/dist/src/structures/friend/Friend.d.ts +106 -0
- package/dist/src/structures/friend/Friend.js +97 -0
- package/dist/src/structures/friend/Friend.js.map +1 -0
- package/dist/src/structures/friend/FriendPresence.d.ts +84 -0
- package/dist/src/structures/friend/FriendPresence.js +48 -0
- package/dist/src/structures/friend/FriendPresence.js.map +1 -0
- package/dist/src/structures/friend/IncomingPendingFriend.d.ts +27 -0
- package/dist/src/structures/friend/IncomingPendingFriend.js +36 -0
- package/dist/src/structures/friend/IncomingPendingFriend.js.map +1 -0
- package/dist/src/structures/friend/OutgoingPendingFriend.d.ts +17 -0
- package/dist/src/structures/friend/OutgoingPendingFriend.js +24 -0
- package/dist/src/structures/friend/OutgoingPendingFriend.js.map +1 -0
- package/dist/src/structures/friend/ReceivedFriendMessage.d.ts +27 -0
- package/dist/src/structures/friend/ReceivedFriendMessage.js +27 -0
- package/dist/src/structures/friend/ReceivedFriendMessage.js.map +1 -0
- package/dist/src/structures/friend/SentFriendMessage.d.ts +21 -0
- package/dist/src/structures/friend/SentFriendMessage.js +19 -0
- package/dist/src/structures/friend/SentFriendMessage.js.map +1 -0
- package/dist/src/structures/party/BasePartyInvitation.d.ts +48 -0
- package/dist/src/structures/party/BasePartyInvitation.js +33 -0
- package/dist/src/structures/party/BasePartyInvitation.js.map +1 -0
- package/dist/src/structures/party/BasePartyJoinRequest.d.ts +37 -0
- package/dist/src/structures/party/BasePartyJoinRequest.js +30 -0
- package/dist/src/structures/party/BasePartyJoinRequest.js.map +1 -0
- package/dist/src/structures/party/ClientParty.d.ts +162 -0
- package/dist/src/structures/party/ClientParty.js +412 -0
- package/dist/src/structures/party/ClientParty.js.map +1 -0
- package/dist/src/structures/party/ClientPartyMember.d.ts +144 -0
- package/dist/src/structures/party/ClientPartyMember.js +463 -0
- package/dist/src/structures/party/ClientPartyMember.js.map +1 -0
- package/dist/src/structures/party/ClientPartyMemberMeta.d.ts +18 -0
- package/dist/src/structures/party/ClientPartyMemberMeta.js +54 -0
- package/dist/src/structures/party/ClientPartyMemberMeta.js.map +1 -0
- package/dist/src/structures/party/ClientPartyMeta.d.ts +23 -0
- package/dist/src/structures/party/ClientPartyMeta.js +59 -0
- package/dist/src/structures/party/ClientPartyMeta.js.map +1 -0
- package/dist/src/structures/party/Party.d.ts +95 -0
- package/dist/src/structures/party/Party.js +200 -0
- package/dist/src/structures/party/Party.js.map +1 -0
- package/dist/src/structures/party/PartyChat.d.ts +73 -0
- package/dist/src/structures/party/PartyChat.js +76 -0
- package/dist/src/structures/party/PartyChat.js.map +1 -0
- package/dist/src/structures/party/PartyMember.d.ts +139 -0
- package/dist/src/structures/party/PartyMember.js +201 -0
- package/dist/src/structures/party/PartyMember.js.map +1 -0
- package/dist/src/structures/party/PartyMemberConfirmation.d.ts +43 -0
- package/dist/src/structures/party/PartyMemberConfirmation.js +53 -0
- package/dist/src/structures/party/PartyMemberConfirmation.js.map +1 -0
- package/dist/src/structures/party/PartyMemberMeta.d.ts +76 -0
- package/dist/src/structures/party/PartyMemberMeta.js +145 -0
- package/dist/src/structures/party/PartyMemberMeta.js.map +1 -0
- package/dist/src/structures/party/PartyMessage.d.ts +30 -0
- package/dist/src/structures/party/PartyMessage.js +28 -0
- package/dist/src/structures/party/PartyMessage.js.map +1 -0
- package/dist/src/structures/party/PartyMeta.d.ts +24 -0
- package/dist/src/structures/party/PartyMeta.js +43 -0
- package/dist/src/structures/party/PartyMeta.js.map +1 -0
- package/dist/src/structures/party/PresenceParty.d.ts +66 -0
- package/dist/src/structures/party/PresenceParty.js +49 -0
- package/dist/src/structures/party/PresenceParty.js.map +1 -0
- package/dist/src/structures/party/ReceivedPartyInvitation.d.ts +33 -0
- package/dist/src/structures/party/ReceivedPartyInvitation.js +54 -0
- package/dist/src/structures/party/ReceivedPartyInvitation.js.map +1 -0
- package/dist/src/structures/party/ReceivedPartyJoinRequest.d.ts +26 -0
- package/dist/src/structures/party/ReceivedPartyJoinRequest.js +31 -0
- package/dist/src/structures/party/ReceivedPartyJoinRequest.js.map +1 -0
- package/dist/src/structures/party/SentPartyInvitation.d.ts +27 -0
- package/dist/src/structures/party/SentPartyInvitation.js +39 -0
- package/dist/src/structures/party/SentPartyInvitation.js.map +1 -0
- package/dist/src/structures/party/SentPartyJoinRequest.d.ts +19 -0
- package/dist/src/structures/party/SentPartyJoinRequest.js +22 -0
- package/dist/src/structures/party/SentPartyJoinRequest.js.map +1 -0
- package/dist/src/structures/stw/STWHero.d.ts +61 -0
- package/dist/src/structures/stw/STWHero.js +38 -0
- package/dist/src/structures/stw/STWHero.js.map +1 -0
- package/dist/src/structures/stw/STWHeroLoadout.d.ts +44 -0
- package/dist/src/structures/stw/STWHeroLoadout.js +34 -0
- package/dist/src/structures/stw/STWHeroLoadout.js.map +1 -0
- package/dist/src/structures/stw/STWItem.d.ts +31 -0
- package/dist/src/structures/stw/STWItem.js +23 -0
- package/dist/src/structures/stw/STWItem.js.map +1 -0
- package/dist/src/structures/stw/STWLocker.d.ts +32 -0
- package/dist/src/structures/stw/STWLocker.js +26 -0
- package/dist/src/structures/stw/STWLocker.js.map +1 -0
- package/dist/src/structures/stw/STWMeleeWeaponSchematic.d.ts +14 -0
- package/dist/src/structures/stw/STWMeleeWeaponSchematic.js +15 -0
- package/dist/src/structures/stw/STWMeleeWeaponSchematic.js.map +1 -0
- package/dist/src/structures/stw/STWNewsMessage.d.ts +42 -0
- package/dist/src/structures/stw/STWNewsMessage.js +27 -0
- package/dist/src/structures/stw/STWNewsMessage.js.map +1 -0
- package/dist/src/structures/stw/STWProfile.d.ts +132 -0
- package/dist/src/structures/stw/STWProfile.js +283 -0
- package/dist/src/structures/stw/STWProfile.js.map +1 -0
- package/dist/src/structures/stw/STWRangedWeaponSchematic.d.ts +14 -0
- package/dist/src/structures/stw/STWRangedWeaponSchematic.js +15 -0
- package/dist/src/structures/stw/STWRangedWeaponSchematic.js.map +1 -0
- package/dist/src/structures/stw/STWResource.d.ts +27 -0
- package/dist/src/structures/stw/STWResource.js +22 -0
- package/dist/src/structures/stw/STWResource.js.map +1 -0
- package/dist/src/structures/stw/STWSchematic.d.ts +72 -0
- package/dist/src/structures/stw/STWSchematic.js +40 -0
- package/dist/src/structures/stw/STWSchematic.js.map +1 -0
- package/dist/src/structures/stw/STWStats.d.ts +103 -0
- package/dist/src/structures/stw/STWStats.js +85 -0
- package/dist/src/structures/stw/STWStats.js.map +1 -0
- package/dist/src/structures/stw/STWSurvivor.d.ts +104 -0
- package/dist/src/structures/stw/STWSurvivor.js +76 -0
- package/dist/src/structures/stw/STWSurvivor.js.map +1 -0
- package/dist/src/structures/stw/STWTeamPerk.d.ts +19 -0
- package/dist/src/structures/stw/STWTeamPerk.js +20 -0
- package/dist/src/structures/stw/STWTeamPerk.js.map +1 -0
- package/dist/src/structures/stw/STWTrapSchematic.d.ts +15 -0
- package/dist/src/structures/stw/STWTrapSchematic.js +16 -0
- package/dist/src/structures/stw/STWTrapSchematic.js.map +1 -0
- package/dist/src/structures/stw/STWWeaponSchematic.d.ts +15 -0
- package/dist/src/structures/stw/STWWeaponSchematic.js +16 -0
- package/dist/src/structures/stw/STWWeaponSchematic.js.map +1 -0
- package/dist/src/structures/user/BlockedUser.d.ts +13 -0
- package/dist/src/structures/user/BlockedUser.js +19 -0
- package/dist/src/structures/user/BlockedUser.js.map +1 -0
- package/dist/src/structures/user/ClientUser.d.ts +78 -0
- package/dist/src/structures/user/ClientUser.js +34 -0
- package/dist/src/structures/user/ClientUser.js.map +1 -0
- package/dist/src/structures/user/User.d.ts +98 -0
- package/dist/src/structures/user/User.js +130 -0
- package/dist/src/structures/user/User.js.map +1 -0
- package/dist/src/structures/user/UserSearchResult.d.ts +31 -0
- package/dist/src/structures/user/UserSearchResult.js +23 -0
- package/dist/src/structures/user/UserSearchResult.js.map +1 -0
- package/dist/src/util/AsyncLock.d.ts +28 -0
- package/dist/src/util/AsyncLock.js +44 -0
- package/dist/src/util/AsyncLock.js.map +1 -0
- package/dist/src/util/BinaryWriter.d.ts +79 -0
- package/dist/src/util/BinaryWriter.js +136 -0
- package/dist/src/util/BinaryWriter.js.map +1 -0
- package/dist/src/util/CurveTable.d.ts +24 -0
- package/dist/src/util/CurveTable.js +37 -0
- package/dist/src/util/CurveTable.js.map +1 -0
- package/dist/src/util/Meta.d.ts +41 -0
- package/dist/src/util/Meta.js +73 -0
- package/dist/src/util/Meta.js.map +1 -0
- package/dist/src/util/Util.d.ts +162 -0
- package/dist/src/util/Util.js +539 -0
- package/dist/src/util/Util.js.map +1 -0
- package/dist/src/xmpp/XMPP.d.ts +100 -0
- package/dist/src/xmpp/XMPP.js +702 -0
- package/dist/src/xmpp/XMPP.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const collection_1 = require("@discordjs/collection");
|
|
5
|
+
const Friend_1 = tslib_1.__importDefault(require("../structures/friend/Friend"));
|
|
6
|
+
const FriendNotFoundError_1 = tslib_1.__importDefault(require("../exceptions/FriendNotFoundError"));
|
|
7
|
+
const Endpoints_1 = tslib_1.__importDefault(require("../../resources/Endpoints"));
|
|
8
|
+
const UserNotFoundError_1 = tslib_1.__importDefault(require("../exceptions/UserNotFoundError"));
|
|
9
|
+
const DuplicateFriendshipError_1 = tslib_1.__importDefault(require("../exceptions/DuplicateFriendshipError"));
|
|
10
|
+
const FriendshipRequestAlreadySentError_1 = tslib_1.__importDefault(require("../exceptions/FriendshipRequestAlreadySentError"));
|
|
11
|
+
const InviteeFriendshipsLimitExceededError_1 = tslib_1.__importDefault(require("../exceptions/InviteeFriendshipsLimitExceededError"));
|
|
12
|
+
const InviteeFriendshipRequestLimitExceededError_1 = tslib_1.__importDefault(require("../exceptions/InviteeFriendshipRequestLimitExceededError"));
|
|
13
|
+
const InviteeFriendshipSettingsError_1 = tslib_1.__importDefault(require("../exceptions/InviteeFriendshipSettingsError"));
|
|
14
|
+
const OfferNotFoundError_1 = tslib_1.__importDefault(require("../exceptions/OfferNotFoundError"));
|
|
15
|
+
const SentFriendMessage_1 = tslib_1.__importDefault(require("../structures/friend/SentFriendMessage"));
|
|
16
|
+
const BasePendingFriend_1 = tslib_1.__importDefault(require("../structures/friend/BasePendingFriend"));
|
|
17
|
+
const Base_1 = tslib_1.__importDefault(require("../Base"));
|
|
18
|
+
const enums_1 = require("../../resources/enums");
|
|
19
|
+
const EpicgamesAPIError_1 = tslib_1.__importDefault(require("../exceptions/EpicgamesAPIError"));
|
|
20
|
+
class FriendManager extends Base_1.default {
|
|
21
|
+
constructor(constr) {
|
|
22
|
+
super(constr);
|
|
23
|
+
this.list = new collection_1.Collection();
|
|
24
|
+
this.pendingList = new collection_1.Collection();
|
|
25
|
+
}
|
|
26
|
+
resolve(friend) {
|
|
27
|
+
if (friend instanceof Friend_1.default) {
|
|
28
|
+
return this.list.get(friend.id);
|
|
29
|
+
}
|
|
30
|
+
if (friend.length === 32) {
|
|
31
|
+
return this.list.get(friend);
|
|
32
|
+
}
|
|
33
|
+
return this.list.find((f) => f.displayName === friend);
|
|
34
|
+
}
|
|
35
|
+
resolvePending(pendingFriend) {
|
|
36
|
+
if (pendingFriend instanceof BasePendingFriend_1.default) {
|
|
37
|
+
return this.pendingList.get(pendingFriend.id);
|
|
38
|
+
}
|
|
39
|
+
if (pendingFriend.length === 32) {
|
|
40
|
+
return this.pendingList.get(pendingFriend);
|
|
41
|
+
}
|
|
42
|
+
return this.pendingList.find((f) => f.displayName === pendingFriend);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Sends a friendship request to a user or accepts an existing request
|
|
46
|
+
* @param friend The id or display name of the user to add
|
|
47
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
48
|
+
* @throws {DuplicateFriendshipError} The user is already friends with the client
|
|
49
|
+
* @throws {FriendshipRequestAlreadySentError} A friendship request has already been sent to the user
|
|
50
|
+
* @throws {InviterFriendshipsLimitExceededError} The client's friendship limit is reached
|
|
51
|
+
* @throws {InviteeFriendshipsLimitExceededError} The user's friendship limit is reached
|
|
52
|
+
* @throws {InviteeFriendshipSettingsError} The user disabled friend requests
|
|
53
|
+
* @throws {InviteeFriendshipRequestLimitExceededError} The user's incoming friend request limit is reached
|
|
54
|
+
* @throws {EpicgamesAPIError}
|
|
55
|
+
*/
|
|
56
|
+
async add(friend) {
|
|
57
|
+
const userID = await this.client.user.resolveId(friend);
|
|
58
|
+
if (!userID)
|
|
59
|
+
throw new UserNotFoundError_1.default(friend);
|
|
60
|
+
try {
|
|
61
|
+
await this.client.http.epicgamesRequest({
|
|
62
|
+
method: 'POST',
|
|
63
|
+
url: `${Endpoints_1.default.FRIEND_ADD}/${this.client.user.self.id}/${userID}`,
|
|
64
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
if (e instanceof EpicgamesAPIError_1.default) {
|
|
68
|
+
switch (e.code) {
|
|
69
|
+
case 'errors.com.epicgames.friends.duplicate_friendship':
|
|
70
|
+
throw new DuplicateFriendshipError_1.default(friend);
|
|
71
|
+
case 'errors.com.epicgames.friends.friend_request_already_sent':
|
|
72
|
+
throw new FriendshipRequestAlreadySentError_1.default(friend);
|
|
73
|
+
case 'errors.com.epicgames.friends.inviter_friendships_limit_exceeded':
|
|
74
|
+
throw new InviteeFriendshipsLimitExceededError_1.default(friend);
|
|
75
|
+
case 'errors.com.epicgames.friends.invitee_friendships_limit_exceeded':
|
|
76
|
+
throw new InviteeFriendshipsLimitExceededError_1.default(friend);
|
|
77
|
+
case 'errors.com.epicgames.friends.incoming_friendships_limit_exceeded':
|
|
78
|
+
throw new InviteeFriendshipRequestLimitExceededError_1.default(friend);
|
|
79
|
+
case 'errors.com.epicgames.friends.cannot_friend_due_to_target_settings':
|
|
80
|
+
throw new InviteeFriendshipSettingsError_1.default(friend);
|
|
81
|
+
case 'errors.com.epicgames.friends.account_not_found':
|
|
82
|
+
throw new UserNotFoundError_1.default(friend);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
throw e;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Removes a friend from the client's friend list or declines / aborts a pending friendship request
|
|
90
|
+
* @param friend The id or display name of the friend
|
|
91
|
+
* @throws {FriendNotFoundError} The user does not exist or is not friends with the client
|
|
92
|
+
* @throws {EpicgamesAPIError}
|
|
93
|
+
*/
|
|
94
|
+
async remove(friend) {
|
|
95
|
+
var _a;
|
|
96
|
+
const resolvedFriend = (_a = this.resolve(friend)) !== null && _a !== void 0 ? _a : this.resolvePending(friend);
|
|
97
|
+
if (!resolvedFriend)
|
|
98
|
+
throw new FriendNotFoundError_1.default(friend);
|
|
99
|
+
await this.client.http.epicgamesRequest({
|
|
100
|
+
method: 'DELETE',
|
|
101
|
+
url: `${Endpoints_1.default.FRIEND_DELETE}/${this.client.user.self.id}/friends/${resolvedFriend.id}`,
|
|
102
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Fetches the friends the client shares with a friend
|
|
106
|
+
* @param friend The id or display name of the friend
|
|
107
|
+
* @throws {FriendNotFoundError} The user does not exist or is not friends with the client
|
|
108
|
+
* @throws {EpicgamesAPIError}
|
|
109
|
+
*/
|
|
110
|
+
async getMutual(friend) {
|
|
111
|
+
const resolvedFriend = this.resolve(friend);
|
|
112
|
+
if (!resolvedFriend)
|
|
113
|
+
throw new FriendNotFoundError_1.default(friend);
|
|
114
|
+
const mutualFriends = await this.client.http.epicgamesRequest({
|
|
115
|
+
method: 'GET',
|
|
116
|
+
url: `${Endpoints_1.default.FRIENDS}/${this.client.user.self.id}/friends/${resolvedFriend.id}/mutual`,
|
|
117
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
118
|
+
return mutualFriends
|
|
119
|
+
.map((f) => this.list.get(f))
|
|
120
|
+
.filter((f) => !!f);
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Checks whether a friend owns a specific offer
|
|
124
|
+
* @param friend The id or display name of the friend
|
|
125
|
+
* @param offerId The offer id
|
|
126
|
+
* @throws {OfferNotFoundError} The offer does not exist or is not in the current storefront catalog
|
|
127
|
+
* @throws {FriendNotFoundError} The user does not exist or is not friends with the client
|
|
128
|
+
* @throws {EpicgamesAPIError}
|
|
129
|
+
*/
|
|
130
|
+
async checkOfferOwnership(friend, offerId) {
|
|
131
|
+
const resolvedFriend = this.resolve(friend);
|
|
132
|
+
if (!resolvedFriend)
|
|
133
|
+
throw new FriendNotFoundError_1.default(friend);
|
|
134
|
+
try {
|
|
135
|
+
await this.client.http.epicgamesRequest({
|
|
136
|
+
method: 'GET',
|
|
137
|
+
url: `${Endpoints_1.default.BR_GIFT_ELIGIBILITY}/recipient/${resolvedFriend.id}/offer/${encodeURIComponent(offerId)}`,
|
|
138
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
catch (e) {
|
|
142
|
+
if (e instanceof EpicgamesAPIError_1.default) {
|
|
143
|
+
if (e.code === 'errors.com.epicgames.modules.gamesubcatalog.catalog_out_of_date') {
|
|
144
|
+
throw new OfferNotFoundError_1.default(offerId);
|
|
145
|
+
}
|
|
146
|
+
if (e.code === 'errors.com.epicgames.modules.gamesubcatalog.purchase_not_allowed') {
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
throw e;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Sends a message to a friend
|
|
155
|
+
* @param friend The id or display name of the friend
|
|
156
|
+
* @param content The message that will be sent
|
|
157
|
+
* @throws {FriendNotFoundError} The user does not exist or is not friends with the client
|
|
158
|
+
* @throws {SendMessageError} The messant could not be sent
|
|
159
|
+
*/
|
|
160
|
+
async sendMessage(friend, content) {
|
|
161
|
+
const resolvedFriend = this.resolve(friend);
|
|
162
|
+
if (!resolvedFriend) {
|
|
163
|
+
throw new FriendNotFoundError_1.default(friend);
|
|
164
|
+
}
|
|
165
|
+
const messageId = await this.client.chat.whisperUser(resolvedFriend.id, { body: content });
|
|
166
|
+
return new SentFriendMessage_1.default(this.client, {
|
|
167
|
+
author: this.client.user.self,
|
|
168
|
+
content,
|
|
169
|
+
id: messageId,
|
|
170
|
+
sentAt: new Date(),
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
exports.default = FriendManager;
|
|
175
|
+
//# sourceMappingURL=FriendManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FriendManager.js","sourceRoot":"","sources":["../../../src/managers/FriendManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import Base from '../Base';
|
|
2
|
+
import STWProfile from '../structures/stw/STWProfile';
|
|
3
|
+
import STWNewsMessage from '../structures/stw/STWNewsMessage';
|
|
4
|
+
import type { STWWorldInfoData } from '../../resources/structs';
|
|
5
|
+
/**
|
|
6
|
+
* Represents the client's STW manager
|
|
7
|
+
*/
|
|
8
|
+
declare class STWManager extends Base {
|
|
9
|
+
/**
|
|
10
|
+
* Fetches the Save The World profile for a players
|
|
11
|
+
* @param user The id or display name of the user
|
|
12
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
13
|
+
* @throws {EpicgamesAPIError}
|
|
14
|
+
*/
|
|
15
|
+
getProfile(user: string): Promise<STWProfile>;
|
|
16
|
+
/**
|
|
17
|
+
* Fetches the current Save The World news
|
|
18
|
+
* @param language The language of the news
|
|
19
|
+
* @throws {EpicgamesAPIError}
|
|
20
|
+
*/
|
|
21
|
+
getNews(language?: import("../../resources/structs").Language): Promise<STWNewsMessage[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Fetches the current Save The World world info
|
|
24
|
+
* @param language The language of the world info
|
|
25
|
+
* @throws {EpicgamesAPIError}
|
|
26
|
+
*/
|
|
27
|
+
getWorldInfo(language?: import("../../resources/structs").Language): Promise<STWWorldInfoData>;
|
|
28
|
+
}
|
|
29
|
+
export default STWManager;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const Base_1 = tslib_1.__importDefault(require("../Base"));
|
|
5
|
+
const UserNotFoundError_1 = tslib_1.__importDefault(require("../exceptions/UserNotFoundError"));
|
|
6
|
+
const Endpoints_1 = tslib_1.__importDefault(require("../../resources/Endpoints"));
|
|
7
|
+
const enums_1 = require("../../resources/enums");
|
|
8
|
+
const EpicgamesAPIError_1 = tslib_1.__importDefault(require("../exceptions/EpicgamesAPIError"));
|
|
9
|
+
const STWProfile_1 = tslib_1.__importDefault(require("../structures/stw/STWProfile"));
|
|
10
|
+
const STWNewsMessage_1 = tslib_1.__importDefault(require("../structures/stw/STWNewsMessage"));
|
|
11
|
+
/**
|
|
12
|
+
* Represents the client's STW manager
|
|
13
|
+
*/
|
|
14
|
+
class STWManager extends Base_1.default {
|
|
15
|
+
/**
|
|
16
|
+
* Fetches the Save The World profile for a players
|
|
17
|
+
* @param user The id or display name of the user
|
|
18
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
19
|
+
* @throws {EpicgamesAPIError}
|
|
20
|
+
*/
|
|
21
|
+
async getProfile(user) {
|
|
22
|
+
const resolvedUser = await this.client.user.fetch(user);
|
|
23
|
+
if (!resolvedUser)
|
|
24
|
+
throw new UserNotFoundError_1.default(user);
|
|
25
|
+
let queryProfileResponse;
|
|
26
|
+
try {
|
|
27
|
+
queryProfileResponse = await this.client.http.epicgamesRequest({
|
|
28
|
+
method: 'POST',
|
|
29
|
+
url: `${Endpoints_1.default.MCP}/${resolvedUser.id}/public/QueryPublicProfile?profileId=campaign`,
|
|
30
|
+
headers: {
|
|
31
|
+
'Content-Type': 'application/json',
|
|
32
|
+
},
|
|
33
|
+
data: {},
|
|
34
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
35
|
+
}
|
|
36
|
+
catch (e) {
|
|
37
|
+
if (e instanceof EpicgamesAPIError_1.default && e.code === 'errors.com.epicgames.modules.profiles.profile_not_found') {
|
|
38
|
+
throw new UserNotFoundError_1.default(user);
|
|
39
|
+
}
|
|
40
|
+
throw e;
|
|
41
|
+
}
|
|
42
|
+
return new STWProfile_1.default(this.client, queryProfileResponse.profileChanges[0].profile, resolvedUser);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Fetches the current Save The World news
|
|
46
|
+
* @param language The language of the news
|
|
47
|
+
* @throws {EpicgamesAPIError}
|
|
48
|
+
*/
|
|
49
|
+
async getNews(language = this.client.config.language) {
|
|
50
|
+
const newsResponse = await this.client.http.epicgamesRequest({
|
|
51
|
+
method: 'GET',
|
|
52
|
+
url: `${Endpoints_1.default.BR_NEWS}/savetheworldnews?lang=${language}`,
|
|
53
|
+
headers: {
|
|
54
|
+
'Accept-Language': language,
|
|
55
|
+
},
|
|
56
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
57
|
+
return newsResponse.news.messages.map((m) => new STWNewsMessage_1.default(this.client, m));
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Fetches the current Save The World world info
|
|
61
|
+
* @param language The language of the world info
|
|
62
|
+
* @throws {EpicgamesAPIError}
|
|
63
|
+
*/
|
|
64
|
+
async getWorldInfo(language = this.client.config.language) {
|
|
65
|
+
const worldInfoResponse = await this.client.http.epicgamesRequest({
|
|
66
|
+
method: 'GET',
|
|
67
|
+
url: Endpoints_1.default.STW_WORLD_INFO,
|
|
68
|
+
headers: {
|
|
69
|
+
'Accept-Language': language,
|
|
70
|
+
},
|
|
71
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
72
|
+
return {
|
|
73
|
+
theaters: worldInfoResponse.theaters,
|
|
74
|
+
missions: worldInfoResponse.missions,
|
|
75
|
+
missionAlerts: worldInfoResponse.missionAlerts,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.default = STWManager;
|
|
80
|
+
//# sourceMappingURL=STWManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"STWManager.js","sourceRoot":"","sources":["../../../src/managers/STWManager.ts"],"names":[],"mappings":";;;AAAA,2DAA2B;AAC3B,gGAAgE;AAChE,kFAAkD;AAClD,iDAA4D;AAC5D,gGAAgE;AAChE,sFAAsD;AACtD,8FAA8D;AAG9D;;GAEG;AACH,MAAM,UAAW,SAAQ,cAAI;IAC3B;;;;;OAKG;IACI,KAAK,CAAC,UAAU,CAAC,IAAY;QAClC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,2BAAiB,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,oBAAoB,CAAC;QACzB,IAAI,CAAC;YACH,oBAAoB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;gBAC7D,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,GAAG,mBAAS,CAAC,GAAG,IAAI,YAAY,CAAC,EAAE,+CAA+C;gBACvF,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,EAAE;aACT,EAAE,2BAAmB,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,2BAAiB,IAAI,CAAC,CAAC,IAAI,KAAK,yDAAyD,EAAE,CAAC;gBAC3G,MAAM,IAAI,2BAAiB,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,MAAM,CAAC,CAAC;QACV,CAAC;QAED,OAAO,IAAI,oBAAU,CAAC,IAAI,CAAC,MAAM,EAAE,oBAAoB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACnG,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ;QACzD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC3D,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,mBAAS,CAAC,OAAO,0BAA0B,QAAQ,EAAE;YAC7D,OAAO,EAAE;gBACP,iBAAiB,EAAE,QAAQ;aAC5B;SACF,EAAE,2BAAmB,CAAC,QAAQ,CAAC,CAAC;QAEjC,OAAO,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,wBAAc,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACxF,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ;QAC9D,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAChE,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,mBAAS,CAAC,cAAc;YAC7B,OAAO,EAAE;gBACP,iBAAiB,EAAE,QAAQ;aAC5B;SACF,EAAE,2BAAmB,CAAC,QAAQ,CAAC,CAAC;QAEjC,OAAO;YACL,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;YACpC,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;YACpC,aAAa,EAAE,iBAAiB,CAAC,aAAa;SAC/C,CAAC;IACJ,CAAC;CACF;AAED,kBAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import Base from '../Base';
|
|
2
|
+
import EventTokens from '../structures/EventTokens';
|
|
3
|
+
import Tournament from '../structures/Tournament';
|
|
4
|
+
import type { FullPlatform, Region, TournamentSessionMetadata } from '../../resources/structs';
|
|
5
|
+
import type { TournamentWindowResults } from '../../resources/httpResponses';
|
|
6
|
+
/**
|
|
7
|
+
* Represent's the client's tournament manager.
|
|
8
|
+
*/
|
|
9
|
+
declare class TournamentManager extends Base {
|
|
10
|
+
/**
|
|
11
|
+
* Downloads a file from the CDN (used for replays)
|
|
12
|
+
* @param url The URL of the file to download
|
|
13
|
+
* @param responseType The response type
|
|
14
|
+
*/
|
|
15
|
+
private downloadReplayCDNFile;
|
|
16
|
+
/**
|
|
17
|
+
* Fetches the event tokens for an account.
|
|
18
|
+
* This can be used to check if a user is eligible to play a certain tournament window
|
|
19
|
+
* or to check a user's arena division in any season
|
|
20
|
+
* @param user The id(s) or display name(s) of the user(s)
|
|
21
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
22
|
+
* @throws {EpicgamesAPIError}
|
|
23
|
+
*/
|
|
24
|
+
getEventTokens(user: string | string[]): Promise<EventTokens[]>;
|
|
25
|
+
/**
|
|
26
|
+
* Fetches the current and past Battle Royale tournaments
|
|
27
|
+
* @param region The region
|
|
28
|
+
* @param platform The platform
|
|
29
|
+
* @throws {EpicgamesAPIError}
|
|
30
|
+
*/
|
|
31
|
+
get(region?: Region, platform?: FullPlatform): Promise<Tournament[]>;
|
|
32
|
+
getData(): Promise<Tournament[]>;
|
|
33
|
+
/**
|
|
34
|
+
* Fetches a tournament session's metadata
|
|
35
|
+
* @param sessionId The session ID
|
|
36
|
+
* @throws {MatchNotFoundError} The match wasn't found
|
|
37
|
+
* @throws {EpicgamesAPIError}
|
|
38
|
+
* @throws {AxiosError}
|
|
39
|
+
*/
|
|
40
|
+
getSessionMetadata(sessionId: string): Promise<TournamentSessionMetadata>;
|
|
41
|
+
/**
|
|
42
|
+
* Fetches the results for a tournament window
|
|
43
|
+
* @param eventId The tournament's ID
|
|
44
|
+
* @param eventWindowId The tournament window's ID
|
|
45
|
+
* @param showLiveSessions Whether to show live sessions
|
|
46
|
+
* @param page The results page index
|
|
47
|
+
* @throws {EpicgamesAPIError}
|
|
48
|
+
*/
|
|
49
|
+
getWindowResults(eventId: string, eventWindowId: string, showLiveSessions?: boolean, page?: number): Promise<TournamentWindowResults>;
|
|
50
|
+
}
|
|
51
|
+
export default TournamentManager;
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const axios_1 = require("axios");
|
|
5
|
+
const Endpoints_1 = tslib_1.__importDefault(require("../../resources/Endpoints"));
|
|
6
|
+
const Base_1 = tslib_1.__importDefault(require("../Base"));
|
|
7
|
+
const MatchNotFoundError_1 = tslib_1.__importDefault(require("../exceptions/MatchNotFoundError"));
|
|
8
|
+
const EventTokens_1 = tslib_1.__importDefault(require("../structures/EventTokens"));
|
|
9
|
+
const Tournament_1 = tslib_1.__importDefault(require("../structures/Tournament"));
|
|
10
|
+
const enums_1 = require("../../resources/enums");
|
|
11
|
+
/**
|
|
12
|
+
* Represent's the client's tournament manager.
|
|
13
|
+
*/
|
|
14
|
+
class TournamentManager extends Base_1.default {
|
|
15
|
+
/**
|
|
16
|
+
* Downloads a file from the CDN (used for replays)
|
|
17
|
+
* @param url The URL of the file to download
|
|
18
|
+
* @param responseType The response type
|
|
19
|
+
*/
|
|
20
|
+
async downloadReplayCDNFile(url, responseType) {
|
|
21
|
+
const fileLocationInfo = await this.client.http.epicgamesRequest({
|
|
22
|
+
method: 'GET',
|
|
23
|
+
url,
|
|
24
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
25
|
+
const file = await this.client.http.request({
|
|
26
|
+
method: 'GET',
|
|
27
|
+
url: Object.values(fileLocationInfo.files)[0].readLink,
|
|
28
|
+
responseType,
|
|
29
|
+
});
|
|
30
|
+
return file;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Fetches the event tokens for an account.
|
|
34
|
+
* This can be used to check if a user is eligible to play a certain tournament window
|
|
35
|
+
* or to check a user's arena division in any season
|
|
36
|
+
* @param user The id(s) or display name(s) of the user(s)
|
|
37
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
38
|
+
* @throws {EpicgamesAPIError}
|
|
39
|
+
*/
|
|
40
|
+
async getEventTokens(user) {
|
|
41
|
+
const users = typeof user === 'string' ? [user] : user;
|
|
42
|
+
const resolvedUsers = await this.client.user.fetchMultiple(users);
|
|
43
|
+
const userChunks = resolvedUsers.map((u) => u.id).reduce((resArr, usr, i) => {
|
|
44
|
+
const chunkIndex = Math.floor(i / 16);
|
|
45
|
+
// eslint-disable-next-line no-param-reassign
|
|
46
|
+
if (!resArr[chunkIndex])
|
|
47
|
+
resArr[chunkIndex] = [];
|
|
48
|
+
resArr[chunkIndex].push(usr);
|
|
49
|
+
return resArr;
|
|
50
|
+
}, []);
|
|
51
|
+
const statsResponses = await Promise.all(userChunks.map((c) => this.client.http.epicgamesRequest({
|
|
52
|
+
method: 'GET',
|
|
53
|
+
url: `${Endpoints_1.default.BR_TOURNAMENT_TOKENS}?teamAccountIds=${c.join(',')}`,
|
|
54
|
+
}, enums_1.AuthSessionStoreKey.Fortnite)));
|
|
55
|
+
return statsResponses.map((r) => r.accounts).flat(1)
|
|
56
|
+
.map((r) => new EventTokens_1.default(this.client, r.tokens, resolvedUsers.find((u) => u.id === r.accountId)));
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Fetches the current and past Battle Royale tournaments
|
|
60
|
+
* @param region The region
|
|
61
|
+
* @param platform The platform
|
|
62
|
+
* @throws {EpicgamesAPIError}
|
|
63
|
+
*/
|
|
64
|
+
async get(region = 'EU', platform = 'Windows') {
|
|
65
|
+
const [tournaments, tournamentsInfo] = await Promise.all([
|
|
66
|
+
this.client.http.epicgamesRequest({
|
|
67
|
+
method: 'GET',
|
|
68
|
+
url: `${Endpoints_1.default.BR_TOURNAMENTS_DOWNLOAD}/${this.client.user.self.id}?region=${region}`
|
|
69
|
+
+ `&platform=${platform}&teamAccountIds=${this.client.user.self.id}`,
|
|
70
|
+
}, enums_1.AuthSessionStoreKey.Fortnite),
|
|
71
|
+
this.client.http.epicgamesRequest({
|
|
72
|
+
method: 'GET',
|
|
73
|
+
url: `${Endpoints_1.default.BR_NEWS}/tournamentinformation`,
|
|
74
|
+
}, enums_1.AuthSessionStoreKey.Fortnite),
|
|
75
|
+
]);
|
|
76
|
+
const constuctedTournaments = [];
|
|
77
|
+
tournaments.events.forEach((t) => {
|
|
78
|
+
var _a, _b, _c;
|
|
79
|
+
let tournamentDisplayData = (_b = (_a = tournamentsInfo.tournament_info) === null || _a === void 0 ? void 0 : _a.tournaments) === null || _b === void 0 ? void 0 : _b.find((td) => td.tournament_display_id === t.displayDataId);
|
|
80
|
+
if (!tournamentDisplayData) {
|
|
81
|
+
tournamentDisplayData = (_c = Object.values(tournamentsInfo)
|
|
82
|
+
.find((tdr) => { var _a; return ((_a = tdr.tournament_info) === null || _a === void 0 ? void 0 : _a.tournament_display_id) === t.displayDataId; })) === null || _c === void 0 ? void 0 : _c.tournament_info;
|
|
83
|
+
}
|
|
84
|
+
if (!tournamentDisplayData) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const templates = [];
|
|
88
|
+
t.eventWindows.forEach((w) => {
|
|
89
|
+
const template = tournaments.templates
|
|
90
|
+
.find((tt) => tt.eventTemplateId === w.eventTemplateId);
|
|
91
|
+
if (template)
|
|
92
|
+
templates.push({ windowId: w.eventWindowId, templateData: template });
|
|
93
|
+
});
|
|
94
|
+
constuctedTournaments.push(new Tournament_1.default(this.client, t, tournamentDisplayData, templates));
|
|
95
|
+
});
|
|
96
|
+
return constuctedTournaments;
|
|
97
|
+
}
|
|
98
|
+
async getData() {
|
|
99
|
+
const tournaments = await this.client.http.epicgamesRequest({
|
|
100
|
+
method: 'GET',
|
|
101
|
+
url: `${Endpoints_1.default.BR_TOURNAMENTS}/${this.client.user.self.id}`,
|
|
102
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
103
|
+
const tournamentsInfo = await this.client.http.epicgamesRequest({
|
|
104
|
+
method: 'GET',
|
|
105
|
+
url: `${Endpoints_1.default.BR_NEWS}/tournamentinformation`,
|
|
106
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
107
|
+
const constuctedTournaments = [];
|
|
108
|
+
tournaments.events.forEach((t) => {
|
|
109
|
+
var _a, _b, _c;
|
|
110
|
+
let tournamentDisplayData = (_b = (_a = tournamentsInfo.tournament_info) === null || _a === void 0 ? void 0 : _a.tournaments) === null || _b === void 0 ? void 0 : _b.find((td) => td.tournament_display_id === t.displayDataId);
|
|
111
|
+
if (!tournamentDisplayData) {
|
|
112
|
+
tournamentDisplayData = (_c = Object.values(tournamentsInfo)
|
|
113
|
+
.find((tdr) => { var _a; return ((_a = tdr.tournament_info) === null || _a === void 0 ? void 0 : _a.tournament_display_id) === t.displayDataId; })) === null || _c === void 0 ? void 0 : _c.tournament_info;
|
|
114
|
+
}
|
|
115
|
+
if (!tournamentDisplayData) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
const templates = [];
|
|
119
|
+
t.eventWindows.forEach((w) => {
|
|
120
|
+
const template = tournaments.templates
|
|
121
|
+
.find((tt) => tt.eventTemplateId === w.eventTemplateId);
|
|
122
|
+
if (template)
|
|
123
|
+
templates.push({ windowId: w.eventWindowId, templateData: template });
|
|
124
|
+
});
|
|
125
|
+
constuctedTournaments.push(new Tournament_1.default(this.client, t, tournamentDisplayData, templates));
|
|
126
|
+
});
|
|
127
|
+
return constuctedTournaments;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Fetches a tournament session's metadata
|
|
131
|
+
* @param sessionId The session ID
|
|
132
|
+
* @throws {MatchNotFoundError} The match wasn't found
|
|
133
|
+
* @throws {EpicgamesAPIError}
|
|
134
|
+
* @throws {AxiosError}
|
|
135
|
+
*/
|
|
136
|
+
async getSessionMetadata(sessionId) {
|
|
137
|
+
var _a, _b;
|
|
138
|
+
let replayMetadataResponse;
|
|
139
|
+
try {
|
|
140
|
+
replayMetadataResponse = await this.downloadReplayCDNFile(`${Endpoints_1.default.BR_REPLAY_METADATA}%2F${sessionId}.json`, 'json');
|
|
141
|
+
}
|
|
142
|
+
catch (e) {
|
|
143
|
+
if (e instanceof axios_1.AxiosError && typeof ((_a = e.response) === null || _a === void 0 ? void 0 : _a.data) === 'string'
|
|
144
|
+
&& ((_b = e.response) === null || _b === void 0 ? void 0 : _b.data.includes('<Message>The specified key does not exist.</Message>'))) {
|
|
145
|
+
throw new MatchNotFoundError_1.default(sessionId);
|
|
146
|
+
}
|
|
147
|
+
throw e;
|
|
148
|
+
}
|
|
149
|
+
return {
|
|
150
|
+
changelist: replayMetadataResponse.Changelist,
|
|
151
|
+
checkpoints: replayMetadataResponse.Checkpoints,
|
|
152
|
+
dataChunks: replayMetadataResponse.DataChunks,
|
|
153
|
+
desiredDelayInSeconds: replayMetadataResponse.DesiredDelayInSeconds,
|
|
154
|
+
events: replayMetadataResponse.Events,
|
|
155
|
+
friendlyName: replayMetadataResponse.FriendlyName,
|
|
156
|
+
lengthInMS: replayMetadataResponse.LengthInMS,
|
|
157
|
+
networkVersion: replayMetadataResponse.NetworkVersion,
|
|
158
|
+
replayName: replayMetadataResponse.ReplayName,
|
|
159
|
+
timestamp: new Date(replayMetadataResponse.Timestamp),
|
|
160
|
+
isCompressed: replayMetadataResponse.bCompressed,
|
|
161
|
+
isLive: replayMetadataResponse.bIsLive,
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Fetches the results for a tournament window
|
|
166
|
+
* @param eventId The tournament's ID
|
|
167
|
+
* @param eventWindowId The tournament window's ID
|
|
168
|
+
* @param showLiveSessions Whether to show live sessions
|
|
169
|
+
* @param page The results page index
|
|
170
|
+
* @throws {EpicgamesAPIError}
|
|
171
|
+
*/
|
|
172
|
+
async getWindowResults(eventId, eventWindowId, showLiveSessions = false, page = 0) {
|
|
173
|
+
const window = await this.client.http.epicgamesRequest({
|
|
174
|
+
method: 'GET',
|
|
175
|
+
url: `${Endpoints_1.default.BR_TOURNAMENT_WINDOW}/${eventId}/${eventWindowId}/`
|
|
176
|
+
+ `${this.client.user.self.id}?page=${page}&rank=0&teamAccountIds=&appId=Fortnite&showLiveSessions=${showLiveSessions}`,
|
|
177
|
+
}, enums_1.AuthSessionStoreKey.Fortnite);
|
|
178
|
+
return window;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
exports.default = TournamentManager;
|
|
182
|
+
//# sourceMappingURL=TournamentManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TournamentManager.js","sourceRoot":"","sources":["../../../src/managers/TournamentManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Collection } from '@discordjs/collection';
|
|
2
|
+
import Base from '../Base';
|
|
3
|
+
import UserSearchResult from '../structures/user/UserSearchResult';
|
|
4
|
+
import User from '../structures/user/User';
|
|
5
|
+
import Avatar from '../structures/Avatar';
|
|
6
|
+
import GlobalProfile from '../structures/GlobalProfile';
|
|
7
|
+
import ClientUser from '../structures/user/ClientUser';
|
|
8
|
+
import type BlockedUser from '../structures/user/BlockedUser';
|
|
9
|
+
import type { UserSearchPlatform } from '../../resources/structs';
|
|
10
|
+
import type Client from '../Client';
|
|
11
|
+
declare class UserManager extends Base {
|
|
12
|
+
/**
|
|
13
|
+
* The client's blocklist
|
|
14
|
+
*/
|
|
15
|
+
blocklist: Collection<string, BlockedUser>;
|
|
16
|
+
/**
|
|
17
|
+
* The client's user cache
|
|
18
|
+
* @private
|
|
19
|
+
*/
|
|
20
|
+
cache: Collection<string, User & {
|
|
21
|
+
cachedAt: number;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* The client's user
|
|
25
|
+
*/
|
|
26
|
+
self?: ClientUser;
|
|
27
|
+
constructor(client: Client);
|
|
28
|
+
/**
|
|
29
|
+
* Resolves a user's ID from the cache or via the API
|
|
30
|
+
* @param idOrDisplayName The user's ID or display name
|
|
31
|
+
*/
|
|
32
|
+
resolveId(idOrDisplayName: string): Promise<string>;
|
|
33
|
+
fetch(idOrDisplayName: string): Promise<User>;
|
|
34
|
+
fetchMultiple(idsOrDisplayNames: string[]): Promise<User[]>;
|
|
35
|
+
fetchSelf(): Promise<void>;
|
|
36
|
+
search(prefix: string, platform?: UserSearchPlatform): Promise<UserSearchResult[]>;
|
|
37
|
+
/**
|
|
38
|
+
* Fetches the avatar of a user
|
|
39
|
+
* @param user The id or display name of the user
|
|
40
|
+
* @throws {EpicgamesAPIError}
|
|
41
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
42
|
+
*/
|
|
43
|
+
fetchAvatar(idOrDisplayName: string): Promise<Avatar>;
|
|
44
|
+
/**
|
|
45
|
+
* Fetches the avatar of multiple users
|
|
46
|
+
* @param user The ids and/or display names of the users
|
|
47
|
+
* @throws {EpicgamesAPIError}
|
|
48
|
+
*/
|
|
49
|
+
fetchAvatarMultiple(idsOrDisplayNames: string[]): Promise<Avatar[]>;
|
|
50
|
+
/**
|
|
51
|
+
* Fetches the global profile of a user
|
|
52
|
+
* @param user The id or display name of the user
|
|
53
|
+
* @throws {EpicgamesAPIError}
|
|
54
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
55
|
+
*/
|
|
56
|
+
fetchGlobalProfile(idOrDisplayName: string): Promise<GlobalProfile>;
|
|
57
|
+
/**
|
|
58
|
+
* Fetches the global profile for multiple users
|
|
59
|
+
* @param user The ids and/or display names of the users
|
|
60
|
+
* @throws {EpicgamesAPIError}
|
|
61
|
+
*/
|
|
62
|
+
fetchGlobalProfileMultiple(idsOrDisplayNames: string[]): Promise<GlobalProfile[]>;
|
|
63
|
+
/**
|
|
64
|
+
* Blocks a user
|
|
65
|
+
* @param user The id or display name of the user
|
|
66
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
67
|
+
* @throws {EpicgamesAPIError}
|
|
68
|
+
*/
|
|
69
|
+
block(user: string): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Unblocks a user
|
|
72
|
+
* @param user The id or display name of the user
|
|
73
|
+
* @throws {UserNotFoundError} The user wasn't found
|
|
74
|
+
* @throws {EpicgamesAPIError}
|
|
75
|
+
*/
|
|
76
|
+
unblock(user: string): Promise<void>;
|
|
77
|
+
}
|
|
78
|
+
export default UserManager;
|