triangle-utils 1.4.16 → 1.4.17
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.
|
@@ -2,7 +2,7 @@ export declare class UtilsDynamoDB {
|
|
|
2
2
|
private readonly dynamodb;
|
|
3
3
|
constructor(region: string);
|
|
4
4
|
get_table_key_names(table_name: string): Promise<string[] | undefined>;
|
|
5
|
-
scan(
|
|
5
|
+
scan(table_index_name: string, options?: {
|
|
6
6
|
filters?: Record<string, any>;
|
|
7
7
|
undefined_attribute_names?: string[];
|
|
8
8
|
defined_attribute_names?: string[];
|
|
@@ -98,7 +98,9 @@ export class UtilsDynamoDB {
|
|
|
98
98
|
.filter(table_key_name => table_key_name !== undefined);
|
|
99
99
|
return table_key_names;
|
|
100
100
|
}
|
|
101
|
-
async scan(
|
|
101
|
+
async scan(table_index_name, options = {}) {
|
|
102
|
+
const table_name = table_index_name.split(":")[0];
|
|
103
|
+
const index_name = table_index_name.split(":")[1];
|
|
102
104
|
const filters = options.filters !== undefined ? options.filters : {};
|
|
103
105
|
const undefined_attribute_names = options.undefined_attribute_names !== undefined ? options.undefined_attribute_names : [];
|
|
104
106
|
const defined_attribute_names = options.defined_attribute_names !== undefined ? options.defined_attribute_names : [];
|
|
@@ -118,7 +120,8 @@ export class UtilsDynamoDB {
|
|
|
118
120
|
].join(" AND ");
|
|
119
121
|
const projection_expression = attribute_names.map(attribute_name => "#" + attribute_name).join(", ");
|
|
120
122
|
const request = {
|
|
121
|
-
TableName:
|
|
123
|
+
TableName: table_name,
|
|
124
|
+
IndexName: index_name,
|
|
122
125
|
ExpressionAttributeNames: Object.keys(expression_attribute_names).length > 0 ? expression_attribute_names : undefined,
|
|
123
126
|
ExpressionAttributeValues: Object.keys(expression_attribute_values).length > 0 ? expression_attribute_values : undefined,
|
|
124
127
|
FilterExpression: filter_expression.length > 0 ? filter_expression : undefined,
|
package/package.json
CHANGED
package/src/UtilsDynamoDB.ts
CHANGED
|
@@ -106,7 +106,7 @@ export class UtilsDynamoDB {
|
|
|
106
106
|
}
|
|
107
107
|
|
|
108
108
|
async scan(
|
|
109
|
-
|
|
109
|
+
table_index_name : string,
|
|
110
110
|
options : {
|
|
111
111
|
filters? : Record<string, any>,
|
|
112
112
|
undefined_attribute_names? : string[],
|
|
@@ -115,6 +115,8 @@ export class UtilsDynamoDB {
|
|
|
115
115
|
concurrency? : number
|
|
116
116
|
} = {}
|
|
117
117
|
) : Promise<Record<string, any>[]> {
|
|
118
|
+
const table_name : string = table_index_name.split(":")[0]
|
|
119
|
+
const index_name : string | undefined = table_index_name.split(":")[1]
|
|
118
120
|
const filters = options.filters !== undefined ? options.filters : {}
|
|
119
121
|
const undefined_attribute_names : string[] = options.undefined_attribute_names !== undefined ? options.undefined_attribute_names : []
|
|
120
122
|
const defined_attribute_names : string[] = options.defined_attribute_names !== undefined ? options.defined_attribute_names : []
|
|
@@ -138,7 +140,8 @@ export class UtilsDynamoDB {
|
|
|
138
140
|
].join(" AND ")
|
|
139
141
|
const projection_expression = attribute_names.map(attribute_name => "#" + attribute_name).join(", ")
|
|
140
142
|
const request : ScanCommandInput = {
|
|
141
|
-
TableName :
|
|
143
|
+
TableName : table_name,
|
|
144
|
+
IndexName : index_name,
|
|
142
145
|
ExpressionAttributeNames : Object.keys(expression_attribute_names).length > 0 ? expression_attribute_names : undefined,
|
|
143
146
|
ExpressionAttributeValues : Object.keys(expression_attribute_values).length > 0 ? expression_attribute_values : undefined,
|
|
144
147
|
FilterExpression : filter_expression.length > 0 ? filter_expression : undefined,
|