aboutsummaryrefslogtreecommitdiff
path: root/node_modules/got/dist/source/as-promise/parse-body.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/got/dist/source/as-promise/parse-body.js')
-rw-r--r--node_modules/got/dist/source/as-promise/parse-body.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/node_modules/got/dist/source/as-promise/parse-body.js b/node_modules/got/dist/source/as-promise/parse-body.js
new file mode 100644
index 0000000..cc2b806
--- /dev/null
+++ b/node_modules/got/dist/source/as-promise/parse-body.js
@@ -0,0 +1,25 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+const types_1 = require("./types");
+const parseBody = (response, responseType, parseJson, encoding) => {
+ const { rawBody } = response;
+ try {
+ if (responseType === 'text') {
+ return rawBody.toString(encoding);
+ }
+ if (responseType === 'json') {
+ return rawBody.length === 0 ? '' : parseJson(rawBody.toString());
+ }
+ if (responseType === 'buffer') {
+ return rawBody;
+ }
+ throw new types_1.ParseError({
+ message: `Unknown body type '${responseType}'`,
+ name: 'Error'
+ }, response);
+ }
+ catch (error) {
+ throw new types_1.ParseError(error, response);
+ }
+};
+exports.default = parseBody;