UNPKG

wonder.js

Version:
60 lines (49 loc) 1.89 kB
'use strict'; var Most = require("most"); var Curry = require("bs-platform/lib/js/curry.js"); var Log$WonderLog = require("wonder-log/lib/js/src/Log.js"); var NumberService$Wonderjs = require("../service/primitive/NumberService.js"); function createFetchJsonStream(filePath, fetchFunc) { return Most.fromPromise(fetchFunc(filePath).then((function (prim) { return prim.json(); }))); } function createFetchArrayBufferStream(filePath, fetchFunc) { return Most.fromPromise(fetchFunc(filePath).then((function (prim) { return prim.arrayBuffer(); }))); } function createFetchBlobStream(filePath, fetchFunc) { return Most.fromPromise(fetchFunc(filePath).then((function (prim) { return prim.blob(); }))); } function isSupportStreamLoad (response){ return !!response.body && !!response.body.getReader }; function getReader (response){ return response.body.getReader(); }; function _getContentLength (response){ return response.headers.get("content-length"); }; function getContentLength(response) { var match = _getContentLength(response); if (match == null) { return Log$WonderLog.fatal(Log$WonderLog.buildErrorMessage("load", "Content-Length response header unavailable", "", "", "")); } else { return Curry._1(NumberService$Wonderjs.convertStringToInt, match); } } function fetch$1(filePath) { return fetch(filePath); } exports.createFetchJsonStream = createFetchJsonStream; exports.createFetchArrayBufferStream = createFetchArrayBufferStream; exports.createFetchBlobStream = createFetchBlobStream; exports.isSupportStreamLoad = isSupportStreamLoad; exports.getReader = getReader; exports._getContentLength = _getContentLength; exports.getContentLength = getContentLength; exports.fetch = fetch$1; /* most Not a pure module */