@novo-learning/service-lib 1.3.5 → 1.3.7
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/dist/modules/clients/data-api/data.service.d.ts +3 -2
- package/dist/modules/clients/data-api/data.service.js +12 -3
- package/dist/modules/clients/data-api/data.service.js.map +1 -1
- package/dist/modules/clients/publisher-api/publisher.service.js +3 -1
- package/dist/modules/clients/publisher-api/publisher.service.js.map +1 -1
- package/dist/modules/nest/http/http.service.js +2 -2
- package/dist/modules/nest/http/http.service.js.map +1 -1
- package/package.json +3 -2
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
import { HttpService } from '@nestjs/axios';
|
|
2
3
|
import { AttemptResponseDtoV1, CreateAttemptDtoV1 } from '@novo-learning/novo-sdk';
|
|
3
|
-
import { NovoHttpService } from '../../nest/http/http.service';
|
|
4
4
|
export declare const DATA_API = "DATA_API";
|
|
5
5
|
export declare class DataService {
|
|
6
6
|
private readonly httpService;
|
|
7
7
|
private apiUrl;
|
|
8
8
|
private readonly api;
|
|
9
|
-
|
|
9
|
+
private readonly logger;
|
|
10
|
+
constructor(httpService: HttpService, apiUrl: string);
|
|
10
11
|
writeAttempt(attempt: CreateAttemptDtoV1, audio: Buffer, accessToken: string): Promise<AttemptResponseDtoV1 | {
|
|
11
12
|
error: string;
|
|
12
13
|
}>;
|
|
@@ -14,20 +14,29 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
14
14
|
var DataService_1;
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
16
|
exports.DataService = exports.DATA_API = void 0;
|
|
17
|
+
const axios_1 = require("@nestjs/axios");
|
|
17
18
|
const common_1 = require("@nestjs/common");
|
|
18
19
|
const novo_sdk_1 = require("@novo-learning/novo-sdk");
|
|
20
|
+
const axios_retry_1 = require("axios-retry");
|
|
19
21
|
const FormData = require("form-data");
|
|
20
|
-
const http_service_1 = require("../../nest/http/http.service");
|
|
21
22
|
exports.DATA_API = 'DATA_API';
|
|
22
23
|
const MAX_TRIES = 5;
|
|
23
24
|
let DataService = DataService_1 = class DataService {
|
|
24
25
|
constructor(httpService, apiUrl) {
|
|
25
26
|
this.httpService = httpService;
|
|
26
27
|
this.apiUrl = apiUrl;
|
|
28
|
+
this.logger = new common_1.Logger(DataService_1.name);
|
|
27
29
|
const url = this.apiUrl.includes('://') ? this.apiUrl : `http://${this.apiUrl}`;
|
|
28
30
|
const config = new novo_sdk_1.DataApiConfiguration();
|
|
29
31
|
config.formDataCtor = FormData;
|
|
30
|
-
|
|
32
|
+
(0, axios_retry_1.default)(this.httpService.axiosRef, {
|
|
33
|
+
retries: 3,
|
|
34
|
+
onRetry: (count, err, _) => {
|
|
35
|
+
this.logger.warn('Retry request ' + count);
|
|
36
|
+
this.logger.warn(JSON.stringify(err));
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
this.api = new novo_sdk_1.DataApi(config, url, this.httpService.axiosRef);
|
|
31
40
|
}
|
|
32
41
|
async writeAttempt(attempt, audio, accessToken) {
|
|
33
42
|
return this._writeAttempt(attempt, audio, accessToken);
|
|
@@ -51,7 +60,7 @@ let DataService = DataService_1 = class DataService {
|
|
|
51
60
|
DataService = DataService_1 = __decorate([
|
|
52
61
|
(0, common_1.Injectable)(),
|
|
53
62
|
__param(1, (0, common_1.Inject)(exports.DATA_API)),
|
|
54
|
-
__metadata("design:paramtypes", [
|
|
63
|
+
__metadata("design:paramtypes", [axios_1.HttpService, String])
|
|
55
64
|
], DataService);
|
|
56
65
|
exports.DataService = DataService;
|
|
57
66
|
//# sourceMappingURL=data.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.service.js","sourceRoot":"","sources":["../../../../src/modules/clients/data-api/data.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"data.service.js","sourceRoot":"","sources":["../../../../src/modules/clients/data-api/data.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAA4C;AAC5C,2CAA4D;AAC5D,sDAAkH;AAClH,6CAAqC;AACrC,sCAAsC;AAEzB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACnC,MAAM,SAAS,GAAG,CAAC,CAAC;AAGb,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAItB,YAA6B,WAAwB,EAA4B,MAAc;QAAlE,gBAAW,GAAX,WAAW,CAAa;QAA4B,WAAM,GAAN,MAAM,CAAQ;QAF9E,WAAM,GAAG,IAAI,eAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;QAGrD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;QAChF,MAAM,MAAM,GAAG,IAAI,+BAAoB,EAAE,CAAC;QAC1C,MAAM,CAAC,YAAY,GAAG,QAAQ,CAAC;QAE/B,IAAA,qBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;YACpC,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;gBACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,CAAC;gBAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,GAAG,IAAI,kBAAO,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,OAA2B,EAC3B,KAAa,EACb,WAAmB;QAEnB,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,OAA2B,EAC3B,KAAa,EACb,WAAmB,EACnB,UAAU,GAAG,CAAC;QAEd,IAAI;YACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE;gBACtF,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE;aACpD,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;SAGjB;QAAC,OAAO,GAAQ,EAAE;YACjB,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,QAAQ,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,CAAC;YACnG,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,UAAU,GAAG,SAAS,EAAE;gBAChE,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;aACxE;YACD,OAAO,EAAE,KAAK,EAAE,GAAG,aAAW,CAAC,IAAI,KAAK,OAAO,EAAE,EAAE,CAAC;SACrD;IACH,CAAC;CACF,CAAA;AAjDY,WAAW;IADvB,IAAA,mBAAU,GAAE;IAK6C,WAAA,IAAA,eAAM,EAAC,gBAAQ,CAAC,CAAA;qCAA9B,mBAAW;GAJ1C,WAAW,CAiDvB;AAjDY,kCAAW"}
|
|
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.PublisherService = void 0;
|
|
16
16
|
const common_1 = require("@nestjs/common");
|
|
17
17
|
const novo_sdk_1 = require("@novo-learning/novo-sdk");
|
|
18
|
+
const axios_retry_1 = require("axios-retry");
|
|
18
19
|
const http_service_1 = require("../../nest/http/http.service");
|
|
19
20
|
const auth_service_1 = require("../auth-api/auth.service");
|
|
20
21
|
let PublisherService = class PublisherService {
|
|
@@ -29,7 +30,8 @@ let PublisherService = class PublisherService {
|
|
|
29
30
|
this.logger = new common_1.Logger('PublisherService');
|
|
30
31
|
this.makeKey = (id) => `${PublisherService.name}-${id}`;
|
|
31
32
|
const url = this.apiUrl.includes('://') ? this.apiUrl : `http://${this.apiUrl}`;
|
|
32
|
-
this.
|
|
33
|
+
(0, axios_retry_1.default)(this.httpService.axiosRef, { retries: 3 });
|
|
34
|
+
this.api = new novo_sdk_1.PublisherApi(undefined, url, this.httpService.axiosRef);
|
|
33
35
|
}
|
|
34
36
|
async _getPublisher(id) {
|
|
35
37
|
this.logger.debug('Fetching publisher ' + id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publisher.service.js","sourceRoot":"","sources":["../../../../src/modules/clients/publisher-api/publisher.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAgD;AAChD,sDAA2G;
|
|
1
|
+
{"version":3,"file":"publisher.service.js","sourceRoot":"","sources":["../../../../src/modules/clients/publisher-api/publisher.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ let NovoHttpService = NovoHttpService_1 = class NovoHttpService extends axios_1.
|
|
|
20
20
|
this.logger = new common_1.Logger(NovoHttpService_1.name);
|
|
21
21
|
super.axiosRef.interceptors.response.use(undefined, async (err) => {
|
|
22
22
|
const { config, message } = err;
|
|
23
|
-
if (!config
|
|
23
|
+
if (!config?.retry) {
|
|
24
24
|
return Promise.reject(err);
|
|
25
25
|
}
|
|
26
26
|
if (!message.includes('503') && !message.includes('getaddrinfo') && !message.includes('socket hang up')) {
|
|
@@ -29,7 +29,7 @@ let NovoHttpService = NovoHttpService_1 = class NovoHttpService extends axios_1.
|
|
|
29
29
|
config.retry -= 1;
|
|
30
30
|
const delayRetryRequest = new Promise((resolve) => {
|
|
31
31
|
setTimeout(() => {
|
|
32
|
-
this.logger.
|
|
32
|
+
this.logger.warn('Retry the request', config.url);
|
|
33
33
|
resolve();
|
|
34
34
|
}, config.retryDelay || 100);
|
|
35
35
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.service.js","sourceRoot":"","sources":["../../../../src/modules/nest/http/http.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,yCAA4C;AAC5C,2CAAoD;AACpD,iCAA4C;AAGrC,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,mBAAW;IAG9C;QACE,KAAK,EAAE,CAAC;QAHF,WAAM,GAAW,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;QAKxD,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAyB,EAAE;YACvF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;YAChC,IAAI,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"http.service.js","sourceRoot":"","sources":["../../../../src/modules/nest/http/http.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,yCAA4C;AAC5C,2CAAoD;AACpD,iCAA4C;AAGrC,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,mBAAW;IAG9C;QACE,KAAK,EAAE,CAAC;QAHF,WAAM,GAAW,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;QAKxD,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAyB,EAAE;YACvF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;YAChC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE;gBAClB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5B;YAGD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;gBACvG,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5B;YACD,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;YAClB,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACtD,UAAU,CAAC,GAAG,EAAE;oBACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBAClD,OAAO,EAAE,CAAC;gBACZ,CAAC,EAAE,MAAM,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,MAAM,iBAAiB,CAAC;YACxB,OAAO,IAAA,eAAK,EAAC,MAAM,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAGH,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC;CACF,CAAA;AA9BY,eAAe;IAD3B,IAAA,mBAAU,GAAE;;GACA,eAAe,CA8B3B;AA9BY,0CAAe"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@novo-learning/service-lib",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.7",
|
|
4
4
|
"description": "Common components for Novo services",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -42,6 +42,7 @@
|
|
|
42
42
|
"@novo-learning/novo-sdk": "^0.3.7",
|
|
43
43
|
"@types/validator": "^13.7.1",
|
|
44
44
|
"axios": "^1.6.0",
|
|
45
|
+
"axios-retry": "^4.0.0",
|
|
45
46
|
"buffer": "^6.0.3",
|
|
46
47
|
"cache-manager": "^4.1.0",
|
|
47
48
|
"class-transformer": "^0.5.1",
|
|
@@ -60,7 +61,7 @@
|
|
|
60
61
|
"passport": "^0.6.0",
|
|
61
62
|
"passport-jwt": "^4.0.1",
|
|
62
63
|
"rxjs": "^7.8.1",
|
|
63
|
-
"typescript": "
|
|
64
|
+
"typescript": ">=4.8.0"
|
|
64
65
|
},
|
|
65
66
|
"devDependencies": {
|
|
66
67
|
"@babel/core": "^7.23.0",
|