@using JSMR.Application.VoiceWorks.Queries.Search @using JSMR.UI.Blazor.Services @using System.Globalization
@Product.Maker @foreach (var creator in Product.Creators) { @creator.Name }
@Product.Description
@foreach (var tag in Product.Tags) {
@tag.Name
}
@GetReleaseDateText(Product)
@((Product.WishlistCount ?? 0).ToString("n0"))
@if (Product.SalesDate is not null) {
@((Product.Downloads ?? 0).ToString("n0"))
} @*
*@
@if (Product.HasTrial || Product.HasChobit) {
}
@code { [Parameter] public required VoiceWorkSearchResult Product { get; set; } private string GetReleaseDateText(VoiceWorkSearchResult voiceWork) { if (voiceWork.SalesDate.HasValue) { return voiceWork.SalesDate.Value.ToString("MMMM d, yyyy", CultureInfo.CurrentCulture); } if (voiceWork.PlannedReleaseDate.HasValue) { return voiceWork.PlannedReleaseDate.Value.ToString("MMMM d, yyyy", CultureInfo.CurrentCulture); } if (voiceWork.ExpectedDate.HasValue) { string part = voiceWork.ExpectedDate.Value.Day switch { 21 => "Late", 11 => "Middle", _ => "Early" }; return $"{part} {voiceWork.ExpectedDate.Value.ToString("MMMM yyyy")}"; } return "Unknown"; } private string GetFlagClassSuffix(VoiceWorkSearchResult voiceWork) { switch (voiceWork.SubtitleLanguage) { case 1: return "us"; case 2: return "cn"; case 3: return "kr"; default: return "jp"; } } }