@zorionapp/gg-core 4.14.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/README.md +11 -0
- package/package.json +58 -0
- package/src/gg-auth/decorators/protected.decorator.d.ts +9 -0
- package/src/gg-auth/decorators/protected.decorator.js +8 -0
- package/src/gg-auth/decorators/protected.decorator.js.map +1 -0
- package/src/gg-auth/exceptions/merchant-ip-mismatch.exception.d.ts +7 -0
- package/src/gg-auth/exceptions/merchant-ip-mismatch.exception.js +15 -0
- package/src/gg-auth/exceptions/merchant-ip-mismatch.exception.js.map +1 -0
- package/src/gg-auth/exceptions/user-blocked.exception.d.ts +9 -0
- package/src/gg-auth/exceptions/user-blocked.exception.js +17 -0
- package/src/gg-auth/exceptions/user-blocked.exception.js.map +1 -0
- package/src/gg-auth/exceptions/user-inactive.exception.d.ts +9 -0
- package/src/gg-auth/exceptions/user-inactive.exception.js +17 -0
- package/src/gg-auth/exceptions/user-inactive.exception.js.map +1 -0
- package/src/gg-auth/exceptions/user-otp-blocked.exception.d.ts +9 -0
- package/src/gg-auth/exceptions/user-otp-blocked.exception.js +17 -0
- package/src/gg-auth/exceptions/user-otp-blocked.exception.js.map +1 -0
- package/src/gg-auth/exceptions/user-password-blocked.exception.d.ts +9 -0
- package/src/gg-auth/exceptions/user-password-blocked.exception.js +17 -0
- package/src/gg-auth/exceptions/user-password-blocked.exception.js.map +1 -0
- package/src/gg-auth/exceptions/user-password-recovery-blocked.exception.d.ts +9 -0
- package/src/gg-auth/exceptions/user-password-recovery-blocked.exception.js +17 -0
- package/src/gg-auth/exceptions/user-password-recovery-blocked.exception.js.map +1 -0
- package/src/gg-auth/gg-auth.module-options.d.ts +41 -0
- package/src/gg-auth/gg-auth.module-options.js +16 -0
- package/src/gg-auth/gg-auth.module-options.js.map +1 -0
- package/src/gg-auth/gg-auth.module.d.ts +5 -0
- package/src/gg-auth/gg-auth.module.js +68 -0
- package/src/gg-auth/gg-auth.module.js.map +1 -0
- package/src/gg-auth/guards/auth.guard.d.ts +69 -0
- package/src/gg-auth/guards/auth.guard.js +175 -0
- package/src/gg-auth/guards/auth.guard.js.map +1 -0
- package/src/gg-auth/index.d.ts +8 -0
- package/src/gg-auth/index.js +13 -0
- package/src/gg-auth/index.js.map +1 -0
- package/src/gg-auth/injectable-proxy/authorized-merchant.d.ts +10 -0
- package/src/gg-auth/injectable-proxy/authorized-merchant.js +28 -0
- package/src/gg-auth/injectable-proxy/authorized-merchant.js.map +1 -0
- package/src/gg-auth/injectable-proxy/authorized-user.d.ts +24 -0
- package/src/gg-auth/injectable-proxy/authorized-user.js +56 -0
- package/src/gg-auth/injectable-proxy/authorized-user.js.map +1 -0
- package/src/gg-auth/interfaces/authorized.interface.d.ts +5 -0
- package/src/gg-auth/interfaces/authorized.interface.js +3 -0
- package/src/gg-auth/interfaces/authorized.interface.js.map +1 -0
- package/src/gg-auth/services/auth-service.interface.d.ts +4 -0
- package/src/gg-auth/services/auth-service.interface.js +3 -0
- package/src/gg-auth/services/auth-service.interface.js.map +1 -0
- package/src/gg-auth/services/gg-bearer-auth.service.d.ts +39 -0
- package/src/gg-auth/services/gg-bearer-auth.service.js +84 -0
- package/src/gg-auth/services/gg-bearer-auth.service.js.map +1 -0
- package/src/gg-auth/services/gg-merchant-auth.service.d.ts +8 -0
- package/src/gg-auth/services/gg-merchant-auth.service.js +24 -0
- package/src/gg-auth/services/gg-merchant-auth.service.js.map +1 -0
- package/src/gg-auth/utils/get-rpc-user.util.d.ts +3 -0
- package/src/gg-auth/utils/get-rpc-user.util.js +14 -0
- package/src/gg-auth/utils/get-rpc-user.util.js.map +1 -0
- package/src/gg-cache/gg-cache.module.d.ts +4 -0
- package/src/gg-cache/gg-cache.module.js +55 -0
- package/src/gg-cache/gg-cache.module.js.map +1 -0
- package/src/gg-cache/gg-cache.service.d.ts +23 -0
- package/src/gg-cache/gg-cache.service.js +58 -0
- package/src/gg-cache/gg-cache.service.js.map +1 -0
- package/src/gg-cache/index.d.ts +2 -0
- package/src/gg-cache/index.js +6 -0
- package/src/gg-cache/index.js.map +1 -0
- package/src/gg-cache/redis.config.d.ts +6 -0
- package/src/gg-cache/redis.config.js +23 -0
- package/src/gg-cache/redis.config.js.map +1 -0
- package/src/gg-cls/gg-cls.module.d.ts +4 -0
- package/src/gg-cls/gg-cls.module.js +54 -0
- package/src/gg-cls/gg-cls.module.js.map +1 -0
- package/src/gg-cls/index.d.ts +1 -0
- package/src/gg-cls/index.js +5 -0
- package/src/gg-cls/index.js.map +1 -0
- package/src/gg-config/app.config.d.ts +16 -0
- package/src/gg-config/app.config.js +78 -0
- package/src/gg-config/app.config.js.map +1 -0
- package/src/gg-config/gg-config.module-options.d.ts +4 -0
- package/src/gg-config/gg-config.module-options.js +3 -0
- package/src/gg-config/gg-config.module-options.js.map +1 -0
- package/src/gg-config/gg-config.module.d.ts +5 -0
- package/src/gg-config/gg-config.module.js +22 -0
- package/src/gg-config/gg-config.module.js.map +1 -0
- package/src/gg-config/index.d.ts +3 -0
- package/src/gg-config/index.js +7 -0
- package/src/gg-config/index.js.map +1 -0
- package/src/gg-config/validate-config.d.ts +2 -0
- package/src/gg-config/validate-config.js +31 -0
- package/src/gg-config/validate-config.js.map +1 -0
- package/src/gg-core/gg-core-module-options.d.ts +12 -0
- package/src/gg-core/gg-core-module-options.js +3 -0
- package/src/gg-core/gg-core-module-options.js.map +1 -0
- package/src/gg-core/gg-core.middleware.d.ts +8 -0
- package/src/gg-core/gg-core.middleware.js +31 -0
- package/src/gg-core/gg-core.middleware.js.map +1 -0
- package/src/gg-core/gg-core.module.d.ts +9 -0
- package/src/gg-core/gg-core.module.js +58 -0
- package/src/gg-core/gg-core.module.js.map +1 -0
- package/src/gg-core/index.d.ts +2 -0
- package/src/gg-core/index.js +6 -0
- package/src/gg-core/index.js.map +1 -0
- package/src/gg-database/config/db-entities.config.d.ts +5 -0
- package/src/gg-database/config/db-entities.config.js +7 -0
- package/src/gg-database/config/db-entities.config.js.map +1 -0
- package/src/gg-database/config/mikroorm.config.d.ts +9 -0
- package/src/gg-database/config/mikroorm.config.js +38 -0
- package/src/gg-database/config/mikroorm.config.js.map +1 -0
- package/src/gg-database/database.adapter.d.ts +24 -0
- package/src/gg-database/database.adapter.js +50 -0
- package/src/gg-database/database.adapter.js.map +1 -0
- package/src/gg-database/database.connector.d.ts +27 -0
- package/src/gg-database/database.connector.js +54 -0
- package/src/gg-database/database.connector.js.map +1 -0
- package/src/gg-database/index.d.ts +3 -0
- package/src/gg-database/index.js +7 -0
- package/src/gg-database/index.js.map +1 -0
- package/src/gg-database/modules/mikroorm.module.d.ts +37 -0
- package/src/gg-database/modules/mikroorm.module.js +111 -0
- package/src/gg-database/modules/mikroorm.module.js.map +1 -0
- package/src/gg-errors/exception.domain-codes.d.ts +12 -0
- package/src/gg-errors/exception.domain-codes.js +17 -0
- package/src/gg-errors/exception.domain-codes.js.map +1 -0
- package/src/gg-errors/exceptions/gg.exception.d.ts +12 -0
- package/src/gg-errors/exceptions/gg.exception.js +27 -0
- package/src/gg-errors/exceptions/gg.exception.js.map +1 -0
- package/src/gg-errors/gcp-error-event.interface.d.ts +18 -0
- package/src/gg-errors/gcp-error-event.interface.js +3 -0
- package/src/gg-errors/gcp-error-event.interface.js.map +1 -0
- package/src/gg-errors/gcp-error-reporting.service.d.ts +11 -0
- package/src/gg-errors/gcp-error-reporting.service.js +71 -0
- package/src/gg-errors/gcp-error-reporting.service.js.map +1 -0
- package/src/gg-errors/gg-errors-exception.filter.d.ts +9 -0
- package/src/gg-errors/gg-errors-exception.filter.js +26 -0
- package/src/gg-errors/gg-errors-exception.filter.js.map +1 -0
- package/src/gg-errors/gg-errors.module-options.d.ts +8 -0
- package/src/gg-errors/gg-errors.module-options.js +5 -0
- package/src/gg-errors/gg-errors.module-options.js.map +1 -0
- package/src/gg-errors/gg-errors.module.d.ts +5 -0
- package/src/gg-errors/gg-errors.module.js +35 -0
- package/src/gg-errors/gg-errors.module.js.map +1 -0
- package/src/gg-errors/gg-exception.service.d.ts +50 -0
- package/src/gg-errors/gg-exception.service.js +213 -0
- package/src/gg-errors/gg-exception.service.js.map +1 -0
- package/src/gg-errors/index.d.ts +1 -0
- package/src/gg-errors/index.js +5 -0
- package/src/gg-errors/index.js.map +1 -0
- package/src/gg-gcp/gcp-trace-and-profiler.d.ts +1 -0
- package/src/gg-gcp/gcp-trace-and-profiler.js +52 -0
- package/src/gg-gcp/gcp-trace-and-profiler.js.map +1 -0
- package/src/gg-gcp/index.d.ts +1 -0
- package/src/gg-gcp/index.js +5 -0
- package/src/gg-gcp/index.js.map +1 -0
- package/src/gg-healthchecks/gg-healthchecks.controller.d.ts +7 -0
- package/src/gg-healthchecks/gg-healthchecks.controller.js +31 -0
- package/src/gg-healthchecks/gg-healthchecks.controller.js.map +1 -0
- package/src/gg-healthchecks/gg-healthchecks.module.d.ts +4 -0
- package/src/gg-healthchecks/gg-healthchecks.module.js +17 -0
- package/src/gg-healthchecks/gg-healthchecks.module.js.map +1 -0
- package/src/gg-kernel/index.d.ts +2 -0
- package/src/gg-kernel/index.js +6 -0
- package/src/gg-kernel/index.js.map +1 -0
- package/src/gg-kernel/kernel.d.ts +36 -0
- package/src/gg-kernel/kernel.js +86 -0
- package/src/gg-kernel/kernel.js.map +1 -0
- package/src/gg-kernel/service-providers/base-service-provider.d.ts +15 -0
- package/src/gg-kernel/service-providers/base-service-provider.js +25 -0
- package/src/gg-kernel/service-providers/base-service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/global-prefix.service-provider.d.ts +4 -0
- package/src/gg-kernel/service-providers/global-prefix.service-provider.js +17 -0
- package/src/gg-kernel/service-providers/global-prefix.service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/helmet.service-provider.d.ts +4 -0
- package/src/gg-kernel/service-providers/helmet.service-provider.js +12 -0
- package/src/gg-kernel/service-providers/helmet.service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/index.d.ts +8 -0
- package/src/gg-kernel/service-providers/index.js +12 -0
- package/src/gg-kernel/service-providers/index.js.map +1 -0
- package/src/gg-kernel/service-providers/logger.service-provider.d.ts +8 -0
- package/src/gg-kernel/service-providers/logger.service-provider.js +20 -0
- package/src/gg-kernel/service-providers/logger.service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/shutdown-hooks.service-provider.d.ts +7 -0
- package/src/gg-kernel/service-providers/shutdown-hooks.service-provider.js +14 -0
- package/src/gg-kernel/service-providers/shutdown-hooks.service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/swagger.service-provider.d.ts +13 -0
- package/src/gg-kernel/service-providers/swagger.service-provider.js +35 -0
- package/src/gg-kernel/service-providers/swagger.service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/validation.service-provider.d.ts +10 -0
- package/src/gg-kernel/service-providers/validation.service-provider.js +22 -0
- package/src/gg-kernel/service-providers/validation.service-provider.js.map +1 -0
- package/src/gg-kernel/service-providers/versioning.service-provider.d.ts +10 -0
- package/src/gg-kernel/service-providers/versioning.service-provider.js +17 -0
- package/src/gg-kernel/service-providers/versioning.service-provider.js.map +1 -0
- package/src/gg-logger/gg-logger.module.d.ts +4 -0
- package/src/gg-logger/gg-logger.module.js +48 -0
- package/src/gg-logger/gg-logger.module.js.map +1 -0
- package/src/gg-metrics/gg-metrics.controller.d.ts +3 -0
- package/src/gg-metrics/gg-metrics.controller.js +15 -0
- package/src/gg-metrics/gg-metrics.controller.js.map +1 -0
- package/src/gg-metrics/gg-metrics.module.d.ts +4 -0
- package/src/gg-metrics/gg-metrics.module.js +31 -0
- package/src/gg-metrics/gg-metrics.module.js.map +1 -0
- package/src/gg-metrics/index.d.ts +1 -0
- package/src/gg-metrics/index.js +5 -0
- package/src/gg-metrics/index.js.map +1 -0
- package/src/gg-micro/gg-micro.module.d.ts +5 -0
- package/src/gg-micro/gg-micro.module.js +62 -0
- package/src/gg-micro/gg-micro.module.js.map +1 -0
- package/src/gg-micro/gg-rmq-service.injector.d.ts +19 -0
- package/src/gg-micro/gg-rmq-service.injector.js +29 -0
- package/src/gg-micro/gg-rmq-service.injector.js.map +1 -0
- package/src/gg-micro/gg-rmq.configurator.d.ts +16 -0
- package/src/gg-micro/gg-rmq.configurator.js +34 -0
- package/src/gg-micro/gg-rmq.configurator.js.map +1 -0
- package/src/gg-micro/index.d.ts +4 -0
- package/src/gg-micro/index.js +8 -0
- package/src/gg-micro/index.js.map +1 -0
- package/src/gg-micro/micro.client.d.ts +62 -0
- package/src/gg-micro/micro.client.js +101 -0
- package/src/gg-micro/micro.client.js.map +1 -0
- package/src/gg-micro/rmq.config.d.ts +10 -0
- package/src/gg-micro/rmq.config.js +50 -0
- package/src/gg-micro/rmq.config.js.map +1 -0
- package/src/gg-micro/rmq.connector.d.ts +12 -0
- package/src/gg-micro/rmq.connector.js +25 -0
- package/src/gg-micro/rmq.connector.js.map +1 -0
- package/src/gg-micro/rmq.queue-map.d.ts +2 -0
- package/src/gg-micro/rmq.queue-map.js +24 -0
- package/src/gg-micro/rmq.queue-map.js.map +1 -0
- package/src/gg-throttler/gg-throttler.module-options.d.ts +4 -0
- package/src/gg-throttler/gg-throttler.module-options.js +3 -0
- package/src/gg-throttler/gg-throttler.module-options.js.map +1 -0
- package/src/gg-throttler/gg-throttler.module.d.ts +5 -0
- package/src/gg-throttler/gg-throttler.module.js +24 -0
- package/src/gg-throttler/gg-throttler.module.js.map +1 -0
- package/src/gg-throttler/throttler.guard.d.ts +13 -0
- package/src/gg-throttler/throttler.guard.js +28 -0
- package/src/gg-throttler/throttler.guard.js.map +1 -0
- package/src/index.d.ts +10 -0
- package/src/index.js +14 -0
- package/src/index.js.map +1 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mikroOrmConfig = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const class_validator_1 = require("class-validator");
|
|
6
|
+
const lodash_1 = require("lodash");
|
|
7
|
+
const gg_config_1 = require("../../gg-config");
|
|
8
|
+
class MikroOrmConfig {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.host = (0, lodash_1.get)(process.env, 'DB_HOST', '');
|
|
11
|
+
this.user = (0, lodash_1.get)(process.env, 'DB_USERNAME', '');
|
|
12
|
+
this.password = (0, lodash_1.get)(process.env, 'DB_PASSWORD', '');
|
|
13
|
+
this.dbName = (0, lodash_1.get)(process.env, 'DB_DATABASE', '');
|
|
14
|
+
this.schema = (0, lodash_1.get)(process.env, 'DB_SCHEMA', '');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
tslib_1.__decorate([
|
|
18
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
19
|
+
tslib_1.__metadata("design:type", String)
|
|
20
|
+
], MikroOrmConfig.prototype, "host", void 0);
|
|
21
|
+
tslib_1.__decorate([
|
|
22
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
23
|
+
tslib_1.__metadata("design:type", String)
|
|
24
|
+
], MikroOrmConfig.prototype, "user", void 0);
|
|
25
|
+
tslib_1.__decorate([
|
|
26
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
27
|
+
tslib_1.__metadata("design:type", String)
|
|
28
|
+
], MikroOrmConfig.prototype, "password", void 0);
|
|
29
|
+
tslib_1.__decorate([
|
|
30
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
31
|
+
tslib_1.__metadata("design:type", String)
|
|
32
|
+
], MikroOrmConfig.prototype, "dbName", void 0);
|
|
33
|
+
tslib_1.__decorate([
|
|
34
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
35
|
+
tslib_1.__metadata("design:type", String)
|
|
36
|
+
], MikroOrmConfig.prototype, "schema", void 0);
|
|
37
|
+
exports.mikroOrmConfig = (0, gg_config_1.registerConfig)(MikroOrmConfig);
|
|
38
|
+
//# sourceMappingURL=mikroorm.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mikroorm.config.js","sourceRoot":"","sources":["../../../../../../libs/gg-core/src/gg-database/config/mikroorm.config.ts"],"names":[],"mappings":";;;;AAAA,qDAA6C;AAC7C,mCAA6B;AAE7B,+CAAiD;AAEjD,MAAM,cAAc;IAApB;QAEkB,SAAI,GAAW,IAAA,YAAG,EAAC,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;QAG/C,SAAI,GAAW,IAAA,YAAG,EAAC,OAAO,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;QAGnD,aAAQ,GAAW,IAAA,YAAG,EAAC,OAAO,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;QAGvD,WAAM,GAAW,IAAA,YAAG,EAAC,OAAO,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;QAGrD,WAAM,GAAW,IAAA,YAAG,EAAC,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;CAAA;AAbiB;IADf,IAAA,4BAAU,GAAE;;4CACkD;AAG/C;IADf,IAAA,4BAAU,GAAE;;4CACsD;AAGnD;IADf,IAAA,4BAAU,GAAE;;gDAC0D;AAGvD;IADf,IAAA,4BAAU,GAAE;;8CACwD;AAGrD;IADf,IAAA,4BAAU,GAAE;;8CACsD;AAGxD,QAAA,cAAc,GAAG,IAAA,0BAAc,EAAC,cAAc,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CacheAdapter } from '@mikro-orm/core';
|
|
2
|
+
import { GgCacheService } from '../gg-cache';
|
|
3
|
+
export interface RedisCacheAdapterOptions {
|
|
4
|
+
client: GgCacheService;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Minimized and refactored cache adapter for mikroorm
|
|
8
|
+
*
|
|
9
|
+
* Grabbed from
|
|
10
|
+
* @link https://raw.githubusercontent.com/ramiel/mikro-orm-cache-adapter-redis/main/src/RedisCacheAdapter.ts
|
|
11
|
+
*/
|
|
12
|
+
export declare class DbCacheAdapter implements CacheAdapter {
|
|
13
|
+
private readonly expiration;
|
|
14
|
+
private readonly logger;
|
|
15
|
+
private readonly keyPrefix;
|
|
16
|
+
private readonly cacheService;
|
|
17
|
+
constructor(options: RedisCacheAdapterOptions);
|
|
18
|
+
get<T = unknown>(key: string): Promise<T | undefined>;
|
|
19
|
+
set(key: string, data: unknown, _origin: string, expiration?: number): Promise<void>;
|
|
20
|
+
remove(name: string): Promise<void>;
|
|
21
|
+
clear(): Promise<void>;
|
|
22
|
+
close(): Promise<void>;
|
|
23
|
+
private getKey;
|
|
24
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DbCacheAdapter = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const luxon_1 = require("luxon");
|
|
6
|
+
/**
|
|
7
|
+
* Minimized and refactored cache adapter for mikroorm
|
|
8
|
+
*
|
|
9
|
+
* Grabbed from
|
|
10
|
+
* @link https://raw.githubusercontent.com/ramiel/mikro-orm-cache-adapter-redis/main/src/RedisCacheAdapter.ts
|
|
11
|
+
*/
|
|
12
|
+
class DbCacheAdapter {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
this.expiration = luxon_1.Duration.fromObject({ minute: 1 });
|
|
15
|
+
this.logger = new common_1.Logger(DbCacheAdapter.name);
|
|
16
|
+
this.keyPrefix = 'mikroorm';
|
|
17
|
+
this.getKey = (name) => `${this.keyPrefix}:${name}`;
|
|
18
|
+
if (options)
|
|
19
|
+
this.cacheService = options.client;
|
|
20
|
+
this.logger.debug(`The DB cache adapter has been created! | Cache expiration: ${this.expiration.as('millisecond')}ms`);
|
|
21
|
+
}
|
|
22
|
+
async get(key) {
|
|
23
|
+
const completeKey = this.getKey(key);
|
|
24
|
+
const data = await this.cacheService.get(completeKey);
|
|
25
|
+
if (!data)
|
|
26
|
+
return undefined;
|
|
27
|
+
return data;
|
|
28
|
+
}
|
|
29
|
+
async set(key, data, _origin, expiration) {
|
|
30
|
+
const completeKey = this.getKey(key);
|
|
31
|
+
if (expiration) {
|
|
32
|
+
return this.cacheService.set(completeKey, data, { ttl: luxon_1.Duration.fromObject({ millisecond: expiration }) });
|
|
33
|
+
}
|
|
34
|
+
return this.cacheService.set(completeKey, data, { ttl: this.expiration });
|
|
35
|
+
}
|
|
36
|
+
remove(name) {
|
|
37
|
+
const completeKey = this.getKey(name);
|
|
38
|
+
return this.cacheService.del(completeKey);
|
|
39
|
+
}
|
|
40
|
+
async clear() {
|
|
41
|
+
this.logger.debug('Clearing cache by mikroorm...');
|
|
42
|
+
return this.cacheService.reset();
|
|
43
|
+
}
|
|
44
|
+
async close() {
|
|
45
|
+
// cache-manager will close connection automatically
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.DbCacheAdapter = DbCacheAdapter;
|
|
50
|
+
//# sourceMappingURL=database.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.adapter.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-database/database.adapter.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AACxC,iCAAiC;AAQjC;;;;;GAKG;AACH,MAAa,cAAc;IAMzB,YAAmB,OAAiC;QALnC,eAAU,GAAG,gBAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAChD,WAAM,GAAG,IAAI,eAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,cAAS,GAAG,UAAU,CAAC;QAgDhC,WAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;QA5C7D,IAAI,OAAO;YAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;QAEhD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,8DAA8D,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CACpG,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,GAAG,CAAc,GAAW;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAErC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEtD,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAE5B,OAAO,IAAS,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,IAAa,EAAE,OAAe,EAAE,UAAmB;QAC/E,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,gBAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7G,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAC5E,CAAC;IAEM,MAAM,CAAC,IAAY;QACxB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEtC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,oDAAoD;QACpD,OAAO;IACT,CAAC;CAGF;AApDD,wCAoDC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { MikroORM } from '@mikro-orm/core';
|
|
2
|
+
import { OnModuleDestroy, OnModuleInit } from '@nestjs/common';
|
|
3
|
+
export declare class DatabaseConnector implements OnModuleInit, OnModuleDestroy {
|
|
4
|
+
private readonly orm;
|
|
5
|
+
private readonly logger;
|
|
6
|
+
constructor(orm: MikroORM);
|
|
7
|
+
/**
|
|
8
|
+
* Initialize the module and check DB connection.
|
|
9
|
+
*
|
|
10
|
+
* @returns {Promise<void>} A Promise that resolves when the module is successfully initialized.
|
|
11
|
+
* @throws {RuntimeException} Throws a RuntimeException if unable to connect to the database.
|
|
12
|
+
*/
|
|
13
|
+
onModuleInit(): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Closes the ORM connection and logs a message when the module is being destroyed.
|
|
16
|
+
*
|
|
17
|
+
* @returns {Promise<void>} A promise that resolves when the ORM connection is closed.
|
|
18
|
+
*/
|
|
19
|
+
onModuleDestroy(): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Performs database migration using the Umzug library.
|
|
22
|
+
*
|
|
23
|
+
* @private
|
|
24
|
+
* @returns {Promise<UmzugMigration[]>} - A promise that resolves with an array of UmzugMigration objects representing the applied migrations.
|
|
25
|
+
*/
|
|
26
|
+
private migrate;
|
|
27
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var DatabaseConnector_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.DatabaseConnector = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const core_1 = require("@mikro-orm/core");
|
|
7
|
+
const common_1 = require("@nestjs/common");
|
|
8
|
+
const exceptions_1 = require("@nestjs/core/errors/exceptions");
|
|
9
|
+
let DatabaseConnector = DatabaseConnector_1 = class DatabaseConnector {
|
|
10
|
+
constructor(orm) {
|
|
11
|
+
this.orm = orm;
|
|
12
|
+
this.logger = new common_1.Logger(DatabaseConnector_1.name);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Initialize the module and check DB connection.
|
|
16
|
+
*
|
|
17
|
+
* @returns {Promise<void>} A Promise that resolves when the module is successfully initialized.
|
|
18
|
+
* @throws {RuntimeException} Throws a RuntimeException if unable to connect to the database.
|
|
19
|
+
*/
|
|
20
|
+
async onModuleInit() {
|
|
21
|
+
const isConnected = await this.orm.isConnected();
|
|
22
|
+
if (!isConnected)
|
|
23
|
+
throw new exceptions_1.RuntimeException('Unable to connect to database');
|
|
24
|
+
const options = this.orm.config.getAll();
|
|
25
|
+
const host = `postgresql://${options.user}:*****@${options.host}:${options.port}/${options.dbName}`;
|
|
26
|
+
this.logger.log({ msg: `Database connection established successfully`, host });
|
|
27
|
+
await this.migrate();
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Closes the ORM connection and logs a message when the module is being destroyed.
|
|
31
|
+
*
|
|
32
|
+
* @returns {Promise<void>} A promise that resolves when the ORM connection is closed.
|
|
33
|
+
*/
|
|
34
|
+
async onModuleDestroy() {
|
|
35
|
+
await this.orm.close();
|
|
36
|
+
this.logger.log('Connection closed');
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Performs database migration using the Umzug library.
|
|
40
|
+
*
|
|
41
|
+
* @private
|
|
42
|
+
* @returns {Promise<UmzugMigration[]>} - A promise that resolves with an array of UmzugMigration objects representing the applied migrations.
|
|
43
|
+
*/
|
|
44
|
+
async migrate() {
|
|
45
|
+
const migrator = this.orm.getMigrator();
|
|
46
|
+
return migrator.up();
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
exports.DatabaseConnector = DatabaseConnector;
|
|
50
|
+
exports.DatabaseConnector = DatabaseConnector = DatabaseConnector_1 = tslib_1.__decorate([
|
|
51
|
+
(0, common_1.Injectable)(),
|
|
52
|
+
tslib_1.__metadata("design:paramtypes", [core_1.MikroORM])
|
|
53
|
+
], DatabaseConnector);
|
|
54
|
+
//# sourceMappingURL=database.connector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.connector.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-database/database.connector.ts"],"names":[],"mappings":";;;;;AAAA,0CAA2C;AAE3C,2CAAmF;AACnF,+DAAkE;AAG3D,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAG5B,YAAoC,GAAa;QAAb,QAAG,GAAH,GAAG,CAAU;QAFhC,WAAM,GAAG,IAAI,eAAM,CAAC,mBAAiB,CAAC,IAAI,CAAC,CAAC;IAET,CAAC;IAErD;;;;;OAKG;IACI,KAAK,CAAC,YAAY;QACvB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAEjD,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,6BAAgB,CAAC,+BAA+B,CAAC,CAAC;QAE9E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,gBAAgB,OAAO,CAAC,IAAI,UAAU,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAEpG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,8CAA8C,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/E,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,eAAe;QAC1B,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAEvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,OAAO;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAExC,OAAO,QAAQ,CAAC,EAAE,EAAE,CAAC;IACvB,CAAC;CACF,CAAA;AA9CY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;6CAI8B,eAAQ;GAHtC,iBAAiB,CA8C7B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./config/db-entities.config"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./config/mikroorm.config"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./modules/mikroorm.module"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-database/index.ts"],"names":[],"mappings":";;;AAAA,sEAA4C;AAC5C,mEAAyC;AACzC,oEAA0C"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type Options } from '@mikro-orm/core';
|
|
2
|
+
import { PostgreSqlDriver } from '@mikro-orm/postgresql/PostgreSqlDriver';
|
|
3
|
+
import { DynamicModule } from '@nestjs/common';
|
|
4
|
+
import { ConfigType } from '@nestjs/config';
|
|
5
|
+
import { GgCacheService } from '../../gg-cache';
|
|
6
|
+
import { DbEntitiesConfig } from '../config/db-entities.config';
|
|
7
|
+
import { mikroOrmConfig } from '../config/mikroorm.config';
|
|
8
|
+
/**
|
|
9
|
+
* Represents a DatabaseModule.
|
|
10
|
+
*
|
|
11
|
+
* @module DatabaseModule
|
|
12
|
+
*/
|
|
13
|
+
export declare class MikroormModule {
|
|
14
|
+
/**
|
|
15
|
+
* Creates a Database dynamic module for the root of the application.
|
|
16
|
+
*
|
|
17
|
+
* @returns {DynamicModule} A dynamic module object.
|
|
18
|
+
*/
|
|
19
|
+
static forRoot<T extends DbEntitiesConfig>(entitiesConfig: T): DynamicModule;
|
|
20
|
+
/**
|
|
21
|
+
* Defines the configuration options for the PostgreSqlDriver.
|
|
22
|
+
*
|
|
23
|
+
* @param ormConfig - The database configuration.
|
|
24
|
+
* @param cacheService
|
|
25
|
+
* @param entitiesConfig
|
|
26
|
+
* @returns The options object for the PostgreSqlDriver.
|
|
27
|
+
* @private
|
|
28
|
+
*/
|
|
29
|
+
static defineConfig(ormConfig: ConfigType<typeof mikroOrmConfig>, entitiesConfig: DbEntitiesConfig, cacheService?: GgCacheService): Options<PostgreSqlDriver>;
|
|
30
|
+
/**
|
|
31
|
+
* Defines the database migrations configuration.
|
|
32
|
+
*
|
|
33
|
+
* @private
|
|
34
|
+
* @returns {MigrationsOptions} The database migrations configuration.
|
|
35
|
+
*/
|
|
36
|
+
private static defineDatabaseMigrationsConfig;
|
|
37
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var MikroormModule_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.MikroormModule = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const core_1 = require("@mikro-orm/core");
|
|
7
|
+
const migrations_1 = require("@mikro-orm/migrations");
|
|
8
|
+
const nestjs_1 = require("@mikro-orm/nestjs");
|
|
9
|
+
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
10
|
+
const seeder_1 = require("@mikro-orm/seeder");
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const config_1 = require("@nestjs/config");
|
|
13
|
+
const gg_cache_1 = require("../../gg-cache");
|
|
14
|
+
const gg_cache_module_1 = require("../../gg-cache/gg-cache.module");
|
|
15
|
+
const mikroorm_config_1 = require("../config/mikroorm.config");
|
|
16
|
+
const database_adapter_1 = require("../database.adapter");
|
|
17
|
+
const database_connector_1 = require("../database.connector");
|
|
18
|
+
/**
|
|
19
|
+
* Represents a DatabaseModule.
|
|
20
|
+
*
|
|
21
|
+
* @module DatabaseModule
|
|
22
|
+
*/
|
|
23
|
+
let MikroormModule = MikroormModule_1 = class MikroormModule {
|
|
24
|
+
/**
|
|
25
|
+
* Creates a Database dynamic module for the root of the application.
|
|
26
|
+
*
|
|
27
|
+
* @returns {DynamicModule} A dynamic module object.
|
|
28
|
+
*/
|
|
29
|
+
static forRoot(entitiesConfig) {
|
|
30
|
+
return {
|
|
31
|
+
imports: [
|
|
32
|
+
nestjs_1.MikroOrmModule.forRootAsync({
|
|
33
|
+
imports: [config_1.ConfigModule.forFeature(mikroorm_config_1.mikroOrmConfig), gg_cache_module_1.GgCacheModule],
|
|
34
|
+
inject: [mikroorm_config_1.mikroOrmConfig.KEY, gg_cache_1.GgCacheService],
|
|
35
|
+
useFactory: (mikroormConf, cacheService) => {
|
|
36
|
+
return this.defineConfig(mikroormConf, entitiesConfig, cacheService);
|
|
37
|
+
},
|
|
38
|
+
}),
|
|
39
|
+
],
|
|
40
|
+
module: MikroormModule_1,
|
|
41
|
+
providers: [database_connector_1.DatabaseConnector],
|
|
42
|
+
exports: [],
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Defines the configuration options for the PostgreSqlDriver.
|
|
47
|
+
*
|
|
48
|
+
* @param ormConfig - The database configuration.
|
|
49
|
+
* @param cacheService
|
|
50
|
+
* @param entitiesConfig
|
|
51
|
+
* @returns The options object for the PostgreSqlDriver.
|
|
52
|
+
* @private
|
|
53
|
+
*/
|
|
54
|
+
static defineConfig(ormConfig, entitiesConfig, cacheService) {
|
|
55
|
+
const logger = new common_1.Logger(MikroormModule_1.name);
|
|
56
|
+
const isTsNode = true;
|
|
57
|
+
const isValidationRequired = true;
|
|
58
|
+
return (0, postgresql_1.defineConfig)({
|
|
59
|
+
...ormConfig,
|
|
60
|
+
debug: true,
|
|
61
|
+
entities: entitiesConfig.entities,
|
|
62
|
+
tsNode: isTsNode,
|
|
63
|
+
logger: logger.debug.bind(logger),
|
|
64
|
+
metadataCache: { enabled: false },
|
|
65
|
+
discovery: { disableDynamicFileAccess: false, warnWhenNoEntities: false },
|
|
66
|
+
namingStrategy: core_1.EntityCaseNamingStrategy,
|
|
67
|
+
metadataProvider: core_1.ReflectMetadataProvider,
|
|
68
|
+
loadStrategy: core_1.LoadStrategy.JOINED,
|
|
69
|
+
validateRequired: isValidationRequired,
|
|
70
|
+
connect: true,
|
|
71
|
+
ensureDatabase: true,
|
|
72
|
+
extensions: [migrations_1.Migrator, seeder_1.SeedManager],
|
|
73
|
+
pool: { min: 3, max: 10 },
|
|
74
|
+
useBatchInserts: true,
|
|
75
|
+
useBatchUpdates: true,
|
|
76
|
+
populateAfterFlush: true,
|
|
77
|
+
...(cacheService && {
|
|
78
|
+
resultCache: { adapter: database_adapter_1.DbCacheAdapter, options: { client: cacheService } },
|
|
79
|
+
}),
|
|
80
|
+
migrations: MikroormModule_1.defineDatabaseMigrationsConfig(ormConfig, entitiesConfig),
|
|
81
|
+
// seeder: MikroormModule.defineDatabaseSeederConfig(entitiesConfig),
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Defines the database migrations configuration.
|
|
86
|
+
*
|
|
87
|
+
* @private
|
|
88
|
+
* @returns {MigrationsOptions} The database migrations configuration.
|
|
89
|
+
*/
|
|
90
|
+
static defineDatabaseMigrationsConfig(mikroormConf, itemsConfig) {
|
|
91
|
+
const globPattern = '!(*.d).{js,ts}';
|
|
92
|
+
return {
|
|
93
|
+
migrationsList: itemsConfig.migrations,
|
|
94
|
+
tableName: mikroormConf.schema ? `${mikroormConf.schema}.migrations` : `migrations`,
|
|
95
|
+
glob: globPattern,
|
|
96
|
+
transactional: true,
|
|
97
|
+
disableForeignKeys: false,
|
|
98
|
+
allOrNothing: true,
|
|
99
|
+
dropTables: true,
|
|
100
|
+
safe: false,
|
|
101
|
+
snapshot: false,
|
|
102
|
+
emit: 'ts',
|
|
103
|
+
fileName: (timestamp) => `${timestamp}-migration`,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
exports.MikroormModule = MikroormModule;
|
|
108
|
+
exports.MikroormModule = MikroormModule = MikroormModule_1 = tslib_1.__decorate([
|
|
109
|
+
(0, common_1.Module)({})
|
|
110
|
+
], MikroormModule);
|
|
111
|
+
//# sourceMappingURL=mikroorm.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mikroorm.module.js","sourceRoot":"","sources":["../../../../../../libs/gg-core/src/gg-database/modules/mikroorm.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare enum ExceptionDomainCodes {
|
|
2
|
+
General = 1,
|
|
3
|
+
NotFound = 2,
|
|
4
|
+
Unauthorized = 3,
|
|
5
|
+
BadRequest = 4,
|
|
6
|
+
UserInactive = 5,
|
|
7
|
+
UserOTPBlocked = 6,
|
|
8
|
+
UserPasswordBlocked = 7,
|
|
9
|
+
UserPasswordRecoveryBlocked = 8,
|
|
10
|
+
UserBlocked = 9,
|
|
11
|
+
MerchantIPMismatch = 10
|
|
12
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ExceptionDomainCodes = void 0;
|
|
4
|
+
var ExceptionDomainCodes;
|
|
5
|
+
(function (ExceptionDomainCodes) {
|
|
6
|
+
ExceptionDomainCodes[ExceptionDomainCodes["General"] = 1] = "General";
|
|
7
|
+
ExceptionDomainCodes[ExceptionDomainCodes["NotFound"] = 2] = "NotFound";
|
|
8
|
+
ExceptionDomainCodes[ExceptionDomainCodes["Unauthorized"] = 3] = "Unauthorized";
|
|
9
|
+
ExceptionDomainCodes[ExceptionDomainCodes["BadRequest"] = 4] = "BadRequest";
|
|
10
|
+
ExceptionDomainCodes[ExceptionDomainCodes["UserInactive"] = 5] = "UserInactive";
|
|
11
|
+
ExceptionDomainCodes[ExceptionDomainCodes["UserOTPBlocked"] = 6] = "UserOTPBlocked";
|
|
12
|
+
ExceptionDomainCodes[ExceptionDomainCodes["UserPasswordBlocked"] = 7] = "UserPasswordBlocked";
|
|
13
|
+
ExceptionDomainCodes[ExceptionDomainCodes["UserPasswordRecoveryBlocked"] = 8] = "UserPasswordRecoveryBlocked";
|
|
14
|
+
ExceptionDomainCodes[ExceptionDomainCodes["UserBlocked"] = 9] = "UserBlocked";
|
|
15
|
+
ExceptionDomainCodes[ExceptionDomainCodes["MerchantIPMismatch"] = 10] = "MerchantIPMismatch";
|
|
16
|
+
})(ExceptionDomainCodes || (exports.ExceptionDomainCodes = ExceptionDomainCodes = {}));
|
|
17
|
+
//# sourceMappingURL=exception.domain-codes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exception.domain-codes.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-errors/exception.domain-codes.ts"],"names":[],"mappings":";;;AAAA,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC9B,qEAAW,CAAA;IACX,uEAAY,CAAA;IACZ,+EAAgB,CAAA;IAChB,2EAAc,CAAA;IACd,+EAAgB,CAAA;IAChB,mFAAkB,CAAA;IAClB,6FAAuB,CAAA;IACvB,6GAA+B,CAAA;IAC/B,6EAAe,CAAA;IACf,4FAAuB,CAAA;AACzB,CAAC,EAXW,oBAAoB,oCAApB,oBAAoB,QAW/B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { HttpException, HttpStatus } from '@nestjs/common';
|
|
2
|
+
export declare abstract class GgException extends HttpException {
|
|
3
|
+
protected status: HttpStatus;
|
|
4
|
+
protected internalMessage: string;
|
|
5
|
+
protected parameters: Record<string, unknown>;
|
|
6
|
+
protected abstract message: string;
|
|
7
|
+
protected abstract domainCode: number;
|
|
8
|
+
constructor(parameters?: Record<string, unknown>);
|
|
9
|
+
getDomainCode(): number;
|
|
10
|
+
getResponse(): string | object;
|
|
11
|
+
getInternalMessage(): string;
|
|
12
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GgException = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
6
|
+
// @ts-ignore
|
|
7
|
+
class GgException extends common_1.HttpException {
|
|
8
|
+
constructor(parameters = null) {
|
|
9
|
+
super('', 0);
|
|
10
|
+
this.status = common_1.HttpStatus.UNPROCESSABLE_ENTITY;
|
|
11
|
+
this.parameters = parameters;
|
|
12
|
+
}
|
|
13
|
+
getDomainCode() {
|
|
14
|
+
return this.domainCode;
|
|
15
|
+
}
|
|
16
|
+
getResponse() {
|
|
17
|
+
return {
|
|
18
|
+
statusCode: this.status,
|
|
19
|
+
message: this.message,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
getInternalMessage() {
|
|
23
|
+
return this.internalMessage ?? this.message;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.GgException = GgException;
|
|
27
|
+
//# sourceMappingURL=gg.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gg.exception.js","sourceRoot":"","sources":["../../../../../../libs/gg-core/src/gg-errors/exceptions/gg.exception.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAE3D,6DAA6D;AAC7D,aAAa;AACb,MAAsB,WAAY,SAAQ,sBAAa;IAQrD,YAAmB,aAAsC,IAAI;QAC3D,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QARL,WAAM,GAAe,mBAAU,CAAC,oBAAoB,CAAC;QAU7D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEM,WAAW;QAChB,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAEM,kBAAkB;QACvB,OAAO,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,CAAC;IAC9C,CAAC;CACF;AA5BD,kCA4BC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface GCPErrorEvent {
|
|
2
|
+
message?: string;
|
|
3
|
+
httpMethod?: string;
|
|
4
|
+
url?: string;
|
|
5
|
+
userAgent?: string;
|
|
6
|
+
referrer?: string;
|
|
7
|
+
responseStatusCode?: number;
|
|
8
|
+
remoteIp?: string;
|
|
9
|
+
user?: string;
|
|
10
|
+
request?: {
|
|
11
|
+
url: string;
|
|
12
|
+
method: string;
|
|
13
|
+
userAgent: string;
|
|
14
|
+
statusCode: number;
|
|
15
|
+
referrer: string;
|
|
16
|
+
remoteAddress: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gcp-error-event.interface.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-errors/gcp-error-event.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ConfigType } from '@nestjs/config';
|
|
2
|
+
import { appConfig } from '../gg-config';
|
|
3
|
+
import { GCPErrorEvent } from './gcp-error-event.interface';
|
|
4
|
+
export declare class GCPErrorReportingService {
|
|
5
|
+
protected readonly appConf: ConfigType<typeof appConfig>;
|
|
6
|
+
private readonly logger;
|
|
7
|
+
private readonly errors;
|
|
8
|
+
constructor(appConf: ConfigType<typeof appConfig>);
|
|
9
|
+
reportEvent(event: GCPErrorEvent): void;
|
|
10
|
+
reportError(err: Error, event?: GCPErrorEvent): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var GCPErrorReportingService_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.GCPErrorReportingService = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const error_reporting_1 = require("@google-cloud/error-reporting");
|
|
7
|
+
const common_1 = require("@nestjs/common");
|
|
8
|
+
const gg_config_1 = require("../gg-config");
|
|
9
|
+
let GCPErrorReportingService = GCPErrorReportingService_1 = class GCPErrorReportingService {
|
|
10
|
+
constructor(appConf) {
|
|
11
|
+
this.appConf = appConf;
|
|
12
|
+
this.logger = new common_1.Logger(GCPErrorReportingService_1.name);
|
|
13
|
+
if (this.appConf.gcpOpsEnabled) {
|
|
14
|
+
this.errors = new error_reporting_1.ErrorReporting({
|
|
15
|
+
reportMode: 'always',
|
|
16
|
+
reportUnhandledRejections: true,
|
|
17
|
+
serviceContext: {
|
|
18
|
+
service: this.appConf.name,
|
|
19
|
+
version: this.appConf.appVersion,
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
reportEvent(event) {
|
|
25
|
+
if (!this.errors || !event?.message)
|
|
26
|
+
return;
|
|
27
|
+
try {
|
|
28
|
+
const errorEvent = this.errors
|
|
29
|
+
.event()
|
|
30
|
+
.setMessage(event.message)
|
|
31
|
+
.setHttpMethod(event.httpMethod)
|
|
32
|
+
.setUrl(event.url)
|
|
33
|
+
.setUserAgent(event.userAgent)
|
|
34
|
+
.setReferrer(event.referrer)
|
|
35
|
+
.setResponseStatusCode(event.responseStatusCode)
|
|
36
|
+
.setRemoteIp(event.remoteIp)
|
|
37
|
+
.setUser(event.user);
|
|
38
|
+
// if (event.request) errorEvent = errorEvent.consumeRequestInformation(event.request);
|
|
39
|
+
this.errors.report(errorEvent);
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
this.logger.error({ msg: 'GCPErrorReporting.event failed with exception', err });
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
reportError(err, event) {
|
|
46
|
+
if (!this.errors)
|
|
47
|
+
return;
|
|
48
|
+
try {
|
|
49
|
+
this.logger.debug({ msg: 'Reporting error to GCP', error: err?.message, event });
|
|
50
|
+
this.errors
|
|
51
|
+
.report(err)
|
|
52
|
+
.setUser(event?.user)
|
|
53
|
+
.setHttpMethod(event?.httpMethod)
|
|
54
|
+
.setUrl(event?.url)
|
|
55
|
+
.setUserAgent(event?.userAgent)
|
|
56
|
+
.setReferrer(event?.referrer)
|
|
57
|
+
.setResponseStatusCode(event?.responseStatusCode)
|
|
58
|
+
.setRemoteIp(event?.remoteIp);
|
|
59
|
+
}
|
|
60
|
+
catch (err) {
|
|
61
|
+
this.logger.error({ msg: 'GCPErrorReporting.error failed with exception', err });
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
exports.GCPErrorReportingService = GCPErrorReportingService;
|
|
66
|
+
exports.GCPErrorReportingService = GCPErrorReportingService = GCPErrorReportingService_1 = tslib_1.__decorate([
|
|
67
|
+
(0, common_1.Injectable)(),
|
|
68
|
+
tslib_1.__param(0, (0, common_1.Inject)(gg_config_1.appConfig.KEY)),
|
|
69
|
+
tslib_1.__metadata("design:paramtypes", [void 0])
|
|
70
|
+
], GCPErrorReportingService);
|
|
71
|
+
//# sourceMappingURL=gcp-error-reporting.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gcp-error-reporting.service.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-errors/gcp-error-reporting.service.ts"],"names":[],"mappings":";;;;;AAAA,mEAA+D;AAC/D,2CAA4D;AAG5D,4CAAyC;AAIlC,IAAM,wBAAwB,gCAA9B,MAAM,wBAAwB;IAGnC,YAA0C,OAAwD;QAArC,YAAO,GAAP,OAAO,CAA8B;QAFjF,WAAM,GAAG,IAAI,eAAM,CAAC,0BAAwB,CAAC,IAAI,CAAC,CAAC;QAGlE,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,gCAAc,CAAC;gBAC/B,UAAU,EAAE,QAAQ;gBACpB,yBAAyB,EAAE,IAAI;gBAC/B,cAAc,EAAE;oBACd,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;oBAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;iBACjC;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEM,WAAW,CAAC,KAAoB;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,OAAO;YAAE,OAAO;QAC5C,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM;iBAC3B,KAAK,EAAE;iBACP,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;iBACzB,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC;iBAC/B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;iBACjB,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;iBAC7B,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;iBAC3B,qBAAqB,CAAC,KAAK,CAAC,kBAAkB,CAAC;iBAC/C,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;iBAC3B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEvB,uFAAuF;YAEvF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,+CAA+C,EAAE,GAAG,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAEM,WAAW,CAAC,GAAU,EAAE,KAAqB;QAClD,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAEjF,IAAI,CAAC,MAAM;iBACR,MAAM,CAAC,GAAG,CAAC;iBACX,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;iBACpB,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC;iBAChC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;iBAClB,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;iBAC9B,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;iBAC5B,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,CAAC;iBAChD,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,+CAA+C,EAAE,GAAG,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;CACF,CAAA;AAxDY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;IAIS,mBAAA,IAAA,eAAM,EAAC,qBAAS,CAAC,GAAG,CAAC,CAAA;;GAH9B,wBAAwB,CAwDpC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ArgumentsHost, ExceptionFilter, HttpException } from '@nestjs/common';
|
|
2
|
+
import { AxiosError } from 'axios';
|
|
3
|
+
import { GgException } from './exceptions/gg.exception';
|
|
4
|
+
import { GgExceptionService } from './gg-exception.service';
|
|
5
|
+
export declare class GgErrorsExceptionFilter implements ExceptionFilter {
|
|
6
|
+
private readonly exceptionService;
|
|
7
|
+
constructor(exceptionService: GgExceptionService);
|
|
8
|
+
catch(exception: HttpException | GgException | AxiosError | any, host: ArgumentsHost): any;
|
|
9
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GgErrorsExceptionFilter = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const rxjs_1 = require("rxjs");
|
|
7
|
+
const gg_exception_service_1 = require("./gg-exception.service");
|
|
8
|
+
let GgErrorsExceptionFilter = class GgErrorsExceptionFilter {
|
|
9
|
+
constructor(exceptionService) {
|
|
10
|
+
this.exceptionService = exceptionService;
|
|
11
|
+
}
|
|
12
|
+
catch(exception, host) {
|
|
13
|
+
if (host.getType() === 'http')
|
|
14
|
+
return this.exceptionService.handleHttp(host.switchToHttp(), exception);
|
|
15
|
+
if (host.getType() === 'rpc') {
|
|
16
|
+
return (0, rxjs_1.throwError)(() => this.exceptionService.handleRpc(host.switchToRpc(), exception));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.GgErrorsExceptionFilter = GgErrorsExceptionFilter;
|
|
21
|
+
exports.GgErrorsExceptionFilter = GgErrorsExceptionFilter = tslib_1.__decorate([
|
|
22
|
+
(0, common_1.Injectable)(),
|
|
23
|
+
(0, common_1.Catch)(),
|
|
24
|
+
tslib_1.__metadata("design:paramtypes", [gg_exception_service_1.GgExceptionService])
|
|
25
|
+
], GgErrorsExceptionFilter);
|
|
26
|
+
//# sourceMappingURL=gg-errors-exception.filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gg-errors-exception.filter.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-errors/gg-errors-exception.filter.ts"],"names":[],"mappings":";;;;AAAA,2CAAkG;AAElG,+BAAkC;AAElC,iEAA4D;AAIrD,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAClC,YAAoC,gBAAoC;QAApC,qBAAgB,GAAhB,gBAAgB,CAAoB;IAAG,CAAC;IAErE,KAAK,CAAC,SAAyD,EAAE,IAAmB;QACzF,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC;QAEvG,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,KAAK,EAAE,CAAC;YAC7B,OAAO,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;CACF,CAAA;AAVY,0DAAuB;kCAAvB,uBAAuB;IAFnC,IAAA,mBAAU,GAAE;IACZ,IAAA,cAAK,GAAE;6CAEgD,yCAAkB;GAD7D,uBAAuB,CAUnC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FactoryProvider, ModuleMetadata } from '@nestjs/common';
|
|
2
|
+
export declare const GG_ERRORS_MODULE_OPTIONS_TOKEN = "GG_ERRORS_MODULE_OPTIONS";
|
|
3
|
+
export interface GgErrorsOptions {
|
|
4
|
+
/** @example GGEX - gg-example */
|
|
5
|
+
domain: string;
|
|
6
|
+
gcpIgnoreCodes?: string[];
|
|
7
|
+
}
|
|
8
|
+
export type GgErrorsModuleOptions = Pick<ModuleMetadata, 'imports'> & Pick<FactoryProvider<GgErrorsOptions>, 'useFactory' | 'inject'>;
|