-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor: remove legacy code for IE in
ajax
BREAKING CHANGE: `ajax` no longer supports IE
- Loading branch information
Showing
4 changed files
with
4 additions
and
94 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,37 +1,11 @@ | ||
/** | ||
* Gets what should be in the `response` property of the XHR. However, | ||
* since we still support the final versions of IE, we need to do a little | ||
* checking here to make sure that we get the right thing back. Consequently, | ||
* we need to do a JSON.parse() in here, which *could* throw if the response | ||
* isn't valid JSON. | ||
* Gets what should be in the `response` property of the XHR. | ||
* | ||
* This is used both in creating an AjaxResponse, and in creating certain errors | ||
* that we throw, so we can give the user whatever was in the response property. | ||
* | ||
* @param xhr The XHR to examine the response of | ||
*/ | ||
export function getXHRResponse(xhr: XMLHttpRequest) { | ||
switch (xhr.responseType) { | ||
case 'json': { | ||
if ('response' in xhr) { | ||
return xhr.response; | ||
} else { | ||
// IE | ||
const ieXHR: any = xhr; | ||
return JSON.parse(ieXHR.responseText); | ||
} | ||
} | ||
case 'document': | ||
return xhr.responseXML; | ||
case 'text': | ||
default: { | ||
if ('response' in xhr) { | ||
return xhr.response; | ||
} else { | ||
// IE | ||
const ieXHR: any = xhr; | ||
return ieXHR.responseText; | ||
} | ||
} | ||
} | ||
return xhr.responseType === 'document' ? xhr.responseXML : xhr.response; | ||
} |