@platform/cell.client
Version:
A strongly typed HTTP client for operating with a CellOS service end-point.
46 lines (45 loc) • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.HttpClientCell = void 0;
var HttpClientCellDb_1 = require("./HttpClientCellDb");
var HttpClientCellFs_1 = require("./HttpClientCellFs");
var HttpClientCellLinks_1 = require("./HttpClientCellLinks");
function HttpClientCell(args) {
var uri = args.uri, urls = args.urls, http = args.http;
var fs;
var db;
var links;
var api = {
uri: uri,
get url() {
return urls.cell(uri);
},
get db() {
if (db)
return db;
return (db = (0, HttpClientCellDb_1.HttpClientCellDb)({ parent: parent, urls: urls, http: http }));
},
get fs() {
if (fs)
return fs;
return (fs = (0, HttpClientCellFs_1.HttpClientCellFs)({ parent: parent, urls: urls, http: http }));
},
get links() {
var _this = this;
if (links)
return links;
return (links = (0, HttpClientCellLinks_1.HttpClientCellLinks)({ uri: uri, urls: urls, http: http, getInfo: function () { return _this.info(); } }));
},
exists: function () {
return api.db.exists();
},
info: function (options) {
if (options === void 0) { options = {}; }
return api.db.read(options);
},
toString: function () { return uri.toString(); },
};
var parent = api;
return api;
}
exports.HttpClientCell = HttpClientCell;