@if (BurmeseAiGenerated || EnglishAiGenerated || BurmeseNeedsReview || EnglishNeedsReview)
{
@AppLocalization.Text("common.translationReview", "AI-generated content is ready for review. Check it before saving.")
}
@if (showBurmese)
{
@BurmeseContent
}
else
{
@EnglishContent
}
@code {
[Parameter] public RenderFragment? BurmeseContent { get; set; }
[Parameter] public RenderFragment? EnglishContent { get; set; }
[Parameter] public bool BurmeseComplete { get; set; }
[Parameter] public bool EnglishComplete { get; set; }
[Parameter] public bool BurmeseAiGenerated { get; set; }
[Parameter] public bool EnglishAiGenerated { get; set; }
[Parameter] public bool BurmeseNeedsReview { get; set; }
[Parameter] public bool EnglishNeedsReview { get; set; }
[Inject] private UiLanguageService UiLanguageService { get; set; } = null!;
private bool showBurmese = true;
private string BurmeseStatus => GetStatus(BurmeseComplete, BurmeseAiGenerated, BurmeseNeedsReview);
private string EnglishStatus => GetStatus(EnglishComplete, EnglishAiGenerated, EnglishNeedsReview);
protected override void OnInitialized()
{
showBurmese = UiLanguageService.CurrentLanguage == AppLanguage.Burmese;
}
private void SelectTab(bool burmese) => showBurmese = burmese;
private static string GetStatus(bool complete, bool generated, bool needsReview) =>
generated ? "generated" : needsReview ? "review" : complete ? "complete" : "missing";
private static string GetStatusLabel(string status) => status switch
{
"complete" => AppLocalization.Text("common.complete", "Complete"),
"generated" => AppLocalization.Text("common.aiGenerated", "AI generated"),
"review" => AppLocalization.Text("common.needsReview", "Needs review"),
_ => AppLocalization.Text("common.missing", "Missing")
};
private static string GetBadgeClass(string status) => status switch
{
"complete" => "bg-emerald-50 text-emerald-700",
"generated" => "bg-violet-50 text-violet-700",
"review" => "bg-amber-50 text-amber-700",
_ => "bg-slate-100 text-slate-500"
};
}