using System.Text.RegularExpressions;
namespace API.Helpers;
#nullable enable
public static class StringHelper
{
    /// 
    /// Used to squash duplicate break and new lines with a single new line.
    /// 
    /// Test br br Test -> Test br Test
    /// 
    /// 
    public static string? SquashBreaklines(string? summary)
    {
        if (string.IsNullOrWhiteSpace(summary))
        {
            return null;
        }
        // First standardize all br tags to 
 format
        summary = Regex.Replace(summary, @"
", "
", RegexOptions.IgnoreCase | RegexOptions.Compiled);
        // Replace multiple consecutive br tags with a single br tag
        summary = Regex.Replace(summary, @"(?:
\s*)+", "
 ", RegexOptions.IgnoreCase | RegexOptions.Compiled);
        // Normalize remaining whitespace (replace multiple spaces with a single space)
        summary = Regex.Replace(summary, @"\s+", " ").Trim();
        return summary.Trim();
    }
    /// 
    /// Removes the (Source: MangaDex) type of tags at the end of descriptions from AL
    /// 
    /// 
    /// 
    public static string? RemoveSourceInDescription(string? description)
    {
        return description?.Trim();
    }
}