@trunkrs/common 1.4.20 → 1.4.25
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/providers/utils.js +1 -1
- package/services/aws/SecretsClient.js +4 -2
- package/services/aws/SecretsClient.js.map +1 -1
- package/services/aws/dynamodb/DynamoDataStorage.js +3 -3
- package/services/aws/dynamodb/DynamoDataStorage.js.map +1 -1
- package/services/client/CoreServicesMachineClient.js +8 -3
- package/services/client/CoreServicesMachineClient.js.map +1 -1
- package/services/client/MachineClient.d.ts +1 -1
- package/services/client/MachineClient.js.map +1 -1
package/package.json
CHANGED
package/providers/utils.js
CHANGED
|
@@ -33,7 +33,7 @@ exports.Logger = service_provider_1.default.createSymbol('Logger');
|
|
|
33
33
|
exports.Serializer = service_provider_1.default.createSymbol('Serializer');
|
|
34
34
|
exports.HttpClient = service_provider_1.default.createSymbol('HttpClient');
|
|
35
35
|
const utilsProvider = new service_provider_1.default();
|
|
36
|
-
utilsProvider.register(exports.HttpClient, service_provider_1.Lifecycle.
|
|
36
|
+
utilsProvider.register(exports.HttpClient, service_provider_1.Lifecycle.Transient, () => new AxiosClient_1.default());
|
|
37
37
|
utilsProvider.register(exports.Logger, service_provider_1.Lifecycle.Singleton, () => new logging_1.ConsoleLogger());
|
|
38
38
|
utilsProvider.register(exports.Serializer, service_provider_1.Lifecycle.Singleton, () => new serialization_1.JSONSerializer());
|
|
39
39
|
utilsProvider.register(caching_1.MemoryCache, service_provider_1.Lifecycle.Singleton);
|
|
@@ -16,10 +16,12 @@ class SecretsClient {
|
|
|
16
16
|
return secretValue;
|
|
17
17
|
}
|
|
18
18
|
async updateSecretValue(secretName, secretValue) {
|
|
19
|
-
await this.secretsManager
|
|
19
|
+
await this.secretsManager
|
|
20
|
+
.putSecretValue({
|
|
20
21
|
SecretId: secretName,
|
|
21
22
|
SecretString: secretValue,
|
|
22
|
-
})
|
|
23
|
+
})
|
|
24
|
+
.promise();
|
|
23
25
|
const isCacheNotEmpty = await this.cache.hasKey(secretName);
|
|
24
26
|
if (isCacheNotEmpty) {
|
|
25
27
|
await this.cache.remove(secretName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecretsClient.js","sourceRoot":"","sources":["../../../services/aws/SecretsClient.ts"],"names":[],"mappings":";;AAAA,qCAAwC;AAIxC,MAAM,aAAa;IAGjB,YAAoC,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;QAF/B,mBAAc,GAAG,IAAI,wBAAc,EAAE,CAAA;IAEH,CAAC;IAE7C,KAAK,CAAC,cAAc,CAAC,UAAkB;QAC5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAC3C,UAAU,EACV,KAAK,IAAI,EAAE;YACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc;iBACrC,cAAc,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;iBACxC,OAAO,EAAE,CAAA;YAEZ,OAAO,MAAM,CAAC,YAAY,CAAA;QAC5B,CAAC,CACF,CAAA;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,UAAkB,EAClB,WAAmB;QAEnB,MAAM,IAAI,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"SecretsClient.js","sourceRoot":"","sources":["../../../services/aws/SecretsClient.ts"],"names":[],"mappings":";;AAAA,qCAAwC;AAIxC,MAAM,aAAa;IAGjB,YAAoC,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;QAF/B,mBAAc,GAAG,IAAI,wBAAc,EAAE,CAAA;IAEH,CAAC;IAE7C,KAAK,CAAC,cAAc,CAAC,UAAkB;QAC5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAC3C,UAAU,EACV,KAAK,IAAI,EAAE;YACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc;iBACrC,cAAc,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;iBACxC,OAAO,EAAE,CAAA;YAEZ,OAAO,MAAM,CAAC,YAAY,CAAA;QAC5B,CAAC,CACF,CAAA;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,UAAkB,EAClB,WAAmB;QAEnB,MAAM,IAAI,CAAC,cAAc;aACtB,cAAc,CAAC;YACd,QAAQ,EAAE,UAAU;YACpB,YAAY,EAAE,WAAW;SAC1B,CAAC;aACD,OAAO,EAAE,CAAA;QAEZ,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC3D,IAAI,eAAe,EAAE;YACnB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;SACpC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAC/C,CAAC;CACF;AAED,kBAAe,aAAa,CAAA"}
|
|
@@ -16,7 +16,7 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
|
|
|
16
16
|
}
|
|
17
17
|
const batches = [];
|
|
18
18
|
while (writeRequests.length) {
|
|
19
|
-
batches.push(writeRequests.splice(0, batchSize).filter(element => element));
|
|
19
|
+
batches.push(writeRequests.splice(0, batchSize).filter((element) => element));
|
|
20
20
|
}
|
|
21
21
|
await Promise.all(batches.map(async (batch) => {
|
|
22
22
|
let requestItems = {
|
|
@@ -29,7 +29,7 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
|
|
|
29
29
|
})
|
|
30
30
|
.promise();
|
|
31
31
|
requestItems = result.UnprocessedItems;
|
|
32
|
-
} while (requestItems);
|
|
32
|
+
} while (requestItems && Object.keys(requestItems).length > 0);
|
|
33
33
|
}));
|
|
34
34
|
}
|
|
35
35
|
async get(key) {
|
|
@@ -43,7 +43,7 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
|
|
|
43
43
|
async batchGet(keys, batchSize = 100) {
|
|
44
44
|
const batches = [];
|
|
45
45
|
while (keys.length) {
|
|
46
|
-
batches.push(keys.splice(0, batchSize));
|
|
46
|
+
batches.push(keys.splice(0, batchSize).filter((key) => key));
|
|
47
47
|
}
|
|
48
48
|
const batchResults = await Promise.all(batches.map(async (batch) => {
|
|
49
49
|
const dynamoBatchGetRequest = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoDataStorage.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"DynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoDataStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,14 @@ const MachineClient_1 = __importDefault(require("./MachineClient"));
|
|
|
7
7
|
const errors_1 = require("../../models/errors");
|
|
8
8
|
class CoreServicesMachineClient extends MachineClient_1.default {
|
|
9
9
|
async runQuery(service, query, params) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
await this.checkBearerToken();
|
|
11
|
+
const response = await this.httpClient.put({
|
|
12
|
+
url: this.createUrl(`/${service}/private/query`),
|
|
13
|
+
params: {
|
|
14
|
+
query,
|
|
15
|
+
params,
|
|
16
|
+
},
|
|
17
|
+
timeout: 30000,
|
|
13
18
|
});
|
|
14
19
|
if (!response.result) {
|
|
15
20
|
throw new errors_1.CoreServicesRequestFailedError(response.stackTrace ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreServicesMachineClient.js","sourceRoot":"","sources":["../../../services/client/CoreServicesMachineClient.ts"],"names":[],"mappings":";;;;;AACA,oEAA2C;AAC3C,gDAAoE;AAapE,MAAM,yBAA0B,SAAQ,uBAAa;IAS5C,KAAK,CAAC,QAAQ,CACnB,OAAyB,EACzB,KAAa,EACb,MAA+B;QAE/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"CoreServicesMachineClient.js","sourceRoot":"","sources":["../../../services/client/CoreServicesMachineClient.ts"],"names":[],"mappings":";;;;;AACA,oEAA2C;AAC3C,gDAAoE;AAapE,MAAM,yBAA0B,SAAQ,uBAAa;IAS5C,KAAK,CAAC,QAAQ,CACnB,OAAyB,EACzB,KAAa,EACb,MAA+B;QAE/B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAE7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAGxC;YACA,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,OAAO,gBAAgB,CAAC;YAChD,MAAM,EAAE;gBACN,KAAK;gBACL,MAAM;aACP;YACD,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACpB,MAAM,IAAI,uCAA8B,CACtC,QAAQ,CAAC,UAAU;gBACjB,0DAA0D,EAC5D,QAAQ,CAAC,OAAO;gBACd,uDAAuD,CAC1D,CAAA;SACF;QAED,OAAO,QAAQ,CAAC,MAAM,CAAA;IACxB,CAAC;CACF;AAED,kBAAe,yBAAyB,CAAA"}
|
|
@@ -10,7 +10,7 @@ declare class MachineClient {
|
|
|
10
10
|
protected readonly baseUrl: string;
|
|
11
11
|
private bearerTokenInterceptorId?;
|
|
12
12
|
constructor(machineTokenClient: MachineTokenClient, httpClient: HttpClient, cache: Cache, secretCacheKey: string, baseUrl: string);
|
|
13
|
-
|
|
13
|
+
protected createUrl(resource: string): string;
|
|
14
14
|
private get axiosClient();
|
|
15
15
|
get<TResponse, TRequest = any>(resource: string, parameters?: TRequest, headers?: Record<string, any>, responseType?: ResponseType): Promise<TResponse>;
|
|
16
16
|
post<TRequest = any, TResponse = unknown>(resource: string, body: TRequest, headers?: Record<string, any>): Promise<TResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MachineClient.js","sourceRoot":"","sources":["../../../services/client/MachineClient.ts"],"names":[],"mappings":";;AAQA,MAAM,aAAa;IAGjB,YACqB,kBAAsC,EACtC,UAAsB,EACtB,KAAY,EACZ,cAAsB,EACtB,OAAe;QAJf,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,eAAU,GAAV,UAAU,CAAY;QACtB,UAAK,GAAL,KAAK,CAAO;QACZ,mBAAc,GAAd,cAAc,CAAQ;QACtB,YAAO,GAAP,OAAO,CAAQ;IACjC,CAAC;
|
|
1
|
+
{"version":3,"file":"MachineClient.js","sourceRoot":"","sources":["../../../services/client/MachineClient.ts"],"names":[],"mappings":"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"}
|