@lambdaorm/base 3.0.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.
Files changed (175) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +3 -0
  3. package/index.d.ts +8 -0
  4. package/index.js +25 -0
  5. package/index.js.map +1 -0
  6. package/jest-config.json +15 -0
  7. package/package.json +24 -0
  8. package/query/domain/data.d.ts +12 -0
  9. package/query/domain/data.js +63 -0
  10. package/query/domain/data.js.map +1 -0
  11. package/query/domain/index.d.ts +3 -0
  12. package/query/domain/index.js +20 -0
  13. package/query/domain/index.js.map +1 -0
  14. package/query/domain/query.d.ts +14 -0
  15. package/query/domain/query.js +3 -0
  16. package/query/domain/query.js.map +1 -0
  17. package/repository/application/index.d.ts +1 -0
  18. package/repository/application/index.js +18 -0
  19. package/repository/application/index.js.map +1 -0
  20. package/repository/application/repository.d.ts +35 -0
  21. package/repository/application/repository.js +3 -0
  22. package/repository/application/repository.js.map +1 -0
  23. package/repository/domain/actions.d.ts +11 -0
  24. package/repository/domain/actions.js +3 -0
  25. package/repository/domain/actions.js.map +1 -0
  26. package/repository/domain/index.d.ts +2 -0
  27. package/repository/domain/index.js +19 -0
  28. package/repository/domain/index.js.map +1 -0
  29. package/repository/domain/queryable.d.ts +320 -0
  30. package/repository/domain/queryable.js +226 -0
  31. package/repository/domain/queryable.js.map +1 -0
  32. package/schema/application/facade.d.ts +28 -0
  33. package/schema/application/facade.js +59 -0
  34. package/schema/application/facade.js.map +1 -0
  35. package/schema/application/index.d.ts +21 -0
  36. package/schema/application/index.js +38 -0
  37. package/schema/application/index.js.map +1 -0
  38. package/schema/application/services/config/dataSourceConfigService.d.ts +8 -0
  39. package/schema/application/services/config/dataSourceConfigService.js +38 -0
  40. package/schema/application/services/config/dataSourceConfigService.js.map +1 -0
  41. package/schema/application/services/config/domainConfigService.d.ts +7 -0
  42. package/schema/application/services/config/domainConfigService.js +13 -0
  43. package/schema/application/services/config/domainConfigService.js.map +1 -0
  44. package/schema/application/services/config/domainConfigServiceBase.d.ts +45 -0
  45. package/schema/application/services/config/domainConfigServiceBase.js +304 -0
  46. package/schema/application/services/config/domainConfigServiceBase.js.map +1 -0
  47. package/schema/application/services/config/mappingConfigService.d.ts +13 -0
  48. package/schema/application/services/config/mappingConfigService.js +32 -0
  49. package/schema/application/services/config/mappingConfigService.js.map +1 -0
  50. package/schema/application/services/config/mappingsConfigService.d.ts +10 -0
  51. package/schema/application/services/config/mappingsConfigService.js +43 -0
  52. package/schema/application/services/config/mappingsConfigService.js.map +1 -0
  53. package/schema/application/services/config/stageConfigService.d.ts +7 -0
  54. package/schema/application/services/config/stageConfigService.js +32 -0
  55. package/schema/application/services/config/stageConfigService.js.map +1 -0
  56. package/schema/application/services/config/viewConfigService.d.ts +12 -0
  57. package/schema/application/services/config/viewConfigService.js +36 -0
  58. package/schema/application/services/config/viewConfigService.js.map +1 -0
  59. package/schema/application/services/config/viewsConfigService.d.ts +9 -0
  60. package/schema/application/services/config/viewsConfigService.js +43 -0
  61. package/schema/application/services/config/viewsConfigService.js.map +1 -0
  62. package/schema/application/services/createEntitiesService.d.ts +10 -0
  63. package/schema/application/services/createEntitiesService.js +168 -0
  64. package/schema/application/services/createEntitiesService.js.map +1 -0
  65. package/schema/application/services/interpretSchemaDataService.d.ts +12 -0
  66. package/schema/application/services/interpretSchemaDataService.js +142 -0
  67. package/schema/application/services/interpretSchemaDataService.js.map +1 -0
  68. package/schema/application/services/routeService.d.ts +10 -0
  69. package/schema/application/services/routeService.js +35 -0
  70. package/schema/application/services/routeService.js.map +1 -0
  71. package/schema/application/services/schemaExtender.d.ts +37 -0
  72. package/schema/application/services/schemaExtender.js +472 -0
  73. package/schema/application/services/schemaExtender.js.map +1 -0
  74. package/schema/application/services/schemaService.d.ts +9 -0
  75. package/schema/application/services/schemaService.js +78 -0
  76. package/schema/application/services/schemaService.js.map +1 -0
  77. package/schema/application/state.d.ts +54 -0
  78. package/schema/application/state.js +176 -0
  79. package/schema/application/state.js.map +1 -0
  80. package/schema/application/useCases/clear.d.ts +9 -0
  81. package/schema/application/useCases/clear.js +149 -0
  82. package/schema/application/useCases/clear.js.map +1 -0
  83. package/schema/application/useCases/complete.d.ts +0 -0
  84. package/schema/application/useCases/complete.js +61 -0
  85. package/schema/application/useCases/complete.js.map +1 -0
  86. package/schema/application/useCases/create.d.ts +7 -0
  87. package/schema/application/useCases/create.js +21 -0
  88. package/schema/application/useCases/create.js.map +1 -0
  89. package/schema/application/useCases/getSchemaData.d.ts +8 -0
  90. package/schema/application/useCases/getSchemaData.js +16 -0
  91. package/schema/application/useCases/getSchemaData.js.map +1 -0
  92. package/schema/application/useCases/initialize.d.ts +8 -0
  93. package/schema/application/useCases/initialize.js +131 -0
  94. package/schema/application/useCases/initialize.js.map +1 -0
  95. package/schema/application/useCases/load.d.ts +17 -0
  96. package/schema/application/useCases/load.js +68 -0
  97. package/schema/application/useCases/load.js.map +1 -0
  98. package/schema/application/useCases/match.d.ts +21 -0
  99. package/schema/application/useCases/match.js +297 -0
  100. package/schema/application/useCases/match.js.map +1 -0
  101. package/schema/application/useCases/update.d.ts +9 -0
  102. package/schema/application/useCases/update.js +115 -0
  103. package/schema/application/useCases/update.js.map +1 -0
  104. package/schema/domain/dialect.d.ts +10 -0
  105. package/schema/domain/dialect.js +15 -0
  106. package/schema/domain/dialect.js.map +1 -0
  107. package/schema/domain/errors.d.ts +3 -0
  108. package/schema/domain/errors.js +11 -0
  109. package/schema/domain/errors.js.map +1 -0
  110. package/schema/domain/index.d.ts +6 -0
  111. package/schema/domain/index.js +23 -0
  112. package/schema/domain/index.js.map +1 -0
  113. package/schema/domain/ports/fileSchemaService.d.ts +5 -0
  114. package/schema/domain/ports/fileSchemaService.js +3 -0
  115. package/schema/domain/ports/fileSchemaService.js.map +1 -0
  116. package/schema/domain/schema.d.ts +207 -0
  117. package/schema/domain/schema.js +12 -0
  118. package/schema/domain/schema.js.map +1 -0
  119. package/schema/domain/sentence.d.ts +68 -0
  120. package/schema/domain/sentence.js +65 -0
  121. package/schema/domain/sentence.js.map +1 -0
  122. package/schema/domain/services.d.ts +20 -0
  123. package/schema/domain/services.js +3 -0
  124. package/schema/domain/services.js.map +1 -0
  125. package/schema/infrastructure/facadeBuilder.d.ts +9 -0
  126. package/schema/infrastructure/facadeBuilder.js +30 -0
  127. package/schema/infrastructure/facadeBuilder.js.map +1 -0
  128. package/schema/infrastructure/fileSchemaService.d.ts +11 -0
  129. package/schema/infrastructure/fileSchemaService.js +69 -0
  130. package/schema/infrastructure/fileSchemaService.js.map +1 -0
  131. package/schema/infrastructure/index.d.ts +3 -0
  132. package/schema/infrastructure/index.js +20 -0
  133. package/schema/infrastructure/index.js.map +1 -0
  134. package/schema/infrastructure/schemaFileHelper.d.ts +7 -0
  135. package/schema/infrastructure/schemaFileHelper.js +81 -0
  136. package/schema/infrastructure/schemaFileHelper.js.map +1 -0
  137. package/schema/infrastructure/schemaHelper.d.ts +23 -0
  138. package/schema/infrastructure/schemaHelper.js +132 -0
  139. package/schema/infrastructure/schemaHelper.js.map +1 -0
  140. package/schema/infrastructure/stateBuilder.d.ts +10 -0
  141. package/schema/infrastructure/stateBuilder.js +24 -0
  142. package/schema/infrastructure/stateBuilder.js.map +1 -0
  143. package/sentence/domain/index.d.ts +3 -0
  144. package/sentence/domain/index.js +20 -0
  145. package/sentence/domain/index.js.map +1 -0
  146. package/sentence/domain/metadata.d.ts +37 -0
  147. package/sentence/domain/metadata.js +3 -0
  148. package/sentence/domain/metadata.js.map +1 -0
  149. package/sentence/domain/sentence.d.ts +68 -0
  150. package/sentence/domain/sentence.js +128 -0
  151. package/sentence/domain/sentence.js.map +1 -0
  152. package/sentence/domain/services.d.ts +13 -0
  153. package/sentence/domain/services.js +3 -0
  154. package/sentence/domain/services.js.map +1 -0
  155. package/shared/domain/error.d.ts +9 -0
  156. package/shared/domain/error.js +25 -0
  157. package/shared/domain/error.js.map +1 -0
  158. package/shared/domain/ports/logger.d.ts +9 -0
  159. package/shared/domain/ports/logger.js +39 -0
  160. package/shared/domain/ports/logger.js.map +1 -0
  161. package/shared/index.d.ts +5 -0
  162. package/shared/index.js +22 -0
  163. package/shared/index.js.map +1 -0
  164. package/shared/infrastructure/consoleLogger.d.ts +6 -0
  165. package/shared/infrastructure/consoleLogger.js +41 -0
  166. package/shared/infrastructure/consoleLogger.js.map +1 -0
  167. package/shared/infrastructure/helper.d.ts +40 -0
  168. package/shared/infrastructure/helper.js +224 -0
  169. package/shared/infrastructure/helper.js.map +1 -0
  170. package/shared/infrastructure/loggerBuilder.d.ts +4 -0
  171. package/shared/infrastructure/loggerBuilder.js +15 -0
  172. package/shared/infrastructure/loggerBuilder.js.map +1 -0
  173. package/shared/infrastructure/winstonLogger.d.ts +7 -0
  174. package/shared/infrastructure/winstonLogger.js +57 -0
  175. package/shared/infrastructure/winstonLogger.js.map +1 -0
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Logger = exports.LogLevel = void 0;
13
+ var LogLevel;
14
+ (function (LogLevel) {
15
+ LogLevel["INFO"] = "info";
16
+ LogLevel["ERROR"] = "error";
17
+ })(LogLevel || (exports.LogLevel = LogLevel = {}));
18
+ class Logger {
19
+ log(message_1) {
20
+ return __awaiter(this, arguments, void 0, function* (message, level = LogLevel.INFO) {
21
+ if (level === LogLevel.ERROR) {
22
+ this.error(message);
23
+ }
24
+ else {
25
+ if (typeof message === 'string') {
26
+ this.info(message);
27
+ }
28
+ else if (typeof message === 'object') {
29
+ this.info(JSON.stringify(message));
30
+ }
31
+ else {
32
+ this.info(message.toISOString());
33
+ }
34
+ }
35
+ });
36
+ }
37
+ }
38
+ exports.Logger = Logger;
39
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../../src/lib/shared/domain/ports/logger.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,IAAY,QAGX;AAHD,WAAY,QAAQ;IACnB,yBAAa,CAAA;IACb,2BAAe,CAAA;AAChB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAED,MAAsB,MAAM;IACd,GAAG;6DAAE,OAAmB,EAAE,QAAkB,QAAQ,CAAC,IAAI;YACrE,IAAI,KAAK,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACpB,CAAC;iBAAM,CAAC;gBACP,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACnB,CAAC;qBAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACxC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;gBACnC,CAAC;qBAAM,CAAC;oBACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjC,CAAC;YACF,CAAC;QACF,CAAC;KAAA;CAID;AAjBD,wBAiBC"}
@@ -0,0 +1,5 @@
1
+ export * from './domain/error';
2
+ export * from './domain/ports/logger';
3
+ export * from './infrastructure/helper';
4
+ export * from './domain/ports/logger';
5
+ export * from './infrastructure/loggerBuilder';
@@ -0,0 +1,22 @@
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("./domain/error"), exports);
18
+ __exportStar(require("./domain/ports/logger"), exports);
19
+ __exportStar(require("./infrastructure/helper"), exports);
20
+ __exportStar(require("./domain/ports/logger"), exports);
21
+ __exportStar(require("./infrastructure/loggerBuilder"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/shared/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA8B;AAC9B,wDAAqC;AACrC,0DAAuC;AACvC,wDAAqC;AACrC,iEAA8C"}
@@ -0,0 +1,6 @@
1
+ import { Logger } from '../domain/ports/logger';
2
+ export declare class ConsoleLogger extends Logger {
3
+ protected error(message: string | any): Promise<void>;
4
+ protected info(message: string): Promise<void>;
5
+ private _log;
6
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ConsoleLogger = void 0;
13
+ const logger_1 = require("../domain/ports/logger");
14
+ class ConsoleLogger extends logger_1.Logger {
15
+ error(message) {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ if (typeof message === 'string') {
18
+ this._log('error', message);
19
+ }
20
+ else if (message instanceof Error) {
21
+ this._log('error', message.message);
22
+ }
23
+ else if (message instanceof Object) {
24
+ this._log('error', JSON.stringify(message));
25
+ }
26
+ else {
27
+ this._log('error', message.toISOString());
28
+ }
29
+ });
30
+ }
31
+ info(message) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ this._log('info', message);
34
+ });
35
+ }
36
+ _log(level, message) {
37
+ console.log(`${new Date().toISOString()} ${level.toUpperCase()}: ${message}`);
38
+ }
39
+ }
40
+ exports.ConsoleLogger = ConsoleLogger;
41
+ //# sourceMappingURL=consoleLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consoleLogger.js","sourceRoot":"","sources":["../../../../src/lib/shared/infrastructure/consoleLogger.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAA+C;AAE/C,MAAa,aAAc,SAAQ,eAAM;IACf,KAAK,CAAE,OAAmB;;YAClD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC5B,CAAC;iBAAM,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;YACpC,CAAC;iBAAM,IAAI,OAAO,YAAY,MAAM,EAAE,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;YAC5C,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;YAC1C,CAAC;QACF,CAAC;KAAA;IAEwB,IAAI,CAAE,OAAe;;YAC7C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3B,CAAC;KAAA;IAEO,IAAI,CAAE,KAAY,EAAE,OAAc;QACzC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC,CAAA;IAC9E,CAAC;CACD;AApBD,sCAoBC"}
@@ -0,0 +1,40 @@
1
+ import { H3lp, IStringHelper } from 'h3lp';
2
+ import { ExprH3lp } from '3xpr';
3
+ import { SchemaHelper } from '../../schema/infrastructure';
4
+ import { Logger } from '../domain/ports/logger';
5
+ import { SentenceAction, SentenceCategory, SentenceInfo, SentenceType } from '../../schema/domain';
6
+ export declare class YamlWrapper {
7
+ load(yaml?: string | null): any;
8
+ dump(obj?: any | null, options?: any): string;
9
+ }
10
+ export declare class QueryHelper {
11
+ private readonly str;
12
+ constructor(str: IStringHelper);
13
+ escapeId(name: string): string;
14
+ escape(name: string): string;
15
+ arrayToList(array: any[], timeZone: string): string;
16
+ format(sql: string, values: any[], stringifyObjects: string, timeZone: string): string;
17
+ dateToString(date: Date, timeZone?: string): string;
18
+ dateFormat(value: any, format?: string): string;
19
+ bufferToString(buffer: Buffer): string;
20
+ raw(sql: string): string;
21
+ transformParameter(name: string): string;
22
+ getSentenceType(action: SentenceAction): SentenceType;
23
+ getSentenceCategory(action: SentenceAction): SentenceCategory;
24
+ getInfo(action: SentenceAction, entity: string, type?: SentenceType): SentenceInfo;
25
+ }
26
+ export declare class UUIDWrapper {
27
+ v4(): string;
28
+ isUuid(id: string): boolean;
29
+ empty(): string;
30
+ fromString(text: string, namespace?: string): string;
31
+ jsonSchema(): any;
32
+ }
33
+ export declare class OrmBaseH3lp extends ExprH3lp {
34
+ readonly logger: Logger;
35
+ schema: SchemaHelper;
36
+ yaml: YamlWrapper;
37
+ query: QueryHelper;
38
+ uuid: UUIDWrapper;
39
+ constructor(h3lp: H3lp, logger: Logger);
40
+ }
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrmBaseH3lp = exports.UUIDWrapper = exports.QueryHelper = exports.YamlWrapper = void 0;
4
+ const _3xpr_1 = require("3xpr");
5
+ const infrastructure_1 = require("../../schema/infrastructure");
6
+ const domain_1 = require("../../schema/domain");
7
+ const YAML = require('js-yaml');
8
+ const UUID = require('uuid');
9
+ const SqlString = require('sqlstring');
10
+ const LUXON = require('luxon');
11
+ class YamlWrapper {
12
+ load(yaml) {
13
+ if (!yaml)
14
+ return undefined;
15
+ return YAML.load(yaml);
16
+ }
17
+ dump(obj, options) {
18
+ return YAML.dump(obj, options);
19
+ }
20
+ }
21
+ exports.YamlWrapper = YamlWrapper;
22
+ class QueryHelper {
23
+ // eslint-disable-next-line no-useless-constructor
24
+ constructor(str) {
25
+ this.str = str;
26
+ }
27
+ escapeId(name) {
28
+ return SqlString.escapeId(name);
29
+ }
30
+ escape(name) {
31
+ return SqlString.escape(name);
32
+ }
33
+ arrayToList(array, timeZone) {
34
+ return SqlString.arrayToList(array, timeZone);
35
+ }
36
+ format(sql, values, stringifyObjects, timeZone) {
37
+ return SqlString.format(sql, values, stringifyObjects, timeZone);
38
+ }
39
+ dateToString(date, timeZone = 'local') {
40
+ return SqlString.dateToString(date, timeZone);
41
+ }
42
+ dateFormat(value, format = 'iso') {
43
+ if (!format) {
44
+ throw new Error('Format is required');
45
+ }
46
+ if (!value) {
47
+ throw new Error('Value is required');
48
+ }
49
+ const date = value instanceof Date ? value : new Date(value);
50
+ const _format = format.toLowerCase();
51
+ if (_format === 'utc') {
52
+ return date.toISOString();
53
+ }
54
+ else if (_format === 'utc-without-ms') {
55
+ return date.toISOString().replace(/\.\d{3}Z$/, '.000Z');
56
+ }
57
+ else if (_format === 'utc-date') {
58
+ return new Date(LUXON.DateTime.fromJSDate(date).toFormat('yyyy-MM-dd 00:00:00')).toISOString();
59
+ }
60
+ else if (_format === 'iso') {
61
+ return LUXON.DateTime.fromJSDate(date).toISO();
62
+ }
63
+ else {
64
+ return LUXON.DateTime.fromJSDate(date).toFormat(format);
65
+ }
66
+ }
67
+ bufferToString(buffer) {
68
+ return SqlString.bufferToString(buffer);
69
+ }
70
+ raw(sql) {
71
+ return SqlString.raw(sql);
72
+ }
73
+ transformParameter(name) {
74
+ return this.str.replace(name, '.', '_');
75
+ // con la siguiente opción falla cuando se hace value=Helper.str.replace(value,"\\'","\\''")
76
+ // return string.replace(new RegExp(search, 'g'), replace)
77
+ }
78
+ getSentenceType(action) {
79
+ switch (action) {
80
+ case domain_1.SentenceAction.select:
81
+ return domain_1.SentenceType.dql;
82
+ case domain_1.SentenceAction.objects:
83
+ case domain_1.SentenceAction.tables:
84
+ case domain_1.SentenceAction.views:
85
+ case domain_1.SentenceAction.foreignKeys:
86
+ case domain_1.SentenceAction.primaryKeys:
87
+ case domain_1.SentenceAction.uniqueKeys:
88
+ case domain_1.SentenceAction.indexes:
89
+ case domain_1.SentenceAction.sequences:
90
+ case domain_1.SentenceAction.partitions:
91
+ return domain_1.SentenceType.metadata;
92
+ case domain_1.SentenceAction.insert:
93
+ case domain_1.SentenceAction.insertConditional:
94
+ case domain_1.SentenceAction.bulkInsert:
95
+ case domain_1.SentenceAction.bulkDelete:
96
+ case domain_1.SentenceAction.update:
97
+ case domain_1.SentenceAction.delete:
98
+ case domain_1.SentenceAction.merge:
99
+ case domain_1.SentenceAction.bulkMerge:
100
+ case domain_1.SentenceAction.upsert:
101
+ return domain_1.SentenceType.dml;
102
+ case domain_1.SentenceAction.truncateEntity:
103
+ case domain_1.SentenceAction.createEntity:
104
+ case domain_1.SentenceAction.createSequence:
105
+ case domain_1.SentenceAction.createFk:
106
+ case domain_1.SentenceAction.createIndex:
107
+ case domain_1.SentenceAction.alterProperty:
108
+ case domain_1.SentenceAction.addProperty:
109
+ case domain_1.SentenceAction.addPk:
110
+ case domain_1.SentenceAction.addUk:
111
+ case domain_1.SentenceAction.addFk:
112
+ case domain_1.SentenceAction.dropSequence:
113
+ case domain_1.SentenceAction.dropEntity:
114
+ case domain_1.SentenceAction.dropProperty:
115
+ case domain_1.SentenceAction.dropPk:
116
+ case domain_1.SentenceAction.dropUk:
117
+ case domain_1.SentenceAction.dropFk:
118
+ case domain_1.SentenceAction.dropIndex:
119
+ return domain_1.SentenceType.ddl;
120
+ default:
121
+ throw new Error(`Invalid action ${action}`);
122
+ }
123
+ }
124
+ getSentenceCategory(action) {
125
+ switch (action) {
126
+ case domain_1.SentenceAction.select:
127
+ case domain_1.SentenceAction.objects:
128
+ case domain_1.SentenceAction.tables:
129
+ case domain_1.SentenceAction.views:
130
+ case domain_1.SentenceAction.foreignKeys:
131
+ case domain_1.SentenceAction.primaryKeys:
132
+ case domain_1.SentenceAction.uniqueKeys:
133
+ case domain_1.SentenceAction.indexes:
134
+ case domain_1.SentenceAction.sequences:
135
+ case domain_1.SentenceAction.partitions:
136
+ return domain_1.SentenceCategory.select;
137
+ case domain_1.SentenceAction.insert:
138
+ case domain_1.SentenceAction.insertConditional:
139
+ case domain_1.SentenceAction.bulkInsert:
140
+ return domain_1.SentenceCategory.insert;
141
+ case domain_1.SentenceAction.bulkDelete:
142
+ case domain_1.SentenceAction.delete:
143
+ return domain_1.SentenceCategory.delete;
144
+ case domain_1.SentenceAction.update:
145
+ return domain_1.SentenceCategory.update;
146
+ case domain_1.SentenceAction.merge:
147
+ case domain_1.SentenceAction.bulkMerge:
148
+ case domain_1.SentenceAction.upsert:
149
+ return domain_1.SentenceCategory.upsert;
150
+ case domain_1.SentenceAction.truncateEntity:
151
+ return domain_1.SentenceCategory.truncate;
152
+ case domain_1.SentenceAction.createEntity:
153
+ case domain_1.SentenceAction.createSequence:
154
+ case domain_1.SentenceAction.createFk:
155
+ case domain_1.SentenceAction.createIndex:
156
+ return domain_1.SentenceCategory.create;
157
+ case domain_1.SentenceAction.alterProperty:
158
+ return domain_1.SentenceCategory.alter;
159
+ case domain_1.SentenceAction.addProperty:
160
+ case domain_1.SentenceAction.addPk:
161
+ case domain_1.SentenceAction.addUk:
162
+ case domain_1.SentenceAction.addFk:
163
+ return domain_1.SentenceCategory.add;
164
+ case domain_1.SentenceAction.dropSequence:
165
+ case domain_1.SentenceAction.dropEntity:
166
+ case domain_1.SentenceAction.dropProperty:
167
+ case domain_1.SentenceAction.dropPk:
168
+ case domain_1.SentenceAction.dropUk:
169
+ case domain_1.SentenceAction.dropFk:
170
+ case domain_1.SentenceAction.dropIndex:
171
+ return domain_1.SentenceCategory.drop;
172
+ case domain_1.SentenceAction.undefined:
173
+ return domain_1.SentenceCategory.undefined;
174
+ default:
175
+ throw new Error(`Invalid action ${action}`);
176
+ }
177
+ }
178
+ getInfo(action, entity, type) {
179
+ const category = this.getSentenceCategory(action);
180
+ const _type = type || this.getSentenceType(action);
181
+ return {
182
+ entity,
183
+ action,
184
+ category,
185
+ type: _type,
186
+ // for retro-compatibility
187
+ read: category === domain_1.SentenceCategory.select,
188
+ write: category !== domain_1.SentenceCategory.select,
189
+ ddl: _type === domain_1.SentenceType.ddl,
190
+ dml: _type === domain_1.SentenceType.dml || _type === domain_1.SentenceType.dql
191
+ };
192
+ }
193
+ }
194
+ exports.QueryHelper = QueryHelper;
195
+ class UUIDWrapper {
196
+ v4() {
197
+ return UUID.v4();
198
+ }
199
+ isUuid(id) {
200
+ return UUID.isUuid(id);
201
+ }
202
+ empty() {
203
+ return UUID.empty();
204
+ }
205
+ fromString(text, namespace) {
206
+ return UUID.fromString(text, namespace);
207
+ }
208
+ jsonSchema() {
209
+ return UUID.jsonSchema();
210
+ }
211
+ }
212
+ exports.UUIDWrapper = UUIDWrapper;
213
+ class OrmBaseH3lp extends _3xpr_1.ExprH3lp {
214
+ constructor(h3lp, logger) {
215
+ super(h3lp);
216
+ this.logger = logger;
217
+ this.schema = new infrastructure_1.SchemaHelper(this.str);
218
+ this.yaml = new YamlWrapper();
219
+ this.query = new QueryHelper(h3lp.str);
220
+ this.uuid = new UUIDWrapper();
221
+ }
222
+ }
223
+ exports.OrmBaseH3lp = OrmBaseH3lp;
224
+ //# sourceMappingURL=helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/lib/shared/infrastructure/helper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Logger } from '../domain/ports/logger';
2
+ export declare class LoggerBuilder {
3
+ build(name?: string): Logger;
4
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LoggerBuilder = void 0;
4
+ const consoleLogger_1 = require("./consoleLogger");
5
+ const winstonLogger_1 = require("./winstonLogger");
6
+ class LoggerBuilder {
7
+ build(name) {
8
+ if (name === 'winston') {
9
+ return new winstonLogger_1.WinstonLogger();
10
+ }
11
+ return new consoleLogger_1.ConsoleLogger();
12
+ }
13
+ }
14
+ exports.LoggerBuilder = LoggerBuilder;
15
+ //# sourceMappingURL=loggerBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loggerBuilder.js","sourceRoot":"","sources":["../../../../src/lib/shared/infrastructure/loggerBuilder.ts"],"names":[],"mappings":";;;AACA,mDAA+C;AAC/C,mDAA+C;AAE/C,MAAa,aAAa;IAClB,KAAK,CAAE,IAAY;QACzB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,IAAI,6BAAa,EAAE,CAAA;QAC3B,CAAC;QACD,OAAO,IAAI,6BAAa,EAAE,CAAA;IAC3B,CAAC;CACD;AAPD,sCAOC"}
@@ -0,0 +1,7 @@
1
+ import { Logger } from '../domain/ports/logger';
2
+ export declare class WinstonLogger extends Logger {
3
+ private readonly logger;
4
+ constructor();
5
+ protected info(message: string): Promise<void>;
6
+ protected error(message: string | any): Promise<void>;
7
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WinstonLogger = void 0;
13
+ const logger_1 = require("../domain/ports/logger");
14
+ const { transports, createLogger, format } = require('winston');
15
+ class WinstonLogger extends logger_1.Logger {
16
+ constructor() {
17
+ super();
18
+ this.logger = createLogger({
19
+ level: 'info',
20
+ format: format.combine(format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss.SSS' }),
21
+ // utilFormatter(), // <-- this is what changed
22
+ format.colorize(), format.printf(({ level, message, label, timestamp }) => `${timestamp} ${label || '-'} ${level}: ${message}`)),
23
+ defaultMeta: { service: 'user-service' },
24
+ transports: [
25
+ new transports.Console({ timestamp: true }),
26
+ new transports.File({ filename: 'error.log', level: 'error', timestamp: true }),
27
+ new transports.File({ filename: 'combined.log', timestamp: true })
28
+ ]
29
+ });
30
+ if (process.env.NODE_ENV !== 'production') {
31
+ this.logger.add(new transports.Console({ format: format.simple() }));
32
+ }
33
+ }
34
+ info(message) {
35
+ return __awaiter(this, void 0, void 0, function* () {
36
+ this.logger.info(message);
37
+ });
38
+ }
39
+ error(message) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ if (typeof message === 'string') {
42
+ this.logger('error', message);
43
+ }
44
+ else if (message instanceof Error) {
45
+ this.logger('error', message.message);
46
+ }
47
+ else if (message instanceof Object) {
48
+ this.logger('error', JSON.stringify(message));
49
+ }
50
+ else {
51
+ this.logger('error', message.toISOString());
52
+ }
53
+ });
54
+ }
55
+ }
56
+ exports.WinstonLogger = WinstonLogger;
57
+ //# sourceMappingURL=winstonLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"winstonLogger.js","sourceRoot":"","sources":["../../../../src/lib/shared/infrastructure/winstonLogger.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAA+C;AAC/C,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;AAE/D,MAAa,aAAc,SAAQ,eAAM;IAExC;QACC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;YAC1B,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM,CAAC,OAAO,CACrB,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;YACvD,+CAA+C;YAC/C,MAAM,CAAC,QAAQ,EAAE,EACjB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAyE,EAAE,EAAE,CAC7H,GAAG,SAAS,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,KAAK,OAAO,EAAE,CACnD,CACD;YACD,WAAW,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;YACxC,UAAU,EAAE;gBACX,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;gBAC3C,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;gBAC/E,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;aAClE;SACD,CAAC,CAAA;QACF,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACrE,CAAC;IACF,CAAC;IAEwB,IAAI,CAAE,OAAe;;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1B,CAAC;KAAA;IAEwB,KAAK,CAAE,OAAmB;;YAClD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC9B,CAAC;iBAAM,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;YACtC,CAAC;iBAAM,IAAI,OAAO,YAAY,MAAM,EAAE,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;YAC9C,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;YAC5C,CAAC;QACF,CAAC;KAAA;CACD;AAzCD,sCAyCC"}