@spinajs/orm 1.0.60 → 1.2.32

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 (91) hide show
  1. package/README.md +11 -2
  2. package/lib/builders.d.ts +30 -23
  3. package/lib/builders.js +74 -195
  4. package/lib/builders.js.map +1 -1
  5. package/lib/decorators.d.ts +18 -19
  6. package/lib/decorators.js +30 -30
  7. package/lib/decorators.js.map +1 -1
  8. package/lib/driver.d.ts +10 -9
  9. package/lib/driver.js +10 -20
  10. package/lib/driver.js.map +1 -1
  11. package/lib/exceptions.d.ts +6 -0
  12. package/lib/exceptions.js +11 -0
  13. package/lib/exceptions.js.map +1 -0
  14. package/lib/helpers.js +2 -2
  15. package/lib/helpers.js.map +1 -1
  16. package/lib/hydrators.d.ts +4 -4
  17. package/lib/hydrators.js +6 -6
  18. package/lib/hydrators.js.map +1 -1
  19. package/lib/index.d.ts +0 -1
  20. package/lib/index.js +1 -2
  21. package/lib/index.js.map +1 -1
  22. package/lib/interfaces.d.ts +19 -27
  23. package/lib/interfaces.js +14 -14
  24. package/lib/interfaces.js.map +1 -1
  25. package/lib/log-common/src/index.d.ts +180 -0
  26. package/lib/log-common/src/index.js +49 -0
  27. package/lib/log-common/src/index.js.map +1 -0
  28. package/lib/model.d.ts +55 -53
  29. package/lib/model.js +132 -149
  30. package/lib/model.js.map +1 -1
  31. package/lib/orm/src/builders.d.ts +429 -0
  32. package/lib/orm/src/builders.js +1082 -0
  33. package/lib/orm/src/builders.js.map +1 -0
  34. package/lib/orm/src/cli.d.ts +1 -0
  35. package/lib/orm/src/cli.js +2 -0
  36. package/lib/orm/src/cli.js.map +1 -0
  37. package/lib/orm/src/converters.d.ts +9 -0
  38. package/lib/orm/src/converters.js +22 -0
  39. package/lib/orm/src/converters.js.map +1 -0
  40. package/lib/orm/src/decorators.d.ts +122 -0
  41. package/lib/orm/src/decorators.js +380 -0
  42. package/lib/orm/src/decorators.js.map +1 -0
  43. package/lib/orm/src/driver.d.ts +77 -0
  44. package/lib/orm/src/driver.js +84 -0
  45. package/lib/orm/src/driver.js.map +1 -0
  46. package/lib/orm/src/enums.d.ts +111 -0
  47. package/lib/orm/src/enums.js +122 -0
  48. package/lib/orm/src/enums.js.map +1 -0
  49. package/lib/orm/src/exceptions.d.ts +6 -0
  50. package/lib/orm/src/exceptions.js +11 -0
  51. package/lib/orm/src/exceptions.js.map +1 -0
  52. package/lib/orm/src/hydrators.d.ts +16 -0
  53. package/lib/orm/src/hydrators.js +70 -0
  54. package/lib/orm/src/hydrators.js.map +1 -0
  55. package/lib/orm/src/index.d.ts +12 -0
  56. package/lib/orm/src/index.js +25 -0
  57. package/lib/orm/src/index.js.map +1 -0
  58. package/lib/orm/src/interfaces.d.ts +615 -0
  59. package/lib/orm/src/interfaces.js +186 -0
  60. package/lib/orm/src/interfaces.js.map +1 -0
  61. package/lib/orm/src/model.d.ts +135 -0
  62. package/lib/orm/src/model.js +449 -0
  63. package/lib/orm/src/model.js.map +1 -0
  64. package/lib/orm/src/orm.d.ts +59 -0
  65. package/lib/orm/src/orm.js +278 -0
  66. package/lib/orm/src/orm.js.map +1 -0
  67. package/lib/orm/src/relations.d.ts +96 -0
  68. package/lib/orm/src/relations.js +503 -0
  69. package/lib/orm/src/relations.js.map +1 -0
  70. package/lib/orm/src/statements.d.ts +132 -0
  71. package/lib/orm/src/statements.js +257 -0
  72. package/lib/orm/src/statements.js.map +1 -0
  73. package/lib/orm/src/types.d.ts +2 -0
  74. package/lib/orm/src/types.js +3 -0
  75. package/lib/orm/src/types.js.map +1 -0
  76. package/lib/orm/src/wrappers.d.ts +5 -0
  77. package/lib/orm/src/wrappers.js +13 -0
  78. package/lib/orm/src/wrappers.js.map +1 -0
  79. package/lib/orm.d.ts +9 -9
  80. package/lib/orm.js +69 -47
  81. package/lib/orm.js.map +1 -1
  82. package/lib/relations.d.ts +14 -13
  83. package/lib/relations.js +60 -81
  84. package/lib/relations.js.map +1 -1
  85. package/lib/statements.d.ts +1 -1
  86. package/lib/statements.js +19 -21
  87. package/lib/statements.js.map +1 -1
  88. package/lib/wrappers.d.ts +1 -1
  89. package/lib/wrappers.js.map +1 -1
  90. package/package.json +37 -61
  91. package/LICENSE +0 -674
package/lib/builders.js CHANGED
@@ -1,29 +1,11 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
2
+ /* eslint-disable prettier/prettier */
14
3
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
15
4
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
5
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
6
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
7
  return c > 3 && r && Object.defineProperty(target, key, r), r;
19
8
  };
20
- var __importStar = (this && this.__importStar) || function (mod) {
21
- if (mod && mod.__esModule) return mod;
22
- var result = {};
23
- if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
24
- __setModuleDefault(result, mod);
25
- return result;
26
- };
27
9
  var __metadata = (this && this.__metadata) || function (k, v) {
28
10
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
29
11
  };
@@ -32,7 +14,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
32
14
  exports.SchemaQueryBuilder = exports.TableQueryBuilder = exports.ColumnQueryBuilder = exports.ForeignKeyBuilder = exports.IndexQueryBuilder = exports.InsertQueryBuilder = exports.UpdateQueryBuilder = exports.OnDuplicateQueryBuilder = exports.DeleteQueryBuilder = exports.SelectQueryBuilder = exports.WhereBuilder = exports.WithRecursiveBuilder = exports.JoinBuilder = exports.GroupByBuilder = exports.RawQuery = exports.ColumnsBuilder = exports.OrderByBuilder = exports.LimitBuilder = exports.QueryBuilder = exports.Builder = void 0;
33
15
  const di_1 = require("@spinajs/di");
34
16
  const exceptions_1 = require("@spinajs/exceptions");
35
- const _ = __importStar(require("lodash"));
17
+ const _ = require("lodash");
36
18
  const typescript_mix_1 = require("typescript-mix");
37
19
  const enums_1 = require("./enums");
38
20
  const interfaces_1 = require("./interfaces");
@@ -65,7 +47,9 @@ let Builder = class Builder {
65
47
  }
66
48
  then(resolve, reject) {
67
49
  const compiled = this.toDB();
68
- return this._driver.execute(compiled.expression, compiled.bindings, this._queryContext).then((result) => {
50
+ return this._driver
51
+ .execute(compiled.expression, compiled.bindings, this._queryContext)
52
+ .then((result) => {
69
53
  try {
70
54
  if (this._asRaw) {
71
55
  resolve(result);
@@ -78,7 +62,7 @@ let Builder = class Builder {
78
62
  return current.afterData(result);
79
63
  }, []);
80
64
  }
81
- const models = transformedResult.map(r => {
65
+ const models = transformedResult.map((r) => {
82
66
  let model = null;
83
67
  for (const middleware of this._middlewares) {
84
68
  model = middleware.modelCreation(r);
@@ -111,12 +95,15 @@ let Builder = class Builder {
111
95
  catch (err) {
112
96
  reject(err);
113
97
  }
114
- }, reject);
98
+ })
99
+ .catch((err) => {
100
+ reject(err);
101
+ });
115
102
  }
116
103
  };
117
104
  Builder = __decorate([
118
- di_1.NewInstance(),
119
- di_1.Inject(di_1.Container),
105
+ (0, di_1.NewInstance)(),
106
+ (0, di_1.Inject)(di_1.Container),
120
107
  __metadata("design:paramtypes", [di_1.Container, driver_1.OrmDriver, Object])
121
108
  ], Builder);
122
109
  exports.Builder = Builder;
@@ -186,7 +173,7 @@ let QueryBuilder = class QueryBuilder extends Builder {
186
173
  /**
187
174
  * Sets table alias for query
188
175
  *
189
- * @param alias sql table alias
176
+ * @param alias - sql table alias
190
177
  */
191
178
  setAlias(alias) {
192
179
  this._tableAlias = alias;
@@ -197,8 +184,8 @@ let QueryBuilder = class QueryBuilder extends Builder {
197
184
  }
198
185
  };
199
186
  QueryBuilder = __decorate([
200
- di_1.NewInstance(),
201
- di_1.Inject(di_1.Container),
187
+ (0, di_1.NewInstance)(),
188
+ (0, di_1.Inject)(di_1.Container),
202
189
  __metadata("design:paramtypes", [di_1.Container, driver_1.OrmDriver, Object])
203
190
  ], QueryBuilder);
204
191
  exports.QueryBuilder = QueryBuilder;
@@ -239,7 +226,7 @@ let LimitBuilder = class LimitBuilder {
239
226
  }
240
227
  };
241
228
  LimitBuilder = __decorate([
242
- di_1.NewInstance(),
229
+ (0, di_1.NewInstance)(),
243
230
  __metadata("design:paramtypes", [])
244
231
  ], LimitBuilder);
245
232
  exports.LimitBuilder = LimitBuilder;
@@ -276,7 +263,7 @@ let OrderByBuilder = class OrderByBuilder {
276
263
  }
277
264
  };
278
265
  OrderByBuilder = __decorate([
279
- di_1.NewInstance(),
266
+ (0, di_1.NewInstance)(),
280
267
  __metadata("design:paramtypes", [])
281
268
  ], OrderByBuilder);
282
269
  exports.OrderByBuilder = OrderByBuilder;
@@ -297,39 +284,24 @@ let ColumnsBuilder = class ColumnsBuilder {
297
284
  return this;
298
285
  }
299
286
  columns(names) {
300
- const descriptor = model_1.extractModelDescriptor(this._model);
301
- this._columns = names.map(n => {
302
- return this._container.resolve(statements_1.ColumnStatement, [
303
- n,
304
- null,
305
- this._tableAlias,
306
- descriptor === null || descriptor === void 0 ? void 0 : descriptor.Columns.find(c => c.Name === n),
307
- ]);
287
+ const descriptor = (0, model_1.extractModelDescriptor)(this._model);
288
+ this._columns = names.map((n) => {
289
+ return this._container.resolve(statements_1.ColumnStatement, [n, null, this._tableAlias, descriptor === null || descriptor === void 0 ? void 0 : descriptor.Columns.find((c) => c.Name === n)]);
308
290
  });
309
291
  return this;
310
292
  }
311
293
  select(column, alias) {
312
- const descriptor = model_1.extractModelDescriptor(this._model);
294
+ const descriptor = (0, model_1.extractModelDescriptor)(this._model);
313
295
  if (column instanceof Map) {
314
296
  column.forEach((alias, colName) => {
315
- this._columns.push(this._container.resolve(statements_1.ColumnStatement, [
316
- colName,
317
- alias,
318
- this._tableAlias,
319
- descriptor === null || descriptor === void 0 ? void 0 : descriptor.Columns.find(c => c.Name === colName),
320
- ]));
297
+ this._columns.push(this._container.resolve(statements_1.ColumnStatement, [colName, alias, this._tableAlias, descriptor === null || descriptor === void 0 ? void 0 : descriptor.Columns.find((c) => c.Name === colName)]));
321
298
  });
322
299
  }
323
300
  if (column instanceof RawQuery) {
324
301
  this._columns.push(this._container.resolve(statements_1.ColumnRawStatement, [column, null, this._tableAlias]));
325
302
  }
326
303
  else {
327
- this._columns.push(this._container.resolve(statements_1.ColumnStatement, [
328
- column,
329
- alias,
330
- this._tableAlias,
331
- descriptor === null || descriptor === void 0 ? void 0 : descriptor.Columns.find(c => c.Name === column),
332
- ]));
304
+ this._columns.push(this._container.resolve(statements_1.ColumnStatement, [column, alias, this._tableAlias, descriptor === null || descriptor === void 0 ? void 0 : descriptor.Columns.find((c) => c.Name === column)]));
333
305
  }
334
306
  return this;
335
307
  }
@@ -338,7 +310,7 @@ let ColumnsBuilder = class ColumnsBuilder {
338
310
  }
339
311
  };
340
312
  ColumnsBuilder = __decorate([
341
- di_1.NewInstance(),
313
+ (0, di_1.NewInstance)(),
342
314
  __metadata("design:paramtypes", [])
343
315
  ], ColumnsBuilder);
344
316
  exports.ColumnsBuilder = ColumnsBuilder;
@@ -360,7 +332,7 @@ let RawQuery = RawQuery_1 = class RawQuery {
360
332
  }
361
333
  };
362
334
  RawQuery = RawQuery_1 = __decorate([
363
- di_1.NewInstance(),
335
+ (0, di_1.NewInstance)(),
364
336
  __metadata("design:paramtypes", [String, Array])
365
337
  ], RawQuery);
366
338
  exports.RawQuery = RawQuery;
@@ -425,24 +397,10 @@ class JoinBuilder {
425
397
  addJoinStatement(method, table, AliasOrForeignKey, fkOrPkKey, primaryKey) {
426
398
  let stmt = null;
427
399
  if (arguments.length === 4) {
428
- stmt = this._container.resolve(statements_1.JoinStatement, [
429
- table,
430
- method,
431
- AliasOrForeignKey,
432
- fkOrPkKey,
433
- null,
434
- this._tableAlias,
435
- ]);
400
+ stmt = this._container.resolve(statements_1.JoinStatement, [table, method, AliasOrForeignKey, fkOrPkKey, null, this._tableAlias]);
436
401
  }
437
402
  else if (arguments.length === 5) {
438
- stmt = this._container.resolve(statements_1.JoinStatement, [
439
- table,
440
- method,
441
- fkOrPkKey,
442
- primaryKey,
443
- AliasOrForeignKey,
444
- this._tableAlias,
445
- ]);
403
+ stmt = this._container.resolve(statements_1.JoinStatement, [table, method, fkOrPkKey, primaryKey, AliasOrForeignKey, this._tableAlias]);
446
404
  }
447
405
  else {
448
406
  stmt = this._container.resolve(statements_1.JoinStatement, [table, method]);
@@ -456,17 +414,12 @@ let WithRecursiveBuilder = class WithRecursiveBuilder {
456
414
  return this._cteStatement;
457
415
  }
458
416
  withRecursive(rcKeyName, pkName) {
459
- this._cteStatement = this._container.resolve(statements_1.WithRecursiveStatement, [
460
- 'cte',
461
- this,
462
- rcKeyName,
463
- pkName,
464
- ]);
417
+ this._cteStatement = this._container.resolve(statements_1.WithRecursiveStatement, ['cte', this, rcKeyName, pkName]);
465
418
  return this;
466
419
  }
467
420
  };
468
421
  WithRecursiveBuilder = __decorate([
469
- di_1.NewInstance()
422
+ (0, di_1.NewInstance)()
470
423
  ], WithRecursiveBuilder);
471
424
  exports.WithRecursiveBuilder = WithRecursiveBuilder;
472
425
  let WhereBuilder = WhereBuilder_1 = class WhereBuilder {
@@ -491,11 +444,7 @@ let WhereBuilder = WhereBuilder_1 = class WhereBuilder {
491
444
  return this.where(RawQuery.create(column ? 'TRUE' : 'FALSE'));
492
445
  }
493
446
  if (column instanceof RawQuery) {
494
- this.Statements.push(this._container.resolve(statements_1.RawQueryStatement, [
495
- column.Query,
496
- column.Bindings,
497
- self._tableAlias,
498
- ]));
447
+ this.Statements.push(this._container.resolve(statements_1.RawQueryStatement, [column.Query, column.Bindings, self._tableAlias]));
499
448
  return this;
500
449
  }
501
450
  // handle nested where's
@@ -516,8 +465,6 @@ let WhereBuilder = WhereBuilder_1 = class WhereBuilder {
516
465
  /**
517
466
  * handles for where("foo", 1).where(...) cases
518
467
  * it produces WHERE foo = 1
519
- * @param c
520
- * @param operator
521
468
  */
522
469
  function _handleForTwo(c, v) {
523
470
  if (v === undefined) {
@@ -535,9 +482,6 @@ let WhereBuilder = WhereBuilder_1 = class WhereBuilder {
535
482
  /**
536
483
  * Handles for where("foo",'!=',1) etc
537
484
  * it produces WHERE foo != 1
538
- * @param c
539
- * @param o
540
- * @param v
541
485
  */
542
486
  function _handleForThree(c, o, v) {
543
487
  if (!isWhereOperator(o)) {
@@ -571,12 +515,7 @@ let WhereBuilder = WhereBuilder_1 = class WhereBuilder {
571
515
  return this;
572
516
  }
573
517
  whereNotNull(column) {
574
- this._statements.push(this._container.resolve(statements_1.WhereStatement, [
575
- column,
576
- enums_1.WhereOperators.NOT_NULL,
577
- null,
578
- this._tableAlias,
579
- ]));
518
+ this._statements.push(this._container.resolve(statements_1.WhereStatement, [column, enums_1.WhereOperators.NOT_NULL, null, this._tableAlias]));
580
519
  return this;
581
520
  }
582
521
  whereNull(column) {
@@ -624,7 +563,7 @@ let WhereBuilder = WhereBuilder_1 = class WhereBuilder {
624
563
  }
625
564
  };
626
565
  WhereBuilder = WhereBuilder_1 = __decorate([
627
- di_1.NewInstance(),
566
+ (0, di_1.NewInstance)(),
628
567
  __metadata("design:paramtypes", [di_1.Container, String])
629
568
  ], WhereBuilder);
630
569
  exports.WhereBuilder = WhereBuilder;
@@ -670,9 +609,9 @@ class SelectQueryBuilder extends QueryBuilder {
670
609
  }
671
610
  setAlias(alias) {
672
611
  this._tableAlias = alias;
673
- this._columns.forEach(c => (c.TableAlias = alias));
674
- this._joinStatements.forEach(c => (c.TableAlias = alias));
675
- this._statements.forEach(c => (c.TableAlias = alias));
612
+ this._columns.forEach((c) => (c.TableAlias = alias));
613
+ this._joinStatements.forEach((c) => (c.TableAlias = alias));
614
+ this._statements.forEach((c) => (c.TableAlias = alias));
676
615
  return this;
677
616
  }
678
617
  clone() {
@@ -691,18 +630,13 @@ class SelectQueryBuilder extends QueryBuilder {
691
630
  populate(relation, callback) {
692
631
  var _a;
693
632
  let relInstance = null;
694
- const descriptor = model_1.extractModelDescriptor(this._model);
633
+ const descriptor = (0, model_1.extractModelDescriptor)(this._model);
695
634
  if (!descriptor.Relations.has(relation)) {
696
635
  throw new exceptions_1.InvalidArgument(`Relation ${relation} not exists in model ${(_a = this._model) === null || _a === void 0 ? void 0 : _a.constructor.name}`);
697
636
  }
698
637
  const relDescription = descriptor.Relations.get(relation);
699
638
  if (relDescription.Type === interfaces_1.RelationType.One && relDescription.Recursive) {
700
- relInstance = this._container.resolve(relations_1.BelongsToRecursiveRelation, [
701
- this._container.get(orm_1.Orm),
702
- this,
703
- relDescription,
704
- this._owner,
705
- ]);
639
+ relInstance = this._container.resolve(relations_1.BelongsToRecursiveRelation, [this._container.get(orm_1.Orm), this, relDescription, this._owner]);
706
640
  }
707
641
  else {
708
642
  if (relDescription.Recursive) {
@@ -710,28 +644,13 @@ class SelectQueryBuilder extends QueryBuilder {
710
644
  }
711
645
  switch (relDescription.Type) {
712
646
  case interfaces_1.RelationType.One:
713
- relInstance = this._container.resolve(relations_1.BelongsToRelation, [
714
- this._container.get(orm_1.Orm),
715
- this,
716
- relDescription,
717
- this._owner,
718
- ]);
647
+ relInstance = this._container.resolve(relations_1.BelongsToRelation, [this._container.get(orm_1.Orm), this, relDescription, this._owner]);
719
648
  break;
720
649
  case interfaces_1.RelationType.Many:
721
- relInstance = this._container.resolve(relations_1.OneToManyRelation, [
722
- this._container.get(orm_1.Orm),
723
- this,
724
- relDescription,
725
- this._owner,
726
- ]);
650
+ relInstance = this._container.resolve(relations_1.OneToManyRelation, [this._container.get(orm_1.Orm), this, relDescription, this._owner]);
727
651
  break;
728
652
  case interfaces_1.RelationType.ManyToMany:
729
- relInstance = this._container.resolve(relations_1.ManyToManyRelation, [
730
- this._container.get(orm_1.Orm),
731
- this,
732
- relDescription,
733
- null,
734
- ]);
653
+ relInstance = this._container.resolve(relations_1.ManyToManyRelation, [this._container.get(orm_1.Orm), this, relDescription, null]);
735
654
  break;
736
655
  }
737
656
  }
@@ -747,48 +666,23 @@ class SelectQueryBuilder extends QueryBuilder {
747
666
  this._middlewares = this._middlewares.concat(builder._middlewares);
748
667
  }
749
668
  min(column, as) {
750
- this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [
751
- column,
752
- enums_1.ColumnMethods.MIN,
753
- as,
754
- this._tableAlias,
755
- ]));
669
+ this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [column, enums_1.ColumnMethods.MIN, as, this._tableAlias]));
756
670
  return this;
757
671
  }
758
672
  max(column, as) {
759
- this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [
760
- column,
761
- enums_1.ColumnMethods.MAX,
762
- as,
763
- this._tableAlias,
764
- ]));
673
+ this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [column, enums_1.ColumnMethods.MAX, as, this._tableAlias]));
765
674
  return this;
766
675
  }
767
676
  count(column, as) {
768
- this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [
769
- column,
770
- enums_1.ColumnMethods.COUNT,
771
- as,
772
- this._tableAlias,
773
- ]));
677
+ this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [column, enums_1.ColumnMethods.COUNT, as, this._tableAlias]));
774
678
  return this;
775
679
  }
776
680
  sum(column, as) {
777
- this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [
778
- column,
779
- enums_1.ColumnMethods.SUM,
780
- as,
781
- this._tableAlias,
782
- ]));
681
+ this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [column, enums_1.ColumnMethods.SUM, as, this._tableAlias]));
783
682
  return this;
784
683
  }
785
684
  avg(column, as) {
786
- this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [
787
- column,
788
- enums_1.ColumnMethods.AVG,
789
- as,
790
- this._tableAlias,
791
- ]));
685
+ this._columns.push(this._container.resolve(statements_1.ColumnMethodStatement, [column, enums_1.ColumnMethods.AVG, as, this._tableAlias]));
792
686
  return this;
793
687
  }
794
688
  distinct() {
@@ -822,7 +716,7 @@ class SelectQueryBuilder extends QueryBuilder {
822
716
  }
823
717
  }
824
718
  __decorate([
825
- typescript_mix_1.use(WhereBuilder, LimitBuilder, OrderByBuilder, ColumnsBuilder, JoinBuilder, WithRecursiveBuilder, GroupByBuilder),
719
+ (0, typescript_mix_1.use)(WhereBuilder, LimitBuilder, OrderByBuilder, ColumnsBuilder, JoinBuilder, WithRecursiveBuilder, GroupByBuilder),
826
720
  __metadata("design:type", Object)
827
721
  ], SelectQueryBuilder.prototype, "this", void 0);
828
722
  exports.SelectQueryBuilder = SelectQueryBuilder;
@@ -843,9 +737,7 @@ class DeleteQueryBuilder extends QueryBuilder {
843
737
  return this._truncate;
844
738
  }
845
739
  toDB() {
846
- return this._container
847
- .resolve(interfaces_1.DeleteQueryCompiler, [this])
848
- .compile();
740
+ return this._container.resolve(interfaces_1.DeleteQueryCompiler, [this]).compile();
849
741
  }
850
742
  truncate() {
851
743
  this._truncate = true;
@@ -853,7 +745,7 @@ class DeleteQueryBuilder extends QueryBuilder {
853
745
  }
854
746
  }
855
747
  __decorate([
856
- typescript_mix_1.use(WhereBuilder, LimitBuilder),
748
+ (0, typescript_mix_1.use)(WhereBuilder, LimitBuilder),
857
749
  __metadata("design:type", Object)
858
750
  ], DeleteQueryBuilder.prototype, "this", void 0);
859
751
  exports.DeleteQueryBuilder = DeleteQueryBuilder;
@@ -905,13 +797,11 @@ class UpdateQueryBuilder extends QueryBuilder {
905
797
  return this;
906
798
  }
907
799
  toDB() {
908
- return this._container
909
- .resolve(interfaces_1.UpdateQueryCompiler, [this])
910
- .compile();
800
+ return this._container.resolve(interfaces_1.UpdateQueryCompiler, [this]).compile();
911
801
  }
912
802
  }
913
803
  __decorate([
914
- typescript_mix_1.use(WhereBuilder),
804
+ (0, typescript_mix_1.use)(WhereBuilder),
915
805
  __metadata("design:type", Object)
916
806
  ], UpdateQueryBuilder.prototype, "this", void 0);
917
807
  exports.UpdateQueryBuilder = UpdateQueryBuilder;
@@ -939,11 +829,7 @@ class InsertQueryBuilder extends QueryBuilder {
939
829
  values(data) {
940
830
  const self = this;
941
831
  if (Array.isArray(data)) {
942
- this.columns(_.chain(data)
943
- .map(_.keys)
944
- .flatten()
945
- .uniq()
946
- .value());
832
+ this.columns(_.chain(data).map(_.keys).flatten().uniq().value());
947
833
  data.forEach((d) => {
948
834
  _addData(d);
949
835
  });
@@ -955,8 +841,8 @@ class InsertQueryBuilder extends QueryBuilder {
955
841
  function _addData(d) {
956
842
  const binding = [];
957
843
  self._columns
958
- .filter(c => !(c.Column instanceof RawQuery))
959
- .map(c => {
844
+ .filter((c) => !(c.Column instanceof RawQuery))
845
+ .map((c) => {
960
846
  return c.Column;
961
847
  })
962
848
  .forEach((c) => {
@@ -972,20 +858,20 @@ class InsertQueryBuilder extends QueryBuilder {
972
858
  }
973
859
  onDuplicate(column) {
974
860
  let columnToCheck = column;
975
- if (!columnToCheck) {
976
- columnToCheck = model_1.extractModelDescriptor(this._model).Columns.filter(c => c.Unique && !c.PrimaryKey).map(c => c.Name);
861
+ if (!columnToCheck && this.this._model) {
862
+ columnToCheck = (0, model_1.extractModelDescriptor)(this._model)
863
+ .Columns.filter((c) => c.Unique && !c.PrimaryKey)
864
+ .map((c) => c.Name);
977
865
  }
978
866
  this.DuplicateQueryBuilder = new OnDuplicateQueryBuilder(this._container, this, columnToCheck);
979
867
  return this.DuplicateQueryBuilder;
980
868
  }
981
869
  toDB() {
982
- return this._container
983
- .resolve(interfaces_1.InsertQueryCompiler, [this])
984
- .compile();
870
+ return this._container.resolve(interfaces_1.InsertQueryCompiler, [this]).compile();
985
871
  }
986
872
  }
987
873
  __decorate([
988
- typescript_mix_1.use(ColumnsBuilder),
874
+ (0, typescript_mix_1.use)(ColumnsBuilder),
989
875
  __metadata("design:type", Object)
990
876
  ], InsertQueryBuilder.prototype, "this", void 0);
991
877
  exports.InsertQueryBuilder = InsertQueryBuilder;
@@ -1011,14 +897,12 @@ let IndexQueryBuilder = class IndexQueryBuilder extends Builder {
1011
897
  return this;
1012
898
  }
1013
899
  toDB() {
1014
- return this._container
1015
- .resolve(interfaces_1.IndexQueryCompiler, [this])
1016
- .compile();
900
+ return this._container.resolve(interfaces_1.IndexQueryCompiler, [this]).compile();
1017
901
  }
1018
902
  };
1019
903
  IndexQueryBuilder = __decorate([
1020
- di_1.NewInstance(),
1021
- di_1.Inject(di_1.Container),
904
+ (0, di_1.NewInstance)(),
905
+ (0, di_1.Inject)(di_1.Container),
1022
906
  __metadata("design:paramtypes", [di_1.Container, driver_1.OrmDriver])
1023
907
  ], IndexQueryBuilder);
1024
908
  exports.IndexQueryBuilder = IndexQueryBuilder;
@@ -1031,7 +915,7 @@ let ForeignKeyBuilder = class ForeignKeyBuilder {
1031
915
  *
1032
916
  * Referenced field in child table
1033
917
  *
1034
- * @param fkName name of foreign field in child table
918
+ * @param fkName - name of foreign field in child table
1035
919
  */
1036
920
  foreignKey(fkName) {
1037
921
  this.ForeignKeyField = fkName;
@@ -1041,8 +925,8 @@ let ForeignKeyBuilder = class ForeignKeyBuilder {
1041
925
  *
1042
926
  * Referenced parent table & key
1043
927
  *
1044
- * @param table parent table
1045
- * @param pKey parant table key field
928
+ * @param table - parent table
929
+ * @param pKey - parant table key field
1046
930
  */
1047
931
  references(table, pKey) {
1048
932
  this.Table = table;
@@ -1053,7 +937,7 @@ let ForeignKeyBuilder = class ForeignKeyBuilder {
1053
937
  *
1054
938
  * On delete action
1055
939
  *
1056
- * @param action action to take on delete
940
+ * @param action - action to take on delete
1057
941
  */
1058
942
  onDelete(action) {
1059
943
  this.OnDeleteAction = action;
@@ -1063,7 +947,7 @@ let ForeignKeyBuilder = class ForeignKeyBuilder {
1063
947
  *
1064
948
  * On update action
1065
949
  *
1066
- * @param action action to take on update
950
+ * @param action - action to take on update
1067
951
  */
1068
952
  onUpdate(action) {
1069
953
  this.OnUpdateAction = action;
@@ -1079,7 +963,7 @@ let ForeignKeyBuilder = class ForeignKeyBuilder {
1079
963
  }
1080
964
  };
1081
965
  ForeignKeyBuilder = __decorate([
1082
- di_1.NewInstance(),
966
+ (0, di_1.NewInstance)(),
1083
967
  __metadata("design:paramtypes", [])
1084
968
  ], ForeignKeyBuilder);
1085
969
  exports.ForeignKeyBuilder = ForeignKeyBuilder;
@@ -1136,7 +1020,7 @@ let ColumnQueryBuilder = class ColumnQueryBuilder {
1136
1020
  }
1137
1021
  };
1138
1022
  ColumnQueryBuilder = __decorate([
1139
- di_1.NewInstance(),
1023
+ (0, di_1.NewInstance)(),
1140
1024
  __metadata("design:paramtypes", [String, String, Object])
1141
1025
  ], ColumnQueryBuilder);
1142
1026
  exports.ColumnQueryBuilder = ColumnQueryBuilder;
@@ -1157,10 +1041,7 @@ class TableQueryBuilder extends QueryBuilder {
1157
1041
  return this._foreignKeys;
1158
1042
  }
1159
1043
  increments(name) {
1160
- return this.int(name)
1161
- .autoIncrement()
1162
- .notNull()
1163
- .primaryKey();
1044
+ return this.int(name).autoIncrement().notNull().primaryKey();
1164
1045
  }
1165
1046
  comment(comment) {
1166
1047
  this._comment = comment;
@@ -1175,9 +1056,7 @@ class TableQueryBuilder extends QueryBuilder {
1175
1056
  return builder;
1176
1057
  }
1177
1058
  toDB() {
1178
- return this._container
1179
- .resolve(interfaces_1.TableQueryCompiler, [this])
1180
- .compile();
1059
+ return this._container.resolve(interfaces_1.TableQueryCompiler, [this]).compile();
1181
1060
  }
1182
1061
  }
1183
1062
  exports.TableQueryBuilder = TableQueryBuilder;
@@ -1193,12 +1072,12 @@ let SchemaQueryBuilder = class SchemaQueryBuilder {
1193
1072
  }
1194
1073
  };
1195
1074
  SchemaQueryBuilder = __decorate([
1196
- di_1.NewInstance(),
1197
- di_1.Inject(di_1.Container),
1075
+ (0, di_1.NewInstance)(),
1076
+ (0, di_1.Inject)(di_1.Container),
1198
1077
  __metadata("design:paramtypes", [di_1.Container, driver_1.OrmDriver])
1199
1078
  ], SchemaQueryBuilder);
1200
1079
  exports.SchemaQueryBuilder = SchemaQueryBuilder;
1201
- Object.values(enums_1.ColumnType).forEach(type => {
1080
+ Object.values(enums_1.ColumnType).forEach((type) => {
1202
1081
  TableQueryBuilder.prototype[type] = function (name, ...args) {
1203
1082
  const _builder = new ColumnQueryBuilder(name, type, ...args);
1204
1083
  this._columns.push(_builder);