@if (ShowEditButton)
{
}
@if (string.IsNullOrWhiteSpace(Value))
{
No notes
}
else
{
@((MarkupString)_html)
}
@code {
[Parameter] public string? Value { get; set; }
[Parameter] public bool ShowEditButton { get; set; }
[Parameter] public EventCallback OnEdit { get; set; }
[Parameter] public string? TestIdPrefix { get; set; }
private string BaseTestId =>
string.IsNullOrWhiteSpace(TestIdPrefix)
? "markdown-viewer"
: $"{TestIdPrefix}-markdown-viewer";
private string _html = string.Empty;
private static readonly MarkdownPipeline Pipeline =
new MarkdownPipelineBuilder()
.UseAdvancedExtensions()
.Build();
protected override void OnParametersSet()
{
_html = Markdown.ToHtml(Value ?? string.Empty, Pipeline);
}
private Task HandleEdit()
{
return OnEdit.HasDelegate
? OnEdit.InvokeAsync()
: Task.CompletedTask;
}
}