@haku-sci/utils 1.1.0 → 1.2.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/dist/health/health.controller.d.ts +6 -0
- package/dist/health/health.controller.js +31 -0
- package/dist/health/health.controller.js.map +1 -0
- package/dist/health/health.module.d.ts +4 -0
- package/dist/health/health.module.js +25 -0
- package/dist/health/health.module.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/microservice/microservice.libs.d.ts +6 -0
- package/dist/microservice/microservice.libs.js +43 -0
- package/dist/microservice/microservice.libs.js.map +1 -0
- package/dist/microservice/microservice.module.d.ts +7 -0
- package/dist/microservice/microservice.module.js +61 -0
- package/dist/microservice/microservice.module.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils.module.js +1 -5
- package/dist/utils.module.js.map +1 -1
- package/dist/utils.service.d.ts +5 -6
- package/dist/utils.service.js +33 -28
- package/dist/utils.service.js.map +1 -1
- package/dist/utils.service.spec.js +0 -14
- package/dist/utils.service.spec.js.map +1 -1
- package/package.json +30 -29
- package/utils/src/index.ts +1 -1
- package/utils/src/microservice/microservice.libs.ts +52 -0
- package/utils/src/utils.module.ts +0 -4
- package/utils/src/utils.service.spec.ts +2 -1
- package/utils/src/utils.service.ts +0 -54
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.HealthController = void 0;
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const microservices_1 = require("@nestjs/microservices");
|
|
15
|
+
let HealthController = class HealthController {
|
|
16
|
+
checkHealth() {
|
|
17
|
+
console.log('Health check received');
|
|
18
|
+
return { status: 'ok', timestamp: new Date().toISOString() };
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.HealthController = HealthController;
|
|
22
|
+
__decorate([
|
|
23
|
+
(0, microservices_1.MessagePattern)('is-alive'),
|
|
24
|
+
__metadata("design:type", Function),
|
|
25
|
+
__metadata("design:paramtypes", []),
|
|
26
|
+
__metadata("design:returntype", void 0)
|
|
27
|
+
], HealthController.prototype, "checkHealth", null);
|
|
28
|
+
exports.HealthController = HealthController = __decorate([
|
|
29
|
+
(0, common_1.Controller)()
|
|
30
|
+
], HealthController);
|
|
31
|
+
//# sourceMappingURL=health.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.controller.js","sourceRoot":"","sources":["../../utils/src/health/health.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAAuD;AAGhD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAE3B,WAAW;QACT,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;IAC/D,CAAC;CACF,CAAA;AANY,4CAAgB;AAE3B;IADC,IAAA,8BAAc,EAAC,UAAU,CAAC;;;;mDAI1B;2BALU,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;GACA,gBAAgB,CAM5B"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var HealthModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.HealthModule = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const health_controller_1 = require("./health.controller");
|
|
13
|
+
let HealthModule = HealthModule_1 = class HealthModule {
|
|
14
|
+
static forRoot() {
|
|
15
|
+
return {
|
|
16
|
+
module: HealthModule_1,
|
|
17
|
+
controllers: [health_controller_1.HealthController],
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.HealthModule = HealthModule;
|
|
22
|
+
exports.HealthModule = HealthModule = HealthModule_1 = __decorate([
|
|
23
|
+
(0, common_1.Module)({})
|
|
24
|
+
], HealthModule);
|
|
25
|
+
//# sourceMappingURL=health.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.module.js","sourceRoot":"","sources":["../../utils/src/health/health.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AACvD,2DAAuD;AAGhD,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,MAAM,EAAE,cAAY;YACpB,WAAW,EAAE,CAAC,oCAAgB,CAAC;SAChC,CAAC;IACJ,CAAC;CACF,CAAA;AAPY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,YAAY,CAOxB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './utils.module';
|
|
2
|
-
export * from './
|
|
2
|
+
export * from './microservice/microservice.libs';
|
package/dist/index.js
CHANGED
|
@@ -15,5 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./utils.module"), exports);
|
|
18
|
-
__exportStar(require("./
|
|
18
|
+
__exportStar(require("./microservice/microservice.libs"), exports);
|
|
19
19
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../utils/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../utils/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,mEAAiD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MicroserviceLib = void 0;
|
|
4
|
+
const promises_1 = require("fs/promises");
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const core_1 = require("@nestjs/core");
|
|
7
|
+
const microservices_1 = require("@nestjs/microservices");
|
|
8
|
+
const axios_1 = require("axios");
|
|
9
|
+
class MicroserviceLib {
|
|
10
|
+
static async projectName() {
|
|
11
|
+
var data = await (0, promises_1.readFile)(path.join(process.cwd(), 'package.json'));
|
|
12
|
+
const { name } = JSON.parse(data.toString());
|
|
13
|
+
return name;
|
|
14
|
+
}
|
|
15
|
+
static async registerService(address) {
|
|
16
|
+
const projectName = await this.projectName();
|
|
17
|
+
const serviceData = {
|
|
18
|
+
ID: projectName,
|
|
19
|
+
Name: projectName,
|
|
20
|
+
Address: address.address,
|
|
21
|
+
Port: address.port,
|
|
22
|
+
Check: {
|
|
23
|
+
TCP: `${address.address}:${address.port}`,
|
|
24
|
+
Interval: "10s",
|
|
25
|
+
Timeout: "5s",
|
|
26
|
+
DeregisterCriticalServiceAfter: "1m"
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
await axios_1.default.put(process.env["CONSUL_URL"], serviceData);
|
|
30
|
+
console.log(`Service registered with Consul on ${address.address}:${address.port}`);
|
|
31
|
+
}
|
|
32
|
+
static async bootstrapMicroservice(appModule) {
|
|
33
|
+
const app = await core_1.NestFactory.createMicroservice(appModule, {
|
|
34
|
+
transport: microservices_1.Transport.TCP,
|
|
35
|
+
});
|
|
36
|
+
await app.listen();
|
|
37
|
+
const tcpServer = app.server.server;
|
|
38
|
+
this.registerService(tcpServer.address());
|
|
39
|
+
return app;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.MicroserviceLib = MicroserviceLib;
|
|
43
|
+
//# sourceMappingURL=microservice.libs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"microservice.libs.js","sourceRoot":"","sources":["../../utils/src/microservice/microservice.libs.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AACvC,6BAA6B;AAC7B,uCAA2C;AAC3C,yDAAuE;AAEvE,iCAA0B;AAE1B,MAAa,eAAe;IAC1B,MAAM,CAAC,KAAK,CAAC,WAAW;QACtB,IAAI,IAAI,GAAG,MAAM,IAAA,mBAAQ,EACrB,IAAI,CAAC,IAAI,CACL,OAAO,CAAC,GAAG,EAAE,EACb,cAAc,CACjB,CACJ,CAAA;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,OAAwB;QAC3D,MAAM,WAAW,GAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE;gBACL,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE;gBACzC,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,8BAA8B,EAAE,IAAI;aACrC;SACF,CAAC;QAEF,MAAM,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,qCAAqC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS;QAC1C,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,kBAAkB,CAC9C,SAAS,EACT;YACE,SAAS,EAAE,yBAAS,CAAC,GAAG;SACzB,CACF,CAAC;QACF,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,SAAS,GAAgB,GAAW,CAAC,MAAM,CAAC,MAAM,CAAC;QACzD,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,EAAqB,CAAC,CAAA;QAC5D,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AA3CD,0CA2CC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { INestMicroservice } from '@nestjs/common';
|
|
2
|
+
export declare class MicroserviceModule {
|
|
3
|
+
static projectName(): Promise<string>;
|
|
4
|
+
private static registerService;
|
|
5
|
+
private static register;
|
|
6
|
+
static bootstrapMicroservice(appModule: any, customControllers?: any): Promise<INestMicroservice>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var MicroserviceModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.MicroserviceModule = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const promises_1 = require("fs/promises");
|
|
13
|
+
const path = require("path");
|
|
14
|
+
const core_1 = require("@nestjs/core");
|
|
15
|
+
const microservices_1 = require("@nestjs/microservices");
|
|
16
|
+
const axios_1 = require("axios");
|
|
17
|
+
const health_module_1 = require("../health/health.module");
|
|
18
|
+
let MicroserviceModule = MicroserviceModule_1 = class MicroserviceModule {
|
|
19
|
+
static async projectName() {
|
|
20
|
+
var data = await (0, promises_1.readFile)(path.join(process.cwd(), 'package.json'));
|
|
21
|
+
const { name } = JSON.parse(data.toString());
|
|
22
|
+
return name;
|
|
23
|
+
}
|
|
24
|
+
static async registerService(address) {
|
|
25
|
+
const projectName = await this.projectName();
|
|
26
|
+
const serviceData = {
|
|
27
|
+
ID: projectName,
|
|
28
|
+
Name: projectName,
|
|
29
|
+
Address: address.address,
|
|
30
|
+
Port: address.port,
|
|
31
|
+
Check: {
|
|
32
|
+
TCP: `${address.address}:${address.port}`,
|
|
33
|
+
Interval: "10s",
|
|
34
|
+
Timeout: "5s",
|
|
35
|
+
DeregisterCriticalServiceAfter: "1m"
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
await axios_1.default.put(process.env["CONSUL_URL"], serviceData);
|
|
39
|
+
console.log(`Service registered with Consul on ${address.address}:${address.port}`);
|
|
40
|
+
}
|
|
41
|
+
static register(appModule, additionalModules = []) {
|
|
42
|
+
return {
|
|
43
|
+
module: MicroserviceModule_1,
|
|
44
|
+
imports: [appModule, health_module_1.HealthModule, ...additionalModules],
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
static async bootstrapMicroservice(appModule, customControllers) {
|
|
48
|
+
const app = await core_1.NestFactory.createMicroservice(MicroserviceModule_1.register(appModule, customControllers), {
|
|
49
|
+
transport: microservices_1.Transport.TCP,
|
|
50
|
+
});
|
|
51
|
+
await app.listen();
|
|
52
|
+
const tcpServer = app.server.server;
|
|
53
|
+
this.registerService(tcpServer.address());
|
|
54
|
+
return app;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
exports.MicroserviceModule = MicroserviceModule;
|
|
58
|
+
exports.MicroserviceModule = MicroserviceModule = MicroserviceModule_1 = __decorate([
|
|
59
|
+
(0, common_1.Module)({})
|
|
60
|
+
], MicroserviceModule);
|
|
61
|
+
//# sourceMappingURL=microservice.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"microservice.module.js","sourceRoot":"","sources":["../../utils/src/microservice/microservice.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA0E;AAC1E,0CAAuC;AACvC,6BAA6B;AAC7B,uCAA2C;AAC3C,yDAAuE;AAEvE,iCAA0B;AAC1B,2DAAuD;AAGhD,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC7B,MAAM,CAAC,KAAK,CAAC,WAAW;QACtB,IAAI,IAAI,GAAG,MAAM,IAAA,mBAAQ,EACrB,IAAI,CAAC,IAAI,CACL,OAAO,CAAC,GAAG,EAAE,EACb,cAAc,CACjB,CACJ,CAAA;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,OAAwB;QAC3D,MAAM,WAAW,GAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE;gBACL,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE;gBACzC,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,8BAA8B,EAAE,IAAI;aACrC;SACF,CAAC;QAEF,MAAM,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,qCAAqC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,CAAC;IAEO,MAAM,CAAC,QAAQ,CAAC,SAAc,EAAE,oBAA2B,EAAE;QACnE,OAAO;YACL,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,CAAC,SAAS,EAAE,4BAAY,EAAE,GAAG,iBAAiB,CAAC;SACzD,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS,EAAE,iBAAkB;QAC9D,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,kBAAkB,CAC9C,oBAAkB,CAAC,QAAQ,CACzB,SAAS,EACT,iBAAiB,CAClB,EACD;YACE,SAAS,EAAE,yBAAS,CAAC,GAAG;SACzB,CACF,CAAC;QACF,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,SAAS,GAAgB,GAAW,CAAC,MAAM,CAAC,MAAM,CAAC;QACzD,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,EAAqB,CAAC,CAAA;QAC5D,OAAO,GAAG,CAAA;IACZ,CAAC;CACF,CAAA;AArDY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,kBAAkB,CAqD9B"}
|