apitally 0.21.4 → 0.21.5

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.
@@ -33,14 +33,17 @@ async function measureResponseSize(response, tee = true) {
33
33
  ];
34
34
  let size = 0;
35
35
  if (newResponse2.body) {
36
- let done = false;
37
- const reader = newResponse2.body.getReader();
38
- while (!done) {
39
- const result = await reader.read();
40
- done = result.done;
41
- if (!done && result.value) {
42
- size += result.value.byteLength;
36
+ try {
37
+ let done = false;
38
+ const reader = newResponse2.body.getReader();
39
+ while (!done) {
40
+ const result = await reader.read();
41
+ done = result.done;
42
+ if (!done && result.value) {
43
+ size += result.value.byteLength;
44
+ }
43
45
  }
46
+ } catch (error) {
44
47
  }
45
48
  }
46
49
  return [
@@ -54,22 +57,36 @@ async function getResponseBody(response, tee = true) {
54
57
  response,
55
58
  response
56
59
  ];
57
- const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());
58
- return [
59
- responseBuffer,
60
- newResponse1
61
- ];
60
+ try {
61
+ const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());
62
+ return [
63
+ responseBuffer,
64
+ newResponse1
65
+ ];
66
+ } catch (error) {
67
+ return [
68
+ Buffer.from([]),
69
+ newResponse1
70
+ ];
71
+ }
62
72
  }
63
73
  __name(getResponseBody, "getResponseBody");
64
74
  async function getResponseJson(response) {
65
75
  const contentType = response.headers.get("content-type");
66
76
  if (contentType == null ? void 0 : contentType.includes("application/json")) {
67
77
  const [newResponse1, newResponse2] = teeResponse(response);
68
- const responseJson = await newResponse2.json();
69
- return [
70
- responseJson,
71
- newResponse1
72
- ];
78
+ try {
79
+ const responseJson = await newResponse2.json();
80
+ return [
81
+ responseJson,
82
+ newResponse1
83
+ ];
84
+ } catch (error) {
85
+ return [
86
+ null,
87
+ newResponse1
88
+ ];
89
+ }
73
90
  }
74
91
  return [
75
92
  null,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/common/response.ts"],"sourcesContent":["export async function measureResponseSize(\n response: Response,\n tee: boolean = true,\n): Promise<[number, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n let size = 0;\n if (newResponse2.body) {\n let done = false;\n const reader = newResponse2.body.getReader();\n while (!done) {\n const result = await reader.read();\n done = result.done;\n if (!done && result.value) {\n size += result.value.byteLength;\n }\n }\n }\n return [size, newResponse1];\n}\n\nexport async function getResponseBody(\n response: Response,\n tee: boolean = true,\n): Promise<[Buffer, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());\n return [responseBuffer, newResponse1];\n}\n\nexport async function getResponseJson(\n response: Response,\n): Promise<[any, Response]> {\n const contentType = response.headers.get(\"content-type\");\n if (contentType?.includes(\"application/json\")) {\n const [newResponse1, newResponse2] = teeResponse(response);\n const responseJson = await newResponse2.json();\n return [responseJson, newResponse1];\n }\n return [null, response];\n}\n\nexport function teeResponse(response: Response): [Response, Response] {\n if (!response.body) {\n return [response, response];\n }\n const [stream1, stream2] = response.body.tee();\n const newResponse1 = new Response(stream1, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(stream2, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n\nexport function teeResponseBlob(\n response: Response,\n blob: string | Blob,\n): [Response, Response] {\n const newResponse1 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;AAAA,eAAsBA,oBACpBC,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,MAAIK,OAAO;AACX,MAAIF,aAAaG,MAAM;AACrB,QAAIC,OAAO;AACX,UAAMC,SAASL,aAAaG,KAAKG,UAAS;AAC1C,WAAO,CAACF,MAAM;AACZ,YAAMG,SAAS,MAAMF,OAAOG,KAAI;AAChCJ,aAAOG,OAAOH;AACd,UAAI,CAACA,QAAQG,OAAOE,OAAO;AACzBP,gBAAQK,OAAOE,MAAMC;MACvB;IACF;EACF;AACA,SAAO;IAACR;IAAMH;;AAChB;AApBsBH;AAsBtB,eAAsBe,gBACpBd,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,QAAMe,iBAAiBC,OAAOC,KAAK,MAAMd,aAAae,YAAW,CAAA;AACjE,SAAO;IAACH;IAAgBb;;AAC1B;AATsBY;AAWtB,eAAsBK,gBACpBnB,UAAkB;AAElB,QAAMoB,cAAcpB,SAASqB,QAAQC,IAAI,cAAA;AACzC,MAAIF,2CAAaG,SAAS,qBAAqB;AAC7C,UAAM,CAACrB,cAAcC,YAAAA,IAAgBC,YAAYJ,QAAAA;AACjD,UAAMwB,eAAe,MAAMrB,aAAasB,KAAI;AAC5C,WAAO;MAACD;MAActB;;EACxB;AACA,SAAO;IAAC;IAAMF;;AAChB;AAVsBmB;AAYf,SAASf,YAAYJ,UAAkB;AAC5C,MAAI,CAACA,SAASM,MAAM;AAClB,WAAO;MAACN;MAAUA;;EACpB;AACA,QAAM,CAAC0B,SAASC,OAAAA,IAAW3B,SAASM,KAAKL,IAAG;AAC5C,QAAMC,eAAe,IAAI0B,SAASF,SAAS;IACzCG,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,QAAMlB,eAAe,IAAIyB,SAASD,SAAS;IACzCE,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,SAAO;IAACnB;IAAcC;;AACxB;AAhBgBC;AAkBT,SAAS2B,gBACd/B,UACAgC,MAAmB;AAEnB,QAAM9B,eAAe,IAAI0B,SAASI,MAAM;IACtCH,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,QAAMlB,eAAe,IAAIyB,SAASI,MAAM;IACtCH,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,SAAO;IAACnB;IAAcC;;AACxB;AAfgB4B;","names":["measureResponseSize","response","tee","newResponse1","newResponse2","teeResponse","size","body","done","reader","getReader","result","read","value","byteLength","getResponseBody","responseBuffer","Buffer","from","arrayBuffer","getResponseJson","contentType","headers","get","includes","responseJson","json","stream1","stream2","Response","status","statusText","teeResponseBlob","blob"]}
1
+ {"version":3,"sources":["../../src/common/response.ts"],"sourcesContent":["export async function measureResponseSize(\n response: Response,\n tee: boolean = true,\n): Promise<[number, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n let size = 0;\n if (newResponse2.body) {\n try {\n let done = false;\n const reader = newResponse2.body.getReader();\n while (!done) {\n const result = await reader.read();\n done = result.done;\n if (!done && result.value) {\n size += result.value.byteLength;\n }\n }\n } catch (error) {\n // ignore\n }\n }\n return [size, newResponse1];\n}\n\nexport async function getResponseBody(\n response: Response,\n tee: boolean = true,\n): Promise<[Buffer, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n try {\n const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());\n return [responseBuffer, newResponse1];\n } catch (error) {\n return [Buffer.from([]), newResponse1];\n }\n}\n\nexport async function getResponseJson(\n response: Response,\n): Promise<[any, Response]> {\n const contentType = response.headers.get(\"content-type\");\n if (contentType?.includes(\"application/json\")) {\n const [newResponse1, newResponse2] = teeResponse(response);\n try {\n const responseJson = await newResponse2.json();\n return [responseJson, newResponse1];\n } catch (error) {\n return [null, newResponse1];\n }\n }\n return [null, response];\n}\n\nexport function teeResponse(response: Response): [Response, Response] {\n if (!response.body) {\n return [response, response];\n }\n const [stream1, stream2] = response.body.tee();\n const newResponse1 = new Response(stream1, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(stream2, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n\nexport function teeResponseBlob(\n response: Response,\n blob: string | Blob,\n): [Response, Response] {\n const newResponse1 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;AAAA,eAAsBA,oBACpBC,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,MAAIK,OAAO;AACX,MAAIF,aAAaG,MAAM;AACrB,QAAI;AACF,UAAIC,OAAO;AACX,YAAMC,SAASL,aAAaG,KAAKG,UAAS;AAC1C,aAAO,CAACF,MAAM;AACZ,cAAMG,SAAS,MAAMF,OAAOG,KAAI;AAChCJ,eAAOG,OAAOH;AACd,YAAI,CAACA,QAAQG,OAAOE,OAAO;AACzBP,kBAAQK,OAAOE,MAAMC;QACvB;MACF;IACF,SAASC,OAAO;IAEhB;EACF;AACA,SAAO;IAACT;IAAMH;;AAChB;AAxBsBH;AA0BtB,eAAsBgB,gBACpBf,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,MAAI;AACF,UAAMgB,iBAAiBC,OAAOC,KAAK,MAAMf,aAAagB,YAAW,CAAA;AACjE,WAAO;MAACH;MAAgBd;;EAC1B,SAASY,OAAO;AACd,WAAO;MAACG,OAAOC,KAAK,CAAA,CAAE;MAAGhB;;EAC3B;AACF;AAbsBa;AAetB,eAAsBK,gBACpBpB,UAAkB;AAElB,QAAMqB,cAAcrB,SAASsB,QAAQC,IAAI,cAAA;AACzC,MAAIF,2CAAaG,SAAS,qBAAqB;AAC7C,UAAM,CAACtB,cAAcC,YAAAA,IAAgBC,YAAYJ,QAAAA;AACjD,QAAI;AACF,YAAMyB,eAAe,MAAMtB,aAAauB,KAAI;AAC5C,aAAO;QAACD;QAAcvB;;IACxB,SAASY,OAAO;AACd,aAAO;QAAC;QAAMZ;;IAChB;EACF;AACA,SAAO;IAAC;IAAMF;;AAChB;AAdsBoB;AAgBf,SAAShB,YAAYJ,UAAkB;AAC5C,MAAI,CAACA,SAASM,MAAM;AAClB,WAAO;MAACN;MAAUA;;EACpB;AACA,QAAM,CAAC2B,SAASC,OAAAA,IAAW5B,SAASM,KAAKL,IAAG;AAC5C,QAAMC,eAAe,IAAI2B,SAASF,SAAS;IACzCG,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,QAAMnB,eAAe,IAAI0B,SAASD,SAAS;IACzCE,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,SAAO;IAACpB;IAAcC;;AACxB;AAhBgBC;AAkBT,SAAS4B,gBACdhC,UACAiC,MAAmB;AAEnB,QAAM/B,eAAe,IAAI2B,SAASI,MAAM;IACtCH,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,QAAMnB,eAAe,IAAI0B,SAASI,MAAM;IACtCH,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,SAAO;IAACpB;IAAcC;;AACxB;AAfgB6B;","names":["measureResponseSize","response","tee","newResponse1","newResponse2","teeResponse","size","body","done","reader","getReader","result","read","value","byteLength","error","getResponseBody","responseBuffer","Buffer","from","arrayBuffer","getResponseJson","contentType","headers","get","includes","responseJson","json","stream1","stream2","Response","status","statusText","teeResponseBlob","blob"]}
@@ -7,14 +7,17 @@ async function measureResponseSize(response, tee = true) {
7
7
  ];
8
8
  let size = 0;
9
9
  if (newResponse2.body) {
10
- let done = false;
11
- const reader = newResponse2.body.getReader();
12
- while (!done) {
13
- const result = await reader.read();
14
- done = result.done;
15
- if (!done && result.value) {
16
- size += result.value.byteLength;
10
+ try {
11
+ let done = false;
12
+ const reader = newResponse2.body.getReader();
13
+ while (!done) {
14
+ const result = await reader.read();
15
+ done = result.done;
16
+ if (!done && result.value) {
17
+ size += result.value.byteLength;
18
+ }
17
19
  }
20
+ } catch (error) {
18
21
  }
19
22
  }
20
23
  return [
@@ -28,22 +31,36 @@ async function getResponseBody(response, tee = true) {
28
31
  response,
29
32
  response
30
33
  ];
31
- const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());
32
- return [
33
- responseBuffer,
34
- newResponse1
35
- ];
34
+ try {
35
+ const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());
36
+ return [
37
+ responseBuffer,
38
+ newResponse1
39
+ ];
40
+ } catch (error) {
41
+ return [
42
+ Buffer.from([]),
43
+ newResponse1
44
+ ];
45
+ }
36
46
  }
37
47
  __name(getResponseBody, "getResponseBody");
38
48
  async function getResponseJson(response) {
39
49
  const contentType = response.headers.get("content-type");
40
50
  if (contentType == null ? void 0 : contentType.includes("application/json")) {
41
51
  const [newResponse1, newResponse2] = teeResponse(response);
42
- const responseJson = await newResponse2.json();
43
- return [
44
- responseJson,
45
- newResponse1
46
- ];
52
+ try {
53
+ const responseJson = await newResponse2.json();
54
+ return [
55
+ responseJson,
56
+ newResponse1
57
+ ];
58
+ } catch (error) {
59
+ return [
60
+ null,
61
+ newResponse1
62
+ ];
63
+ }
47
64
  }
48
65
  return [
49
66
  null,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/common/response.ts"],"sourcesContent":["export async function measureResponseSize(\n response: Response,\n tee: boolean = true,\n): Promise<[number, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n let size = 0;\n if (newResponse2.body) {\n let done = false;\n const reader = newResponse2.body.getReader();\n while (!done) {\n const result = await reader.read();\n done = result.done;\n if (!done && result.value) {\n size += result.value.byteLength;\n }\n }\n }\n return [size, newResponse1];\n}\n\nexport async function getResponseBody(\n response: Response,\n tee: boolean = true,\n): Promise<[Buffer, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());\n return [responseBuffer, newResponse1];\n}\n\nexport async function getResponseJson(\n response: Response,\n): Promise<[any, Response]> {\n const contentType = response.headers.get(\"content-type\");\n if (contentType?.includes(\"application/json\")) {\n const [newResponse1, newResponse2] = teeResponse(response);\n const responseJson = await newResponse2.json();\n return [responseJson, newResponse1];\n }\n return [null, response];\n}\n\nexport function teeResponse(response: Response): [Response, Response] {\n if (!response.body) {\n return [response, response];\n }\n const [stream1, stream2] = response.body.tee();\n const newResponse1 = new Response(stream1, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(stream2, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n\nexport function teeResponseBlob(\n response: Response,\n blob: string | Blob,\n): [Response, Response] {\n const newResponse1 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n"],"mappings":";;AAAA,eAAsBA,oBACpBC,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,MAAIK,OAAO;AACX,MAAIF,aAAaG,MAAM;AACrB,QAAIC,OAAO;AACX,UAAMC,SAASL,aAAaG,KAAKG,UAAS;AAC1C,WAAO,CAACF,MAAM;AACZ,YAAMG,SAAS,MAAMF,OAAOG,KAAI;AAChCJ,aAAOG,OAAOH;AACd,UAAI,CAACA,QAAQG,OAAOE,OAAO;AACzBP,gBAAQK,OAAOE,MAAMC;MACvB;IACF;EACF;AACA,SAAO;IAACR;IAAMH;;AAChB;AApBsBH;AAsBtB,eAAsBe,gBACpBd,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,QAAMe,iBAAiBC,OAAOC,KAAK,MAAMd,aAAae,YAAW,CAAA;AACjE,SAAO;IAACH;IAAgBb;;AAC1B;AATsBY;AAWtB,eAAsBK,gBACpBnB,UAAkB;AAElB,QAAMoB,cAAcpB,SAASqB,QAAQC,IAAI,cAAA;AACzC,MAAIF,2CAAaG,SAAS,qBAAqB;AAC7C,UAAM,CAACrB,cAAcC,YAAAA,IAAgBC,YAAYJ,QAAAA;AACjD,UAAMwB,eAAe,MAAMrB,aAAasB,KAAI;AAC5C,WAAO;MAACD;MAActB;;EACxB;AACA,SAAO;IAAC;IAAMF;;AAChB;AAVsBmB;AAYf,SAASf,YAAYJ,UAAkB;AAC5C,MAAI,CAACA,SAASM,MAAM;AAClB,WAAO;MAACN;MAAUA;;EACpB;AACA,QAAM,CAAC0B,SAASC,OAAAA,IAAW3B,SAASM,KAAKL,IAAG;AAC5C,QAAMC,eAAe,IAAI0B,SAASF,SAAS;IACzCG,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,QAAMlB,eAAe,IAAIyB,SAASD,SAAS;IACzCE,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,SAAO;IAACnB;IAAcC;;AACxB;AAhBgBC;AAkBT,SAAS2B,gBACd/B,UACAgC,MAAmB;AAEnB,QAAM9B,eAAe,IAAI0B,SAASI,MAAM;IACtCH,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,QAAMlB,eAAe,IAAIyB,SAASI,MAAM;IACtCH,QAAQ7B,SAAS6B;IACjBC,YAAY9B,SAAS8B;IACrBT,SAASrB,SAASqB;EACpB,CAAA;AACA,SAAO;IAACnB;IAAcC;;AACxB;AAfgB4B;","names":["measureResponseSize","response","tee","newResponse1","newResponse2","teeResponse","size","body","done","reader","getReader","result","read","value","byteLength","getResponseBody","responseBuffer","Buffer","from","arrayBuffer","getResponseJson","contentType","headers","get","includes","responseJson","json","stream1","stream2","Response","status","statusText","teeResponseBlob","blob"]}
1
+ {"version":3,"sources":["../../src/common/response.ts"],"sourcesContent":["export async function measureResponseSize(\n response: Response,\n tee: boolean = true,\n): Promise<[number, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n let size = 0;\n if (newResponse2.body) {\n try {\n let done = false;\n const reader = newResponse2.body.getReader();\n while (!done) {\n const result = await reader.read();\n done = result.done;\n if (!done && result.value) {\n size += result.value.byteLength;\n }\n }\n } catch (error) {\n // ignore\n }\n }\n return [size, newResponse1];\n}\n\nexport async function getResponseBody(\n response: Response,\n tee: boolean = true,\n): Promise<[Buffer, Response]> {\n const [newResponse1, newResponse2] = tee\n ? teeResponse(response)\n : [response, response];\n try {\n const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());\n return [responseBuffer, newResponse1];\n } catch (error) {\n return [Buffer.from([]), newResponse1];\n }\n}\n\nexport async function getResponseJson(\n response: Response,\n): Promise<[any, Response]> {\n const contentType = response.headers.get(\"content-type\");\n if (contentType?.includes(\"application/json\")) {\n const [newResponse1, newResponse2] = teeResponse(response);\n try {\n const responseJson = await newResponse2.json();\n return [responseJson, newResponse1];\n } catch (error) {\n return [null, newResponse1];\n }\n }\n return [null, response];\n}\n\nexport function teeResponse(response: Response): [Response, Response] {\n if (!response.body) {\n return [response, response];\n }\n const [stream1, stream2] = response.body.tee();\n const newResponse1 = new Response(stream1, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(stream2, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n\nexport function teeResponseBlob(\n response: Response,\n blob: string | Blob,\n): [Response, Response] {\n const newResponse1 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n const newResponse2 = new Response(blob, {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n });\n return [newResponse1, newResponse2];\n}\n"],"mappings":";;AAAA,eAAsBA,oBACpBC,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,MAAIK,OAAO;AACX,MAAIF,aAAaG,MAAM;AACrB,QAAI;AACF,UAAIC,OAAO;AACX,YAAMC,SAASL,aAAaG,KAAKG,UAAS;AAC1C,aAAO,CAACF,MAAM;AACZ,cAAMG,SAAS,MAAMF,OAAOG,KAAI;AAChCJ,eAAOG,OAAOH;AACd,YAAI,CAACA,QAAQG,OAAOE,OAAO;AACzBP,kBAAQK,OAAOE,MAAMC;QACvB;MACF;IACF,SAASC,OAAO;IAEhB;EACF;AACA,SAAO;IAACT;IAAMH;;AAChB;AAxBsBH;AA0BtB,eAAsBgB,gBACpBf,UACAC,MAAe,MAAI;AAEnB,QAAM,CAACC,cAAcC,YAAAA,IAAgBF,MACjCG,YAAYJ,QAAAA,IACZ;IAACA;IAAUA;;AACf,MAAI;AACF,UAAMgB,iBAAiBC,OAAOC,KAAK,MAAMf,aAAagB,YAAW,CAAA;AACjE,WAAO;MAACH;MAAgBd;;EAC1B,SAASY,OAAO;AACd,WAAO;MAACG,OAAOC,KAAK,CAAA,CAAE;MAAGhB;;EAC3B;AACF;AAbsBa;AAetB,eAAsBK,gBACpBpB,UAAkB;AAElB,QAAMqB,cAAcrB,SAASsB,QAAQC,IAAI,cAAA;AACzC,MAAIF,2CAAaG,SAAS,qBAAqB;AAC7C,UAAM,CAACtB,cAAcC,YAAAA,IAAgBC,YAAYJ,QAAAA;AACjD,QAAI;AACF,YAAMyB,eAAe,MAAMtB,aAAauB,KAAI;AAC5C,aAAO;QAACD;QAAcvB;;IACxB,SAASY,OAAO;AACd,aAAO;QAAC;QAAMZ;;IAChB;EACF;AACA,SAAO;IAAC;IAAMF;;AAChB;AAdsBoB;AAgBf,SAAShB,YAAYJ,UAAkB;AAC5C,MAAI,CAACA,SAASM,MAAM;AAClB,WAAO;MAACN;MAAUA;;EACpB;AACA,QAAM,CAAC2B,SAASC,OAAAA,IAAW5B,SAASM,KAAKL,IAAG;AAC5C,QAAMC,eAAe,IAAI2B,SAASF,SAAS;IACzCG,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,QAAMnB,eAAe,IAAI0B,SAASD,SAAS;IACzCE,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,SAAO;IAACpB;IAAcC;;AACxB;AAhBgBC;AAkBT,SAAS4B,gBACdhC,UACAiC,MAAmB;AAEnB,QAAM/B,eAAe,IAAI2B,SAASI,MAAM;IACtCH,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,QAAMnB,eAAe,IAAI0B,SAASI,MAAM;IACtCH,QAAQ9B,SAAS8B;IACjBC,YAAY/B,SAAS+B;IACrBT,SAAStB,SAASsB;EACpB,CAAA;AACA,SAAO;IAACpB;IAAcC;;AACxB;AAfgB6B;","names":["measureResponseSize","response","tee","newResponse1","newResponse2","teeResponse","size","body","done","reader","getReader","result","read","value","byteLength","error","getResponseBody","responseBuffer","Buffer","from","arrayBuffer","getResponseJson","contentType","headers","get","includes","responseJson","json","stream1","stream2","Response","status","statusText","teeResponseBlob","blob"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apitally",
3
- "version": "0.21.4",
3
+ "version": "0.21.5",
4
4
  "description": "Simple API monitoring & analytics for REST APIs built with Express, Fastify, NestJS, AdonisJS, Hono, H3, Elysia, Hapi, and Koa.",
5
5
  "author": "Apitally <hello@apitally.io>",
6
6
  "license": "MIT",