UNPKG

alapa

Version:

A cutting-edge web development framework designed to revolutionize the way developers build modern web applications.

37 lines (36 loc) 1.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.escapeHTML = exports.escapeCode = void 0; exports.removeCommentsFromCode = removeCommentsFromCode; exports.removeCommentsFromTemplate = removeCommentsFromTemplate; const misc_1 = require("./regex/misc"); function removeCommentsFromCode(input) { return input.replace(misc_1.codeRegex, (match, codeBlock) => { const cleanedCode = codeBlock.replace(misc_1.commentsRegex, "").trim(); return `{% ${cleanedCode} %}`; // Reconstruct the matched string }); } function removeCommentsFromTemplate(input) { return input.replace(misc_1.templateCommentRegex, ""); } const escapeCode = (template) => { return template .replace(/\\/g, "\\\\") // Escape backslashes .replace(/`/g, "\\`") // Escape backticks .replace(/\$/g, "\\$") // Escape dollar signs .replace(/'/g, "\\'") // Escape single quotes .replace(/"/g, '\\"') // Escape double quotes .replace(/</g, "\\<") // Escape less than .replace(/>/g, "\\>") // Escape greater than .replace(/\n/g, "\\n") // Escape newlines .replace(/\r/g, "\\r"); // Escape carriage returns }; exports.escapeCode = escapeCode; const escapeHTML = (content) => { return content .replace(/</g, "&lt;") .replace(/>/g, "&gt;") .replace(/"/g, "&quot;") .replace(/'/g, "&#039;"); }; exports.escapeHTML = escapeHTML;