Skip to content

Commit

Permalink
update for API v2.12.0 - Season of the Lost & cross-play
Browse files Browse the repository at this point in the history
  • Loading branch information
Cytraen committed Aug 24, 2021
1 parent 54b8ea0 commit 9742594
Show file tree
Hide file tree
Showing 23 changed files with 385 additions and 41 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<IsPackable>false</IsPackable>

<TargetFramework>net5.0</TargetFramework>
<Version>0.8.0</Version>
<Version>0.8.2</Version>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<Nullable>enable</Nullable>

<TargetFramework>net5.0</TargetFramework>
<Version>0.8.0</Version>
<Version>0.8.2</Version>
</PropertyGroup>

<ItemGroup>
Expand Down
3 changes: 3 additions & 0 deletions BungieSharper.CodeGen.Entities/Common/FormatEnum.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ public enum FormatEnum
[EnumMember(Value = "int64")]
Int64,

[EnumMember(Value = "int16")]
Int16,

[EnumMember(Value = "uint32")]
Uint32
}
Expand Down
1 change: 1 addition & 0 deletions BungieSharper.CodeGen.Entities/Common/TagEnum.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ public enum TagEnum
CommunityContent,
Trending,
Fireteam,
Social,
Preview,

[EnumMember(Value = "")]
Expand Down
2 changes: 1 addition & 1 deletion BungieSharper.CodeGen/BungieSharper.CodeGen.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<Nullable>enable</Nullable>

<TargetFramework>net5.0</TargetFramework>
<Version>0.8.0</Version>
<Version>0.8.2</Version>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 2 additions & 0 deletions BungieSharper.CodeGen/Generation/Mapping.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ internal static string FormatToCSharp(FormatEnum format)
FormatEnum.Float => "float",
FormatEnum.Int32 => "int",
FormatEnum.Int64 => "long",
FormatEnum.Int16 => "short",
FormatEnum.Uint32 => "uint",
_ => throw new NotSupportedException(),
};
Expand All @@ -49,6 +50,7 @@ internal static string TagToDescription(TagEnum tag)
TagEnum.CommunityContent => "CommunityContent",
TagEnum.Trending => "Trending",
TagEnum.Fireteam => "Fireteam",
TagEnum.Social => "Social",
TagEnum.Preview => "Preview",
TagEnum.Core => "Core",
_ => throw new NotSupportedException(),
Expand Down
4 changes: 4 additions & 0 deletions BungieSharper.Entities/Applications/Entities.Applications.cs
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,10 @@ public class Application
/// <summary>List of team members who manage this application on Bungie.net. Will always consist of at least the application owner.</summary>
[JsonPropertyName("team")]
public IEnumerable<Applications.ApplicationDeveloper> Team { get; set; }

/// <summary>An optional override for the Authorize view name.</summary>
[JsonPropertyName("overrideAuthorizeViewName")]
public string OverrideAuthorizeViewName { get; set; }
}

public enum ApplicationStatus : int
Expand Down
2 changes: 1 addition & 1 deletion BungieSharper.Entities/BungieSharper.Entities.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<Nullable>enable</Nullable>

<TargetFramework>net5.0</TargetFramework>
<Version>0.8.0</Version>
<Version>0.8.2</Version>
</PropertyGroup>

<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
Expand Down
18 changes: 18 additions & 0 deletions BungieSharper.Entities/Config/Entities.Config.ClanBanner.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
using System.Text.Json.Serialization;

namespace BungieSharper.Entities.Config.ClanBanner
{
public class ClanBannerSource { }

public class ClanBannerDecal
{
[JsonPropertyName("identifier")]
public string Identifier { get; set; }

[JsonPropertyName("foregroundPath")]
public string ForegroundPath { get; set; }

[JsonPropertyName("backgroundPath")]
public string BackgroundPath { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ public class DestinyRecordComponent
[JsonPropertyName("intervalsRedeemedCount")]
public int IntervalsRedeemedCount { get; set; }

/// <summary>If available, this is the number of times this record has been completed. For example, the number of times a seal title has been gilded.</summary>
[JsonPropertyName("completedCount"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public int? CompletedCount { get; set; }

/// <summary>If available, a list that describes which reward rewards should be shown (true) or hidden (false). This property is for regular record rewards, and not for interval objective rewards.</summary>
[JsonPropertyName("rewardVisibilty")]
public IEnumerable<bool> RewardVisibilty { get; set; }
Expand Down
8 changes: 8 additions & 0 deletions BungieSharper.Entities/Destiny/Entities.Destiny.Responses.cs
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,14 @@ public class DestinyProfileUserInfoCard
/// <summary>Display Name the player has chosen for themselves. The display name is optional when the data type is used as input to a platform API.</summary>
[JsonPropertyName("displayName")]
public string DisplayName { get; set; }

/// <summary>The bungie global display name, if set.</summary>
[JsonPropertyName("bungieGlobalDisplayName")]
public string BungieGlobalDisplayName { get; set; }

/// <summary>The bungie global display name code, if set.</summary>
[JsonPropertyName("bungieGlobalDisplayNameCode"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public short? BungieGlobalDisplayNameCode { get; set; }
}

/// <summary>
Expand Down
8 changes: 7 additions & 1 deletion BungieSharper.Entities/Destiny/Entities.Destiny.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1421,7 +1421,13 @@ public enum DestinyVendorItemState : int
Charity = 8192,

/// <summary>This indicates that the item has a seasonal reward expiration.</summary>
SeasonalRewardExpiration = 16384
SeasonalRewardExpiration = 16384,

/// <summary>This indicates that the sale item is the best deal among different choices.</summary>
BestDeal = 32768,

/// <summary>This indicates that the sale item is popular.</summary>
Popular = 65536
}

/// <summary>
Expand Down
14 changes: 13 additions & 1 deletion BungieSharper.Entities/Exceptions/Entities.Exceptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,8 @@ public enum PlatformErrorCodes : int
UserEmailMustBeVerified = 233,
UserMustAllowCustomerServiceEmails = 234,
NonTransactionalEmailSendFailure = 235,
UnknownErrorSettingGlobalDisplayName = 236,
DuplicateGlobalDisplayName = 237,
MessagingUnknownError = 300,
MessagingSelfError = 301,
MessagingSendThrottle = 302,
Expand Down Expand Up @@ -709,6 +711,8 @@ public enum PlatformErrorCodes : int
AwaWriteRequestTokenUsageLimitReached = 2806,
SteamWebApiError = 2900,
SteamWebNullResponseError = 2901,
SteamAccountRequired = 2902,
SteamNotAuthorized = 2903,
ClanFireteamNotFound = 3000,
ClanFireteamAddNoAlternatesForImmediate = 3001,
ClanFireteamFull = 3002,
Expand Down Expand Up @@ -741,6 +745,7 @@ public enum PlatformErrorCodes : int
ClanFireteamThrottle = 3029,
ClanFireteamTooManyOpenScheduledFireteams = 3030,
ClanFireteamCannotReopenScheduledFireteams = 3031,
ClanFireteamJoinNoAccountSpecified = 3032,
CrossSaveOverriddenAccountNotFound = 3200,
CrossSaveTooManyOverriddenPlatforms = 3201,
CrossSaveNoOverriddenPlatforms = 3202,
Expand Down Expand Up @@ -796,6 +801,13 @@ public enum PlatformErrorCodes : int
ApplePushFailedAuth = 3804,
ApplePushThrottled = 3805,
ApplePushServiceUnavailable = 3806,
NotAnImageOrVideo = 3807
NotAnImageOrVideo = 3807,
ErrorBungieFriendsBlockFailed = 3900,
ErrorBungieFriendsAutoReject = 3901,
ErrorBungieFriendsNoRequestFound = 3902,
ErrorBungieFriendsAlreadyFriends = 3903,
ErrorBungieFriendsUnableToRemoveRequest = 3904,
ErrorBungieFriendsUnableToRemove = 3905,
ErrorBungieFriendsIdenticalSourceTarget = 3906
}
}
16 changes: 9 additions & 7 deletions BungieSharper.Entities/Fireteam/Entities.Fireteam.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public enum FireteamDateRange : byte

public enum FireteamPlatform : byte
{
Unknown = 0,
Any = 0,
Playstation4 = 1,
XboxOne = 2,
Blizzard = 3,
Expand Down Expand Up @@ -141,12 +141,6 @@ public class FireteamUserInfoCard
[JsonPropertyName("FireteamMembershipType")]
public BungieMembershipType FireteamMembershipType { get; set; }

[JsonPropertyName("FireteamPlatformProfileUrl")]
public string FireteamPlatformProfileUrl { get; set; }

[JsonPropertyName("FireteamPlatformUniqueIdentifier")]
public string FireteamPlatformUniqueIdentifier { get; set; }

/// <summary>A platform specific additional display name - ex: psn Real Name, bnet Unique Name, etc.</summary>
[JsonPropertyName("supplementalDisplayName")]
public string SupplementalDisplayName { get; set; }
Expand Down Expand Up @@ -181,6 +175,14 @@ public class FireteamUserInfoCard
/// <summary>Display Name the player has chosen for themselves. The display name is optional when the data type is used as input to a platform API.</summary>
[JsonPropertyName("displayName")]
public string DisplayName { get; set; }

/// <summary>The bungie global display name, if set.</summary>
[JsonPropertyName("bungieGlobalDisplayName")]
public string BungieGlobalDisplayName { get; set; }

/// <summary>The bungie global display name code, if set.</summary>
[JsonPropertyName("bungieGlobalDisplayNameCode"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public short? BungieGlobalDisplayNameCode { get; set; }
}

public enum FireteamPlatformInviteResult : byte
Expand Down
8 changes: 8 additions & 0 deletions BungieSharper.Entities/GroupsV2/Entities.GroupsV2.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,14 @@ public class GroupUserInfoCard
/// <summary>Display Name the player has chosen for themselves. The display name is optional when the data type is used as input to a platform API.</summary>
[JsonPropertyName("displayName")]
public string DisplayName { get; set; }

/// <summary>The bungie global display name, if set.</summary>
[JsonPropertyName("bungieGlobalDisplayName")]
public string BungieGlobalDisplayName { get; set; }

/// <summary>The bungie global display name code, if set.</summary>
[JsonPropertyName("bungieGlobalDisplayNameCode"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public short? BungieGlobalDisplayNameCode { get; set; }
}

public class GroupResponse
Expand Down
116 changes: 116 additions & 0 deletions BungieSharper.Entities/Social/Entities.Social.Friends.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
using System.Collections.Generic;
using System.Text.Json.Serialization;

namespace BungieSharper.Entities.Social.Friends
{
public class BungieFriendListResponse
{
[JsonPropertyName("friends")]
public IEnumerable<Social.Friends.BungieFriend> Friends { get; set; }
}

public class BungieFriend
{
[JsonPropertyName("lastSeenAsMembershipId")]
public long LastSeenAsMembershipId { get; set; }

[JsonPropertyName("lastSeenAsBungieMembershipType")]
public BungieMembershipType LastSeenAsBungieMembershipType { get; set; }

[JsonPropertyName("bungieGlobalDisplayName")]
public string BungieGlobalDisplayName { get; set; }

[JsonPropertyName("bungieGlobalDisplayNameCode"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public short? BungieGlobalDisplayNameCode { get; set; }

[JsonPropertyName("onlineStatus")]
public Social.Friends.PresenceStatus OnlineStatus { get; set; }

[JsonPropertyName("onlineTitle")]
public Social.Friends.PresenceOnlineStateFlags OnlineTitle { get; set; }

[JsonPropertyName("relationship")]
public Social.Friends.FriendRelationshipState Relationship { get; set; }

[JsonPropertyName("bungieNetUser")]
public User.GeneralUser BungieNetUser { get; set; }
}

public enum PresenceStatus : int
{
OfflineOrUnknown = 0,
Online = 1
}

[System.Flags]
public enum PresenceOnlineStateFlags : int
{
None = 0,
Destiny1 = 1,
Destiny2 = 2
}

public enum FriendRelationshipState : int
{
Unknown = 0,
Friend = 1,
IncomingRequest = 2,
OutgoingRequest = 3
}

public class BungieFriendRequestListResponse
{
[JsonPropertyName("incomingRequests")]
public IEnumerable<Social.Friends.BungieFriend> IncomingRequests { get; set; }

[JsonPropertyName("outgoingRequests")]
public IEnumerable<Social.Friends.BungieFriend> OutgoingRequests { get; set; }
}

public enum PlatformFriendType : int
{
Unknown = 0,
Xbox = 1,
PSN = 2,
Steam = 3
}

public class PlatformFriendResponse
{
[JsonPropertyName("itemsPerPage")]
public int ItemsPerPage { get; set; }

[JsonPropertyName("currentPage")]
public int CurrentPage { get; set; }

[JsonPropertyName("hasMore")]
public bool HasMore { get; set; }

[JsonPropertyName("platformFriends")]
public IEnumerable<Social.Friends.PlatformFriend> PlatformFriends { get; set; }
}

public class PlatformFriend
{
[JsonPropertyName("platformDisplayName")]
public string PlatformDisplayName { get; set; }

[JsonPropertyName("friendPlatform")]
public Social.Friends.PlatformFriendType FriendPlatform { get; set; }

[JsonPropertyName("destinyMembershipId"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public long? DestinyMembershipId { get; set; }

[JsonPropertyName("destinyMembershipType"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public int? DestinyMembershipType { get; set; }

[JsonPropertyName("bungieNetMembershipId"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public long? BungieNetMembershipId { get; set; }

[JsonPropertyName("bungieGlobalDisplayName")]
public string BungieGlobalDisplayName { get; set; }

[JsonPropertyName("bungieGlobalDisplayNameCode"), JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public short? BungieGlobalDisplayNameCode { get; set; }
}
}
Loading

0 comments on commit 9742594

Please sign in to comment.