17 lines
734 B
C#
17 lines
734 B
C#
using Ganss.Xss;
|
|
using Microsoft.Extensions.Localization;
|
|
using System.Text.Encodings.Web;
|
|
|
|
namespace EnvelopeGenerator.Web
|
|
{
|
|
public static class XSSExtensions
|
|
{
|
|
public static string? TryEncode(this string? value, UrlEncoder encoder) => value is null ? value : encoder.Encode(value);
|
|
|
|
public static string? TryEncode(this LocalizedString? value, UrlEncoder encoder) => value is null ? null : encoder.Encode(value);
|
|
|
|
public static string? TrySanitize(this string? html, HtmlSanitizer sanitizer) => html is null ? html : sanitizer.Sanitize(html);
|
|
|
|
public static string? TrySanitize(this LocalizedString? html, HtmlSanitizer sanitizer) => html is null ? null : sanitizer.Sanitize(html);
|
|
}
|
|
} |