@minimaltech/node-infra 0.3.22 → 0.3.24
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/base/applications/base.application.d.ts +4 -2
- package/dist/base/applications/base.application.js +8 -2
- package/dist/base/applications/base.application.js.map +1 -1
- package/dist/base/applications/default.application.d.ts +0 -3
- package/dist/base/applications/default.application.js.map +1 -1
- package/dist/base/controllers/relational.controller.js +1 -1
- package/dist/base/controllers/relational.controller.js.map +1 -1
- package/dist/base/datasources/base.datasource.d.ts +11 -0
- package/dist/base/datasources/base.datasource.js +19 -0
- package/dist/base/datasources/base.datasource.js.map +1 -0
- package/dist/base/datasources/index.d.ts +2 -0
- package/dist/base/datasources/index.js +19 -0
- package/dist/base/datasources/index.js.map +1 -0
- package/dist/base/datasources/types.d.ts +4 -0
- package/dist/base/datasources/types.js +3 -0
- package/dist/base/datasources/types.js.map +1 -0
- package/dist/base/index.d.ts +1 -1
- package/dist/base/index.js +1 -1
- package/dist/base/index.js.map +1 -1
- package/dist/base/repositories/base.repository.js.map +1 -1
- package/dist/base/repositories/index.d.ts +1 -1
- package/dist/base/repositories/index.js +1 -1
- package/dist/base/repositories/index.js.map +1 -1
- package/dist/base/repositories/relations/has-many-polymorphic/decorator.d.ts +1 -1
- package/dist/base/repositories/relations/has-many-polymorphic/decorator.js +1 -1
- package/dist/base/repositories/relations/has-many-polymorphic/index.d.ts +2 -2
- package/dist/base/repositories/relations/has-many-polymorphic/index.js +2 -2
- package/dist/base/repositories/relations/has-many-polymorphic/index.js.map +1 -1
- package/dist/base/repositories/searchable-tz-crud.repository.d.ts +17 -4
- package/dist/base/repositories/searchable-tz-crud.repository.js +76 -20
- package/dist/base/repositories/searchable-tz-crud.repository.js.map +1 -1
- package/dist/base/repositories/tz-crud.repository.d.ts +14 -0
- package/dist/base/repositories/tz-crud.repository.js +24 -0
- package/dist/base/repositories/tz-crud.repository.js.map +1 -1
- package/dist/common/constants.d.ts +40 -5
- package/dist/common/constants.js +58 -9
- package/dist/common/constants.js.map +1 -1
- package/dist/common/environments.d.ts +9 -0
- package/dist/common/environments.js +11 -1
- package/dist/common/environments.js.map +1 -1
- package/dist/common/types.d.ts +18 -3
- package/dist/components/authenticate/models/oauth2-client.model.js +3 -0
- package/dist/components/authenticate/models/oauth2-client.model.js.map +1 -1
- package/dist/components/authenticate/repositories/oauth2.repository.d.ts +1 -1
- package/dist/components/authenticate/repositories/oauth2.repository.js +4 -4
- package/dist/components/authenticate/repositories/oauth2.repository.js.map +1 -1
- package/dist/components/authorize/adapters/adapter-builder.d.ts +1 -1
- package/dist/components/authorize/adapters/base.adapter.d.ts +1 -1
- package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.d.ts +1 -1
- package/dist/components/authorize/adapters/casbin-redis-adapter.helper.d.ts +1 -1
- package/dist/components/authorize/migrations/0000-create-view-policy.js +5 -5
- package/dist/components/authorize/migrations/0000-create-view-policy.js.map +1 -1
- package/dist/components/authorize/repositories/authorize.repository.d.ts +1 -1
- package/dist/components/authorize/repositories/authorize.repository.js +6 -6
- package/dist/components/authorize/repositories/authorize.repository.js.map +1 -1
- package/dist/components/authorize/services/enforcer.service.d.ts +1 -1
- package/dist/components/authorize/services/enforcer.service.js +2 -2
- package/dist/components/authorize/services/enforcer.service.js.map +1 -1
- package/dist/components/crash-report/common/keys.d.ts +1 -1
- package/dist/components/crash-report/common/keys.js +2 -2
- package/dist/components/crash-report/common/keys.js.map +1 -1
- package/dist/components/crash-report/component.js +1 -1
- package/dist/components/crash-report/component.js.map +1 -1
- package/dist/components/crash-report/providers/third-parties/base.d.ts +0 -1
- package/dist/components/crash-report/providers/third-parties/base.js.map +1 -1
- package/dist/components/grpc/helpers/grpc-server.js.map +1 -1
- package/dist/components/migration/repositories/migration.repository.d.ts +1 -1
- package/dist/components/migration/repositories/migration.repository.js +2 -2
- package/dist/components/migration/repositories/migration.repository.js.map +1 -1
- package/dist/components/socket-io/helpers/socket-io-server.helper.js +1 -7
- package/dist/components/socket-io/helpers/socket-io-server.helper.js.map +1 -1
- package/dist/datasources/index.d.ts +3 -2
- package/dist/datasources/index.js +3 -2
- package/dist/datasources/index.js.map +1 -1
- package/dist/datasources/kvmem/datasource.d.ts +5 -0
- package/dist/datasources/{kvmem.datasource.js → kvmem/datasource.js} +10 -10
- package/dist/datasources/kvmem/datasource.js.map +1 -0
- package/dist/datasources/kvmem/index.d.ts +1 -0
- package/dist/datasources/kvmem/index.js +18 -0
- package/dist/datasources/kvmem/index.js.map +1 -0
- package/dist/datasources/postgres/datasource.d.ts +7 -0
- package/dist/datasources/{postgres.datasource.js → postgres/datasource.js} +22 -21
- package/dist/datasources/postgres/datasource.js.map +1 -0
- package/dist/datasources/postgres/index.d.ts +2 -0
- package/dist/datasources/postgres/index.js +19 -0
- package/dist/datasources/postgres/index.js.map +1 -0
- package/dist/datasources/postgres/types.d.ts +9 -0
- package/dist/datasources/postgres/types.js +3 -0
- package/dist/datasources/postgres/types.js.map +1 -0
- package/dist/datasources/redis/connector.d.ts +36 -0
- package/dist/datasources/redis/connector.js +128 -0
- package/dist/datasources/redis/connector.js.map +1 -0
- package/dist/datasources/redis/datasource.d.ts +9 -0
- package/dist/datasources/redis/datasource.js +48 -0
- package/dist/datasources/redis/datasource.js.map +1 -0
- package/dist/datasources/redis/index.d.ts +3 -0
- package/dist/datasources/redis/index.js +20 -0
- package/dist/datasources/redis/index.js.map +1 -0
- package/dist/datasources/redis/types.d.ts +10 -0
- package/dist/datasources/redis/types.js +3 -0
- package/dist/datasources/redis/types.js.map +1 -0
- package/dist/helpers/application-environment.helper.d.ts +1 -0
- package/dist/helpers/application-environment.helper.js +3 -0
- package/dist/helpers/application-environment.helper.js.map +1 -1
- package/dist/helpers/logger/default-logger.d.ts +21 -8
- package/dist/helpers/logger/default-logger.js +102 -30
- package/dist/helpers/logger/default-logger.js.map +1 -1
- package/dist/helpers/logger/index.d.ts +2 -1
- package/dist/helpers/logger/index.js +2 -1
- package/dist/helpers/logger/index.js.map +1 -1
- package/dist/helpers/logger/transports/dgram.transport.d.ts +28 -0
- package/dist/helpers/logger/transports/dgram.transport.js +84 -0
- package/dist/helpers/logger/transports/dgram.transport.js.map +1 -0
- package/dist/helpers/logger/transports/index.d.ts +1 -0
- package/dist/helpers/logger/transports/index.js +18 -0
- package/dist/helpers/logger/transports/index.js.map +1 -0
- package/dist/helpers/queue/queue.helper.d.ts +0 -1
- package/dist/helpers/queue/queue.helper.js.map +1 -1
- package/dist/helpers/redis.helper.d.ts +118 -42
- package/dist/helpers/redis.helper.js +163 -62
- package/dist/helpers/redis.helper.js.map +1 -1
- package/dist/tsconfig.base.json +19 -8
- package/dist/utilities/date.utility.d.ts +7 -3
- package/dist/utilities/date.utility.js +28 -10
- package/dist/utilities/date.utility.js.map +1 -1
- package/dist/utilities/index.d.ts +1 -0
- package/dist/utilities/index.js +1 -0
- package/dist/utilities/index.js.map +1 -1
- package/dist/utilities/query.utility.d.ts +30 -0
- package/dist/utilities/query.utility.js +143 -0
- package/dist/utilities/query.utility.js.map +1 -0
- package/package.json +3 -3
- package/dist/base/base.datasource.d.ts +0 -9
- package/dist/base/base.datasource.js +0 -13
- package/dist/base/base.datasource.js.map +0 -1
- package/dist/datasources/kvmem.datasource.d.ts +0 -9
- package/dist/datasources/kvmem.datasource.js.map +0 -1
- package/dist/datasources/postgres.datasource.d.ts +0 -14
- package/dist/datasources/postgres.datasource.js.map +0 -1
@@ -0,0 +1,128 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RedisConnector = void 0;
|
4
|
+
const helpers_1 = require("../../helpers");
|
5
|
+
const utilities_1 = require("../../utilities");
|
6
|
+
class RedisConnector {
|
7
|
+
constructor(opts) {
|
8
|
+
this.settings = opts.settings;
|
9
|
+
}
|
10
|
+
initialize(opts) {
|
11
|
+
this.redisHelper = new helpers_1.RedisHelper(Object.assign(Object.assign({}, this.settings), { port: (0, utilities_1.int)(this.settings.port), onInitialized: () => {
|
12
|
+
opts.context.initialized = true;
|
13
|
+
opts.context.emit('initialized');
|
14
|
+
}, onConnected: () => {
|
15
|
+
opts.context.connected = true;
|
16
|
+
opts.context.emit('connected');
|
17
|
+
}, onReady: () => {
|
18
|
+
opts.context.ready = true;
|
19
|
+
opts.context.emit('ready');
|
20
|
+
}, onError: ({ error }) => {
|
21
|
+
opts.context.emit('error', error);
|
22
|
+
} }));
|
23
|
+
}
|
24
|
+
delete(_modelClass, key, _options) {
|
25
|
+
return new Promise((resolve, reject) => {
|
26
|
+
this.redisHelper.client
|
27
|
+
.del(key)
|
28
|
+
.then(() => resolve(true))
|
29
|
+
.catch(reject);
|
30
|
+
});
|
31
|
+
}
|
32
|
+
deleteAll(_modelClass, _options) {
|
33
|
+
return new Promise((resolve, reject) => {
|
34
|
+
this.redisHelper.client
|
35
|
+
.dbsize()
|
36
|
+
.then(size => {
|
37
|
+
this.redisHelper.client
|
38
|
+
.flushdb()
|
39
|
+
.then(() => resolve(size))
|
40
|
+
.catch(reject);
|
41
|
+
})
|
42
|
+
.catch(reject);
|
43
|
+
});
|
44
|
+
}
|
45
|
+
get(_modelClass, key, options) {
|
46
|
+
return new Promise((resolve, reject) => {
|
47
|
+
var _a;
|
48
|
+
const transform = (rs) => {
|
49
|
+
return rs;
|
50
|
+
};
|
51
|
+
this.redisHelper
|
52
|
+
.get({
|
53
|
+
key,
|
54
|
+
transform: (_a = options === null || options === void 0 ? void 0 : options.transform) !== null && _a !== void 0 ? _a : transform,
|
55
|
+
})
|
56
|
+
.then(rs => resolve(rs))
|
57
|
+
.catch(reject);
|
58
|
+
});
|
59
|
+
}
|
60
|
+
set(_modelClass, key, value, options) {
|
61
|
+
return new Promise((resolve, reject) => {
|
62
|
+
this.redisHelper
|
63
|
+
.set({ key, value, options })
|
64
|
+
.then(() => resolve(true))
|
65
|
+
.catch(reject);
|
66
|
+
});
|
67
|
+
}
|
68
|
+
expire(_modelClass, _key, _ttl, _options) {
|
69
|
+
throw new Error('Method not implemented.');
|
70
|
+
}
|
71
|
+
ttl(_modelClass, key, _ttl, _options) {
|
72
|
+
return new Promise((resolve, reject) => {
|
73
|
+
this.redisHelper.client
|
74
|
+
.ttl(key)
|
75
|
+
.then(rs => resolve(rs))
|
76
|
+
.catch(reject);
|
77
|
+
});
|
78
|
+
}
|
79
|
+
keys(_modelClass, _options) {
|
80
|
+
return new Promise((resolve, reject) => {
|
81
|
+
this.redisHelper.client
|
82
|
+
.keys('*')
|
83
|
+
.then(rs => resolve(rs))
|
84
|
+
.catch(reject);
|
85
|
+
});
|
86
|
+
}
|
87
|
+
iterateKeys(_modelClass, _filter, _options) {
|
88
|
+
throw new Error('Method not implemented.');
|
89
|
+
}
|
90
|
+
connect() {
|
91
|
+
return new Promise(resolve => {
|
92
|
+
this.redisHelper.connect().then(() => {
|
93
|
+
resolve();
|
94
|
+
});
|
95
|
+
});
|
96
|
+
}
|
97
|
+
disconnect() {
|
98
|
+
return new Promise((resolve, reject) => {
|
99
|
+
this.redisHelper
|
100
|
+
.disconnect()
|
101
|
+
.then(() => {
|
102
|
+
resolve();
|
103
|
+
})
|
104
|
+
.catch(reject);
|
105
|
+
});
|
106
|
+
}
|
107
|
+
ping() {
|
108
|
+
return new Promise((resolve, reject) => {
|
109
|
+
this.redisHelper.client
|
110
|
+
.ping()
|
111
|
+
.then(() => {
|
112
|
+
resolve();
|
113
|
+
})
|
114
|
+
.catch(reject);
|
115
|
+
});
|
116
|
+
}
|
117
|
+
execute(...args) {
|
118
|
+
if (!args.length || args.length > 3) {
|
119
|
+
throw (0, utilities_1.getError)({
|
120
|
+
message: '[execute] Invalid method signature | args: [0] command name [1] array of parameters [2] extra options',
|
121
|
+
});
|
122
|
+
}
|
123
|
+
const [command, parameters] = args;
|
124
|
+
return this.redisHelper.execute(command.toLowerCase(), parameters);
|
125
|
+
}
|
126
|
+
}
|
127
|
+
exports.RedisConnector = RedisConnector;
|
128
|
+
//# sourceMappingURL=connector.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"connector.js","sourceRoot":"","sources":["../../../src/datasources/redis/connector.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { BaseDataSource } from '../../base/datasources';
|
2
|
+
import { Options } from '@loopback/repository';
|
3
|
+
import { IRedisConnector, IRedisOptions } from './types';
|
4
|
+
export declare class RedisDataSource extends BaseDataSource<IRedisOptions> {
|
5
|
+
static dataSourceName: string;
|
6
|
+
constructor(settings?: IRedisOptions);
|
7
|
+
getConnector(): IRedisConnector;
|
8
|
+
execute<R extends object = any>(command: string, parameters?: Array<string | number> | string | number | object, extra?: Options): Promise<R>;
|
9
|
+
}
|
@@ -0,0 +1,48 @@
|
|
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
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
13
|
+
};
|
14
|
+
var _a, _b, _c, _d;
|
15
|
+
var RedisDataSource_1;
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
exports.RedisDataSource = void 0;
|
18
|
+
const datasources_1 = require("../../base/datasources");
|
19
|
+
const core_1 = require("@loopback/core");
|
20
|
+
const connector_1 = require("./connector");
|
21
|
+
const options = {
|
22
|
+
connector: 'redis',
|
23
|
+
name: (_a = process.env.APP_ENV_REDIS_DATASOURCE_NAME) !== null && _a !== void 0 ? _a : 'redis',
|
24
|
+
host: (_b = process.env.APP_ENV_REDIS_DATASOURCE_HOST) !== null && _b !== void 0 ? _b : '0.0.0.0',
|
25
|
+
port: (_c = process.env.APP_ENV_REDIS_DATASOURCE_PORT) !== null && _c !== void 0 ? _c : '6379',
|
26
|
+
password: (_d = process.env.APP_ENV_REDIS_DATASOURCE_PASSWORD) !== null && _d !== void 0 ? _d : 'password',
|
27
|
+
};
|
28
|
+
let RedisDataSource = RedisDataSource_1 = class RedisDataSource extends datasources_1.BaseDataSource {
|
29
|
+
constructor(settings = options) {
|
30
|
+
super({ settings, scope: RedisDataSource_1.name });
|
31
|
+
this.connector = new connector_1.RedisConnector({ settings });
|
32
|
+
this.connector.initialize({ context: this });
|
33
|
+
this.logger.info('Redis DataSource Settings: %j', this.settings);
|
34
|
+
}
|
35
|
+
getConnector() {
|
36
|
+
return this.connector;
|
37
|
+
}
|
38
|
+
execute(command, parameters, extra) {
|
39
|
+
return this.getConnector().execute(command, parameters, extra);
|
40
|
+
}
|
41
|
+
};
|
42
|
+
exports.RedisDataSource = RedisDataSource;
|
43
|
+
RedisDataSource.dataSourceName = options.name;
|
44
|
+
exports.RedisDataSource = RedisDataSource = RedisDataSource_1 = __decorate([
|
45
|
+
__param(0, (0, core_1.inject)(`datasources.config.${options.name}`, { optional: true })),
|
46
|
+
__metadata("design:paramtypes", [Object])
|
47
|
+
], RedisDataSource);
|
48
|
+
//# sourceMappingURL=datasource.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../../src/datasources/redis/datasource.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,yCAAwC;AAExC,2CAA6C;AAG7C,MAAM,OAAO,GAAkB;IAC7B,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,mCAAI,OAAO;IAC1D,IAAI,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,mCAAI,SAAS;IAC5D,IAAI,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,mCAAI,MAAM;IACzD,QAAQ,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,iCAAiC,mCAAI,UAAU;CACtE,CAAC;AAEF,IAAa,eAAe,uBAA5B,MAAa,eAAgB,SAAQ,4BAA6B;IAGhE,YAEE,WAA0B,OAAO;QAEjC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,iBAAe,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,IAAI,CAAC,SAAS,GAAG,IAAI,0BAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAA4B,CAAC;IAC3C,CAAC;IAEQ,OAAO,CACd,OAAe,EACf,UAA8D,EAC9D,KAAe;QAEf,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAI,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;;AAzBU,0CAAe;AACnB,8BAAc,GAAG,OAAO,CAAC,IAAI,AAAf,CAAgB;0BAD1B,eAAe;IAIvB,WAAA,IAAA,aAAM,EAAC,sBAAsB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;;GAJxD,eAAe,CA0B3B"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./datasource"), exports);
|
18
|
+
__exportStar(require("./connector"), exports);
|
19
|
+
__exportStar(require("./types"), exports);
|
20
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/datasources/redis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,8CAA4B;AAC5B,0CAAwB"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { IDataSourceOptions } from '../../base/datasources';
|
2
|
+
import { IRedisHelperProps, RedisHelper } from '../../helpers';
|
3
|
+
import { Entity, KVConnector, Options } from '@loopback/repository';
|
4
|
+
export interface IRedisOptions extends IDataSourceOptions, IRedisHelperProps {
|
5
|
+
}
|
6
|
+
export interface IRedisConnector<E extends Entity = any> extends KVConnector<E> {
|
7
|
+
redisHelper: RedisHelper;
|
8
|
+
execute<R extends object = any>(command: string, parameters?: Array<string | number> | string | number | object, options?: Options): Promise<R>;
|
9
|
+
execute<R extends object = any>(...args: any[]): Promise<R>;
|
10
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/datasources/redis/types.ts"],"names":[],"mappings":""}
|
@@ -8,6 +8,7 @@ export declare class ApplicationEnvironment implements IApplicationEnvironment {
|
|
8
8
|
});
|
9
9
|
get<ReturnType>(key: string): ReturnType;
|
10
10
|
set<ValueType>(key: string, value: ValueType): void;
|
11
|
+
isDevelopment(): boolean;
|
11
12
|
keys(): string[];
|
12
13
|
}
|
13
14
|
export declare const applicationEnvironment: ApplicationEnvironment;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"application-environment.helper.js","sourceRoot":"","sources":["../../src/helpers/application-environment.helper.ts"],"names":[],"mappings":";;;;AAEA,MAAa,sBAAsB;IAIjC,YAAY,IAA2E;QAF/E,cAAS,GAAwB,EAAE,CAAC;QAG1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE1B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,SAAS;YACX,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,GAAG,CAAa,GAAW;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAe,CAAC;IAC3C,CAAC;IAED,GAAG,CAAY,GAAW,EAAE,KAAgB;QAC1C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,IAAI;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;CACF;
|
1
|
+
{"version":3,"file":"application-environment.helper.js","sourceRoot":"","sources":["../../src/helpers/application-environment.helper.ts"],"names":[],"mappings":";;;;AAEA,MAAa,sBAAsB;IAIjC,YAAY,IAA2E;QAF/E,cAAS,GAAwB,EAAE,CAAC;QAG1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE1B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,SAAS;YACX,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,GAAG,CAAa,GAAW;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAe,CAAC;IAC3C,CAAC;IAED,GAAG,CAAY,GAAW,EAAE,KAAgB;QAC1C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,aAAa;QACX,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC;IAChD,CAAC;IAED,IAAI;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;CACF;AA/BD,wDA+BC;AAEY,QAAA,sBAAsB,GAAG,IAAI,sBAAsB,CAAC;IAC/D,MAAM,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,mCAAI,SAAS;IACvD,IAAI,EAAE,OAAO,CAAC,GAAG;CAClB,CAAC,CAAC"}
|
@@ -1,16 +1,29 @@
|
|
1
|
-
import
|
1
|
+
import winston from 'winston';
|
2
2
|
import 'winston-daily-rotate-file';
|
3
|
-
|
3
|
+
import { IDgramTransportOptions } from './transports';
|
4
|
+
export declare const applicationLogFormatter: ReturnType<typeof winston.format.combine>;
|
4
5
|
export declare const defineCustomLogger: (opts: {
|
6
|
+
logLevels?: {
|
7
|
+
[name: string | symbol]: number;
|
8
|
+
};
|
9
|
+
logColors?: {
|
10
|
+
[name: string | symbol]: string;
|
11
|
+
};
|
5
12
|
transports: {
|
6
13
|
info: {
|
7
|
-
|
8
|
-
|
14
|
+
file?: {
|
15
|
+
prefix: string;
|
16
|
+
folder: string;
|
17
|
+
};
|
18
|
+
dgram?: Partial<IDgramTransportOptions>;
|
9
19
|
};
|
10
20
|
error: {
|
11
|
-
|
12
|
-
|
21
|
+
file: {
|
22
|
+
prefix: string;
|
23
|
+
folder: string;
|
24
|
+
};
|
25
|
+
dgram?: Partial<IDgramTransportOptions>;
|
13
26
|
};
|
14
27
|
};
|
15
|
-
}) =>
|
16
|
-
export declare const applicationLogger:
|
28
|
+
}) => winston.Logger;
|
29
|
+
export declare const applicationLogger: winston.Logger;
|
@@ -2,49 +2,121 @@
|
|
2
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
|
-
var _a;
|
5
|
+
var _a, _b, _c, _d, _e;
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
7
7
|
exports.applicationLogger = exports.defineCustomLogger = exports.applicationLogFormatter = void 0;
|
8
|
+
const common_1 = require("../../common");
|
8
9
|
const path_1 = __importDefault(require("path"));
|
9
|
-
const winston_1 = require("winston");
|
10
|
+
const winston_1 = __importDefault(require("winston"));
|
10
11
|
require("winston-daily-rotate-file");
|
11
|
-
const
|
12
|
-
const
|
12
|
+
const transports_1 = require("./transports");
|
13
|
+
const utilities_1 = require("../../utilities");
|
13
14
|
const LOGGER_PREFIX = common_1.App.APPLICATION_NAME;
|
14
|
-
const consoleLogTransport = new winston_1.transports.Console({
|
15
|
-
|
16
|
-
});
|
17
|
-
exports.applicationLogFormatter = winston_1.format.combine(winston_1.format.label({ label: LOGGER_PREFIX }), winston_1.format.splat(), winston_1.format.align(), winston_1.format.timestamp(), winston_1.format.simple(), winston_1.format.colorize(), winston_1.format.printf(({ level, message, label, timestamp }) => `${timestamp} [${label}] ${level}: ${message}`), winston_1.format.errors({ stack: true }));
|
15
|
+
const consoleLogTransport = new winston_1.default.transports.Console({ level: 'debug' });
|
16
|
+
exports.applicationLogFormatter = winston_1.default.format.combine(winston_1.default.format.label({ label: LOGGER_PREFIX }), winston_1.default.format.splat(), winston_1.default.format.align(), winston_1.default.format.timestamp(), winston_1.default.format.simple(), winston_1.default.format.colorize(), winston_1.default.format.printf(({ level, message, label, timestamp }) => `${timestamp} [${label}] ${level}: ${message}`), winston_1.default.format.errors({ stack: true }));
|
18
17
|
const defineCustomLogger = (opts) => {
|
19
|
-
const {
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
18
|
+
const { logLevels = {
|
19
|
+
error: 1,
|
20
|
+
alert: 1,
|
21
|
+
emergency: 1,
|
22
|
+
warn: 2,
|
23
|
+
info: 3,
|
24
|
+
http: 4,
|
25
|
+
verbose: 5,
|
26
|
+
debug: 6,
|
27
|
+
silly: 7,
|
28
|
+
}, logColors = {
|
29
|
+
error: 'red',
|
30
|
+
alert: 'red',
|
31
|
+
emergency: 'red',
|
32
|
+
warn: 'yellow',
|
33
|
+
info: 'green',
|
34
|
+
http: 'magenta',
|
35
|
+
verbose: 'gray',
|
36
|
+
debug: 'blue',
|
37
|
+
silly: 'gray',
|
38
|
+
}, transports: { info: infoTransportOptions, error: errorTransportOptions }, } = opts;
|
39
|
+
/* const transports: { general: Array<winston.transport>; exception: Array<winston.transport> } = {
|
40
|
+
general: [consoleLogTransport, infoTransport, errorTransport],
|
41
|
+
exception: [consoleLogTransport, errorTransport],
|
42
|
+
}; */
|
43
|
+
const transports = {
|
44
|
+
general: [consoleLogTransport],
|
45
|
+
exception: [consoleLogTransport],
|
46
|
+
};
|
47
|
+
// File configure
|
48
|
+
if (infoTransportOptions.file) {
|
49
|
+
const transport = new winston_1.default.transports.DailyRotateFile({
|
50
|
+
frequency: '1h',
|
51
|
+
maxSize: '100m',
|
52
|
+
maxFiles: '5d',
|
53
|
+
datePattern: 'YYYYMMDD_HH',
|
54
|
+
filename: path_1.default.join(infoTransportOptions.file.folder, `/${infoTransportOptions.file.prefix}-info-%DATE%.log`),
|
55
|
+
level: 'info',
|
56
|
+
});
|
57
|
+
transports.general.push(transport);
|
58
|
+
}
|
59
|
+
if (errorTransportOptions.file) {
|
60
|
+
const transport = new winston_1.default.transports.DailyRotateFile({
|
61
|
+
frequency: '1h',
|
62
|
+
maxSize: '100m',
|
63
|
+
maxFiles: '5d',
|
64
|
+
datePattern: 'YYYYMMDD_HH',
|
65
|
+
filename: path_1.default.join(errorTransportOptions.file.folder, `/${errorTransportOptions.file.prefix}-error-%DATE%.log`),
|
66
|
+
level: 'error',
|
67
|
+
});
|
68
|
+
transports.general.push(transport);
|
69
|
+
transports.exception.push(transport);
|
70
|
+
}
|
71
|
+
// Stream configure
|
72
|
+
if (infoTransportOptions.dgram) {
|
73
|
+
const transport = transports_1.DgramTransport.fromPartial(infoTransportOptions.dgram);
|
74
|
+
if (transport) {
|
75
|
+
transports.general.push(transport);
|
76
|
+
}
|
77
|
+
}
|
78
|
+
if (errorTransportOptions.dgram) {
|
79
|
+
const transport = transports_1.DgramTransport.fromPartial(errorTransportOptions.dgram);
|
80
|
+
if (transport) {
|
81
|
+
transports.exception.push(transport);
|
82
|
+
}
|
83
|
+
}
|
84
|
+
// Color configure
|
85
|
+
winston_1.default.addColors(logColors);
|
86
|
+
// Logger
|
87
|
+
return winston_1.default.createLogger({
|
88
|
+
levels: logLevels,
|
37
89
|
format: exports.applicationLogFormatter,
|
38
90
|
exitOnError: false,
|
39
|
-
transports:
|
40
|
-
exceptionHandlers:
|
91
|
+
transports: transports.general,
|
92
|
+
exceptionHandlers: transports.exception,
|
41
93
|
});
|
42
94
|
};
|
43
95
|
exports.defineCustomLogger = defineCustomLogger;
|
96
|
+
// -------------------------------------------------------------------------------------------
|
97
|
+
const LOGGER_FOLDER_PATH = (_a = process.env.APP_ENV_LOGGER_FOLDER_PATH) !== null && _a !== void 0 ? _a : './';
|
44
98
|
exports.applicationLogger = (0, exports.defineCustomLogger)({
|
45
99
|
transports: {
|
46
|
-
info: {
|
47
|
-
|
100
|
+
info: {
|
101
|
+
file: { folder: LOGGER_FOLDER_PATH, prefix: LOGGER_PREFIX },
|
102
|
+
dgram: {
|
103
|
+
host: process.env.APP_ENV_LOGGER_DGRAM_HOST,
|
104
|
+
port: (0, utilities_1.int)(process.env.APP_ENV_LOGGER_DGRAM_PORT),
|
105
|
+
label: process.env.APP_ENV_LOGGER_DGRAM_LABEL,
|
106
|
+
triggerLevels: (_c = (_b = process.env.APP_ENV_LOGGER_DGRAM_INFO_TRIGGER_LEVELS) === null || _b === void 0 ? void 0 : _b.split(',').map(el => el.trim())) !== null && _c !== void 0 ? _c : [],
|
107
|
+
socketOptions: { type: 'udp4' },
|
108
|
+
},
|
109
|
+
},
|
110
|
+
error: {
|
111
|
+
file: { folder: LOGGER_FOLDER_PATH, prefix: LOGGER_PREFIX },
|
112
|
+
dgram: {
|
113
|
+
host: process.env.APP_ENV_LOGGER_DGRAM_HOST,
|
114
|
+
port: (0, utilities_1.int)(process.env.APP_ENV_LOGGER_DGRAM_PORT),
|
115
|
+
label: process.env.APP_ENV_LOGGER_DGRAM_LABEL,
|
116
|
+
triggerLevels: (_e = (_d = process.env.APP_ENV_LOGGER_DGRAM_ERROR_TRIGGER_LEVELS) === null || _d === void 0 ? void 0 : _d.split(',').map(el => el.trim())) !== null && _e !== void 0 ? _e : [],
|
117
|
+
socketOptions: { type: 'udp4' },
|
118
|
+
},
|
119
|
+
},
|
48
120
|
},
|
49
121
|
});
|
50
122
|
//# sourceMappingURL=default-logger.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"default-logger.js","sourceRoot":"","sources":["../../../src/helpers/logger/default-logger.ts"],"names":[],"mappings":";;;;;;;AAAA,gDAAwB;
|
1
|
+
{"version":3,"file":"default-logger.js","sourceRoot":"","sources":["../../../src/helpers/logger/default-logger.ts"],"names":[],"mappings":"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"}
|
@@ -14,7 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
__exportStar(require("./default-logger"), exports);
|
18
17
|
__exportStar(require("./application-logger"), exports);
|
18
|
+
__exportStar(require("./default-logger"), exports);
|
19
19
|
__exportStar(require("./factory"), exports);
|
20
|
+
__exportStar(require("./transports"), exports);
|
20
21
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/logger/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/logger/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,mDAAiC;AACjC,4CAA0B;AAC1B,+CAA6B"}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import dgram from 'dgram';
|
2
|
+
import Transport from 'winston-transport';
|
3
|
+
export interface IDgramTransportOptions extends Transport.TransportStreamOptions {
|
4
|
+
label: string;
|
5
|
+
host: string;
|
6
|
+
port: number;
|
7
|
+
triggerLevels: Array<string>;
|
8
|
+
socketOptions: dgram.SocketOptions;
|
9
|
+
}
|
10
|
+
export declare class DgramTransport extends Transport {
|
11
|
+
private label;
|
12
|
+
private host;
|
13
|
+
private port;
|
14
|
+
private triggerLevels;
|
15
|
+
private socketOptions;
|
16
|
+
private client;
|
17
|
+
constructor(opts: IDgramTransportOptions);
|
18
|
+
static fromPartial(opts?: Partial<IDgramTransportOptions>): DgramTransport | null;
|
19
|
+
private establish;
|
20
|
+
private formatMessage;
|
21
|
+
log(opts: {
|
22
|
+
level: string;
|
23
|
+
message: string;
|
24
|
+
label?: string;
|
25
|
+
timestamp?: string;
|
26
|
+
[extra: symbol]: any;
|
27
|
+
}, callback: Function): void;
|
28
|
+
}
|
@@ -0,0 +1,84 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
3
|
+
var t = {};
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
5
|
+
t[p] = s[p];
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
9
|
+
t[p[i]] = s[p[i]];
|
10
|
+
}
|
11
|
+
return t;
|
12
|
+
};
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
exports.DgramTransport = void 0;
|
18
|
+
const common_1 = require("../../../common");
|
19
|
+
const utilities_1 = require("../../../utilities");
|
20
|
+
const dgram_1 = __importDefault(require("dgram"));
|
21
|
+
const winston_transport_1 = __importDefault(require("winston-transport"));
|
22
|
+
class DgramTransport extends winston_transport_1.default {
|
23
|
+
constructor(opts) {
|
24
|
+
const { label, host, port, triggerLevels, socketOptions } = opts, defaultTransportOptions = __rest(opts, ["label", "host", "port", "triggerLevels", "socketOptions"]);
|
25
|
+
super(defaultTransportOptions);
|
26
|
+
this.label = label;
|
27
|
+
this.host = host;
|
28
|
+
this.port = port;
|
29
|
+
this.triggerLevels = new Set(triggerLevels);
|
30
|
+
this.socketOptions = socketOptions;
|
31
|
+
this.establish({ socketOptions: this.socketOptions });
|
32
|
+
}
|
33
|
+
static fromPartial(opts) {
|
34
|
+
var _a;
|
35
|
+
console.log('fromPartial: ', opts);
|
36
|
+
if (!(opts === null || opts === void 0 ? void 0 : opts.label) ||
|
37
|
+
!(opts === null || opts === void 0 ? void 0 : opts.host) ||
|
38
|
+
!(opts === null || opts === void 0 ? void 0 : opts.port) ||
|
39
|
+
!((_a = opts === null || opts === void 0 ? void 0 : opts.triggerLevels) === null || _a === void 0 ? void 0 : _a.length) ||
|
40
|
+
!(opts === null || opts === void 0 ? void 0 : opts.socketOptions)) {
|
41
|
+
return null;
|
42
|
+
}
|
43
|
+
return new DgramTransport(opts);
|
44
|
+
}
|
45
|
+
establish(opts) {
|
46
|
+
this.client = dgram_1.default.createSocket(opts.socketOptions);
|
47
|
+
this.client.on('error', error => {
|
48
|
+
var _a;
|
49
|
+
(_a = this.client) === null || _a === void 0 ? void 0 : _a.close();
|
50
|
+
this.client = null;
|
51
|
+
throw (0, utilities_1.getError)({
|
52
|
+
statusCode: common_1.ResultCodes.RS_5.InternalServerError,
|
53
|
+
message: `[DgramTransport][error] Error: ${error.message}`,
|
54
|
+
});
|
55
|
+
});
|
56
|
+
}
|
57
|
+
formatMessage(opts) {
|
58
|
+
var _a;
|
59
|
+
const { timestamp, label, message } = opts, rest = __rest(opts, ["timestamp", "label", "message"]);
|
60
|
+
return [timestamp, `[${(_a = this.label) !== null && _a !== void 0 ? _a : label}]`, rest[Symbol.for('level')], message].join(' ');
|
61
|
+
}
|
62
|
+
log(opts, callback) {
|
63
|
+
var _a;
|
64
|
+
setImmediate(() => {
|
65
|
+
this.emit('logged', opts);
|
66
|
+
});
|
67
|
+
const logLevel = opts[Symbol.for('level')];
|
68
|
+
if (!this.triggerLevels.has(logLevel)) {
|
69
|
+
callback();
|
70
|
+
}
|
71
|
+
if (!this.client) {
|
72
|
+
this.establish({ socketOptions: this.socketOptions });
|
73
|
+
}
|
74
|
+
const message = this.formatMessage(opts);
|
75
|
+
(_a = this.client) === null || _a === void 0 ? void 0 : _a.send(message, this.port, this.host, error => {
|
76
|
+
if (error) {
|
77
|
+
this.emit('error', error);
|
78
|
+
}
|
79
|
+
callback();
|
80
|
+
});
|
81
|
+
}
|
82
|
+
}
|
83
|
+
exports.DgramTransport = DgramTransport;
|
84
|
+
//# sourceMappingURL=dgram.transport.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"dgram.transport.js","sourceRoot":"","sources":["../../../../src/helpers/logger/transports/dgram.transport.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './dgram.transport';
|