feat(bp): /battle_pass/info response DTOs — string-typed wire numerics

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-05-26 23:05:51 -04:00
parent 7abdfe27cb
commit 6ed61ea9f1
6 changed files with 181 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
using MessagePack;
using System.Text.Json.Serialization;
namespace SVSim.EmulatedEntrypoint.Models.Dtos.BattlePass;
/// <summary>
/// Top-level /battle_pass/info response. premium_appeal_level is optional
/// (Wizard/BattlePassInfoTask.cs:77 — guarded by Keys.Contains).
/// </summary>
[MessagePackObject]
public class BattlePassInfoResponse
{
[JsonPropertyName("season_info")]
[Key("season_info")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public BattlePassSeasonInfoDto SeasonInfo { get; set; } = new();
[JsonPropertyName("reward_info")]
[Key("reward_info")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public BattlePassRewardInfoDto RewardInfo { get; set; } = new();
[JsonPropertyName("gauge_info")]
[Key("gauge_info")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public BattlePassGaugeInfoDto GaugeInfo { get; set; } = new();
[JsonPropertyName("premium_appeal_level")]
[Key("premium_appeal_level")]
public List<int>? PremiumAppealLevel { get; set; }
}