@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,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConditionGroup = exports.ConditionConnector = void 0;
4
+ var ConditionConnector;
5
+ (function (ConditionConnector) {
6
+ ConditionConnector[ConditionConnector["AND"] = 0] = "AND";
7
+ ConditionConnector[ConditionConnector["OR"] = 1] = "OR";
8
+ })(ConditionConnector = exports.ConditionConnector || (exports.ConditionConnector = {}));
9
+ class ConditionGroup {
10
+ constructor() {
11
+ this.conditions = [];
12
+ }
13
+ setConditions(conditions) {
14
+ this.conditions = conditions;
15
+ return this;
16
+ }
17
+ getConditions() {
18
+ return this.conditions;
19
+ }
20
+ where() {
21
+ let condition;
22
+ if (arguments.length === 1 && typeof arguments[0] === 'function') {
23
+ const group = new ConditionGroup();
24
+ arguments[0](group);
25
+ condition = group;
26
+ }
27
+ else {
28
+ switch (arguments.length) {
29
+ case 1:
30
+ condition = arguments[0];
31
+ break;
32
+ case 2: {
33
+ const [field, value] = arguments;
34
+ condition = { field, operator: '=', value };
35
+ break;
36
+ }
37
+ case 3: {
38
+ const [field, operator, value] = arguments;
39
+ condition = { field, operator, value };
40
+ break;
41
+ }
42
+ default:
43
+ throw new Error('Wrong number of arguments for "where"');
44
+ }
45
+ }
46
+ this.conditions.push({ condition, connector: ConditionConnector.AND });
47
+ return this;
48
+ }
49
+ orWhere() {
50
+ let condition;
51
+ if (arguments.length === 1 && typeof arguments[0] === 'function') {
52
+ const group = new ConditionGroup();
53
+ arguments[0](group);
54
+ condition = group;
55
+ }
56
+ else {
57
+ switch (arguments.length) {
58
+ case 1:
59
+ condition = arguments[0];
60
+ break;
61
+ case 2: {
62
+ const [field, value] = arguments;
63
+ condition = { field, operator: '=', value };
64
+ break;
65
+ }
66
+ case 3: {
67
+ const [field, operator, value] = arguments;
68
+ condition = { field, operator, value };
69
+ break;
70
+ }
71
+ default:
72
+ throw new Error('Wrong number of arguments for "orWhere"');
73
+ }
74
+ }
75
+ this.conditions.push({ condition, connector: ConditionConnector.OR });
76
+ return this;
77
+ }
78
+ // ── WHERE convenience methods ─────────────────────────────────────────────
79
+ whereIn(field, values) {
80
+ return this.where(field, 'IN', values);
81
+ }
82
+ whereNotIn(field, values) {
83
+ return this.where(field, 'NOT IN', values);
84
+ }
85
+ whereBetween(field, range) {
86
+ return this.where(field, 'BETWEEN', range);
87
+ }
88
+ whereNotBetween(field, range) {
89
+ return this.where(field, 'NOT BETWEEN', range);
90
+ }
91
+ whereNull(field) {
92
+ return this.where(field, null);
93
+ }
94
+ whereNotNull(field) {
95
+ return this.where(field, '<>', null);
96
+ }
97
+ whereLike(field, pattern) {
98
+ return this.where(field, 'LIKE', pattern);
99
+ }
100
+ whereNotLike(field, pattern) {
101
+ return this.where(field, 'NOT LIKE', pattern);
102
+ }
103
+ whereColumn(field, operatorOrColumn, column) {
104
+ const operator = column !== undefined ? operatorOrColumn : '=';
105
+ const col = column !== undefined ? column : operatorOrColumn;
106
+ this.conditions.push({ condition: { field, operator, column: col }, connector: ConditionConnector.AND });
107
+ return this;
108
+ }
109
+ // ── OR WHERE convenience methods ──────────────────────────────────────────
110
+ orWhereIn(field, values) {
111
+ return this.orWhere(field, 'IN', values);
112
+ }
113
+ orWhereNotIn(field, values) {
114
+ return this.orWhere(field, 'NOT IN', values);
115
+ }
116
+ orWhereBetween(field, range) {
117
+ return this.orWhere(field, 'BETWEEN', range);
118
+ }
119
+ orWhereNotBetween(field, range) {
120
+ return this.orWhere(field, 'NOT BETWEEN', range);
121
+ }
122
+ orWhereNull(field) {
123
+ return this.orWhere(field, null);
124
+ }
125
+ orWhereNotNull(field) {
126
+ return this.orWhere(field, '<>', null);
127
+ }
128
+ orWhereLike(field, pattern) {
129
+ return this.orWhere(field, 'LIKE', pattern);
130
+ }
131
+ orWhereNotLike(field, pattern) {
132
+ return this.orWhere(field, 'NOT LIKE', pattern);
133
+ }
134
+ orWhereColumn(field, operatorOrColumn, column) {
135
+ const operator = column !== undefined ? operatorOrColumn : '=';
136
+ const col = column !== undefined ? column : operatorOrColumn;
137
+ this.conditions.push({ condition: { field, operator, column: col }, connector: ConditionConnector.OR });
138
+ return this;
139
+ }
140
+ }
141
+ exports.ConditionGroup = ConditionGroup;
142
+ //# sourceMappingURL=conditions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../src/query/conditions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { HasTable, HasWhereConditions } from './features';
2
+ import { Query } from './query';
3
+ import { Table } from './table';
4
+ export declare class DeleteQuery extends Query {
5
+ constructor(table?: Table);
6
+ }
7
+ export interface DeleteQuery extends HasTable<DeleteQuery>, HasWhereConditions<DeleteQuery> {
8
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteQuery = void 0;
4
+ const utilities_1 = require("../utilities");
5
+ const features_1 = require("./features");
6
+ const query_1 = require("./query");
7
+ class DeleteQuery extends query_1.Query {
8
+ constructor(table) {
9
+ super();
10
+ if (table) {
11
+ this.setTable(table);
12
+ }
13
+ }
14
+ }
15
+ exports.DeleteQuery = DeleteQuery;
16
+ (0, utilities_1.applyMixins)(DeleteQuery, [features_1.HasTable, features_1.HasWhereConditions]);
17
+ //# sourceMappingURL=delete-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-query.js","sourceRoot":"","sources":["../../src/query/delete-query.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAC1C,yCAAyD;AACzD,mCAA+B;AAG/B,MAAa,WAAY,SAAQ,aAAK;IACpC,YAAY,KAAa;QACvB,KAAK,EAAE,CAAA;QAEP,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;SACrB;IACH,CAAC;CACF;AARD,kCAQC;AAGD,IAAA,uBAAW,EAAC,WAAW,EAAE,CAAC,mBAAQ,EAAE,6BAAkB,CAAC,CAAC,CAAA"}
@@ -0,0 +1,6 @@
1
+ export declare abstract class HasAlias<R> {
2
+ protected _alias?: string;
3
+ setAlias(alias: string | undefined): R;
4
+ getAlias(): string | undefined;
5
+ alias(alias: string): R;
6
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasAlias = void 0;
4
+ class HasAlias {
5
+ setAlias(alias) {
6
+ this._alias = alias;
7
+ return this;
8
+ }
9
+ getAlias() {
10
+ return this._alias;
11
+ }
12
+ alias(alias) {
13
+ return this.setAlias(alias);
14
+ }
15
+ }
16
+ exports.HasAlias = HasAlias;
17
+ //# sourceMappingURL=has-alias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-alias.js","sourceRoot":"","sources":["../../../src/query/features/has-alias.ts"],"names":[],"mappings":";;;AAAA,MAAsB,QAAQ;IAGrB,QAAQ,CAAC,KAAyB;QACvC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QAEnB,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;CACF;AAhBD,4BAgBC"}
@@ -0,0 +1,6 @@
1
+ export declare abstract class HasDistinct<R> {
2
+ protected _distinct: boolean;
3
+ setDistinct(distinct: boolean): R;
4
+ isDistinct(): boolean;
5
+ distinct(distinct?: boolean): R;
6
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasDistinct = void 0;
4
+ class HasDistinct {
5
+ constructor() {
6
+ this._distinct = false;
7
+ }
8
+ setDistinct(distinct) {
9
+ this._distinct = distinct;
10
+ return this;
11
+ }
12
+ isDistinct() {
13
+ return this._distinct;
14
+ }
15
+ distinct(distinct = true) {
16
+ return this.setDistinct(distinct);
17
+ }
18
+ }
19
+ exports.HasDistinct = HasDistinct;
20
+ //# sourceMappingURL=has-distinct.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-distinct.js","sourceRoot":"","sources":["../../../src/query/features/has-distinct.ts"],"names":[],"mappings":";;;AAAA,MAAsB,WAAW;IAAjC;QACY,cAAS,GAAY,KAAK,CAAA;IAetC,CAAC;IAbQ,WAAW,CAAC,QAAiB;QAClC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QAEzB,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAEM,QAAQ,CAAC,WAAoB,IAAI;QACtC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;CACF;AAhBD,kCAgBC"}
@@ -0,0 +1,9 @@
1
+ import { DataSet } from '../../data-set';
2
+ export declare abstract class HasFieldValues<R> {
3
+ protected _fields?: DataSet;
4
+ setFields(fields: DataSet | undefined): R;
5
+ getFields(): DataSet | undefined;
6
+ setFieldValue(field: string, value: any): R;
7
+ getFieldValue(field: string): any;
8
+ hasFieldValue(field: string): boolean;
9
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasFieldValues = void 0;
4
+ class HasFieldValues {
5
+ setFields(fields) {
6
+ this._fields = fields;
7
+ return this;
8
+ }
9
+ getFields() {
10
+ return this._fields;
11
+ }
12
+ setFieldValue(field, value) {
13
+ if (!this._fields) {
14
+ this._fields = {};
15
+ }
16
+ this._fields[field] = value;
17
+ return this;
18
+ }
19
+ getFieldValue(field) {
20
+ return this._fields && this._fields[field];
21
+ }
22
+ hasFieldValue(field) {
23
+ return this._fields && field in this._fields ? true : false;
24
+ }
25
+ }
26
+ exports.HasFieldValues = HasFieldValues;
27
+ //# sourceMappingURL=has-field-values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-field-values.js","sourceRoot":"","sources":["../../../src/query/features/has-field-values.ts"],"names":[],"mappings":";;;AAEA,MAAsB,cAAc;IAG3B,SAAS,CAAC,MAA2B;QAC1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QAErB,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAEM,aAAa,CAAC,KAAa,EAAE,KAAU;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;SAClB;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;QAE3B,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,aAAa,CAAC,KAAa;QAChC,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;IAEM,aAAa,CAAC,KAAa;QAChC,OAAO,IAAI,CAAC,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;IAC7D,CAAC;CACF;AA9BD,wCA8BC"}
@@ -0,0 +1,7 @@
1
+ import { Field } from '../fields';
2
+ export declare abstract class HasGroupByFields<R> {
3
+ protected _groupByFields?: Array<Field>;
4
+ setGroupByFields(groupByFields: Array<Field> | undefined): R;
5
+ getGroupByFields(): Array<Field> | undefined;
6
+ groupBy(...fields: Array<Field>): R;
7
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasGroupByFields = void 0;
4
+ class HasGroupByFields {
5
+ setGroupByFields(groupByFields) {
6
+ this._groupByFields = groupByFields;
7
+ return this;
8
+ }
9
+ getGroupByFields() {
10
+ return this._groupByFields;
11
+ }
12
+ groupBy(...fields) {
13
+ if (!this._groupByFields) {
14
+ this._groupByFields = [];
15
+ }
16
+ this._groupByFields.push(...fields);
17
+ return this;
18
+ }
19
+ }
20
+ exports.HasGroupByFields = HasGroupByFields;
21
+ //# sourceMappingURL=has-group-by-fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-group-by-fields.js","sourceRoot":"","sources":["../../../src/query/features/has-group-by-fields.ts"],"names":[],"mappings":";;;AAEA,MAAsB,gBAAgB;IAG7B,gBAAgB,CAAC,aAAuC;QAC7D,IAAI,CAAC,cAAc,GAAG,aAAa,CAAA;QAEnC,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,gBAAgB;QACrB,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAEM,OAAO,CAAC,GAAG,MAAoB;QACpC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAA;SACzB;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;QAEnC,OAAO,IAAoB,CAAA;IAC7B,CAAC;CACF;AAtBD,4CAsBC"}
@@ -0,0 +1,13 @@
1
+ import { Condition, ConditionGroup } from '../conditions';
2
+ import { Field } from '../fields';
3
+ export declare abstract class HasHavingConditions<R> {
4
+ protected _havingConditions?: ConditionGroup;
5
+ setHavingConditions(conditions: ConditionGroup | undefined): R;
6
+ getHavingConditions(): ConditionGroup;
7
+ having(condition: Condition): R;
8
+ having(field: Field, value: any): R;
9
+ having(field: Field, operator: string, value: any): R;
10
+ orHaving(condition: Condition): R;
11
+ orHaving(field: Field, value: any): R;
12
+ orHaving(field: Field, operator: string, value: any): R;
13
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasHavingConditions = void 0;
4
+ const conditions_1 = require("../conditions");
5
+ class HasHavingConditions {
6
+ setHavingConditions(conditions) {
7
+ this._havingConditions = conditions;
8
+ return this;
9
+ }
10
+ getHavingConditions() {
11
+ if (!this._havingConditions) {
12
+ this._havingConditions = new conditions_1.ConditionGroup();
13
+ }
14
+ return this._havingConditions;
15
+ }
16
+ having() {
17
+ // @ts-ignore
18
+ this.getHavingConditions().where(...arguments);
19
+ return this;
20
+ }
21
+ orHaving() {
22
+ // @ts-ignore
23
+ this.getHavingConditions().orWhere(...arguments);
24
+ return this;
25
+ }
26
+ }
27
+ exports.HasHavingConditions = HasHavingConditions;
28
+ //# sourceMappingURL=has-having-conditions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-having-conditions.js","sourceRoot":"","sources":["../../../src/query/features/has-having-conditions.ts"],"names":[],"mappings":";;;AAAA,8CAAyD;AAGzD,MAAsB,mBAAmB;IAGhC,mBAAmB,CAAC,UAAsC;QAC/D,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAA;QAEnC,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,mBAAmB;QACxB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,2BAAc,EAAE,CAAA;SAC9C;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAA;IAC/B,CAAC;IAKM,MAAM;QACX,aAAa;QACb,IAAI,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAA;QAE9C,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAKM,QAAQ;QACb,aAAa;QACb,IAAI,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAAA;QAEhD,OAAO,IAAoB,CAAA;IAC7B,CAAC;CACF;AApCD,kDAoCC"}
@@ -0,0 +1,41 @@
1
+ import { ConditionGroup } from '../conditions';
2
+ import { Field } from '../fields';
3
+ import { Table } from '../table';
4
+ export declare enum JoinType {
5
+ JOIN = 0,
6
+ INNER_JOIN = 1,
7
+ OUTER_JOIN = 2,
8
+ LEFT_JOIN = 3,
9
+ RIGHT_JOIN = 4,
10
+ CROSS_JOIN = 5
11
+ }
12
+ export type Join = {
13
+ table: Table;
14
+ type: JoinType;
15
+ condition: ConditionGroup;
16
+ alias?: string;
17
+ };
18
+ export declare abstract class HasJoins<R> {
19
+ protected _joins?: Array<Join>;
20
+ getJoins(): Array<Join>;
21
+ setJoins(joins: Array<Join> | undefined): R;
22
+ join(join: Join): R;
23
+ join(type: JoinType, table: Table, sourceField: Field, remoteField: Field): R;
24
+ join(type: JoinType, table: Table, sourceField: Field, remoteField: Field, alias: string): R;
25
+ join(type: JoinType, table: Table, sourceField?: Field, remoteField?: Field, alias?: string): R;
26
+ innerJoin(table: Table, sourceField: Field, remoteField: Field): R;
27
+ innerJoin(table: Table, sourceField: Field, remoteField: Field, alias: string): R;
28
+ innerJoin(table: Table, sourceField?: Field, remoteField?: Field, alias?: string): R;
29
+ leftJoin(table: Table, sourceField: Field, remoteField: Field): R;
30
+ leftJoin(table: Table, sourceField: Field, remoteField: Field, alias: string): R;
31
+ leftJoin(table: Table, sourceField?: Field, remoteField?: Field, alias?: string): R;
32
+ rightJoin(table: Table, sourceField: Field, remoteField: Field): R;
33
+ rightJoin(table: Table, sourceField: Field, remoteField: Field, alias: string): R;
34
+ rightJoin(table: Table, sourceField?: Field, remoteField?: Field, alias?: string): R;
35
+ outerJoin(table: Table, sourceField: Field, remoteField: Field): R;
36
+ outerJoin(table: Table, sourceField: Field, remoteField: Field, alias: string): R;
37
+ outerJoin(table: Table, sourceField?: Field, remoteField?: Field, alias?: string): R;
38
+ crossJoin(table: Table, sourceField: Field, remoteField: Field): R;
39
+ crossJoin(table: Table, sourceField: Field, remoteField: Field, alias: string): R;
40
+ crossJoin(table: Table, sourceField?: Field, remoteField?: Field, alias?: string): R;
41
+ }
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasJoins = exports.JoinType = void 0;
4
+ const conditions_1 = require("../conditions");
5
+ const fields_1 = require("../fields");
6
+ var JoinType;
7
+ (function (JoinType) {
8
+ JoinType[JoinType["JOIN"] = 0] = "JOIN";
9
+ JoinType[JoinType["INNER_JOIN"] = 1] = "INNER_JOIN";
10
+ JoinType[JoinType["OUTER_JOIN"] = 2] = "OUTER_JOIN";
11
+ JoinType[JoinType["LEFT_JOIN"] = 3] = "LEFT_JOIN";
12
+ JoinType[JoinType["RIGHT_JOIN"] = 4] = "RIGHT_JOIN";
13
+ JoinType[JoinType["CROSS_JOIN"] = 5] = "CROSS_JOIN";
14
+ })(JoinType = exports.JoinType || (exports.JoinType = {}));
15
+ class HasJoins {
16
+ getJoins() {
17
+ if (!this._joins) {
18
+ this._joins = [];
19
+ }
20
+ return this._joins;
21
+ }
22
+ setJoins(joins) {
23
+ this._joins = joins;
24
+ return this;
25
+ }
26
+ join() {
27
+ let join;
28
+ if (arguments.length === 1) {
29
+ join = arguments[0];
30
+ }
31
+ else {
32
+ const [type, table, sourceField, remoteField, alias] = arguments;
33
+ const condition = new conditions_1.ConditionGroup();
34
+ condition.where((0, fields_1.toField)(sourceField), (0, fields_1.toField)(remoteField));
35
+ join = { type, table, condition, alias };
36
+ }
37
+ this.getJoins().push(join);
38
+ return this;
39
+ }
40
+ innerJoin() {
41
+ // @ts-ignore
42
+ this.join(JoinType.INNER_JOIN, ...arguments);
43
+ return this;
44
+ }
45
+ leftJoin() {
46
+ // @ts-ignore
47
+ this.join(JoinType.LEFT_JOIN, ...arguments);
48
+ return this;
49
+ }
50
+ rightJoin() {
51
+ // @ts-ignore
52
+ this.join(JoinType.RIGHT_JOIN, ...arguments);
53
+ return this;
54
+ }
55
+ outerJoin() {
56
+ // @ts-ignore
57
+ this.join(JoinType.OUTER_JOIN, ...arguments);
58
+ return this;
59
+ }
60
+ crossJoin() {
61
+ // @ts-ignore
62
+ this.join(JoinType.CROSS_JOIN, ...arguments);
63
+ return this;
64
+ }
65
+ }
66
+ exports.HasJoins = HasJoins;
67
+ //# sourceMappingURL=has-joins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-joins.js","sourceRoot":"","sources":["../../../src/query/features/has-joins.ts"],"names":[],"mappings":";;;AAAA,8CAA8C;AAC9C,sCAA0C;AAG1C,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,uCAAI,CAAA;IACJ,mDAAU,CAAA;IACV,mDAAU,CAAA;IACV,iDAAS,CAAA;IACT,mDAAU,CAAA;IACV,mDAAU,CAAA;AACZ,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB;AAID,MAAsB,QAAQ;IAGrB,QAAQ;QACb,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;SACjB;QAED,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAEM,QAAQ,CAAC,KAA8B;QAC5C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QAEnB,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAMM,IAAI;QACT,IAAI,IAAU,CAAA;QAEd,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;SACpB;aAAM;YACL,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;YAChE,MAAM,SAAS,GAAG,IAAI,2BAAc,EAAE,CAAA;YAEtC,SAAS,CAAC,KAAK,CAAC,IAAA,gBAAO,EAAC,WAAW,CAAC,EAAE,IAAA,gBAAO,EAAC,WAAW,CAAC,CAAC,CAAA;YAC3D,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;SACzC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1B,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAKM,SAAS;QACd,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAAA;QAE5C,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAKM,QAAQ;QACb,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,CAAA;QAE3C,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAKM,SAAS;QACd,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAAA;QAE5C,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAKM,SAAS;QACd,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAAA;QAE5C,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAKM,SAAS;QACd,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAAA;QAE5C,OAAO,IAAoB,CAAA;IAC7B,CAAC;CACF;AAxFD,4BAwFC"}
@@ -0,0 +1,6 @@
1
+ export declare abstract class HasLimit<R> {
2
+ protected _limit: number;
3
+ setLimit(limit: number): R;
4
+ getLimit(): number;
5
+ limit(limit: number): R;
6
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasLimit = void 0;
4
+ class HasLimit {
5
+ constructor() {
6
+ this._limit = -1;
7
+ }
8
+ setLimit(limit) {
9
+ this._limit = limit;
10
+ return this;
11
+ }
12
+ getLimit() {
13
+ return this._limit;
14
+ }
15
+ limit(limit) {
16
+ return this.setLimit(limit);
17
+ }
18
+ }
19
+ exports.HasLimit = HasLimit;
20
+ //# sourceMappingURL=has-limit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-limit.js","sourceRoot":"","sources":["../../../src/query/features/has-limit.ts"],"names":[],"mappings":";;;AAAA,MAAsB,QAAQ;IAA9B;QACY,WAAM,GAAW,CAAC,CAAC,CAAA;IAe/B,CAAC;IAbQ,QAAQ,CAAC,KAAa;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QAEnB,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;CACF;AAhBD,4BAgBC"}
@@ -0,0 +1,6 @@
1
+ export declare abstract class HasOffset<R> {
2
+ protected _offset: number;
3
+ setOffset(offset: number): R;
4
+ getOffset(): number;
5
+ offset(offset: number): R;
6
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasOffset = void 0;
4
+ class HasOffset {
5
+ constructor() {
6
+ this._offset = -1;
7
+ }
8
+ setOffset(offset) {
9
+ this._offset = offset;
10
+ return this;
11
+ }
12
+ getOffset() {
13
+ return this._offset;
14
+ }
15
+ offset(offset) {
16
+ return this.setOffset(offset);
17
+ }
18
+ }
19
+ exports.HasOffset = HasOffset;
20
+ //# sourceMappingURL=has-offset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-offset.js","sourceRoot":"","sources":["../../../src/query/features/has-offset.ts"],"names":[],"mappings":";;;AAAA,MAAsB,SAAS;IAA/B;QACY,YAAO,GAAW,CAAC,CAAC,CAAA;IAehC,CAAC;IAbQ,SAAS,CAAC,MAAc;QAC7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QAErB,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAEM,MAAM,CAAC,MAAc;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;CACF;AAhBD,8BAgBC"}
@@ -0,0 +1,15 @@
1
+ import { BasicField, RawField } from '../fields';
2
+ export declare enum OrderByDirection {
3
+ ASC = "ASC",
4
+ DESC = "DESC"
5
+ }
6
+ export type OrderByField = RawField | (BasicField & {
7
+ direction?: OrderByDirection;
8
+ });
9
+ export declare abstract class HasOrderByFields<R> {
10
+ protected _orderByFields?: Array<OrderByField>;
11
+ setOrderByFields(orderByFields: Array<OrderByField> | undefined): R;
12
+ getOrderByFields(): Array<OrderByField> | undefined;
13
+ orderBy(field: OrderByField): R;
14
+ orderBy(field: RawField | BasicField, direction: OrderByDirection): R;
15
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasOrderByFields = exports.OrderByDirection = void 0;
4
+ var OrderByDirection;
5
+ (function (OrderByDirection) {
6
+ OrderByDirection["ASC"] = "ASC";
7
+ OrderByDirection["DESC"] = "DESC";
8
+ })(OrderByDirection = exports.OrderByDirection || (exports.OrderByDirection = {}));
9
+ class HasOrderByFields {
10
+ setOrderByFields(orderByFields) {
11
+ this._orderByFields = orderByFields;
12
+ return this;
13
+ }
14
+ getOrderByFields() {
15
+ return this._orderByFields;
16
+ }
17
+ orderBy(field, direction) {
18
+ if (!this._orderByFields) {
19
+ this._orderByFields = [];
20
+ }
21
+ let orderByField;
22
+ if (direction) {
23
+ if (typeof field === 'object') {
24
+ orderByField = { name: field.name, table: field.table, direction };
25
+ }
26
+ else {
27
+ orderByField = { name: field, direction };
28
+ }
29
+ }
30
+ else {
31
+ orderByField = field;
32
+ }
33
+ this._orderByFields.push(orderByField);
34
+ return this;
35
+ }
36
+ }
37
+ exports.HasOrderByFields = HasOrderByFields;
38
+ //# sourceMappingURL=has-order-by-fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-order-by-fields.js","sourceRoot":"","sources":["../../../src/query/features/has-order-by-fields.ts"],"names":[],"mappings":";;;AAEA,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,iCAAa,CAAA;AACf,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B;AAID,MAAsB,gBAAgB;IAG7B,gBAAgB,CAAC,aAA8C;QACpE,IAAI,CAAC,cAAc,GAAG,aAAa,CAAA;QAEnC,OAAO,IAAoB,CAAA;IAC7B,CAAC;IAEM,gBAAgB;QACrB,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAIM,OAAO,CAAC,KAAgC,EAAE,SAA4B;QAC3E,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAA;SACzB;QAED,IAAI,YAA0B,CAAA;QAE9B,IAAI,SAAS,EAAE;YACb,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,YAAY,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,CAAA;aACnE;iBAAM;gBACL,YAAY,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;aAC1C;SACF;aAAM;YACL,YAAY,GAAG,KAAK,CAAA;SACrB;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAEtC,OAAO,IAAoB,CAAA;IAC7B,CAAC;CACF;AApCD,4CAoCC"}
@@ -0,0 +1,11 @@
1
+ import { BasicField, RawField } from '../fields';
2
+ export type SelectField = RawField | (BasicField & {
3
+ function?: string;
4
+ alias?: string;
5
+ });
6
+ export declare abstract class HasSelectFields<R> {
7
+ protected _selectFields?: Array<SelectField>;
8
+ setSelectFields(selectFields: Array<SelectField> | undefined): R;
9
+ getSelectFields(): Array<SelectField> | undefined;
10
+ select(...fields: Array<SelectField>): R;
11
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HasSelectFields = void 0;
4
+ class HasSelectFields {
5
+ setSelectFields(selectFields) {
6
+ this._selectFields = selectFields;
7
+ return this;
8
+ }
9
+ getSelectFields() {
10
+ return this._selectFields;
11
+ }
12
+ select(...fields) {
13
+ if (!this._selectFields) {
14
+ this._selectFields = [];
15
+ }
16
+ this._selectFields.push(...fields);
17
+ return this;
18
+ }
19
+ }
20
+ exports.HasSelectFields = HasSelectFields;
21
+ //# sourceMappingURL=has-select-fields.js.map