@eventualize/dynamodb-storage-adapter 2.0.0 → 2.1.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.
@@ -9,7 +9,6 @@ export interface DynamoDBClientOptions {
9
9
  secretAccessKey?: string;
10
10
  region?: string;
11
11
  }
12
- export declare function listTables(client: DynamoDBClient): Promise<string[] | undefined>;
13
12
  /**
14
13
  * Creates a DynamoDB client.
15
14
  * @param options - Optional configuration. Falls back to environment variables if not provided.
@@ -1,17 +1,4 @@
1
- // src/dynamo-client.ts
2
- import { DynamoDBClient, ListTablesCommand } from "@aws-sdk/client-dynamodb";
3
- export async function listTables(client) {
4
- try {
5
- const command = new ListTablesCommand({});
6
- const response = await client.send(command);
7
- console.log("Tables in DynamoDB Local:", response.TableNames);
8
- return response.TableNames;
9
- }
10
- catch (error) {
11
- console.error("Error listing tables:", error);
12
- throw error;
13
- }
14
- }
1
+ import { DynamoDBClient } from "@aws-sdk/client-dynamodb";
15
2
  /**
16
3
  * Creates a DynamoDB client.
17
4
  * @param options - Optional configuration. Falls back to environment variables if not provided.
@@ -20,7 +7,7 @@ export function createDynamoDBClient(options) {
20
7
  const endpoint = options?.endpoint ?? process.env.DYNAMODB_CONNECTION;
21
8
  const accessKeyId = options?.accessKeyId ?? process.env.AWS_ACCESS_KEY_ID;
22
9
  const secretAccessKey = options?.secretAccessKey ?? process.env.AWS_SECRET_ACCESS_KEY;
23
- const region = options?.region ?? process.env.AWS_REGION ?? 'us-east-1';
10
+ const region = options?.region ?? process.env.AWS_REGION ?? "us-east-1";
24
11
  if (!endpoint || !accessKeyId || !secretAccessKey) {
25
12
  const envVars = { endpoint, accessKeyId, secretAccessKey };
26
13
  throw new Error("AWS credentials are not set in environment variables: " + JSON.stringify(envVars));
@@ -1 +1 @@
1
- {"version":3,"file":"DynamoDbClient.js","sourceRoot":"","sources":["../src/DynamoDbClient.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,OAAO,EAAE,cAAc,EAAwB,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAanG,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAsB;IACnD,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9D,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA+B;IAChE,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IACtE,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC1E,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACtF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW,CAAC;IAExE,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,wDAAwD,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACxG,CAAC;IAED,MAAM,MAAM,GAAyB,EAAE,CAAC;IACxC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,CAAC,WAAW,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"DynamoDbClient.js","sourceRoot":"","sources":["../src/DynamoDbClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAc1D;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA+B;IAClE,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IACtE,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC1E,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACtF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW,CAAC;IAExE,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,wDAAwD,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CACnF,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAyB,EAAE,CAAC;IACxC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,CAAC,WAAW,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC"}
@@ -1,5 +1,5 @@
1
- import IEvDbStorageAdmin from "@eventualize/types/IEvDbStorageAdmin";
2
- import { DynamoDBClientOptions } from "./DynamoDbClient.js";
1
+ import type IEvDbStorageAdmin from "@eventualize/types/adapters/IEvDbStorageAdmin";
2
+ import type { DynamoDBClientOptions } from "./DynamoDbClient.js";
3
3
  export default class EvDbDynamoDbAdmin implements IEvDbStorageAdmin {
4
4
  private dynamoDbClient;
5
5
  /**
@@ -9,9 +9,9 @@ export default class EvDbDynamoDbAdmin implements IEvDbStorageAdmin {
9
9
  constructor(options?: DynamoDBClientOptions);
10
10
  private extractKeys;
11
11
  /**
12
- * Scans a table for all items and deletes them in batches of 25.
13
- * @param tableName The name of the table to clear.
14
- */
12
+ * Scans a table for all items and deletes them in batches of 25.
13
+ * @param tableName The name of the table to clear.
14
+ */
15
15
  private clearTableItems;
16
16
  createEnvironmentAsync(): Promise<void>;
17
17
  destroyEnvironmentAsync(): Promise<void>;
@@ -10,11 +10,11 @@ export default class EvDbDynamoDbAdmin {
10
10
  }
11
11
  // Helper function to extract keys in raw DynamoDB format
12
12
  extractKeys(tableName, items) {
13
- return items.map(item => {
13
+ return items.map((item) => {
14
14
  const deleteRequest = {
15
15
  DeleteRequest: {
16
- Key: {} // Must build the Key object manually
17
- }
16
+ Key: {}, // Must build the Key object manually
17
+ },
18
18
  };
19
19
  if (tableName === "events") {
20
20
  deleteRequest.DeleteRequest.Key["stream_address"] = item["stream_address"];
@@ -33,9 +33,9 @@ export default class EvDbDynamoDbAdmin {
33
33
  });
34
34
  }
35
35
  /**
36
- * Scans a table for all items and deletes them in batches of 25.
37
- * @param tableName The name of the table to clear.
38
- */
36
+ * Scans a table for all items and deletes them in batches of 25.
37
+ * @param tableName The name of the table to clear.
38
+ */
39
39
  async clearTableItems(tableName) {
40
40
  let items;
41
41
  let exclusiveStartKey = undefined;
@@ -52,7 +52,8 @@ export default class EvDbDynamoDbAdmin {
52
52
  projectionExpression = "view_address, #o";
53
53
  expressionAttributeNames = { "#o": "offset" };
54
54
  }
55
- else { // "messages" table
55
+ else {
56
+ // "messages" table
56
57
  projectionExpression = "message_address, captured_at";
57
58
  // No offset in the projection for messages table, so no #o alias is needed
58
59
  }
@@ -70,15 +71,13 @@ export default class EvDbDynamoDbAdmin {
70
71
  const deleteRequests = this.extractKeys(tableName, items);
71
72
  const batchWriteCommand = new BatchWriteItemCommand({
72
73
  RequestItems: {
73
- [tableName]: deleteRequests
74
- }
74
+ [tableName]: deleteRequests,
75
+ },
75
76
  });
76
77
  await this.dynamoDbClient.send(batchWriteCommand);
77
- console.log(`Deleted ${items.length} items from ${tableName}.`);
78
78
  }
79
79
  exclusiveStartKey = scanResult.LastEvaluatedKey;
80
80
  } while (exclusiveStartKey);
81
- console.log(`Finished item deletion for table: ${tableName}`);
82
81
  }
83
82
  createEnvironmentAsync() {
84
83
  throw new Error("Method not implemented.");
@@ -1 +1 @@
1
- {"version":3,"file":"EvDBDynamoDBAdmin.js","sourceRoot":"","sources":["../src/EvDBDynamoDBAdmin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EvDBDynamoDBAdmin.js","sourceRoot":"","sources":["../src/EvDBDynamoDBAdmin.ts"],"names":[],"mappings":"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"}
@@ -1,43 +1,20 @@
1
- import { IEvDbPayloadData } from '@eventualize/types/IEvDbEventPayload';
2
- import IEvDbEventMetadata from '@eventualize/types/IEvDbEventMetadata';
3
- import EvDbStreamCursor from '@eventualize/types/EvDbStreamCursor';
4
- import EvDbMessage from '@eventualize/types/EvDbMessage';
5
- import IEvDbStorageSnapshotAdapter from '@eventualize/types/IEvDbStorageSnapshotAdapter';
6
- import IEvDbStorageStreamAdapter from '@eventualize/types/IEvDbStorageStreamAdapter';
7
- import EvDbStreamAddress from '@eventualize/types/EvDbStreamAddress';
8
- import EvDbViewAddress from '@eventualize/types/EvDbViewAddress';
9
- import { EvDbStoredSnapshotResultRaw } from '@eventualize/types/EvDbStoredSnapshotResult';
10
- import { EvDbStoredSnapshotData } from '@eventualize/types/EvDbStoredSnapshotData';
11
- import EvDbEvent from '@eventualize/types/EvDbEvent';
12
- import StreamStoreAffected from '@eventualize/types/StreamStoreAffected';
13
- import EvDbContinuousFetchOptions from '@eventualize/types/EvDbContinuousFetchOptions';
14
- import EvDbMessageFilter from '@eventualize/types/EvDbMessageFilter';
15
- import { EvDbShardName } from '@eventualize/types/primitiveTypes';
16
- import { DynamoDBClientOptions } from './DynamoDbClient.js';
17
- import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
18
- export interface EvDbEventRecord extends IEvDbEventMetadata {
19
- id: string;
20
- payload: IEvDbPayloadData;
21
- }
22
- export interface EvDbSnapshotRecord {
23
- id: string;
24
- streamType: string;
25
- streamId: string;
26
- viewName: string;
27
- offset: bigint;
28
- state: IEvDbPayloadData;
29
- }
30
- export interface IEvDbOutboxTransformer {
31
- transform(message: EvDbMessage): EvDbMessage;
32
- }
33
- export interface EvDbStorageContext {
34
- schema?: string;
35
- shortId: string;
36
- id: string;
37
- }
1
+ import EvDbStreamCursor from "@eventualize/types/stream/EvDbStreamCursor";
2
+ import type EvDbMessage from "@eventualize/types/messages/EvDbMessage";
3
+ import type IEvDbStorageSnapshotAdapter from "@eventualize/types/adapters/IEvDbStorageSnapshotAdapter";
4
+ import type IEvDbStorageStreamAdapter from "@eventualize/types/adapters/IEvDbStorageStreamAdapter";
5
+ import type EvDbStreamAddress from "@eventualize/types/stream/EvDbStreamAddress";
6
+ import type EvDbViewAddress from "@eventualize/types/view/EvDbViewAddress";
7
+ import { EvDbStoredSnapshotResultRaw } from "@eventualize/types/snapshots/EvDbStoredSnapshotResultRaw";
8
+ import type { EvDbStoredSnapshotData } from "@eventualize/types/snapshots/EvDbStoredSnapshotData";
9
+ import type EvDbEvent from "@eventualize/types/events/EvDbEvent";
10
+ import StreamStoreAffected from "@eventualize/types/stream/StreamStoreAffected";
11
+ import type EvDbContinuousFetchOptions from "@eventualize/types/primitives/EvDbContinuousFetchOptions";
12
+ import type EvDbMessageFilter from "@eventualize/types/messages/EvDbMessageFilter";
13
+ import type { EvDbShardName } from "@eventualize/types/primitives/EvDbShardName";
14
+ import type { DynamoDBClientOptions } from "./DynamoDbClient.js";
15
+ import type { DynamoDBClient } from "@aws-sdk/client-dynamodb";
38
16
  /**
39
- * Prisma-based storage adapter for EvDb
40
- * Replaces SQL Server-specific adapter with database-agnostic Prisma implementation
17
+ * DynamoDB storage adapter for EvDb
41
18
  */
42
19
  export default class EvDbDynamoDbStorageAdapter implements IEvDbStorageSnapshotAdapter, IEvDbStorageStreamAdapter {
43
20
  private dynamoDbClient;
@@ -52,8 +29,8 @@ export default class EvDbDynamoDbStorageAdapter implements IEvDbStorageSnapshotA
52
29
  * @param options - DynamoDB client configuration options.
53
30
  */
54
31
  static withOptions(options: DynamoDBClientOptions): EvDbDynamoDbStorageAdapter;
55
- getFromOutbox(filter: EvDbMessageFilter, options?: EvDbContinuousFetchOptions | null): Promise<AsyncIterable<EvDbMessage>>;
56
- getFromOutboxAsync(shard: EvDbShardName, filter: EvDbMessageFilter, options?: EvDbContinuousFetchOptions | null, cancellation?: AbortSignal): AsyncIterable<EvDbMessage>;
32
+ getFromOutbox(_filter: EvDbMessageFilter, _options?: EvDbContinuousFetchOptions | null): Promise<AsyncIterable<EvDbMessage>>;
33
+ getFromOutboxAsync(_shard: EvDbShardName, _filter: EvDbMessageFilter, _options?: EvDbContinuousFetchOptions | null, _cancellation?: AbortSignal): AsyncIterable<EvDbMessage>;
57
34
  getRecordsFromOutboxAsync(filter: EvDbMessageFilter, options?: EvDbContinuousFetchOptions | null, cancellation?: AbortSignal): AsyncIterable<EvDbMessage>;
58
35
  getRecordsFromOutboxAsync(shard: EvDbShardName, filter: EvDbMessageFilter, options?: EvDbContinuousFetchOptions | null, cancellation?: AbortSignal): AsyncIterable<EvDbMessage>;
59
36
  subscribeToMessageAsync(handler: (message: EvDbMessage) => Promise<void>, filter: EvDbMessageFilter, options?: EvDbContinuousFetchOptions | null): Promise<void>;
@@ -65,7 +42,7 @@ export default class EvDbDynamoDbStorageAdapter implements IEvDbStorageSnapshotA
65
42
  /**
66
43
  * Store outbox messages in a transaction
67
44
  */
68
- storeOutboxMessagesAsync(shardName: EvDbShardName, records: EvDbMessage[]): Promise<number>;
45
+ storeOutboxMessagesAsync(_shardName: EvDbShardName, _records: EvDbMessage[]): Promise<number>;
69
46
  /**
70
47
  * Get the last offset for a stream
71
48
  */
@@ -73,7 +50,7 @@ export default class EvDbDynamoDbStorageAdapter implements IEvDbStorageSnapshotA
73
50
  /**
74
51
  * Get events for a stream since a specific offset
75
52
  */
76
- getEventsAsync(streamCursor: EvDbStreamCursor, pageSize?: number): AsyncGenerator<EvDbEvent, void, undefined>;
53
+ getEventsAsync(streamCursor: EvDbStreamCursor, _pageSize?: number): AsyncGenerator<EvDbEvent, void, undefined>;
77
54
  /**
78
55
  * Get snapshot for a stream view
79
56
  */
@@ -1,20 +1,12 @@
1
1
  import { unmarshall } from "@aws-sdk/util-dynamodb";
2
- import EvDbStreamCursor from '@eventualize/types/EvDbStreamCursor';
3
- import { EvDbStoredSnapshotResultRaw } from '@eventualize/types/EvDbStoredSnapshotResult';
4
- import StreamStoreAffected from '@eventualize/types/StreamStoreAffected';
5
- import { createDynamoDBClient, listTables } from './DynamoDbClient.js';
6
- import QueryProvider, { deserializeStreamAddress, EventRecord } from './EvDbDynamoDbStorageAdapterQueries.js';
7
- import { TransactionCanceledException, TransactWriteItemsCommand } from '@aws-sdk/client-dynamodb';
8
- const serializePayload = (payload) => Buffer.from(JSON.stringify(payload), 'utf-8');
9
- const deserializePayload = (payload) => {
10
- if (!!payload && typeof payload == 'object') {
11
- return payload;
12
- }
13
- return {};
14
- };
2
+ import EvDbStreamCursor from "@eventualize/types/stream/EvDbStreamCursor";
3
+ import { EvDbStoredSnapshotResultRaw } from "@eventualize/types/snapshots/EvDbStoredSnapshotResultRaw";
4
+ import StreamStoreAffected from "@eventualize/types/stream/StreamStoreAffected";
5
+ import { createDynamoDBClient } from "./DynamoDbClient.js";
6
+ import QueryProvider, { deserializeStreamAddress, EventRecord, } from "./EvDbDynamoDbStorageAdapterQueries.js";
7
+ import { TransactionCanceledException, TransactWriteItemsCommand } from "@aws-sdk/client-dynamodb";
15
8
  /**
16
- * Prisma-based storage adapter for EvDb
17
- * Replaces SQL Server-specific adapter with database-agnostic Prisma implementation
9
+ * DynamoDB storage adapter for EvDb
18
10
  */
19
11
  export default class EvDbDynamoDbStorageAdapter {
20
12
  /**
@@ -32,26 +24,25 @@ export default class EvDbDynamoDbStorageAdapter {
32
24
  static withOptions(options) {
33
25
  return new EvDbDynamoDbStorageAdapter(createDynamoDBClient(options));
34
26
  }
35
- getFromOutbox(filter, options) {
36
- throw new Error('Method not implemented.');
27
+ getFromOutbox(_filter, _options) {
28
+ throw new Error("Method not implemented.");
37
29
  }
38
- getFromOutboxAsync(shard, filter, options, cancellation) {
39
- throw new Error('Method not implemented.');
30
+ getFromOutboxAsync(_shard, _filter, _options, _cancellation) {
31
+ throw new Error("Method not implemented.");
40
32
  }
41
- getRecordsFromOutboxAsync(shard, filter, options, cancellation) {
42
- throw new Error('Method not implemented.');
33
+ getRecordsFromOutboxAsync(_shard, _filter, _options, _cancellation) {
34
+ throw new Error("Method not implemented.");
43
35
  }
44
- subscribeToMessageAsync(handler, shard, filter, options) {
45
- throw new Error('Method not implemented.');
36
+ subscribeToMessageAsync(_handler, _shard, _filter, _options) {
37
+ throw new Error("Method not implemented.");
46
38
  }
47
39
  /**
48
40
  * Store stream events in a transaction
49
41
  */
50
42
  async storeStreamAsync(events, messages) {
51
43
  try {
52
- await listTables(this.dynamoDbClient);
53
44
  const eventsToInsert = events.map((event) => EventRecord.createFromEvent(event));
54
- const messagesToInsert = messages.map(message => {
45
+ const messagesToInsert = messages.map((message) => {
55
46
  return {
56
47
  id: crypto.randomUUID(),
57
48
  stream_cursor: message.streamCursor,
@@ -69,13 +60,12 @@ export default class EvDbDynamoDbStorageAdapter {
69
60
  const command = new TransactWriteItemsCommand(transactItems);
70
61
  await this.dynamoDbClient.send(command);
71
62
  const numEvents = eventsToInsert.length;
72
- const numMessages = messagesToInsert
73
- .reduce((prev, { message_type: t }) => Object.assign(prev, { [t]: (prev[t] ?? 0) + 1 }), {});
63
+ const numMessages = messagesToInsert.reduce((prev, { message_type: t }) => Object.assign(prev, { [t]: (prev[t] ?? 0) + 1 }), {});
74
64
  return new StreamStoreAffected(numEvents, new Map(Object.entries(numMessages)));
75
65
  }
76
66
  catch (error) {
77
67
  if (this.isOccException(error)) {
78
- throw new Error('OPTIMISTIC_CONCURRENCY_VIOLATION');
68
+ throw new Error("OPTIMISTIC_CONCURRENCY_VIOLATION");
79
69
  }
80
70
  throw error;
81
71
  }
@@ -83,8 +73,8 @@ export default class EvDbDynamoDbStorageAdapter {
83
73
  /**
84
74
  * Store outbox messages in a transaction
85
75
  */
86
- async storeOutboxMessagesAsync(shardName, records) {
87
- throw new Error('Method not implemented.');
76
+ async storeOutboxMessagesAsync(_shardName, _records) {
77
+ throw new Error("Method not implemented.");
88
78
  }
89
79
  /**
90
80
  * Get the last offset for a stream
@@ -95,12 +85,12 @@ export default class EvDbDynamoDbStorageAdapter {
95
85
  if (!response.Items) {
96
86
  return -1;
97
87
  }
98
- return parseInt(response.Items[0]?.offset.N ?? '-1', 10);
88
+ return parseInt(response.Items[0]?.offset.N ?? "-1", 10);
99
89
  }
100
90
  /**
101
91
  * Get events for a stream since a specific offset
102
92
  */
103
- async *getEventsAsync(streamCursor, pageSize = 100) {
93
+ async *getEventsAsync(streamCursor, _pageSize = 100) {
104
94
  let queryCursor = undefined;
105
95
  do {
106
96
  const getEventsCommand = QueryProvider.getEvents(streamCursor);
@@ -120,31 +110,20 @@ export default class EvDbDynamoDbStorageAdapter {
120
110
  * Get snapshot for a stream view
121
111
  */
122
112
  async getSnapshotAsync(viewAddress) {
123
- const { streamType, streamId, viewName } = viewAddress;
124
- try {
125
- const query = QueryProvider.getSnapshot(viewAddress);
126
- const response = await this.dynamoDbClient.send(query);
127
- if (!response.Items) {
128
- return EvDbStoredSnapshotResultRaw.Empty;
129
- }
130
- const snapshot = unmarshall(response.Items[0]);
131
- return new EvDbStoredSnapshotResultRaw(snapshot.offset, new Date(Number(snapshot.stored_at)), snapshot.state);
132
- }
133
- catch (error) {
134
- throw error;
113
+ const query = QueryProvider.getSnapshot(viewAddress);
114
+ const response = await this.dynamoDbClient.send(query);
115
+ if (!response.Items) {
116
+ return EvDbStoredSnapshotResultRaw.Empty;
135
117
  }
118
+ const snapshot = unmarshall(response.Items[0]);
119
+ return new EvDbStoredSnapshotResultRaw(snapshot.offset, new Date(Number(snapshot.stored_at)), snapshot.state);
136
120
  }
137
121
  /**
138
122
  * Save a snapshot
139
123
  */
140
124
  async storeSnapshotAsync(record) {
141
- try {
142
- const command = QueryProvider.saveSnapshot(record);
143
- await this.dynamoDbClient.send(command);
144
- }
145
- catch (error) {
146
- throw error;
147
- }
125
+ const command = QueryProvider.saveSnapshot(record);
126
+ await this.dynamoDbClient.send(command);
148
127
  }
149
128
  /**
150
129
  * Check if an exception is an optimistic concurrency conflict
@@ -153,14 +132,13 @@ export default class EvDbDynamoDbStorageAdapter {
153
132
  if (!(error instanceof TransactionCanceledException)) {
154
133
  return false;
155
134
  }
156
- return !!error
157
- .CancellationReasons?.some(({ Code }) => Code === 'ConditionalCheckFailed');
135
+ return !!error.CancellationReasons?.some(({ Code }) => Code === "ConditionalCheckFailed");
158
136
  }
159
137
  /**
160
138
  * Get table name for shard
161
139
  */
162
- getTableNameForShard(shardName) {
163
- throw new Error('Method not implemented.');
140
+ getTableNameForShard(_shardName) {
141
+ throw new Error("Method not implemented.");
164
142
  }
165
143
  /**
166
144
  * Close the database connection
@@ -1 +1 @@
1
- {"version":3,"file":"EvDbDynamoDbStorageAdapter.js","sourceRoot":"","sources":["../src/EvDbDynamoDbStorageAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EvDbDynamoDbStorageAdapter.js","sourceRoot":"","sources":["../src/EvDbDynamoDbStorageAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
- import IEvDbEventPayload, { IEvDbPayloadData } from "@eventualize/types/IEvDbEventPayload";
2
- import { PutItemCommand, QueryCommand, TransactWriteItem } from "@aws-sdk/client-dynamodb";
3
- import EvDbStreamCursor from "@eventualize/types/EvDbStreamCursor";
4
- import EvDbStreamAddress from "@eventualize/types/EvDbStreamAddress";
5
- import EvDbEvent from "@eventualize/types/EvDbEvent";
6
- import EvDbViewAddress from "@eventualize/types/EvDbViewAddress";
7
- import { EvDbStoredSnapshotData } from "@eventualize/types/EvDbStoredSnapshotData";
1
+ import type { IEvDbPayloadData } from "@eventualize/types/events/IEvDbPayloadData";
2
+ import type IEvDbEventPayload from "@eventualize/types/events/IEvDbEventPayload";
3
+ import type { TransactWriteItem } from "@aws-sdk/client-dynamodb";
4
+ import { PutItemCommand, QueryCommand } from "@aws-sdk/client-dynamodb";
5
+ import type EvDbStreamCursor from "@eventualize/types/stream/EvDbStreamCursor";
6
+ import EvDbStreamAddress from "@eventualize/types/stream/EvDbStreamAddress";
7
+ import EvDbEvent from "@eventualize/types/events/EvDbEvent";
8
+ import EvDbViewAddress from "@eventualize/types/view/EvDbViewAddress";
9
+ import type { EvDbStoredSnapshotData } from "@eventualize/types/snapshots/EvDbStoredSnapshotData";
8
10
  export declare class EventRecord {
9
11
  readonly id: string;
10
12
  readonly stream_cursor: EvDbStreamCursor;
@@ -1,7 +1,7 @@
1
1
  import { PutItemCommand, QueryCommand } from "@aws-sdk/client-dynamodb";
2
- import EvDbStreamAddress from "@eventualize/types/EvDbStreamAddress";
3
- import EvDbEvent from "@eventualize/types/EvDbEvent";
4
- import EvDbViewAddress from "@eventualize/types/EvDbViewAddress";
2
+ import EvDbStreamAddress from "@eventualize/types/stream/EvDbStreamAddress";
3
+ import EvDbEvent from "@eventualize/types/events/EvDbEvent";
4
+ import EvDbViewAddress from "@eventualize/types/view/EvDbViewAddress";
5
5
  import { marshall } from "@aws-sdk/util-dynamodb";
6
6
  export class EventRecord {
7
7
  constructor(id, stream_cursor, event_type, captured_by, captured_at, payload, stored_at) {
@@ -24,7 +24,7 @@ const serializeStreamAddress = (streamAddress) => {
24
24
  return `${streamAddress.streamType}::${streamAddress.streamId}`;
25
25
  };
26
26
  export const deserializeStreamAddress = (streamAddressStr) => {
27
- const [streamType, streamId] = streamAddressStr.split('::');
27
+ const [streamType, streamId] = streamAddressStr.split("::");
28
28
  return new EvDbStreamAddress(streamType, streamId);
29
29
  };
30
30
  const serializeMessageAddress = (m) => {
@@ -35,7 +35,7 @@ const serializeViewAddress = (viewAddress) => {
35
35
  };
36
36
  export default class EvDbDynamoDbStorageAdapterQueries {
37
37
  static saveEvents(events) {
38
- const TransactItems = events.map(e => ({
38
+ const TransactItems = events.map((e) => ({
39
39
  Put: {
40
40
  TableName: "events",
41
41
  Item: {
@@ -47,22 +47,22 @@ export default class EvDbDynamoDbStorageAdapterQueries {
47
47
  payload: {
48
48
  M: marshall(e.payload, {
49
49
  convertClassInstanceToMap: true,
50
- removeUndefinedValues: true
51
- })
50
+ removeUndefinedValues: true,
51
+ }),
52
52
  },
53
- stored_at: { S: Date.now().toString() }
53
+ stored_at: { S: Date.now().toString() },
54
54
  },
55
55
  ConditionExpression: "(attribute_not_exists(#sa)) Or (attribute_exists(#sa) And attribute_not_exists(#offset))",
56
56
  ExpressionAttributeNames: {
57
57
  "#sa": "stream_address",
58
- "#offset": "offset"
59
- }
60
- }
58
+ "#offset": "offset",
59
+ },
60
+ },
61
61
  }));
62
62
  return TransactItems;
63
63
  }
64
64
  static saveMessages(messages) {
65
- const TransactItems = messages.map(m => ({
65
+ const TransactItems = messages.map((m) => ({
66
66
  Put: {
67
67
  TableName: "messages",
68
68
  Item: {
@@ -75,12 +75,12 @@ export default class EvDbDynamoDbStorageAdapterQueries {
75
75
  payload: {
76
76
  M: marshall(m.payload, {
77
77
  convertClassInstanceToMap: true,
78
- removeUndefinedValues: true
79
- })
78
+ removeUndefinedValues: true,
79
+ }),
80
80
  },
81
- stored_at: { S: Date.now().toString() }
82
- }
83
- }
81
+ stored_at: { S: Date.now().toString() },
82
+ },
83
+ },
84
84
  }));
85
85
  return TransactItems;
86
86
  }
@@ -89,10 +89,10 @@ export default class EvDbDynamoDbStorageAdapterQueries {
89
89
  TableName: "events",
90
90
  KeyConditionExpression: "stream_address = :pk",
91
91
  ExpressionAttributeValues: {
92
- ":pk": { S: serializeStreamAddress(streamAddress) }
92
+ ":pk": { S: serializeStreamAddress(streamAddress) },
93
93
  },
94
94
  ScanIndexForward: false,
95
- Limit: 1
95
+ Limit: 1,
96
96
  };
97
97
  return new QueryCommand(queryParams);
98
98
  }
@@ -103,15 +103,15 @@ export default class EvDbDynamoDbStorageAdapterQueries {
103
103
  ExpressionAttributeNames: {
104
104
  "#o": "offset",
105
105
  "#sa": "stream_address",
106
- "#cb": "captured_by"
106
+ "#cb": "captured_by",
107
107
  },
108
108
  ExpressionAttributeValues: {
109
109
  ":sa": { S: serializeStreamAddress(streamCursor) },
110
- ":offsetValue": { N: streamCursor.offset.toString() }
110
+ ":offsetValue": { N: streamCursor.offset.toString() },
111
111
  },
112
- ProjectionExpression: '#sa, #o, id, event_type, captured_at, #cb, stored_at, payload',
112
+ ProjectionExpression: "#sa, #o, id, event_type, captured_at, #cb, stored_at, payload",
113
113
  Limit: pageSize,
114
- ExclusiveStartKey: queryCursor
114
+ ExclusiveStartKey: queryCursor,
115
115
  };
116
116
  return new QueryCommand(queryParams);
117
117
  }
@@ -122,13 +122,13 @@ export default class EvDbDynamoDbStorageAdapterQueries {
122
122
  ExpressionAttributeValues: {
123
123
  ":sa": { S: serializeViewAddress(viewAddress) },
124
124
  },
125
- ProjectionExpression: '#o, #s, stored_at',
125
+ ProjectionExpression: "#o, #s, stored_at",
126
126
  ExpressionAttributeNames: {
127
127
  "#o": "offset",
128
- "#s": "state"
128
+ "#s": "state",
129
129
  },
130
130
  ScanIndexForward: false, // false = descending order
131
- Limit: 1
131
+ Limit: 1,
132
132
  };
133
133
  return new QueryCommand(queryParams);
134
134
  }
@@ -142,16 +142,16 @@ export default class EvDbDynamoDbStorageAdapterQueries {
142
142
  state: {
143
143
  M: marshall(snapshot.state, {
144
144
  convertClassInstanceToMap: true,
145
- removeUndefinedValues: true
146
- })
145
+ removeUndefinedValues: true,
146
+ }),
147
147
  },
148
- stored_at: { S: Date.now().toString() }
148
+ stored_at: { S: Date.now().toString() },
149
149
  },
150
150
  ConditionExpression: "(attribute_not_exists(#va)) Or (attribute_exists(#va) And attribute_not_exists(#offset))",
151
151
  ExpressionAttributeNames: {
152
152
  "#va": "view_address",
153
- "#offset": "offset"
154
- }
153
+ "#offset": "offset",
154
+ },
155
155
  };
156
156
  return new PutItemCommand(queryParams);
157
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EvDbDynamoDbStorageAdapterQueries.js","sourceRoot":"","sources":["../src/EvDbDynamoDbStorageAdapterQueries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EvDbDynamoDbStorageAdapterQueries.js","sourceRoot":"","sources":["../src/EvDbDynamoDbStorageAdapterQueries.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@eventualize/dynamodb-storage-adapter",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "description": "",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/outsidenote/eventualize-js",
8
- "directory": "packages/dynamodb-storage-adapter"
8
+ "directory": "packages/adapters/dynamodb-storage-adapter"
9
9
  },
10
10
  "main": "dist/index.js",
11
11
  "types": "dist/index.d.ts",
@@ -37,6 +37,7 @@
37
37
  "dist"
38
38
  ],
39
39
  "dependencies": {
40
+ "@eventualize/types": "^2.1.0",
40
41
  "@aws-sdk/client-dynamodb": "^3.948.0",
41
42
  "@aws-sdk/util-dynamodb": "^3.948.0"
42
43
  }