lighthouse 12.1.0-dev.20240630 → 12.1.0-dev.20240701

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 (115) hide show
  1. package/core/audits/byte-efficiency/byte-efficiency-audit.d.ts +5 -7
  2. package/core/audits/byte-efficiency/byte-efficiency-audit.js +3 -6
  3. package/core/audits/byte-efficiency/render-blocking-resources.d.ts +3 -7
  4. package/core/audits/byte-efficiency/render-blocking-resources.js +10 -16
  5. package/core/audits/dobetterweb/uses-http2.d.ts +4 -6
  6. package/core/audits/dobetterweb/uses-http2.js +2 -5
  7. package/core/audits/long-tasks.d.ts +6 -6
  8. package/core/audits/long-tasks.js +4 -4
  9. package/core/audits/prioritize-lcp-image.d.ts +1 -1
  10. package/core/audits/uses-rel-preload.d.ts +4 -3
  11. package/core/audits/uses-rel-preload.js +8 -6
  12. package/core/computed/critical-request-chains.d.ts +4 -3
  13. package/core/computed/critical-request-chains.js +5 -4
  14. package/core/computed/document-urls.js +1 -1
  15. package/core/computed/load-simulator.d.ts +3 -4
  16. package/core/computed/load-simulator.js +1 -1
  17. package/core/computed/main-resource.js +1 -1
  18. package/core/computed/metrics/lantern-first-contentful-paint.d.ts +2 -4
  19. package/core/computed/metrics/lantern-first-contentful-paint.js +1 -3
  20. package/core/computed/metrics/lantern-interactive.d.ts +2 -4
  21. package/core/computed/metrics/lantern-interactive.js +1 -3
  22. package/core/computed/metrics/lantern-largest-contentful-paint.d.ts +2 -4
  23. package/core/computed/metrics/lantern-largest-contentful-paint.js +1 -3
  24. package/core/computed/metrics/lantern-max-potential-fid.d.ts +2 -4
  25. package/core/computed/metrics/lantern-max-potential-fid.js +1 -3
  26. package/core/computed/metrics/lantern-metric.d.ts +8 -8
  27. package/core/computed/metrics/lantern-metric.js +1 -1
  28. package/core/computed/metrics/lantern-speed-index.d.ts +2 -4
  29. package/core/computed/metrics/lantern-speed-index.js +1 -3
  30. package/core/computed/metrics/lantern-total-blocking-time.d.ts +2 -4
  31. package/core/computed/metrics/lantern-total-blocking-time.js +1 -3
  32. package/core/computed/metrics/total-blocking-time.js +1 -1
  33. package/core/computed/network-analysis.js +1 -1
  34. package/core/computed/page-dependency-graph.d.ts +3 -6
  35. package/core/computed/page-dependency-graph.js +3 -4
  36. package/core/computed/tbt-impact-tasks.js +2 -2
  37. package/core/lib/asset-saver.js +1 -1
  38. package/core/lib/lantern/lantern.d.ts +2 -19
  39. package/core/lib/lantern/lantern.js +2 -45
  40. package/core/lib/lantern-trace-saver.d.ts +4 -6
  41. package/core/lib/lantern-trace-saver.js +2 -3
  42. package/core/lib/navigation-error.js +2 -2
  43. package/core/lib/network-recorder.js +1 -1
  44. package/core/lib/network-request.d.ts +4 -4
  45. package/core/lib/network-request.js +2 -2
  46. package/package.json +2 -2
  47. package/tsconfig.json +0 -11
  48. package/types/artifacts.d.ts +2 -2
  49. package/types/gatherer.d.ts +4 -5
  50. package/core/lib/lantern/BaseNode.d.ts +0 -163
  51. package/core/lib/lantern/BaseNode.js +0 -369
  52. package/core/lib/lantern/BaseNode.test.js +0 -385
  53. package/core/lib/lantern/CpuNode.d.ts +0 -43
  54. package/core/lib/lantern/CpuNode.js +0 -99
  55. package/core/lib/lantern/LanternError.d.ts +0 -8
  56. package/core/lib/lantern/LanternError.js +0 -9
  57. package/core/lib/lantern/Metric.d.ts +0 -69
  58. package/core/lib/lantern/Metric.js +0 -137
  59. package/core/lib/lantern/NetworkNode.d.ts +0 -49
  60. package/core/lib/lantern/NetworkNode.js +0 -136
  61. package/core/lib/lantern/PageDependencyGraph.d.ts +0 -82
  62. package/core/lib/lantern/PageDependencyGraph.js +0 -610
  63. package/core/lib/lantern/PageDependencyGraph.test.js +0 -654
  64. package/core/lib/lantern/TBTUtils.d.ts +0 -44
  65. package/core/lib/lantern/TBTUtils.js +0 -76
  66. package/core/lib/lantern/TBTUtils.test.d.ts +0 -2
  67. package/core/lib/lantern/TBTUtils.test.js +0 -130
  68. package/core/lib/lantern/TraceEngineComputationData.d.ts +0 -25
  69. package/core/lib/lantern/TraceEngineComputationData.js +0 -466
  70. package/core/lib/lantern/metrics/FirstContentfulPaint.d.ts +0 -79
  71. package/core/lib/lantern/metrics/FirstContentfulPaint.js +0 -198
  72. package/core/lib/lantern/metrics/FirstContentfulPaint.test.js +0 -54
  73. package/core/lib/lantern/metrics/Interactive.d.ts +0 -20
  74. package/core/lib/lantern/metrics/Interactive.js +0 -109
  75. package/core/lib/lantern/metrics/Interactive.test.js +0 -56
  76. package/core/lib/lantern/metrics/LargestContentfulPaint.d.ts +0 -19
  77. package/core/lib/lantern/metrics/LargestContentfulPaint.js +0 -105
  78. package/core/lib/lantern/metrics/LargestContentfulPaint.test.js +0 -42
  79. package/core/lib/lantern/metrics/MaxPotentialFID.d.ts +0 -24
  80. package/core/lib/lantern/metrics/MaxPotentialFID.js +0 -91
  81. package/core/lib/lantern/metrics/MetricTestUtils.d.ts +0 -19
  82. package/core/lib/lantern/metrics/MetricTestUtils.js +0 -48
  83. package/core/lib/lantern/metrics/SpeedIndex.d.ts +0 -32
  84. package/core/lib/lantern/metrics/SpeedIndex.js +0 -142
  85. package/core/lib/lantern/metrics/SpeedIndex.test.js +0 -83
  86. package/core/lib/lantern/metrics/TotalBlockingTime.d.ts +0 -25
  87. package/core/lib/lantern/metrics/TotalBlockingTime.js +0 -125
  88. package/core/lib/lantern/metrics/__snapshots__/FirstContentfulPaint.test.js.snap +0 -11
  89. package/core/lib/lantern/metrics/__snapshots__/Interactive.test.js.snap +0 -17
  90. package/core/lib/lantern/metrics/metrics.d.ts +0 -9
  91. package/core/lib/lantern/metrics/metrics.js +0 -16
  92. package/core/lib/lantern/simulation/ConnectionPool.d.ts +0 -48
  93. package/core/lib/lantern/simulation/ConnectionPool.js +0 -152
  94. package/core/lib/lantern/simulation/ConnectionPool.test.js +0 -195
  95. package/core/lib/lantern/simulation/Constants.d.ts +0 -52
  96. package/core/lib/lantern/simulation/Constants.js +0 -48
  97. package/core/lib/lantern/simulation/DNSCache.d.ts +0 -42
  98. package/core/lib/lantern/simulation/DNSCache.js +0 -74
  99. package/core/lib/lantern/simulation/DNSCache.test.js +0 -72
  100. package/core/lib/lantern/simulation/NetworkAnalyzer.d.ts +0 -209
  101. package/core/lib/lantern/simulation/NetworkAnalyzer.js +0 -597
  102. package/core/lib/lantern/simulation/NetworkAnalyzer.test.js +0 -475
  103. package/core/lib/lantern/simulation/SimulationTimingMap.d.ts +0 -153
  104. package/core/lib/lantern/simulation/SimulationTimingMap.js +0 -219
  105. package/core/lib/lantern/simulation/Simulator.d.ts +0 -157
  106. package/core/lib/lantern/simulation/Simulator.js +0 -593
  107. package/core/lib/lantern/simulation/Simulator.test.js +0 -434
  108. package/core/lib/lantern/simulation/TCPConnection.test.d.ts +0 -2
  109. package/core/lib/lantern/simulation/TCPConnection.test.js +0 -374
  110. package/core/lib/lantern/simulation/TcpConnection.d.ts +0 -89
  111. package/core/lib/lantern/simulation/TcpConnection.js +0 -230
  112. package/core/lib/lantern/simulation/simulation.d.ts +0 -21
  113. package/core/lib/lantern/simulation/simulation.js +0 -28
  114. package/core/lib/lantern/types/lantern.d.ts +0 -256
  115. package/core/lib/lantern/types/lantern.js +0 -7
@@ -1,209 +0,0 @@
1
- export type Summary = {
2
- min: number;
3
- max: number;
4
- avg: number;
5
- median: number;
6
- };
7
- export type RTTEstimateOptions = {
8
- /**
9
- * TCP connection handshake information will be used when available, but in some circumstances this data can be unreliable. This flag exposes an option to ignore the handshake data and use the coarse download/TTFB timing data.
10
- */
11
- forceCoarseEstimates?: boolean | undefined;
12
- /**
13
- * Coarse estimates include lots of extra time and noise multiply by some factor to deflate the estimates a bit.
14
- */
15
- coarseEstimateMultiplier?: number | undefined;
16
- /**
17
- * Useful for testing to isolate the different methods of estimation.
18
- */
19
- useDownloadEstimates?: boolean | undefined;
20
- /**
21
- * Useful for testing to isolate the different methods of estimation.
22
- */
23
- useSendStartEstimates?: boolean | undefined;
24
- /**
25
- * Useful for testing to isolate the different methods of estimation.
26
- */
27
- useHeadersEndEstimates?: boolean | undefined;
28
- };
29
- export class NetworkAnalyzer {
30
- /**
31
- * @return {string}
32
- */
33
- static get SUMMARY(): string;
34
- /**
35
- * @param {Lantern.NetworkRequest[]} records
36
- * @return {Map<string, Lantern.NetworkRequest[]>}
37
- */
38
- static groupByOrigin(records: Lantern.NetworkRequest[]): Map<string, Lantern.NetworkRequest[]>;
39
- /**
40
- * @param {number[]} values
41
- * @return {Summary}
42
- */
43
- static getSummary(values: number[]): Summary;
44
- /**
45
- * @param {Map<string,number[]>} values
46
- * @return {Map<string, Summary>}
47
- */
48
- static summarize(values: Map<string, number[]>): Map<string, Summary>;
49
- /** @typedef {{request: Lantern.NetworkRequest, timing: Lantern.ResourceTiming, connectionReused?: boolean}} RequestInfo */
50
- /**
51
- * @param {Lantern.NetworkRequest[]} requests
52
- * @param {(e: RequestInfo) => number | number[] | undefined} iteratee
53
- * @return {Map<string, number[]>}
54
- */
55
- static _estimateValueByOrigin(requests: Lantern.NetworkRequest[], iteratee: (e: {
56
- request: Lantern.NetworkRequest;
57
- timing: Lantern.ResourceTiming;
58
- connectionReused?: boolean | undefined;
59
- }) => number | number[] | undefined): Map<string, number[]>;
60
- /**
61
- * Estimates the observed RTT to each origin based on how long the connection setup.
62
- * For h1 and h2, this could includes two estimates - one for the TCP handshake, another for
63
- * SSL negotiation.
64
- * For h3, we get only one estimate since QUIC establishes a secure connection in a
65
- * single handshake.
66
- * This is the most accurate and preferred method of measurement when the data is available.
67
- *
68
- * @param {RequestInfo} info
69
- * @return {number[]|number|undefined}
70
- */
71
- static _estimateRTTViaConnectionTiming(info: {
72
- request: Lantern.NetworkRequest;
73
- timing: Lantern.ResourceTiming;
74
- connectionReused?: boolean | undefined;
75
- }): number[] | number | undefined;
76
- /**
77
- * Estimates the observed RTT to each origin based on how long a download took on a fresh connection.
78
- * NOTE: this will tend to overestimate the actual RTT quite significantly as the download can be
79
- * slow for other reasons as well such as bandwidth constraints.
80
- *
81
- * @param {RequestInfo} info
82
- * @return {number|undefined}
83
- */
84
- static _estimateRTTViaDownloadTiming(info: {
85
- request: Lantern.NetworkRequest;
86
- timing: Lantern.ResourceTiming;
87
- connectionReused?: boolean | undefined;
88
- }): number | undefined;
89
- /**
90
- * Estimates the observed RTT to each origin based on how long it took until Chrome could
91
- * start sending the actual request when a new connection was required.
92
- * NOTE: this will tend to overestimate the actual RTT as the request can be delayed for other
93
- * reasons as well such as more SSL handshakes if TLS False Start is not enabled.
94
- *
95
- * @param {RequestInfo} info
96
- * @return {number|undefined}
97
- */
98
- static _estimateRTTViaSendStartTiming(info: {
99
- request: Lantern.NetworkRequest;
100
- timing: Lantern.ResourceTiming;
101
- connectionReused?: boolean | undefined;
102
- }): number | undefined;
103
- /**
104
- * Estimates the observed RTT to each origin based on how long it took until Chrome received the
105
- * headers of the response (~TTFB).
106
- * NOTE: this is the most inaccurate way to estimate the RTT, but in some environments it's all
107
- * we have access to :(
108
- *
109
- * @param {RequestInfo} info
110
- * @return {number|undefined}
111
- */
112
- static _estimateRTTViaHeadersEndTiming(info: {
113
- request: Lantern.NetworkRequest;
114
- timing: Lantern.ResourceTiming;
115
- connectionReused?: boolean | undefined;
116
- }): number | undefined;
117
- /**
118
- * Given the RTT to each origin, estimates the observed server response times.
119
- *
120
- * @param {Lantern.NetworkRequest[]} records
121
- * @param {Map<string, number>} rttByOrigin
122
- * @return {Map<string, number[]>}
123
- */
124
- static _estimateResponseTimeByOrigin(records: Lantern.NetworkRequest[], rttByOrigin: Map<string, number>): Map<string, number[]>;
125
- /**
126
- * @param {Lantern.NetworkRequest[]} requests
127
- * @return {boolean}
128
- */
129
- static canTrustConnectionInformation(requests: Lantern.NetworkRequest[]): boolean;
130
- /**
131
- * Returns a map of requestId -> connectionReused, estimating the information if the information
132
- * available in the records themselves appears untrustworthy.
133
- *
134
- * @param {Lantern.NetworkRequest[]} records
135
- * @param {{forceCoarseEstimates: boolean}} [options]
136
- * @return {Map<string, boolean>}
137
- */
138
- static estimateIfConnectionWasReused(records: Lantern.NetworkRequest[], options?: {
139
- forceCoarseEstimates: boolean;
140
- } | undefined): Map<string, boolean>;
141
- /**
142
- * Estimates the RTT to each origin by examining observed network timing information.
143
- * Attempts to use the most accurate information first and falls back to coarser estimates when it
144
- * is unavailable.
145
- *
146
- * @param {Lantern.NetworkRequest[]} records
147
- * @param {RTTEstimateOptions} [options]
148
- * @return {Map<string, Summary>}
149
- */
150
- static estimateRTTByOrigin(records: Lantern.NetworkRequest[], options?: RTTEstimateOptions | undefined): Map<string, Summary>;
151
- /**
152
- * Estimates the server response time of each origin. RTT times can be passed in or will be
153
- * estimated automatically if not provided.
154
- *
155
- * @param {Lantern.NetworkRequest[]} records
156
- * @param {RTTEstimateOptions & {rttByOrigin?: Map<string, number>}} [options]
157
- * @return {Map<string, Summary>}
158
- */
159
- static estimateServerResponseTimeByOrigin(records: Lantern.NetworkRequest[], options?: (RTTEstimateOptions & {
160
- rttByOrigin?: Map<string, number> | undefined;
161
- }) | undefined): Map<string, Summary>;
162
- /**
163
- * Computes the average throughput for the given requests in bits/second.
164
- * Excludes data URI, failed or otherwise incomplete, and cached requests.
165
- * Returns Infinity if there were no analyzable network requests.
166
- *
167
- * @param {Lantern.NetworkRequest[]} records
168
- * @return {number}
169
- */
170
- static estimateThroughput(records: Lantern.NetworkRequest[]): number;
171
- /**
172
- * @param {Lantern.NetworkRequest[]} records
173
- */
174
- static computeRTTAndServerResponseTime(records: Lantern.NetworkRequest[]): {
175
- rtt: number;
176
- additionalRttByOrigin: Map<string, number>;
177
- serverResponseTimeByOrigin: Map<string, number>;
178
- };
179
- /**
180
- * @param {Lantern.NetworkRequest[]} records
181
- * @return {Lantern.Simulation.Settings['networkAnalysis']}
182
- */
183
- static analyze(records: Lantern.NetworkRequest[]): Lantern.Simulation.Settings['networkAnalysis'];
184
- /**
185
- * @template {Lantern.NetworkRequest} T
186
- * @param {Array<T>} records
187
- * @param {string} resourceUrl
188
- * @return {T|undefined}
189
- */
190
- static findResourceForUrl<T extends Lantern.NetworkRequest<any>>(records: T[], resourceUrl: string): T | undefined;
191
- /**
192
- * @template {Lantern.NetworkRequest} T
193
- * @param {Array<T>} records
194
- * @param {string} resourceUrl
195
- * @return {T|undefined}
196
- */
197
- static findLastDocumentForUrl<T_1 extends Lantern.NetworkRequest<any>>(records: T_1[], resourceUrl: string): T_1 | undefined;
198
- /**
199
- * Resolves redirect chain given a main document.
200
- * See: {@link NetworkAnalyzer.findLastDocumentForUrl}) for how to retrieve main document.
201
- *
202
- * @template {Lantern.NetworkRequest} T
203
- * @param {T} request
204
- * @return {T}
205
- */
206
- static resolveRedirects<T_2 extends Lantern.NetworkRequest<any>>(request: T_2): T_2;
207
- }
208
- import * as Lantern from '../lantern.js';
209
- //# sourceMappingURL=NetworkAnalyzer.d.ts.map