using Htmx.ApiDemo.Data; using Microsoft.AspNetCore.Antiforgery; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace Htmx.ApiDemo.Templates; public sealed class Register : RegisterBase { private readonly byte[] _errorData; private readonly byte[] _afTokenData; public Register(string? errorMessage = null, string? afToken = null) { _errorData = string.IsNullOrEmpty(errorMessage) ? [] : $"""
{System.Web.HttpUtility.HtmlEncode(errorMessage)}
""".ToUtf8Bytes(); _afTokenData = string.IsNullOrEmpty(afToken) ? [] : $"""""".ToUtf8Bytes(); } protected override void RenderErrorMessage(HtmxRenderContext ctx) => ctx.Writer.WriteUtf8(_errorData); protected override void RenderAntiforgeryToken(HtmxRenderContext ctx) => ctx.Writer.WriteUtf8(_afTokenData); }