eh-commons 0.0.1-testing.1
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/.eslintrc.js +25 -0
- package/.prettierrc +4 -0
- package/README.md +0 -0
- package/devops.md +15 -0
- package/dist/clients/logger.client.d.ts +10 -0
- package/dist/clients/logger.client.js +42 -0
- package/dist/clients/logger.client.js.map +1 -0
- package/dist/clients/session.client.d.ts +10 -0
- package/dist/clients/session.client.js +37 -0
- package/dist/clients/session.client.js.map +1 -0
- package/dist/constraints/is-map-of-strings.constraint.d.ts +5 -0
- package/dist/constraints/is-map-of-strings.constraint.js +34 -0
- package/dist/constraints/is-map-of-strings.constraint.js.map +1 -0
- package/dist/constraints/is-route.constraint.d.ts +5 -0
- package/dist/constraints/is-route.constraint.js +24 -0
- package/dist/constraints/is-route.constraint.js.map +1 -0
- package/dist/decorators/is-map-of-strings.decorator.d.ts +1 -0
- package/dist/decorators/is-map-of-strings.decorator.js +14 -0
- package/dist/decorators/is-map-of-strings.decorator.js.map +1 -0
- package/dist/decorators/is-route.decorator.d.ts +1 -0
- package/dist/decorators/is-route.decorator.js +12 -0
- package/dist/decorators/is-route.decorator.js.map +1 -0
- package/dist/exceptions/custom.exception.d.ts +10 -0
- package/dist/exceptions/custom.exception.js +18 -0
- package/dist/exceptions/custom.exception.js.map +1 -0
- package/dist/factories/exception.factory.d.ts +4 -0
- package/dist/factories/exception.factory.js +15 -0
- package/dist/factories/exception.factory.js.map +1 -0
- package/dist/filters/base-exception.filter.d.ts +6 -0
- package/dist/filters/base-exception.filter.js +113 -0
- package/dist/filters/base-exception.filter.js.map +1 -0
- package/dist/functions/escape-regex.function.d.ts +1 -0
- package/dist/functions/escape-regex.function.js +8 -0
- package/dist/functions/escape-regex.function.js.map +1 -0
- package/dist/functions/generate-uuid.function.d.ts +1 -0
- package/dist/functions/generate-uuid.function.js +12 -0
- package/dist/functions/generate-uuid.function.js.map +1 -0
- package/dist/functions/json-size.function.d.ts +1 -0
- package/dist/functions/json-size.function.js +10 -0
- package/dist/functions/json-size.function.js.map +1 -0
- package/dist/functions/random-range.function.d.ts +1 -0
- package/dist/functions/random-range.function.js +11 -0
- package/dist/functions/random-range.function.js.map +1 -0
- package/dist/functions/transliterate-geo-to-latin.d.ts +1 -0
- package/dist/functions/transliterate-geo-to-latin.js +46 -0
- package/dist/functions/transliterate-geo-to-latin.js.map +1 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.js +79 -0
- package/dist/index.js.map +1 -0
- package/dist/models/dtos/record.dto.d.ts +5 -0
- package/dist/models/dtos/record.dto.js +28 -0
- package/dist/models/dtos/record.dto.js.map +1 -0
- package/dist/models/dtos/state-params.dto.d.ts +5 -0
- package/dist/models/dtos/state-params.dto.js +26 -0
- package/dist/models/dtos/state-params.dto.js.map +1 -0
- package/dist/models/embedded/address.embedded.d.ts +39 -0
- package/dist/models/embedded/address.embedded.js +34 -0
- package/dist/models/embedded/address.embedded.js.map +1 -0
- package/dist/models/embedded/contact.embedded.d.ts +39 -0
- package/dist/models/embedded/contact.embedded.js +38 -0
- package/dist/models/embedded/contact.embedded.js.map +1 -0
- package/dist/models/embedded/geo-location.embedded.d.ts +38 -0
- package/dist/models/embedded/geo-location.embedded.js +33 -0
- package/dist/models/embedded/geo-location.embedded.js.map +1 -0
- package/dist/models/embedded/i18n.embedded.d.ts +38 -0
- package/dist/models/embedded/i18n.embedded.js +33 -0
- package/dist/models/embedded/i18n.embedded.js.map +1 -0
- package/dist/models/embedded/person.embedded.d.ts +38 -0
- package/dist/models/embedded/person.embedded.js +33 -0
- package/dist/models/embedded/person.embedded.js.map +1 -0
- package/dist/models/embedded/record.embedded.d.ts +41 -0
- package/dist/models/embedded/record.embedded.js +47 -0
- package/dist/models/embedded/record.embedded.js.map +1 -0
- package/dist/models/enums/contact-type.enum.d.ts +4 -0
- package/dist/models/enums/contact-type.enum.js +9 -0
- package/dist/models/enums/contact-type.enum.js.map +1 -0
- package/dist/models/enums/env.enum.d.ts +5 -0
- package/dist/models/enums/env.enum.js +10 -0
- package/dist/models/enums/env.enum.js.map +1 -0
- package/dist/models/enums/fail-keyword.enum.d.ts +5 -0
- package/dist/models/enums/fail-keyword.enum.js +10 -0
- package/dist/models/enums/fail-keyword.enum.js.map +1 -0
- package/dist/models/enums/http-method.enum.d.ts +7 -0
- package/dist/models/enums/http-method.enum.js +12 -0
- package/dist/models/enums/http-method.enum.js.map +1 -0
- package/dist/models/enums/permission-include-strategy.enum.d.ts +5 -0
- package/dist/models/enums/permission-include-strategy.enum.js +10 -0
- package/dist/models/enums/permission-include-strategy.enum.js.map +1 -0
- package/dist/models/enums/record-state.enum.d.ts +5 -0
- package/dist/models/enums/record-state.enum.js +10 -0
- package/dist/models/enums/record-state.enum.js.map +1 -0
- package/dist/models/interfaces/address.interface.d.ts +6 -0
- package/dist/models/interfaces/address.interface.js +3 -0
- package/dist/models/interfaces/address.interface.js.map +1 -0
- package/dist/models/interfaces/contact.interface.d.ts +6 -0
- package/dist/models/interfaces/contact.interface.js +3 -0
- package/dist/models/interfaces/contact.interface.js.map +1 -0
- package/dist/models/interfaces/geo-location.interface.d.ts +5 -0
- package/dist/models/interfaces/geo-location.interface.js +3 -0
- package/dist/models/interfaces/geo-location.interface.js.map +1 -0
- package/dist/models/interfaces/i18n.interface.d.ts +5 -0
- package/dist/models/interfaces/i18n.interface.js +3 -0
- package/dist/models/interfaces/i18n.interface.js.map +1 -0
- package/dist/models/interfaces/person.interface.d.ts +5 -0
- package/dist/models/interfaces/person.interface.js +3 -0
- package/dist/models/interfaces/person.interface.js.map +1 -0
- package/dist/models/interfaces/record.interface.d.ts +8 -0
- package/dist/models/interfaces/record.interface.js +3 -0
- package/dist/models/interfaces/record.interface.js.map +1 -0
- package/dist/models/interfaces/session/session-data.interface.d.ts +11 -0
- package/dist/models/interfaces/session/session-data.interface.js +3 -0
- package/dist/models/interfaces/session/session-data.interface.js.map +1 -0
- package/dist/models/interfaces/session/session.interface.d.ts +8 -0
- package/dist/models/interfaces/session/session.interface.js +3 -0
- package/dist/models/interfaces/session/session.interface.js.map +1 -0
- package/dist/models/wrappers/client-permissions.wrapper.d.ts +4 -0
- package/dist/models/wrappers/client-permissions.wrapper.js +7 -0
- package/dist/models/wrappers/client-permissions.wrapper.js.map +1 -0
- package/dist/models/wrappers/permission-guard-config.wrapper.d.ts +6 -0
- package/dist/models/wrappers/permission-guard-config.wrapper.js +10 -0
- package/dist/models/wrappers/permission-guard-config.wrapper.js.map +1 -0
- package/dist/models/wrappers/rest-wrapper.class.d.ts +58 -0
- package/dist/models/wrappers/rest-wrapper.class.js +162 -0
- package/dist/models/wrappers/rest-wrapper.class.js.map +1 -0
- package/dist/modules/cache/cache.module.d.ts +2 -0
- package/dist/modules/cache/cache.module.js +25 -0
- package/dist/modules/cache/cache.module.js.map +1 -0
- package/dist/modules/cache/guards/permission.guard.d.ts +14 -0
- package/dist/modules/cache/guards/permission.guard.js +101 -0
- package/dist/modules/cache/guards/permission.guard.js.map +1 -0
- package/dist/modules/cache/reflector/permission.reflector.d.ts +2 -0
- package/dist/modules/cache/reflector/permission.reflector.js +6 -0
- package/dist/modules/cache/reflector/permission.reflector.js.map +1 -0
- package/dist/modules/cache/services/redis.service.d.ts +11 -0
- package/dist/modules/cache/services/redis.service.js +70 -0
- package/dist/modules/cache/services/redis.service.js.map +1 -0
- package/dist/modules/cache/services/session.service.d.ts +6 -0
- package/dist/modules/cache/services/session.service.js +27 -0
- package/dist/modules/cache/services/session.service.js.map +1 -0
- package/dist/modules/log/log.module.d.ts +2 -0
- package/dist/modules/log/log.module.js +23 -0
- package/dist/modules/log/log.module.js.map +1 -0
- package/dist/modules/log/services/log.service.d.ts +6 -0
- package/dist/modules/log/services/log.service.js +32 -0
- package/dist/modules/log/services/log.service.js.map +1 -0
- package/dist/pipes/validate-mongo-id.pipe.d.ts +4 -0
- package/dist/pipes/validate-mongo-id.pipe.js +28 -0
- package/dist/pipes/validate-mongo-id.pipe.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/utils/config-util.class.d.ts +5 -0
- package/dist/utils/config-util.class.js +18 -0
- package/dist/utils/config-util.class.js.map +1 -0
- package/dist/utils/console-logger.class.d.ts +9 -0
- package/dist/utils/console-logger.class.js +39 -0
- package/dist/utils/console-logger.class.js.map +1 -0
- package/package.json +35 -0
- package/src/clients/logger.client.ts +57 -0
- package/src/clients/session.client.ts +42 -0
- package/src/constraints/is-map-of-strings.constraint.ts +26 -0
- package/src/constraints/is-route.constraint.ts +14 -0
- package/src/decorators/is-map-of-strings.decorator.ts +10 -0
- package/src/decorators/is-route.decorator.ts +8 -0
- package/src/exceptions/custom.exception.ts +16 -0
- package/src/factories/exception.factory.ts +14 -0
- package/src/filters/base-exception.filter.ts +192 -0
- package/src/functions/escape-regex.function.ts +5 -0
- package/src/functions/generate-uuid.function.ts +7 -0
- package/src/functions/json-size.function.ts +9 -0
- package/src/functions/random-range.function.ts +6 -0
- package/src/functions/transliterate-geo-to-latin.ts +42 -0
- package/src/index.ts +96 -0
- package/src/models/dtos/record.dto.ts +12 -0
- package/src/models/dtos/state-params.dto.ts +10 -0
- package/src/models/embedded/address.embedded.ts +17 -0
- package/src/models/embedded/contact.embedded.ts +22 -0
- package/src/models/embedded/geo-location.embedded.ts +17 -0
- package/src/models/embedded/i18n.embedded.ts +16 -0
- package/src/models/embedded/person.embedded.ts +16 -0
- package/src/models/embedded/record.embedded.ts +30 -0
- package/src/models/enums/contact-type.enum.ts +4 -0
- package/src/models/enums/env.enum.ts +5 -0
- package/src/models/enums/fail-keyword.enum.ts +6 -0
- package/src/models/enums/http-method.enum.ts +7 -0
- package/src/models/enums/permission-include-strategy.enum.ts +5 -0
- package/src/models/enums/record-state.enum.ts +5 -0
- package/src/models/interfaces/address.interface.ts +7 -0
- package/src/models/interfaces/contact.interface.ts +7 -0
- package/src/models/interfaces/geo-location.interface.ts +5 -0
- package/src/models/interfaces/i18n.interface.ts +5 -0
- package/src/models/interfaces/person.interface.ts +5 -0
- package/src/models/interfaces/record.interface.ts +9 -0
- package/src/models/interfaces/session/session-data.interface.ts +11 -0
- package/src/models/interfaces/session/session.interface.ts +9 -0
- package/src/models/wrappers/client-permissions.wrapper.ts +4 -0
- package/src/models/wrappers/permission-guard-config.wrapper.ts +7 -0
- package/src/models/wrappers/rest-wrapper.class.ts +172 -0
- package/src/modules/cache/cache.module.ts +12 -0
- package/src/modules/cache/guards/permission.guard.ts +166 -0
- package/src/modules/cache/reflector/permission.reflector.ts +4 -0
- package/src/modules/cache/services/redis.service.ts +37 -0
- package/src/modules/cache/services/session.service.ts +11 -0
- package/src/modules/log/log.module.ts +10 -0
- package/src/modules/log/services/log.service.ts +20 -0
- package/src/pipes/validate-mongo-id.pipe.ts +17 -0
- package/src/utils/config-util.class.ts +15 -0
- package/src/utils/console-logger.class.ts +42 -0
- package/tsconfig.build.json +9 -0
- package/tsconfig.json +26 -0
package/.eslintrc.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
parser: '@typescript-eslint/parser',
|
|
3
|
+
parserOptions: {
|
|
4
|
+
project: 'tsconfig.json',
|
|
5
|
+
tsconfigRootDir: __dirname,
|
|
6
|
+
sourceType: 'module',
|
|
7
|
+
},
|
|
8
|
+
plugins: ['@typescript-eslint/eslint-plugin'],
|
|
9
|
+
extends: [
|
|
10
|
+
'plugin:@typescript-eslint/recommended',
|
|
11
|
+
'plugin:prettier/recommended',
|
|
12
|
+
],
|
|
13
|
+
root: true,
|
|
14
|
+
env: {
|
|
15
|
+
node: true,
|
|
16
|
+
jest: true,
|
|
17
|
+
},
|
|
18
|
+
ignorePatterns: ['.eslintrc.js'],
|
|
19
|
+
rules: {
|
|
20
|
+
'@typescript-eslint/interface-name-prefix': 'off',
|
|
21
|
+
'@typescript-eslint/explicit-function-return-type': 'off',
|
|
22
|
+
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
23
|
+
'@typescript-eslint/no-explicit-any': 'off',
|
|
24
|
+
},
|
|
25
|
+
};
|
package/.prettierrc
ADDED
package/README.md
ADDED
|
File without changes
|
package/devops.md
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare class LoggerClient {
|
|
2
|
+
private kafka;
|
|
3
|
+
private kafkaTopic;
|
|
4
|
+
private producer;
|
|
5
|
+
constructor(kafkaBrokers: string[], kafkaClientId: string, kafkaLogTopic: string);
|
|
6
|
+
private connectProducer;
|
|
7
|
+
private disconnectProducer;
|
|
8
|
+
private sendLog;
|
|
9
|
+
private send;
|
|
10
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LoggerClient = void 0;
|
|
4
|
+
const kafkajs_1 = require("kafkajs");
|
|
5
|
+
const rxjs_1 = require("rxjs");
|
|
6
|
+
class LoggerClient {
|
|
7
|
+
constructor(kafkaBrokers, kafkaClientId, kafkaLogTopic) {
|
|
8
|
+
this.kafkaTopic = kafkaLogTopic;
|
|
9
|
+
this.kafka = new kafkajs_1.Kafka({ brokers: kafkaBrokers, clientId: kafkaClientId });
|
|
10
|
+
this.producer = this.kafka.producer();
|
|
11
|
+
}
|
|
12
|
+
connectProducer() {
|
|
13
|
+
return (0, rxjs_1.from)(this.producer.connect());
|
|
14
|
+
}
|
|
15
|
+
disconnectProducer() {
|
|
16
|
+
return (0, rxjs_1.from)(this.producer.disconnect());
|
|
17
|
+
}
|
|
18
|
+
sendLog(log, key) {
|
|
19
|
+
let messageString = JSON.stringify(log);
|
|
20
|
+
return this.connectProducer().pipe((0, rxjs_1.mergeMap)(() => {
|
|
21
|
+
return this.send(messageString, key).pipe((0, rxjs_1.map)((recordMetadata) => {
|
|
22
|
+
this.disconnectProducer().subscribe();
|
|
23
|
+
return recordMetadata;
|
|
24
|
+
}));
|
|
25
|
+
}), (0, rxjs_1.catchError)((err) => {
|
|
26
|
+
return (0, rxjs_1.of)(err);
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
29
|
+
send(messageString, key) {
|
|
30
|
+
return (0, rxjs_1.from)(this.producer.send({
|
|
31
|
+
topic: this.kafkaTopic,
|
|
32
|
+
messages: [
|
|
33
|
+
{
|
|
34
|
+
key,
|
|
35
|
+
value: messageString,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.LoggerClient = LoggerClient;
|
|
42
|
+
//# sourceMappingURL=logger.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.client.js","sourceRoot":"","sources":["../../src/clients/logger.client.ts"],"names":[],"mappings":";;;AAAA,qCAAyE;AACzE,+BAAuE;AAEvE,MAAa,YAAY;IAIvB,YACE,YAAsB,EACtB,aAAqB,EACrB,aAAqB;QAErB,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,IAAI,eAAK,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;IAEO,eAAe;QACrB,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACvC,CAAC;IACO,kBAAkB;QACxB,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1C,CAAC;IACO,OAAO,CAAC,GAAQ,EAAE,GAAY;QACpC,IAAI,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAChC,IAAA,eAAQ,EAAC,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,IAAI,CACvC,IAAA,UAAG,EAAC,CAAC,cAAc,EAAE,EAAE;gBACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,CAAC;gBACtC,OAAO,cAAc,CAAC;YACxB,CAAC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,EACF,IAAA,iBAAU,EAAC,CAAC,GAAG,EAAE,EAAE;YACjB,OAAO,IAAA,SAAE,EAAC,GAAG,CAAC,CAAC;QACjB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,IAAI,CACV,aAAqB,EACrB,GAAY;QAEZ,OAAO,IAAA,WAAI,EACT,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,QAAQ,EAAE;gBACR;oBACE,GAAG;oBACH,KAAK,EAAE,aAAa;iBACrB;aACF;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF;AArDD,oCAqDC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as IORedis from 'ioredis';
|
|
2
|
+
export declare class SessionClient {
|
|
3
|
+
private redisClient;
|
|
4
|
+
constructor(client: IORedis.Redis);
|
|
5
|
+
get(key: string): Promise<string>;
|
|
6
|
+
set(key: string, value: string): Promise<string>;
|
|
7
|
+
delete(key: string): Promise<number>;
|
|
8
|
+
private parseUser;
|
|
9
|
+
private parse;
|
|
10
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SessionClient = void 0;
|
|
4
|
+
class SessionClient {
|
|
5
|
+
constructor(client) {
|
|
6
|
+
this.redisClient = client;
|
|
7
|
+
}
|
|
8
|
+
get(key) {
|
|
9
|
+
return this.redisClient.get(key);
|
|
10
|
+
}
|
|
11
|
+
set(key, value) {
|
|
12
|
+
return this.redisClient.set(key, value);
|
|
13
|
+
}
|
|
14
|
+
delete(key) {
|
|
15
|
+
return this.redisClient.del(key);
|
|
16
|
+
}
|
|
17
|
+
parseUser(jsonString) {
|
|
18
|
+
try {
|
|
19
|
+
const parsedUser = JSON.parse(jsonString);
|
|
20
|
+
return parsedUser;
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
parse(jsonString) {
|
|
27
|
+
try {
|
|
28
|
+
const result = JSON.parse(jsonString);
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.SessionClient = SessionClient;
|
|
37
|
+
//# sourceMappingURL=session.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.client.js","sourceRoot":"","sources":["../../src/clients/session.client.ts"],"names":[],"mappings":";;;AAIA,MAAa,aAAa;IAGxB,YAAY,MAAqB;QAC/B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,CAAC;IAEM,GAAG,CAAC,GAAW;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,KAAa;QACnC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAEO,SAAS,CAAC,UAAkB;QAClC,IAAI,CAAC;YACH,MAAM,UAAU,GAAqB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC5D,OAAO,UAAU,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAI,UAAkB;QACjC,IAAI,CAAC;YACH,MAAM,MAAM,GAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACzC,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CAEF;AArCD,sCAqCC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ValidationArguments, ValidatorConstraintInterface } from 'class-validator';
|
|
2
|
+
export declare class IsMapOfStringsConstraint implements ValidatorConstraintInterface {
|
|
3
|
+
validate(value: any, args: ValidationArguments): boolean;
|
|
4
|
+
defaultMessage(args: ValidationArguments): string;
|
|
5
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.IsMapOfStringsConstraint = void 0;
|
|
10
|
+
const class_validator_1 = require("class-validator");
|
|
11
|
+
let IsMapOfStringsConstraint = class IsMapOfStringsConstraint {
|
|
12
|
+
validate(value, args) {
|
|
13
|
+
if (!value || typeof value !== 'object') {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
if (!Object.keys(value).length) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
for (let key in value) {
|
|
20
|
+
if (typeof value[key] !== 'string') {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
defaultMessage(args) {
|
|
27
|
+
return `${args.property} must be a map object with string values.`;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
exports.IsMapOfStringsConstraint = IsMapOfStringsConstraint;
|
|
31
|
+
exports.IsMapOfStringsConstraint = IsMapOfStringsConstraint = __decorate([
|
|
32
|
+
(0, class_validator_1.ValidatorConstraint)({ name: 'IsMapOfStrings', async: false })
|
|
33
|
+
], IsMapOfStringsConstraint);
|
|
34
|
+
//# sourceMappingURL=is-map-of-strings.constraint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-map-of-strings.constraint.js","sourceRoot":"","sources":["../../src/constraints/is-map-of-strings.constraint.ts"],"names":[],"mappings":";;;;;;;;;AAAA,qDAAyG;AAGlG,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,QAAQ,CAAC,KAAU,EAAE,IAAyB;QAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,KAAK,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACnC,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,IAAyB;QACtC,OAAO,GAAG,IAAI,CAAC,QAAQ,2CAA2C,CAAC;IACrE,CAAC;CACF,CAAA;AAtBY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;GACjD,wBAAwB,CAsBpC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ValidationArguments, ValidatorConstraintInterface } from 'class-validator';
|
|
2
|
+
export declare class IsRouteConstraint implements ValidatorConstraintInterface {
|
|
3
|
+
validate(value: any, args: ValidationArguments): boolean;
|
|
4
|
+
defaultMessage(args: ValidationArguments): string;
|
|
5
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.IsRouteConstraint = void 0;
|
|
10
|
+
const class_validator_1 = require("class-validator");
|
|
11
|
+
let IsRouteConstraint = class IsRouteConstraint {
|
|
12
|
+
validate(value, args) {
|
|
13
|
+
const routePattern = /^\/[\w-\/]+(\?.+)?$/;
|
|
14
|
+
return typeof value === 'string' && routePattern.test(value);
|
|
15
|
+
}
|
|
16
|
+
defaultMessage(args) {
|
|
17
|
+
return `${args.property} must be a valid route string.`;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.IsRouteConstraint = IsRouteConstraint;
|
|
21
|
+
exports.IsRouteConstraint = IsRouteConstraint = __decorate([
|
|
22
|
+
(0, class_validator_1.ValidatorConstraint)({ name: 'IsRoute', async: false })
|
|
23
|
+
], IsRouteConstraint);
|
|
24
|
+
//# sourceMappingURL=is-route.constraint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-route.constraint.js","sourceRoot":"","sources":["../../src/constraints/is-route.constraint.ts"],"names":[],"mappings":";;;;;;;;;AAAA,qDAAyG;AAGlG,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,QAAQ,CAAC,KAAU,EAAE,IAAyB;QAE5C,MAAM,YAAY,GAAG,qBAAqB,CAAC;QAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,cAAc,CAAC,IAAyB;QACtC,OAAO,GAAG,IAAI,CAAC,QAAQ,gCAAgC,CAAC;IAC1D,CAAC;CACF,CAAA;AAVY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;GAC1C,iBAAiB,CAU7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function IsMapOfStrings(): (object: Record<string, any>, propertyName: string) => void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IsMapOfStrings = void 0;
|
|
4
|
+
const class_validator_1 = require("class-validator");
|
|
5
|
+
const is_map_of_strings_constraint_1 = require("../constraints/is-map-of-strings.constraint");
|
|
6
|
+
function IsMapOfStrings() {
|
|
7
|
+
return function (object, propertyName) {
|
|
8
|
+
(0, class_validator_1.Validate)(is_map_of_strings_constraint_1.IsMapOfStringsConstraint, {
|
|
9
|
+
message: `${propertyName} must be a map object with string values.`,
|
|
10
|
+
})(object, propertyName);
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
exports.IsMapOfStrings = IsMapOfStrings;
|
|
14
|
+
//# sourceMappingURL=is-map-of-strings.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-map-of-strings.decorator.js","sourceRoot":"","sources":["../../src/decorators/is-map-of-strings.decorator.ts"],"names":[],"mappings":";;;AAAA,qDAA2C;AAC3C,8FAAuF;AAEvF,SAAgB,cAAc;IAC5B,OAAO,UAAU,MAA2B,EAAE,YAAoB;QAChE,IAAA,0BAAQ,EAAC,uDAAwB,EAAE;YACjC,OAAO,EAAE,GAAG,YAAY,2CAA2C;SACpE,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC;AAND,wCAMC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function IsRoute(): (object: Record<string, any>, propertyName: string) => void;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IsRoute = void 0;
|
|
4
|
+
const class_validator_1 = require("class-validator");
|
|
5
|
+
const is_route_constraint_1 = require("../constraints/is-route.constraint");
|
|
6
|
+
function IsRoute() {
|
|
7
|
+
return function (object, propertyName) {
|
|
8
|
+
(0, class_validator_1.Validate)(is_route_constraint_1.IsRouteConstraint, { message: `${propertyName} must be a valid route string.` })(object, propertyName);
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
exports.IsRoute = IsRoute;
|
|
12
|
+
//# sourceMappingURL=is-route.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-route.decorator.js","sourceRoot":"","sources":["../../src/decorators/is-route.decorator.ts"],"names":[],"mappings":";;;AAAA,qDAA2C;AAC3C,4EAAuE;AAEvE,SAAgB,OAAO;IACrB,OAAO,UAAU,MAA2B,EAAE,YAAoB;QAChE,IAAA,0BAAQ,EAAC,uCAAiB,EAAE,EAAE,OAAO,EAAE,GAAG,YAAY,gCAAgC,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAClH,CAAC,CAAC;AACJ,CAAC;AAJD,0BAIC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { HttpException, HttpStatus } from '@nestjs/common';
|
|
2
|
+
import { Response } from 'express';
|
|
3
|
+
import { RESTError } from '../models/wrappers/rest-wrapper.class';
|
|
4
|
+
declare class HandledException extends HttpException {
|
|
5
|
+
private readonly _errors;
|
|
6
|
+
private readonly _statusCode?;
|
|
7
|
+
constructor(_errors: RESTError[], _statusCode?: HttpStatus);
|
|
8
|
+
send(response: Response): void;
|
|
9
|
+
}
|
|
10
|
+
export { HandledException };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HandledException = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const rest_wrapper_class_1 = require("../models/wrappers/rest-wrapper.class");
|
|
6
|
+
class HandledException extends common_1.HttpException {
|
|
7
|
+
constructor(_errors, _statusCode) {
|
|
8
|
+
super({ errors: _errors }, _statusCode || common_1.HttpStatus.BAD_REQUEST);
|
|
9
|
+
this._errors = _errors;
|
|
10
|
+
this._statusCode = _statusCode;
|
|
11
|
+
}
|
|
12
|
+
send(response) {
|
|
13
|
+
const responseBody = rest_wrapper_class_1.RESTResponseBody.fail(this._errors, this._statusCode || common_1.HttpStatus.BAD_REQUEST);
|
|
14
|
+
response.status(this._statusCode).json(responseBody);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.HandledException = HandledException;
|
|
18
|
+
//# sourceMappingURL=custom.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom.exception.js","sourceRoot":"","sources":["../../src/exceptions/custom.exception.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAE3D,8EAAoF;AAEpF,MAAM,gBAAiB,SAAQ,sBAAa;IAC1C,YAA6B,OAAoB,EAAmB,WAAwB;QAC1F,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,IAAI,mBAAU,CAAC,WAAW,CAAC,CAAC;QADvC,YAAO,GAAP,OAAO,CAAa;QAAmB,gBAAW,GAAX,WAAW,CAAa;IAE5F,CAAC;IAEM,IAAI,CAAC,QAAkB;QAC5B,MAAM,YAAY,GAAG,qCAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,IAAI,mBAAU,CAAC,WAAW,CAAC,CAAC;QACrG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;CACF;AAEQ,4CAAgB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validationExceptionFactory = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const custom_exception_1 = require("../exceptions/custom.exception");
|
|
6
|
+
const rest_wrapper_class_1 = require("../models/wrappers/rest-wrapper.class");
|
|
7
|
+
function validationExceptionFactory(_errors) {
|
|
8
|
+
const error = new rest_wrapper_class_1.RESTError('DATA_VALIDATION');
|
|
9
|
+
_errors.forEach((i) => {
|
|
10
|
+
error.validation = i;
|
|
11
|
+
});
|
|
12
|
+
return new custom_exception_1.HandledException([error], common_1.HttpStatus.UNPROCESSABLE_ENTITY);
|
|
13
|
+
}
|
|
14
|
+
exports.validationExceptionFactory = validationExceptionFactory;
|
|
15
|
+
//# sourceMappingURL=exception.factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exception.factory.js","sourceRoot":"","sources":["../../src/factories/exception.factory.ts"],"names":[],"mappings":";;;AAAA,2CAA4C;AAE5C,qEAAkE;AAClE,8EAAkE;AAElE,SAAS,0BAA0B,CAAC,OAA0B;IAC5D,MAAM,KAAK,GAAG,IAAI,8BAAS,CAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;QACzB,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,mCAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,mBAAU,CAAC,oBAAoB,CAAC,CAAC;AACxE,CAAC;AAEQ,gEAA0B"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseExceptionsFilter = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const custom_exception_1 = require("../exceptions/custom.exception");
|
|
6
|
+
const rest_wrapper_class_1 = require("../models/wrappers/rest-wrapper.class");
|
|
7
|
+
class BaseExceptionsFilter {
|
|
8
|
+
constructor(debug) {
|
|
9
|
+
this._debug = false;
|
|
10
|
+
this._debug = debug;
|
|
11
|
+
}
|
|
12
|
+
catch(exception, host) {
|
|
13
|
+
const context = host.switchToHttp();
|
|
14
|
+
const response = context.getResponse();
|
|
15
|
+
if (this._debug) {
|
|
16
|
+
console.log('BaseExceptionsFilter - name:', exception.constructor.name);
|
|
17
|
+
}
|
|
18
|
+
let handledException = null;
|
|
19
|
+
try {
|
|
20
|
+
switch (exception.constructor.name) {
|
|
21
|
+
case 'HandledException':
|
|
22
|
+
handledException = exception;
|
|
23
|
+
break;
|
|
24
|
+
case 'RESTError':
|
|
25
|
+
handledException = new custom_exception_1.HandledException(exception, exception.statusCode || common_1.HttpStatus.BAD_REQUEST);
|
|
26
|
+
break;
|
|
27
|
+
case 'BadRequestException':
|
|
28
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('BadRequestException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
29
|
+
break;
|
|
30
|
+
case 'UnauthorizedException':
|
|
31
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('UnauthorizedException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
32
|
+
break;
|
|
33
|
+
case 'NotFoundException':
|
|
34
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('METHOD_NOT_FOUND', exception.message)], common_1.HttpStatus.METHOD_NOT_ALLOWED);
|
|
35
|
+
break;
|
|
36
|
+
case 'ForbiddenException':
|
|
37
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('INVALID_API_TOKEN', 'invalid X-API-TOKEN received in headers')], common_1.HttpStatus.FORBIDDEN);
|
|
38
|
+
break;
|
|
39
|
+
case 'NotAcceptableException':
|
|
40
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('NotAcceptableException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
41
|
+
break;
|
|
42
|
+
case 'RequestTimeoutException':
|
|
43
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('RequestTimeoutException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
44
|
+
break;
|
|
45
|
+
case 'ConflictException':
|
|
46
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('ConflictException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
47
|
+
break;
|
|
48
|
+
case 'GoneException':
|
|
49
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('GoneException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
50
|
+
break;
|
|
51
|
+
case 'HttpVersionNotSupportedException':
|
|
52
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('HttpVersionNotSupportedException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
53
|
+
break;
|
|
54
|
+
case 'PayloadTooLargeException':
|
|
55
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('PayloadTooLargeException', exception.constructor.name)], common_1.HttpStatus.PAYLOAD_TOO_LARGE);
|
|
56
|
+
break;
|
|
57
|
+
case 'UnsupportedMediaTypeException':
|
|
58
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('UnsupportedMediaTypeException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
59
|
+
break;
|
|
60
|
+
case 'UnprocessableEntityException':
|
|
61
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('UnprocessableEntityException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
62
|
+
break;
|
|
63
|
+
case 'InternalServerErrorException':
|
|
64
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('InternalServerErrorException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
65
|
+
break;
|
|
66
|
+
case 'NotImplementedException':
|
|
67
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('NotImplementedException', exception.constructor.name)], common_1.HttpStatus.NOT_IMPLEMENTED);
|
|
68
|
+
break;
|
|
69
|
+
case 'ImATeapotException':
|
|
70
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('ImATeapotException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
71
|
+
break;
|
|
72
|
+
case 'MethodNotAllowedException':
|
|
73
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('MethodNotAllowedException', exception.constructor.name)], common_1.HttpStatus.METHOD_NOT_ALLOWED);
|
|
74
|
+
break;
|
|
75
|
+
case 'BadGatewayException':
|
|
76
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('BadGatewayException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
77
|
+
break;
|
|
78
|
+
case 'ServiceUnavailableException':
|
|
79
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('ServiceUnavailableException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
80
|
+
break;
|
|
81
|
+
case 'GatewayTimeoutException':
|
|
82
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('GatewayTimeoutException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
83
|
+
break;
|
|
84
|
+
case 'PreconditionFailedException':
|
|
85
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('PreconditionFailedException', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
86
|
+
break;
|
|
87
|
+
case 'TypeError':
|
|
88
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('TYPE_ERROR', exception.message)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
89
|
+
break;
|
|
90
|
+
case 'MongoError':
|
|
91
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('MONGO_ERROR', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
92
|
+
break;
|
|
93
|
+
case 'CastError':
|
|
94
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('CAST_ERROR', exception.message)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
95
|
+
break;
|
|
96
|
+
case 'ValidationError':
|
|
97
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('VALIDATION_ERROR', exception.message)], common_1.HttpStatus.UNPROCESSABLE_ENTITY);
|
|
98
|
+
break;
|
|
99
|
+
case 'MongoServerError':
|
|
100
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('MONGO_SERVER_ERROR', exception.message)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
101
|
+
break;
|
|
102
|
+
default:
|
|
103
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('UNKNOWN_EXCEPTION', exception.constructor.name)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
catch (ex) {
|
|
107
|
+
handledException = new custom_exception_1.HandledException([new rest_wrapper_class_1.RESTError('FILTER_EXCEPTION', ex)], common_1.HttpStatus.INTERNAL_SERVER_ERROR);
|
|
108
|
+
}
|
|
109
|
+
handledException.send(response);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
exports.BaseExceptionsFilter = BaseExceptionsFilter;
|
|
113
|
+
//# sourceMappingURL=base-exception.filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-exception.filter.js","sourceRoot":"","sources":["../../src/filters/base-exception.filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function escapeRegex(text: string): string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.escapeRegex = void 0;
|
|
4
|
+
function escapeRegex(text) {
|
|
5
|
+
return text.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&').replace(/-/g, '\\x2d');
|
|
6
|
+
}
|
|
7
|
+
exports.escapeRegex = escapeRegex;
|
|
8
|
+
//# sourceMappingURL=escape-regex.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escape-regex.function.js","sourceRoot":"","sources":["../../src/functions/escape-regex.function.ts"],"names":[],"mappings":";;;AAAA,SAAgB,WAAW,CAAC,IAAY;IAGtC,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC5E,CAAC;AAJD,kCAIC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function generateUUID(): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateUUID = void 0;
|
|
4
|
+
function generateUUID() {
|
|
5
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
6
|
+
const r = (Math.random() * 16) | 0;
|
|
7
|
+
const v = c === 'x' ? r : (r & 0x3) | 0x8;
|
|
8
|
+
return v.toString(16);
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
exports.generateUUID = generateUUID;
|
|
12
|
+
//# sourceMappingURL=generate-uuid.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-uuid.function.js","sourceRoot":"","sources":["../../src/functions/generate-uuid.function.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY;IACxB,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC1C,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC;AANH,oCAMG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function sizeOfJson(object: any): number;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sizeOfJson = void 0;
|
|
4
|
+
function sizeOfJson(object) {
|
|
5
|
+
const jsonString = JSON.stringify(object);
|
|
6
|
+
const bytes = new TextEncoder().encode(jsonString).length;
|
|
7
|
+
return bytes;
|
|
8
|
+
}
|
|
9
|
+
exports.sizeOfJson = sizeOfJson;
|
|
10
|
+
//# sourceMappingURL=json-size.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-size.function.js","sourceRoot":"","sources":["../../src/functions/json-size.function.ts"],"names":[],"mappings":";;;AAAA,SAAgB,UAAU,CAAC,MAAW;IAEpC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAG1C,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;IAE1D,OAAO,KAAK,CAAC;AACf,CAAC;AARD,gCAQC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getRandomNumberFromRange(min: number, max: number): number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getRandomNumberFromRange = void 0;
|
|
4
|
+
function getRandomNumberFromRange(min, max) {
|
|
5
|
+
if (min >= max) {
|
|
6
|
+
throw new Error("The minimum value must be less than the maximum value");
|
|
7
|
+
}
|
|
8
|
+
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
9
|
+
}
|
|
10
|
+
exports.getRandomNumberFromRange = getRandomNumberFromRange;
|
|
11
|
+
//# sourceMappingURL=random-range.function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"random-range.function.js","sourceRoot":"","sources":["../../src/functions/random-range.function.ts"],"names":[],"mappings":";;;AAAA,SAAgB,wBAAwB,CAAC,GAAW,EAAE,GAAW;IAC7D,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC7D,CAAC;AALD,4DAKC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function translitGeorgiaToLatin(georgianText: string): string;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.translitGeorgiaToLatin = void 0;
|
|
4
|
+
function translitGeorgiaToLatin(georgianText) {
|
|
5
|
+
const georgianChars = {
|
|
6
|
+
ა: 'a',
|
|
7
|
+
ბ: 'b',
|
|
8
|
+
გ: 'g',
|
|
9
|
+
დ: 'd',
|
|
10
|
+
ე: 'e',
|
|
11
|
+
ვ: 'v',
|
|
12
|
+
ზ: 'z',
|
|
13
|
+
თ: 't',
|
|
14
|
+
ი: 'i',
|
|
15
|
+
კ: 'k',
|
|
16
|
+
ლ: 'l',
|
|
17
|
+
მ: 'm',
|
|
18
|
+
ნ: 'n',
|
|
19
|
+
ო: 'o',
|
|
20
|
+
პ: 'p',
|
|
21
|
+
ჟ: 'zh',
|
|
22
|
+
რ: 'r',
|
|
23
|
+
ს: 's',
|
|
24
|
+
ტ: 't',
|
|
25
|
+
უ: 'u',
|
|
26
|
+
ფ: 'p',
|
|
27
|
+
ქ: 'q',
|
|
28
|
+
ღ: 'gh',
|
|
29
|
+
ყ: 'q',
|
|
30
|
+
შ: 'sh',
|
|
31
|
+
ჩ: 'ch',
|
|
32
|
+
ც: 'ts',
|
|
33
|
+
ძ: 'dz',
|
|
34
|
+
წ: 'ts',
|
|
35
|
+
ჭ: 'ch',
|
|
36
|
+
ხ: 'kh',
|
|
37
|
+
ჯ: 'j',
|
|
38
|
+
ჰ: 'h',
|
|
39
|
+
};
|
|
40
|
+
return georgianText
|
|
41
|
+
.split('')
|
|
42
|
+
.map((char) => georgianChars[char] || char)
|
|
43
|
+
.join('');
|
|
44
|
+
}
|
|
45
|
+
exports.translitGeorgiaToLatin = translitGeorgiaToLatin;
|
|
46
|
+
//# sourceMappingURL=transliterate-geo-to-latin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transliterate-geo-to-latin.js","sourceRoot":"","sources":["../../src/functions/transliterate-geo-to-latin.ts"],"names":[],"mappings":";;;AAAA,SAAgB,sBAAsB,CAAC,YAAoB;IACzD,MAAM,aAAa,GAA8B;QAC/C,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,GAAG;KACP,CAAC;IAEF,OAAO,YAAY;SAChB,KAAK,CAAC,EAAE,CAAC;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;SAC1C,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAzCD,wDAyCC"}
|