Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

report: move renderer code to report/ #12690

Merged
merged 14 commits into from
Jun 25, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .npmignore
Original file line number Diff line number Diff line change
@@ -39,7 +39,6 @@ chromium-webtests
.tmp

# generated files
**/pages/scripts/lighthouse-report.js
*.report.html
*.dom.html
*.devtoolslog.json
2 changes: 1 addition & 1 deletion build/build-bundle.js
Original file line number Diff line number Diff line change
@@ -87,7 +87,7 @@ async function browserifyFile(entryPath, distPath) {
// Don't include the stringified report in DevTools - see devtools-report-assets.js
// Don't include in Lightrider - HTML generation isn't supported, so report assets aren't needed.
if (isDevtools(entryPath) || isLightrider(entryPath)) {
bundle.ignore(require.resolve('../lighthouse-core/report/html/html-report-assets.js'));
bundle.ignore(require.resolve('../report/report-assets.js'));
}

// Don't include locales in DevTools.
6 changes: 3 additions & 3 deletions build/build-dt-report-resources.js
Original file line number Diff line number Diff line change
@@ -12,8 +12,8 @@ const assert = require('assert').strict;

const distDir = path.join(__dirname, '..', 'dist', 'dt-report-resources');
const bundleOutFile = `${distDir}/report-generator.js`;
const generatorFilename = `./lighthouse-core/report/report-generator.js`;
const htmlReportAssets = require('../lighthouse-core/report/html/html-report-assets.js');
const generatorFilename = `./report/report-generator.js`;
const htmlReportAssets = require('../report/report-assets.js');

/**
* Used to save cached resources (Runtime.cachedResources).
@@ -30,7 +30,7 @@ fs.mkdirSync(distDir);

writeFile('report.js', htmlReportAssets.REPORT_JAVASCRIPT);
writeFile('report.css', htmlReportAssets.REPORT_CSS);
writeFile('template.html', htmlReportAssets.REPORT_TEMPLATE);
writeFile('standalone-template.html', htmlReportAssets.REPORT_TEMPLATE);
writeFile('templates.html', htmlReportAssets.REPORT_TEMPLATES);
writeFile('report.d.ts', 'export {}');
writeFile('report-generator.d.ts', 'export {}');
2 changes: 1 addition & 1 deletion build/build-lightrider-bundles.js
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@ const distDir = path.join(__dirname, '..', 'dist', 'lightrider');
const sourceDir = __dirname + '/../clients/lightrider';

const bundleOutFile = `${distDir}/report-generator-bundle.js`;
const generatorFilename = `./lighthouse-core/report/report-generator.js`;
const generatorFilename = `./report/report-generator.js`;

const entrySourceName = 'lightrider-entry.js';
const entryDistName = 'lighthouse-lr-bundle.js';
6 changes: 3 additions & 3 deletions build/build-treemap.js
Original file line number Diff line number Diff line change
@@ -64,9 +64,9 @@ async function run() {
fs.readFileSync(require.resolve('pako/dist/pako_inflate.js'), 'utf-8'),
/* eslint-enable max-len */
buildStrings(),
{path: '../../lighthouse-core/report/html/renderer/logger.js'},
{path: '../../lighthouse-core/report/html/renderer/i18n.js'},
{path: '../../lighthouse-core/report/html/renderer/text-encoding.js'},
{path: '../../report/renderer/logger.js'},
{path: '../../report/renderer/i18n.js'},
{path: '../../report/renderer/text-encoding.js'},
{path: '../../lighthouse-viewer/app/src/drag-and-drop.js'},
{path: '../../lighthouse-viewer/app/src/github-api.js'},
{path: '../../lighthouse-viewer/app/src/firebase-auth.js'},
4 changes: 2 additions & 2 deletions build/build-viewer.js
Original file line number Diff line number Diff line change
@@ -9,14 +9,14 @@ const fs = require('fs');
const browserify = require('browserify');
const GhPagesApp = require('./gh-pages-app.js');
const {minifyFileTransform} = require('./build-utils.js');
const htmlReportAssets = require('../lighthouse-core/report/html/html-report-assets.js');
const htmlReportAssets = require('../report/report-assets.js');

/**
* Build viewer, optionally deploying to gh-pages if `--deploy` flag was set.
*/
async function run() {
// JS bundle from browserified ReportGenerator.
const generatorFilename = `${__dirname}/../lighthouse-core/report/report-generator.js`;
const generatorFilename = `${__dirname}/../report/report-generator.js`;
const generatorBrowserify = browserify(generatorFilename, {standalone: 'ReportGenerator'})
.transform('@wardpeet/brfs', {
readFileSyncTransform: minifyFileTransform,
4 changes: 2 additions & 2 deletions clients/devtools-report-assets.js
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@
/**
* @fileoverview Instead of loading report assets form the filesystem, in Devtools we must load
* them via Runtime.cachedResources. We use this module to shim
* lighthouse-core/report/html/html-report-assets.js in Devtools.
* report/report-assets.js in Devtools.
*/

/* global globalThis */
@@ -28,7 +28,7 @@ module.exports = {
return cachedResources.get('third_party/lighthouse/report-assets/report.js');
},
get REPORT_TEMPLATE() {
return cachedResources.get('third_party/lighthouse/report-assets/template.html');
return cachedResources.get('third_party/lighthouse/report-assets/standalone-template.html');
},
get REPORT_TEMPLATES() {
return cachedResources.get('third_party/lighthouse/report-assets/templates.html');
2 changes: 1 addition & 1 deletion docs/architecture.md
Original file line number Diff line number Diff line change
@@ -13,7 +13,7 @@ _Some incomplete notes_
3. `defaultPass.devtoolslog.json`: A log of all the [DevTools Protocol](https://chromedevtools.github.io/devtools-protocol/) events. Primary signal about network requests and page state.
* **Audit** - The [audits](../lighthouse-core/audits) are tests for a single feature/optimization/metric. Using the Artifacts as input, an audit evaluates a test and resolves to a numeric score. See [Understanding Results](./understanding-results.md) for details of the LHR (Lighthouse Result object).
* **Computed Artifacts** - [Generated](../lighthouse-core/computed) on-demand from artifacts, these add additional meaning, and are often shared amongst multiple audits.
* **Report** - The report UI, created client-side from the LHR. See [HTML Report Generation Overview](../lighthouse-core/report/html/readme.md) for details.
* **Report** - The report UI, created client-side from the LHR. See [HTML Report Generation Overview](../report/readme.md) for details.

### Audit/Report terminology
* **Category** - Roll-up collection of audits and audit groups into a user-facing section of the report (eg. `Best Practices`). Applies weighting and overall scoring to the section. Examples: PWA, Accessibility, Best Practices.
2 changes: 1 addition & 1 deletion docs/hacking-tips.md
Original file line number Diff line number Diff line change
@@ -43,7 +43,7 @@ node generate_report.js > temp.report.html; open temp.report.html
// generate_report.js
'use strict';

const ReportGenerator = require('./lighthouse-core/report/report-generator');
const ReportGenerator = require('./report/report-generator.js');
const results = require('./temp.report.json');
const html = ReportGenerator.generateReportHtml(results);

2 changes: 2 additions & 0 deletions jest.config.js
Original file line number Diff line number Diff line change
@@ -11,6 +11,7 @@ module.exports = {
collectCoverageFrom: [
'**/lighthouse-core/**/*.js',
'**/lighthouse-cli/**/*.js',
'**/report/**/*.js',
'**/lighthouse-viewer/**/*.js',
],
coveragePathIgnorePatterns: [
@@ -22,6 +23,7 @@ module.exports = {
testMatch: [
'**/lighthouse-core/**/*-test.js',
'**/lighthouse-cli/**/*-test.js',
'**/report/**/*-test.js',
'**/lighthouse-core/test/fraggle-rock/**/*-test-pptr.js',
'**/lighthouse-treemap/**/*-test.js',
'**/lighthouse-treemap/**/*-test-pptr.js',
2 changes: 1 addition & 1 deletion lighthouse-core/audits/audit.js
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@

const {isUnderTest} = require('../lib/lh-env.js');
const statistics = require('../lib/statistics.js');
const Util = require('../report/html/renderer/util.js');
const Util = require('../../report/renderer/util.js');

const DEFAULT_PASS = 'defaultPass';

2 changes: 1 addition & 1 deletion lighthouse-core/computed/resource-summary.js
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@ const URL = require('../lib/url-shim.js');
const NetworkRequest = require('../lib/network-request.js');
const MainResource = require('./main-resource.js');
const Budget = require('../config/budget.js');
const Util = require('../report/html/renderer/util.js');
const Util = require('../../report/renderer/util.js');

/** @typedef {{count: number, resourceSize: number, transferSize: number}} ResourceEntry */

2 changes: 1 addition & 1 deletion lighthouse-core/lib/i18n/i18n.js
Original file line number Diff line number Diff line change
@@ -346,7 +346,7 @@ function getRendererFormattedStrings(locale) {
const localeMessages = LOCALES[locale];
if (!localeMessages) throw new Error(`Unsupported locale '${locale}'`);

const icuMessageIds = Object.keys(localeMessages).filter(f => f.includes('core/report/html/'));
const icuMessageIds = Object.keys(localeMessages).filter(f => f.startsWith('report/'));
const strings = /** @type {LH.I18NRendererStrings} */ ({});
for (const icuMessageId of icuMessageIds) {
const [filename, varName] = icuMessageId.split(' | ');
282 changes: 141 additions & 141 deletions lighthouse-core/lib/i18n/locales/ar-XB.json

Large diffs are not rendered by default.

286 changes: 143 additions & 143 deletions lighthouse-core/lib/i18n/locales/ar.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

286 changes: 143 additions & 143 deletions lighthouse-core/lib/i18n/locales/bg.json

Large diffs are not rendered by default.

282 changes: 141 additions & 141 deletions lighthouse-core/lib/i18n/locales/ca.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

282 changes: 141 additions & 141 deletions lighthouse-core/lib/i18n/locales/cs.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

282 changes: 141 additions & 141 deletions lighthouse-core/lib/i18n/locales/da.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

284 changes: 142 additions & 142 deletions lighthouse-core/lib/i18n/locales/de.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

282 changes: 141 additions & 141 deletions lighthouse-core/lib/i18n/locales/el.json

Large diffs are not rendered by default.

282 changes: 141 additions & 141 deletions lighthouse-core/lib/i18n/locales/en-GB.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

276 changes: 138 additions & 138 deletions lighthouse-core/lib/i18n/locales/en-US.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading