@lightningkite/ktor-batteries
Version:
44 lines • 2.22 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LiveReadModelApi = void 0;
// Package: com.lightningkite.ktordb.live
// Generated by Khrysalis - this file will be overwritten.
const ReadModelApi_1 = require("../ReadModelApi");
const Query_1 = require("../db/Query");
const rxjs_plus_1 = require("@lightningkite/rxjs-plus");
//! Declares com.lightningkite.ktordb.live.LiveReadModelApi
class LiveReadModelApi extends ReadModelApi_1.ReadModelApi {
constructor(url, token, headers = new Map([]), serializer, querySerializer) {
var _a;
super();
this.url = url;
this.serializer = serializer;
this.querySerializer = querySerializer;
this.authHeaders = (_a = (() => {
if (token === null || token === undefined) {
return null;
}
return ((it) => (new Map([...headers, ...new Map([["Authorization", `Bearer ${it}`]])])))(token);
})()) !== null && _a !== void 0 ? _a : headers;
}
list(query) {
return rxjs_plus_1.HttpClient.INSTANCE.call(`${this.url}/query`, rxjs_plus_1.HttpClient.INSTANCE.POST, this.authHeaders, rxjs_plus_1.HttpBody.json(query), undefined).pipe(rxjs_plus_1.unsuccessfulAsError, (0, rxjs_plus_1.fromJSON)([Array, this.serializer]));
}
get(id) {
return rxjs_plus_1.HttpClient.INSTANCE.call(`${this.url}/${id}`, rxjs_plus_1.HttpClient.INSTANCE.GET, this.authHeaders, undefined, undefined).pipe(rxjs_plus_1.unsuccessfulAsError, (0, rxjs_plus_1.fromJSON)(this.serializer));
}
}
exports.LiveReadModelApi = LiveReadModelApi;
(function (LiveReadModelApi) {
//! Declares com.lightningkite.ktordb.live.LiveReadModelApi.Companion
class Companion {
constructor() {
}
create(Model, root, path, token, headers = new Map([])) {
return new LiveReadModelApi(`${root}${path}`, token, headers, Model, [Query_1.Query, Model]);
}
}
Companion.INSTANCE = new Companion();
LiveReadModelApi.Companion = Companion;
})(LiveReadModelApi = exports.LiveReadModelApi || (exports.LiveReadModelApi = {}));
//# sourceMappingURL=LiveReadModelApi.js.map