New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More

fetch-multipart-graphql

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fetch-multipart-graphql - npm Package Compare versions

Comparing version 1.0.2 to 1.0.3

@@ -34,2 +34,3 @@ 'use strict';

var index = 0;
var isDeferred = false;

@@ -41,7 +42,21 @@ var patchResolver = new _PatchResolver.PatchResolver({ onResponse: function onResponse(r) {

function onProgressEvent() {
var chunk = xhr.response.substr(index);
patchResolver.handleChunk(chunk);
index = xhr.responseText.length;
if (isDeferred) {
var chunk = xhr.response.substr(index);
patchResolver.handleChunk(chunk);
index = xhr.responseText.length;
}
}
function onReadyStateChange() {
if (this.readyState === this.HEADERS_RECEIVED) {
var contentType = xhr.getResponseHeader('Content-Type');
if (contentType.indexOf('multipart/mixed') >= 0) {
isDeferred = true;
}
} else if (this.readyState === this.DONE && !isDeferred) {
onNext(JSON.parse(xhr.response));
onComplete();
}
}
function onLoadEvent() {

@@ -91,2 +106,3 @@ onComplete();

xhr.addEventListener('readystatechange', onReadyStateChange);
xhr.addEventListener('progress', onProgressEvent);

@@ -93,0 +109,0 @@ xhr.addEventListener('loaded', onLoadEvent);

{
"name": "fetch-multipart-graphql",
"version": "1.0.2",
"version": "1.0.3",
"description": "Cross browser function to fetch and parse streaming multipart graphql responses.",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

@@ -17,2 +17,3 @@ import { PatchResolver } from './PatchResolver';

let index = 0;
let isDeferred = false;

@@ -22,7 +23,21 @@ const patchResolver = new PatchResolver({ onResponse: r => onNext(r) });

function onProgressEvent() {
const chunk = xhr.response.substr(index);
patchResolver.handleChunk(chunk);
index = xhr.responseText.length;
if (isDeferred) {
const chunk = xhr.response.substr(index);
patchResolver.handleChunk(chunk);
index = xhr.responseText.length;
}
}
function onReadyStateChange() {
if (this.readyState === this.HEADERS_RECEIVED) {
const contentType = xhr.getResponseHeader('Content-Type');
if (contentType.indexOf('multipart/mixed') >= 0) {
isDeferred = true;
}
} else if (this.readyState === this.DONE && !isDeferred) {
onNext(JSON.parse(xhr.response));
onComplete();
}
}
function onLoadEvent() {

@@ -46,2 +61,3 @@ onComplete();

xhr.addEventListener('readystatechange', onReadyStateChange);
xhr.addEventListener('progress', onProgressEvent);

@@ -48,0 +64,0 @@ xhr.addEventListener('loaded', onLoadEvent);