lighthouse 12.8.2-dev.20250923 → 12.8.2-dev.20250925

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.
Files changed (74) hide show
  1. package/cli/test/smokehouse/version-check.d.ts +1 -1
  2. package/core/audits/accessibility/aria-allowed-role.js +1 -0
  3. package/core/audits/accessibility/image-redundant-alt.js +1 -0
  4. package/core/audits/accessibility/landmark-one-main.js +0 -1
  5. package/core/audits/accessibility/table-duplicate-name.js +1 -0
  6. package/core/config/default-config.js +90 -71
  7. package/core/gather/gatherers/image-elements.js +32 -6
  8. package/core/lib/emulation.d.ts +10 -0
  9. package/core/lib/emulation.js +21 -6
  10. package/core/lib/legacy-javascript/legacy-javascript.js +4 -11
  11. package/core/lib/proto-preprocessor.js +5 -3
  12. package/core/scoring.js +1 -1
  13. package/package.json +3 -4
  14. package/readme.md +1 -1
  15. package/report/renderer/details-renderer.d.ts +1 -2
  16. package/report/renderer/details-renderer.js +0 -1
  17. package/shared/localization/locales/ar-XB.json +0 -30
  18. package/shared/localization/locales/ar.json +0 -30
  19. package/shared/localization/locales/bg.json +0 -30
  20. package/shared/localization/locales/ca.json +0 -30
  21. package/shared/localization/locales/cs.json +0 -30
  22. package/shared/localization/locales/da.json +0 -30
  23. package/shared/localization/locales/de.json +0 -30
  24. package/shared/localization/locales/el.json +0 -30
  25. package/shared/localization/locales/en-GB.json +0 -30
  26. package/shared/localization/locales/en-US.json +0 -30
  27. package/shared/localization/locales/en-XA.json +0 -30
  28. package/shared/localization/locales/en-XL.json +0 -30
  29. package/shared/localization/locales/es-419.json +0 -30
  30. package/shared/localization/locales/es.json +0 -30
  31. package/shared/localization/locales/fi.json +0 -30
  32. package/shared/localization/locales/fil.json +0 -30
  33. package/shared/localization/locales/fr.json +0 -30
  34. package/shared/localization/locales/he.json +0 -30
  35. package/shared/localization/locales/hi.json +0 -30
  36. package/shared/localization/locales/hr.json +0 -30
  37. package/shared/localization/locales/hu.json +0 -30
  38. package/shared/localization/locales/id.json +0 -30
  39. package/shared/localization/locales/it.json +0 -30
  40. package/shared/localization/locales/ja.json +0 -30
  41. package/shared/localization/locales/ko.json +0 -30
  42. package/shared/localization/locales/lt.json +0 -30
  43. package/shared/localization/locales/lv.json +0 -30
  44. package/shared/localization/locales/nl.json +0 -30
  45. package/shared/localization/locales/no.json +0 -30
  46. package/shared/localization/locales/pl.json +0 -30
  47. package/shared/localization/locales/pt-PT.json +0 -30
  48. package/shared/localization/locales/pt.json +0 -30
  49. package/shared/localization/locales/ro.json +0 -30
  50. package/shared/localization/locales/ru.json +0 -30
  51. package/shared/localization/locales/sk.json +0 -30
  52. package/shared/localization/locales/sl.json +0 -30
  53. package/shared/localization/locales/sr-Latn.json +0 -30
  54. package/shared/localization/locales/sr.json +0 -30
  55. package/shared/localization/locales/sv.json +0 -30
  56. package/shared/localization/locales/ta.json +0 -30
  57. package/shared/localization/locales/te.json +0 -30
  58. package/shared/localization/locales/th.json +0 -30
  59. package/shared/localization/locales/tr.json +0 -30
  60. package/shared/localization/locales/uk.json +0 -30
  61. package/shared/localization/locales/vi.json +0 -30
  62. package/shared/localization/locales/zh-HK.json +0 -30
  63. package/shared/localization/locales/zh-TW.json +0 -30
  64. package/shared/localization/locales/zh.json +0 -30
  65. package/shared/localization/locales.d.ts +2 -0
  66. package/shared/localization/locales.js +130 -139
  67. package/shared/tsconfig.json +2 -0
  68. package/tsconfig-base.json +1 -1
  69. package/tsconfig.json +1 -1
  70. package/types/artifacts.d.ts +0 -33
  71. package/core/audits/seo/font-size.d.ts +0 -24
  72. package/core/audits/seo/font-size.js +0 -344
  73. package/core/gather/gatherers/seo/font-size.d.ts +0 -131
  74. package/core/gather/gatherers/seo/font-size.js +0 -347
@@ -21,158 +21,149 @@
21
21
 
22
22
  // TODO(paulirish): Centralize locale inheritance (combining this & i18n.lookupLocale()), adopt cldr parentLocale rules.
23
23
 
24
- import fs from 'fs';
25
-
26
- import {getModuleDirectory} from '../esm-utils.js';
24
+ import ar from './locales/ar.json' with { type: 'json' };
25
+ import arXB from './locales/ar-XB.json' with { type: 'json' };
26
+ import bg from './locales/bg.json' with { type: 'json' };
27
+ import ca from './locales/ca.json' with { type: 'json'};
28
+ import cs from './locales/cs.json' with { type: 'json'};
29
+ import da from './locales/da.json' with { type: 'json'};
30
+ import de from './locales/de.json' with { type: 'json'};
31
+ import el from './locales/el.json' with { type: 'json'};
32
+ import enGB from './locales/en-GB.json' with { type: 'json'};
33
+ import enUS from './locales/en-US.json' with { type: 'json'};
34
+ import enXA from './locales/en-XA.json' with { type: 'json'};
35
+ import enXL from './locales/en-XL.json' with { type: 'json'};
36
+ import es from './locales/es.json' with { type: 'json'};
37
+ import es419 from './locales/es-419.json' with { type: 'json'};
38
+ import fi from './locales/fi.json' with { type: 'json'};
39
+ import fil from './locales/fil.json' with { type: 'json'};
40
+ import fr from './locales/fr.json' with { type: 'json'};
41
+ import he from './locales/he.json' with { type: 'json'};
42
+ import hi from './locales/hi.json' with { type: 'json'};
43
+ import hr from './locales/hr.json' with { type: 'json'};
44
+ import hu from './locales/hu.json' with { type: 'json'};
45
+ import id from './locales/id.json' with { type: 'json'};
46
+ import it from './locales/it.json' with { type: 'json'};
47
+ import ja from './locales/ja.json' with { type: 'json'};
48
+ import ko from './locales/ko.json' with { type: 'json'};
49
+ import lt from './locales/lt.json' with { type: 'json'};
50
+ import lv from './locales/lv.json' with { type: 'json'};
51
+ import nl from './locales/nl.json' with { type: 'json'};
52
+ import no from './locales/no.json' with { type: 'json'};
53
+ import pl from './locales/pl.json' with { type: 'json'};
54
+ import pt from './locales/pt.json' with { type: 'json'};
55
+ import ptPT from './locales/pt-PT.json' with { type: 'json'};
56
+ import ro from './locales/ro.json' with { type: 'json'};
57
+ import ru from './locales/ru.json' with { type: 'json'};
58
+ import sk from './locales/sk.json' with { type: 'json'};
59
+ import sl from './locales/sl.json' with { type: 'json'};
60
+ import sr from './locales/sr.json' with { type: 'json'};
61
+ import srLatn from './locales/sr-Latn.json' with { type: 'json'};
62
+ import sv from './locales/sv.json' with { type: 'json'};
63
+ import ta from './locales/ta.json' with { type: 'json'};
64
+ import te from './locales/te.json' with { type: 'json'};
65
+ import th from './locales/th.json' with { type: 'json'};
66
+ import tr from './locales/tr.json' with { type: 'json'};
67
+ import uk from './locales/uk.json' with { type: 'json'};
68
+ import vi from './locales/vi.json' with { type: 'json'};
69
+ import zh from './locales/zh.json' with { type: 'json'};
70
+ import zhHK from './locales/zh-HK.json' with { type: 'json'};
71
+ import zhTW from './locales/zh-TW.json' with { type: 'json'};
27
72
 
28
73
  /** @typedef {import('../../types/lhr/settings').Locale} Locale */
29
74
  /** @typedef {Record<string, {message: string}>} LhlMessages */
30
75
 
31
- const moduleDir = getModuleDirectory(import.meta);
32
-
33
- /** @type {Record<string, LhlMessages>} */
34
- const files = {
35
- 'ar': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ar.json`, 'utf8')),
36
- 'ar-XB': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ar-XB.json`, 'utf8')),
37
- 'bg': JSON.parse(fs.readFileSync(`${moduleDir}/locales/bg.json`, 'utf8')),
38
- 'ca': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ca.json`, 'utf8')),
39
- 'cs': JSON.parse(fs.readFileSync(`${moduleDir}/locales/cs.json`, 'utf8')),
40
- 'da': JSON.parse(fs.readFileSync(`${moduleDir}/locales/da.json`, 'utf8')),
41
- 'de': JSON.parse(fs.readFileSync(`${moduleDir}/locales/de.json`, 'utf8')),
42
- 'el': JSON.parse(fs.readFileSync(`${moduleDir}/locales/el.json`, 'utf8')),
43
- 'en-GB': JSON.parse(fs.readFileSync(`${moduleDir}/locales/en-GB.json`, 'utf8')),
44
- 'en-US': JSON.parse(fs.readFileSync(`${moduleDir}/locales/en-US.json`, 'utf8')),
45
- 'en-XA': JSON.parse(fs.readFileSync(`${moduleDir}/locales/en-XA.json`, 'utf8')),
46
- 'en-XL': JSON.parse(fs.readFileSync(`${moduleDir}/locales/en-XL.json`, 'utf8')),
47
- 'es': JSON.parse(fs.readFileSync(`${moduleDir}/locales/es.json`, 'utf8')),
48
- 'es-419': JSON.parse(fs.readFileSync(`${moduleDir}/locales/es-419.json`, 'utf8')),
49
- 'fi': JSON.parse(fs.readFileSync(`${moduleDir}/locales/fi.json`, 'utf8')),
50
- 'fil': JSON.parse(fs.readFileSync(`${moduleDir}/locales/fil.json`, 'utf8')),
51
- 'fr': JSON.parse(fs.readFileSync(`${moduleDir}/locales/fr.json`, 'utf8')),
52
- 'he': JSON.parse(fs.readFileSync(`${moduleDir}/locales/he.json`, 'utf8')),
53
- 'hi': JSON.parse(fs.readFileSync(`${moduleDir}/locales/hi.json`, 'utf8')),
54
- 'hr': JSON.parse(fs.readFileSync(`${moduleDir}/locales/hr.json`, 'utf8')),
55
- 'hu': JSON.parse(fs.readFileSync(`${moduleDir}/locales/hu.json`, 'utf8')),
56
- 'id': JSON.parse(fs.readFileSync(`${moduleDir}/locales/id.json`, 'utf8')),
57
- 'it': JSON.parse(fs.readFileSync(`${moduleDir}/locales/it.json`, 'utf8')),
58
- 'ja': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ja.json`, 'utf8')),
59
- 'ko': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ko.json`, 'utf8')),
60
- 'lt': JSON.parse(fs.readFileSync(`${moduleDir}/locales/lt.json`, 'utf8')),
61
- 'lv': JSON.parse(fs.readFileSync(`${moduleDir}/locales/lv.json`, 'utf8')),
62
- 'nl': JSON.parse(fs.readFileSync(`${moduleDir}/locales/nl.json`, 'utf8')),
63
- 'no': JSON.parse(fs.readFileSync(`${moduleDir}/locales/no.json`, 'utf8')),
64
- 'pl': JSON.parse(fs.readFileSync(`${moduleDir}/locales/pl.json`, 'utf8')),
65
- 'pt': JSON.parse(fs.readFileSync(`${moduleDir}/locales/pt.json`, 'utf8')),
66
- 'pt-PT': JSON.parse(fs.readFileSync(`${moduleDir}/locales/pt-PT.json`, 'utf8')),
67
- 'ro': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ro.json`, 'utf8')),
68
- 'ru': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ru.json`, 'utf8')),
69
- 'sk': JSON.parse(fs.readFileSync(`${moduleDir}/locales/sk.json`, 'utf8')),
70
- 'sl': JSON.parse(fs.readFileSync(`${moduleDir}/locales/sl.json`, 'utf8')),
71
- 'sr': JSON.parse(fs.readFileSync(`${moduleDir}/locales/sr.json`, 'utf8')),
72
- 'sr-Latn': JSON.parse(fs.readFileSync(`${moduleDir}/locales/sr-Latn.json`, 'utf8')),
73
- 'sv': JSON.parse(fs.readFileSync(`${moduleDir}/locales/sv.json`, 'utf8')),
74
- 'ta': JSON.parse(fs.readFileSync(`${moduleDir}/locales/ta.json`, 'utf8')),
75
- 'te': JSON.parse(fs.readFileSync(`${moduleDir}/locales/te.json`, 'utf8')),
76
- 'th': JSON.parse(fs.readFileSync(`${moduleDir}/locales/th.json`, 'utf8')),
77
- 'tr': JSON.parse(fs.readFileSync(`${moduleDir}/locales/tr.json`, 'utf8')),
78
- 'uk': JSON.parse(fs.readFileSync(`${moduleDir}/locales/uk.json`, 'utf8')),
79
- 'vi': JSON.parse(fs.readFileSync(`${moduleDir}/locales/vi.json`, 'utf8')),
80
- 'zh': JSON.parse(fs.readFileSync(`${moduleDir}/locales/zh.json`, 'utf8')),
81
- 'zh-HK': JSON.parse(fs.readFileSync(`${moduleDir}/locales/zh-HK.json`, 'utf8')),
82
- 'zh-TW': JSON.parse(fs.readFileSync(`${moduleDir}/locales/zh-TW.json`, 'utf8')),
83
- };
84
-
85
76
  // The keys within this const must exactly match the LH.Locale type in externs.d.ts
86
77
  /** @type {Record<Locale, LhlMessages>} */
87
78
  const locales = {
88
- 'en-US': files['en-US'], // The 'source' strings, with descriptions
89
- 'en': files['en-US'], // According to CLDR/ICU, 'en' == 'en-US' dates/numbers (Why?!)
79
+ 'en-US': enUS, // The 'source' strings, with descriptions
80
+ 'en': enUS, // According to CLDR/ICU, 'en' == 'en-US' dates/numbers (Why?!)
90
81
 
91
82
  // TODO: en-GB has just ~10 messages that are different from en-US. We should only ship those.
92
- 'en-AU': files['en-GB'], // Alias of 'en-GB'
93
- 'en-GB': files['en-GB'], // Alias of 'en-GB'
94
- 'en-IE': files['en-GB'], // Alias of 'en-GB'
95
- 'en-SG': files['en-GB'], // Alias of 'en-GB'
96
- 'en-ZA': files['en-GB'], // Alias of 'en-GB'
97
- 'en-IN': files['en-GB'], // Alias of 'en-GB'
83
+ 'en-AU': enGB, // Alias of 'en-GB'
84
+ 'en-GB': enGB, // Alias of 'en-GB'
85
+ 'en-IE': enGB, // Alias of 'en-GB'
86
+ 'en-SG': enGB, // Alias of 'en-GB'
87
+ 'en-ZA': enGB, // Alias of 'en-GB'
88
+ 'en-IN': enGB, // Alias of 'en-GB'
98
89
 
99
90
  // All locales from here have a messages file, though we allow fallback to the base locale when the files are identical
100
- 'ar-XB': files['ar-XB'], // psuedolocalization
101
- 'ar': files['ar'],
102
- 'bg': files['bg'],
103
- 'ca': files['ca'],
104
- 'cs': files['cs'],
105
- 'da': files['da'],
106
- 'de': files['de'], // de-AT, de-CH identical, so they fall back into de
107
- 'el': files['el'],
108
- 'en-XA': files['en-XA'], // psuedolocalization
109
- 'en-XL': files['en-XL'], // local psuedolocalization
110
- 'es': files['es'],
111
- 'es-419': files['es-419'],
91
+ 'ar-XB': arXB, // psuedolocalization
92
+ 'ar': ar,
93
+ 'bg': bg,
94
+ 'ca': ca,
95
+ 'cs': cs,
96
+ 'da': da,
97
+ 'de': de, // de-AT, de-CH identical, so they fall back into de
98
+ 'el': el,
99
+ 'en-XA': enXA, // psuedolocalization
100
+ 'en-XL': enXL, // local psuedolocalization
101
+ 'es': es,
102
+ 'es-419': es419,
112
103
  // Aliases of es-419: https://raw.githubusercontent.com/unicode-cldr/cldr-core/master/supplemental/parentLocales.json
113
- 'es-AR': files['es-419'],
114
- 'es-BO': files['es-419'],
115
- 'es-BR': files['es-419'],
116
- 'es-BZ': files['es-419'],
117
- 'es-CL': files['es-419'],
118
- 'es-CO': files['es-419'],
119
- 'es-CR': files['es-419'],
120
- 'es-CU': files['es-419'],
121
- 'es-DO': files['es-419'],
122
- 'es-EC': files['es-419'],
123
- 'es-GT': files['es-419'],
124
- 'es-HN': files['es-419'],
125
- 'es-MX': files['es-419'],
126
- 'es-NI': files['es-419'],
127
- 'es-PA': files['es-419'],
128
- 'es-PE': files['es-419'],
129
- 'es-PR': files['es-419'],
130
- 'es-PY': files['es-419'],
131
- 'es-SV': files['es-419'],
132
- 'es-US': files['es-419'],
133
- 'es-UY': files['es-419'],
134
- 'es-VE': files['es-419'],
104
+ 'es-AR': es419,
105
+ 'es-BO': es419,
106
+ 'es-BR': es419,
107
+ 'es-BZ': es419,
108
+ 'es-CL': es419,
109
+ 'es-CO': es419,
110
+ 'es-CR': es419,
111
+ 'es-CU': es419,
112
+ 'es-DO': es419,
113
+ 'es-EC': es419,
114
+ 'es-GT': es419,
115
+ 'es-HN': es419,
116
+ 'es-MX': es419,
117
+ 'es-NI': es419,
118
+ 'es-PA': es419,
119
+ 'es-PE': es419,
120
+ 'es-PR': es419,
121
+ 'es-PY': es419,
122
+ 'es-SV': es419,
123
+ 'es-US': es419,
124
+ 'es-UY': es419,
125
+ 'es-VE': es419,
135
126
 
136
- 'fi': files['fi'],
137
- 'fil': files['fil'],
138
- 'fr': files['fr'], // fr-CH identical, so it falls back into fr
139
- 'he': files['he'],
140
- 'hi': files['hi'],
141
- 'hr': files['hr'],
142
- 'hu': files['hu'],
143
- 'gsw': files['de'], // swiss german. identical (for our purposes) to 'de'
144
- 'id': files['id'],
145
- 'in': files['id'], // Alias of 'id'
146
- 'it': files['it'],
147
- 'iw': files['he'], // Alias of 'he'
148
- 'ja': files['ja'],
149
- 'ko': files['ko'],
150
- 'lt': files['lt'],
151
- 'lv': files['lv'],
152
- 'mo': files['ro'], // Alias of 'ro'
153
- 'nl': files['nl'],
154
- 'nb': files['no'], // Alias of 'no'
155
- 'no': files['no'],
156
- 'pl': files['pl'],
157
- 'pt': files['pt'], // pt-BR identical, so it falls back into pt
158
- 'pt-PT': files['pt-PT'],
159
- 'ro': files['ro'],
160
- 'ru': files['ru'],
161
- 'sk': files['sk'],
162
- 'sl': files['sl'],
163
- 'sr': files['sr'],
164
- 'sr-Latn': files['sr-Latn'],
165
- 'sv': files['sv'],
166
- 'ta': files['ta'],
167
- 'te': files['te'],
168
- 'th': files['th'],
169
- 'tl': files['fil'], // Alias of 'fil'
170
- 'tr': files['tr'],
171
- 'uk': files['uk'],
172
- 'vi': files['vi'],
173
- 'zh': files['zh'], // aka ZH-Hans, sometimes seen as zh-CN, zh-Hans-CN, Simplified Chinese
174
- 'zh-HK': files['zh-HK'], // aka zh-Hant-HK. Note: yue-Hant-HK is not supported.
175
- 'zh-TW': files['zh-TW'], // aka zh-Hant, zh-Hant-TW, Traditional Chinese
127
+ 'fi': fi,
128
+ 'fil': fil,
129
+ 'fr': fr, // fr-CH identical, so it falls back into fr
130
+ 'he': he,
131
+ 'hi': hi,
132
+ 'hr': hr,
133
+ 'hu': hu,
134
+ 'gsw': de, // swiss german. identical (for our purposes) to 'de'
135
+ 'id': id,
136
+ 'in': id, // Alias of 'id'
137
+ 'it': it,
138
+ 'iw': he, // Alias of 'he'
139
+ 'ja': ja,
140
+ 'ko': ko,
141
+ 'lt': lt,
142
+ 'lv': lv,
143
+ 'mo': ro, // Alias of 'ro'
144
+ 'nl': nl,
145
+ 'nb': no, // Alias of 'no'
146
+ 'no': no,
147
+ 'pl': pl,
148
+ 'pt': pt, // pt-BR identical, so it falls back into pt
149
+ 'pt-PT': ptPT,
150
+ 'ro': ro,
151
+ 'ru': ru,
152
+ 'sk': sk,
153
+ 'sl': sl,
154
+ 'sr': sr,
155
+ 'sr-Latn': srLatn,
156
+ 'sv': sv,
157
+ 'ta': ta,
158
+ 'te': te,
159
+ 'th': th,
160
+ 'tl': fil, // Alias of 'fil'
161
+ 'tr': tr,
162
+ 'uk': uk,
163
+ 'vi': vi,
164
+ 'zh': zh, // aka ZH-Hans, sometimes seen as zh-CN, zh-Hans-CN, Simplified Chinese
165
+ 'zh-HK': zhHK, // aka zh-Hant-HK. Note: yue-Hant-HK is not supported.
166
+ 'zh-TW': zhTW, // aka zh-Hant, zh-Hant-TW, Traditional Chinese
176
167
  };
177
168
 
178
169
  export {locales};
@@ -6,12 +6,14 @@
6
6
  // Only include `@types/node` from node_modules/.
7
7
  "types": ["node"],
8
8
  // "listFiles": true,
9
+ "resolveJsonModule": true,
9
10
  },
10
11
  "references": [
11
12
  {"path": "../types/lhr/"},
12
13
  ],
13
14
  "include": [
14
15
  "**/*.js",
16
+ "**/*.json",
15
17
  "types/**/*.d.ts",
16
18
  ],
17
19
  "exclude": [
@@ -12,7 +12,7 @@
12
12
  "rootDir": ".",
13
13
 
14
14
  "target": "es2022",
15
- "module": "es2022",
15
+ "module": "preserve",
16
16
  "moduleResolution": "node",
17
17
  "esModuleInterop": true,
18
18
 
package/tsconfig.json CHANGED
@@ -25,6 +25,7 @@
25
25
  "core/test/fixtures/unresolved-perflog.json",
26
26
  "core/test/fixtures/traces/lcp-m78.devtools.log.json",
27
27
  "core/lib/legacy-javascript/polyfill-graph-data.json",
28
+ "core/lib/legacy-javascript/polyfill-module-data.json",
28
29
  "shared/localization/locales/en-US.json",
29
30
  ],
30
31
  "exclude": [
@@ -55,7 +56,6 @@
55
56
  "core/test/gather/gatherers/link-elements-test.js",
56
57
  "core/test/gather/gatherers/offline-test.js",
57
58
  "core/test/gather/gatherers/runtime-exceptions-test.js",
58
- "core/test/gather/gatherers/seo/font-size-test.js",
59
59
  "core/test/gather/gatherers/source-maps-test.js",
60
60
  "core/test/gather/gatherers/stack-collector-test.js",
61
61
  "core/test/gather/gatherers/start-url-test.js",
@@ -118,8 +118,6 @@ export interface GathererArtifacts extends PublicGathererArtifacts {
118
118
  Doctype: Artifacts.Doctype | null;
119
119
  /** Information on the size of all DOM nodes in the page and the most extreme members. */
120
120
  DOMStats: Artifacts.DOMStats;
121
- /** Information on poorly sized font usage and the text affected by it. */
122
- FontSize: Artifacts.FontSize;
123
121
  /** All the iframe elements in the page. */
124
122
  IFrameElements: Artifacts.IFrameElement[];
125
123
  /** All the input elements, including associated form and label elements. */
@@ -384,37 +382,6 @@ declare module Artifacts {
384
382
  notRestoredReasonsTree: BFCacheNotRestoredReasonsTree;
385
383
  }
386
384
 
387
- interface FontSize {
388
- totalTextLength: number;
389
- failingTextLength: number;
390
- analyzedFailingTextLength: number;
391
- /** Elements that contain a text node that failed size criteria. */
392
- analyzedFailingNodesData: Array<{
393
- /* nodeId of the failing TextNode. */
394
- nodeId: number;
395
- fontSize: number;
396
- textLength: number;
397
- parentNode: {
398
- backendNodeId: number;
399
- attributes: string[];
400
- nodeName: string;
401
- parentNode?: {
402
- backendNodeId: number;
403
- attributes: string[];
404
- nodeName: string;
405
- };
406
- };
407
- cssRule?: {
408
- type: 'Regular' | 'Inline' | 'Attributes';
409
- range?: {startLine: number, startColumn: number};
410
- parentRule?: {origin: Crdp.CSS.StyleSheetOrigin, selectors: {text: string}[]};
411
- styleSheetId?: string;
412
- stylesheet?: Crdp.CSS.CSSStyleSheetHeader;
413
- cssProperties?: Array<Crdp.CSS.CSSProperty>;
414
- }
415
- }>
416
- }
417
-
418
385
  // TODO(bckenny): real type for parsed manifest.
419
386
  type Manifest = ReturnType<typeof parseManifest>;
420
387
 
@@ -1,24 +0,0 @@
1
- export default FontSize;
2
- export type FailingNodeData = LH.Artifacts.FontSize["analyzedFailingNodesData"][0];
3
- declare class FontSize extends Audit {
4
- /**
5
- * @param {LH.Artifacts} artifacts
6
- * @param {LH.Audit.Context} context
7
- * @return {Promise<LH.Audit.Product>}
8
- */
9
- static audit(artifacts: LH.Artifacts, context: LH.Audit.Context): Promise<LH.Audit.Product>;
10
- }
11
- export namespace UIStrings {
12
- let title: string;
13
- let failureTitle: string;
14
- let description: string;
15
- let displayValue: string;
16
- let explanationViewport: string;
17
- let additionalIllegibleText: string;
18
- let legibleText: string;
19
- let columnSelector: string;
20
- let columnPercentPageText: string;
21
- let columnFontSize: string;
22
- }
23
- import { Audit } from '../audit.js';
24
- //# sourceMappingURL=font-size.d.ts.map