@code-pushup/lighthouse-plugin 0.85.0 → 0.87.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -3
- package/src/index.d.ts +1 -1
- package/src/index.js.map +1 -1
- package/src/lib/lighthouse-plugin.d.ts +3 -3
- package/src/lib/lighthouse-plugin.js +2 -1
- package/src/lib/lighthouse-plugin.js.map +1 -1
- package/src/lib/merge-categories.d.ts +4 -7
- package/src/lib/merge-categories.js +7 -46
- package/src/lib/merge-categories.js.map +1 -1
- package/src/lib/normalize-flags.js +3 -4
- package/src/lib/normalize-flags.js.map +1 -1
- package/src/lib/processing.d.ts +0 -12
- package/src/lib/processing.js +2 -62
- package/src/lib/processing.js.map +1 -1
- package/src/lib/runner/details/details.js +3 -4
- package/src/lib/runner/details/details.js.map +1 -1
- package/src/lib/runner/details/item-value.js +6 -8
- package/src/lib/runner/details/item-value.js.map +1 -1
- package/src/lib/runner/details/utils.js +2 -2
- package/src/lib/runner/details/utils.js.map +1 -1
- package/src/lib/runner/runner.js +4 -5
- package/src/lib/runner/runner.js.map +1 -1
- package/src/lib/runner/utils.js +5 -5
- package/src/lib/runner/utils.js.map +1 -1
- package/src/lib/types.d.ts +0 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@code-pushup/lighthouse-plugin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.87.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Code PushUp plugin for measuring web performance and quality with Lighthouse 🔥",
|
|
6
6
|
"homepage": "https://github.com/code-pushup/cli/tree/main/packages/plugin-lighthouse#readme",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
},
|
|
37
37
|
"type": "module",
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@code-pushup/models": "0.
|
|
40
|
-
"@code-pushup/utils": "0.
|
|
39
|
+
"@code-pushup/models": "0.87.0",
|
|
40
|
+
"@code-pushup/utils": "0.87.0",
|
|
41
41
|
"ansis": "^3.3.0",
|
|
42
42
|
"chrome-launcher": "^1.1.1",
|
|
43
43
|
"lighthouse": "^12.0.0",
|
package/src/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { lighthousePlugin } from './lib/lighthouse-plugin.js';
|
|
|
2
2
|
export { LIGHTHOUSE_REPORT_NAME } from './lib/runner/constants.js';
|
|
3
3
|
export { DEFAULT_CHROME_FLAGS, LIGHTHOUSE_PLUGIN_SLUG, LIGHTHOUSE_OUTPUT_PATH, } from './lib/constants.js';
|
|
4
4
|
export { lighthouseAuditRef, lighthouseGroupRef } from './lib/utils.js';
|
|
5
|
-
export type { LighthouseGroupSlug, LighthouseOptions
|
|
5
|
+
export type { LighthouseGroupSlug, LighthouseOptions } from './lib/types.js';
|
|
6
6
|
export { lighthousePlugin } from './lib/lighthouse-plugin.js';
|
|
7
7
|
export default lighthousePlugin;
|
|
8
8
|
export { mergeLighthouseCategories } from './lib/merge-categories.js';
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,eAAe,gBAAgB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { PluginConfig } from '@code-pushup/models';
|
|
2
|
-
import type { LighthouseOptions
|
|
3
|
-
export declare function lighthousePlugin(urls:
|
|
1
|
+
import type { PluginConfig, PluginUrls } from '@code-pushup/models';
|
|
2
|
+
import type { LighthouseOptions } from './types.js';
|
|
3
|
+
export declare function lighthousePlugin(urls: PluginUrls, flags?: LighthouseOptions): PluginConfig;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
|
+
import { normalizeUrlInput } from '@code-pushup/utils';
|
|
2
3
|
import { LIGHTHOUSE_PLUGIN_SLUG } from './constants.js';
|
|
3
4
|
import { normalizeFlags } from './normalize-flags.js';
|
|
4
|
-
import {
|
|
5
|
+
import { processAuditsAndGroups } from './processing.js';
|
|
5
6
|
import { createRunnerFunction } from './runner/runner.js';
|
|
6
7
|
export function lighthousePlugin(urls, flags) {
|
|
7
8
|
const { skipAudits, onlyAudits, onlyCategories, scoreTargets, ...unparsedFlags } = normalizeFlags(flags ?? {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lighthouse-plugin.js","sourceRoot":"","sources":["../../../src/lib/lighthouse-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"lighthouse-plugin.js","sourceRoot":"","sources":["../../../src/lib/lighthouse-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG1D,MAAM,UAAU,gBAAgB,CAC9B,IAAgB,EAChB,KAAyB;IAEzB,MAAM,EACJ,UAAU,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,GAAG,aAAa,EACjB,GAAG,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAEhC,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAElE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,sBAAsB,CAAC,cAAc,EAAE;QAChE,UAAU;QACV,UAAU;QACV,cAAc;KACf,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAChD,oBAAoB,CACkB,CAAC;IAEzC,OAAO;QACL,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,WAAW,CAAC,IAAI;QAC7B,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,MAAM;QACN,MAAM;QACN,MAAM,EAAE,oBAAoB,CAAC,cAAc,EAAE;YAC3C,UAAU;YACV,UAAU;YACV,cAAc;YACd,GAAG,aAAa;SACjB,CAAC;QACF,OAAO;QACP,GAAG,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { CategoryConfig, Group, PluginConfig } from '@code-pushup/models';
|
|
2
|
-
import
|
|
2
|
+
import { type PluginUrlContext } from '@code-pushup/utils';
|
|
3
|
+
import type { LighthouseGroupSlug } from './types.js';
|
|
3
4
|
/**
|
|
4
5
|
* Expands and aggregates categories for multi-URL Lighthouse runs.
|
|
5
6
|
*
|
|
@@ -24,18 +25,14 @@ export declare function mergeLighthouseCategories(plugin: Pick<PluginConfig, 'gr
|
|
|
24
25
|
* Creates a category config for a Lighthouse group, expanding it for each URL.
|
|
25
26
|
* Only used when user categories are not provided.
|
|
26
27
|
*/
|
|
27
|
-
export declare function createAggregatedCategory(groupSlug: LighthouseGroupSlug, context:
|
|
28
|
+
export declare function createAggregatedCategory(groupSlug: LighthouseGroupSlug, context: PluginUrlContext): CategoryConfig;
|
|
28
29
|
/**
|
|
29
30
|
* Expands all refs (groups and audits) in a user-defined category for each URL.
|
|
30
31
|
* Used when user categories are provided.
|
|
31
32
|
*/
|
|
32
|
-
export declare function expandAggregatedCategory(category: CategoryConfig, context:
|
|
33
|
+
export declare function expandAggregatedCategory(category: CategoryConfig, context: PluginUrlContext): CategoryConfig;
|
|
33
34
|
/**
|
|
34
35
|
* Extracts unique, unsuffixed group slugs from a list of groups.
|
|
35
36
|
* Useful for deduplicating and normalizing group slugs when generating categories.
|
|
36
37
|
*/
|
|
37
38
|
export declare function extractGroupSlugs(groups: Group[]): LighthouseGroupSlug[];
|
|
38
|
-
export declare class ContextValidationError extends Error {
|
|
39
|
-
constructor(message: string);
|
|
40
|
-
}
|
|
41
|
-
export declare function validateContext(context: PluginConfig['context']): asserts context is LighthouseContext;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { createCategoryRefs, expandCategoryRefs, removeIndex, shouldExpandForUrls, validateUrlContext, } from '@code-pushup/utils';
|
|
1
2
|
import { LIGHTHOUSE_GROUP_SLUGS, LIGHTHOUSE_PLUGIN_SLUG } from './constants.js';
|
|
2
|
-
import { orderSlug, shouldExpandForUrls } from './processing.js';
|
|
3
3
|
import { LIGHTHOUSE_GROUPS } from './runner/constants.js';
|
|
4
4
|
import { isLighthouseGroupSlug } from './utils.js';
|
|
5
5
|
/**
|
|
@@ -25,7 +25,7 @@ export function mergeLighthouseCategories(plugin, categories) {
|
|
|
25
25
|
if (!plugin.groups || plugin.groups.length === 0) {
|
|
26
26
|
return categories ?? [];
|
|
27
27
|
}
|
|
28
|
-
|
|
28
|
+
validateUrlContext(plugin.context);
|
|
29
29
|
if (!categories) {
|
|
30
30
|
return createCategories(plugin.groups, plugin.context);
|
|
31
31
|
}
|
|
@@ -57,14 +57,7 @@ export function createAggregatedCategory(groupSlug, context) {
|
|
|
57
57
|
slug: group.slug,
|
|
58
58
|
title: group.title,
|
|
59
59
|
...(group.description && { description: group.description }),
|
|
60
|
-
refs:
|
|
61
|
-
plugin: LIGHTHOUSE_PLUGIN_SLUG,
|
|
62
|
-
slug: shouldExpandForUrls(context.urlCount)
|
|
63
|
-
? orderSlug(group.slug, i)
|
|
64
|
-
: group.slug,
|
|
65
|
-
type: 'group',
|
|
66
|
-
weight: resolveWeight(context.weights, i),
|
|
67
|
-
})),
|
|
60
|
+
refs: createCategoryRefs(group.slug, LIGHTHOUSE_PLUGIN_SLUG, context),
|
|
68
61
|
};
|
|
69
62
|
}
|
|
70
63
|
/**
|
|
@@ -74,18 +67,9 @@ export function createAggregatedCategory(groupSlug, context) {
|
|
|
74
67
|
export function expandAggregatedCategory(category, context) {
|
|
75
68
|
return {
|
|
76
69
|
...category,
|
|
77
|
-
refs: category.refs.flatMap(ref =>
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
...ref,
|
|
81
|
-
slug: shouldExpandForUrls(context.urlCount)
|
|
82
|
-
? orderSlug(ref.slug, i)
|
|
83
|
-
: ref.slug,
|
|
84
|
-
weight: resolveWeight(context.weights, i, ref.weight),
|
|
85
|
-
}));
|
|
86
|
-
}
|
|
87
|
-
return [ref];
|
|
88
|
-
}),
|
|
70
|
+
refs: category.refs.flatMap(ref => ref.plugin === LIGHTHOUSE_PLUGIN_SLUG
|
|
71
|
+
? expandCategoryRefs(ref, context)
|
|
72
|
+
: [ref]),
|
|
89
73
|
};
|
|
90
74
|
}
|
|
91
75
|
/**
|
|
@@ -93,30 +77,7 @@ export function expandAggregatedCategory(category, context) {
|
|
|
93
77
|
* Useful for deduplicating and normalizing group slugs when generating categories.
|
|
94
78
|
*/
|
|
95
79
|
export function extractGroupSlugs(groups) {
|
|
96
|
-
const slugs = groups.map(({ slug }) => slug
|
|
80
|
+
const slugs = groups.map(({ slug }) => removeIndex(slug));
|
|
97
81
|
return [...new Set(slugs)].filter(isLighthouseGroupSlug);
|
|
98
82
|
}
|
|
99
|
-
export class ContextValidationError extends Error {
|
|
100
|
-
constructor(message) {
|
|
101
|
-
super(`Invalid Lighthouse context: ${message}`);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
export function validateContext(context) {
|
|
105
|
-
if (!context || typeof context !== 'object') {
|
|
106
|
-
throw new ContextValidationError('must be an object');
|
|
107
|
-
}
|
|
108
|
-
const { urlCount, weights } = context;
|
|
109
|
-
if (typeof urlCount !== 'number' || urlCount < 0) {
|
|
110
|
-
throw new ContextValidationError('urlCount must be a non-negative number');
|
|
111
|
-
}
|
|
112
|
-
if (!weights || typeof weights !== 'object') {
|
|
113
|
-
throw new ContextValidationError('weights must be an object');
|
|
114
|
-
}
|
|
115
|
-
if (Object.keys(weights).length !== urlCount) {
|
|
116
|
-
throw new ContextValidationError('weights count must match urlCount');
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
function resolveWeight(weights, index, userDefinedWeight) {
|
|
120
|
-
return weights[index + 1] ?? userDefinedWeight ?? 1;
|
|
121
|
-
}
|
|
122
83
|
//# sourceMappingURL=merge-categories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-categories.js","sourceRoot":"","sources":["../../../src/lib/merge-categories.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"merge-categories.js","sourceRoot":"","sources":["../../../src/lib/merge-categories.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import { LIGHTHOUSE_PLUGIN_SLUG } from './constants.js';
|
|
1
|
+
import ansis from 'ansis';
|
|
2
|
+
import { logger } from '@code-pushup/utils';
|
|
4
3
|
import { DEFAULT_CLI_FLAGS } from './runner/constants.js';
|
|
5
4
|
const { onlyCategories, ...originalDefaultCliFlags } = DEFAULT_CLI_FLAGS;
|
|
6
5
|
export const DEFAULT_LIGHTHOUSE_OPTIONS = {
|
|
@@ -49,7 +48,7 @@ export function logUnsupportedFlagsInUse(flags, displayCount = 3) {
|
|
|
49
48
|
const unsupportedFlagsInUse = Object.keys(flags).filter(flag => LIGHTHOUSE_UNSUPPORTED_CLI_FLAGS.has(flag));
|
|
50
49
|
if (unsupportedFlagsInUse.length > 0) {
|
|
51
50
|
const postFix = (count) => count > displayCount ? ` and ${count - displayCount} more.` : '';
|
|
52
|
-
|
|
51
|
+
logger.warn(`Used unsupported flags: ${ansis.bold(unsupportedFlagsInUse.slice(0, displayCount).join(', '))}${postFix(unsupportedFlagsInUse.length)}`);
|
|
53
52
|
}
|
|
54
53
|
}
|
|
55
54
|
//# sourceMappingURL=normalize-flags.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize-flags.js","sourceRoot":"","sources":["../../../src/lib/normalize-flags.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"normalize-flags.js","sourceRoot":"","sources":["../../../src/lib/normalize-flags.ts"],"names":[],"mappings":"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"}
|
package/src/lib/processing.d.ts
CHANGED
|
@@ -1,17 +1,5 @@
|
|
|
1
1
|
import type { Audit, Group } from '@code-pushup/models';
|
|
2
|
-
import type { LighthouseContext, LighthouseUrls } from './types.js';
|
|
3
2
|
import { type FilterOptions } from './utils.js';
|
|
4
|
-
export declare function orderSlug(slug: string, index: number): string;
|
|
5
|
-
export declare function shouldExpandForUrls(urlCount: number): boolean;
|
|
6
|
-
export declare function normalizeUrlInput(input: LighthouseUrls): {
|
|
7
|
-
urls: string[];
|
|
8
|
-
context: LighthouseContext;
|
|
9
|
-
};
|
|
10
|
-
export declare function extractUrls(input: LighthouseUrls): string[];
|
|
11
|
-
export declare function getWeightForUrl(input: LighthouseUrls, url: string): number;
|
|
12
|
-
export declare function getUrlIdentifier(url: string): string;
|
|
13
|
-
export declare function expandAuditsForUrls(audits: Audit[], urls: string[]): Audit[];
|
|
14
|
-
export declare function expandGroupsForUrls(groups: Group[], urls: string[]): Group[];
|
|
15
3
|
export declare function expandOptionsForUrls(options: FilterOptions, urlCount: number): FilterOptions;
|
|
16
4
|
export declare function processAuditsAndGroups(urls: string[], options: FilterOptions): {
|
|
17
5
|
audits: Audit[];
|
package/src/lib/processing.js
CHANGED
|
@@ -1,71 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { addIndex, expandAuditsForUrls, expandGroupsForUrls, shouldExpandForUrls, } from '@code-pushup/utils';
|
|
2
2
|
import { LIGHTHOUSE_GROUPS, LIGHTHOUSE_NAVIGATION_AUDITS, } from './runner/constants.js';
|
|
3
3
|
import { markSkippedAuditsAndGroups } from './utils.js';
|
|
4
|
-
export function orderSlug(slug, index) {
|
|
5
|
-
return `${slug}-${index + 1}`;
|
|
6
|
-
}
|
|
7
|
-
export function shouldExpandForUrls(urlCount) {
|
|
8
|
-
return urlCount > SINGLE_URL_THRESHOLD;
|
|
9
|
-
}
|
|
10
|
-
export function normalizeUrlInput(input) {
|
|
11
|
-
const urls = extractUrls(input);
|
|
12
|
-
const weights = Object.fromEntries(urls.map((url, index) => [index + 1, getWeightForUrl(input, url)]));
|
|
13
|
-
return {
|
|
14
|
-
urls,
|
|
15
|
-
context: {
|
|
16
|
-
urlCount: urls.length,
|
|
17
|
-
weights,
|
|
18
|
-
},
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
export function extractUrls(input) {
|
|
22
|
-
if (Array.isArray(input)) {
|
|
23
|
-
return input;
|
|
24
|
-
}
|
|
25
|
-
if (typeof input === 'string') {
|
|
26
|
-
return [input];
|
|
27
|
-
}
|
|
28
|
-
return Object.keys(input);
|
|
29
|
-
}
|
|
30
|
-
export function getWeightForUrl(input, url) {
|
|
31
|
-
if (typeof input === 'object' && !Array.isArray(input)) {
|
|
32
|
-
return input[url] ?? 1;
|
|
33
|
-
}
|
|
34
|
-
return 1;
|
|
35
|
-
}
|
|
36
|
-
export function getUrlIdentifier(url) {
|
|
37
|
-
try {
|
|
38
|
-
const { host, pathname } = new URL(url);
|
|
39
|
-
const path = pathname === '/' ? '' : pathname;
|
|
40
|
-
return `${host}${path}`;
|
|
41
|
-
}
|
|
42
|
-
catch {
|
|
43
|
-
return url;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
export function expandAuditsForUrls(audits, urls) {
|
|
47
|
-
return urls.flatMap((url, index) => audits.map(audit => ({
|
|
48
|
-
...audit,
|
|
49
|
-
slug: orderSlug(audit.slug, index),
|
|
50
|
-
title: `${audit.title} (${getUrlIdentifier(url)})`,
|
|
51
|
-
})));
|
|
52
|
-
}
|
|
53
|
-
export function expandGroupsForUrls(groups, urls) {
|
|
54
|
-
return urls.flatMap((url, index) => groups.map(group => ({
|
|
55
|
-
...group,
|
|
56
|
-
slug: orderSlug(group.slug, index),
|
|
57
|
-
title: `${group.title} (${getUrlIdentifier(url)})`,
|
|
58
|
-
refs: group.refs.map(ref => ({
|
|
59
|
-
...ref,
|
|
60
|
-
slug: orderSlug(ref.slug, index),
|
|
61
|
-
})),
|
|
62
|
-
})));
|
|
63
|
-
}
|
|
64
4
|
export function expandOptionsForUrls(options, urlCount) {
|
|
65
5
|
return Object.fromEntries(Object.entries(options).map(([key, value]) => [
|
|
66
6
|
key,
|
|
67
7
|
Array.isArray(value)
|
|
68
|
-
? value.flatMap(slug => Array.from({ length: urlCount }, (_, i) =>
|
|
8
|
+
? value.flatMap(slug => Array.from({ length: urlCount }, (_, i) => addIndex(slug, i)))
|
|
69
9
|
: value,
|
|
70
10
|
]));
|
|
71
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processing.js","sourceRoot":"","sources":["../../../src/lib/processing.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"processing.js","sourceRoot":"","sources":["../../../src/lib/processing.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAsB,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE5E,MAAM,UAAU,oBAAoB,CAClC,OAAsB,EACtB,QAAgB;IAEhB,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC5C,GAAG;QACH,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAClB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CACnB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAC9D;YACH,CAAC,CAAC,KAAK;KACV,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAc,EAAE,OAAsB;IAC3E,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,OAAO,0BAA0B,CAC/B,4BAA4B,EAC5B,iBAAiB,EACjB,OAAO,CACR,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,GAAG,mBAAmB,CACxC,4BAA4B,EAC5B,IAAI,CACL,CAAC;IACF,MAAM,cAAc,GAAG,mBAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IACpE,MAAM,eAAe,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,OAAO,0BAA0B,CAC/B,cAAc,EACd,cAAc,EACd,eAAe,CAChB,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import { PLUGIN_SLUG } from '../constants.js';
|
|
1
|
+
import ansis from 'ansis';
|
|
2
|
+
import { logger } from '@code-pushup/utils';
|
|
4
3
|
import { parseCriticalRequestChainToAuditDetails } from './critical-request-chain.type.js';
|
|
5
4
|
import { parseOpportunityToAuditDetailsTable } from './opportunity.type.js';
|
|
6
5
|
import { parseTableToAuditDetailsTable } from './table.type.js';
|
|
@@ -41,7 +40,7 @@ export function logUnsupportedDetails(lhrAudits) {
|
|
|
41
40
|
.map(({ details }) => details?.type)),
|
|
42
41
|
];
|
|
43
42
|
if (slugsWithDetailParsingErrors.length > 0) {
|
|
44
|
-
|
|
43
|
+
logger.warn(`Skipped parsing of unsupported audit details: ${ansis.bold(slugsWithDetailParsingErrors.join(', '))}.`);
|
|
45
44
|
}
|
|
46
45
|
}
|
|
47
46
|
//# sourceMappingURL=details.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"details.js","sourceRoot":"","sources":["../../../../../src/lib/runner/details/details.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"details.js","sourceRoot":"","sources":["../../../../../src/lib/runner/details/details.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,uCAAuC,EAAE,MAAM,kCAAkC,CAAC;AAC3F,OAAO,EAAE,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAEtE,MAAM,UAAU,cAAc,CAC5B,OAAsB;IAEtB,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAEzB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,MAAM,KAAK,GAAG,6BAA6B,CAAC,OAAO,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,KAAK,aAAa;YAChB,MAAM,WAAW,GAAG,mCAAmC,CAAC,OAAO,CAAC,CAAC;YACjE,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,KAAK,sBAAsB;YACzB,OAAO,uCAAuC,CAAC,OAAO,CAAC,CAAC;QAC1D,KAAK,cAAc;YACjB,MAAM,KAAK,GAAG,4BAA4B,CAAC,OAAO,CAAC,CAAC;YACpD,OAAO,EAAE,KAAK,EAAE,CAAC;QAEnB,mEAAmE;QAEnE,gFAAgF;IAClF,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,8BAA8B;AAC9B,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAkB;IAC7D,MAAM;IACN,WAAW;IACX,YAAY;IACZ,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,UAAU,qBAAqB,CAAC,SAAmB;IACvD,MAAM,4BAA4B,GAAG;QACnC,GAAG,IAAI,GAAG,CACR,SAAS;aACN,MAAM,CACL,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CACrE;aACA,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CACvC;KACF,CAAC;IACF,IAAI,4BAA4B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CACT,iDAAiD,KAAK,CAAC,IAAI,CACzD,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CACxC,GAAG,CACL,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { formatBytes, formatDuration, html, roundDecimals, truncateText,
|
|
1
|
+
import ansis from 'ansis';
|
|
2
|
+
import { formatBytes, formatDuration, html, logger, roundDecimals, truncateText, } from '@code-pushup/utils';
|
|
3
3
|
export function trimSlice(item, maxLength = 0) {
|
|
4
4
|
const str = String(item).trim();
|
|
5
5
|
return maxLength > 0 ? str.slice(0, maxLength) : str;
|
|
@@ -53,11 +53,11 @@ export function formatTableItemPropertyValue(itemValue, itemValueFormat) {
|
|
|
53
53
|
return truncateText(String(parsedItemValue), 500);
|
|
54
54
|
case 'multi': // @TODO
|
|
55
55
|
// @TODO log verbose first, then implement data type
|
|
56
|
-
|
|
56
|
+
logger.debug(`Format type ${ansis.bold('multi')} is not implemented`);
|
|
57
57
|
return '';
|
|
58
58
|
case 'thumbnail': // @TODO
|
|
59
59
|
// @TODO log verbose first, then implement data type
|
|
60
|
-
|
|
60
|
+
logger.debug(`Format type ${ansis.bold('thumbnail')} is not implemented`);
|
|
61
61
|
return '';
|
|
62
62
|
}
|
|
63
63
|
/* eslint-enable @typescript-eslint/no-magic-numbers */
|
|
@@ -102,13 +102,11 @@ export function parseTableItemPropertyValue(itemValue) {
|
|
|
102
102
|
return String(url);
|
|
103
103
|
case 'subitems':
|
|
104
104
|
// @TODO log verbose first, then implement data type
|
|
105
|
-
|
|
105
|
+
logger.debug(`Value type ${ansis.bold('subitems')} is not implemented`);
|
|
106
106
|
return '';
|
|
107
107
|
case 'debugdata':
|
|
108
108
|
// @TODO log verbose first, then implement data type
|
|
109
|
-
|
|
110
|
-
silent: true,
|
|
111
|
-
});
|
|
109
|
+
logger.debug(`Value type ${ansis.bold('debugdata')} is not implemented`);
|
|
112
110
|
return '';
|
|
113
111
|
}
|
|
114
112
|
// IcuMessage
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item-value.js","sourceRoot":"","sources":["../../../../../src/lib/runner/details/item-value.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"item-value.js","sourceRoot":"","sources":["../../../../../src/lib/runner/details/item-value.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ansis from 'ansis';
|
|
2
2
|
import { stringifyError } from '@code-pushup/utils';
|
|
3
3
|
export class LighthouseAuditDetailsParsingError extends Error {
|
|
4
4
|
constructor(type, rawTable, error) {
|
|
5
|
-
super(`Parsing lighthouse report details ${bold(type)} failed
|
|
5
|
+
super(`Parsing lighthouse report details ${ansis.bold(type)} failed:\nRaw data:\n${JSON.stringify(rawTable, null, 2)}\n${stringifyError(error)}`);
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/lib/runner/details/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/lib/runner/details/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,OAAO,kCAAmC,SAAQ,KAAK;IAC3D,YACE,IAAqB,EACrB,QAAiC,EACjC,KAAc;QAEd,KAAK,CACH,qCAAqC,KAAK,CAAC,IAAI,CAC7C,IAAI,CACL,wBAAwB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,KAAK,CAAC,EAAE,CACvF,CAAC;IACJ,CAAC;CACF"}
|
package/src/lib/runner/runner.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { runLighthouse } from 'lighthouse/cli/run.js';
|
|
2
2
|
import path from 'node:path';
|
|
3
|
-
import { ensureDirectoryExists, stringifyError, ui } from '@code-pushup/utils';
|
|
4
|
-
import { orderSlug, shouldExpandForUrls } from '../processing.js';
|
|
3
|
+
import { addIndex, ensureDirectoryExists, link, logger, shouldExpandForUrls, stringifyError, ui, } from '@code-pushup/utils';
|
|
5
4
|
import { DEFAULT_CLI_FLAGS } from './constants.js';
|
|
6
5
|
import { enrichFlags, getConfig, normalizeAuditOutputs, toAuditOutputs, withLocalTmpDir, } from './utils.js';
|
|
7
6
|
export function createRunnerFunction(urls, flags = DEFAULT_CLI_FLAGS) {
|
|
@@ -20,12 +19,12 @@ export function createRunnerFunction(urls, flags = DEFAULT_CLI_FLAGS) {
|
|
|
20
19
|
? auditOutputs
|
|
21
20
|
: auditOutputs.map(audit => ({
|
|
22
21
|
...audit,
|
|
23
|
-
slug:
|
|
22
|
+
slug: addIndex(audit.slug, index),
|
|
24
23
|
}));
|
|
25
24
|
return [...acc, ...processedOutputs];
|
|
26
25
|
}
|
|
27
26
|
catch (error) {
|
|
28
|
-
|
|
27
|
+
logger.warn(stringifyError(error));
|
|
29
28
|
return acc;
|
|
30
29
|
}
|
|
31
30
|
}, Promise.resolve([]));
|
|
@@ -43,7 +42,7 @@ async function runLighthouseForUrl(url, flags, config) {
|
|
|
43
42
|
}
|
|
44
43
|
const runnerResult = await runLighthouse(url, flags, config);
|
|
45
44
|
if (runnerResult == null) {
|
|
46
|
-
throw new Error(`Lighthouse did not produce a result for URL: ${url}`);
|
|
45
|
+
throw new Error(`Lighthouse did not produce a result for URL: ${link(url)}`);
|
|
47
46
|
}
|
|
48
47
|
const { lhr } = runnerResult;
|
|
49
48
|
return toAuditOutputs(Object.values(lhr.audits), flags);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../src/lib/runner/runner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../src/lib/runner/runner.ts"],"names":[],"mappings":"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"}
|
package/src/lib/runner/utils.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ansis from 'ansis';
|
|
2
2
|
import log from 'lighthouse-logger';
|
|
3
3
|
import desktopConfig from 'lighthouse/core/config/desktop-config.js';
|
|
4
4
|
import experimentalConfig from 'lighthouse/core/config/experimental-config.js';
|
|
5
5
|
import perfConfig from 'lighthouse/core/config/perf-config.js';
|
|
6
6
|
import os from 'node:os';
|
|
7
7
|
import path from 'node:path';
|
|
8
|
-
import { formatReportScore, importModule, pluginWorkDir, readJsonFile, stringifyError,
|
|
8
|
+
import { formatReportScore, importModule, logger, pluginWorkDir, readJsonFile, stringifyError, } from '@code-pushup/utils';
|
|
9
9
|
import { LIGHTHOUSE_PLUGIN_SLUG } from '../constants.js';
|
|
10
10
|
import { logUnsupportedDetails, toAuditDetails } from './details/details.js';
|
|
11
11
|
export function normalizeAuditOutputs(auditOutputs, flags = { skipAudits: [] }) {
|
|
@@ -14,7 +14,7 @@ export function normalizeAuditOutputs(auditOutputs, flags = { skipAudits: [] })
|
|
|
14
14
|
}
|
|
15
15
|
export class LighthouseAuditParsingError extends Error {
|
|
16
16
|
constructor(slug, error) {
|
|
17
|
-
super(`\nAudit ${bold(slug)} failed parsing details: \n${stringifyError(error)}`);
|
|
17
|
+
super(`\nAudit ${ansis.bold(slug)} failed parsing details: \n${stringifyError(error)}`);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
function formatBaseAuditOutput(lhrAudit) {
|
|
@@ -79,7 +79,7 @@ export async function getConfig(options = {}) {
|
|
|
79
79
|
return importModule({ filepath, format: 'esm' });
|
|
80
80
|
}
|
|
81
81
|
else {
|
|
82
|
-
|
|
82
|
+
logger.warn(`Format of file ${filepath} not supported`);
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
else if (preset != null) {
|
|
@@ -93,7 +93,7 @@ export async function getConfig(options = {}) {
|
|
|
93
93
|
default:
|
|
94
94
|
// as preset is a string literal the default case here is normally caught by TS and not possible to happen. Now in reality it can happen and preset could be a string not included in the literal.
|
|
95
95
|
// Therefore, we have to use `as string`. Otherwise, it will consider preset as type never
|
|
96
|
-
|
|
96
|
+
logger.warn(`Preset "${preset}" is not supported`);
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/lib/runner/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/lib/runner/utils.ts"],"names":[],"mappings":"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"}
|
package/src/lib/types.d.ts
CHANGED
|
@@ -9,9 +9,3 @@ export type LighthouseOptions = ExcludeNullableProps<Partial<Omit<CliFlags, '_'
|
|
|
9
9
|
scoreTargets?: PluginScoreTargets;
|
|
10
10
|
};
|
|
11
11
|
export type LighthouseGroupSlug = (typeof LIGHTHOUSE_GROUP_SLUGS)[number];
|
|
12
|
-
export type WeightedUrl = Record<string, number>;
|
|
13
|
-
export type LighthouseUrls = string | string[] | WeightedUrl;
|
|
14
|
-
export type LighthouseContext = {
|
|
15
|
-
urlCount: number;
|
|
16
|
-
weights: Record<number, number>;
|
|
17
|
-
};
|