pagespeed-quest 0.9.0 → 0.10.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/build/command.js +23 -3
- package/build/docs/assets/css/main.css +1 -0
- package/build/docs/assets/images/icons.png +0 -0
- package/build/docs/assets/images/icons@2x.png +0 -0
- package/build/docs/assets/images/widgets.png +0 -0
- package/build/docs/assets/images/widgets@2x.png +0 -0
- package/build/docs/assets/js/main.js +51 -0
- package/build/docs/classes/inventoryrepository.html +305 -0
- package/build/docs/classes/playbackproxy.html +524 -0
- package/build/docs/classes/proxy.html +474 -0
- package/build/docs/classes/recordingproxy.html +532 -0
- package/build/docs/classes/testproxy.html +497 -0
- package/build/docs/classes/throttle.html +425 -0
- package/build/docs/classes/throttlinglog.html +174 -0
- package/build/docs/classes/throttlingtransform.html +6297 -0
- package/build/docs/globals.html +1131 -0
- package/build/docs/index.html +348 -0
- package/build/docs/interfaces/beautifyresult.html +174 -0
- package/build/docs/interfaces/contentencodingpair.html +174 -0
- package/build/docs/interfaces/inventory.html +174 -0
- package/build/docs/interfaces/lighthouseoptions.html +230 -0
- package/build/docs/interfaces/playbacktransaction.html +272 -0
- package/build/docs/interfaces/proxyoptions.html +423 -0
- package/build/docs/interfaces/recordingsession.html +174 -0
- package/build/docs/interfaces/recordingtransaction.html +286 -0
- package/build/docs/interfaces/resource.html +314 -0
- package/build/docs/interfaces/transaction.html +258 -0
- package/build/docs/interfaces/withproxyoptions.html +418 -0
- package/build/logger.d.ts +2 -0
- package/build/logger.js +15 -0
- package/build/proxy.d.ts +35 -0
- package/build/proxy.js +96 -0
- package/build/recording.d.ts +2 -0
- package/build/recording.js +125 -8
- package/build/throttling.d.ts +33 -0
- package/build/throttling.js +89 -0
- package/package.json +4 -4
- package/scripts/postinstall.js +1 -1
|
@@ -0,0 +1,418 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html class="default no-js">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
6
|
+
<title>WithProxyOptions | pagespeed-quest</title>
|
|
7
|
+
<meta name="description" content="Documentation for pagespeed-quest">
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
9
|
+
<link rel="stylesheet" href="../assets/css/main.css">
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<header>
|
|
13
|
+
<div class="tsd-page-toolbar">
|
|
14
|
+
<div class="container">
|
|
15
|
+
<div class="table-wrap">
|
|
16
|
+
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
|
|
17
|
+
<div class="field">
|
|
18
|
+
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
|
|
19
|
+
<input id="tsd-search-field" type="text" />
|
|
20
|
+
</div>
|
|
21
|
+
<ul class="results">
|
|
22
|
+
<li class="state loading">Preparing search index...</li>
|
|
23
|
+
<li class="state failure">The search index is not available</li>
|
|
24
|
+
</ul>
|
|
25
|
+
<a href="../index.html" class="title">pagespeed-quest</a>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="table-cell" id="tsd-widgets">
|
|
28
|
+
<div id="tsd-filter">
|
|
29
|
+
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
|
|
30
|
+
<div class="tsd-filter-group">
|
|
31
|
+
<div class="tsd-select" id="tsd-filter-visibility">
|
|
32
|
+
<span class="tsd-select-label">All</span>
|
|
33
|
+
<ul class="tsd-select-list">
|
|
34
|
+
<li data-value="public">Public</li>
|
|
35
|
+
<li data-value="protected">Public/Protected</li>
|
|
36
|
+
<li data-value="private" class="selected">All</li>
|
|
37
|
+
</ul>
|
|
38
|
+
</div>
|
|
39
|
+
<input type="checkbox" id="tsd-filter-inherited" checked />
|
|
40
|
+
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
|
|
41
|
+
<input type="checkbox" id="tsd-filter-externals" checked />
|
|
42
|
+
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
|
|
43
|
+
<input type="checkbox" id="tsd-filter-only-exported" />
|
|
44
|
+
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
<div class="tsd-page-title">
|
|
53
|
+
<div class="container">
|
|
54
|
+
<ul class="tsd-breadcrumb">
|
|
55
|
+
<li>
|
|
56
|
+
<a href="../globals.html">Globals</a>
|
|
57
|
+
</li>
|
|
58
|
+
<li>
|
|
59
|
+
<a href="withproxyoptions.html">WithProxyOptions</a>
|
|
60
|
+
</li>
|
|
61
|
+
</ul>
|
|
62
|
+
<h1>Interface WithProxyOptions</h1>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</header>
|
|
66
|
+
<div class="container container-main">
|
|
67
|
+
<div class="row">
|
|
68
|
+
<div class="col-8 col-content">
|
|
69
|
+
<section class="tsd-panel tsd-hierarchy">
|
|
70
|
+
<h3>Hierarchy</h3>
|
|
71
|
+
<ul class="tsd-hierarchy">
|
|
72
|
+
<li>
|
|
73
|
+
<span class="tsd-signature-type">IProxyOptions</span>
|
|
74
|
+
<ul class="tsd-hierarchy">
|
|
75
|
+
<li>
|
|
76
|
+
<span class="target">WithProxyOptions</span>
|
|
77
|
+
</li>
|
|
78
|
+
</ul>
|
|
79
|
+
</li>
|
|
80
|
+
</ul>
|
|
81
|
+
</section>
|
|
82
|
+
<section class="tsd-panel-group tsd-index-group">
|
|
83
|
+
<h2>Index</h2>
|
|
84
|
+
<section class="tsd-panel tsd-index-panel">
|
|
85
|
+
<div class="tsd-index-content">
|
|
86
|
+
<section class="tsd-index-section ">
|
|
87
|
+
<h3>Properties</h3>
|
|
88
|
+
<ul class="tsd-index-list">
|
|
89
|
+
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="withproxyoptions.html#dirpath" class="tsd-kind-icon">dir<wbr>Path</a></li>
|
|
90
|
+
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="withproxyoptions.html#entryurl" class="tsd-kind-icon">entry<wbr>Url</a></li>
|
|
91
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#forcechunkedrequest" class="tsd-kind-icon">force<wbr>Chunked<wbr>Request</a></li>
|
|
92
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#forcesni" class="tsd-kind-icon">forceSNI</a></li>
|
|
93
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#host" class="tsd-kind-icon">host</a></li>
|
|
94
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#httpagent" class="tsd-kind-icon">http<wbr>Agent</a></li>
|
|
95
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#httpsagent" class="tsd-kind-icon">https<wbr>Agent</a></li>
|
|
96
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#httpsport" class="tsd-kind-icon">https<wbr>Port</a></li>
|
|
97
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#keepalive" class="tsd-kind-icon">keep<wbr>Alive</a></li>
|
|
98
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-overwrite"><a href="withproxyoptions.html#port" class="tsd-kind-icon">port</a></li>
|
|
99
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#sslcadir" class="tsd-kind-icon">ssl<wbr>CaDir</a></li>
|
|
100
|
+
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="withproxyoptions.html#throttling" class="tsd-kind-icon">throttling</a></li>
|
|
101
|
+
<li class="tsd-kind-property tsd-parent-kind-interface tsd-is-inherited"><a href="withproxyoptions.html#timeout" class="tsd-kind-icon">timeout</a></li>
|
|
102
|
+
</ul>
|
|
103
|
+
</section>
|
|
104
|
+
</div>
|
|
105
|
+
</section>
|
|
106
|
+
</section>
|
|
107
|
+
<section class="tsd-panel-group tsd-member-group ">
|
|
108
|
+
<h2>Properties</h2>
|
|
109
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
|
|
110
|
+
<a name="dirpath" class="tsd-anchor"></a>
|
|
111
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> dir<wbr>Path</h3>
|
|
112
|
+
<div class="tsd-signature tsd-kind-icon">dir<wbr>Path<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
|
|
113
|
+
<aside class="tsd-sources">
|
|
114
|
+
<ul>
|
|
115
|
+
<li>Defined in <a href="https://github.com/ideamans/pagespeed-quest/blob/8dbbaab/src/proxy.ts#L118">src/proxy.ts:118</a></li>
|
|
116
|
+
</ul>
|
|
117
|
+
</aside>
|
|
118
|
+
</section>
|
|
119
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
|
|
120
|
+
<a name="entryurl" class="tsd-anchor"></a>
|
|
121
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> entry<wbr>Url</h3>
|
|
122
|
+
<div class="tsd-signature tsd-kind-icon">entry<wbr>Url<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
|
|
123
|
+
<aside class="tsd-sources">
|
|
124
|
+
<ul>
|
|
125
|
+
<li>Defined in <a href="https://github.com/ideamans/pagespeed-quest/blob/8dbbaab/src/proxy.ts#L119">src/proxy.ts:119</a></li>
|
|
126
|
+
</ul>
|
|
127
|
+
</aside>
|
|
128
|
+
</section>
|
|
129
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
130
|
+
<a name="forcechunkedrequest" class="tsd-anchor"></a>
|
|
131
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> force<wbr>Chunked<wbr>Request</h3>
|
|
132
|
+
<div class="tsd-signature tsd-kind-icon">force<wbr>Chunked<wbr>Request<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
|
|
133
|
+
<aside class="tsd-sources">
|
|
134
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#forcechunkedrequest">forceChunkedRequest</a></p>
|
|
135
|
+
<ul>
|
|
136
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:37</li>
|
|
137
|
+
</ul>
|
|
138
|
+
</aside>
|
|
139
|
+
<div class="tsd-comment tsd-typography">
|
|
140
|
+
<div class="lead">
|
|
141
|
+
<ul>
|
|
142
|
+
<li>Setting this option will remove the content-length from the proxy to server request, forcing chunked encoding</li>
|
|
143
|
+
</ul>
|
|
144
|
+
</div>
|
|
145
|
+
</div>
|
|
146
|
+
</section>
|
|
147
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
148
|
+
<a name="forcesni" class="tsd-anchor"></a>
|
|
149
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> forceSNI</h3>
|
|
150
|
+
<div class="tsd-signature tsd-kind-icon">forceSNI<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
|
|
151
|
+
<aside class="tsd-sources">
|
|
152
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#forcesni">forceSNI</a></p>
|
|
153
|
+
<ul>
|
|
154
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:33</li>
|
|
155
|
+
</ul>
|
|
156
|
+
</aside>
|
|
157
|
+
<div class="tsd-comment tsd-typography">
|
|
158
|
+
<div class="lead">
|
|
159
|
+
<ul>
|
|
160
|
+
<li>force use of SNI by the client. Allow node-http-mitm-proxy to handle all HTTPS requests with a single internal server.</li>
|
|
161
|
+
</ul>
|
|
162
|
+
</div>
|
|
163
|
+
</div>
|
|
164
|
+
</section>
|
|
165
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
166
|
+
<a name="host" class="tsd-anchor"></a>
|
|
167
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> host</h3>
|
|
168
|
+
<div class="tsd-signature tsd-kind-icon">host<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
|
|
169
|
+
<aside class="tsd-sources">
|
|
170
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#host">host</a></p>
|
|
171
|
+
<ul>
|
|
172
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:21</li>
|
|
173
|
+
</ul>
|
|
174
|
+
</aside>
|
|
175
|
+
<div class="tsd-comment tsd-typography">
|
|
176
|
+
<div class="lead">
|
|
177
|
+
<p>host - The hostname or local address to listen on.</p>
|
|
178
|
+
</div>
|
|
179
|
+
</div>
|
|
180
|
+
</section>
|
|
181
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
182
|
+
<a name="httpagent" class="tsd-anchor"></a>
|
|
183
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> http<wbr>Agent</h3>
|
|
184
|
+
<div class="tsd-signature tsd-kind-icon">http<wbr>Agent<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Agent</span></div>
|
|
185
|
+
<aside class="tsd-sources">
|
|
186
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#httpagent">httpAgent</a></p>
|
|
187
|
+
<ul>
|
|
188
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:29</li>
|
|
189
|
+
</ul>
|
|
190
|
+
</aside>
|
|
191
|
+
<div class="tsd-comment tsd-typography">
|
|
192
|
+
<div class="lead">
|
|
193
|
+
<ul>
|
|
194
|
+
<li>The http.Agent to use when making http requests. Useful for chaining proxys. (default: internal Agent)</li>
|
|
195
|
+
</ul>
|
|
196
|
+
</div>
|
|
197
|
+
</div>
|
|
198
|
+
</section>
|
|
199
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
200
|
+
<a name="httpsagent" class="tsd-anchor"></a>
|
|
201
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> https<wbr>Agent</h3>
|
|
202
|
+
<div class="tsd-signature tsd-kind-icon">https<wbr>Agent<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Agent</span></div>
|
|
203
|
+
<aside class="tsd-sources">
|
|
204
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#httpsagent">httpsAgent</a></p>
|
|
205
|
+
<ul>
|
|
206
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:31</li>
|
|
207
|
+
</ul>
|
|
208
|
+
</aside>
|
|
209
|
+
<div class="tsd-comment tsd-typography">
|
|
210
|
+
<div class="lead">
|
|
211
|
+
<ul>
|
|
212
|
+
<li>The https.Agent to use when making https requests. Useful for chaining proxys. (default: internal Agent)</li>
|
|
213
|
+
</ul>
|
|
214
|
+
</div>
|
|
215
|
+
</div>
|
|
216
|
+
</section>
|
|
217
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
218
|
+
<a name="httpsport" class="tsd-anchor"></a>
|
|
219
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> https<wbr>Port</h3>
|
|
220
|
+
<div class="tsd-signature tsd-kind-icon">https<wbr>Port<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
|
|
221
|
+
<aside class="tsd-sources">
|
|
222
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#httpsport">httpsPort</a></p>
|
|
223
|
+
<ul>
|
|
224
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:35</li>
|
|
225
|
+
</ul>
|
|
226
|
+
</aside>
|
|
227
|
+
<div class="tsd-comment tsd-typography">
|
|
228
|
+
<div class="lead">
|
|
229
|
+
<ul>
|
|
230
|
+
<li>The port or named socket for https server to listen on. (forceSNI must be enabled)</li>
|
|
231
|
+
</ul>
|
|
232
|
+
</div>
|
|
233
|
+
</div>
|
|
234
|
+
</section>
|
|
235
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
236
|
+
<a name="keepalive" class="tsd-anchor"></a>
|
|
237
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> keep<wbr>Alive</h3>
|
|
238
|
+
<div class="tsd-signature tsd-kind-icon">keep<wbr>Alive<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
|
|
239
|
+
<aside class="tsd-sources">
|
|
240
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#keepalive">keepAlive</a></p>
|
|
241
|
+
<ul>
|
|
242
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:25</li>
|
|
243
|
+
</ul>
|
|
244
|
+
</aside>
|
|
245
|
+
<div class="tsd-comment tsd-typography">
|
|
246
|
+
<div class="lead">
|
|
247
|
+
<ul>
|
|
248
|
+
<li>enable HTTP persistent connection</li>
|
|
249
|
+
</ul>
|
|
250
|
+
</div>
|
|
251
|
+
</div>
|
|
252
|
+
</section>
|
|
253
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-overwrite">
|
|
254
|
+
<a name="port" class="tsd-anchor"></a>
|
|
255
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> port</h3>
|
|
256
|
+
<div class="tsd-signature tsd-kind-icon">port<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
|
|
257
|
+
<aside class="tsd-sources">
|
|
258
|
+
<p>Overrides <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#port">port</a></p>
|
|
259
|
+
<ul>
|
|
260
|
+
<li>Defined in <a href="https://github.com/ideamans/pagespeed-quest/blob/8dbbaab/src/proxy.ts#L117">src/proxy.ts:117</a></li>
|
|
261
|
+
</ul>
|
|
262
|
+
</aside>
|
|
263
|
+
</section>
|
|
264
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
265
|
+
<a name="sslcadir" class="tsd-anchor"></a>
|
|
266
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> ssl<wbr>CaDir</h3>
|
|
267
|
+
<div class="tsd-signature tsd-kind-icon">ssl<wbr>CaDir<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
|
|
268
|
+
<aside class="tsd-sources">
|
|
269
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#sslcadir">sslCaDir</a></p>
|
|
270
|
+
<ul>
|
|
271
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:23</li>
|
|
272
|
+
</ul>
|
|
273
|
+
</aside>
|
|
274
|
+
<div class="tsd-comment tsd-typography">
|
|
275
|
+
<div class="lead">
|
|
276
|
+
<ul>
|
|
277
|
+
<li>Path to the certificates cache directory (default: process.cwd() + '/.http-mitm-proxy')</li>
|
|
278
|
+
</ul>
|
|
279
|
+
</div>
|
|
280
|
+
</div>
|
|
281
|
+
</section>
|
|
282
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
|
|
283
|
+
<a name="throttling" class="tsd-anchor"></a>
|
|
284
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> throttling</h3>
|
|
285
|
+
<div class="tsd-signature tsd-kind-icon">throttling<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>flushIntervalMs<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>mbps<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>retryIntervalMs<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></div>
|
|
286
|
+
<aside class="tsd-sources">
|
|
287
|
+
<ul>
|
|
288
|
+
<li>Defined in <a href="https://github.com/ideamans/pagespeed-quest/blob/8dbbaab/src/proxy.ts#L120">src/proxy.ts:120</a></li>
|
|
289
|
+
</ul>
|
|
290
|
+
</aside>
|
|
291
|
+
<div class="tsd-type-declaration">
|
|
292
|
+
<h4>Type declaration</h4>
|
|
293
|
+
<ul class="tsd-parameters">
|
|
294
|
+
<li class="tsd-parameter">
|
|
295
|
+
<h5><span class="tsd-flag ts-flagOptional">Optional</span> flush<wbr>Interval<wbr>Ms<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5>
|
|
296
|
+
</li>
|
|
297
|
+
<li class="tsd-parameter">
|
|
298
|
+
<h5>mbps<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5>
|
|
299
|
+
</li>
|
|
300
|
+
<li class="tsd-parameter">
|
|
301
|
+
<h5><span class="tsd-flag ts-flagOptional">Optional</span> retry<wbr>Interval<wbr>Ms<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5>
|
|
302
|
+
</li>
|
|
303
|
+
</ul>
|
|
304
|
+
</div>
|
|
305
|
+
</section>
|
|
306
|
+
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
307
|
+
<a name="timeout" class="tsd-anchor"></a>
|
|
308
|
+
<h3><span class="tsd-flag ts-flagOptional">Optional</span> timeout</h3>
|
|
309
|
+
<div class="tsd-signature tsd-kind-icon">timeout<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
|
|
310
|
+
<aside class="tsd-sources">
|
|
311
|
+
<p>Inherited from <a href="proxyoptions.html">ProxyOptions</a>.<a href="proxyoptions.html#timeout">timeout</a></p>
|
|
312
|
+
<ul>
|
|
313
|
+
<li>Defined in node_modules/http-mitm-proxy/index.d.ts:27</li>
|
|
314
|
+
</ul>
|
|
315
|
+
</aside>
|
|
316
|
+
<div class="tsd-comment tsd-typography">
|
|
317
|
+
<div class="lead">
|
|
318
|
+
<ul>
|
|
319
|
+
<li>The number of milliseconds of inactivity before a socket is presumed to have timed out. Defaults to no timeout.</li>
|
|
320
|
+
</ul>
|
|
321
|
+
</div>
|
|
322
|
+
</div>
|
|
323
|
+
</section>
|
|
324
|
+
</section>
|
|
325
|
+
</div>
|
|
326
|
+
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
|
|
327
|
+
<nav class="tsd-navigation primary">
|
|
328
|
+
<ul>
|
|
329
|
+
<li class="globals ">
|
|
330
|
+
<a href="../globals.html"><em>Globals</em></a>
|
|
331
|
+
</li>
|
|
332
|
+
</ul>
|
|
333
|
+
</nav>
|
|
334
|
+
<nav class="tsd-navigation secondary menu-sticky">
|
|
335
|
+
<ul class="before-current">
|
|
336
|
+
</ul>
|
|
337
|
+
<ul class="current">
|
|
338
|
+
<li class="current tsd-kind-interface">
|
|
339
|
+
<a href="withproxyoptions.html" class="tsd-kind-icon">With<wbr>Proxy<wbr>Options</a>
|
|
340
|
+
<ul>
|
|
341
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface">
|
|
342
|
+
<a href="withproxyoptions.html#dirpath" class="tsd-kind-icon">dir<wbr>Path</a>
|
|
343
|
+
</li>
|
|
344
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface">
|
|
345
|
+
<a href="withproxyoptions.html#entryurl" class="tsd-kind-icon">entry<wbr>Url</a>
|
|
346
|
+
</li>
|
|
347
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
348
|
+
<a href="withproxyoptions.html#forcechunkedrequest" class="tsd-kind-icon">force<wbr>Chunked<wbr>Request</a>
|
|
349
|
+
</li>
|
|
350
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
351
|
+
<a href="withproxyoptions.html#forcesni" class="tsd-kind-icon">forceSNI</a>
|
|
352
|
+
</li>
|
|
353
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
354
|
+
<a href="withproxyoptions.html#host" class="tsd-kind-icon">host</a>
|
|
355
|
+
</li>
|
|
356
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
357
|
+
<a href="withproxyoptions.html#httpagent" class="tsd-kind-icon">http<wbr>Agent</a>
|
|
358
|
+
</li>
|
|
359
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
360
|
+
<a href="withproxyoptions.html#httpsagent" class="tsd-kind-icon">https<wbr>Agent</a>
|
|
361
|
+
</li>
|
|
362
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
363
|
+
<a href="withproxyoptions.html#httpsport" class="tsd-kind-icon">https<wbr>Port</a>
|
|
364
|
+
</li>
|
|
365
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
366
|
+
<a href="withproxyoptions.html#keepalive" class="tsd-kind-icon">keep<wbr>Alive</a>
|
|
367
|
+
</li>
|
|
368
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-overwrite">
|
|
369
|
+
<a href="withproxyoptions.html#port" class="tsd-kind-icon">port</a>
|
|
370
|
+
</li>
|
|
371
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
372
|
+
<a href="withproxyoptions.html#sslcadir" class="tsd-kind-icon">ssl<wbr>CaDir</a>
|
|
373
|
+
</li>
|
|
374
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface">
|
|
375
|
+
<a href="withproxyoptions.html#throttling" class="tsd-kind-icon">throttling</a>
|
|
376
|
+
</li>
|
|
377
|
+
<li class=" tsd-kind-property tsd-parent-kind-interface tsd-is-inherited">
|
|
378
|
+
<a href="withproxyoptions.html#timeout" class="tsd-kind-icon">timeout</a>
|
|
379
|
+
</li>
|
|
380
|
+
</ul>
|
|
381
|
+
</li>
|
|
382
|
+
</ul>
|
|
383
|
+
<ul class="after-current">
|
|
384
|
+
</ul>
|
|
385
|
+
</nav>
|
|
386
|
+
</div>
|
|
387
|
+
</div>
|
|
388
|
+
</div>
|
|
389
|
+
<footer class="with-border-bottom">
|
|
390
|
+
<div class="container">
|
|
391
|
+
<h2>Legend</h2>
|
|
392
|
+
<div class="tsd-legend-group">
|
|
393
|
+
<ul class="tsd-legend">
|
|
394
|
+
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
|
|
395
|
+
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
|
|
396
|
+
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
|
|
397
|
+
</ul>
|
|
398
|
+
<ul class="tsd-legend">
|
|
399
|
+
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
|
|
400
|
+
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
|
|
401
|
+
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
|
|
402
|
+
</ul>
|
|
403
|
+
<ul class="tsd-legend">
|
|
404
|
+
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
|
|
405
|
+
</ul>
|
|
406
|
+
<ul class="tsd-legend">
|
|
407
|
+
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
|
|
408
|
+
</ul>
|
|
409
|
+
</div>
|
|
410
|
+
</div>
|
|
411
|
+
</footer>
|
|
412
|
+
<div class="container tsd-generator">
|
|
413
|
+
<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p>
|
|
414
|
+
</div>
|
|
415
|
+
<div class="overlay"></div>
|
|
416
|
+
<script src="../assets/js/main.js"></script>
|
|
417
|
+
</body>
|
|
418
|
+
</html>
|
package/build/logger.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Pino from 'pino';
|
|
2
|
+
export const singleton = Pino({
|
|
3
|
+
transport: {
|
|
4
|
+
target: 'pino-pretty',
|
|
5
|
+
options: {
|
|
6
|
+
levelFirst: true,
|
|
7
|
+
hideObject: Boolean(!process.env.LOG_OBJECTS),
|
|
8
|
+
},
|
|
9
|
+
},
|
|
10
|
+
level: process.env.LOG_LEVEL || 'info',
|
|
11
|
+
});
|
|
12
|
+
export function logger() {
|
|
13
|
+
return singleton;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2xvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFFdkIsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQztJQUM1QixTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsYUFBYTtRQUNyQixPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsSUFBSTtZQUNoQixVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7U0FDOUM7S0FDRjtJQUNELEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBSSxNQUFNO0NBQ3ZDLENBQUMsQ0FBQTtBQUVGLE1BQU0sVUFBVSxNQUFNO0lBQ3BCLE9BQU8sU0FBUyxDQUFBO0FBQ2xCLENBQUMifQ==
|
package/build/proxy.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import HttpMitmProxy from 'http-mitm-proxy';
|
|
2
|
+
import { InventoryRepository } from './inventory.js';
|
|
3
|
+
import { Throttle, ThrottlingTransform } from './throttling.js';
|
|
4
|
+
import { DependencyInterface, DeviceType } from './types.js';
|
|
5
|
+
export interface ProxyOptions extends HttpMitmProxy.IProxyOptions {
|
|
6
|
+
inventoryRepository?: InventoryRepository;
|
|
7
|
+
throttle?: Throttle;
|
|
8
|
+
throttlingRetryIntervalMs?: number;
|
|
9
|
+
entryUrl?: string;
|
|
10
|
+
deviceType?: DeviceType;
|
|
11
|
+
}
|
|
12
|
+
export type ProxyDependency = Pick<DependencyInterface, 'logger'>;
|
|
13
|
+
export declare abstract class Proxy {
|
|
14
|
+
proxyOptions: HttpMitmProxy.IProxyOptions;
|
|
15
|
+
proxy: HttpMitmProxy.IProxy;
|
|
16
|
+
inventoryRepository: InventoryRepository;
|
|
17
|
+
throttle?: Throttle;
|
|
18
|
+
throttlingRetryIntervalMs: number;
|
|
19
|
+
entryUrl?: string;
|
|
20
|
+
deviceType?: DeviceType;
|
|
21
|
+
dependency: ProxyDependency;
|
|
22
|
+
constructor(options?: ProxyOptions, dependency?: ProxyDependency);
|
|
23
|
+
static contextRequest(ctx: HttpMitmProxy.IContext): {
|
|
24
|
+
method: string;
|
|
25
|
+
url: string;
|
|
26
|
+
};
|
|
27
|
+
createThrottlingTransform(): ThrottlingTransform | void;
|
|
28
|
+
abstract setup(): Promise<void>;
|
|
29
|
+
abstract shutdown(): Promise<void>;
|
|
30
|
+
start(): Promise<void>;
|
|
31
|
+
get port(): number;
|
|
32
|
+
get inventoryDirPath(): string;
|
|
33
|
+
stop(): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
export declare function withProxy<ProxyType extends Proxy>(proxy: ProxyType, fn: (proxy: ProxyType) => Promise<void>): Promise<void>;
|
package/build/proxy.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import Crypto from 'crypto';
|
|
2
|
+
import Fsp from 'fs/promises';
|
|
3
|
+
import Http from 'http';
|
|
4
|
+
import Https from 'https';
|
|
5
|
+
import Os from 'os';
|
|
6
|
+
import Path from 'path';
|
|
7
|
+
import GetPort from 'get-port';
|
|
8
|
+
import HttpMitmProxy from 'http-mitm-proxy';
|
|
9
|
+
import { InventoryRepository } from './inventory.js';
|
|
10
|
+
import { ThrottlingTransform } from './throttling.js';
|
|
11
|
+
export class Proxy {
|
|
12
|
+
proxyOptions;
|
|
13
|
+
proxy;
|
|
14
|
+
inventoryRepository;
|
|
15
|
+
throttle;
|
|
16
|
+
throttlingRetryIntervalMs;
|
|
17
|
+
entryUrl;
|
|
18
|
+
deviceType;
|
|
19
|
+
dependency;
|
|
20
|
+
constructor(options, dependency) {
|
|
21
|
+
options ||= {};
|
|
22
|
+
this.dependency = dependency || {};
|
|
23
|
+
// Proxy
|
|
24
|
+
this.proxyOptions = options;
|
|
25
|
+
this.proxy = HttpMitmProxy();
|
|
26
|
+
// Inventory repository
|
|
27
|
+
this.inventoryRepository = options.inventoryRepository ?? new InventoryRepository(undefined, this.dependency);
|
|
28
|
+
// Throttle
|
|
29
|
+
if (options.throttle)
|
|
30
|
+
this.throttle = options.throttle;
|
|
31
|
+
this.throttlingRetryIntervalMs = options.throttlingRetryIntervalMs || 10;
|
|
32
|
+
// Entry URL
|
|
33
|
+
this.entryUrl = options.entryUrl;
|
|
34
|
+
// Device type
|
|
35
|
+
this.deviceType = options.deviceType;
|
|
36
|
+
}
|
|
37
|
+
static contextRequest(ctx) {
|
|
38
|
+
if (!ctx.clientToProxyRequest.headers.host)
|
|
39
|
+
throw new Error('ctx.clientToProxyRequest.headers.host is empty');
|
|
40
|
+
const url = [
|
|
41
|
+
ctx.isSSL ? 'https://' : 'http://',
|
|
42
|
+
ctx.clientToProxyRequest.headers.host,
|
|
43
|
+
ctx.clientToProxyRequest.url,
|
|
44
|
+
].join('');
|
|
45
|
+
const method = (ctx.clientToProxyRequest.method || 'get').toLowerCase();
|
|
46
|
+
return {
|
|
47
|
+
method,
|
|
48
|
+
url,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
createThrottlingTransform() {
|
|
52
|
+
if (this.throttle) {
|
|
53
|
+
return new ThrottlingTransform(this.throttle, this.throttlingRetryIntervalMs);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async start() {
|
|
57
|
+
if (this.throttle)
|
|
58
|
+
this.throttle.start();
|
|
59
|
+
const sslCaDir = this.proxyOptions.sslCaDir || process.env.SSL_CA_DIR || Path.join(Os.homedir(), '.pagespeed-quest/ca');
|
|
60
|
+
const port = Number(this.proxyOptions.port || process.env.PORT || (await GetPort()));
|
|
61
|
+
const options = {
|
|
62
|
+
port,
|
|
63
|
+
sslCaDir,
|
|
64
|
+
httpAgent: new Http.Agent({
|
|
65
|
+
keepAlive: true,
|
|
66
|
+
}),
|
|
67
|
+
httpsAgent: new Https.Agent({
|
|
68
|
+
keepAlive: true,
|
|
69
|
+
secureOptions: Crypto.constants.SSL_OP_LEGACY_SERVER_CONNECT,
|
|
70
|
+
}),
|
|
71
|
+
};
|
|
72
|
+
await this.setup();
|
|
73
|
+
await Fsp.mkdir(options.sslCaDir, { recursive: true });
|
|
74
|
+
await new Promise((resolve, reject) => this.proxy.listen(options, (error) => (error ? reject(error) : resolve())));
|
|
75
|
+
this.dependency.logger?.info(`Proxy started to listening on port ${this.port}`);
|
|
76
|
+
}
|
|
77
|
+
get port() {
|
|
78
|
+
return this.proxy.httpPort;
|
|
79
|
+
}
|
|
80
|
+
get inventoryDirPath() {
|
|
81
|
+
return this.inventoryRepository.dirPath;
|
|
82
|
+
}
|
|
83
|
+
async stop() {
|
|
84
|
+
this.proxy.close();
|
|
85
|
+
await this.shutdown();
|
|
86
|
+
if (this.throttle)
|
|
87
|
+
this.throttle.stop();
|
|
88
|
+
this.dependency.logger?.info(`Proxy stopped`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
export async function withProxy(proxy, fn) {
|
|
92
|
+
await proxy.start();
|
|
93
|
+
await fn(proxy);
|
|
94
|
+
await proxy.stop();
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJveHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcHJveHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFBO0FBQzNCLE9BQU8sR0FBRyxNQUFNLGFBQWEsQ0FBQTtBQUM3QixPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFDdkIsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBQ3pCLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUNuQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFFdkIsT0FBTyxPQUFPLE1BQU0sVUFBVSxDQUFBO0FBQzlCLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFBO0FBRTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3BELE9BQU8sRUFBWSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBYS9ELE1BQU0sT0FBZ0IsS0FBSztJQUN6QixZQUFZLENBQThCO0lBQzFDLEtBQUssQ0FBdUI7SUFDNUIsbUJBQW1CLENBQXNCO0lBQ3pDLFFBQVEsQ0FBVztJQUNuQix5QkFBeUIsQ0FBUztJQUNsQyxRQUFRLENBQVM7SUFDakIsVUFBVSxDQUFhO0lBQ3ZCLFVBQVUsQ0FBaUI7SUFFM0IsWUFBWSxPQUFzQixFQUFFLFVBQTRCO1FBQzlELE9BQU8sS0FBSyxFQUFFLENBQUE7UUFDZCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsSUFBSSxFQUFFLENBQUE7UUFFbEMsUUFBUTtRQUNSLElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFBO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsYUFBYSxFQUFFLENBQUE7UUFFNUIsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLElBQUksSUFBSSxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FB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
|
package/build/recording.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export interface RecordingProxyOptions {
|
|
|
6
6
|
entryUrl?: string;
|
|
7
7
|
deviceType?: DeviceType;
|
|
8
8
|
port?: number;
|
|
9
|
+
excludePatterns?: string[];
|
|
9
10
|
}
|
|
10
11
|
export type RecordingProxyDependency = Pick<DependencyInterface, 'logger'>;
|
|
11
12
|
export declare class RecordingProxy {
|
|
@@ -14,6 +15,7 @@ export declare class RecordingProxy {
|
|
|
14
15
|
entryUrl?: string;
|
|
15
16
|
deviceType?: DeviceType;
|
|
16
17
|
requestedPort?: number;
|
|
18
|
+
excludePatterns?: string[];
|
|
17
19
|
dependency: RecordingProxyDependency;
|
|
18
20
|
constructor(options?: RecordingProxyOptions, dependency?: RecordingProxyDependency);
|
|
19
21
|
start(): Promise<void>;
|