@ocoda/event-sourcing-mariadb 4.0.0-next.0 → 4.0.0-next.2

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.
Files changed (43) hide show
  1. package/README.md +4 -4
  2. package/dist/interfaces/mariadb-event-entity.d.ts +10 -2
  3. package/dist/interfaces/mariadb-event-entity.d.ts.map +1 -1
  4. package/dist/interfaces/mariadb-event-store-config.d.ts +6 -2
  5. package/dist/interfaces/mariadb-event-store-config.d.ts.map +1 -1
  6. package/dist/interfaces/mariadb-snapshot-entity.d.ts +6 -2
  7. package/dist/interfaces/mariadb-snapshot-entity.d.ts.map +1 -1
  8. package/dist/interfaces/mariadb-snapshot-store-config.d.ts +6 -2
  9. package/dist/interfaces/mariadb-snapshot-store-config.d.ts.map +1 -1
  10. package/dist/mariadb.event-store.d.ts +64 -7
  11. package/dist/mariadb.event-store.d.ts.map +1 -1
  12. package/dist/mariadb.event-store.js +373 -179
  13. package/dist/mariadb.event-store.js.map +1 -1
  14. package/dist/mariadb.schema.d.ts +170 -0
  15. package/dist/mariadb.schema.d.ts.map +1 -0
  16. package/dist/mariadb.schema.js +307 -0
  17. package/dist/mariadb.schema.js.map +1 -0
  18. package/dist/mariadb.snapshot-store.d.ts +58 -6
  19. package/dist/mariadb.snapshot-store.d.ts.map +1 -1
  20. package/dist/mariadb.snapshot-store.js +287 -194
  21. package/dist/mariadb.snapshot-store.js.map +1 -1
  22. package/dist/mariadb.utils.d.ts +77 -2
  23. package/dist/mariadb.utils.d.ts.map +1 -1
  24. package/dist/mariadb.utils.js +111 -4
  25. package/dist/mariadb.utils.js.map +1 -1
  26. package/dist/migration/migrate.d.ts +61 -0
  27. package/dist/migration/migrate.d.ts.map +1 -0
  28. package/dist/migration/migrate.js +568 -0
  29. package/dist/migration/migrate.js.map +1 -0
  30. package/dist/migration/plan.d.ts +85 -0
  31. package/dist/migration/plan.d.ts.map +1 -0
  32. package/dist/migration/plan.js +179 -0
  33. package/dist/migration/plan.js.map +1 -0
  34. package/dist/migration/render.d.ts +5 -0
  35. package/dist/migration/render.d.ts.map +1 -0
  36. package/dist/migration/render.js +54 -0
  37. package/dist/migration/render.js.map +1 -0
  38. package/dist/migration/sql.d.ts +173 -0
  39. package/dist/migration/sql.d.ts.map +1 -0
  40. package/dist/migration/sql.js +345 -0
  41. package/dist/migration/sql.js.map +1 -0
  42. package/migrations/4.0.sql +190 -0
  43. package/package.json +12 -11
package/README.md CHANGED
@@ -3,8 +3,8 @@
3
3
  </p>
4
4
 
5
5
  <p align="center">
6
- <a href="https://github.com/ocoda/event-sourcing/actions/workflows/ci-libraries.yml">
7
- <img src="https://github.com/ocoda/event-sourcing/actions/workflows/ci-libraries.yml/badge.svg">
6
+ <a href="https://github.com/ocoda/event-sourcing/actions/workflows/ci.yml?query=branch%3Amaster">
7
+ <img src="https://github.com/ocoda/event-sourcing/actions/workflows/ci.yml/badge.svg?branch=master">
8
8
  </a>
9
9
  <a href="https://codecov.io/gh/ocoda/event-sourcing">
10
10
  <img src="https://codecov.io/gh/ocoda/event-sourcing/branch/master/graph/badge.svg?token=D6BRXUY0J8">
@@ -14,9 +14,9 @@
14
14
  </a>
15
15
  </p>
16
16
  <p align="center">
17
- <a href="https://github.com/ocoda/event-sourcing/issues/new?labels=bug&template=bug_report.md">Report a bug</a>
17
+ <a href="https://github.com/ocoda/event-sourcing/issues/new?template=bug_report.yml">Report a bug</a>
18
18
  &nbsp;|&nbsp;
19
- <a href="https://github.com/ocoda/event-sourcing/issues/new?labels=enhancement&template=feature_request.md">Request a feature</a>
19
+ <a href="https://github.com/ocoda/event-sourcing/issues/new?template=feature_request.yml">Request a feature</a>
20
20
  </p>
21
21
 
22
22
  ## About this library
@@ -1,4 +1,7 @@
1
- import type { IEvent, IEventPayload } from '@ocoda/event-sourcing';
1
+ import type { EventHeaders, IEvent, IEventPayload } from '@ocoda/event-sourcing';
2
+ /**
3
+ * A row of an event table (schema v2), as the store reads it: `global_position` and `occurred_on` as text.
4
+ */
2
5
  export type MariaDBEventEntity = {
3
6
  stream_id: string;
4
7
  version: number;
@@ -6,8 +9,13 @@ export type MariaDBEventEntity = {
6
9
  payload: IEventPayload<IEvent>;
7
10
  event_id: string;
8
11
  aggregate_id: string;
9
- occurred_on: Date;
12
+ /** UTC wall time, `YYYY-MM-DD HH:MM:SS.mmm`. */
13
+ occurred_on: string;
10
14
  correlation_id: string | null;
11
15
  causation_id: string | null;
16
+ /** A decimal integer. */
17
+ global_position: string;
18
+ headers: EventHeaders | null;
19
+ event_version: number | null;
12
20
  };
13
21
  //# sourceMappingURL=mariadb-event-entity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mariadb-event-entity.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-event-entity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,MAAM,kBAAkB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,IAAI,CAAC;IAClB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,CAAC"}
1
+ {"version":3,"file":"mariadb-event-entity.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-event-entity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,yBAAyB;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC"}
@@ -1,8 +1,12 @@
1
1
  import type { Type } from '@nestjs/common';
2
- import type { EventStoreConfig } from '@ocoda/event-sourcing';
2
+ import type { EventStoreConfig, SchemaOptions } from '@ocoda/event-sourcing';
3
3
  import type { PoolConfig } from 'mariadb';
4
4
  import type { MariaDBEventStore } from '../mariadb.event-store.js';
5
- export interface MariaDBEventStoreConfig extends EventStoreConfig, PoolConfig {
5
+ /**
6
+ * The configuration of a `MariaDBEventStore`: the `mariadb` pool options, and `ddl`, which says whether the store may
7
+ * create its tables (`'auto'`, the default) or only checks them (`'none'`).
8
+ */
9
+ export interface MariaDBEventStoreConfig extends EventStoreConfig, PoolConfig, SchemaOptions {
6
10
  driver: Type<MariaDBEventStore>;
7
11
  }
8
12
  //# sourceMappingURL=mariadb-event-store-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mariadb-event-store-config.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-event-store-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB,EAAE,UAAU;IAC5E,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;CAChC"}
1
+ {"version":3,"file":"mariadb-event-store-config.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-event-store-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;GAGG;AACH,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB,EAAE,UAAU,EAAE,aAAa;IAC3F,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;CAChC"}
@@ -1,12 +1,16 @@
1
1
  import type { AggregateRoot, ISnapshot } from '@ocoda/event-sourcing';
2
+ /**
3
+ * A row of a snapshot table. `registered_on` is read as UTC wall time text from a schema v2 table, and as a `Date`
4
+ * (through the connector, like 3.x) from a 3.x table.
5
+ */
2
6
  export type MariaDBSnapshotEntity<A extends AggregateRoot> = {
3
7
  stream_id: string;
4
8
  version: number;
5
9
  payload: ISnapshot<A>;
6
10
  snapshot_id: string;
7
11
  aggregate_id: string;
8
- registered_on: Date;
12
+ registered_on: string | Date;
9
13
  aggregate_name: string;
10
- latest?: string;
14
+ latest?: string | null;
11
15
  };
12
16
  //# sourceMappingURL=mariadb-snapshot-entity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mariadb-snapshot-entity.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-snapshot-entity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEtE,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,aAAa,IAAI;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,IAAI,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC"}
1
+ {"version":3,"file":"mariadb-snapshot-entity.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-snapshot-entity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,aAAa,IAAI;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC"}
@@ -1,8 +1,12 @@
1
1
  import type { Type } from '@nestjs/common';
2
- import type { SnapshotStoreConfig } from '@ocoda/event-sourcing';
2
+ import type { SchemaOptions, SnapshotStoreConfig } from '@ocoda/event-sourcing';
3
3
  import type { PoolConfig } from 'mariadb';
4
4
  import type { MariaDBSnapshotStore } from '../mariadb.snapshot-store.js';
5
- export interface MariaDBSnapshotStoreConfig extends SnapshotStoreConfig, PoolConfig {
5
+ /**
6
+ * The configuration of a `MariaDBSnapshotStore`: the `mariadb` pool options, and `ddl`, which says whether the store
7
+ * may create its tables (`'auto'`, the default) or only checks them (`'none'`).
8
+ */
9
+ export interface MariaDBSnapshotStoreConfig extends SnapshotStoreConfig, PoolConfig, SchemaOptions {
6
10
  driver: Type<MariaDBSnapshotStore>;
7
11
  }
8
12
  //# sourceMappingURL=mariadb-snapshot-store-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mariadb-snapshot-store-config.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-snapshot-store-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB,EAAE,UAAU;IAClF,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;CACnC"}
1
+ {"version":3,"file":"mariadb-snapshot-store-config.d.ts","sourceRoot":"","sources":["../../lib/interfaces/mariadb-snapshot-store-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,0BAA2B,SAAQ,mBAAmB,EAAE,UAAU,EAAE,aAAa;IACjG,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;CACnC"}
@@ -1,20 +1,77 @@
1
- import { EventEnvelope, EventStore, type EventStream, type IAllEventsFilter, type IEvent, type IEventCollection, type IEventCollectionFilter, type IEventFilter, type IEventPool } from '@ocoda/event-sourcing';
1
+ import { EventEnvelope, EventStore, type EventStoreCapabilities, type EventStream, type IEventCollection, type IEventCollectionFilter, type IEventFilter, type IEventPool, type IReadAllFilter, type MigrationOptions, type MigrationReport, type PersistOutcome, type PersistTarget } from '@ocoda/event-sourcing';
2
2
  import type { MariaDBEventStoreConfig } from './interfaces/index.js';
3
+ /**
4
+ * An event store on MariaDB (InnoDB), with schema v2 (ADR 0002 §3).
5
+ *
6
+ * - Every pool has a table, `events` or `<pool>-events`, registered in the `event_sourcing_collections` catalog, whose
7
+ * row counts the pool's global positions.
8
+ * - An append takes its positions from that counter, as the first write of its transaction, so appends to a pool
9
+ * commit in the order of their positions, and a reader never skips one (`globalOrder: 'gap-safe'`).
10
+ * - `ensureCollection` creates the tables (`ddl: 'auto'`) or checks them (`ddl: 'none'`), and refuses 3.x tables:
11
+ * migrate them with `MariaDBEventStore.migrate()`.
12
+ */
3
13
  export declare class MariaDBEventStore extends EventStore<MariaDBEventStoreConfig> {
14
+ /**
15
+ * Final once `connect()` resolved: a Galera cluster (`wsrep_on`) orders the positions per node only, so it gets
16
+ * `'best-effort'`.
17
+ */
18
+ readonly capabilities: EventStoreCapabilities;
4
19
  private pool;
20
+ /**
21
+ * Migrates the event tables of a 3.x store to schema v2, without a NestJS application: inspects every table (or the
22
+ * tables of `options.pools`), plans, and, unless `dryRun`, migrates them one by one. Stop every 3.x instance first.
23
+ */
24
+ static migrate(config: Omit<MariaDBEventStoreConfig, 'driver'>, options?: MigrationOptions): Promise<MigrationReport>;
25
+ /**
26
+ * Migrates the event tables of this store's database to schema v2, on a connection of its own; see the static
27
+ * `MariaDBEventStore.migrate()`.
28
+ */
29
+ migrate(options?: MigrationOptions): Promise<MigrationReport>;
5
30
  connect(): Promise<void>;
6
31
  disconnect(): Promise<void>;
32
+ /**
33
+ * Creates the table of a pool and registers it in the catalog (`ddl: 'auto'`), or checks and registers it
34
+ * (`ddl: 'none'`). Registering heals the pool's position counter: it becomes at least the highest position stored.
35
+ * @throws EventStoreSchemaException when the table has the 3.x schema, or, with `ddl: 'none'`, doesn't exist
36
+ */
7
37
  ensureCollection(pool?: IEventPool): Promise<IEventCollection>;
38
+ /**
39
+ * Lists the event collections of the catalog, in binary order. 3.x tables are not listed: they aren't registered.
40
+ */
8
41
  listCollections(filter?: IEventCollectionFilter): AsyncGenerator<IEventCollection[]>;
9
- getEvents({ streamId }: EventStream, filter?: IEventFilter): AsyncGenerator<IEvent[]>;
10
- getEvent({ streamId }: EventStream, version: number, pool?: IEventPool): Promise<IEvent>;
11
- appendEvents(stream: EventStream, aggregateVersion: number, events: IEvent[] | EventEnvelope[], pool?: IEventPool): Promise<EventEnvelope[]>;
42
+ getStreamVersion({ streamId }: EventStream, pool?: IEventPool): Promise<number>;
12
43
  getEnvelope({ streamId }: EventStream, version: number, pool?: IEventPool): Promise<EventEnvelope>;
13
44
  getEnvelopes({ streamId }: EventStream, filter?: IEventFilter): AsyncGenerator<EventEnvelope[]>;
14
- getAllEnvelopes(filter: IAllEventsFilter): AsyncGenerator<EventEnvelope[]>;
15
45
  /**
16
- * Best effort lookup of the latest version of a stream, used to report a conflict.
46
+ * Reads the envelopes of a pool in the order of their global positions, one statement per batch.
47
+ *
48
+ * InnoDB builds a read view from a walk over the active transactions that isn't atomic, so a batch can, rarely, show
49
+ * a position without an earlier one that committed just before it. A batch is therefore delivered only as far as its
50
+ * positions are contiguous from where the read is. At a gap, the reader reads the counter with a shared lock, which
51
+ * waits for the append that holds it: every position up to it is committed and visible then, and a gap below it is
52
+ * permanent (a deleted event, or a pool that was dropped and created again).
53
+ *
54
+ * Both reads must reach the server the appends run on: behind a proxy that sends plain reads to a replica, a gap of
55
+ * the replica's lag would pass for a permanent one.
56
+ */
57
+ readAll(filter?: IReadAllFilter): AsyncGenerator<EventEnvelope[]>;
58
+ /**
59
+ * Stores the envelopes of an append in one transaction, whose first write takes their positions from the pool's
60
+ * counter in the catalog. The counter's row lock serializes the appends to a pool until they commit.
61
+ */
62
+ protected persistEvents(envelopes: readonly EventEnvelope[], { stream, collection, pool }: PersistTarget): Promise<PersistOutcome>;
63
+ /**
64
+ * What a failed append before its commit means: another append took the (stream, version) key (a conflict), or
65
+ * nothing was stored.
66
+ */
67
+ private classifyFailure;
68
+ private readPositions;
69
+ /**
70
+ * The last position of the pool's counter, read with a shared lock: it waits until the append that holds the counter
71
+ * committed or rolled back, and every transaction that took a position up to it has left the set of active
72
+ * transactions before it returns (InnoDB deregisters a committing transaction before it releases its locks).
17
73
  */
18
- private getLatestVersion;
74
+ private readHighWaterMark;
75
+ private connected;
19
76
  }
20
77
  //# sourceMappingURL=mariadb.event-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mariadb.event-store.d.ts","sourceRoot":"","sources":["../lib/mariadb.event-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,aAAa,EAGb,UAAU,EAIV,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,UAAU,EAEf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAsB,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGzF,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,uBAAuB,CAAC;IACzE,OAAO,CAAC,IAAI,CAAO;IAEN,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAGpC;IAEY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAGvC;IAEY,gBAAgB,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAyB1E;IAEa,eAAe,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAgBjG;IAEM,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,CAkC3F;IAEK,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAa7F;IAEK,YAAY,CACjB,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,EAClC,IAAI,CAAC,EAAE,UAAU,GACf,OAAO,CAAC,aAAa,EAAE,CAAC,CAgF1B;IAEK,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAoBvG;IAEM,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC,CAgDrG;IAEM,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC,CA4ChF;IAED;;OAEG;YACW,gBAAgB;CAgB9B"}
1
+ {"version":3,"file":"mariadb.event-store.d.ts","sourceRoot":"","sources":["../lib/mariadb.event-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,aAAa,EAIb,UAAU,EACV,KAAK,sBAAsB,EAI3B,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAIlB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAsB,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAqCzF;;;;;;;;;GASG;AACH,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,uBAAuB,CAAC;IACzE;;;OAGG;IACH,SAAkB,YAAY,EAAE,sBAAsB,CAIpD;IAEF,OAAO,CAAC,IAAI,CAAmB;IAE/B;;;OAGG;IACH,MAAM,CAAC,OAAO,CACb,MAAM,EAAE,IAAI,CAAC,uBAAuB,EAAE,QAAQ,CAAC,EAC/C,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC,CAE1B;IAED;;;OAGG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAE5D;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAoBpC;IAEY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAQvC;IAED;;;;OAIG;IACU,gBAAgB,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA2C1E;IAED;;OAEG;IACW,eAAe,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAyBjG;IAEY,gBAAgB,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAW3F;IAEY,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAiB9G;IAEa,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC,CA6B5G;IAED;;;;;;;;;;;OAWG;IACW,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC,CAoC9E;IAED;;;OAGG;IACH,UAAgB,aAAa,CAC5B,SAAS,EAAE,SAAS,aAAa,EAAE,EACnC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,aAAa,GACzC,OAAO,CAAC,cAAc,CAAC,CAsFzB;IAED;;;OAGG;IACH,OAAO,CAAC,eAAe;YAoBT,aAAa;IAoB3B;;;;OAIG;YACW,iBAAiB;IAgB/B,OAAO,CAAC,SAAS;CAMjB"}