@meticoeus/ddd-es 0.3.15 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/package.json +1 -1
- package/dist/src/IRepository.d.ts +1 -1
- package/dist/src/IRepository.d.ts.map +1 -1
- package/dist/src/Repository.d.ts +2 -2
- package/dist/src/Repository.d.ts.map +1 -1
- package/dist/src/Repository.js +2 -2
- package/dist/src/Repository.js.map +1 -1
- package/dist/src/otel/Repository.d.ts +1 -1
- package/dist/src/otel/Repository.d.ts.map +1 -1
- package/dist/src/otel/Repository.js.map +1 -1
- package/dist/src/types.d.ts +8 -3
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.mocks.d.ts +3 -1
- package/dist/src/types.mocks.d.ts.map +1 -1
- package/dist/src/types.mocks.js +19 -2
- package/dist/src/types.mocks.js.map +1 -1
- package/package.json +1 -1
package/dist/package.json
CHANGED
|
@@ -6,7 +6,7 @@ export interface IRepository<DomainEvent extends IEvent, T extends AggregateRoot
|
|
|
6
6
|
* The concurrency exception handling can currently return any kind of exception.
|
|
7
7
|
* API design may need some work to address this.
|
|
8
8
|
*/
|
|
9
|
-
save(aggregate: T, expectedRevision: EventRevision): Promise<Result<SaveEventSuccess
|
|
9
|
+
save(aggregate: T, expectedRevision: EventRevision): Promise<Result<SaveEventSuccess<DomainEvent>, ConcurrencyException | EventConflictException | Exception>>;
|
|
10
10
|
getById(id: string, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
11
11
|
getRevisionById(id: string, revision: bigint, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
12
12
|
getByLink<ID extends string>(link: VersionedFixedLink<ID>, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IRepository.d.ts","sourceRoot":"","sources":["../../src/IRepository.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,SAAS,EACT,MAAM,EACN,MAAM,EACN,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,WAAW,CAAC,WAAW,SAAS,MAAM,EAAE,CAAC,SAAS,aAAa,CAAC,WAAW,CAAC;IAC3F;;;OAGG;IACH,IAAI,CACF,SAAS,EAAE,CAAC,EACZ,gBAAgB,EAAE,aAAa,GAC9B,OAAO,
|
|
1
|
+
{"version":3,"file":"IRepository.d.ts","sourceRoot":"","sources":["../../src/IRepository.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,SAAS,EACT,MAAM,EACN,MAAM,EACN,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,WAAW,CAAC,WAAW,SAAS,MAAM,EAAE,CAAC,SAAS,aAAa,CAAC,WAAW,CAAC;IAC3F;;;OAGG;IACH,IAAI,CACF,SAAS,EAAE,CAAC,EACZ,gBAAgB,EAAE,aAAa,GAC9B,OAAO,CACR,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,oBAAoB,GAAG,sBAAsB,GAAG,SAAS,CAAC,CACjG,CAAA;IAED,OAAO,CACL,EAAE,EAAE,MAAM,EACV,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAA;IAE1D,eAAe,CACb,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAA;IAE1D,SAAS,CAAC,EAAE,SAAS,MAAM,EACzB,IAAI,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAC5B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAA;CAC3D"}
|
package/dist/src/Repository.d.ts
CHANGED
|
@@ -7,11 +7,11 @@ export declare abstract class Repository<DomainEvent extends IEvent, T extends A
|
|
|
7
7
|
protected readonly _storage: IEventStore;
|
|
8
8
|
protected readonly _config?: AggregateConfig | undefined;
|
|
9
9
|
protected constructor(_class: AggregateRootClass<DomainEvent, T>, _storage: IEventStore, _config?: AggregateConfig | undefined);
|
|
10
|
-
save(aggregate: T, expectedRevision: EventRevision): Promise<Result<SaveEventSuccess
|
|
10
|
+
save(aggregate: T, expectedRevision: EventRevision): Promise<Result<SaveEventSuccess<DomainEvent>, ConcurrencyException | EventConflictException | Exception>>;
|
|
11
11
|
/**
|
|
12
12
|
* Automatically retry to save the events if none of the new events conflict with the change set
|
|
13
13
|
*/
|
|
14
|
-
protected retrySave(aggregate: T, nextExpectedRevision: bigint, retries?: number, newAggregate?: T): Promise<Result<SaveEventSuccess
|
|
14
|
+
protected retrySave(aggregate: T, nextExpectedRevision: bigint, retries?: number, newAggregate?: T): Promise<Result<SaveEventSuccess<DomainEvent>, ConcurrencyException | EventConflictException | Exception>>;
|
|
15
15
|
getById(id: string, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
16
16
|
getRevisionById(id: string, revision: bigint, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
17
17
|
getByLink<ID extends string>(link: VersionedFixedLink<ID>, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Repository.d.ts","sourceRoot":"","sources":["../../src/Repository.ts"],"names":[],"mappings":"AAwBA,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EACL,oBAAoB,EAEpB,sBAAsB,EAEtB,aAAa,EACb,SAAS,EACT,MAAM,EACN,WAAW,EAEX,MAAM,EACN,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,8BAAsB,UAAU,CAAC,WAAW,SAAS,MAAM,EAAE,CAAC,SAAS,aAAa,CAAC,WAAW,CAAC,CAC/F,YAAW,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAGpC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW;IACxC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;IAH7B,SAAS,aACY,MAAM,EAAE,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,EAC1C,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,6BAAiB;IAGjC,IAAI,CACf,SAAS,EAAE,CAAC,EACZ,gBAAgB,EAAE,aAAa,GAC9B,OAAO,
|
|
1
|
+
{"version":3,"file":"Repository.d.ts","sourceRoot":"","sources":["../../src/Repository.ts"],"names":[],"mappings":"AAwBA,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EACL,oBAAoB,EAEpB,sBAAsB,EAEtB,aAAa,EACb,SAAS,EACT,MAAM,EACN,WAAW,EAEX,MAAM,EACN,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,8BAAsB,UAAU,CAAC,WAAW,SAAS,MAAM,EAAE,CAAC,SAAS,aAAa,CAAC,WAAW,CAAC,CAC/F,YAAW,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAGpC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW;IACxC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;IAH7B,SAAS,aACY,MAAM,EAAE,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,EAC1C,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,6BAAiB;IAGjC,IAAI,CACf,SAAS,EAAE,CAAC,EACZ,gBAAgB,EAAE,aAAa,GAC9B,OAAO,CACR,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,oBAAoB,GAAG,sBAAsB,GAAG,SAAS,CAAC,CACjG;IAwCD;;OAEG;cACa,SAAS,CACvB,SAAS,EAAE,CAAC,EACZ,oBAAoB,EAAE,MAAM,EAC5B,OAAO,SAAI,EACX,YAAY,CAAC,EAAE,CAAC,GACf,OAAO,CACR,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,oBAAoB,GAAG,sBAAsB,GAAG,SAAS,CAAC,CACjG;IAoDM,OAAO,CACZ,EAAE,EAAE,MAAM,EACV,cAAc,GAAE,OAAe,GAC9B,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IAInD,eAAe,CACpB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,cAAc,GAAE,OAAe,GAC9B,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IAInD,SAAS,CAAC,EAAE,SAAS,MAAM,EAChC,IAAI,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAC5B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;cAQ1C,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,cAAc,EAAE,OAAO,GAAG,SAAS,GAClC,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;CAU3D"}
|
package/dist/src/Repository.js
CHANGED
|
@@ -43,7 +43,7 @@ export class Repository {
|
|
|
43
43
|
const res = await this._storage.saveEvents(stream, aggregate.getUncommittedChanges(), expectedRevision);
|
|
44
44
|
if (res.ok) {
|
|
45
45
|
aggregate.markChangesAsCommitted();
|
|
46
|
-
return Ok(
|
|
46
|
+
return Ok(res.value);
|
|
47
47
|
}
|
|
48
48
|
else if (res.error) {
|
|
49
49
|
switch (expectedRevision) {
|
|
@@ -90,7 +90,7 @@ export class Repository {
|
|
|
90
90
|
const res = await this._storage.saveEvents(streamName, aggregate.getUncommittedChanges(), nextExpectedRevision);
|
|
91
91
|
if (res.ok) {
|
|
92
92
|
aggregate.markChangesAsCommitted();
|
|
93
|
-
return Ok(
|
|
93
|
+
return Ok(res.value);
|
|
94
94
|
}
|
|
95
95
|
else if (res.error && retries > 0) {
|
|
96
96
|
// @ts-ignore - TODO: what can we do if the DB doesn't return the next revision here?
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Repository.js","sourceRoot":"","sources":["../../src/Repository.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;EAsBE;AAUF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAEL,GAAG,EACH,sBAAsB,EACtB,sBAAsB,EAKtB,EAAE,GAGH,MAAM,YAAY,CAAA;AAEnB,MAAM,OAAgB,UAAU;IAIT;IACA;IACA;IAHrB,YACqB,MAA0C,EAC1C,QAAqB,EACrB,OAAyB;QAFzB,WAAM,GAAN,MAAM,CAAoC;QAC1C,aAAQ,GAAR,QAAQ,CAAa;QACrB,YAAO,GAAP,OAAO,CAAkB;IAC3C,CAAC;IAEG,KAAK,CAAC,IAAI,CACf,SAAY,EACZ,gBAA+B;
|
|
1
|
+
{"version":3,"file":"Repository.js","sourceRoot":"","sources":["../../src/Repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Repository } from '../Repository.js';
|
|
|
3
3
|
import { VersionedFixedLink } from '../entities.js';
|
|
4
4
|
import { ConcurrencyException, EventConflictException, EventRevision, Exception, IEvent, Result, SaveEventSuccess } from '../types.js';
|
|
5
5
|
export declare abstract class OtelRepository<DomainEvent extends IEvent, T extends AggregateRoot<DomainEvent>> extends Repository<DomainEvent, T> {
|
|
6
|
-
save(aggregate: T, expectedRevision: EventRevision): Promise<Result<SaveEventSuccess
|
|
6
|
+
save(aggregate: T, expectedRevision: EventRevision): Promise<Result<SaveEventSuccess<DomainEvent>, ConcurrencyException | EventConflictException | Exception>>;
|
|
7
7
|
getById(id: string, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
8
8
|
getRevisionById(id: string, revision: bigint, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
9
9
|
getByLink<ID extends string>(link: VersionedFixedLink<ID>, includeDeleted?: boolean): Promise<PersistedAggregate<DomainEvent, T> | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Repository.d.ts","sourceRoot":"","sources":["../../../src/otel/Repository.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,SAAS,EACT,MAAM,EACN,MAAM,EACN,gBAAgB,EACjB,MAAM,aAAa,CAAA;AAKpB,8BAAsB,cAAc,CAClC,WAAW,SAAS,MAAM,EAC1B,CAAC,SAAS,aAAa,CAAC,WAAW,CAAC,CACpC,SAAQ,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IACZ,IAAI,CACxB,SAAS,EAAE,CAAC,EACZ,gBAAgB,EAAE,aAAa,GAC9B,OAAO,
|
|
1
|
+
{"version":3,"file":"Repository.d.ts","sourceRoot":"","sources":["../../../src/otel/Repository.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,SAAS,EACT,MAAM,EACN,MAAM,EACN,gBAAgB,EACjB,MAAM,aAAa,CAAA;AAKpB,8BAAsB,cAAc,CAClC,WAAW,SAAS,MAAM,EAC1B,CAAC,SAAS,aAAa,CAAC,WAAW,CAAC,CACpC,SAAQ,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IACZ,IAAI,CACxB,SAAS,EAAE,CAAC,EACZ,gBAAgB,EAAE,aAAa,GAC9B,OAAO,CACR,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,oBAAoB,GAAG,sBAAsB,GAAG,SAAS,CAAC,CACjG;IAeqB,OAAO,CAC3B,EAAE,EAAE,MAAM,EACV,cAAc,GAAE,OAAe,GAC9B,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IAIpC,eAAe,CACnC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,cAAc,GAAE,OAAe,GAC9B,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IAIpC,SAAS,CAAC,EAAE,SAAS,MAAM,EAC/C,IAAI,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAC5B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;cAI1C,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,EACvC,cAAc,GAAE,OAAe,GAC9B,OAAO,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;CAgC3D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Repository.js","sourceRoot":"","sources":["../../../src/otel/Repository.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;EAsBE;AAEF,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAW7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE7D,MAAM,OAAgB,cAGpB,SAAQ,UAA0B;IAClB,KAAK,CAAC,IAAI,CACxB,SAAY,EACZ,gBAA+B;
|
|
1
|
+
{"version":3,"file":"Repository.js","sourceRoot":"","sources":["../../../src/otel/Repository.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -137,15 +137,20 @@ export declare enum EventExistenceRevision {
|
|
|
137
137
|
NoStream = "no_stream"
|
|
138
138
|
}
|
|
139
139
|
export type EventRevision = EventExistenceRevision | bigint;
|
|
140
|
-
export interface SaveEventSuccess {
|
|
140
|
+
export interface SaveEventSuccess<Event extends IEvent = IEvent> {
|
|
141
141
|
/**
|
|
142
142
|
* The current revision of the stream, to be passed as the `expectedRevision` in the next call.
|
|
143
143
|
*/
|
|
144
144
|
nextExpectedRevision: bigint;
|
|
145
|
+
/**
|
|
146
|
+
* The implementation may optionally return persisted events.
|
|
147
|
+
* If so, it must consistently return them or not return them for all saveEvents calls.
|
|
148
|
+
*/
|
|
149
|
+
events?: Persisted<Event>[];
|
|
145
150
|
}
|
|
146
|
-
export type SaveEventResult = Result<SaveEventSuccess
|
|
151
|
+
export type SaveEventResult<Event extends IEvent = IEvent> = Result<SaveEventSuccess<Event>, ConcurrencyException>;
|
|
147
152
|
export interface IEventStore {
|
|
148
|
-
saveEvents(streamName: string, events: IEvent[], expectedRevision: EventRevision): Promise<SaveEventResult
|
|
153
|
+
saveEvents<Event extends IEvent = IEvent>(streamName: string, events: IEvent[], expectedRevision: EventRevision): Promise<SaveEventResult<Event>>;
|
|
149
154
|
deleteStream(streamName: string, expectedRevision?: EventRevision): Promise<Result<void, ConcurrencyException>>;
|
|
150
155
|
getEventsForAggregate<Event extends IEvent = IEvent>(streamName: string, expectedRevision?: bigint): Promise<Persisted<Event>[]>;
|
|
151
156
|
getEventsForAggregateFromRevision<Event extends IEvent = IEvent>(streamName: string, fromRevision: bigint): Promise<Persisted<Event>[]>;
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,10 @@ export declare function mockPersistedEvents<E extends IEvent>(events: Omit<E, 'm
|
|
|
5
5
|
export declare class MockEventStore implements IEventStore {
|
|
6
6
|
protected _events: Map<string, IPersistedEvent[]>;
|
|
7
7
|
protected _position: bigint;
|
|
8
|
+
/** Control whether the mock store returns the saved events in the result. */
|
|
9
|
+
returnSavedEvents: boolean;
|
|
8
10
|
constructor(events?: Map<string, IEvent[]>);
|
|
9
|
-
saveEvents(streamName: string, events: IEvent[], eventRevision: EventRevision): Promise<SaveEventResult
|
|
11
|
+
saveEvents<Event extends IEvent = IEvent>(streamName: string, events: IEvent[], eventRevision: EventRevision): Promise<SaveEventResult<Event>>;
|
|
10
12
|
deleteStream(streamName: string, eventRevision?: EventRevision): Promise<Result<void, ConcurrencyException>>;
|
|
11
13
|
getEventsForAggregate<Event extends IEvent = IEvent>(streamName: string, expectedRevision?: bigint): Promise<Persisted<Event>[]>;
|
|
12
14
|
getEventsForAggregateFromRevision<Event extends IEvent = IEvent>(streamName: string, fromRevision: bigint): Promise<Persisted<Event>[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mocks.d.ts","sourceRoot":"","sources":["../../src/types.mocks.ts"],"names":[],"mappings":"AAyBA,OAAO,EACL,oBAAoB,EAGpB,aAAa,EACb,MAAM,EACN,WAAW,EACX,eAAe,EAEf,SAAS,EACT,MAAM,EACN,eAAe,
|
|
1
|
+
{"version":3,"file":"types.mocks.d.ts","sourceRoot":"","sources":["../../src/types.mocks.ts"],"names":[],"mappings":"AAyBA,OAAO,EACL,oBAAoB,EAGpB,aAAa,EACb,MAAM,EACN,WAAW,EACX,eAAe,EAEf,SAAS,EACT,MAAM,EACN,eAAe,EAEhB,MAAM,YAAY,CAAA;AAEnB,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAKxE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACjD,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,EACzB,QAAQ,EAAE,MAAM,GACf,SAAS,CAAC,CAAC,CAAC,CAMd;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAC7B,QAAQ,EAAE,MAAM,GACf,SAAS,CAAC,CAAC,CAAC,EAAE,CAQhB;AAED,qBAAa,cAAe,YAAW,WAAW;IAChD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAA;IACjD,SAAS,CAAC,SAAS,EAAE,MAAM,CAAK;IAEhC,6EAA6E;IACtE,iBAAiB,UAAQ;gBAEpB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAqBpC,UAAU,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EAC5C,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,aAAa,GAC3B,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IA6C5B,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAwBxC,qBAAqB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EACvD,UAAU,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IAgBxB,iCAAiC,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EACnE,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IAY9B,SAAS,IAAI,MAAM,EAAE;CAGtB"}
|
package/dist/src/types.mocks.js
CHANGED
|
@@ -46,6 +46,8 @@ export function mockPersistedEvents(events, revision) {
|
|
|
46
46
|
export class MockEventStore {
|
|
47
47
|
_events;
|
|
48
48
|
_position = 0n;
|
|
49
|
+
/** Control whether the mock store returns the saved events in the result. */
|
|
50
|
+
returnSavedEvents = false;
|
|
49
51
|
constructor(events) {
|
|
50
52
|
this._events = new Map();
|
|
51
53
|
if (events) {
|
|
@@ -85,11 +87,26 @@ export class MockEventStore {
|
|
|
85
87
|
return Err(new ConcurrencyException(streamName, eventRevision, revision));
|
|
86
88
|
}
|
|
87
89
|
}
|
|
90
|
+
const newEvents = [];
|
|
88
91
|
for (const event of events) {
|
|
89
92
|
revision++;
|
|
90
|
-
|
|
93
|
+
const e = {
|
|
94
|
+
id: 'Event:1',
|
|
95
|
+
...event,
|
|
96
|
+
revision,
|
|
97
|
+
position: this._position++,
|
|
98
|
+
};
|
|
99
|
+
newEvents.push(e);
|
|
100
|
+
commited.push(e);
|
|
101
|
+
}
|
|
102
|
+
let output;
|
|
103
|
+
if (this.returnSavedEvents) {
|
|
104
|
+
output = { nextExpectedRevision: revision, events: newEvents };
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
output = { nextExpectedRevision: revision };
|
|
91
108
|
}
|
|
92
|
-
return Ok(
|
|
109
|
+
return Ok(output);
|
|
93
110
|
}
|
|
94
111
|
async deleteStream(streamName, eventRevision) {
|
|
95
112
|
if (!this._events.has(streamName)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mocks.js","sourceRoot":"","sources":["../../src/types.mocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;EAsBE;AAEF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EACL,oBAAoB,EACpB,GAAG,EACH,sBAAsB,EAKtB,EAAE,
|
|
1
|
+
{"version":3,"file":"types.mocks.js","sourceRoot":"","sources":["../../src/types.mocks.ts"],"names":[],"mappings":"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"}
|