diff --git a/src/mergeAxeResults.ts b/src/mergeAxeResults.ts index 16bf678c..0c814522 100644 --- a/src/mergeAxeResults.ts +++ b/src/mergeAxeResults.ts @@ -38,6 +38,7 @@ import { import writeCsv from './mergeAxeResults/writeCsv.js'; import writeScanDetailsCsv from './mergeAxeResults/writeScanDetailsCsv.js'; import writeSitemap from './mergeAxeResults/writeSitemap.js'; +import writeSummaryHTML from './mergeAxeResults/writeSummaryHTML.js'; import populateScanPagesDetail from './mergeAxeResults/scanPages.js'; import sendWcagBreakdownToSentry from './mergeAxeResults/sentryTelemetry.js'; import type { AllIssues, PageInfo, RuleInfo } from './mergeAxeResults/types.js'; @@ -321,19 +322,6 @@ var scanItemsPromise = (async () => { }); }; -const writeSummaryHTML = async ( - allIssues: AllIssues, - storagePath: string, - htmlFilename = 'summary', -) => { - const ejsString = fs.readFileSync(path.join(dirname, './static/ejs/summary.ejs'), 'utf-8'); - const template = ejs.compile(ejsString, { - filename: path.join(dirname, './static/ejs/summary.ejs'), - }); - const html = template(allIssues); - fs.writeFileSync(`${storagePath}/${htmlFilename}.html`, html); -}; - const cleanUpJsonFiles = async (filesToDelete: string[]) => { consoleLogger.info('Cleaning up JSON files...'); filesToDelete.forEach(file => { diff --git a/src/mergeAxeResults/writeSummaryHTML.ts b/src/mergeAxeResults/writeSummaryHTML.ts new file mode 100644 index 00000000..0518eedb --- /dev/null +++ b/src/mergeAxeResults/writeSummaryHTML.ts @@ -0,0 +1,24 @@ +import fs from 'fs-extra'; +import ejs from 'ejs'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import type { AllIssues } from './types.js'; + +const filename = fileURLToPath(import.meta.url); +const dirname = path.dirname(filename); + +const writeSummaryHTML = async ( + allIssues: AllIssues, + storagePath: string, + htmlFilename = 'summary', +): Promise => { + const summaryTemplatePath = path.join(dirname, '../static/ejs/summary.ejs'); + const ejsString = fs.readFileSync(summaryTemplatePath, 'utf-8'); + const template = ejs.compile(ejsString, { + filename: summaryTemplatePath, + }); + const html = template(allIssues); + fs.writeFileSync(`${storagePath}/${htmlFilename}.html`, html); +}; + +export default writeSummaryHTML;