@ddd-ts/event-sourcing-inmemory 0.0.3-3 → 0.0.3-31

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.
@@ -7,8 +7,8 @@ export declare class InMemoryEventStore extends EventStore {
7
7
  private newStreamSubscribers;
8
8
  close(): Promise<void>;
9
9
  clear(): Promise<void>;
10
- appendToAggregateStream<A extends EsAggregate>(AGGREGATE: Constructor<A>, accountId: A extends EsAggregate<infer Id> ? Id : never, changes: EsChange[], expectedRevision: bigint): Promise<void>;
11
- readAggregateStream<A extends EsAggregate>(AGGREGATE: Constructor<A>, accountId: A extends EsAggregate<infer Id> ? Id : never, from?: bigint): AsyncGenerator<{
10
+ appendToAggregateStream<A extends EsAggregate<any, any>>(AGGREGATE: Constructor<A>, accountId: A extends EsAggregate<infer Id, any> ? Id : never, changes: EsChange[], expectedRevision: bigint): Promise<void>;
11
+ readAggregateStream<A extends EsAggregate<any, any>>(AGGREGATE: Constructor<A>, accountId: A extends EsAggregate<infer Id, any> ? Id : never, from?: bigint): AsyncGenerator<{
12
12
  id: string;
13
13
  type: string;
14
14
  payload: import("@ddd-ts/event-sourcing").Serializable;
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.event-store.d.ts","sourceRoot":"","sources":["../../src/event-store/in-memory.event-store.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,gBAAgB,CAAsC;IAE9D,OAAO,CAAC,oBAAoB,CAAuC;IAE7D,KAAK;IAIL,KAAK;IAQL,uBAAuB,CAAC,CAAC,SAAS,WAAW,EACjD,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,EACvD,OAAO,EAAE,QAAQ,EAAE,EACnB,gBAAgB,EAAE,MAAM;IAwBnB,mBAAmB,CAAC,CAAC,SAAS,WAAW,EAC9C,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,EACvD,IAAI,SAAK;;;;;;IAcX,OAAO,CAAC,kBAAkB;IAiDnB,mBAAmB,CAAC,MAAM,EAAE,4BAA4B,EAAE,IAAI,SAAK;;;;;;IAMpE,qBAAqB,CAAC,MAAM,EAAE,4BAA4B,EAAE,IAAI,SAAK;IAMrE,yBAAyB,CAC7B,MAAM,EAAE,4BAA4B,EACpC,WAAW,EAAE,MAAM;;;;;;;;CAMtB"}
1
+ {"version":3,"file":"in-memory.event-store.d.ts","sourceRoot":"","sources":["../../src/event-store/in-memory.event-store.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,gBAAgB,CAAsC;IAE9D,OAAO,CAAC,oBAAoB,CAAuC;IAE7D,KAAK;IAIL,KAAK;IAQL,uBAAuB,CAAC,CAAC,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAC3D,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,EAC5D,OAAO,EAAE,QAAQ,EAAE,EACnB,gBAAgB,EAAE,MAAM;IAwBnB,mBAAmB,CAAC,CAAC,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EACxD,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,EAC5D,IAAI,SAAK;;;;;;IAcX,OAAO,CAAC,kBAAkB;IAiDnB,mBAAmB,CAAC,MAAM,EAAE,4BAA4B,EAAE,IAAI,SAAK;;;;;;IAMpE,qBAAqB,CAAC,MAAM,EAAE,4BAA4B,EAAE,IAAI,SAAK;IAMrE,yBAAyB,CAC7B,MAAM,EAAE,4BAA4B,EACpC,WAAW,EAAE,MAAM;;;;;;;;CAMtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.event-store.js","sourceRoot":"","sources":["../../src/event-store/in-memory.event-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"in-memory.event-store.js","sourceRoot":"","sources":["../../src/event-store/in-memory.event-store.ts"],"names":[],"mappings":";;;AAAA,2DAKgC;AAEhC,yDAAqD;AACrD,qCAAkC;AAElC,MAAa,kBAAmB,SAAQ,2BAAU;IACxC,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IACpC,gBAAgB,GAAG,IAAI,GAAG,EAA2B,CAAC;IAEtD,oBAAoB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEnE,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE;YAChD,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC1D;QACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,SAAyB,EACzB,SAA4D,EAC5D,OAAmB,EACnB,gBAAwB;QAExB,MAAM,UAAU,GAAG,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;QAE/D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YACjC,MAAM,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACrC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;SACvE;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QAE7C,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAChD,IAAI,eAAe,KAAK,MAAM,CAAC,gBAAgB,CAAC,EAAE;YAChD,MAAM,IAAI,KAAK,CACb,qBAAqB,gBAAgB,YAAY,eAAe,EAAE,CACnE,CAAC;SACH;QAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACvB;IACH,CAAC;IAED,KAAK,CAAC,CAAC,mBAAmB,CACxB,SAAyB,EACzB,SAA4D,EAC5D,IAAI,GAAG,EAAE;QAET,MAAM,UAAU,GAAG,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;QAE/D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QAED,IAAI,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC/D,MAAM,IAAI,CAAC;SACZ;IACH,CAAC;IAEO,kBAAkB,CACxB,MAAoC;QAEpC,MAAM,UAAU,GAAG,MAAM;aACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAClB,IAAI,EAAE;aACN,IAAI,CAAC,GAAG,CAAC,CAAC;QAEb,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YACzC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;SAC/C;QAED,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACzC,MAAM,oBAAoB,GAAG,OAAO;aACjC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC;QAE1C,MAAM,YAAY,GAAG,oBAAoB;aACtC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;aAC7B,IAAI,EAAE;aACN,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QAEjE,MAAM,eAAe,GAAG,IAAI,kCAAe,EAAE,CAAC;QAE9C,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;YAC/B,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC9B;QAED,KAAK,MAAM,MAAM,IAAI,oBAAoB,EAAE;YACzC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5C,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC7B,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YACH,8BAA8B;SAC/B;QAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACvC,mCAAmC;YACnC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5C,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACrC,8BAA8B;QAChC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QACvD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,CAAC,mBAAmB,CAAC,MAAoC,EAAE,IAAI,GAAG,EAAE;QACxE,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAExD,KAAK,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAoC,EAAE,IAAI,GAAG,EAAE;QACzE,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAExD,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,MAAoC,EACpC,WAAmB;QAEnB,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAExD,OAAO,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;CACF;AApID,gDAoIC"}
@@ -10,7 +10,7 @@ class InMemoryCheckpoint extends event_sourcing_1.Checkpoint {
10
10
  this.inMemoryDatabase = inMemoryDatabase;
11
11
  }
12
12
  async get(name, trx) {
13
- const checkpoint = this.inMemoryDatabase.load("checkpoint", name, trx);
13
+ const checkpoint = this.inMemoryDatabase.load("checkpoint", name, trx?.transaction);
14
14
  if (typeof checkpoint === "bigint") {
15
15
  return checkpoint;
16
16
  }
@@ -21,7 +21,7 @@ class InMemoryCheckpoint extends event_sourcing_1.Checkpoint {
21
21
  if (revision < current) {
22
22
  throw new event_sourcing_1.CheckpointFurtherAway(name, revision, current);
23
23
  }
24
- this.inMemoryDatabase.save("checkpoint", name, revision, trx);
24
+ this.inMemoryDatabase.save("checkpoint", name, revision, trx?.transaction);
25
25
  }
26
26
  async clear() {
27
27
  this.inMemoryDatabase.clear("checkpoint");
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.checkpoint.js","sourceRoot":"","sources":["../src/in-memory.checkpoint.ts"],"names":[],"mappings":";;;AAAA,2DAA2E;AAG3E,MAAa,kBAAmB,SAAQ,2BAAU;IAGnB;IAF7B,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAExC,YAA6B,gBAAkC;QAC7D,KAAK,EAAE,CAAC;QADmB,qBAAgB,GAAhB,gBAAgB,CAAkB;IAE/D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,GAAyB;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACvE,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,OAAO,UAAU,CAAC;SACnB;QACD,OAAO,CAAC,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,QAAgB,EAAE,GAAyB;QACjE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,QAAQ,GAAG,OAAO,EAAE;YACtB,MAAM,IAAI,sCAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;SAC1D;QAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;CACF;AA3BD,gDA2BC"}
1
+ {"version":3,"file":"in-memory.checkpoint.js","sourceRoot":"","sources":["../src/in-memory.checkpoint.ts"],"names":[],"mappings":";;;AAAA,2DAA2E;AAG3E,MAAa,kBAAmB,SAAQ,2BAAU;IAGnB;IAF7B,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAExC,YAA6B,gBAAkC;QAC7D,KAAK,EAAE,CAAC;QADmB,qBAAgB,GAAhB,gBAAgB,CAAkB;IAE/D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,GAAyB;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACpF,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,OAAO,UAAU,CAAC;SACnB;QACD,OAAO,CAAC,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,QAAgB,EAAE,GAAyB;QACjE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,QAAQ,GAAG,OAAO,EAAE;YACtB,MAAM,IAAI,sCAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;SAC1D;QAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;CACF;AA3BD,gDA2BC"}
@@ -1,11 +1,13 @@
1
- import { Serializer } from "@ddd-ts/model";
2
1
  import { Snapshotter, EsAggregate } from "@ddd-ts/event-sourcing";
2
+ import { Model } from "@ddd-ts/model";
3
+ import { ISerializer } from "@ddd-ts/serialization";
3
4
  import { InMemoryDatabase } from "@ddd-ts/store-inmemory";
4
- export declare class InMemorySnapshotter<S extends Serializer<EsAggregate>> extends Snapshotter<S extends Serializer<infer A> ? A : never> {
5
+ export declare class InMemorySnapshotter<S extends ISerializer<EsAggregate<any, any>>> extends Snapshotter<S extends ISerializer<infer A> ? A : never> {
5
6
  private readonly db;
6
7
  readonly serializer: S;
7
8
  constructor(db: InMemoryDatabase, serializer: S);
8
- load(id: ReturnType<S["getIdFromModel"]>): Promise<any>;
9
- save(aggregate: S extends Serializer<infer A> ? A : never): Promise<void>;
9
+ private getIdFromModel;
10
+ load(id: S extends ISerializer<infer T extends Model> ? T['id'] : never): Promise<any>;
11
+ save(aggregate: S extends ISerializer<infer A extends Model> ? A : never): Promise<void>;
10
12
  }
11
13
  //# sourceMappingURL=in-memory.snapshotter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.snapshotter.d.ts","sourceRoot":"","sources":["../src/in-memory.snapshotter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,qBAAa,mBAAmB,CAC9B,CAAC,SAAS,UAAU,CAAC,WAAW,CAAC,CACjC,SAAQ,WAAW,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAE5D,OAAO,CAAC,QAAQ,CAAC,EAAE;aACH,UAAU,EAAE,CAAC;gBADZ,EAAE,EAAE,gBAAgB,EACrB,UAAU,EAAE,CAAC;IAKzB,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAUvD,IAAI,CACR,SAAS,EAAE,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GACnD,OAAO,CAAC,IAAI,CAAC;CAQjB"}
1
+ {"version":3,"file":"in-memory.snapshotter.d.ts","sourceRoot":"","sources":["../src/in-memory.snapshotter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,qBAAa,mBAAmB,CAC9B,CAAC,SAAS,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAC5C,SAAQ,WAAW,CAAC,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAE7D,OAAO,CAAC,QAAQ,CAAC,EAAE;aACH,UAAU,EAAE,CAAC;gBADZ,EAAE,EAAE,gBAAgB,EACrB,UAAU,EAAE,CAAC;IAK/B,OAAO,CAAC,cAAc;IAShB,IAAI,CAAC,EAAE,EAAE,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC;IAUtF,IAAI,CACR,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,GAClE,OAAO,CAAC,IAAI,CAAC;CAQjB"}
@@ -10,6 +10,14 @@ class InMemorySnapshotter extends event_sourcing_1.Snapshotter {
10
10
  this.db = db;
11
11
  this.serializer = serializer;
12
12
  }
13
+ getIdFromModel(model) {
14
+ if (Object.getOwnPropertyNames(model.id).includes('serialize')) {
15
+ if ('serialize' in model.id) {
16
+ return model.id.serialize();
17
+ }
18
+ }
19
+ return model.id.toString();
20
+ }
13
21
  async load(id) {
14
22
  const snapshot = await this.db.loadLatestSnapshot(id.toString());
15
23
  if (!snapshot) {
@@ -18,7 +26,7 @@ class InMemorySnapshotter extends event_sourcing_1.Snapshotter {
18
26
  return this.serializer.deserialize(snapshot.serialized);
19
27
  }
20
28
  async save(aggregate) {
21
- const id = this.serializer.getIdFromModel(aggregate);
29
+ const id = this.getIdFromModel(aggregate);
22
30
  this.db.save("snapshots", id.toString(), {
23
31
  id: id.toString(),
24
32
  revision: Number(aggregate.acknowledgedRevision),
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.snapshotter.js","sourceRoot":"","sources":["../src/in-memory.snapshotter.ts"],"names":[],"mappings":";;;AACA,2DAAkE;AAGlE,MAAa,mBAEX,SAAQ,4BAAsD;IAE3C;IACD;IAFlB,YACmB,EAAoB,EACrB,UAAa;QAE7B,KAAK,EAAE,CAAC;QAHS,OAAE,GAAF,EAAE,CAAkB;QACrB,eAAU,GAAV,UAAU,CAAG;IAG/B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAmC;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,IAAI,CACR,SAAoD;QAEpD,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE;YACvC,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE;YACjB,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;YAChD,UAAU,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;CACF;AA9BD,kDA8BC"}
1
+ {"version":3,"file":"in-memory.snapshotter.js","sourceRoot":"","sources":["../src/in-memory.snapshotter.ts"],"names":[],"mappings":";;;AAAA,2DAAkE;AAKlE,MAAa,mBAEX,SAAQ,4BAAuD;IAE5C;IACD;IAFlB,YACmB,EAAoB,EACrB,UAAa;QAE7B,KAAK,EAAE,CAAC;QAHS,OAAE,GAAF,EAAE,CAAkB;QACrB,eAAU,GAAV,UAAU,CAAG;IAG/B,CAAC;IAEO,cAAc,CAAC,KAA+D;QACpF,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;YAC9D,IAAI,WAAW,IAAI,KAAK,CAAC,EAAE,EAAE;gBAC3B,OAAO,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,CAAA;aAC5B;SACF;QACD,OAAO,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAkE;QAC3E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,IAAI,CACR,SAAmE;QAEnE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE;YACvC,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE;YACjB,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;YAChD,UAAU,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;CACF;AAvCD,kDAuCC"}
@@ -13,11 +13,11 @@ describe("EventSourcingInMemory", () => {
13
13
  (0, tests_1.BankSuite)(es, checkpoint, transaction, (serializer, name) => {
14
14
  const store = new store_inmemory_1.InMemoryStore(name, database, serializer);
15
15
  return store;
16
- }, (AGGREGATE, serializer) => {
16
+ }, (AGGREGATE, serializer, eventSerializers) => {
17
17
  const persistor = class extends (0, event_sourcing_1.EsAggregatePersistorWithSnapshots)(AGGREGATE) {
18
18
  };
19
19
  const snapshotter = new in_memory_snapshotter_1.InMemorySnapshotter(database, serializer);
20
- return new persistor(es, snapshotter);
20
+ return new persistor(es, eventSerializers, snapshotter);
21
21
  });
22
22
  });
23
23
  //# sourceMappingURL=bank.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bank.spec.js","sourceRoot":"","sources":["../../src/test/bank.spec.ts"],"names":[],"mappings":";;AAAA,2DAA2E;AAC3E,2DAIgC;AAChC,yCAA0C;AAC1C,0BAA4D;AAC5D,oEAA+D;AAE/D,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,EAAE,GAAG,IAAI,sBAAkB,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAG,IAAI,iCAAgB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,sBAAkB,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,IAAI,6CAA4B,CAAC,QAAQ,CAAC,CAAC;IAE/D,IAAA,iBAAS,EACP,EAAE,EACF,UAAU,EACV,WAAW,EACX,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE;QACnB,MAAM,KAAK,GAAG,IAAI,8BAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAQ,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC,EACD,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;QACxB,MAAM,SAAS,GAAG,KAAM,SAAQ,IAAA,kDAAiC,EAC/D,SAAS,CACV;SAAG,CAAC;QACL,MAAM,WAAW,GAAG,IAAI,2CAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAClE,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"bank.spec.js","sourceRoot":"","sources":["../../src/test/bank.spec.ts"],"names":[],"mappings":";;AAAA,2DAA2E;AAC3E,2DAIgC;AAChC,yCAA0C;AAC1C,0BAA4D;AAC5D,oEAA+D;AAE/D,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,EAAE,GAAG,IAAI,sBAAkB,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAG,IAAI,iCAAgB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,sBAAkB,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,IAAI,6CAA4B,CAAC,QAAQ,CAAC,CAAC;IAE/D,IAAA,iBAAS,EACP,EAAE,EACF,UAAU,EACV,WAAW,EACX,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE;QACnB,MAAM,KAAK,GAAG,IAAI,8BAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAQ,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC,EACD,CAAC,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;QAC1C,MAAM,SAAS,GAAG,KAAM,SAAQ,IAAA,kDAAiC,EAC/D,SAAS,CACV;SAAG,CAAC;QACL,MAAM,WAAW,GAAG,IAAI,2CAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAClE,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,16 +1,17 @@
1
1
  {
2
2
  "name": "@ddd-ts/event-sourcing-inmemory",
3
- "version": "0.0.3-3",
3
+ "version": "0.0.3-31",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "license": "MIT",
7
7
  "scripts": {
8
- "test": "test-runner",
8
+ "test": "test-runner --maxWorkers=1",
9
9
  "build": "builder"
10
10
  },
11
- "dependencies": {
11
+ "peerDependencies": {
12
12
  "@ddd-ts/event-sourcing": "*",
13
13
  "@ddd-ts/model": "*",
14
+ "@ddd-ts/serialization": "*",
14
15
  "@ddd-ts/store-inmemory": "*"
15
16
  },
16
17
  "devDependencies": {