UNPKG

@kurrent/kurrentdb-client

Version:
40 lines 1.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Client_1 = require("../Client"); const constants_1 = require("../constants"); const utils_1 = require("../utils"); const streamMetadata_1 = require("./utils/streamMetadata"); const systemStreams_1 = require("./utils/systemStreams"); Client_1.Client.prototype.getStreamMetadata = async function (streamName, baseOptions = {}) { const metadataStreamName = (0, systemStreams_1.metastreamOf)(streamName); utils_1.debug.command("getStreamMetadata: %O", { streamName, options: baseOptions, }); try { let metadataEvent; for await (const e of await this.readStream(metadataStreamName, { ...baseOptions, fromRevision: constants_1.END, maxCount: 1, direction: constants_1.BACKWARDS, })) { metadataEvent = e; } if (!metadataEvent || !metadataEvent.event || !metadataEvent.event.isJson) { return { streamName }; } return { streamName, metadata: (0, streamMetadata_1.readStreamMetadata)(metadataEvent.event.data), metastreamRevision: metadataEvent.commitPosition, }; } catch (error) { if (error instanceof utils_1.StreamNotFoundError) { return { streamName }; } throw error; } }; //# sourceMappingURL=getStreamMetadata.js.map