/*
Formats the the output from the popup so that the quill editor can properly display it
*/
export function OutputHTMLParser(inputHtmlFromQuillPopup: string): string {
return Compose(
[
ConvertMultipleSpacesToSingle,
FixTagSpaceOpenTag,
FixTagSpaceCloseTag,
PreserveNewlinesBr,
PreserveNewlinesPTags,
],
inputHtmlFromQuillPopup
);
}
export function ConvertMultipleSpacesToSingle(input: string): string {
return input.replace(/\s+/g, " ").trim();
}
export function PreserveNewlinesBr(input: string): string {
return input.replace(/
)/g, "
"); } export function PreserveNewlinesPTags(input: string): string { return input.replace(/
<\/p>/g, "
"); } export function FixTagSpaceOpenTag(input: string): string { // Open tag remove space on inside return input.replace(/(<(?!\/)[\w=\."'\s]*>) /g, "$1"); } export function FixTagSpaceCloseTag(input: string): string { // Close tag remove space on inside return input.replace(/ (<\/[\w]+>)/g, "$1"); } export function Compose