Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
ontext: function (text) {
const NOT_SAFE_IN_XML_1_0 = /[^\x09\x0A\x0D\x20-\xFF\x85\xA0-\uD7FF\uE000-\uFDCF\uFDE0-\uFFFD]/gm;
let sanitizedText = text.replace(NOT_SAFE_IN_XML_1_0, '');
if (currentParagraph) {
let currentText = new docx.TextRun(sanitizedText);
currentText.size(fontSize);
currentText.font(font);
if (boldActive) {
currentText.bold();
}
if(italicsActive) {
currentText.italic();
}
if (underlineActive) {
currentText.underline();
}
if (strikeActive) {
currentText.strike();
}
currentParagraph.addRun(currentText);
h1counter += 1;
currentParagraph = new docx.Paragraph();
currentParagraph.pageBreak();
boldActive = true;
let currentText = new docx.TextRun(h1counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentText.bold();
currentParagraph.addRun(currentText);
currentParagraph.spacing(h1marginspacing);
} else if (name === 'h2') {
h2counter += 1;
currentParagraph = new docx.Paragraph();
italicsActive = true;
let currentText = new docx.TextRun(h1counter + '.' + h2counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentText.italic();
currentParagraph.addRun(currentText);
currentParagraph.spacing(h2counter ===1 ? h2marginspacing1st : h2marginspacing);
} else if (name === 'h3') {
h3counter += 1;
currentParagraph = new docx.Paragraph();
let currentText = new docx.TextRun(h1counter + '.' + h2counter + '.' + h3counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentParagraph.addRun(currentText);
currentParagraph.spacing(h3counter === 1 ? h3marginspacing1st : h3marginspacing);
} else if (name === 'question') {
currentParagraph = new docx.Paragraph();
currentParagraph.center();
currentParagraph.spacing(exportitlespacing);
boldActive = true;
} else if (name === 'exportsubtitle') {
currentParagraph = new docx.Paragraph();
currentParagraph.center();
boldActive = true;
} else if (name === 'h1') {
h1counter += 1;
currentParagraph = new docx.Paragraph();
currentParagraph.pageBreak();
boldActive = true;
let currentText = new docx.TextRun(h1counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentText.bold();
currentParagraph.addRun(currentText);
currentParagraph.spacing(h1marginspacing);
} else if (name === 'h2') {
h2counter += 1;
currentParagraph = new docx.Paragraph();
italicsActive = true;
let currentText = new docx.TextRun(h1counter + '.' + h2counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentText.italic();
currentParagraph.addRun(currentText);
currentParagraph.spacing(h2counter ===1 ? h2marginspacing1st : h2marginspacing);
} else if (name === 'h2') {
h2counter += 1;
currentParagraph = new docx.Paragraph();
italicsActive = true;
let currentText = new docx.TextRun(h1counter + '.' + h2counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentText.italic();
currentParagraph.addRun(currentText);
currentParagraph.spacing(h2counter ===1 ? h2marginspacing1st : h2marginspacing);
} else if (name === 'h3') {
h3counter += 1;
currentParagraph = new docx.Paragraph();
let currentText = new docx.TextRun(h1counter + '.' + h2counter + '.' + h3counter + ' ');
currentText.size(fontSize);
currentText.font(font);
currentParagraph.addRun(currentText);
currentParagraph.spacing(h3counter === 1 ? h3marginspacing1st : h3marginspacing);
} else if (name === 'question') {
currentParagraph = new docx.Paragraph();
currentParagraph.spacing(paragraphspacing);
boldActive = true;
italicsActive = true;
} else if (name === 'ul') {
unorderedListActive = true;
} else if (name === 'ol') {
orderedListActive = true;
} else if (name === 'p' || name === 'li') {