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,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const join_1 = require("../join");
4
- const joinWith_1 = require("../joinWith");
5
- const selectResponseWithJoin_1 = require("../responses/selectResponseWithJoin");
6
- const abstractJoinBuilder_1 = require("./abstractJoinBuilder");
7
- const selectWithTwoJoins_1 = require("./selectWithTwoJoins");
8
- // eslint-disable-next-line max-len
9
- class SelectTRBWithJoin extends abstractJoinBuilder_1.default {
10
- constructor(table, session, filter, join, props, orderBy, order, distinct, tablePartial, joinedPartial) {
11
- super(table, filter, session, props, orderBy, order, distinct, tablePartial);
12
- this._join = join;
13
- this._joinedPartial = joinedPartial;
14
- }
15
- innerJoin(fromTable, table, from, to, partial) {
16
- const toTable = this._table.db.create(table);
17
- const tableFrom = this._table.db.create(fromTable);
18
- const fromColumn = from(tableFrom);
19
- const toColumn = to(toTable);
20
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
21
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.INNER_JOIN);
22
- return new selectWithTwoJoins_1.default(this._table, this._session, this._filter, this._join, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, partial);
23
- }
24
- leftJoin(fromTable, table, from, to, partial) {
25
- const toTable = this._table.db.create(table);
26
- const tableFrom = this._table.db.create(fromTable);
27
- const fromColumn = from(tableFrom);
28
- const toColumn = to(toTable);
29
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
30
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.LEFT_JOIN);
31
- return new selectWithTwoJoins_1.default(this._table, this._session, this._filter, this._join, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, partial);
32
- }
33
- rightJoin(fromTable, table, from, to, partial) {
34
- const toTable = this._table.db.create(table);
35
- const tableFrom = this._table.db.create(fromTable);
36
- const fromColumn = from(tableFrom);
37
- const toColumn = to(toTable);
38
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
39
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.RIGHT_JOIN);
40
- return new selectWithTwoJoins_1.default(this._table, this._session, this._filter, this._join, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, partial);
41
- }
42
- fullJoin(fromTable, table, from, to, partial) {
43
- const toTable = this._table.db.create(table);
44
- const tableFrom = this._table.db.create(fromTable);
45
- const fromColumn = from(tableFrom);
46
- const toColumn = to(toTable);
47
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
48
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.FULL_JOIN);
49
- return new selectWithTwoJoins_1.default(this._table, this._session, this._filter, this._join, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, partial);
50
- }
51
- joins() {
52
- return [{ join: this._join, partial: this._joinedPartial, id: 1 }];
53
- }
54
- mapResponse(result) {
55
- const parent = this._join.mappedServiceToDb;
56
- const response = this.fullOrPartial(this._table.mapServiceToDb(), result, this._partial);
57
- const objects = this.fullOrPartial(parent, result, this._joinedPartial, 1);
58
- return new selectResponseWithJoin_1.default(response, objects);
59
- }
60
- }
61
- exports.default = SelectTRBWithJoin;
@@ -1,53 +0,0 @@
1
- import { QueryResult } from 'pg';
2
- import { AbstractColumn } from '../../../columns/column';
3
- import ColumnType from '../../../columns/types/columnType';
4
- import DB from '../../../db/db';
5
- import { ISession } from '../../../db/session';
6
- import AbstractTable from '../../../tables/abstractTable';
7
- import { CheckFourTypes, PartialFor } from '../../../tables/inferTypes';
8
- import Order from '../../highLvlBuilders/order';
9
- import Expr from '../../requestBuilders/where/where';
10
- import Join from '../join';
11
- import SelectResponseThreeJoins from '../responses/selectResponseThreeJoins';
12
- import AbstractJoined from './abstractJoinBuilder';
13
- import SelectTRBWithFourJoins from './selectWithFourJoins';
14
- export default class SelectTRBWithThreeJoins<TTable extends AbstractTable<TTable>, TTable1 extends AbstractTable<TTable1>, TTable2 extends AbstractTable<TTable2>, TTable3 extends AbstractTable<TTable3>, TPartial extends PartialFor<TTable> = {}, TPartial1 extends PartialFor<TTable1> = {}, TPartial2 extends PartialFor<TTable2> = {}, TPartial3 extends PartialFor<TTable3> = {}> extends AbstractJoined<TTable, SelectResponseThreeJoins<TTable, TTable1, TTable2, TTable3, TPartial, TPartial1, TPartial2, TPartial3>, TPartial> {
15
- private _join1;
16
- private _join2;
17
- private _join3;
18
- private _joinedPartial?;
19
- private _joinedPartial1?;
20
- private _joinedPartial2?;
21
- constructor(table: TTable, session: ISession, filter: Expr, join1: Join<TTable1>, join2: Join<TTable2>, join3: Join<TTable3>, props: {
22
- limit?: number;
23
- offset?: number;
24
- }, orderBy?: AbstractColumn<ColumnType, boolean, boolean>, order?: Order, distinct?: AbstractColumn<ColumnType, boolean, boolean>, tablePartial?: TPartial, joinedPartial?: TPartial1, joinedPartial1?: TPartial2, joinedPartial2?: TPartial3);
25
- innerJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
26
- new (db: DB): InputTable;
27
- }, table: {
28
- new (db: DB): IToTable;
29
- }, from: (table: CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>) => AbstractColumn<TColumn, boolean, boolean, CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithFourJoins<TTable, TTable1, TTable2, TTable3, IToTable, TPartial, TPartial1, TPartial2, TPartial3, IToPartial>;
30
- leftJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
31
- new (db: DB): InputTable;
32
- }, table: {
33
- new (db: DB): IToTable;
34
- }, from: (table: CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>) => AbstractColumn<TColumn, boolean, boolean, CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithFourJoins<TTable, TTable1, TTable2, TTable3, IToTable, TPartial, TPartial1, TPartial2, TPartial3, IToPartial>;
35
- rightJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
36
- new (db: DB): InputTable;
37
- }, table: {
38
- new (db: DB): IToTable;
39
- }, from: (table: CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>) => AbstractColumn<TColumn, boolean, boolean, CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithFourJoins<TTable, TTable1, TTable2, TTable3, IToTable, TPartial, TPartial1, TPartial2, TPartial3, IToPartial>;
40
- fullJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
41
- new (db: DB): InputTable;
42
- }, table: {
43
- new (db: DB): IToTable;
44
- }, from: (table: CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>) => AbstractColumn<TColumn, boolean, boolean, CheckFourTypes<InputTable, TTable, TTable1, TTable2, TTable3>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithFourJoins<TTable, TTable1, TTable2, TTable3, IToTable, TPartial, TPartial1, TPartial2, TPartial3, IToPartial>;
45
- protected mapResponse(result: QueryResult<any>): SelectResponseThreeJoins<TTable, TTable1, TTable2, TTable3, TPartial, TPartial1, TPartial2, TPartial3>;
46
- protected joins(): Array<{
47
- join: Join<any>;
48
- partial?: {
49
- [name: string]: AbstractColumn<ColumnType<any>, boolean, boolean, any>;
50
- };
51
- id?: number;
52
- }>;
53
- }
@@ -1,70 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const join_1 = require("../join");
4
- const joinWith_1 = require("../joinWith");
5
- const selectResponseThreeJoins_1 = require("../responses/selectResponseThreeJoins");
6
- const abstractJoinBuilder_1 = require("./abstractJoinBuilder");
7
- const selectWithFourJoins_1 = require("./selectWithFourJoins");
8
- class SelectTRBWithThreeJoins extends abstractJoinBuilder_1.default {
9
- constructor(table, session, filter, join1, join2, join3, props, orderBy, order, distinct, tablePartial, joinedPartial, joinedPartial1, joinedPartial2) {
10
- super(table, filter, session, props, orderBy, order, distinct, tablePartial);
11
- this._join1 = join1;
12
- this._join2 = join2;
13
- this._join3 = join3;
14
- this._joinedPartial = joinedPartial;
15
- this._joinedPartial1 = joinedPartial1;
16
- this._joinedPartial2 = joinedPartial2;
17
- }
18
- innerJoin(fromTable, table, from, to, partial) {
19
- const toTable = this._table.db.create(table);
20
- const tableFrom = this._table.db.create(fromTable);
21
- const fromColumn = from(tableFrom);
22
- const toColumn = to(toTable);
23
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
24
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.INNER_JOIN);
25
- return new selectWithFourJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, this._join3, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, this._joinedPartial2, partial);
26
- }
27
- leftJoin(fromTable, table, from, to, partial) {
28
- const toTable = this._table.db.create(table);
29
- const tableFrom = this._table.db.create(fromTable);
30
- const fromColumn = from(tableFrom);
31
- const toColumn = to(toTable);
32
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
33
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.LEFT_JOIN);
34
- return new selectWithFourJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, this._join3, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, this._joinedPartial2, partial);
35
- }
36
- rightJoin(fromTable, table, from, to, partial) {
37
- const toTable = this._table.db.create(table);
38
- const tableFrom = this._table.db.create(fromTable);
39
- const fromColumn = from(tableFrom);
40
- const toColumn = to(toTable);
41
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
42
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.RIGHT_JOIN);
43
- return new selectWithFourJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, this._join3, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, this._joinedPartial2, partial);
44
- }
45
- fullJoin(fromTable, table, from, to, partial) {
46
- const toTable = this._table.db.create(table);
47
- const tableFrom = this._table.db.create(fromTable);
48
- const fromColumn = from(tableFrom);
49
- const toColumn = to(toTable);
50
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
51
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.FULL_JOIN);
52
- return new selectWithFourJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, this._join3, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, this._joinedPartial2, partial);
53
- }
54
- mapResponse(result) {
55
- const parent = this._join1.mappedServiceToDb;
56
- const parentTwo = this._join2.mappedServiceToDb;
57
- const parentThree = this._join3.mappedServiceToDb;
58
- const response = this.fullOrPartial(this._table.mapServiceToDb(), result, this._partial);
59
- const objects = this.fullOrPartial(parent, result, this._joinedPartial, 1);
60
- const objectsTwo = this.fullOrPartial(parentTwo, result, this._joinedPartial1, 2);
61
- const objectsThree = this.fullOrPartial(parentThree, result, this._joinedPartial2, 3);
62
- return new selectResponseThreeJoins_1.default(response, objects, objectsTwo, objectsThree);
63
- }
64
- joins() {
65
- return [{ join: this._join1, partial: this._joinedPartial, id: 1 },
66
- { join: this._join2, partial: this._joinedPartial1, id: 2 },
67
- { join: this._join3, partial: this._joinedPartial2, id: 3 }];
68
- }
69
- }
70
- exports.default = SelectTRBWithThreeJoins;
@@ -1,51 +0,0 @@
1
- import { QueryResult } from 'pg';
2
- import { AbstractColumn } from '../../../columns/column';
3
- import ColumnType from '../../../columns/types/columnType';
4
- import DB from '../../../db/db';
5
- import { ISession } from '../../../db/session';
6
- import AbstractTable from '../../../tables/abstractTable';
7
- import { CheckThreeTypes, PartialFor } from '../../../tables/inferTypes';
8
- import Order from '../../highLvlBuilders/order';
9
- import Expr from '../../requestBuilders/where/where';
10
- import Join from '../join';
11
- import SelectResponseTwoJoins from '../responses/selectResponseTwoJoins';
12
- import AbstractJoined from './abstractJoinBuilder';
13
- import SelectTRBWithThreeJoins from './selectWithThreeJoins';
14
- export default class SelectTRBWithTwoJoins<TTable extends AbstractTable<TTable>, TTable1 extends AbstractTable<TTable1>, TTable2 extends AbstractTable<TTable2>, TPartial extends PartialFor<TTable> = {}, TPartial1 extends PartialFor<TTable1> = {}, TPartial2 extends PartialFor<TTable2> = {}> extends AbstractJoined<TTable, SelectResponseTwoJoins<TTable, TTable1, TTable2, TPartial, TPartial1, TPartial2>, TPartial> {
15
- private _join1;
16
- private _join2;
17
- private _joinedPartial?;
18
- private _joinedPartial1?;
19
- constructor(table: TTable, session: ISession, filter: Expr, join1: Join<TTable1>, join2: Join<TTable2>, props: {
20
- limit?: number;
21
- offset?: number;
22
- }, orderBy?: AbstractColumn<ColumnType, boolean, boolean>, order?: Order, distinct?: AbstractColumn<ColumnType, boolean, boolean>, tablePartial?: TPartial, joinedPartial?: TPartial1, joinedPartial1?: TPartial2);
23
- innerJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
24
- new (db: DB): InputTable;
25
- }, table: {
26
- new (db: DB): IToTable;
27
- }, from: (table: CheckThreeTypes<InputTable, TTable, TTable1, TTable2>) => AbstractColumn<TColumn, boolean, boolean, CheckThreeTypes<InputTable, TTable, TTable1, TTable2>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithThreeJoins<TTable, TTable1, TTable2, IToTable, TPartial, TPartial1, TPartial2, IToPartial>;
28
- leftJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
29
- new (db: DB): InputTable;
30
- }, table: {
31
- new (db: DB): IToTable;
32
- }, from: (table: CheckThreeTypes<InputTable, TTable, TTable1, TTable2>) => AbstractColumn<TColumn, boolean, boolean, CheckThreeTypes<InputTable, TTable, TTable1, TTable2>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithThreeJoins<TTable, TTable1, TTable2, IToTable, TPartial, TPartial1, TPartial2, IToPartial>;
33
- rightJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
34
- new (db: DB): InputTable;
35
- }, table: {
36
- new (db: DB): IToTable;
37
- }, from: (table: CheckThreeTypes<InputTable, TTable, TTable1, TTable2>) => AbstractColumn<TColumn, boolean, boolean, CheckThreeTypes<InputTable, TTable, TTable1, TTable2>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithThreeJoins<TTable, TTable1, TTable2, IToTable, TPartial, TPartial1, TPartial2, IToPartial>;
38
- fullJoin<InputTable extends AbstractTable<InputTable>, TColumn extends ColumnType, TToColumn extends ColumnType, IToTable extends AbstractTable<IToTable>, IToPartial extends PartialFor<IToTable> = {}>(fromTable: {
39
- new (db: DB): InputTable;
40
- }, table: {
41
- new (db: DB): IToTable;
42
- }, from: (table: CheckThreeTypes<InputTable, TTable, TTable1, TTable2>) => AbstractColumn<TColumn, boolean, boolean, CheckThreeTypes<InputTable, TTable, TTable1, TTable2>>, to: (table: IToTable) => AbstractColumn<TToColumn, boolean, boolean, IToTable>, partial?: IToPartial): SelectTRBWithThreeJoins<TTable, TTable1, TTable2, IToTable, TPartial, TPartial1, TPartial2, IToPartial>;
43
- protected mapResponse(result: QueryResult<any>): SelectResponseTwoJoins<TTable, TTable1, TTable2, TPartial, TPartial1, TPartial2>;
44
- protected joins(): Array<{
45
- join: Join<any>;
46
- partial?: {
47
- [name: string]: AbstractColumn<ColumnType<any>, boolean, boolean, any>;
48
- };
49
- id?: number;
50
- }>;
51
- }
@@ -1,65 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const join_1 = require("../join");
4
- const joinWith_1 = require("../joinWith");
5
- const selectResponseTwoJoins_1 = require("../responses/selectResponseTwoJoins");
6
- const abstractJoinBuilder_1 = require("./abstractJoinBuilder");
7
- const selectWithThreeJoins_1 = require("./selectWithThreeJoins");
8
- class SelectTRBWithTwoJoins extends abstractJoinBuilder_1.default {
9
- constructor(table, session, filter, join1, join2, props, orderBy, order, distinct, tablePartial, joinedPartial, joinedPartial1) {
10
- super(table, filter, session, props, orderBy, order, distinct, tablePartial);
11
- this._join1 = join1;
12
- this._join2 = join2;
13
- this._joinedPartial = joinedPartial;
14
- this._joinedPartial1 = joinedPartial1;
15
- }
16
- innerJoin(fromTable, table, from, to, partial) {
17
- const toTable = this._table.db.create(table);
18
- const tableFrom = this._table.db.create(fromTable);
19
- const fromColumn = from(tableFrom);
20
- const toColumn = to(toTable);
21
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
22
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.INNER_JOIN);
23
- return new selectWithThreeJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, partial);
24
- }
25
- leftJoin(fromTable, table, from, to, partial) {
26
- const toTable = this._table.db.create(table);
27
- const tableFrom = this._table.db.create(fromTable);
28
- const fromColumn = from(tableFrom);
29
- const toColumn = to(toTable);
30
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
31
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.LEFT_JOIN);
32
- return new selectWithThreeJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, partial);
33
- }
34
- rightJoin(fromTable, table, from, to, partial) {
35
- const toTable = this._table.db.create(table);
36
- const tableFrom = this._table.db.create(fromTable);
37
- const fromColumn = from(tableFrom);
38
- const toColumn = to(toTable);
39
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
40
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.RIGHT_JOIN);
41
- return new selectWithThreeJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, partial);
42
- }
43
- fullJoin(fromTable, table, from, to, partial) {
44
- const toTable = this._table.db.create(table);
45
- const tableFrom = this._table.db.create(fromTable);
46
- const fromColumn = from(tableFrom);
47
- const toColumn = to(toTable);
48
- const join = new joinWith_1.default(toTable.tableName(), toTable.mapServiceToDb())
49
- .columns(fromColumn, toColumn).joinStrategy(join_1.JoinStrategy.FULL_JOIN);
50
- return new selectWithThreeJoins_1.default(this._table, this._session, this._filter, this._join1, this._join2, join, this._props, this._orderBy, this._order, this._distinct, this._partial, this._joinedPartial, this._joinedPartial1, partial);
51
- }
52
- mapResponse(result) {
53
- const parent = this._join1.mappedServiceToDb;
54
- const parentTwo = this._join2.mappedServiceToDb;
55
- const response = this.fullOrPartial(this._table.mapServiceToDb(), result, this._partial);
56
- const objects = this.fullOrPartial(parent, result, this._joinedPartial, 1);
57
- const objectsTwo = this.fullOrPartial(parentTwo, result, this._joinedPartial1, 2);
58
- return new selectResponseTwoJoins_1.default(response, objects, objectsTwo);
59
- }
60
- joins() {
61
- return [{ join: this._join1, partial: this._joinedPartial, id: 1 },
62
- { join: this._join2, partial: this._joinedPartial1, id: 2 }];
63
- }
64
- }
65
- exports.default = SelectTRBWithTwoJoins;
@@ -1,23 +0,0 @@
1
- import { AbstractColumn } from '../../columns/column';
2
- import ColumnType from '../../columns/types/columnType';
3
- import { ExtractModel } from '../../tables/inferTypes';
4
- export default class Join<TTable> {
5
- fromColumn: AbstractColumn<ColumnType, boolean, boolean>;
6
- toColumn: AbstractColumn<ColumnType, boolean, boolean>;
7
- joinTableName: string;
8
- mappedServiceToDb: {
9
- [name in keyof ExtractModel<TTable>]: AbstractColumn<ColumnType>;
10
- };
11
- type: JoinStrategy;
12
- constructor(joinTableName: string, fromColumn: AbstractColumn<ColumnType, boolean, boolean>, toColumn: AbstractColumn<ColumnType, boolean, boolean>, mappedServiceToDb: {
13
- [name in keyof ExtractModel<TTable>]: AbstractColumn<ColumnType>;
14
- });
15
- joinStrategy: (type: JoinStrategy) => Join<TTable>;
16
- columns: (fromColumn: AbstractColumn<ColumnType>, toColumn: AbstractColumn<ColumnType>) => Join<TTable>;
17
- }
18
- export declare enum JoinStrategy {
19
- INNER_JOIN = "INNER JOIN",
20
- LEFT_JOIN = "LEFT JOIN",
21
- RIGHT_JOIN = "RIGHT JOIN",
22
- FULL_JOIN = "FULL JOIN"
23
- }
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JoinStrategy = void 0;
4
- class Join {
5
- constructor(joinTableName, fromColumn, toColumn, mappedServiceToDb) {
6
- this.joinStrategy = (type) => {
7
- this.type = type;
8
- return this;
9
- };
10
- this.columns = (fromColumn, toColumn) => {
11
- this.toColumn = toColumn;
12
- this.fromColumn = fromColumn;
13
- return this;
14
- };
15
- this.joinTableName = joinTableName;
16
- this.toColumn = toColumn;
17
- this.fromColumn = fromColumn;
18
- this.mappedServiceToDb = mappedServiceToDb;
19
- }
20
- }
21
- exports.default = Join;
22
- var JoinStrategy;
23
- (function (JoinStrategy) {
24
- JoinStrategy["INNER_JOIN"] = "INNER JOIN";
25
- JoinStrategy["LEFT_JOIN"] = "LEFT JOIN";
26
- JoinStrategy["RIGHT_JOIN"] = "RIGHT JOIN";
27
- JoinStrategy["FULL_JOIN"] = "FULL JOIN";
28
- })(JoinStrategy = exports.JoinStrategy || (exports.JoinStrategy = {}));
@@ -1,14 +0,0 @@
1
- import { AbstractColumn } from '../../columns/column';
2
- import ColumnType from '../../columns/types/columnType';
3
- import { ExtractModel } from '../../tables/inferTypes';
4
- import Join from './join';
5
- export default class JoinWith<TColumn extends ColumnType, TTable> {
6
- joinTableName: string;
7
- mappedServiceToDb: {
8
- [name in keyof ExtractModel<TTable>]: AbstractColumn<TColumn>;
9
- };
10
- constructor(joinTableName: string, mappedServiceToDb: {
11
- [name in keyof ExtractModel<TTable>]: AbstractColumn<TColumn>;
12
- });
13
- columns: (fromColumn: AbstractColumn<TColumn, boolean, boolean>, toColumn: AbstractColumn<TColumn, boolean, boolean>) => Join<TTable>;
14
- }
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const join_1 = require("./join");
4
- class JoinWith {
5
- constructor(joinTableName, mappedServiceToDb) {
6
- this.columns = (fromColumn, toColumn) => new join_1.default(this.joinTableName, fromColumn, toColumn, this.mappedServiceToDb);
7
- this.joinTableName = joinTableName;
8
- this.mappedServiceToDb = mappedServiceToDb;
9
- }
10
- }
11
- exports.default = JoinWith;
@@ -1,20 +0,0 @@
1
- import AbstractTable from '../../../tables/abstractTable';
2
- import { FullOrPartial, PartialFor } from '../../../tables/inferTypes';
3
- export default class SelectResponseFiveJoins<T1 extends AbstractTable<T1>, T2 extends AbstractTable<T2>, T3 extends AbstractTable<T3>, T4 extends AbstractTable<T4>, T5 extends AbstractTable<T5>, T6 extends AbstractTable<T6>, TPartial1 extends PartialFor<T1>, TPartial2 extends PartialFor<T2>, TPartial3 extends PartialFor<T3>, TPartial4 extends PartialFor<T4>, TPartial5 extends PartialFor<T5>, TPartial6 extends PartialFor<T6>> {
4
- _t1: Array<FullOrPartial<T1, TPartial1>>;
5
- _t2: Array<FullOrPartial<T2, TPartial2>>;
6
- _t3: Array<FullOrPartial<T3, TPartial3>>;
7
- _t4: Array<FullOrPartial<T4, TPartial4>>;
8
- _t5: Array<FullOrPartial<T5, TPartial5>>;
9
- _t6: Array<FullOrPartial<T6, TPartial6>>;
10
- constructor(t1: Array<FullOrPartial<T1, TPartial1>>, t2: Array<FullOrPartial<T2, TPartial2>>, t3: Array<FullOrPartial<T3, TPartial3>>, t4: Array<FullOrPartial<T4, TPartial4>>, t5: Array<FullOrPartial<T5, TPartial5>>, t6: Array<FullOrPartial<T6, TPartial6>>);
11
- map: <M>(imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>, t6: FullOrPartial<T6, TPartial6>) => M) => M[];
12
- foreach: (imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>, t6: FullOrPartial<T6, TPartial6>) => void) => void;
13
- group: <TOne, TMany>({ one, many, }: {
14
- one: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>, t6: FullOrPartial<T6, TPartial6>) => TOne;
15
- many: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>, t6: FullOrPartial<T6, TPartial6>) => TMany;
16
- }) => {
17
- one: TOne;
18
- many: TMany[];
19
- };
20
- }
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class SelectResponseFiveJoins {
4
- constructor(t1, t2, t3, t4, t5, t6) {
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], this._t3[i], this._t4[i], this._t5[i], this._t6[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], this._t3[i], this._t4[i], this._t5[i], this._t6[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], this._t3[i], this._t4[i], this._t5[i], this._t6[i]));
21
- }
22
- return {
23
- one: one(this._t1[0], this._t2[0], this._t3[0], this._t4[0], this._t5[0], this._t6[0]),
24
- many: objects,
25
- };
26
- };
27
- this._t1 = t1;
28
- this._t2 = t2;
29
- this._t3 = t3;
30
- this._t4 = t4;
31
- this._t5 = t5;
32
- this._t6 = t6;
33
- }
34
- }
35
- exports.default = SelectResponseFiveJoins;
@@ -1,19 +0,0 @@
1
- import AbstractTable from '../../../tables/abstractTable';
2
- import { FullOrPartial, PartialFor } from '../../../tables/inferTypes';
3
- export default class SelectResponseFourJoins<T1 extends AbstractTable<T1>, T2 extends AbstractTable<T2>, T3 extends AbstractTable<T3>, T4 extends AbstractTable<T4>, T5 extends AbstractTable<T5>, TPartial1 extends PartialFor<T1>, TPartial2 extends PartialFor<T2>, TPartial3 extends PartialFor<T3>, TPartial4 extends PartialFor<T4>, TPartial5 extends PartialFor<T5>> {
4
- _t1: Array<FullOrPartial<T1, TPartial1>>;
5
- _t2: Array<FullOrPartial<T2, TPartial2>>;
6
- _t3: Array<FullOrPartial<T3, TPartial3>>;
7
- _t4: Array<FullOrPartial<T4, TPartial4>>;
8
- _t5: Array<FullOrPartial<T5, TPartial5>>;
9
- constructor(t1: Array<FullOrPartial<T1, TPartial1>>, t2: Array<FullOrPartial<T2, TPartial2>>, t3: Array<FullOrPartial<T3, TPartial3>>, t4: Array<FullOrPartial<T4, TPartial4>>, t5: Array<FullOrPartial<T5, TPartial5>>);
10
- map: <M>(imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>) => M) => M[];
11
- foreach: (imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>) => void) => void;
12
- group: <TOne, TMany>({ one, many, }: {
13
- one: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>) => TOne;
14
- many: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>, t5: FullOrPartial<T5, TPartial5>) => TMany;
15
- }) => {
16
- one: TOne;
17
- many: TMany[];
18
- };
19
- }
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class SelectResponseFourJoins {
4
- constructor(t1, t2, t3, t4, t5) {
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], this._t3[i], this._t4[i], this._t5[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], this._t3[i], this._t4[i], this._t5[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], this._t3[i], this._t4[i], this._t5[i]));
21
- }
22
- return {
23
- one: one(this._t1[0], this._t2[0], this._t3[0], this._t4[0], this._t5[0]),
24
- many: objects,
25
- };
26
- };
27
- this._t1 = t1;
28
- this._t2 = t2;
29
- this._t3 = t3;
30
- this._t4 = t4;
31
- this._t5 = t5;
32
- }
33
- }
34
- exports.default = SelectResponseFourJoins;
@@ -1,18 +0,0 @@
1
- import AbstractTable from '../../../tables/abstractTable';
2
- import { FullOrPartial, PartialFor } from '../../../tables/inferTypes';
3
- export default class SelectResponseThreeJoins<T1 extends AbstractTable<T1>, T2 extends AbstractTable<T2>, T3 extends AbstractTable<T3>, T4 extends AbstractTable<T4>, TPartial1 extends PartialFor<T1>, TPartial2 extends PartialFor<T2>, TPartial3 extends PartialFor<T3>, TPartial4 extends PartialFor<T4>> {
4
- private _t1;
5
- private _t2;
6
- private _t3;
7
- private _t4;
8
- constructor(t1: Array<FullOrPartial<T1, TPartial1>>, t2: Array<FullOrPartial<T2, TPartial2>>, t3: Array<FullOrPartial<T3, TPartial3>>, t4: Array<FullOrPartial<T4, TPartial4>>);
9
- map: <M>(imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>) => M) => M[];
10
- foreach: (imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>) => void) => void;
11
- group: <TOne, TMany>({ one, many, }: {
12
- one: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>) => TOne;
13
- many: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>, t4: FullOrPartial<T4, TPartial4>) => TMany;
14
- }) => {
15
- one: TOne;
16
- many: TMany[];
17
- };
18
- }
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class SelectResponseThreeJoins {
4
- constructor(t1, t2, t3, t4) {
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], this._t3[i], this._t4[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], this._t3[i], this._t4[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], this._t3[i], this._t4[i]));
21
- }
22
- return {
23
- one: one(this._t1[0], this._t2[0], this._t3[0], this._t4[0]),
24
- many: objects,
25
- };
26
- };
27
- this._t1 = t1;
28
- this._t2 = t2;
29
- this._t3 = t3;
30
- this._t4 = t4;
31
- }
32
- }
33
- exports.default = SelectResponseThreeJoins;
@@ -1,17 +0,0 @@
1
- import AbstractTable from '../../../tables/abstractTable';
2
- import { FullOrPartial, PartialFor } from '../../../tables/inferTypes';
3
- export default class SelectResponseTwoJoins<T1 extends AbstractTable<T1>, T2 extends AbstractTable<T2>, T3 extends AbstractTable<T3>, TPartial1 extends PartialFor<T1>, TPartial2 extends PartialFor<T2>, TPartial3 extends PartialFor<T3>> {
4
- private _t1;
5
- private _t2;
6
- private _t3;
7
- constructor(t1: Array<FullOrPartial<T1, TPartial1>>, t2: Array<FullOrPartial<T2, TPartial2>>, t3: Array<FullOrPartial<T3, TPartial3>>);
8
- map: <M>(imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>) => M) => M[];
9
- foreach: (imac: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>) => void) => void;
10
- group: <TOne, TMany>({ one, many, }: {
11
- one: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>) => TOne;
12
- many: (t1: FullOrPartial<T1, TPartial1>, t2: FullOrPartial<T2, TPartial2>, t3: FullOrPartial<T3, TPartial3>) => TMany;
13
- }) => {
14
- one: TOne;
15
- many: TMany[];
16
- };
17
- }
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class SelectResponseTwoJoins {
4
- constructor(t1, t2, t3) {
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], this._t3[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], this._t3[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], this._t3[i]));
21
- }
22
- return {
23
- one: one(this._t1[0], this._t2[0], this._t3[0]),
24
- many: objects,
25
- };
26
- };
27
- this._t1 = t1;
28
- this._t2 = t2;
29
- this._t3 = t3;
30
- }
31
- }
32
- exports.default = SelectResponseTwoJoins;
@@ -1,16 +0,0 @@
1
- import AbstractTable from '../../../tables/abstractTable';
2
- import { FullOrPartial, PartialFor } from '../../../tables/inferTypes';
3
- export default class SelectResponseJoin<TTable1 extends AbstractTable<TTable1>, TTable2 extends AbstractTable<TTable2>, TPartial1 extends PartialFor<TTable1>, TPartial2 extends PartialFor<TTable2>> {
4
- private _t1;
5
- private _t2;
6
- constructor(t1: Array<FullOrPartial<TTable1, TPartial1>>, t2: Array<FullOrPartial<TTable2, TPartial2>>);
7
- map: <M>(imac: (t1: FullOrPartial<TTable1, TPartial1>, t2: FullOrPartial<TTable2, TPartial2>) => M) => M[];
8
- foreach: (imac: (t1: FullOrPartial<TTable1, TPartial1>, t2: FullOrPartial<TTable2, TPartial2>) => void) => void;
9
- group: <TOne, TMany>({ one, many, }: {
10
- one: (t1: FullOrPartial<TTable1, TPartial1>, t2: FullOrPartial<TTable2, TPartial2>) => TOne;
11
- many: (t1: FullOrPartial<TTable1, TPartial1>, t2: FullOrPartial<TTable2, TPartial2>) => TMany;
12
- }) => {
13
- one: TOne;
14
- many: TMany[];
15
- };
16
- }