drizzle-orm 0.10.23 → 0.10.26

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 (243) hide show
  1. package/LICENSE +674 -0
  2. package/package.json +16 -12
  3. package/README.md +0 -439
  4. package/builders/aggregators/abstractAggregator.d.ts +0 -11
  5. package/builders/aggregators/abstractAggregator.js +0 -35
  6. package/builders/aggregators/deleteAggregator.d.ts +0 -16
  7. package/builders/aggregators/deleteAggregator.js +0 -39
  8. package/builders/aggregators/insertAggregator.d.ts +0 -22
  9. package/builders/aggregators/insertAggregator.js +0 -103
  10. package/builders/aggregators/selectAggregator.d.ts +0 -39
  11. package/builders/aggregators/selectAggregator.js +0 -140
  12. package/builders/aggregators/updateAggregator.d.ts +0 -19
  13. package/builders/aggregators/updateAggregator.js +0 -47
  14. package/builders/highLvlBuilders/abstractRequestBuilder.d.ts +0 -27
  15. package/builders/highLvlBuilders/abstractRequestBuilder.js +0 -32
  16. package/builders/highLvlBuilders/deleteRequestBuilder.d.ts +0 -19
  17. package/builders/highLvlBuilders/deleteRequestBuilder.js +0 -39
  18. package/builders/highLvlBuilders/insertRequestBuilder.d.ts +0 -20
  19. package/builders/highLvlBuilders/insertRequestBuilder.js +0 -51
  20. package/builders/highLvlBuilders/order.d.ts +0 -5
  21. package/builders/highLvlBuilders/order.js +0 -8
  22. package/builders/highLvlBuilders/selectRequestBuilder.d.ts +0 -47
  23. package/builders/highLvlBuilders/selectRequestBuilder.js +0 -106
  24. package/builders/highLvlBuilders/updateRequestBuilder.d.ts +0 -22
  25. package/builders/highLvlBuilders/updateRequestBuilder.js +0 -58
  26. package/builders/index.d.ts +0 -18
  27. package/builders/index.js +0 -51
  28. package/builders/joinBuilders/builders/abstractJoinBuilder.d.ts +0 -40
  29. package/builders/joinBuilders/builders/abstractJoinBuilder.js +0 -56
  30. package/builders/joinBuilders/builders/selectWithFiveJoins.d.ts +0 -35
  31. package/builders/joinBuilders/builders/selectWithFiveJoins.js +0 -42
  32. package/builders/joinBuilders/builders/selectWithFourJoins.d.ts +0 -55
  33. package/builders/joinBuilders/builders/selectWithFourJoins.js +0 -75
  34. package/builders/joinBuilders/builders/selectWithJoin.d.ts +0 -49
  35. package/builders/joinBuilders/builders/selectWithJoin.js +0 -61
  36. package/builders/joinBuilders/builders/selectWithThreeJoins.d.ts +0 -53
  37. package/builders/joinBuilders/builders/selectWithThreeJoins.js +0 -70
  38. package/builders/joinBuilders/builders/selectWithTwoJoins.d.ts +0 -51
  39. package/builders/joinBuilders/builders/selectWithTwoJoins.js +0 -65
  40. package/builders/joinBuilders/join.d.ts +0 -23
  41. package/builders/joinBuilders/join.js +0 -28
  42. package/builders/joinBuilders/joinWith.d.ts +0 -14
  43. package/builders/joinBuilders/joinWith.js +0 -11
  44. package/builders/joinBuilders/responses/selectResponseFiveJoins.d.ts +0 -20
  45. package/builders/joinBuilders/responses/selectResponseFiveJoins.js +0 -35
  46. package/builders/joinBuilders/responses/selectResponseFourJoins.d.ts +0 -19
  47. package/builders/joinBuilders/responses/selectResponseFourJoins.js +0 -34
  48. package/builders/joinBuilders/responses/selectResponseThreeJoins.d.ts +0 -18
  49. package/builders/joinBuilders/responses/selectResponseThreeJoins.js +0 -33
  50. package/builders/joinBuilders/responses/selectResponseTwoJoins.d.ts +0 -17
  51. package/builders/joinBuilders/responses/selectResponseTwoJoins.js +0 -32
  52. package/builders/joinBuilders/responses/selectResponseWithJoin.d.ts +0 -16
  53. package/builders/joinBuilders/responses/selectResponseWithJoin.js +0 -31
  54. package/builders/joinBuilders/static.d.ts +0 -5
  55. package/builders/joinBuilders/static.js +0 -6
  56. package/builders/lowLvlBuilders/alter.d.ts +0 -0
  57. package/builders/lowLvlBuilders/alter.js +0 -1
  58. package/builders/lowLvlBuilders/create.d.ts +0 -12
  59. package/builders/lowLvlBuilders/create.js +0 -97
  60. package/builders/lowLvlBuilders/delets/delete.d.ts +0 -5
  61. package/builders/lowLvlBuilders/delets/delete.js +0 -12
  62. package/builders/lowLvlBuilders/delets/deleteFilter.d.ts +0 -11
  63. package/builders/lowLvlBuilders/delets/deleteFilter.js +0 -13
  64. package/builders/lowLvlBuilders/delets/deleteFrom.d.ts +0 -12
  65. package/builders/lowLvlBuilders/delets/deleteFrom.js +0 -11
  66. package/builders/lowLvlBuilders/inserts/insert.d.ts +0 -5
  67. package/builders/lowLvlBuilders/inserts/insert.js +0 -12
  68. package/builders/lowLvlBuilders/inserts/insertInto.d.ts +0 -13
  69. package/builders/lowLvlBuilders/inserts/insertInto.js +0 -13
  70. package/builders/lowLvlBuilders/inserts/onConflictInsert.d.ts +0 -12
  71. package/builders/lowLvlBuilders/inserts/onConflictInsert.js +0 -13
  72. package/builders/lowLvlBuilders/inserts/valuesInsert.d.ts +0 -16
  73. package/builders/lowLvlBuilders/inserts/valuesInsert.js +0 -16
  74. package/builders/lowLvlBuilders/selects/select.d.ts +0 -9
  75. package/builders/lowLvlBuilders/selects/select.js +0 -13
  76. package/builders/lowLvlBuilders/selects/selectFrom.d.ts +0 -28
  77. package/builders/lowLvlBuilders/selects/selectFrom.js +0 -31
  78. package/builders/lowLvlBuilders/selects/selectJoined.d.ts +0 -26
  79. package/builders/lowLvlBuilders/selects/selectJoined.js +0 -27
  80. package/builders/lowLvlBuilders/selects/whereSelect.d.ts +0 -17
  81. package/builders/lowLvlBuilders/selects/whereSelect.js +0 -25
  82. package/builders/lowLvlBuilders/updates/update.d.ts +0 -5
  83. package/builders/lowLvlBuilders/updates/update.js +0 -12
  84. package/builders/lowLvlBuilders/updates/updateIn.d.ts +0 -13
  85. package/builders/lowLvlBuilders/updates/updateIn.js +0 -12
  86. package/builders/lowLvlBuilders/updates/whereSelect.d.ts +0 -11
  87. package/builders/lowLvlBuilders/updates/whereSelect.js +0 -13
  88. package/builders/lowLvlBuilders/updates/whereSet.d.ts +0 -14
  89. package/builders/lowLvlBuilders/updates/whereSet.js +0 -15
  90. package/builders/requestBuilders/updates/combine.d.ts +0 -9
  91. package/builders/requestBuilders/updates/combine.js +0 -26
  92. package/builders/requestBuilders/updates/increment.d.ts +0 -13
  93. package/builders/requestBuilders/updates/increment.js +0 -18
  94. package/builders/requestBuilders/updates/setObjects.d.ts +0 -12
  95. package/builders/requestBuilders/updates/setObjects.js +0 -19
  96. package/builders/requestBuilders/updates/static.d.ts +0 -7
  97. package/builders/requestBuilders/updates/static.js +0 -12
  98. package/builders/requestBuilders/updates/updates.d.ts +0 -9
  99. package/builders/requestBuilders/updates/updates.js +0 -10
  100. package/builders/requestBuilders/where/and.d.ts +0 -11
  101. package/builders/requestBuilders/where/and.js +0 -28
  102. package/builders/requestBuilders/where/const.d.ts +0 -9
  103. package/builders/requestBuilders/where/const.js +0 -22
  104. package/builders/requestBuilders/where/constArray.d.ts +0 -9
  105. package/builders/requestBuilders/where/constArray.js +0 -36
  106. package/builders/requestBuilders/where/eqWhere.d.ts +0 -12
  107. package/builders/requestBuilders/where/eqWhere.js +0 -17
  108. package/builders/requestBuilders/where/greater.d.ts +0 -15
  109. package/builders/requestBuilders/where/greater.js +0 -17
  110. package/builders/requestBuilders/where/greaterEq.d.ts +0 -15
  111. package/builders/requestBuilders/where/greaterEq.js +0 -17
  112. package/builders/requestBuilders/where/in.d.ts +0 -12
  113. package/builders/requestBuilders/where/in.js +0 -17
  114. package/builders/requestBuilders/where/isNotNull.d.ts +0 -11
  115. package/builders/requestBuilders/where/isNotNull.js +0 -15
  116. package/builders/requestBuilders/where/isNull.d.ts +0 -11
  117. package/builders/requestBuilders/where/isNull.js +0 -15
  118. package/builders/requestBuilders/where/less.d.ts +0 -15
  119. package/builders/requestBuilders/where/less.js +0 -17
  120. package/builders/requestBuilders/where/lessEq.d.ts +0 -15
  121. package/builders/requestBuilders/where/lessEq.js +0 -17
  122. package/builders/requestBuilders/where/like.d.ts +0 -12
  123. package/builders/requestBuilders/where/like.js +0 -17
  124. package/builders/requestBuilders/where/notEqWhere.d.ts +0 -12
  125. package/builders/requestBuilders/where/notEqWhere.js +0 -17
  126. package/builders/requestBuilders/where/or.d.ts +0 -11
  127. package/builders/requestBuilders/where/or.js +0 -28
  128. package/builders/requestBuilders/where/rawWhere.d.ts +0 -9
  129. package/builders/requestBuilders/where/rawWhere.js +0 -12
  130. package/builders/requestBuilders/where/static.d.ts +0 -17
  131. package/builders/requestBuilders/where/static.js +0 -46
  132. package/builders/requestBuilders/where/var.d.ts +0 -13
  133. package/builders/requestBuilders/where/var.js +0 -15
  134. package/builders/requestBuilders/where/where.d.ts +0 -8
  135. package/builders/requestBuilders/where/where.js +0 -6
  136. package/builders/transaction/transaction.d.ts +0 -8
  137. package/builders/transaction/transaction.js +0 -20
  138. package/columns/column.d.ts +0 -72
  139. package/columns/column.js +0 -101
  140. package/columns/index.d.ts +0 -10
  141. package/columns/index.js +0 -24
  142. package/columns/types/columnType.d.ts +0 -7
  143. package/columns/types/columnType.js +0 -6
  144. package/columns/types/pgBigDecimal.d.ts +0 -10
  145. package/columns/types/pgBigDecimal.js +0 -28
  146. package/columns/types/pgBigInt.d.ts +0 -15
  147. package/columns/types/pgBigInt.js +0 -29
  148. package/columns/types/pgBigSerial.d.ts +0 -15
  149. package/columns/types/pgBigSerial.js +0 -29
  150. package/columns/types/pgBoolean.d.ts +0 -8
  151. package/columns/types/pgBoolean.js +0 -15
  152. package/columns/types/pgEnum.d.ts +0 -9
  153. package/columns/types/pgEnum.js +0 -15
  154. package/columns/types/pgInteger.d.ts +0 -8
  155. package/columns/types/pgInteger.js +0 -18
  156. package/columns/types/pgJsonb.d.ts +0 -9
  157. package/columns/types/pgJsonb.js +0 -17
  158. package/columns/types/pgSerial.d.ts +0 -8
  159. package/columns/types/pgSerial.js +0 -15
  160. package/columns/types/pgSmallInt.d.ts +0 -8
  161. package/columns/types/pgSmallInt.js +0 -15
  162. package/columns/types/pgText.d.ts +0 -8
  163. package/columns/types/pgText.js +0 -15
  164. package/columns/types/pgTime.d.ts +0 -8
  165. package/columns/types/pgTime.js +0 -15
  166. package/columns/types/pgTimestamp.d.ts +0 -8
  167. package/columns/types/pgTimestamp.js +0 -15
  168. package/columns/types/pgTimestamptz.d.ts +0 -8
  169. package/columns/types/pgTimestamptz.js +0 -15
  170. package/columns/types/pgVarChar.d.ts +0 -9
  171. package/columns/types/pgVarChar.js +0 -21
  172. package/db/db.d.ts +0 -18
  173. package/db/db.js +0 -25
  174. package/db/dbConnector.d.ts +0 -9
  175. package/db/dbConnector.js +0 -29
  176. package/db/dbStringConnector.d.ts +0 -6
  177. package/db/dbStringConnector.js +0 -26
  178. package/db/group_by.d.ts +0 -0
  179. package/db/group_by.js +0 -68
  180. package/db/index.d.ts +0 -4
  181. package/db/index.js +0 -11
  182. package/db/session.d.ts +0 -9
  183. package/db/session.js +0 -16
  184. package/docs/cases/simple_delete.d.ts +0 -1
  185. package/docs/cases/simple_delete.js +0 -32
  186. package/docs/cases/simple_insert.d.ts +0 -1
  187. package/docs/cases/simple_insert.js +0 -54
  188. package/docs/cases/simple_join.d.ts +0 -1
  189. package/docs/cases/simple_join.js +0 -112
  190. package/docs/cases/simple_select.d.ts +0 -1
  191. package/docs/cases/simple_select.js +0 -47
  192. package/docs/cases/simple_update.d.ts +0 -1
  193. package/docs/cases/simple_update.js +0 -36
  194. package/docs/tables/citiesTable.d.ts +0 -14
  195. package/docs/tables/citiesTable.js +0 -18
  196. package/docs/tables/userGroupsTable.d.ts +0 -7
  197. package/docs/tables/userGroupsTable.js +0 -15
  198. package/docs/tables/usersTable.d.ts +0 -17
  199. package/docs/tables/usersTable.js +0 -32
  200. package/docs/tables/usersToUserGroups.d.ts +0 -7
  201. package/docs/tables/usersToUserGroups.js +0 -17
  202. package/docs/types/rolesType.d.ts +0 -1
  203. package/docs/types/rolesType.js +0 -6
  204. package/errors/baseError.d.ts +0 -22
  205. package/errors/baseError.js +0 -35
  206. package/errors/builderError.d.ts +0 -14
  207. package/errors/builderError.js +0 -25
  208. package/errors/dbErrors.d.ts +0 -12
  209. package/errors/dbErrors.js +0 -28
  210. package/index.d.ts +0 -11
  211. package/index.js +0 -28
  212. package/indexes/tableIndex.d.ts +0 -11
  213. package/indexes/tableIndex.js +0 -17
  214. package/logger/abstractLogger.d.ts +0 -4
  215. package/logger/abstractLogger.js +0 -5
  216. package/logger/consoleLogger.d.ts +0 -5
  217. package/logger/consoleLogger.js +0 -12
  218. package/mappers/index.d.ts +0 -0
  219. package/mappers/index.js +0 -1
  220. package/mappers/responseMapper.d.ts +0 -10
  221. package/mappers/responseMapper.js +0 -35
  222. package/migrator/index.d.ts +0 -0
  223. package/migrator/index.js +0 -1
  224. package/migrator/migrator.d.ts +0 -11
  225. package/migrator/migrator.js +0 -83
  226. package/serializer/serializer.d.ts +0 -53
  227. package/serializer/serializer.js +0 -257
  228. package/tables/abstractTable.d.ts +0 -68
  229. package/tables/abstractTable.js +0 -129
  230. package/tables/aggregators.d.ts +0 -27
  231. package/tables/aggregators.js +0 -56
  232. package/tables/index.d.ts +0 -3
  233. package/tables/index.js +0 -8
  234. package/tables/inferTypes.d.ts +0 -39
  235. package/tables/inferTypes.js +0 -2
  236. package/tables/migrationsTable.d.ts +0 -7
  237. package/tables/migrationsTable.js +0 -15
  238. package/test.d.ts +0 -1
  239. package/test.js +0 -62
  240. package/types/type.d.ts +0 -10
  241. package/types/type.js +0 -14
  242. package/utils/ecranate.d.ts +0 -2
  243. package/utils/ecranate.js +0 -8
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class SelectResponseJoin {
4
- constructor(t1, t2) {
5
- this.map = (imac) => {
6
- const objects = new Array();
7
- for (let i = 0; i < this._t1.length; i += 1) {
8
- objects.push(imac(this._t1[i], this._t2[i]));
9
- }
10
- return objects;
11
- };
12
- this.foreach = (imac) => {
13
- for (let i = 0; i < this._t1.length; i += 1) {
14
- imac(this._t1[i], this._t2[i]);
15
- }
16
- };
17
- this.group = ({ one, many, }) => {
18
- const objects = new Array();
19
- for (let i = 0; i < this._t1.length; i += 1) {
20
- objects.push(many(this._t1[i], this._t2[i]));
21
- }
22
- return {
23
- one: one(this._t1[0], this._t2[0]),
24
- many: objects,
25
- };
26
- };
27
- this._t1 = t1;
28
- this._t2 = t2;
29
- }
30
- }
31
- exports.default = SelectResponseJoin;
@@ -1,5 +0,0 @@
1
- import ColumnType from '../../columns/types/columnType';
2
- import AbstractTable from '../../tables/abstractTable';
3
- import JoinWith from './joinWith';
4
- declare const to: <TTable extends AbstractTable<TTable>>(table: AbstractTable<TTable>) => JoinWith<ColumnType<{}>, TTable>;
5
- export default to;
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const joinWith_1 = require("./joinWith");
4
- const to = (table) => new joinWith_1.default(table.tableName(), table.mapServiceToDb());
5
- // eslint-disable-next-line import/prefer-default-export
6
- exports.default = to;
File without changes
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,12 +0,0 @@
1
- import AbstractTable from '../../tables/abstractTable';
2
- export default class Create<TTable extends AbstractTable<TTable>> {
3
- private tableBuilder;
4
- private enumBuilder;
5
- private columnsBuilder;
6
- private primaryKey;
7
- private uniqueKey;
8
- private tableClass;
9
- private constructor();
10
- static table: <StaticTTable extends AbstractTable<StaticTTable>>(tableClass: AbstractTable<StaticTTable>) => Create<StaticTTable>;
11
- build: () => string;
12
- }
@@ -1,97 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const column_1 = require("../../columns/column");
4
- const pgEnum_1 = require("../../columns/types/pgEnum");
5
- const ecranate_1 = require("../../utils/ecranate");
6
- class Create {
7
- constructor(tableClass) {
8
- this.tableBuilder = [];
9
- this.enumBuilder = [];
10
- this.columnsBuilder = [];
11
- this.primaryKey = [];
12
- this.uniqueKey = [];
13
- this.build = () => {
14
- this.tableBuilder.push('CREATE TABLE IF NOT EXISTS ');
15
- this.tableBuilder.push(this.tableClass.tableName());
16
- this.tableBuilder.push(' (');
17
- const tableValues = Object.values(this.tableClass);
18
- const columns = tableValues.filter((value) => value instanceof column_1.Column);
19
- for (let i = 0; i < columns.length; i += 1) {
20
- const column = columns[i];
21
- if (column instanceof column_1.Column) {
22
- const columnType = column.getColumnType();
23
- if (columnType instanceof pgEnum_1.default) {
24
- // eslint-disable-next-line new-cap
25
- const enumValues = Object.values(columnType.codeType);
26
- let resValue = '';
27
- for (let j = 0; j < enumValues.length; j += 1) {
28
- resValue += `'${enumValues[j]}'`;
29
- if (j !== enumValues.length - 1) {
30
- resValue += ',';
31
- }
32
- }
33
- this.enumBuilder.push(`DO $$ BEGIN
34
- CREATE TYPE ${columnType.dbName} AS ENUM (${resValue});
35
- EXCEPTION
36
- WHEN duplicate_object THEN null;
37
- END $$;`);
38
- }
39
- this.columnsBuilder.push(ecranate_1.ecranate(column.getColumnName()));
40
- this.columnsBuilder.push(' ');
41
- this.columnsBuilder.push(column.getColumnType().getDbName());
42
- this.columnsBuilder.push(' ');
43
- this.columnsBuilder.push(column.getDefaultValue() != null ? `DEFAULT ${column.getColumnType().insertStrategy(column.getDefaultValue())}` : '');
44
- this.columnsBuilder.push(column.isNullableFlag ? '' : ' NOT NULL');
45
- const referenced = column.getReferenced();
46
- this.columnsBuilder.push(referenced != null ? ` REFERENCES ${referenced.getParentName()} (${referenced.getColumnName()})` : '');
47
- if (i !== columns.length - 1) {
48
- this.columnsBuilder.push(',');
49
- }
50
- }
51
- }
52
- const primaryKeys = [];
53
- const uniqueKeys = [];
54
- Object.values(this.tableClass).forEach((field) => {
55
- if (field instanceof column_1.Column) {
56
- if (field.primaryKeyName) {
57
- primaryKeys.push(field);
58
- }
59
- if (field.uniqueKeyName) {
60
- uniqueKeys.push(field);
61
- }
62
- }
63
- });
64
- if (primaryKeys.length !== 0) {
65
- this.primaryKey.push(',');
66
- this.primaryKey.push(`\nCONSTRAINT ${this.tableClass.tableName()}_${primaryKeys[0].getColumnName()}`);
67
- this.primaryKey.push(' PRIMARY KEY(');
68
- for (let i = 0; i < primaryKeys.length; i += 1) {
69
- const column = primaryKeys[i];
70
- this.primaryKey.push(column.getColumnName());
71
- if (i !== primaryKeys.length - 1) {
72
- this.primaryKey.push(',');
73
- }
74
- }
75
- this.primaryKey.push(')');
76
- }
77
- if (uniqueKeys.length !== 0) {
78
- const columnName = uniqueKeys[0].getColumnName();
79
- this.uniqueKey.push(',');
80
- this.uniqueKey.push(`\nCONSTRAINT ${this.tableClass.tableName()}_${columnName}`);
81
- this.uniqueKey.push(' UNIQUE(');
82
- for (let i = 0; i < uniqueKeys.length; i += 1) {
83
- const column = uniqueKeys[i];
84
- this.uniqueKey.push(column.getColumnName());
85
- if (i !== uniqueKeys.length - 1) {
86
- this.uniqueKey.push(',');
87
- }
88
- }
89
- this.uniqueKey.push(')');
90
- }
91
- return `${this.enumBuilder.join('')} ${this.tableBuilder.join('') + this.columnsBuilder.join('') + this.primaryKey.join('') + this.uniqueKey.join('')});`;
92
- };
93
- this.tableClass = tableClass;
94
- }
95
- }
96
- exports.default = Create;
97
- Create.table = (tableClass) => new Create(tableClass);
@@ -1,5 +0,0 @@
1
- import { AbstractTable } from '../../../tables';
2
- import DeleteFrom from './deleteFrom';
3
- export default class Delete {
4
- static from: <TTable extends AbstractTable<TTable>>(table: AbstractTable<TTable>) => DeleteFrom;
5
- }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const deleteAggregator_1 = require("../../aggregators/deleteAggregator");
4
- const deleteFrom_1 = require("./deleteFrom");
5
- class Delete {
6
- }
7
- exports.default = Delete;
8
- Delete.from = (table) => {
9
- const aggregator = new deleteAggregator_1.default(table);
10
- aggregator.appendFrom(table.tableName());
11
- return new deleteFrom_1.default(aggregator);
12
- };
@@ -1,11 +0,0 @@
1
- import DeleteAggregator from '../../aggregators/deleteAggregator';
2
- import Expr from '../../requestBuilders/where/where';
3
- export default class DeleteFilter<SERVICE, DB> {
4
- private _aggregator;
5
- constructor(aggregator: DeleteAggregator);
6
- apply: (filters: Expr) => DeleteFilter<SERVICE, DB>;
7
- build: () => {
8
- query: string;
9
- values: any[];
10
- };
11
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class DeleteFilter {
4
- constructor(aggregator) {
5
- this.apply = (filters) => {
6
- this._aggregator.filters(filters);
7
- return this;
8
- };
9
- this.build = () => this._aggregator.buildQuery();
10
- this._aggregator = aggregator;
11
- }
12
- }
13
- exports.default = DeleteFilter;
@@ -1,12 +0,0 @@
1
- import DeleteAggregator from '../../aggregators/deleteAggregator';
2
- import Expr from '../../requestBuilders/where/where';
3
- import DeleteFilter from './deleteFilter';
4
- export default class DeleteFrom {
5
- private _aggregator;
6
- constructor(aggregator: DeleteAggregator);
7
- build: () => {
8
- query: string;
9
- values: any[];
10
- };
11
- filteredBy: (filters: Expr) => DeleteFilter<unknown, unknown>;
12
- }
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const deleteFilter_1 = require("./deleteFilter");
4
- class DeleteFrom {
5
- constructor(aggregator) {
6
- this.build = () => this._aggregator.buildQuery();
7
- this.filteredBy = (filters) => new deleteFilter_1.default(this._aggregator).apply(filters);
8
- this._aggregator = aggregator;
9
- }
10
- }
11
- exports.default = DeleteFrom;
@@ -1,5 +0,0 @@
1
- import { AbstractTable } from '../../../tables';
2
- import InsertInto from './insertInto';
3
- export default class Insert {
4
- static into: <TTable extends AbstractTable<TTable>>(table: AbstractTable<TTable>) => InsertInto;
5
- }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const insertAggregator_1 = require("../../aggregators/insertAggregator");
4
- const insertInto_1 = require("./insertInto");
5
- class Insert {
6
- }
7
- exports.default = Insert;
8
- Insert.into = (table) => {
9
- const aggregator = new insertAggregator_1.default(table);
10
- // aggregator.appendFrom(table.tableName());
11
- return new insertInto_1.default(aggregator);
12
- };
@@ -1,13 +0,0 @@
1
- import InsertAggregator from '../../aggregators/insertAggregator';
2
- import ValuesInsert from './valuesInsert';
3
- export default class InsertInto {
4
- private _aggregator;
5
- constructor(aggregator: InsertAggregator);
6
- values: (values: {
7
- [name: string]: any;
8
- }[]) => ValuesInsert;
9
- build: () => {
10
- query: string;
11
- values: any[];
12
- };
13
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const valuesInsert_1 = require("./valuesInsert");
4
- class InsertInto {
5
- constructor(aggregator) {
6
- // @TODO refactor!!
7
- this.values = (values) => new valuesInsert_1.default(this._aggregator)
8
- .apply(values);
9
- this.build = () => this._aggregator.buildQuery();
10
- this._aggregator = aggregator;
11
- }
12
- }
13
- exports.default = InsertInto;
@@ -1,12 +0,0 @@
1
- import { Indexing } from '../../../tables/inferTypes';
2
- import InsertAggregator from '../../aggregators/insertAggregator';
3
- import { UpdateExpr } from '../../requestBuilders/updates/updates';
4
- export default class OnConflictInsert {
5
- private _aggregator;
6
- constructor(aggregator: InsertAggregator);
7
- apply: (updates: UpdateExpr, column: Indexing) => OnConflictInsert;
8
- build: () => {
9
- query: string;
10
- values: any[];
11
- };
12
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class OnConflictInsert {
4
- constructor(aggregator) {
5
- this.apply = (updates, column) => {
6
- this._aggregator.appendOnConflict(column, updates);
7
- return this;
8
- };
9
- this.build = () => this._aggregator.buildQuery();
10
- this._aggregator = aggregator;
11
- }
12
- }
13
- exports.default = OnConflictInsert;
@@ -1,16 +0,0 @@
1
- import { Indexing } from '../../../tables/inferTypes';
2
- import InsertAggregator from '../../aggregators/insertAggregator';
3
- import { UpdateExpr } from '../../requestBuilders/updates/updates';
4
- import OnConflictInsert from './onConflictInsert';
5
- export default class ValuesInsert {
6
- private _aggregator;
7
- constructor(aggregator: InsertAggregator);
8
- apply: (values: {
9
- [name: string]: any;
10
- }[]) => ValuesInsert;
11
- onConflict: (updates: UpdateExpr, column: Indexing) => OnConflictInsert;
12
- build: () => {
13
- query: string;
14
- values: any[];
15
- };
16
- }
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const onConflictInsert_1 = require("./onConflictInsert");
4
- class ValuesInsert {
5
- constructor(aggregator) {
6
- this.apply = (values) => {
7
- this._aggregator.appendColumns();
8
- this._aggregator.appendValues(values);
9
- return this;
10
- };
11
- this.onConflict = (updates, column) => new onConflictInsert_1.default(this._aggregator).apply(updates, column);
12
- this.build = () => this._aggregator.buildQuery();
13
- this._aggregator = aggregator;
14
- }
15
- }
16
- exports.default = ValuesInsert;
@@ -1,9 +0,0 @@
1
- import { AbstractColumn } from '../../../columns/column';
2
- import ColumnType from '../../../columns/types/columnType';
3
- import { AbstractTable } from '../../../tables';
4
- import SelectFrom from './selectFrom';
5
- export default class Select {
6
- static from: <TTable extends AbstractTable<TTable>, TType extends ColumnType<any>, TColumn extends AbstractColumn<TType, boolean, boolean, TTable>, T extends {
7
- [name: string]: TColumn;
8
- } = {}>(table: AbstractTable<TTable>, partial?: T | undefined) => SelectFrom;
9
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const selectAggregator_1 = require("../../aggregators/selectAggregator");
4
- const selectFrom_1 = require("./selectFrom");
5
- class Select {
6
- }
7
- exports.default = Select;
8
- // eslint-disable-next-line max-len
9
- Select.from = (table, partial) => {
10
- const aggregator = new selectAggregator_1.default(table, partial);
11
- aggregator.appendFrom(table.tableName());
12
- return new selectFrom_1.default(aggregator);
13
- };
@@ -1,28 +0,0 @@
1
- import { AbstractColumn } from '../../../columns/column';
2
- import ColumnType from '../../../columns/types/columnType';
3
- import SelectAggregator from '../../aggregators/selectAggregator';
4
- import Order from '../../highLvlBuilders/order';
5
- import Join from '../../joinBuilders/join';
6
- import Expr from '../../requestBuilders/where/where';
7
- import SelectJoined from './selectJoined';
8
- import WhereSelect from './whereSelect';
9
- export default class SelectFrom {
10
- private _aggregator;
11
- constructor(aggregator: SelectAggregator);
12
- joined: (joins: {
13
- join: Join<any>;
14
- partial?: {
15
- [name: string]: AbstractColumn<ColumnType<any>, boolean, boolean, any>;
16
- } | undefined;
17
- id?: number | undefined;
18
- }[]) => SelectJoined;
19
- limit: (limit?: number | undefined) => SelectFrom;
20
- offset: (offset?: number | undefined) => SelectFrom;
21
- orderBy: (orderBy?: AbstractColumn<ColumnType<{}>, boolean, boolean, any> | undefined, order?: Order | undefined) => SelectFrom;
22
- distinct: (column?: AbstractColumn<ColumnType<{}>, boolean, boolean, any> | undefined) => SelectFrom;
23
- filteredBy: (filters: Expr) => WhereSelect;
24
- build: () => {
25
- query: string;
26
- values: any[];
27
- };
28
- }
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const selectJoined_1 = require("./selectJoined");
4
- const whereSelect_1 = require("./whereSelect");
5
- class SelectFrom {
6
- constructor(aggregator) {
7
- this.joined = (joins) => new selectJoined_1.default(this._aggregator).apply(joins);
8
- this.limit = (limit) => {
9
- this._aggregator.limit(limit);
10
- return this;
11
- };
12
- this.offset = (offset) => {
13
- this._aggregator.offset(offset);
14
- return this;
15
- };
16
- this.orderBy = (orderBy, order) => {
17
- this._aggregator.orderBy(orderBy, order);
18
- return this;
19
- };
20
- this.distinct = (column) => {
21
- if (column) {
22
- this._aggregator.distinct(column);
23
- }
24
- return this;
25
- };
26
- this.filteredBy = (filters) => new whereSelect_1.default(this._aggregator).apply(filters);
27
- this.build = () => this._aggregator.buildQuery();
28
- this._aggregator = aggregator;
29
- }
30
- }
31
- exports.default = SelectFrom;
@@ -1,26 +0,0 @@
1
- import { AbstractColumn } from '../../../columns/column';
2
- import ColumnType from '../../../columns/types/columnType';
3
- import SelectAggregator from '../../aggregators/selectAggregator';
4
- import Order from '../../highLvlBuilders/order';
5
- import Join from '../../joinBuilders/join';
6
- import Expr from '../../requestBuilders/where/where';
7
- import WhereSelect from './whereSelect';
8
- export default class SelectJoined {
9
- private _aggregator;
10
- constructor(aggregator: SelectAggregator);
11
- apply: (joins: {
12
- join: Join<any>;
13
- partial?: {
14
- [name: string]: AbstractColumn<ColumnType<any>, boolean, boolean, any>;
15
- } | undefined;
16
- id?: number | undefined;
17
- }[]) => SelectJoined;
18
- limit: (limit?: number | undefined) => SelectJoined;
19
- offset: (offset?: number | undefined) => SelectJoined;
20
- orderBy: (orderBy?: AbstractColumn<ColumnType<{}>, boolean, boolean, any> | undefined, order?: Order | undefined) => SelectJoined;
21
- filteredBy: (filters: Expr) => WhereSelect;
22
- build: () => {
23
- query: string;
24
- values: any[];
25
- };
26
- }
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const whereSelect_1 = require("./whereSelect");
4
- class SelectJoined {
5
- constructor(aggregator) {
6
- this.apply = (joins) => {
7
- this._aggregator.join(joins);
8
- return this;
9
- };
10
- this.limit = (limit) => {
11
- this._aggregator.limit(limit);
12
- return this;
13
- };
14
- this.offset = (offset) => {
15
- this._aggregator.offset(offset);
16
- return this;
17
- };
18
- this.orderBy = (orderBy, order) => {
19
- this._aggregator.orderBy(orderBy, order);
20
- return this;
21
- };
22
- this.filteredBy = (filters) => new whereSelect_1.default(this._aggregator).apply(filters);
23
- this.build = () => this._aggregator.buildQuery();
24
- this._aggregator = aggregator;
25
- }
26
- }
27
- exports.default = SelectJoined;
@@ -1,17 +0,0 @@
1
- import { AbstractColumn } from '../../../columns/column';
2
- import ColumnType from '../../../columns/types/columnType';
3
- import SelectAggregator from '../../aggregators/selectAggregator';
4
- import Order from '../../highLvlBuilders/order';
5
- import Expr from '../../requestBuilders/where/where';
6
- export default class WhereSelect {
7
- private _aggregator;
8
- constructor(aggregator: SelectAggregator);
9
- limit: (limit?: number | undefined) => WhereSelect;
10
- offset: (offset?: number | undefined) => WhereSelect;
11
- orderBy: (orderBy?: AbstractColumn<ColumnType<{}>, boolean, boolean, any> | undefined, order?: Order | undefined) => WhereSelect;
12
- apply: (filters: Expr) => WhereSelect;
13
- build: () => {
14
- query: string;
15
- values: any[];
16
- };
17
- }
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class WhereSelect {
4
- constructor(aggregator) {
5
- this.limit = (limit) => {
6
- this._aggregator.limit(limit);
7
- return this;
8
- };
9
- this.offset = (offset) => {
10
- this._aggregator.offset(offset);
11
- return this;
12
- };
13
- this.orderBy = (orderBy, order) => {
14
- this._aggregator.orderBy(orderBy, order);
15
- return this;
16
- };
17
- this.apply = (filters) => {
18
- this._aggregator.filters(filters);
19
- return this;
20
- };
21
- this.build = () => this._aggregator.buildQuery();
22
- this._aggregator = aggregator;
23
- }
24
- }
25
- exports.default = WhereSelect;
@@ -1,5 +0,0 @@
1
- import { AbstractTable } from '../../../tables';
2
- import UpdateIn from './updateIn';
3
- export default class Update {
4
- static in: <TTable extends AbstractTable<TTable>>(table: AbstractTable<TTable>) => UpdateIn;
5
- }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const updateAggregator_1 = require("../../aggregators/updateAggregator");
4
- const updateIn_1 = require("./updateIn");
5
- class Update {
6
- }
7
- exports.default = Update;
8
- Update.in = (table) => {
9
- const aggregator = new updateAggregator_1.default(table);
10
- aggregator.appendFrom(table.tableName());
11
- return new updateIn_1.default(aggregator);
12
- };
@@ -1,13 +0,0 @@
1
- import UpdateAggregator from '../../aggregators/updateAggregator';
2
- import { UpdateExpr } from '../../requestBuilders/updates/updates';
3
- import WhereSet from './whereSet';
4
- export default class UpdateIn {
5
- private _aggregator;
6
- constructor(aggregator: UpdateAggregator);
7
- columns: () => UpdateIn;
8
- set: (updates: UpdateExpr) => WhereSet<unknown, unknown>;
9
- build: () => {
10
- query: string;
11
- values: any[];
12
- };
13
- }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const whereSet_1 = require("./whereSet");
4
- class UpdateIn {
5
- constructor(aggregator) {
6
- this.columns = () => new UpdateIn(this._aggregator);
7
- this.set = (updates) => new whereSet_1.default(this._aggregator).apply(updates);
8
- this.build = () => this._aggregator.buildQuery();
9
- this._aggregator = aggregator;
10
- }
11
- }
12
- exports.default = UpdateIn;
@@ -1,11 +0,0 @@
1
- import UpdateAggregator from '../../aggregators/updateAggregator';
2
- import Expr from '../../requestBuilders/where/where';
3
- export default class WhereSelect<SERVICE, DB> {
4
- private _aggregator;
5
- constructor(aggregator: UpdateAggregator);
6
- apply: (filters: Expr) => WhereSelect<SERVICE, DB>;
7
- build: () => {
8
- query: string;
9
- values: any[];
10
- };
11
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class WhereSelect {
4
- constructor(aggregator) {
5
- this.apply = (filters) => {
6
- this._aggregator.where(filters);
7
- return this;
8
- };
9
- this.build = () => this._aggregator.buildQuery();
10
- this._aggregator = aggregator;
11
- }
12
- }
13
- exports.default = WhereSelect;
@@ -1,14 +0,0 @@
1
- import UpdateAggregator from '../../aggregators/updateAggregator';
2
- import { UpdateExpr } from '../../requestBuilders/updates/updates';
3
- import Expr from '../../requestBuilders/where/where';
4
- import WhereSelect from './whereSelect';
5
- export default class WhereSet<SERVICE, DB> {
6
- private _aggregator;
7
- constructor(aggregator: UpdateAggregator);
8
- apply: (updates: UpdateExpr) => WhereSet<SERVICE, DB>;
9
- filteredBy: (filters: Expr) => WhereSelect<unknown, unknown>;
10
- build: () => {
11
- query: string;
12
- values: any[];
13
- };
14
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const whereSelect_1 = require("./whereSelect");
4
- class WhereSet {
5
- constructor(aggregator) {
6
- this.apply = (updates) => {
7
- this._aggregator.set(updates);
8
- return this;
9
- };
10
- this.filteredBy = (filters) => new whereSelect_1.default(this._aggregator).apply(filters);
11
- this.build = () => this._aggregator.buildQuery();
12
- this._aggregator = aggregator;
13
- }
14
- }
15
- exports.default = WhereSet;