UNPKG

nestjs-event-sourcing-lib

Version:

A comprehensive Event Sourcing and CQRS library for NestJS applications

10 lines 1.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AGGREGATE_METADATA = void 0; exports.AggregateRoot = AggregateRoot; exports.getAggregateMetadata = getAggregateMetadata; const common_1 = require("@nestjs/common"); /** * Metadata for aggregate */ exports.AGGREGATE_METADATA = Symbol('AGGREGATE_METADATA'); /** * Decorator to mark class as aggregate */ function AggregateRoot(metadata) { return function (constructor) { const aggregateMetadata = { name: (metadata === null || metadata === void 0 ? void 0 : metadata.name) || constructor.name, eventStore: metadata === null || metadata === void 0 ? void 0 : metadata.eventStore, snapshotFrequency: (metadata === null || metadata === void 0 ? void 0 : metadata.snapshotFrequency) || 0, }; (0, common_1.SetMetadata)(exports.AGGREGATE_METADATA, aggregateMetadata)(constructor); (0, common_1.Injectable)()(constructor); return constructor; }; } /** * Function to get aggregate metadata */ function getAggregateMetadata(target) { return Reflect.getMetadata(exports.AGGREGATE_METADATA, target); } //# sourceMappingURL=aggregate.decorator.js.map