UNPKG

evtstore

Version:

Event Sourcing with Node.JS

32 lines 2.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAllEventsFor = exports.MemoryBookmark = exports.toMeta = void 0; function toMeta(ev) { return { aggregateId: ev.aggregateId, position: ev.position, stream: ev.stream, timestamp: new Date(ev.timestamp), version: ev.version, }; } exports.toMeta = toMeta; exports.MemoryBookmark = '@@MemoryBookmark'; async function getAllEventsFor(provider, stream, id, from) { const events = []; let current = from; do { const stored = await provider.getEventsFor(stream, id, current); events.push(...stored); if (stored.length === 0) return events; if (!provider.limit) return events; if (stored.length < provider.limit) return events; const last = stored.slice(-1)[0]; current = last.position; } while (true); } exports.getAllEventsFor = getAllEventsFor; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLFNBQWdCLE1BQU0sQ0FBQyxFQUFtQjtJQUN4QyxPQUFPO1FBQ0wsV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXO1FBQzNCLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUTtRQUNyQixNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU07UUFDakIsU0FBUyxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUM7UUFDakMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPO0tBQ3BCLENBQUE7QUFDSCxDQUFDO0FBUkQsd0JBUUM7QUFFWSxRQUFBLGNBQWMsR0FBRyxrQkFBa0IsQ0FBQTtBQUV6QyxLQUFLLFVBQVUsZUFBZSxDQUNuQyxRQUF1QixFQUN2QixNQUFjLEVBQ2QsRUFBVSxFQUNWLElBQVU7SUFFVixNQUFNLE1BQU0sR0FBb0IsRUFBRSxDQUFBO0lBQ2xDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQTtJQUNsQixHQUFHO1FBQ0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxRQUFRLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDL0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFBO1FBQ3RCLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxNQUFNLENBQUE7UUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1lBQUUsT0FBTyxNQUFNLENBQUE7UUFDbEMsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxLQUFLO1lBQUUsT0FBTyxNQUFNLENBQUE7UUFFakQsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ2hDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFBO0tBQ3hCLFFBQVEsSUFBSSxFQUFDO0FBQ2hCLENBQUM7QUFsQkQsMENBa0JDIn0=