@trunkrs/common 1.12.1 → 1.12.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/package.json +1 -1
- package/services/aws/dynamodb/DynamoDataStorage.js +3 -2
- package/services/aws/dynamodb/DynamoDataStorage.js.map +1 -1
- package/services/aws/dynamodb/DynamoIndexDataStorage.d.ts +2 -0
- package/services/aws/dynamodb/DynamoIndexDataStorage.js +15 -0
- package/services/aws/dynamodb/DynamoIndexDataStorage.js.map +1 -1
package/package.json
CHANGED
|
@@ -18,7 +18,8 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
|
|
|
18
18
|
while (writeRequests.length) {
|
|
19
19
|
batches.push(writeRequests.splice(0, batchSize).filter((element) => element));
|
|
20
20
|
}
|
|
21
|
-
|
|
21
|
+
for (let i = 0; i < batches.length; i += 1) {
|
|
22
|
+
const batch = batches[i];
|
|
22
23
|
let requestItems = {
|
|
23
24
|
[this.tableName]: batch,
|
|
24
25
|
};
|
|
@@ -30,7 +31,7 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
|
|
|
30
31
|
.promise();
|
|
31
32
|
requestItems = result.UnprocessedItems;
|
|
32
33
|
} while (requestItems && Object.keys(requestItems).length > 0);
|
|
33
|
-
}
|
|
34
|
+
}
|
|
34
35
|
}
|
|
35
36
|
async get(key) {
|
|
36
37
|
const dynamoGetRequest = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoDataStorage.ts"],"names":[],"mappings":";;;;;AAKA,mCAAmE;AACnE,oFAA2D;AAE3D,kFAAyD;AAGzD,MAAe,iBACb,SAAQ,+BAA8B;IAGtC,YAAsB,SAAiB;QACrC,KAAK,CAAC,SAAS,CAAC,CAAA;IAClB,CAAC;IAES,KAAK,CAAC,iBAAiB,CAC/B,aAAoD,EACpD,SAAS,GAAG,EAAE;QAEd,IAAI,SAAS,GAAG,EAAE,EAAE;YAClB,MAAM,IAAI,8BAAoB,EAAE,CAAA;SACjC;QAED,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,OAAO,aAAa,CAAC,MAAM,EAAE;YAC3B,OAAO,CAAC,IAAI,CACV,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAChE,CAAA;SACF;QAED,
|
|
1
|
+
{"version":3,"file":"DynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoDataStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import BaseDynamoDataStorage from './BaseDynamoDataStorage';
|
|
2
2
|
import { QueryParameters } from './utils';
|
|
3
3
|
import QueryableDataStorage from './interfaces/QueryableDataStorage';
|
|
4
|
+
import PaginatedFindResult from './interfaces/PaginatedFindResult';
|
|
4
5
|
declare abstract class DynamoIndexDataStorage<TEntity> extends BaseDynamoDataStorage<TEntity> implements QueryableDataStorage<TEntity> {
|
|
5
6
|
protected readonly indexName: string;
|
|
6
7
|
protected constructor(tableName: string, indexName: string);
|
|
7
8
|
find<TResultEntity = TEntity>(query: QueryParameters<TEntity>): Promise<TResultEntity[]>;
|
|
9
|
+
paginatedFind<TResultEntity = TEntity>(query: QueryParameters<TEntity>, lastEvaluatedKey?: string): Promise<PaginatedFindResult<TResultEntity>>;
|
|
8
10
|
findOne(query: Omit<QueryParameters<TEntity>, 'limit'>): Promise<TEntity | null>;
|
|
9
11
|
}
|
|
10
12
|
export default DynamoIndexDataStorage;
|
|
@@ -25,6 +25,21 @@ class DynamoIndexDataStorage extends BaseDynamoDataStorage_1.default {
|
|
|
25
25
|
const result = await this.executeOperation(queryOp, ddbQuery);
|
|
26
26
|
return result;
|
|
27
27
|
}
|
|
28
|
+
async paginatedFind(query, lastEvaluatedKey) {
|
|
29
|
+
var _a, _b;
|
|
30
|
+
const queryOp = (_b = (_a = query.queryOptions) === null || _a === void 0 ? void 0 : _a.operation) !== null && _b !== void 0 ? _b : 'Query';
|
|
31
|
+
const builderParams = {
|
|
32
|
+
query,
|
|
33
|
+
tableName: this.tableName,
|
|
34
|
+
primaryKeys: this.keys,
|
|
35
|
+
indexName: this.indexName,
|
|
36
|
+
};
|
|
37
|
+
const ddbQuery = queryOp === 'Scan'
|
|
38
|
+
? utils_1.QueryBuilder.buildScan(builderParams)
|
|
39
|
+
: utils_1.QueryBuilder.buildQuery(builderParams);
|
|
40
|
+
const result = await this.executePaginatedOperation(queryOp, ddbQuery, lastEvaluatedKey);
|
|
41
|
+
return result;
|
|
42
|
+
}
|
|
28
43
|
async findOne(query) {
|
|
29
44
|
const limitedQuery = {
|
|
30
45
|
...query,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamoIndexDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoIndexDataStorage.ts"],"names":[],"mappings":";;;;;AAAA,oFAA2D;AAC3D,mCAAuD;
|
|
1
|
+
{"version":3,"file":"DynamoIndexDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoIndexDataStorage.ts"],"names":[],"mappings":";;;;;AAAA,oFAA2D;AAC3D,mCAAuD;AAIvD,MAAe,sBACb,SAAQ,+BAA8B;IAGtC,YACE,SAAiB,EACE,SAAiB;QAEpC,KAAK,CAAC,SAAS,CAAC,CAAA;QAFG,cAAS,GAAT,SAAS,CAAQ;IAGtC,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,KAA+B;;QAE/B,MAAM,OAAO,GAAG,MAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,SAAS,mCAAI,OAAO,CAAA;QACxD,MAAM,aAAa,GAAG;YACpB,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,IAAI;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAA;QAED,MAAM,QAAQ,GACZ,OAAO,KAAK,MAAM;YAChB,CAAC,CAAC,oBAAY,CAAC,SAAS,CAAC,aAAa,CAAC;YACvC,CAAC,CAAC,oBAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QAE5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAgB,OAAO,EAAE,QAAQ,CAAC,CAAA;QAC5E,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,KAA+B,EAC/B,gBAAyB;;QAEzB,MAAM,OAAO,GAAG,MAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,SAAS,mCAAI,OAAO,CAAA;QACxD,MAAM,aAAa,GAAG;YACpB,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,IAAI;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAA;QAED,MAAM,QAAQ,GACZ,OAAO,KAAK,MAAM;YAChB,CAAC,CAAC,oBAAY,CAAC,SAAS,CAAC,aAAa,CAAC;YACvC,CAAC,CAAC,oBAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QAE5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CACjD,OAAO,EACP,QAAQ,EACR,gBAAgB,CACjB,CAAA;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,KAA8C;QAE9C,MAAM,YAAY,GAAG;YACnB,GAAG,KAAK;YACR,KAAK,EAAE,CAAC;SACT,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC9C,OAAO,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAA;IACvB,CAAC;CACF;AAED,kBAAe,sBAAsB,CAAA"}
|