molstar
Version:
A comprehensive macromolecular library.
50 lines • 2.17 kB
JavaScript
/**
* Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author David Sehnal <david.sehnal@gmail.com>
*/
import { __awaiter, __generator } from "tslib";
import { Download, ReadFile, DownloadBlob, RawData } from '../transforms/data';
import { getFileInfo } from '../../mol-util/file-info';
var DataBuilder = /** @class */ (function () {
function DataBuilder(plugin) {
this.plugin = plugin;
}
Object.defineProperty(DataBuilder.prototype, "dataState", {
get: function () {
return this.plugin.state.data;
},
enumerable: false,
configurable: true
});
DataBuilder.prototype.rawData = function (params, options) {
var data = this.dataState.build().toRoot().apply(RawData, params, options);
return data.commit({ revertOnError: true });
};
DataBuilder.prototype.download = function (params, options) {
var data = this.dataState.build().toRoot().apply(Download, params, options);
return data.commit({ revertOnError: true });
};
DataBuilder.prototype.downloadBlob = function (params, options) {
var data = this.dataState.build().toRoot().apply(DownloadBlob, params, options);
return data.commit({ revertOnError: true });
};
DataBuilder.prototype.readFile = function (params, options) {
var _a;
return __awaiter(this, void 0, void 0, function () {
var data, fileInfo;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, this.dataState.build().toRoot().apply(ReadFile, params, options).commit({ revertOnError: true })];
case 1:
data = _b.sent();
fileInfo = getFileInfo(((_a = params.file) === null || _a === void 0 ? void 0 : _a.file) || '');
return [2 /*return*/, { data: data, fileInfo: fileInfo }];
}
});
});
};
return DataBuilder;
}());
export { DataBuilder };
//# sourceMappingURL=data.js.map