@neogroup/neorm 0.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 (161) hide show
  1. package/README.md +1019 -0
  2. package/dist/connection.d.ts +10 -0
  3. package/dist/connection.js +3 -0
  4. package/dist/connection.js.map +1 -0
  5. package/dist/data-connection.d.ts +24 -0
  6. package/dist/data-connection.js +99 -0
  7. package/dist/data-connection.js.map +1 -0
  8. package/dist/data-set.d.ts +3 -0
  9. package/dist/data-set.js +3 -0
  10. package/dist/data-set.js.map +1 -0
  11. package/dist/data-source.d.ts +23 -0
  12. package/dist/data-source.js +56 -0
  13. package/dist/data-source.js.map +1 -0
  14. package/dist/data-table.d.ts +19 -0
  15. package/dist/data-table.js +75 -0
  16. package/dist/data-table.js.map +1 -0
  17. package/dist/db.d.ts +57 -0
  18. package/dist/db.js +213 -0
  19. package/dist/db.js.map +1 -0
  20. package/dist/entities/decorators.d.ts +50 -0
  21. package/dist/entities/decorators.js +305 -0
  22. package/dist/entities/decorators.js.map +1 -0
  23. package/dist/entities/entity-query.d.ts +60 -0
  24. package/dist/entities/entity-query.js +305 -0
  25. package/dist/entities/entity-query.js.map +1 -0
  26. package/dist/entities/entity.d.ts +1 -0
  27. package/dist/entities/entity.js +3 -0
  28. package/dist/entities/entity.js.map +1 -0
  29. package/dist/entities/index.d.ts +4 -0
  30. package/dist/entities/index.js +20 -0
  31. package/dist/entities/index.js.map +1 -0
  32. package/dist/entities/relationship.d.ts +15 -0
  33. package/dist/entities/relationship.js +24 -0
  34. package/dist/entities/relationship.js.map +1 -0
  35. package/dist/index.d.ts +10 -0
  36. package/dist/index.js +32 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/query/builders/default-query-builder.d.ts +87 -0
  39. package/dist/query/builders/default-query-builder.js +524 -0
  40. package/dist/query/builders/default-query-builder.js.map +1 -0
  41. package/dist/query/builders/index.d.ts +2 -0
  42. package/dist/query/builders/index.js +19 -0
  43. package/dist/query/builders/index.js.map +1 -0
  44. package/dist/query/builders/query-builder.d.ts +5 -0
  45. package/dist/query/builders/query-builder.js +7 -0
  46. package/dist/query/builders/query-builder.js.map +1 -0
  47. package/dist/query/conditions.d.ts +60 -0
  48. package/dist/query/conditions.js +142 -0
  49. package/dist/query/conditions.js.map +1 -0
  50. package/dist/query/delete-query.d.ts +8 -0
  51. package/dist/query/delete-query.js +17 -0
  52. package/dist/query/delete-query.js.map +1 -0
  53. package/dist/query/features/has-alias.d.ts +6 -0
  54. package/dist/query/features/has-alias.js +17 -0
  55. package/dist/query/features/has-alias.js.map +1 -0
  56. package/dist/query/features/has-distinct.d.ts +6 -0
  57. package/dist/query/features/has-distinct.js +20 -0
  58. package/dist/query/features/has-distinct.js.map +1 -0
  59. package/dist/query/features/has-field-values.d.ts +9 -0
  60. package/dist/query/features/has-field-values.js +27 -0
  61. package/dist/query/features/has-field-values.js.map +1 -0
  62. package/dist/query/features/has-group-by-fields.d.ts +7 -0
  63. package/dist/query/features/has-group-by-fields.js +21 -0
  64. package/dist/query/features/has-group-by-fields.js.map +1 -0
  65. package/dist/query/features/has-having-conditions.d.ts +13 -0
  66. package/dist/query/features/has-having-conditions.js +28 -0
  67. package/dist/query/features/has-having-conditions.js.map +1 -0
  68. package/dist/query/features/has-joins.d.ts +41 -0
  69. package/dist/query/features/has-joins.js +67 -0
  70. package/dist/query/features/has-joins.js.map +1 -0
  71. package/dist/query/features/has-limit.d.ts +6 -0
  72. package/dist/query/features/has-limit.js +20 -0
  73. package/dist/query/features/has-limit.js.map +1 -0
  74. package/dist/query/features/has-offset.d.ts +6 -0
  75. package/dist/query/features/has-offset.js +20 -0
  76. package/dist/query/features/has-offset.js.map +1 -0
  77. package/dist/query/features/has-order-by-fields.d.ts +15 -0
  78. package/dist/query/features/has-order-by-fields.js +38 -0
  79. package/dist/query/features/has-order-by-fields.js.map +1 -0
  80. package/dist/query/features/has-select-fields.d.ts +11 -0
  81. package/dist/query/features/has-select-fields.js +21 -0
  82. package/dist/query/features/has-select-fields.js.map +1 -0
  83. package/dist/query/features/has-table.d.ts +7 -0
  84. package/dist/query/features/has-table.js +20 -0
  85. package/dist/query/features/has-table.js.map +1 -0
  86. package/dist/query/features/has-unions.d.ts +13 -0
  87. package/dist/query/features/has-unions.js +21 -0
  88. package/dist/query/features/has-unions.js.map +1 -0
  89. package/dist/query/features/has-when.d.ts +3 -0
  90. package/dist/query/features/has-when.js +13 -0
  91. package/dist/query/features/has-when.js.map +1 -0
  92. package/dist/query/features/has-where-conditions.d.ts +35 -0
  93. package/dist/query/features/has-where-conditions.js +92 -0
  94. package/dist/query/features/has-where-conditions.js.map +1 -0
  95. package/dist/query/features/index.d.ts +14 -0
  96. package/dist/query/features/index.js +31 -0
  97. package/dist/query/features/index.js.map +1 -0
  98. package/dist/query/fields.d.ts +12 -0
  99. package/dist/query/fields.js +18 -0
  100. package/dist/query/fields.js.map +1 -0
  101. package/dist/query/index.d.ts +11 -0
  102. package/dist/query/index.js +28 -0
  103. package/dist/query/index.js.map +1 -0
  104. package/dist/query/insert-query.d.ts +8 -0
  105. package/dist/query/insert-query.js +17 -0
  106. package/dist/query/insert-query.js.map +1 -0
  107. package/dist/query/query.d.ts +2 -0
  108. package/dist/query/query.js +7 -0
  109. package/dist/query/query.js.map +1 -0
  110. package/dist/query/select-query.d.ts +9 -0
  111. package/dist/query/select-query.js +33 -0
  112. package/dist/query/select-query.js.map +1 -0
  113. package/dist/query/statement.d.ts +4 -0
  114. package/dist/query/statement.js +3 -0
  115. package/dist/query/statement.js.map +1 -0
  116. package/dist/query/table.d.ts +6 -0
  117. package/dist/query/table.js +3 -0
  118. package/dist/query/table.js.map +1 -0
  119. package/dist/query/update-query.d.ts +8 -0
  120. package/dist/query/update-query.js +17 -0
  121. package/dist/query/update-query.js.map +1 -0
  122. package/dist/sources/mysql/index.d.ts +3 -0
  123. package/dist/sources/mysql/index.js +20 -0
  124. package/dist/sources/mysql/index.js.map +1 -0
  125. package/dist/sources/mysql/mysql-connection.d.ts +14 -0
  126. package/dist/sources/mysql/mysql-connection.js +36 -0
  127. package/dist/sources/mysql/mysql-connection.js.map +1 -0
  128. package/dist/sources/mysql/mysql-data-source.d.ts +24 -0
  129. package/dist/sources/mysql/mysql-data-source.js +72 -0
  130. package/dist/sources/mysql/mysql-data-source.js.map +1 -0
  131. package/dist/sources/mysql/mysql-query-builder.d.ts +8 -0
  132. package/dist/sources/mysql/mysql-query-builder.js +28 -0
  133. package/dist/sources/mysql/mysql-query-builder.js.map +1 -0
  134. package/dist/sources/postgres/index.d.ts +2 -0
  135. package/dist/sources/postgres/index.js +19 -0
  136. package/dist/sources/postgres/index.js.map +1 -0
  137. package/dist/sources/postgres/postgres-connection.d.ts +13 -0
  138. package/dist/sources/postgres/postgres-connection.js +40 -0
  139. package/dist/sources/postgres/postgres-connection.js.map +1 -0
  140. package/dist/sources/postgres/postgres-data-source.d.ts +24 -0
  141. package/dist/sources/postgres/postgres-data-source.js +73 -0
  142. package/dist/sources/postgres/postgres-data-source.js.map +1 -0
  143. package/dist/sources/postgres/postgres-query-builder.d.ts +5 -0
  144. package/dist/sources/postgres/postgres-query-builder.js +13 -0
  145. package/dist/sources/postgres/postgres-query-builder.js.map +1 -0
  146. package/dist/sources/sqlite/index.d.ts +3 -0
  147. package/dist/sources/sqlite/index.js +20 -0
  148. package/dist/sources/sqlite/index.js.map +1 -0
  149. package/dist/sources/sqlite/sqlite-connection.d.ts +14 -0
  150. package/dist/sources/sqlite/sqlite-connection.js +37 -0
  151. package/dist/sources/sqlite/sqlite-connection.js.map +1 -0
  152. package/dist/sources/sqlite/sqlite-data-source.d.ts +11 -0
  153. package/dist/sources/sqlite/sqlite-data-source.js +34 -0
  154. package/dist/sources/sqlite/sqlite-data-source.js.map +1 -0
  155. package/dist/sources/sqlite/sqlite-query-builder.d.ts +6 -0
  156. package/dist/sources/sqlite/sqlite-query-builder.js +23 -0
  157. package/dist/sources/sqlite/sqlite-query-builder.js.map +1 -0
  158. package/dist/utilities.d.ts +2 -0
  159. package/dist/utilities.js +17 -0
  160. package/dist/utilities.js.map +1 -0
  161. package/package.json +56 -0
@@ -0,0 +1,24 @@
1
+ import { Connection } from '../../connection';
2
+ import { DataSource } from '../../data-source';
3
+ export declare class MysqlDataSource extends DataSource {
4
+ private lib;
5
+ private pool;
6
+ private host;
7
+ private port;
8
+ private databaseName;
9
+ private username;
10
+ private password;
11
+ constructor();
12
+ setHost(host: string): void;
13
+ getHost(): string;
14
+ setPort(port: number): void;
15
+ getPort(): number;
16
+ setDatabaseName(databaseName: string): void;
17
+ getDatabaseName(): string;
18
+ setUsername(username: string): void;
19
+ getUsername(): string;
20
+ setPassword(password: string): void;
21
+ getPassword(): string;
22
+ close(): Promise<void>;
23
+ protected requestConnection(): Promise<Connection>;
24
+ }
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MysqlDataSource = void 0;
4
+ const data_source_1 = require("../../data-source");
5
+ const mysql_connection_1 = require("./mysql-connection");
6
+ const mysql_query_builder_1 = require("./mysql-query-builder");
7
+ class MysqlDataSource extends data_source_1.DataSource {
8
+ constructor() {
9
+ super(new mysql_query_builder_1.MysqlQueryBuilder());
10
+ try {
11
+ this.lib = require('mysql2/promise');
12
+ }
13
+ catch (e) {
14
+ throw new Error('MySQL module not found. Please install it via "npm install -S mysql2"');
15
+ }
16
+ this.host = '';
17
+ this.port = 3306;
18
+ this.databaseName = '';
19
+ this.username = '';
20
+ this.password = '';
21
+ }
22
+ setHost(host) {
23
+ this.host = host;
24
+ }
25
+ getHost() {
26
+ return this.host;
27
+ }
28
+ setPort(port) {
29
+ this.port = port;
30
+ }
31
+ getPort() {
32
+ return this.port;
33
+ }
34
+ setDatabaseName(databaseName) {
35
+ this.databaseName = databaseName;
36
+ }
37
+ getDatabaseName() {
38
+ return this.databaseName;
39
+ }
40
+ setUsername(username) {
41
+ this.username = username;
42
+ }
43
+ getUsername() {
44
+ return this.username;
45
+ }
46
+ setPassword(password) {
47
+ this.password = password;
48
+ }
49
+ getPassword() {
50
+ return this.password;
51
+ }
52
+ async close() {
53
+ if (this.pool) {
54
+ await this.pool.end();
55
+ this.pool = null;
56
+ }
57
+ }
58
+ async requestConnection() {
59
+ if (!this.pool) {
60
+ this.pool = this.lib.createPool({
61
+ host: this.getHost(),
62
+ port: this.getPort(),
63
+ database: this.getDatabaseName(),
64
+ user: this.getUsername(),
65
+ password: this.getPassword()
66
+ });
67
+ }
68
+ return new mysql_connection_1.MysqlConnection(await this.pool.getConnection());
69
+ }
70
+ }
71
+ exports.MysqlDataSource = MysqlDataSource;
72
+ //# sourceMappingURL=mysql-data-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql-data-source.js","sourceRoot":"","sources":["../../../src/sources/mysql/mysql-data-source.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAC9C,yDAAoD;AACpD,+DAAyD;AAEzD,MAAa,eAAgB,SAAQ,wBAAU;IAS7C;QACE,KAAK,CAAC,IAAI,uCAAiB,EAAE,CAAC,CAAA;QAE9B,IAAI;YACF,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;SACrC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;SACzF;QAED,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;IACpB,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAEM,eAAe,CAAC,YAAoB;QACzC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IAClC,CAAC;IAEM,eAAe;QACpB,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAEM,WAAW,CAAC,QAAgB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,WAAW,CAAC,QAAgB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;SACjB;IACH,CAAC;IAES,KAAK,CAAC,iBAAiB;QAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC9B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;gBACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;gBACpB,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE;gBAChC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE;gBACxB,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;aAC7B,CAAC,CAAA;SACH;QAED,OAAO,IAAI,kCAAe,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;IAC7D,CAAC;CACF;AArFD,0CAqFC"}
@@ -0,0 +1,8 @@
1
+ import { DefaultQueryBuilder } from '../../query/builders/default-query-builder';
2
+ import { Statement } from '../../query/statement';
3
+ import { Table } from '../../query/table';
4
+ export declare class MysqlQueryBuilder extends DefaultQueryBuilder {
5
+ private static readonly BACKTICK;
6
+ protected buildTable(table: Table, statement: Statement): void;
7
+ protected buildFieldName(name: string, statement: Statement): void;
8
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MysqlQueryBuilder = void 0;
4
+ const default_query_builder_1 = require("../../query/builders/default-query-builder");
5
+ class MysqlQueryBuilder extends default_query_builder_1.DefaultQueryBuilder {
6
+ // MySQL usa backticks para escapar identifiers (tablas, campos)
7
+ // evitando colisiones con palabras reservadas.
8
+ // buildTable y buildFieldName son suficientes — buildRawFieldString los invoca
9
+ // automáticamente al parsear notaciones 'tabla.campo' y 'FUNC(tabla.campo)'.
10
+ buildTable(table, statement) {
11
+ if (typeof table === 'string' || table instanceof String) {
12
+ statement.sql += MysqlQueryBuilder.BACKTICK + table + MysqlQueryBuilder.BACKTICK;
13
+ }
14
+ else {
15
+ if (table.schema) {
16
+ statement.sql += MysqlQueryBuilder.BACKTICK + table.schema + MysqlQueryBuilder.BACKTICK;
17
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.POINT;
18
+ }
19
+ statement.sql += MysqlQueryBuilder.BACKTICK + table.name + MysqlQueryBuilder.BACKTICK;
20
+ }
21
+ }
22
+ buildFieldName(name, statement) {
23
+ statement.sql += MysqlQueryBuilder.BACKTICK + name + MysqlQueryBuilder.BACKTICK;
24
+ }
25
+ }
26
+ exports.MysqlQueryBuilder = MysqlQueryBuilder;
27
+ MysqlQueryBuilder.BACKTICK = '`';
28
+ //# sourceMappingURL=mysql-query-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql-query-builder.js","sourceRoot":"","sources":["../../../src/sources/mysql/mysql-query-builder.ts"],"names":[],"mappings":";;;AAAA,sFAAgF;AAIhF,MAAa,iBAAkB,SAAQ,2CAAmB;IAGxD,gEAAgE;IAChE,+CAA+C;IAC/C,+EAA+E;IAC/E,6EAA6E;IAEnE,UAAU,CAAC,KAAY,EAAE,SAAoB;QACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,EAAE;YACxD,SAAS,CAAC,GAAG,IAAI,iBAAiB,CAAC,QAAQ,GAAG,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAA;SACjF;aAAM;YACL,IAAI,KAAK,CAAC,MAAM,EAAE;gBAChB,SAAS,CAAC,GAAG,IAAI,iBAAiB,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAA;gBACvF,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,KAAK,CAAA;aAC3C;YAED,SAAS,CAAC,GAAG,IAAI,iBAAiB,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAA;SACtF;IACH,CAAC;IAES,cAAc,CAAC,IAAY,EAAE,SAAoB;QACzD,SAAS,CAAC,GAAG,IAAI,iBAAiB,CAAC,QAAQ,GAAG,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAA;IACjF,CAAC;;AAvBH,8CAwBC;AAvByB,0BAAQ,GAAG,GAAG,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './postgres-connection';
2
+ export * from './postgres-data-source';
@@ -0,0 +1,19 @@
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("./postgres-connection"), exports);
18
+ __exportStar(require("./postgres-data-source"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sources/postgres/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAqC;AACrC,yDAAsC"}
@@ -0,0 +1,13 @@
1
+ import { Connection } from '../../connection';
2
+ import { DataSet } from '../../data-set';
3
+ export declare class PostgresConnection implements Connection {
4
+ private client;
5
+ constructor(client: any);
6
+ query(sql: string, bindings?: Array<any>): Promise<Array<DataSet>>;
7
+ execute(sql: string, bindings?: Array<any>): Promise<number>;
8
+ lastInsertId(): Promise<number>;
9
+ beginTransaction(): Promise<void>;
10
+ rollbackTransaction(): Promise<void>;
11
+ commitTransaction(): Promise<void>;
12
+ close(): Promise<void>;
13
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PostgresConnection = void 0;
4
+ class PostgresConnection {
5
+ constructor(client) {
6
+ this.client = client;
7
+ }
8
+ async query(sql, bindings) {
9
+ const response = await this.client.query(sql, bindings);
10
+ return response.rows;
11
+ }
12
+ async execute(sql, bindings) {
13
+ const response = await this.client.query(sql, bindings);
14
+ return response.rowCount;
15
+ }
16
+ async lastInsertId() {
17
+ var _a, _b;
18
+ try {
19
+ const result = await this.client.query('SELECT lastval() AS id');
20
+ return Number((_b = (_a = result.rows[0]) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : 0);
21
+ }
22
+ catch (_c) {
23
+ return 0;
24
+ }
25
+ }
26
+ async beginTransaction() {
27
+ await this.client.query('BEGIN');
28
+ }
29
+ async rollbackTransaction() {
30
+ await this.client.query('ROLLBACK');
31
+ }
32
+ async commitTransaction() {
33
+ await this.client.query('COMMIT');
34
+ }
35
+ async close() {
36
+ await this.client.release();
37
+ }
38
+ }
39
+ exports.PostgresConnection = PostgresConnection;
40
+ //# sourceMappingURL=postgres-connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-connection.js","sourceRoot":"","sources":["../../../src/sources/postgres/postgres-connection.ts"],"names":[],"mappings":";;;AAGA,MAAa,kBAAkB;IAG7B,YAAY,MAAW;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,QAAqB;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QAEvD,OAAO,QAAQ,CAAC,IAAI,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,QAAqB;QACrD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QAEvD,OAAO,QAAQ,CAAC,QAAQ,CAAA;IAC1B,CAAC;IAEM,KAAK,CAAC,YAAY;;QACvB,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;YAChE,OAAO,MAAM,CAAC,MAAA,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,0CAAE,EAAE,mCAAI,CAAC,CAAC,CAAA;SACvC;QAAC,WAAM;YACN,OAAO,CAAC,CAAA;SACT;IACH,CAAC;IAEM,KAAK,CAAC,gBAAgB;QAC3B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IAC7B,CAAC;CACF;AA3CD,gDA2CC"}
@@ -0,0 +1,24 @@
1
+ import { Connection } from '../../connection';
2
+ import { DataSource } from '../../data-source';
3
+ export declare class PostgresDataSource extends DataSource {
4
+ private lib;
5
+ private pool;
6
+ private host;
7
+ private port;
8
+ private databaseName;
9
+ private username;
10
+ private password;
11
+ constructor();
12
+ setHost(host: string): void;
13
+ getHost(): string;
14
+ setPort(port: number): void;
15
+ getPort(): number;
16
+ setDatabaseName(databaseName: string): void;
17
+ getDatabaseName(): string;
18
+ setUsername(username: string): void;
19
+ getUsername(): string;
20
+ setPassword(password: string): void;
21
+ getPassword(): string;
22
+ close(): Promise<void>;
23
+ protected requestConnection(): Promise<Connection>;
24
+ }
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PostgresDataSource = void 0;
4
+ const data_source_1 = require("../../data-source");
5
+ const postgres_connection_1 = require("./postgres-connection");
6
+ const postgres_query_builder_1 = require("./postgres-query-builder");
7
+ class PostgresDataSource extends data_source_1.DataSource {
8
+ constructor() {
9
+ super(new postgres_query_builder_1.PostgresQueryBuilder());
10
+ try {
11
+ this.lib = require('pg');
12
+ }
13
+ catch (e) {
14
+ throw new Error('PostgreSQL module not found. Please install it via "npm install -S pg"');
15
+ }
16
+ this.host = '';
17
+ this.port = 5432;
18
+ this.databaseName = '';
19
+ this.username = '';
20
+ this.password = '';
21
+ }
22
+ setHost(host) {
23
+ this.host = host;
24
+ }
25
+ getHost() {
26
+ return this.host;
27
+ }
28
+ setPort(port) {
29
+ this.port = port;
30
+ }
31
+ getPort() {
32
+ return this.port;
33
+ }
34
+ setDatabaseName(databaseName) {
35
+ this.databaseName = databaseName;
36
+ }
37
+ getDatabaseName() {
38
+ return this.databaseName;
39
+ }
40
+ setUsername(username) {
41
+ this.username = username;
42
+ }
43
+ getUsername() {
44
+ return this.username;
45
+ }
46
+ setPassword(password) {
47
+ this.password = password;
48
+ }
49
+ getPassword() {
50
+ return this.password;
51
+ }
52
+ async close() {
53
+ if (this.pool) {
54
+ await this.pool.end();
55
+ this.pool = null;
56
+ }
57
+ }
58
+ async requestConnection() {
59
+ if (!this.pool) {
60
+ const config = {
61
+ host: this.getHost(),
62
+ port: this.getPort(),
63
+ database: this.getDatabaseName(),
64
+ user: this.getUsername(),
65
+ password: this.getPassword()
66
+ };
67
+ this.pool = new this.lib.Pool(config);
68
+ }
69
+ return new postgres_connection_1.PostgresConnection(await this.pool.connect());
70
+ }
71
+ }
72
+ exports.PostgresDataSource = PostgresDataSource;
73
+ //# sourceMappingURL=postgres-data-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-data-source.js","sourceRoot":"","sources":["../../../src/sources/postgres/postgres-data-source.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAC9C,+DAA0D;AAC1D,qEAA+D;AAE/D,MAAa,kBAAmB,SAAQ,wBAAU;IAShD;QACE,KAAK,CAAC,IAAI,6CAAoB,EAAE,CAAC,CAAA;QAEjC,IAAI;YACF,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;SACzB;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;SAC1F;QAED,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;IACpB,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAEM,eAAe,CAAC,YAAoB;QACzC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IAClC,CAAC;IAEM,eAAe;QACpB,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAEM,WAAW,CAAC,QAAgB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,WAAW,CAAC,QAAgB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;SACjB;IACH,CAAC;IAES,KAAK,CAAC,iBAAiB;QAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,MAAM,MAAM,GAAQ;gBAClB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;gBACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;gBACpB,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE;gBAChC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE;gBACxB,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;aAC7B,CAAA;YAED,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SACtC;QAED,OAAO,IAAI,wCAAkB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;CACF;AAvFD,gDAuFC"}
@@ -0,0 +1,5 @@
1
+ import { DefaultQueryBuilder, Statement } from '../../query';
2
+ export declare class PostgresQueryBuilder extends DefaultQueryBuilder {
3
+ private static readonly CURRENCY;
4
+ protected buildSingleValue(value: any, statement: Statement): void;
5
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PostgresQueryBuilder = void 0;
4
+ const query_1 = require("../../query");
5
+ class PostgresQueryBuilder extends query_1.DefaultQueryBuilder {
6
+ buildSingleValue(value, statement) {
7
+ statement.sql += PostgresQueryBuilder.CURRENCY + (statement.bindings.length + 1);
8
+ statement.bindings.push(value);
9
+ }
10
+ }
11
+ exports.PostgresQueryBuilder = PostgresQueryBuilder;
12
+ PostgresQueryBuilder.CURRENCY = '$';
13
+ //# sourceMappingURL=postgres-query-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-query-builder.js","sourceRoot":"","sources":["../../../src/sources/postgres/postgres-query-builder.ts"],"names":[],"mappings":";;;AAAA,uCAA4D;AAE5D,MAAa,oBAAqB,SAAQ,2BAAmB;IAGjD,gBAAgB,CAAC,KAAU,EAAE,SAAoB;QACzD,SAAS,CAAC,GAAG,IAAI,oBAAoB,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAChF,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;;AANH,oDAOC;AANyB,6BAAQ,GAAG,GAAG,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './sqlite-connection';
2
+ export * from './sqlite-data-source';
3
+ export * from './sqlite-query-builder';
@@ -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("./sqlite-connection"), exports);
18
+ __exportStar(require("./sqlite-data-source"), exports);
19
+ __exportStar(require("./sqlite-query-builder"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sources/sqlite/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAmC;AACnC,uDAAoC;AACpC,yDAAsC"}
@@ -0,0 +1,14 @@
1
+ import { Connection } from '../../connection';
2
+ import { DataSet } from '../../data-set';
3
+ export declare class SqliteConnection implements Connection {
4
+ private db;
5
+ private _lastInsertId;
6
+ constructor(db: any);
7
+ query(sql: string, bindings?: Array<any>): Promise<Array<DataSet>>;
8
+ execute(sql: string, bindings?: Array<any>): Promise<number>;
9
+ lastInsertId(): Promise<number>;
10
+ beginTransaction(): Promise<void>;
11
+ rollbackTransaction(): Promise<void>;
12
+ commitTransaction(): Promise<void>;
13
+ close(): Promise<void>;
14
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqliteConnection = void 0;
4
+ class SqliteConnection {
5
+ constructor(db) {
6
+ this._lastInsertId = 0;
7
+ this.db = db;
8
+ }
9
+ async query(sql, bindings) {
10
+ const stmt = this.db.prepare(sql);
11
+ return stmt.all(...(bindings !== null && bindings !== void 0 ? bindings : []));
12
+ }
13
+ async execute(sql, bindings) {
14
+ var _a, _b;
15
+ const stmt = this.db.prepare(sql);
16
+ const result = stmt.run(...(bindings !== null && bindings !== void 0 ? bindings : []));
17
+ this._lastInsertId = Number((_a = result.lastInsertRowid) !== null && _a !== void 0 ? _a : 0);
18
+ return (_b = result.changes) !== null && _b !== void 0 ? _b : 0;
19
+ }
20
+ async lastInsertId() {
21
+ return this._lastInsertId;
22
+ }
23
+ async beginTransaction() {
24
+ this.db.prepare('BEGIN').run();
25
+ }
26
+ async rollbackTransaction() {
27
+ this.db.prepare('ROLLBACK').run();
28
+ }
29
+ async commitTransaction() {
30
+ this.db.prepare('COMMIT').run();
31
+ }
32
+ async close() {
33
+ // La instancia db es compartida; el cierre lo maneja SqliteDataSource
34
+ }
35
+ }
36
+ exports.SqliteConnection = SqliteConnection;
37
+ //# sourceMappingURL=sqlite-connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-connection.js","sourceRoot":"","sources":["../../../src/sources/sqlite/sqlite-connection.ts"],"names":[],"mappings":";;;AAGA,MAAa,gBAAgB;IAI3B,YAAY,EAAO;QAFX,kBAAa,GAAW,CAAC,CAAA;QAG/B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,QAAqB;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAEjC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,CAAA;IACtC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,QAAqB;;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,CAAA;QAE5C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAA,MAAM,CAAC,eAAe,mCAAI,CAAC,CAAC,CAAA;QAExD,OAAO,MAAA,MAAM,CAAC,OAAO,mCAAI,CAAC,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAEM,KAAK,CAAC,gBAAgB;QAC3B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAA;IAChC,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC9B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,CAAA;IACnC,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC5B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAA;IACjC,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,sEAAsE;IACxE,CAAC;CACF;AA1CD,4CA0CC"}
@@ -0,0 +1,11 @@
1
+ import { Connection } from '../../connection';
2
+ import { DataSource } from '../../data-source';
3
+ export declare class SqliteDataSource extends DataSource {
4
+ private db;
5
+ private filename;
6
+ constructor();
7
+ setFilename(filename: string): void;
8
+ getFilename(): string;
9
+ close(): Promise<void>;
10
+ protected requestConnection(): Promise<Connection>;
11
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqliteDataSource = void 0;
4
+ const data_source_1 = require("../../data-source");
5
+ const sqlite_connection_1 = require("./sqlite-connection");
6
+ const sqlite_query_builder_1 = require("./sqlite-query-builder");
7
+ class SqliteDataSource extends data_source_1.DataSource {
8
+ constructor() {
9
+ super(new sqlite_query_builder_1.SqliteQueryBuilder());
10
+ this.filename = ':memory:';
11
+ }
12
+ setFilename(filename) {
13
+ this.filename = filename;
14
+ }
15
+ getFilename() {
16
+ return this.filename;
17
+ }
18
+ async close() {
19
+ if (this.db) {
20
+ this.db.close();
21
+ this.db = null;
22
+ }
23
+ }
24
+ async requestConnection() {
25
+ if (!this.db) {
26
+ // node:sqlite viene incorporado en Node.js >= 22.5 — sin dependencias externas
27
+ const { DatabaseSync } = require('node:sqlite');
28
+ this.db = new DatabaseSync(this.filename);
29
+ }
30
+ return new sqlite_connection_1.SqliteConnection(this.db);
31
+ }
32
+ }
33
+ exports.SqliteDataSource = SqliteDataSource;
34
+ //# sourceMappingURL=sqlite-data-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-data-source.js","sourceRoot":"","sources":["../../../src/sources/sqlite/sqlite-data-source.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAC9C,2DAAsD;AACtD,iEAA2D;AAE3D,MAAa,gBAAiB,SAAQ,wBAAU;IAI9C;QACE,KAAK,CAAC,IAAI,yCAAkB,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAA;IAC5B,CAAC;IAEM,WAAW,CAAC,QAAgB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;YACf,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;SACf;IACH,CAAC;IAES,KAAK,CAAC,iBAAiB;QAC/B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACZ,+EAA+E;YAC/E,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;YAE/C,IAAI,CAAC,EAAE,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;SAC1C;QAED,OAAO,IAAI,oCAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACtC,CAAC;CACF;AAlCD,4CAkCC"}
@@ -0,0 +1,6 @@
1
+ import { DefaultQueryBuilder } from '../../query/builders/default-query-builder';
2
+ import { SelectQuery } from '../../query/select-query';
3
+ import { Statement } from '../../query/statement';
4
+ export declare class SqliteQueryBuilder extends DefaultQueryBuilder {
5
+ protected buildLimitOffset(query: SelectQuery, statement: Statement): void;
6
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqliteQueryBuilder = void 0;
4
+ const default_query_builder_1 = require("../../query/builders/default-query-builder");
5
+ class SqliteQueryBuilder extends default_query_builder_1.DefaultQueryBuilder {
6
+ buildLimitOffset(query, statement) {
7
+ // SQLite requiere LIMIT cuando se usa OFFSET; LIMIT -1 significa sin límite
8
+ if (query.getLimit() >= 0 || query.getOffset() >= 0) {
9
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.SPACE;
10
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.LIMIT;
11
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.SPACE;
12
+ statement.sql += query.getLimit() >= 0 ? query.getLimit() : -1;
13
+ }
14
+ if (query.getOffset() >= 0) {
15
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.SPACE;
16
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.OFFSET;
17
+ statement.sql += default_query_builder_1.DefaultQueryBuilder.SPACE;
18
+ statement.sql += query.getOffset();
19
+ }
20
+ }
21
+ }
22
+ exports.SqliteQueryBuilder = SqliteQueryBuilder;
23
+ //# sourceMappingURL=sqlite-query-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-query-builder.js","sourceRoot":"","sources":["../../../src/sources/sqlite/sqlite-query-builder.ts"],"names":[],"mappings":";;;AAAA,sFAAgF;AAIhF,MAAa,kBAAmB,SAAQ,2CAAmB;IAC/C,gBAAgB,CAAC,KAAkB,EAAE,SAAoB;QACjE,4EAA4E;QAC5E,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE;YACnD,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,KAAK,CAAA;YAC1C,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,KAAK,CAAA;YAC1C,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,KAAK,CAAA;YAC1C,SAAS,CAAC,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAC/D;QAED,IAAI,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE;YAC1B,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,KAAK,CAAA;YAC1C,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,MAAM,CAAA;YAC3C,SAAS,CAAC,GAAG,IAAI,2CAAmB,CAAC,KAAK,CAAA;YAC1C,SAAS,CAAC,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAA;SACnC;IACH,CAAC;CACF;AAjBD,gDAiBC"}
@@ -0,0 +1,2 @@
1
+ export declare function applyMixins(derivedCtor: any, constructors: any[]): void;
2
+ export declare function debugLog(message: string): void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.debugLog = exports.applyMixins = void 0;
4
+ function applyMixins(derivedCtor, constructors) {
5
+ constructors.forEach((baseCtor) => {
6
+ Object.getOwnPropertyNames(baseCtor.prototype).forEach((name) => {
7
+ Object.defineProperty(derivedCtor.prototype, name, Object.getOwnPropertyDescriptor(baseCtor.prototype, name) || Object.create(null));
8
+ });
9
+ });
10
+ }
11
+ exports.applyMixins = applyMixins;
12
+ function debugLog(message) {
13
+ // eslint-disable-next-line no-console
14
+ console.log(message);
15
+ }
16
+ exports.debugLog = debugLog;
17
+ //# sourceMappingURL=utilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../src/utilities.ts"],"names":[],"mappings":";;;AAAA,SAAgB,WAAW,CAAC,WAAgB,EAAE,YAAmB;IAC/D,YAAY,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9D,MAAM,CAAC,cAAc,CACnB,WAAW,CAAC,SAAS,EACrB,IAAI,EACJ,MAAM,CAAC,wBAAwB,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CACjF,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAVD,kCAUC;AAED,SAAgB,QAAQ,CAAC,OAAe;IACtC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AACtB,CAAC;AAHD,4BAGC"}
package/package.json ADDED
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "@neogroup/neorm",
3
+ "version": "0.0.1",
4
+ "description": "Database connector for javascript",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.js",
7
+ "author": "Luis Manuel Amengual",
8
+ "license": "ISC",
9
+ "bugs": {
10
+ "url": "https://github.com/luismanuelamengual/NeORM/issues"
11
+ },
12
+ "homepage": "https://github.com/luismanuelamengual/NeORM#readme",
13
+ "keywords": [
14
+ "database",
15
+ "connector",
16
+ "javascript"
17
+ ],
18
+ "files": [
19
+ "dist"
20
+ ],
21
+ "publishConfig": {
22
+ "access": "public"
23
+ },
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "git+https://github.com/luismanuelamengual/NeORM.git"
27
+ },
28
+ "scripts": {
29
+ "build": "jest --passWithNoTests && tsc",
30
+ "test": "jest",
31
+ "prepublishOnly": "npm run build"
32
+ },
33
+ "devDependencies": {
34
+ "@types/jest": "^29.5.0",
35
+ "@types/node": "^25.9.2",
36
+ "@typescript-eslint/eslint-plugin": "^5.47.0",
37
+ "@typescript-eslint/parser": "^5.47.0",
38
+ "dotenv": "^16.0.3",
39
+ "eslint": "^8.57.0",
40
+ "eslint-config-next": "^15.0.0",
41
+ "eslint-config-prettier": "^8.5.0",
42
+ "eslint-plugin-absolute-imports-only": "^1.0.1",
43
+ "eslint-plugin-prettier": "^5.0.1",
44
+ "eslint-plugin-simple-import-sort": "^10.0.0",
45
+ "jest": "^29.7.0",
46
+ "mysql2": "^3.0.0",
47
+ "pg": "^8.7.1",
48
+ "prettier": "^2.6.2",
49
+ "ts-jest": "^29.1.0",
50
+ "ts-node": "^10.4.0",
51
+ "typescript": "^4.5.4"
52
+ },
53
+ "dependencies": {
54
+ "esm": "^3.2.25"
55
+ }
56
+ }