Files
stream-http/lib/capability.js
T

34 lines
961 B
JavaScript

exports.fetch = isFunction(window.fetch) && isFunction(window.ReadableByteStream)
exports.blobConstructor = false
try {
new Blob([new ArrayBuffer(1)])
exports.blobConstructor = true
} catch (e) {}
var xhr = new window.XMLHttpRequest()
xhr.open('GET', '/')
function checkTypeSupport (type) {
try {
xhr.responseType = type
return xhr.responseType === type
} catch (e) {}
return false
}
var haveArrayBuffer = isFunction(window.ArrayBuffer)
var haveSlice = haveArrayBuffer && isFunction(window.ArrayBuffer.prototype.slice)
exports.arraybuffer = haveArrayBuffer && checkTypeSupport('arraybuffer')
exports.msstream = haveSlice && checkTypeSupport('ms-stream')
exports.mozchunkedarraybuffer = haveArrayBuffer && checkTypeSupport('moz-chunked-arraybuffer')
exports.overrideMimeType = isFunction(xhr.overrideMimeType)
exports.vbArray = isFunction(window.VBArray)
function isFunction (value) {
return typeof value === 'function'
}
xhr = null // Help gc