@hyperttp/parser 1.0.9 → 1.0.11
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 +2 -2
- package/plugin.d.ts.map +1 -1
- package/plugin.js +13 -4
- package/plugin.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperttp/parser",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.11",
|
|
4
4
|
"description": "Automated response parsing and content conversion plugin for Hyperttp client",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
"peerDependencies": {
|
|
18
18
|
"typescript": "^5",
|
|
19
|
-
"@hyperttp/core": "^1.0
|
|
19
|
+
"@hyperttp/core": "^1.1.0"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"cheerio": "^1.2.0",
|
package/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EAIZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAOpE,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,SAAS,CAyEX;AAED,OAAO,QAAQ,gBAAgB,CAAC;IAC9B,UAAU,wBAAwB;QAChC,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;KAC9C;CACF;AAED,eAAO,MAAM,YAAY,EAAE,WAM1B,CAAC"}
|
package/plugin.js
CHANGED
|
@@ -11,11 +11,13 @@ export function withParser(client, options) {
|
|
|
11
11
|
body.cancel().catch(() => { });
|
|
12
12
|
}
|
|
13
13
|
else if (typeof body.destroy === "function") {
|
|
14
|
-
body.
|
|
14
|
+
if (!body.destroyed)
|
|
15
|
+
body.destroy();
|
|
15
16
|
}
|
|
16
17
|
};
|
|
17
18
|
client.dispatch = async (req) => {
|
|
18
|
-
const
|
|
19
|
+
const typedReq = req;
|
|
20
|
+
const responseType = typedReq.responseType || typedReq.meta?.responseType || "auto";
|
|
19
21
|
if (req.method === "HEAD" ||
|
|
20
22
|
responseType === "buffer" ||
|
|
21
23
|
responseType === "stream") {
|
|
@@ -25,14 +27,21 @@ export function withParser(client, options) {
|
|
|
25
27
|
if (!rawResponse?.body) {
|
|
26
28
|
return rawResponse;
|
|
27
29
|
}
|
|
28
|
-
safeDestroy(rawResponse.body);
|
|
29
30
|
if (rawResponse.status && rawResponse.status >= 400) {
|
|
31
|
+
safeDestroy(rawResponse.body);
|
|
30
32
|
return rawResponse;
|
|
31
33
|
}
|
|
32
34
|
const { headers, body } = rawResponse;
|
|
33
35
|
const isLogging = req.meta?.trackTimings;
|
|
34
36
|
const start = isLogging ? process.hrtime.bigint() : 0n;
|
|
35
|
-
|
|
37
|
+
let bufferBody;
|
|
38
|
+
try {
|
|
39
|
+
bufferBody = await converter.readBody(body);
|
|
40
|
+
}
|
|
41
|
+
catch (readErr) {
|
|
42
|
+
safeDestroy(body);
|
|
43
|
+
throw readErr;
|
|
44
|
+
}
|
|
36
45
|
const currentUrl = (rawResponse.url || req.url);
|
|
37
46
|
const parsedData = await converter.convert(bufferBody, responseType, {
|
|
38
47
|
contentType: headers["content-type"] || headers["Content-Type"],
|
package/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAMjE,MAAM,UAAU,UAAU,CACxB,MAAiB,EACjB,OAAkC;IAElC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEjD,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,EAAE;QAChC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,UAAU;YAAE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAE9D,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACtC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG,KAAK,EAAW,GAAoB,EAAc,EAAE;QACpE,MAAM,QAAQ,GAAG,GAAsB,CAAC;QAExC,MAAM,YAAY,GAChB,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,IAAI,EAAE,YAAY,IAAI,MAAM,CAAC;QAEjE,IACE,GAAG,CAAC,MAAM,KAAK,MAAM;YACrB,YAAY,KAAK,QAAQ;YACzB,YAAY,KAAK,QAAQ,EACzB,CAAC;YACD,OAAO,IAAI,CAAC,GAAG,CAAM,CAAC;QACxB,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAM,GAAG,CAAC,CAAC;QAEzC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YACvB,OAAO,WAAgB,CAAC;QAC1B,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACpD,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC9B,OAAO,WAAgB,CAAC;QAC1B,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;QACtC,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC;QACzC,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvD,IAAI,UAAU,CAAC;QACf,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,MAAM,OAAO,CAAC;QAChB,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAuB,CAAC;QAEtE,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,EAAE;YACnE,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC;YAC/D,eAAe,EACb,OAAO,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,kBAAkB,CAAC;YAC5D,GAAG,EAAE,UAAU;SAChB,CAAC,CAAC;QAEH,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YAC1B,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC1C,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;QACzD,CAAC;QAED,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC;QAC9B,OAAO,WAAgB,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAQD,MAAM,CAAC,MAAM,YAAY,GAAgB;IACvC,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;IACnB,KAAK,EAAE,CAAC,MAAiB,EAAE,MAAyB,EAAE,EAAE,CACtD,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,iBAAiB,CAAC;CAC/C,CAAC"}
|