@kurrent/kurrentdb-client
Version:
KurrentDB gRPC NodeJS Client SDK
36 lines • 1.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const shared_pb_1 = require("../../generated/shared_pb");
const projections_grpc_pb_1 = require("../../generated/projections_grpc_pb");
const projections_pb_1 = require("../../generated/projections_pb");
const utils_1 = require("../utils");
const Client_1 = require("../Client");
const mapGrpcProjectionDetails_1 = require("./utils/mapGrpcProjectionDetails");
Client_1.Client.prototype.listProjections = async function (baseOptions = {}) {
const options = new projections_pb_1.StatisticsReq.Options();
options.setContinuous(new shared_pb_1.Empty());
const req = new projections_pb_1.StatisticsReq();
req.setOptions(options);
utils_1.debug.command("%s: %O", "listProjections", {
options: baseOptions,
});
utils_1.debug.command_grpc("%s: %g", "listProjections", req);
return this.execute(projections_grpc_pb_1.ProjectionsClient, "listProjections", (client) => {
const stream = client.statistics(req, ...this.callArguments(baseOptions));
return new Promise((resolve, reject) => {
const projectionDetails = [];
stream.on("error", (error) => {
reject((0, utils_1.convertToCommandError)(error));
});
stream.on("data", (resp) => {
if (!resp.hasDetails())
return;
projectionDetails.push((0, mapGrpcProjectionDetails_1.mapGrpcProjectionDetails)(resp.getDetails()));
});
stream.on("end", () => {
resolve(projectionDetails);
});
});
});
};
//# sourceMappingURL=listProjections.js.map