@infra-blocks/aws-dynamodb 0.42.1 → 0.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/client.d.ts +5 -5
- package/lib/cjs/client.js +2 -1
- package/lib/cjs/client.js.map +1 -1
- package/lib/cjs/commands/query.d.ts +7 -7
- package/lib/cjs/commands/query.js +2 -1
- package/lib/cjs/commands/query.js.map +1 -1
- package/lib/esm/client.d.ts +5 -5
- package/lib/esm/client.js +2 -1
- package/lib/esm/client.js.map +1 -1
- package/lib/esm/commands/query.d.ts +7 -7
- package/lib/esm/commands/query.js +2 -1
- package/lib/esm/commands/query.js.map +1 -1
- package/package.json +2 -2
package/lib/cjs/client.d.ts
CHANGED
|
@@ -88,7 +88,7 @@ export declare class DynamoDbClient {
|
|
|
88
88
|
*
|
|
89
89
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html
|
|
90
90
|
*/
|
|
91
|
-
getItem<T>(params: GetItemParams): Promise<T | undefined>;
|
|
91
|
+
getItem<T extends Attributes = Attributes>(params: GetItemParams): Promise<T | undefined>;
|
|
92
92
|
/**
|
|
93
93
|
* Puts an item using the PutItem API.
|
|
94
94
|
*
|
|
@@ -114,7 +114,7 @@ export declare class DynamoDbClient {
|
|
|
114
114
|
*
|
|
115
115
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
|
|
116
116
|
*/
|
|
117
|
-
iterateQuery<T extends Attributes = Attributes>(params: QueryParams): AsyncGenerator<T>;
|
|
117
|
+
iterateQuery<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): AsyncGenerator<T>;
|
|
118
118
|
/**
|
|
119
119
|
* Paginates the result of querying a table, or an index, using the Query API.
|
|
120
120
|
*
|
|
@@ -128,7 +128,7 @@ export declare class DynamoDbClient {
|
|
|
128
128
|
*
|
|
129
129
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
|
|
130
130
|
*/
|
|
131
|
-
paginateQuery<T extends Attributes = Attributes>(params: QueryParams): AsyncGenerator<QueryResult<T>>;
|
|
131
|
+
paginateQuery<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): AsyncGenerator<QueryResult<K, T>>;
|
|
132
132
|
/**
|
|
133
133
|
* Queries a table, or an index, using the Query API.
|
|
134
134
|
*
|
|
@@ -143,7 +143,7 @@ export declare class DynamoDbClient {
|
|
|
143
143
|
*
|
|
144
144
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
|
|
145
145
|
*/
|
|
146
|
-
query<T extends Attributes = Attributes>(params: QueryParams): Promise<QueryResult<T>>;
|
|
146
|
+
query<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): Promise<QueryResult<K, T>>;
|
|
147
147
|
/**
|
|
148
148
|
* Convenience method over the {@link iterateQuery} method enforcing that the query
|
|
149
149
|
* matches at most one item.
|
|
@@ -155,7 +155,7 @@ export declare class DynamoDbClient {
|
|
|
155
155
|
*
|
|
156
156
|
* @returns The only item matching the query, or `undefined` if no item matches.
|
|
157
157
|
*/
|
|
158
|
-
queryOne<T extends Attributes = Attributes>(params: QueryParams): Promise<T | undefined>;
|
|
158
|
+
queryOne<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): Promise<T | undefined>;
|
|
159
159
|
/**
|
|
160
160
|
* Awaits until the DynamoDB service is ready to accept requests.
|
|
161
161
|
*
|
package/lib/cjs/client.js
CHANGED
|
@@ -5,6 +5,7 @@ const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
|
|
|
5
5
|
const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
|
|
6
6
|
const null_logger_1 = require("@infra-blocks/null-logger");
|
|
7
7
|
const retry_1 = require("@infra-blocks/retry");
|
|
8
|
+
const types_1 = require("@infra-blocks/types");
|
|
8
9
|
const create_table_js_1 = require("./commands/create-table.js");
|
|
9
10
|
const delete_table_js_1 = require("./commands/delete.table.js");
|
|
10
11
|
const delete_item_js_1 = require("./commands/delete-item.js");
|
|
@@ -106,7 +107,7 @@ class DynamoDbClient {
|
|
|
106
107
|
}
|
|
107
108
|
try {
|
|
108
109
|
const response = await this.client.send(get_item_js_1.GetItem.from(params).toAwsCommand());
|
|
109
|
-
return response.Item;
|
|
110
|
+
return (0, types_1.trusted)(response.Item);
|
|
110
111
|
}
|
|
111
112
|
catch (err) {
|
|
112
113
|
throw new error_js_1.DynamoDbClientError(`error while getting item from DynamoDB: ${JSON.stringify(params)}`, {
|
package/lib/cjs/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":";;;AACA,8DAA6E;AAE7E,wDAA+D;AAE/D,2DAAuD;AACvD,+CAA0E;AAC1E,gEAGoC;AACpC,gEAGoC;AACpC,8DAA8E;AAC9E,wDAAqE;AACrE,wDAIgC;AAChC,kDAAgF;AAChF,8DAA8E;AAC9E,8EAG2C;AAC3C,0EAGyC;AACzC,yCAAiD;AAuCjD;;;GAGG;AACH,MAAa,cAAc;IACR,MAAM,CAAyB;IAC/B,MAAM,CAAS;IAEhC,YAAoB,MAGnB;QACC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,MAAyB;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,6BAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,8BAAmB,CAAC,4BAA4B,EAAE;gBAC1D,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,2BAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,8BAAmB,CAAC,2BAA2B,EAAE;gBACzD,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,MAAyB;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,6BAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,8BAAmB,CAAC,4BAA4B,EAAE;gBAC1D,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,22 +3,22 @@ import { QueryCommand, type QueryCommandInput } from "@aws-sdk/lib-dynamodb";
|
|
|
3
3
|
import type { Attributes } from "../types.js";
|
|
4
4
|
import type { KeyConditionExpression } from "./expressions/key-condition.js";
|
|
5
5
|
import type { Command } from "./types.js";
|
|
6
|
-
export type QueryParams = {
|
|
6
|
+
export type QueryParams<K extends Attributes> = {
|
|
7
7
|
table: string;
|
|
8
8
|
index?: string;
|
|
9
9
|
condition: KeyConditionExpression;
|
|
10
10
|
consistentRead?: boolean;
|
|
11
|
-
exclusiveStartKey?:
|
|
11
|
+
exclusiveStartKey?: K;
|
|
12
12
|
limit?: number;
|
|
13
13
|
scanIndexForward?: boolean;
|
|
14
14
|
};
|
|
15
|
-
export type QueryResult<T> = {
|
|
15
|
+
export type QueryResult<K extends Attributes, T extends Attributes> = {
|
|
16
16
|
count: number;
|
|
17
17
|
items: Array<T>;
|
|
18
18
|
scannedCount: number;
|
|
19
|
-
lastEvaluatedKey?:
|
|
19
|
+
lastEvaluatedKey?: K;
|
|
20
20
|
};
|
|
21
|
-
export declare class Query implements Command<QueryCommandInput, QueryCommand> {
|
|
21
|
+
export declare class Query<K extends Attributes> implements Command<QueryCommandInput, QueryCommand> {
|
|
22
22
|
private readonly params;
|
|
23
23
|
private constructor();
|
|
24
24
|
toAwsCommandInput(): QueryCommandInput;
|
|
@@ -26,6 +26,6 @@ export declare class Query implements Command<QueryCommandInput, QueryCommand> {
|
|
|
26
26
|
private transformResult;
|
|
27
27
|
execute<T extends Attributes>(params: {
|
|
28
28
|
client: DynamoDBClient;
|
|
29
|
-
}): Promise<QueryResult<T>>;
|
|
30
|
-
static from(params: QueryParams): Query
|
|
29
|
+
}): Promise<QueryResult<K, T>>;
|
|
30
|
+
static from<K extends Attributes>(params: QueryParams<K>): Query<K>;
|
|
31
31
|
}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Query = void 0;
|
|
4
4
|
const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
|
|
5
5
|
const checks_1 = require("@infra-blocks/checks");
|
|
6
|
+
const types_1 = require("@infra-blocks/types");
|
|
6
7
|
const names_js_1 = require("./attributes/names.js");
|
|
7
8
|
const values_js_1 = require("./attributes/values.js");
|
|
8
9
|
const expression_js_1 = require("./expressions/condition/expression.js");
|
|
@@ -38,7 +39,7 @@ class Query {
|
|
|
38
39
|
const items = (result.Items ?? []);
|
|
39
40
|
return {
|
|
40
41
|
items,
|
|
41
|
-
lastEvaluatedKey: result.LastEvaluatedKey,
|
|
42
|
+
lastEvaluatedKey: (0, types_1.trusted)(result.LastEvaluatedKey),
|
|
42
43
|
count: (0, checks_1.checkNotNull)(result.Count, "count"),
|
|
43
44
|
scannedCount: (0, checks_1.checkNotNull)(result.ScannedCount, "scannedCount"),
|
|
44
45
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/commands/query.ts"],"names":[],"mappings":";;;AACA,wDAI+B;AAC/B,iDAAoD;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/commands/query.ts"],"names":[],"mappings":";;;AACA,wDAI+B;AAC/B,iDAAoD;AACpD,+CAA8C;AAE9C,oDAAuD;AACvD,sDAAyD;AACzD,yEAA4E;AAqB5E,MAAa,KAAK;IAGC,MAAM,CAAiB;IAExC,YAAoB,MAAsB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,iBAAiB;QACf,MAAM,EACJ,KAAK,EACL,KAAK,EACL,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,KAAK,EACL,gBAAgB,GACjB,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,MAAM,KAAK,GAAG,yBAAc,CAAC,MAAM,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,2BAAe,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,IAAA,mCAAmB,EAAC,SAAS,CAAC,CAAC,SAAS,CAAC;YAC1D,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QACH,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,cAAc;YAC9B,sBAAsB,EAAE,UAAU;YAClC,wBAAwB,EAAE,KAAK,CAAC,gBAAgB,EAAE;YAClD,yBAAyB,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACpD,iBAAiB,EAAE,iBAAiB;YACpC,KAAK,EAAE,KAAK;YACZ,gBAAgB,EAAE,gBAAgB;SACnC,CAAC;IACJ,CAAC;IAED,YAAY;QACV,OAAO,IAAI,2BAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACpD,CAAC;IAEO,eAAe,CACrB,MAA0B;QAE1B,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAa,CAAC;QAC/C,OAAO;YACL,KAAK;YACL,gBAAgB,EAAE,IAAA,eAAO,EAAC,MAAM,CAAC,gBAAgB,CAAC;YAClD,KAAK,EAAE,IAAA,qBAAY,EAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;YAC1C,YAAY,EAAE,IAAA,qBAAY,EAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC;SAChE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAuB,MAEnC;QACC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,IAAI,CAAuB,MAAsB;QACtD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;CACF;AApED,sBAoEC"}
|
package/lib/esm/client.d.ts
CHANGED
|
@@ -88,7 +88,7 @@ export declare class DynamoDbClient {
|
|
|
88
88
|
*
|
|
89
89
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html
|
|
90
90
|
*/
|
|
91
|
-
getItem<T>(params: GetItemParams): Promise<T | undefined>;
|
|
91
|
+
getItem<T extends Attributes = Attributes>(params: GetItemParams): Promise<T | undefined>;
|
|
92
92
|
/**
|
|
93
93
|
* Puts an item using the PutItem API.
|
|
94
94
|
*
|
|
@@ -114,7 +114,7 @@ export declare class DynamoDbClient {
|
|
|
114
114
|
*
|
|
115
115
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
|
|
116
116
|
*/
|
|
117
|
-
iterateQuery<T extends Attributes = Attributes>(params: QueryParams): AsyncGenerator<T>;
|
|
117
|
+
iterateQuery<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): AsyncGenerator<T>;
|
|
118
118
|
/**
|
|
119
119
|
* Paginates the result of querying a table, or an index, using the Query API.
|
|
120
120
|
*
|
|
@@ -128,7 +128,7 @@ export declare class DynamoDbClient {
|
|
|
128
128
|
*
|
|
129
129
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
|
|
130
130
|
*/
|
|
131
|
-
paginateQuery<T extends Attributes = Attributes>(params: QueryParams): AsyncGenerator<QueryResult<T>>;
|
|
131
|
+
paginateQuery<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): AsyncGenerator<QueryResult<K, T>>;
|
|
132
132
|
/**
|
|
133
133
|
* Queries a table, or an index, using the Query API.
|
|
134
134
|
*
|
|
@@ -143,7 +143,7 @@ export declare class DynamoDbClient {
|
|
|
143
143
|
*
|
|
144
144
|
* @see https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
|
|
145
145
|
*/
|
|
146
|
-
query<T extends Attributes = Attributes>(params: QueryParams): Promise<QueryResult<T>>;
|
|
146
|
+
query<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): Promise<QueryResult<K, T>>;
|
|
147
147
|
/**
|
|
148
148
|
* Convenience method over the {@link iterateQuery} method enforcing that the query
|
|
149
149
|
* matches at most one item.
|
|
@@ -155,7 +155,7 @@ export declare class DynamoDbClient {
|
|
|
155
155
|
*
|
|
156
156
|
* @returns The only item matching the query, or `undefined` if no item matches.
|
|
157
157
|
*/
|
|
158
|
-
queryOne<T extends Attributes = Attributes>(params: QueryParams): Promise<T | undefined>;
|
|
158
|
+
queryOne<K extends Attributes, T extends Attributes = Attributes>(params: QueryParams<K>): Promise<T | undefined>;
|
|
159
159
|
/**
|
|
160
160
|
* Awaits until the DynamoDB service is ready to accept requests.
|
|
161
161
|
*
|
package/lib/esm/client.js
CHANGED
|
@@ -2,6 +2,7 @@ import { DynamoDBClient, ListTablesCommand } from "@aws-sdk/client-dynamodb";
|
|
|
2
2
|
import { DynamoDBDocumentClient } from "@aws-sdk/lib-dynamodb";
|
|
3
3
|
import { NullLogger } from "@infra-blocks/null-logger";
|
|
4
4
|
import { retry } from "@infra-blocks/retry";
|
|
5
|
+
import { trusted } from "@infra-blocks/types";
|
|
5
6
|
import { CreateTable, } from "./commands/create-table.js";
|
|
6
7
|
import { DeleteTable, } from "./commands/delete.table.js";
|
|
7
8
|
import { DeleteItem } from "./commands/delete-item.js";
|
|
@@ -103,7 +104,7 @@ export class DynamoDbClient {
|
|
|
103
104
|
}
|
|
104
105
|
try {
|
|
105
106
|
const response = await this.client.send(GetItem.from(params).toAwsCommand());
|
|
106
|
-
return response.Item;
|
|
107
|
+
return trusted(response.Item);
|
|
107
108
|
}
|
|
108
109
|
catch (err) {
|
|
109
110
|
throw new DynamoDbClientError(`error while getting item from DynamoDB: ${JSON.stringify(params)}`, {
|
package/lib/esm/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAgC,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EACL,WAAW,GAEZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,GAEZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAyB,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAsB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EACL,OAAO,GAGR,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAsC,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAyB,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EACL,gBAAgB,GAEjB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,gBAAgB,GAEjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAuCjD;;;GAGG;AACH,MAAM,OAAO,cAAc;IACR,MAAM,CAAyB;IAC/B,MAAM,CAAS;IAEhC,YAAoB,MAGnB;QACC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,MAAyB;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,4BAA4B,EAAE;gBAC1D,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,2BAA2B,EAAE;gBACzD,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,MAAyB;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,4BAA4B,EAAE;gBAC1D,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO,CACX,MAAqB;QAErB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACrC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CACpC,CAAC;YAEF,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAC3B,2CAA2C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EACnE;gBACE,KAAK,EAAE,GAAG;aACX,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,OAAO,CAAC,MAAqB;QACjC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACxC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,0BAA0B,EAAE;gBACxD,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,CAAC,YAAY,CACjB,MAAsB;QAEtB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,CAAO,MAAM,CAAC,EAAE,CAAC;gBAC1D,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC;gBACb,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,EAAE;gBACjE,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,CAAC,aAAa,CAClB,MAAsB;QAEtB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAO,MAAM,CAAC,CAAC;YAC1C,MAAM,IAAI,CAAC;YAEX,OAAO,IAAI,CAAC,gBAAgB,IAAI,IAAI,EAAE,CAAC;gBACrC,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC;oBACtB,GAAG,MAAM;oBACT,iBAAiB,EAAE,IAAI,CAAC,gBAAgB;iBACzC,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC;YACb,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,oCAAoC,EAAE;gBAClE,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,KAAK,CACT,MAAsB;QAEtB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,4BAA4B,EAAE;gBAC1D,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,QAAQ,CACZ,MAAsB;QAEtB,IAAI,CAAC;YACH,IAAI,IAAmB,CAAC;YACxB,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,IAAI,CAAC,YAAY,CAAO,MAAM,CAAC,EAAE,CAAC;gBAC9D,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;oBACjB,MAAM,IAAI,mBAAmB,CAC3B,iDAAiD,CAClD,CAAC;gBACJ,CAAC;gBACD,IAAI,GAAG,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sCAAsC;YACtC,MAAM,IAAI,mBAAmB,CAC3B,6BAA6B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EACrD;gBACE,KAAK,EAAE,GAAG;aACX,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAA+C;QACnD,OAAO,KAAK,CACV,KAAK,IAAI,EAAE;YACT,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC,EACD;YACE,GAAG,OAAO;YACV,gBAAgB,EAAE,CAAC,GAAU,EAAE,EAAE;gBAC/B,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;oBAClB,OAAO,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC;gBACnC,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,2BAA2B,EAAE;gBACzD,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAA8B;QACnD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,EAAE;gBACjE,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAA8B;QACnD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,mBAAmB,CAC3B,uDAAuD,EACvD;gBACE,KAAK,EAAE,GAAG;aACX,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;IAEtB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,IAAI,CAAC,MAGX;QACC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC;QACxD,OAAO,IAAI,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CAAC,MAAM,CAAC,MAAqB;QACjC,MAAM,CAAC,GAAG,MAAM,IAAI,EAAE,CAAC;QACvB,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QACjE,OAAO,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;CACF"}
|
|
@@ -3,22 +3,22 @@ import { QueryCommand, type QueryCommandInput } from "@aws-sdk/lib-dynamodb";
|
|
|
3
3
|
import type { Attributes } from "../types.js";
|
|
4
4
|
import type { KeyConditionExpression } from "./expressions/key-condition.js";
|
|
5
5
|
import type { Command } from "./types.js";
|
|
6
|
-
export type QueryParams = {
|
|
6
|
+
export type QueryParams<K extends Attributes> = {
|
|
7
7
|
table: string;
|
|
8
8
|
index?: string;
|
|
9
9
|
condition: KeyConditionExpression;
|
|
10
10
|
consistentRead?: boolean;
|
|
11
|
-
exclusiveStartKey?:
|
|
11
|
+
exclusiveStartKey?: K;
|
|
12
12
|
limit?: number;
|
|
13
13
|
scanIndexForward?: boolean;
|
|
14
14
|
};
|
|
15
|
-
export type QueryResult<T> = {
|
|
15
|
+
export type QueryResult<K extends Attributes, T extends Attributes> = {
|
|
16
16
|
count: number;
|
|
17
17
|
items: Array<T>;
|
|
18
18
|
scannedCount: number;
|
|
19
|
-
lastEvaluatedKey?:
|
|
19
|
+
lastEvaluatedKey?: K;
|
|
20
20
|
};
|
|
21
|
-
export declare class Query implements Command<QueryCommandInput, QueryCommand> {
|
|
21
|
+
export declare class Query<K extends Attributes> implements Command<QueryCommandInput, QueryCommand> {
|
|
22
22
|
private readonly params;
|
|
23
23
|
private constructor();
|
|
24
24
|
toAwsCommandInput(): QueryCommandInput;
|
|
@@ -26,6 +26,6 @@ export declare class Query implements Command<QueryCommandInput, QueryCommand> {
|
|
|
26
26
|
private transformResult;
|
|
27
27
|
execute<T extends Attributes>(params: {
|
|
28
28
|
client: DynamoDBClient;
|
|
29
|
-
}): Promise<QueryResult<T>>;
|
|
30
|
-
static from(params: QueryParams): Query
|
|
29
|
+
}): Promise<QueryResult<K, T>>;
|
|
30
|
+
static from<K extends Attributes>(params: QueryParams<K>): Query<K>;
|
|
31
31
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { QueryCommand, } from "@aws-sdk/lib-dynamodb";
|
|
2
2
|
import { checkNotNull } from "@infra-blocks/checks";
|
|
3
|
+
import { trusted } from "@infra-blocks/types";
|
|
3
4
|
import { AttributeNames } from "./attributes/names.js";
|
|
4
5
|
import { AttributeValues } from "./attributes/values.js";
|
|
5
6
|
import { conditionExpression } from "./expressions/condition/expression.js";
|
|
@@ -35,7 +36,7 @@ export class Query {
|
|
|
35
36
|
const items = (result.Items ?? []);
|
|
36
37
|
return {
|
|
37
38
|
items,
|
|
38
|
-
lastEvaluatedKey: result.LastEvaluatedKey,
|
|
39
|
+
lastEvaluatedKey: trusted(result.LastEvaluatedKey),
|
|
39
40
|
count: checkNotNull(result.Count, "count"),
|
|
40
41
|
scannedCount: checkNotNull(result.ScannedCount, "scannedCount"),
|
|
41
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/commands/query.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,GAGb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/commands/query.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,GAGb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAqB5E,MAAM,OAAO,KAAK;IAGC,MAAM,CAAiB;IAExC,YAAoB,MAAsB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,iBAAiB;QACf,MAAM,EACJ,KAAK,EACL,KAAK,EACL,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,KAAK,EACL,gBAAgB,GACjB,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC;YAC1D,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QACH,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,cAAc;YAC9B,sBAAsB,EAAE,UAAU;YAClC,wBAAwB,EAAE,KAAK,CAAC,gBAAgB,EAAE;YAClD,yBAAyB,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACpD,iBAAiB,EAAE,iBAAiB;YACpC,KAAK,EAAE,KAAK;YACZ,gBAAgB,EAAE,gBAAgB;SACnC,CAAC;IACJ,CAAC;IAED,YAAY;QACV,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACpD,CAAC;IAEO,eAAe,CACrB,MAA0B;QAE1B,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAa,CAAC;QAC/C,OAAO;YACL,KAAK;YACL,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAClD,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;YAC1C,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC;SAChE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAuB,MAEnC;QACC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,IAAI,CAAuB,MAAsB;QACtD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@infra-blocks/aws-dynamodb",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.43.0",
|
|
4
4
|
"description": "A convenience wrapper over @aws-sdk/client-dynamodb and @aws-sdk/lib-dynamodb.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"aws",
|
|
@@ -67,6 +67,6 @@
|
|
|
67
67
|
"@infra-blocks/logger-interface": "^0.3.1",
|
|
68
68
|
"@infra-blocks/null-logger": "^0.1.1",
|
|
69
69
|
"@infra-blocks/retry": "^0.1.1",
|
|
70
|
-
"@infra-blocks/types": "^0.
|
|
70
|
+
"@infra-blocks/types": "^0.26.0"
|
|
71
71
|
}
|
|
72
72
|
}
|