UNPKG

molstar

Version:

A comprehensive macromolecular library.

70 lines 2.54 kB
"use strict"; /** * Copyright (c) 2018 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ Object.defineProperty(exports, "__esModule", { value: true }); exports.readUrlAsBuffer = exports.readUrlAsText = exports.readUrl = exports.readFileAsBuffer = exports.readFileAsText = exports.readFile = void 0; var tslib_1 = require("tslib"); function readFile(file, isBinary) { if (isBinary === void 0) { isBinary = false; } var fileReader = new FileReader(); return new Promise(function (resolve, reject) { fileReader.onerror = function () { fileReader.abort(); reject(new DOMException('Error parsing file.')); }; fileReader.onload = function () { resolve(isBinary ? new Uint8Array(fileReader.result) : fileReader.result); }; if (isBinary) { fileReader.readAsArrayBuffer(file); } else { fileReader.readAsText(file); } }); } exports.readFile = readFile; function readFileAsText(file) { return readFile(file, false); } exports.readFileAsText = readFileAsText; function readFileAsBuffer(file) { return readFile(file, true); } exports.readFileAsBuffer = readFileAsBuffer; function readUrl(url, isBinary) { return (0, tslib_1.__awaiter)(this, void 0, void 0, function () { var response, _a, _b; return (0, tslib_1.__generator)(this, function (_c) { switch (_c.label) { case 0: return [4 /*yield*/, fetch(url)]; case 1: response = _c.sent(); if (!isBinary) return [3 /*break*/, 3]; _b = Uint8Array.bind; return [4 /*yield*/, response.arrayBuffer()]; case 2: _a = new (_b.apply(Uint8Array, [void 0, _c.sent()]))(); return [3 /*break*/, 5]; case 3: return [4 /*yield*/, response.text()]; case 4: _a = _c.sent(); _c.label = 5; case 5: return [2 /*return*/, _a]; } }); }); } exports.readUrl = readUrl; function readUrlAsText(url) { return readUrl(url, false); } exports.readUrlAsText = readUrlAsText; function readUrlAsBuffer(url) { return readUrl(url, true); } exports.readUrlAsBuffer = readUrlAsBuffer; //# sourceMappingURL=read.js.map