@event-driven-io/emmett-esdb 0.5.2 → 0.5.3
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/chunk-K54GVY42.mjs +1 -0
- package/dist/chunk-K54GVY42.mjs.map +1 -0
- package/dist/chunk-LVTTC5N6.js +2 -0
- package/dist/chunk-LVTTC5N6.js.map +1 -0
- package/dist/chunk-SSON3PNA.mjs +2 -0
- package/dist/chunk-SSON3PNA.mjs.map +1 -0
- package/dist/chunk-UXBL2ICC.js +1 -0
- package/dist/chunk-UXBL2ICC.js.map +1 -0
- package/dist/eventStore/eventstoreDBEventStore.js +1 -148
- package/dist/eventStore/eventstoreDBEventStore.js.map +1 -1
- package/dist/eventStore/eventstoreDBEventStore.mjs +1 -148
- package/dist/eventStore/eventstoreDBEventStore.mjs.map +1 -1
- package/dist/eventStore/index.js +1 -1
- package/dist/eventStore/index.js.map +1 -1
- package/dist/eventStore/index.mjs +1 -1
- package/dist/eventStore/index.mjs.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chunk-K54GVY42.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var g;(function(e){e.NOT_A_NONEMPTY_STRING="NOT_A_NONEMPTY_STRING",e.NOT_A_POSITIVE_NUMBER="NOT_A_POSITIVE_NUMBER",e.NOT_AN_UNSIGNED_BIGINT="NOT_AN_UNSIGNED_BIGINT"})(g||(g={}));var l=e=>typeof e=="number"&&e===e,y=e=>typeof e=="string";var S=class e extends Error{constructor(t){let r=t&&typeof t=="object"&&"errorCode"in t?t.errorCode:l(t)?t:500,n=t&&typeof t=="object"&&"message"in t?t.message:y(t)?t:`Error with status code '${r}' ocurred during Emmett processing`;super(n),this.errorCode=r,Object.setPrototypeOf(this,e.prototype)}},p=class e extends S{constructor(t,r,n){super({errorCode:412,message:_nullishCoalesce(n, () => (`Expected version ${r.toString()} does not match current ${_optionalChain([t, 'optionalAccess', _2 => _2.toString, 'call', _3 => _3()])}`))}),this.current=t,this.expected=r,Object.setPrototypeOf(this,e.prototype)}};var d="STREAM_EXISTS",u="STREAM_DOES_NOT_EXIST",i="NO_CONCURRENCY_CHECK";var a=class e extends p{constructor(t,r){super(_optionalChain([t, 'optionalAccess', _4 => _4.toString, 'call', _5 => _5()]),_optionalChain([r, 'optionalAccess', _6 => _6.toString, 'call', _7 => _7()])),Object.setPrototypeOf(this,e.prototype)}};var _uuid = require('uuid');var _assert = require('assert'); var _assert2 = _interopRequireDefault(_assert);var _dbclient = require('@eventstore/db-client');var O=e=>e?{fromRevision:"from"in e?e.from:void 0,maxCount:"maxCount"in e?e.maxCount:"to"in e?e.to:void 0}:void 0,De= exports.a =e=>({async aggregateStream(t,r){try{let{evolve:n,getInitialState:o,read:s}=r,x=_optionalChain([s, 'optionalAccess', _8 => _8.expectedStreamVersion]),m=o(),f;for await(let{event:c}of e.readStream(t,O(r.read)))c&&(m=n(m,{type:c.type,data:c.data}),f=c.revision);return w(f,x),{currentStreamVersion:_nullishCoalesce(f, () => (0n)),state:m}}catch(n){if(n instanceof _dbclient.StreamNotFoundError)return null;throw n}},readStream:async(t,r)=>{let n=[],o;try{for await(let{event:s}of e.readStream(t,O(r)))s&&(n.push({type:s.type,data:s.data}),o=s.revision);return o?{currentStreamVersion:o,events:n}:null}catch(s){if(s instanceof _dbclient.StreamNotFoundError)return null;throw s}},appendToStream:async(t,r,n)=>{try{let o=r.map(_dbclient.jsonEvent),s=C(_optionalChain([n, 'optionalAccess', _9 => _9.expectedStreamVersion]));return{nextExpectedStreamVersion:(await e.appendToStream(t,o,{expectedRevision:s})).nextExpectedRevision}}catch(o){throw o instanceof _dbclient.WrongExpectedVersionError?new a(o.actualVersion,_(o.expectedVersion)):o}}}),C=e=>e===void 0?_dbclient.ANY:e===i?_dbclient.ANY:e==u?_dbclient.NO_STREAM:e==d?_dbclient.STREAM_EXISTS:e,_=e=>e===void 0?i:e===_dbclient.ANY?i:e==_dbclient.NO_STREAM?u:e==_dbclient.STREAM_EXISTS?d:e,A=(e,t)=>t===i?!0:t==u?e===void 0:t==d?e!==void 0:e===t,w=(e,t)=>{if(t??=i,!A(e,t))throw new a(e,t)};exports.a = De;
|
|
2
|
+
//# sourceMappingURL=chunk-LVTTC5N6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../node_modules/@event-driven-io/emmett/src/validation/index.ts","../node_modules/@event-driven-io/emmett/src/errors/index.ts","../node_modules/@event-driven-io/emmett/src/eventStore/expectedVersion.ts","../node_modules/@event-driven-io/emmett/src/eventStore/inMemoryEventStore.ts","../node_modules/@event-driven-io/emmett/src/testing/deciderSpecification.ts","../src/eventStore/eventstoreDBEventStore.ts"],"names":["ValidationErrors","isNumber","val","isString","EmmettError","_EmmettError","options","errorCode","message","ConcurrencyError","_ConcurrencyError","current","expected","STREAM_EXISTS","STREAM_DOES_NOT_EXIST","NO_CONCURRENCY_CHECK","ExpectedVersionConflictError","_ExpectedVersionConflictError","uuid","assert","ANY","ESDB_STREAM_EXISTS","NO_STREAM","StreamNotFoundError","WrongExpectedVersionError","jsonEvent","toEventStoreDBReadOptions","getEventStoreDBEventStore","eventStore","streamName","evolve","getInitialState","read","expectedStreamVersion","state","currentStreamVersion","event","assertExpectedVersionMatchesCurrent","error","events","serializedEvents","expectedRevision","toExpectedRevision","toExpectedVersion","matchesExpectedVersion"],"mappings":"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","sourcesContent":[null,null,null,null,null,"import {\n ExpectedVersionConflictError,\n NO_CONCURRENCY_CHECK,\n STREAM_DOES_NOT_EXIST,\n STREAM_EXISTS,\n type AggregateStreamOptions,\n type AggregateStreamResult,\n type AppendToStreamOptions,\n type AppendToStreamResult,\n type Event,\n type EventStore,\n type ExpectedStreamVersion,\n type ReadStreamOptions,\n type ReadStreamResult,\n} from '@event-driven-io/emmett';\nimport {\n ANY,\n STREAM_EXISTS as ESDB_STREAM_EXISTS,\n EventStoreDBClient,\n NO_STREAM,\n StreamNotFoundError,\n WrongExpectedVersionError,\n jsonEvent,\n type AppendExpectedRevision,\n type ReadStreamOptions as ESDBReadStreamOptions,\n} from '@eventstore/db-client';\n\nconst toEventStoreDBReadOptions = (\n options: ReadStreamOptions | undefined,\n): ESDBReadStreamOptions | undefined => {\n return options\n ? {\n fromRevision: 'from' in options ? options.from : undefined,\n maxCount:\n 'maxCount' in options\n ? options.maxCount\n : 'to' in options\n ? options.to\n : undefined,\n }\n : undefined;\n};\n\nexport const getEventStoreDBEventStore = (\n eventStore: EventStoreDBClient,\n): EventStore => {\n return {\n async aggregateStream<State, EventType extends Event>(\n streamName: string,\n options: AggregateStreamOptions<State, EventType>,\n ): Promise<AggregateStreamResult<State> | null> {\n try {\n const { evolve, getInitialState, read } = options;\n\n const expectedStreamVersion = read?.expectedStreamVersion;\n\n let state = getInitialState();\n let currentStreamVersion: bigint | undefined = undefined;\n\n for await (const { event } of eventStore.readStream(\n streamName,\n toEventStoreDBReadOptions(options.read),\n )) {\n if (!event) continue;\n\n state = evolve(state, <EventType>{\n type: event.type,\n data: event.data,\n });\n currentStreamVersion = event.revision;\n }\n\n assertExpectedVersionMatchesCurrent(\n currentStreamVersion,\n expectedStreamVersion,\n );\n\n return {\n currentStreamVersion: currentStreamVersion ?? 0n,\n state,\n };\n } catch (error) {\n if (error instanceof StreamNotFoundError) {\n return null;\n }\n\n throw error;\n }\n },\n\n readStream: async <EventType extends Event>(\n streamName: string,\n options?: ReadStreamOptions,\n ): Promise<ReadStreamResult<EventType>> => {\n const events: EventType[] = [];\n\n let currentStreamVersion: bigint | undefined = undefined;\n\n try {\n for await (const { event } of eventStore.readStream(\n streamName,\n toEventStoreDBReadOptions(options),\n )) {\n if (!event) continue;\n events.push(<EventType>{\n type: event.type,\n data: event.data,\n });\n currentStreamVersion = event.revision;\n }\n return currentStreamVersion\n ? {\n currentStreamVersion,\n events,\n }\n : null;\n } catch (error) {\n if (error instanceof StreamNotFoundError) {\n return null;\n }\n\n throw error;\n }\n },\n\n appendToStream: async <EventType extends Event>(\n streamName: string,\n events: EventType[],\n options?: AppendToStreamOptions,\n ): Promise<AppendToStreamResult> => {\n try {\n const serializedEvents = events.map(jsonEvent);\n\n const expectedRevision = toExpectedRevision(\n options?.expectedStreamVersion,\n );\n\n const appendResult = await eventStore.appendToStream(\n streamName,\n serializedEvents,\n {\n expectedRevision,\n },\n );\n\n return { nextExpectedStreamVersion: appendResult.nextExpectedRevision };\n } catch (error) {\n if (error instanceof WrongExpectedVersionError) {\n throw new ExpectedVersionConflictError(\n error.actualVersion,\n toExpectedVersion(error.expectedVersion),\n );\n }\n\n throw error;\n }\n },\n };\n};\n\nconst toExpectedRevision = (\n expected: ExpectedStreamVersion | undefined,\n): AppendExpectedRevision => {\n if (expected === undefined) return ANY;\n\n if (expected === NO_CONCURRENCY_CHECK) return ANY;\n\n if (expected == STREAM_DOES_NOT_EXIST) return NO_STREAM;\n\n if (expected == STREAM_EXISTS) return ESDB_STREAM_EXISTS;\n\n return expected as bigint;\n};\n\nconst toExpectedVersion = (\n expected: AppendExpectedRevision | undefined,\n): ExpectedStreamVersion => {\n if (expected === undefined) return NO_CONCURRENCY_CHECK;\n\n if (expected === ANY) return NO_CONCURRENCY_CHECK;\n\n if (expected == NO_STREAM) return STREAM_DOES_NOT_EXIST;\n\n if (expected == ESDB_STREAM_EXISTS) return STREAM_EXISTS;\n\n return expected;\n};\n\nconst matchesExpectedVersion = (\n current: bigint | undefined,\n expected: ExpectedStreamVersion,\n): boolean => {\n if (expected === NO_CONCURRENCY_CHECK) return true;\n\n if (expected == STREAM_DOES_NOT_EXIST) return current === undefined;\n\n if (expected == STREAM_EXISTS) return current !== undefined;\n\n return current === expected;\n};\n\nconst assertExpectedVersionMatchesCurrent = (\n current: bigint | undefined,\n expected: ExpectedStreamVersion | undefined,\n): void => {\n expected ??= NO_CONCURRENCY_CHECK;\n\n if (!matchesExpectedVersion(current, expected))\n throw new ExpectedVersionConflictError(current, expected);\n};\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var g;(function(e){e.NOT_A_NONEMPTY_STRING="NOT_A_NONEMPTY_STRING",e.NOT_A_POSITIVE_NUMBER="NOT_A_POSITIVE_NUMBER",e.NOT_AN_UNSIGNED_BIGINT="NOT_AN_UNSIGNED_BIGINT"})(g||(g={}));var l=e=>typeof e=="number"&&e===e,y=e=>typeof e=="string";var S=class e extends Error{errorCode;constructor(t){let r=t&&typeof t=="object"&&"errorCode"in t?t.errorCode:l(t)?t:500,n=t&&typeof t=="object"&&"message"in t?t.message:y(t)?t:`Error with status code '${r}' ocurred during Emmett processing`;super(n),this.errorCode=r,Object.setPrototypeOf(this,e.prototype)}},p=class e extends S{current;expected;constructor(t,r,n){super({errorCode:412,message:n??`Expected version ${r.toString()} does not match current ${t?.toString()}`}),this.current=t,this.expected=r,Object.setPrototypeOf(this,e.prototype)}};var d="STREAM_EXISTS",u="STREAM_DOES_NOT_EXIST",i="NO_CONCURRENCY_CHECK";var a=class e extends p{constructor(t,r){super(t?.toString(),r?.toString()),Object.setPrototypeOf(this,e.prototype)}};import{v4 as U}from"uuid";import ue from"assert";import{ANY as E,STREAM_EXISTS as h,NO_STREAM as N,StreamNotFoundError as T,WrongExpectedVersionError as v,jsonEvent as R}from"@eventstore/db-client";var O=e=>e?{fromRevision:"from"in e?e.from:void 0,maxCount:"maxCount"in e?e.maxCount:"to"in e?e.to:void 0}:void 0,De=e=>({async aggregateStream(t,r){try{let{evolve:n,getInitialState:o,read:s}=r,x=s?.expectedStreamVersion,m=o(),f;for await(let{event:c}of e.readStream(t,O(r.read)))c&&(m=n(m,{type:c.type,data:c.data}),f=c.revision);return w(f,x),{currentStreamVersion:f??0n,state:m}}catch(n){if(n instanceof T)return null;throw n}},readStream:async(t,r)=>{let n=[],o;try{for await(let{event:s}of e.readStream(t,O(r)))s&&(n.push({type:s.type,data:s.data}),o=s.revision);return o?{currentStreamVersion:o,events:n}:null}catch(s){if(s instanceof T)return null;throw s}},appendToStream:async(t,r,n)=>{try{let o=r.map(R),s=C(n?.expectedStreamVersion);return{nextExpectedStreamVersion:(await e.appendToStream(t,o,{expectedRevision:s})).nextExpectedRevision}}catch(o){throw o instanceof v?new a(o.actualVersion,_(o.expectedVersion)):o}}}),C=e=>e===void 0?E:e===i?E:e==u?N:e==d?h:e,_=e=>e===void 0?i:e===E?i:e==N?u:e==h?d:e,A=(e,t)=>t===i?!0:t==u?e===void 0:t==d?e!==void 0:e===t,w=(e,t)=>{if(t??=i,!A(e,t))throw new a(e,t)};export{De as a};
|
|
2
|
+
//# sourceMappingURL=chunk-SSON3PNA.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../node_modules/@event-driven-io/emmett/src/validation/index.ts","../node_modules/@event-driven-io/emmett/src/errors/index.ts","../node_modules/@event-driven-io/emmett/src/eventStore/expectedVersion.ts","../node_modules/@event-driven-io/emmett/src/eventStore/inMemoryEventStore.ts","../node_modules/@event-driven-io/emmett/src/testing/deciderSpecification.ts","../src/eventStore/eventstoreDBEventStore.ts"],"sourcesContent":[null,null,null,null,null,"import {\n ExpectedVersionConflictError,\n NO_CONCURRENCY_CHECK,\n STREAM_DOES_NOT_EXIST,\n STREAM_EXISTS,\n type AggregateStreamOptions,\n type AggregateStreamResult,\n type AppendToStreamOptions,\n type AppendToStreamResult,\n type Event,\n type EventStore,\n type ExpectedStreamVersion,\n type ReadStreamOptions,\n type ReadStreamResult,\n} from '@event-driven-io/emmett';\nimport {\n ANY,\n STREAM_EXISTS as ESDB_STREAM_EXISTS,\n EventStoreDBClient,\n NO_STREAM,\n StreamNotFoundError,\n WrongExpectedVersionError,\n jsonEvent,\n type AppendExpectedRevision,\n type ReadStreamOptions as ESDBReadStreamOptions,\n} from '@eventstore/db-client';\n\nconst toEventStoreDBReadOptions = (\n options: ReadStreamOptions | undefined,\n): ESDBReadStreamOptions | undefined => {\n return options\n ? {\n fromRevision: 'from' in options ? options.from : undefined,\n maxCount:\n 'maxCount' in options\n ? options.maxCount\n : 'to' in options\n ? options.to\n : undefined,\n }\n : undefined;\n};\n\nexport const getEventStoreDBEventStore = (\n eventStore: EventStoreDBClient,\n): EventStore => {\n return {\n async aggregateStream<State, EventType extends Event>(\n streamName: string,\n options: AggregateStreamOptions<State, EventType>,\n ): Promise<AggregateStreamResult<State> | null> {\n try {\n const { evolve, getInitialState, read } = options;\n\n const expectedStreamVersion = read?.expectedStreamVersion;\n\n let state = getInitialState();\n let currentStreamVersion: bigint | undefined = undefined;\n\n for await (const { event } of eventStore.readStream(\n streamName,\n toEventStoreDBReadOptions(options.read),\n )) {\n if (!event) continue;\n\n state = evolve(state, <EventType>{\n type: event.type,\n data: event.data,\n });\n currentStreamVersion = event.revision;\n }\n\n assertExpectedVersionMatchesCurrent(\n currentStreamVersion,\n expectedStreamVersion,\n );\n\n return {\n currentStreamVersion: currentStreamVersion ?? 0n,\n state,\n };\n } catch (error) {\n if (error instanceof StreamNotFoundError) {\n return null;\n }\n\n throw error;\n }\n },\n\n readStream: async <EventType extends Event>(\n streamName: string,\n options?: ReadStreamOptions,\n ): Promise<ReadStreamResult<EventType>> => {\n const events: EventType[] = [];\n\n let currentStreamVersion: bigint | undefined = undefined;\n\n try {\n for await (const { event } of eventStore.readStream(\n streamName,\n toEventStoreDBReadOptions(options),\n )) {\n if (!event) continue;\n events.push(<EventType>{\n type: event.type,\n data: event.data,\n });\n currentStreamVersion = event.revision;\n }\n return currentStreamVersion\n ? {\n currentStreamVersion,\n events,\n }\n : null;\n } catch (error) {\n if (error instanceof StreamNotFoundError) {\n return null;\n }\n\n throw error;\n }\n },\n\n appendToStream: async <EventType extends Event>(\n streamName: string,\n events: EventType[],\n options?: AppendToStreamOptions,\n ): Promise<AppendToStreamResult> => {\n try {\n const serializedEvents = events.map(jsonEvent);\n\n const expectedRevision = toExpectedRevision(\n options?.expectedStreamVersion,\n );\n\n const appendResult = await eventStore.appendToStream(\n streamName,\n serializedEvents,\n {\n expectedRevision,\n },\n );\n\n return { nextExpectedStreamVersion: appendResult.nextExpectedRevision };\n } catch (error) {\n if (error instanceof WrongExpectedVersionError) {\n throw new ExpectedVersionConflictError(\n error.actualVersion,\n toExpectedVersion(error.expectedVersion),\n );\n }\n\n throw error;\n }\n },\n };\n};\n\nconst toExpectedRevision = (\n expected: ExpectedStreamVersion | undefined,\n): AppendExpectedRevision => {\n if (expected === undefined) return ANY;\n\n if (expected === NO_CONCURRENCY_CHECK) return ANY;\n\n if (expected == STREAM_DOES_NOT_EXIST) return NO_STREAM;\n\n if (expected == STREAM_EXISTS) return ESDB_STREAM_EXISTS;\n\n return expected as bigint;\n};\n\nconst toExpectedVersion = (\n expected: AppendExpectedRevision | undefined,\n): ExpectedStreamVersion => {\n if (expected === undefined) return NO_CONCURRENCY_CHECK;\n\n if (expected === ANY) return NO_CONCURRENCY_CHECK;\n\n if (expected == NO_STREAM) return STREAM_DOES_NOT_EXIST;\n\n if (expected == ESDB_STREAM_EXISTS) return STREAM_EXISTS;\n\n return expected;\n};\n\nconst matchesExpectedVersion = (\n current: bigint | undefined,\n expected: ExpectedStreamVersion,\n): boolean => {\n if (expected === NO_CONCURRENCY_CHECK) return true;\n\n if (expected == STREAM_DOES_NOT_EXIST) return current === undefined;\n\n if (expected == STREAM_EXISTS) return current !== undefined;\n\n return current === expected;\n};\n\nconst assertExpectedVersionMatchesCurrent = (\n current: bigint | undefined,\n expected: ExpectedStreamVersion | undefined,\n): void => {\n expected ??= NO_CONCURRENCY_CHECK;\n\n if (!matchesExpectedVersion(current, expected))\n throw new ExpectedVersionConflictError(current, expected);\n};\n"],"mappings":"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","names":["ValidationErrors","isNumber","val","isString","EmmettError","_EmmettError","options","errorCode","isNumber","message","isString","ConcurrencyError","_ConcurrencyError","current","expected","STREAM_EXISTS","STREAM_DOES_NOT_EXIST","NO_CONCURRENCY_CHECK","ExpectedVersionConflictError","_ExpectedVersionConflictError","ConcurrencyError","current","expected","uuid","assert","ANY","ESDB_STREAM_EXISTS","NO_STREAM","StreamNotFoundError","WrongExpectedVersionError","jsonEvent","toEventStoreDBReadOptions","options","getEventStoreDBEventStore","eventStore","streamName","evolve","getInitialState","read","expectedStreamVersion","state","currentStreamVersion","event","assertExpectedVersionMatchesCurrent","error","events","serializedEvents","expectedRevision","toExpectedRevision","ExpectedVersionConflictError","toExpectedVersion","expected","NO_CONCURRENCY_CHECK","STREAM_DOES_NOT_EXIST","STREAM_EXISTS","matchesExpectedVersion","current"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";//# sourceMappingURL=chunk-UXBL2ICC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
@@ -1,149 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var _emmett = require('@event-driven-io/emmett');
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
var _dbclient = require('@eventstore/db-client');
|
|
16
|
-
const toEventStoreDBReadOptions = (options) => {
|
|
17
|
-
return options ? {
|
|
18
|
-
fromRevision: "from" in options ? options.from : void 0,
|
|
19
|
-
maxCount: "maxCount" in options ? options.maxCount : "to" in options ? options.to : void 0
|
|
20
|
-
} : void 0;
|
|
21
|
-
};
|
|
22
|
-
const getEventStoreDBEventStore = (eventStore) => {
|
|
23
|
-
return {
|
|
24
|
-
async aggregateStream(streamName, options) {
|
|
25
|
-
try {
|
|
26
|
-
const { evolve, getInitialState, read } = options;
|
|
27
|
-
const expectedStreamVersion = _optionalChain([read, 'optionalAccess', _ => _.expectedStreamVersion]);
|
|
28
|
-
let state = getInitialState();
|
|
29
|
-
let currentStreamVersion = void 0;
|
|
30
|
-
for await (const { event } of eventStore.readStream(
|
|
31
|
-
streamName,
|
|
32
|
-
toEventStoreDBReadOptions(options.read)
|
|
33
|
-
)) {
|
|
34
|
-
if (!event)
|
|
35
|
-
continue;
|
|
36
|
-
state = evolve(state, {
|
|
37
|
-
type: event.type,
|
|
38
|
-
data: event.data
|
|
39
|
-
});
|
|
40
|
-
currentStreamVersion = event.revision;
|
|
41
|
-
}
|
|
42
|
-
assertExpectedVersionMatchesCurrent(
|
|
43
|
-
currentStreamVersion,
|
|
44
|
-
expectedStreamVersion
|
|
45
|
-
);
|
|
46
|
-
return {
|
|
47
|
-
currentStreamVersion: _nullishCoalesce(currentStreamVersion, () => ( 0n)),
|
|
48
|
-
state
|
|
49
|
-
};
|
|
50
|
-
} catch (error) {
|
|
51
|
-
if (error instanceof _dbclient.StreamNotFoundError) {
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
throw error;
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
readStream: async (streamName, options) => {
|
|
58
|
-
const events = [];
|
|
59
|
-
let currentStreamVersion = void 0;
|
|
60
|
-
try {
|
|
61
|
-
for await (const { event } of eventStore.readStream(
|
|
62
|
-
streamName,
|
|
63
|
-
toEventStoreDBReadOptions(options)
|
|
64
|
-
)) {
|
|
65
|
-
if (!event)
|
|
66
|
-
continue;
|
|
67
|
-
events.push({
|
|
68
|
-
type: event.type,
|
|
69
|
-
data: event.data
|
|
70
|
-
});
|
|
71
|
-
currentStreamVersion = event.revision;
|
|
72
|
-
}
|
|
73
|
-
return currentStreamVersion ? {
|
|
74
|
-
currentStreamVersion,
|
|
75
|
-
events
|
|
76
|
-
} : null;
|
|
77
|
-
} catch (error) {
|
|
78
|
-
if (error instanceof _dbclient.StreamNotFoundError) {
|
|
79
|
-
return null;
|
|
80
|
-
}
|
|
81
|
-
throw error;
|
|
82
|
-
}
|
|
83
|
-
},
|
|
84
|
-
appendToStream: async (streamName, events, options) => {
|
|
85
|
-
try {
|
|
86
|
-
const serializedEvents = events.map(_dbclient.jsonEvent);
|
|
87
|
-
const expectedRevision = toExpectedRevision(
|
|
88
|
-
_optionalChain([options, 'optionalAccess', _2 => _2.expectedStreamVersion])
|
|
89
|
-
);
|
|
90
|
-
const appendResult = await eventStore.appendToStream(
|
|
91
|
-
streamName,
|
|
92
|
-
serializedEvents,
|
|
93
|
-
{
|
|
94
|
-
expectedRevision
|
|
95
|
-
}
|
|
96
|
-
);
|
|
97
|
-
return { nextExpectedStreamVersion: appendResult.nextExpectedRevision };
|
|
98
|
-
} catch (error) {
|
|
99
|
-
if (error instanceof _dbclient.WrongExpectedVersionError) {
|
|
100
|
-
throw new (0, _emmett.ExpectedVersionConflictError)(
|
|
101
|
-
error.actualVersion,
|
|
102
|
-
toExpectedVersion(error.expectedVersion)
|
|
103
|
-
);
|
|
104
|
-
}
|
|
105
|
-
throw error;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
};
|
|
110
|
-
const toExpectedRevision = (expected) => {
|
|
111
|
-
if (expected === void 0)
|
|
112
|
-
return _dbclient.ANY;
|
|
113
|
-
if (expected === _emmett.NO_CONCURRENCY_CHECK)
|
|
114
|
-
return _dbclient.ANY;
|
|
115
|
-
if (expected == _emmett.STREAM_DOES_NOT_EXIST)
|
|
116
|
-
return _dbclient.NO_STREAM;
|
|
117
|
-
if (expected == _emmett.STREAM_EXISTS)
|
|
118
|
-
return _dbclient.STREAM_EXISTS;
|
|
119
|
-
return expected;
|
|
120
|
-
};
|
|
121
|
-
const toExpectedVersion = (expected) => {
|
|
122
|
-
if (expected === void 0)
|
|
123
|
-
return _emmett.NO_CONCURRENCY_CHECK;
|
|
124
|
-
if (expected === _dbclient.ANY)
|
|
125
|
-
return _emmett.NO_CONCURRENCY_CHECK;
|
|
126
|
-
if (expected == _dbclient.NO_STREAM)
|
|
127
|
-
return _emmett.STREAM_DOES_NOT_EXIST;
|
|
128
|
-
if (expected == _dbclient.STREAM_EXISTS)
|
|
129
|
-
return _emmett.STREAM_EXISTS;
|
|
130
|
-
return expected;
|
|
131
|
-
};
|
|
132
|
-
const matchesExpectedVersion = (current, expected) => {
|
|
133
|
-
if (expected === _emmett.NO_CONCURRENCY_CHECK)
|
|
134
|
-
return true;
|
|
135
|
-
if (expected == _emmett.STREAM_DOES_NOT_EXIST)
|
|
136
|
-
return current === void 0;
|
|
137
|
-
if (expected == _emmett.STREAM_EXISTS)
|
|
138
|
-
return current !== void 0;
|
|
139
|
-
return current === expected;
|
|
140
|
-
};
|
|
141
|
-
const assertExpectedVersionMatchesCurrent = (current, expected) => {
|
|
142
|
-
expected ??= _emmett.NO_CONCURRENCY_CHECK;
|
|
143
|
-
if (!matchesExpectedVersion(current, expected))
|
|
144
|
-
throw new (0, _emmett.ExpectedVersionConflictError)(current, expected);
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
exports.getEventStoreDBEventStore = getEventStoreDBEventStore;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkLVTTC5N6js = require('../chunk-LVTTC5N6.js');exports.getEventStoreDBEventStore = _chunkLVTTC5N6js.a;
|
|
149
2
|
//# sourceMappingURL=eventstoreDBEventStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
@@ -1,149 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
ExpectedVersionConflictError,
|
|
3
|
-
NO_CONCURRENCY_CHECK,
|
|
4
|
-
STREAM_DOES_NOT_EXIST,
|
|
5
|
-
STREAM_EXISTS
|
|
6
|
-
} from "@event-driven-io/emmett";
|
|
7
|
-
import {
|
|
8
|
-
ANY,
|
|
9
|
-
STREAM_EXISTS as ESDB_STREAM_EXISTS,
|
|
10
|
-
EventStoreDBClient,
|
|
11
|
-
NO_STREAM,
|
|
12
|
-
StreamNotFoundError,
|
|
13
|
-
WrongExpectedVersionError,
|
|
14
|
-
jsonEvent
|
|
15
|
-
} from "@eventstore/db-client";
|
|
16
|
-
const toEventStoreDBReadOptions = (options) => {
|
|
17
|
-
return options ? {
|
|
18
|
-
fromRevision: "from" in options ? options.from : void 0,
|
|
19
|
-
maxCount: "maxCount" in options ? options.maxCount : "to" in options ? options.to : void 0
|
|
20
|
-
} : void 0;
|
|
21
|
-
};
|
|
22
|
-
const getEventStoreDBEventStore = (eventStore) => {
|
|
23
|
-
return {
|
|
24
|
-
async aggregateStream(streamName, options) {
|
|
25
|
-
try {
|
|
26
|
-
const { evolve, getInitialState, read } = options;
|
|
27
|
-
const expectedStreamVersion = read?.expectedStreamVersion;
|
|
28
|
-
let state = getInitialState();
|
|
29
|
-
let currentStreamVersion = void 0;
|
|
30
|
-
for await (const { event } of eventStore.readStream(
|
|
31
|
-
streamName,
|
|
32
|
-
toEventStoreDBReadOptions(options.read)
|
|
33
|
-
)) {
|
|
34
|
-
if (!event)
|
|
35
|
-
continue;
|
|
36
|
-
state = evolve(state, {
|
|
37
|
-
type: event.type,
|
|
38
|
-
data: event.data
|
|
39
|
-
});
|
|
40
|
-
currentStreamVersion = event.revision;
|
|
41
|
-
}
|
|
42
|
-
assertExpectedVersionMatchesCurrent(
|
|
43
|
-
currentStreamVersion,
|
|
44
|
-
expectedStreamVersion
|
|
45
|
-
);
|
|
46
|
-
return {
|
|
47
|
-
currentStreamVersion: currentStreamVersion ?? 0n,
|
|
48
|
-
state
|
|
49
|
-
};
|
|
50
|
-
} catch (error) {
|
|
51
|
-
if (error instanceof StreamNotFoundError) {
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
throw error;
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
readStream: async (streamName, options) => {
|
|
58
|
-
const events = [];
|
|
59
|
-
let currentStreamVersion = void 0;
|
|
60
|
-
try {
|
|
61
|
-
for await (const { event } of eventStore.readStream(
|
|
62
|
-
streamName,
|
|
63
|
-
toEventStoreDBReadOptions(options)
|
|
64
|
-
)) {
|
|
65
|
-
if (!event)
|
|
66
|
-
continue;
|
|
67
|
-
events.push({
|
|
68
|
-
type: event.type,
|
|
69
|
-
data: event.data
|
|
70
|
-
});
|
|
71
|
-
currentStreamVersion = event.revision;
|
|
72
|
-
}
|
|
73
|
-
return currentStreamVersion ? {
|
|
74
|
-
currentStreamVersion,
|
|
75
|
-
events
|
|
76
|
-
} : null;
|
|
77
|
-
} catch (error) {
|
|
78
|
-
if (error instanceof StreamNotFoundError) {
|
|
79
|
-
return null;
|
|
80
|
-
}
|
|
81
|
-
throw error;
|
|
82
|
-
}
|
|
83
|
-
},
|
|
84
|
-
appendToStream: async (streamName, events, options) => {
|
|
85
|
-
try {
|
|
86
|
-
const serializedEvents = events.map(jsonEvent);
|
|
87
|
-
const expectedRevision = toExpectedRevision(
|
|
88
|
-
options?.expectedStreamVersion
|
|
89
|
-
);
|
|
90
|
-
const appendResult = await eventStore.appendToStream(
|
|
91
|
-
streamName,
|
|
92
|
-
serializedEvents,
|
|
93
|
-
{
|
|
94
|
-
expectedRevision
|
|
95
|
-
}
|
|
96
|
-
);
|
|
97
|
-
return { nextExpectedStreamVersion: appendResult.nextExpectedRevision };
|
|
98
|
-
} catch (error) {
|
|
99
|
-
if (error instanceof WrongExpectedVersionError) {
|
|
100
|
-
throw new ExpectedVersionConflictError(
|
|
101
|
-
error.actualVersion,
|
|
102
|
-
toExpectedVersion(error.expectedVersion)
|
|
103
|
-
);
|
|
104
|
-
}
|
|
105
|
-
throw error;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
};
|
|
110
|
-
const toExpectedRevision = (expected) => {
|
|
111
|
-
if (expected === void 0)
|
|
112
|
-
return ANY;
|
|
113
|
-
if (expected === NO_CONCURRENCY_CHECK)
|
|
114
|
-
return ANY;
|
|
115
|
-
if (expected == STREAM_DOES_NOT_EXIST)
|
|
116
|
-
return NO_STREAM;
|
|
117
|
-
if (expected == STREAM_EXISTS)
|
|
118
|
-
return ESDB_STREAM_EXISTS;
|
|
119
|
-
return expected;
|
|
120
|
-
};
|
|
121
|
-
const toExpectedVersion = (expected) => {
|
|
122
|
-
if (expected === void 0)
|
|
123
|
-
return NO_CONCURRENCY_CHECK;
|
|
124
|
-
if (expected === ANY)
|
|
125
|
-
return NO_CONCURRENCY_CHECK;
|
|
126
|
-
if (expected == NO_STREAM)
|
|
127
|
-
return STREAM_DOES_NOT_EXIST;
|
|
128
|
-
if (expected == ESDB_STREAM_EXISTS)
|
|
129
|
-
return STREAM_EXISTS;
|
|
130
|
-
return expected;
|
|
131
|
-
};
|
|
132
|
-
const matchesExpectedVersion = (current, expected) => {
|
|
133
|
-
if (expected === NO_CONCURRENCY_CHECK)
|
|
134
|
-
return true;
|
|
135
|
-
if (expected == STREAM_DOES_NOT_EXIST)
|
|
136
|
-
return current === void 0;
|
|
137
|
-
if (expected == STREAM_EXISTS)
|
|
138
|
-
return current !== void 0;
|
|
139
|
-
return current === expected;
|
|
140
|
-
};
|
|
141
|
-
const assertExpectedVersionMatchesCurrent = (current, expected) => {
|
|
142
|
-
expected ??= NO_CONCURRENCY_CHECK;
|
|
143
|
-
if (!matchesExpectedVersion(current, expected))
|
|
144
|
-
throw new ExpectedVersionConflictError(current, expected);
|
|
145
|
-
};
|
|
146
|
-
export {
|
|
147
|
-
getEventStoreDBEventStore
|
|
148
|
-
};
|
|
1
|
+
import{a}from"../chunk-SSON3PNA.mjs";export{a as getEventStoreDBEventStore};
|
|
149
2
|
//# sourceMappingURL=eventstoreDBEventStore.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/eventStore/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-UXBL2ICC.js');var _chunkLVTTC5N6js = require('../chunk-LVTTC5N6.js');exports.getEventStoreDBEventStore = _chunkLVTTC5N6js.a;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import"../chunk-K54GVY42.mjs";import{a}from"../chunk-SSON3PNA.mjs";export{a as getEventStoreDBEventStore};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-UXBL2ICC.js');var _chunkLVTTC5N6js = require('./chunk-LVTTC5N6.js');exports.getEventStoreDBEventStore = _chunkLVTTC5N6js.a;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import"./chunk-K54GVY42.mjs";import{a as o}from"./chunk-SSON3PNA.mjs";export{o as getEventStoreDBEventStore};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|