MCPcopy Create free account
hub / github.com/angular/dev-infra / consumeBody

Function consumeBody

github-actions/browserstack/set-browserstack-env.js:5855–5878  ·  view source on GitHub ↗
(object, convertBytesToJSValue, instance)

Source from the content-addressed store, hash-verified

5853 Object.assign(prototype.prototype, bodyMixinMethods(prototype));
5854 }
5855 function consumeBody(object, convertBytesToJSValue, instance) {
5856 return __async(this, null, function* () {
5857 webidl.brandCheck(object, instance);
5858 if (bodyUnusable(object)) {
5859 throw new TypeError("Body is unusable: Body has already been read");
5860 }
5861 throwIfAborted(object[kState]);
5862 const promise = createDeferredPromise();
5863 const errorSteps = (error) => promise.reject(error);
5864 const successSteps = (data) => {
5865 try {
5866 promise.resolve(convertBytesToJSValue(data));
5867 } catch (e) {
5868 errorSteps(e);
5869 }
5870 };
5871 if (object[kState].body == null) {
5872 successSteps(Buffer.allocUnsafe(0));
5873 return promise.promise;
5874 }
5875 yield fullyReadBody(object[kState].body, successSteps, errorSteps);
5876 return promise.promise;
5877 });
5878 }
5879 function bodyUnusable(object) {
5880 const body = object[kState].body;
5881 return body != null && (body.stream.locked || util.isDisturbed(body.stream));

Callers 6

blobFunction · 0.70
arrayBufferFunction · 0.70
textFunction · 0.70
jsonFunction · 0.70
formDataFunction · 0.70
bytesFunction · 0.70

Calls 6

__asyncFunction · 0.70
bodyUnusableFunction · 0.70
throwIfAbortedFunction · 0.70
createDeferredPromiseFunction · 0.70
successStepsFunction · 0.70
fullyReadBodyFunction · 0.70

Tested by

no test coverage detected