@spinajs/orm 2.0.407 → 2.0.409

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 (107) hide show
  1. package/lib/cjs/builders.d.ts +23 -4
  2. package/lib/cjs/builders.d.ts.map +1 -1
  3. package/lib/cjs/builders.js +126 -40
  4. package/lib/cjs/builders.js.map +1 -1
  5. package/lib/cjs/decorators.d.ts +1 -2
  6. package/lib/cjs/decorators.d.ts.map +1 -1
  7. package/lib/cjs/decorators.js +12 -10
  8. package/lib/cjs/decorators.js.map +1 -1
  9. package/lib/cjs/descriptor.d.ts +3 -0
  10. package/lib/cjs/descriptor.d.ts.map +1 -0
  11. package/lib/cjs/descriptor.js +45 -0
  12. package/lib/cjs/descriptor.js.map +1 -0
  13. package/lib/cjs/discrimination-middleware.d.ts +10 -0
  14. package/lib/cjs/discrimination-middleware.d.ts.map +1 -0
  15. package/lib/cjs/discrimination-middleware.js +26 -0
  16. package/lib/cjs/discrimination-middleware.js.map +1 -0
  17. package/lib/cjs/index.d.ts +7 -4
  18. package/lib/cjs/index.d.ts.map +1 -1
  19. package/lib/cjs/index.js +10 -4
  20. package/lib/cjs/index.js.map +1 -1
  21. package/lib/cjs/interfaces.d.ts +7 -3
  22. package/lib/cjs/interfaces.d.ts.map +1 -1
  23. package/lib/cjs/interfaces.js.map +1 -1
  24. package/lib/cjs/metadata.d.ts.map +1 -1
  25. package/lib/cjs/metadata.js +1 -1
  26. package/lib/cjs/metadata.js.map +1 -1
  27. package/lib/cjs/middlewares.d.ts +1 -7
  28. package/lib/cjs/middlewares.d.ts.map +1 -1
  29. package/lib/cjs/middlewares.js +6 -25
  30. package/lib/cjs/middlewares.js.map +1 -1
  31. package/lib/cjs/model.d.ts +5 -21
  32. package/lib/cjs/model.d.ts.map +1 -1
  33. package/lib/cjs/model.js +44 -122
  34. package/lib/cjs/model.js.map +1 -1
  35. package/lib/cjs/orm.d.ts.map +1 -1
  36. package/lib/cjs/orm.js +22 -5
  37. package/lib/cjs/orm.js.map +1 -1
  38. package/lib/cjs/relation-objects.d.ts +23 -2
  39. package/lib/cjs/relation-objects.d.ts.map +1 -1
  40. package/lib/cjs/relation-objects.js +64 -10
  41. package/lib/cjs/relation-objects.js.map +1 -1
  42. package/lib/cjs/relations.d.ts +1 -1
  43. package/lib/cjs/relations.d.ts.map +1 -1
  44. package/lib/cjs/relations.js +7 -7
  45. package/lib/cjs/relations.js.map +1 -1
  46. package/lib/cjs/statements.d.ts.map +1 -1
  47. package/lib/cjs/statements.js +10 -7
  48. package/lib/cjs/statements.js.map +1 -1
  49. package/lib/cjs/symbols.d.ts +7 -0
  50. package/lib/cjs/symbols.d.ts.map +1 -0
  51. package/lib/cjs/symbols.js +10 -0
  52. package/lib/cjs/symbols.js.map +1 -0
  53. package/lib/mjs/builders.d.ts +23 -4
  54. package/lib/mjs/builders.d.ts.map +1 -1
  55. package/lib/mjs/builders.js +119 -35
  56. package/lib/mjs/builders.js.map +1 -1
  57. package/lib/mjs/decorators.d.ts +1 -2
  58. package/lib/mjs/decorators.d.ts.map +1 -1
  59. package/lib/mjs/decorators.js +3 -3
  60. package/lib/mjs/decorators.js.map +1 -1
  61. package/lib/mjs/descriptor.d.ts +3 -0
  62. package/lib/mjs/descriptor.d.ts.map +1 -0
  63. package/lib/mjs/descriptor.js +39 -0
  64. package/lib/mjs/descriptor.js.map +1 -0
  65. package/lib/mjs/discrimination-middleware.d.ts +10 -0
  66. package/lib/mjs/discrimination-middleware.d.ts.map +1 -0
  67. package/lib/mjs/discrimination-middleware.js +22 -0
  68. package/lib/mjs/discrimination-middleware.js.map +1 -0
  69. package/lib/mjs/index.d.ts +7 -4
  70. package/lib/mjs/index.d.ts.map +1 -1
  71. package/lib/mjs/index.js +10 -4
  72. package/lib/mjs/index.js.map +1 -1
  73. package/lib/mjs/interfaces.d.ts +7 -3
  74. package/lib/mjs/interfaces.d.ts.map +1 -1
  75. package/lib/mjs/interfaces.js.map +1 -1
  76. package/lib/mjs/metadata.d.ts.map +1 -1
  77. package/lib/mjs/metadata.js +1 -1
  78. package/lib/mjs/metadata.js.map +1 -1
  79. package/lib/mjs/middlewares.d.ts +1 -7
  80. package/lib/mjs/middlewares.d.ts.map +1 -1
  81. package/lib/mjs/middlewares.js +2 -21
  82. package/lib/mjs/middlewares.js.map +1 -1
  83. package/lib/mjs/model.d.ts +5 -21
  84. package/lib/mjs/model.d.ts.map +1 -1
  85. package/lib/mjs/model.js +14 -90
  86. package/lib/mjs/model.js.map +1 -1
  87. package/lib/mjs/orm.d.ts.map +1 -1
  88. package/lib/mjs/orm.js +20 -3
  89. package/lib/mjs/orm.js.map +1 -1
  90. package/lib/mjs/relation-objects.d.ts +23 -2
  91. package/lib/mjs/relation-objects.d.ts.map +1 -1
  92. package/lib/mjs/relation-objects.js +61 -7
  93. package/lib/mjs/relation-objects.js.map +1 -1
  94. package/lib/mjs/relations.d.ts +1 -1
  95. package/lib/mjs/relations.d.ts.map +1 -1
  96. package/lib/mjs/relations.js +6 -6
  97. package/lib/mjs/relations.js.map +1 -1
  98. package/lib/mjs/statements.d.ts.map +1 -1
  99. package/lib/mjs/statements.js +8 -5
  100. package/lib/mjs/statements.js.map +1 -1
  101. package/lib/mjs/symbols.d.ts +7 -0
  102. package/lib/mjs/symbols.d.ts.map +1 -0
  103. package/lib/mjs/symbols.js +7 -0
  104. package/lib/mjs/symbols.js.map +1 -0
  105. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  106. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  107. package/package.json +5 -5
package/lib/cjs/model.js CHANGED
@@ -4,23 +4,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports._modelProxyFactory = exports.MODEL_STATIC_MIXINS = exports.HistoricalModel = exports.ModelBase = void 0;
7
- exports.extractModelDescriptor = extractModelDescriptor;
8
7
  exports.updateModelDescriptor = updateModelDescriptor;
9
- exports.createQuery = createQuery;
10
8
  const enums_js_1 = require("./enums.js");
11
- const decorators_js_1 = require("./decorators.js");
9
+ const symbols_js_1 = require("./symbols.js");
12
10
  const interfaces_js_1 = require("./interfaces.js");
13
11
  const builders_js_1 = require("./builders.js");
14
- const orm_js_1 = require("./orm.js");
15
12
  const hydrators_js_1 = require("./hydrators.js");
16
13
  const exceptions_js_1 = require("./exceptions.js");
17
14
  const dehydrators_js_1 = require("./dehydrators.js");
18
15
  const relation_objects_js_1 = require("./relation-objects.js");
19
- const middlewares_js_1 = require("./middlewares.js");
20
16
  const di_1 = require("@spinajs/di");
21
17
  const luxon_1 = require("luxon");
22
18
  const lodash_1 = __importDefault(require("lodash"));
23
19
  const uuid_1 = require("uuid");
20
+ const descriptor_js_1 = require("./descriptor.js");
24
21
  const MODEL_PROXY_HANDLER = {
25
22
  set: (target, p, value) => {
26
23
  if (target[p] !== value) {
@@ -34,41 +31,6 @@ const MODEL_PROXY_HANDLER = {
34
31
  return true;
35
32
  },
36
33
  };
37
- function getConstructorChain(obj) {
38
- var cs = [obj.name], pt = obj;
39
- do {
40
- if ((pt = Object.getPrototypeOf(pt)))
41
- cs.push(pt.name || null);
42
- } while (pt != null);
43
- return cs.filter((x) => x !== 'Function' && x !== 'Object' && x !== null);
44
- }
45
- function extractModelDescriptor(targetOrForward) {
46
- const target = !(0, di_1.isConstructor)(targetOrForward) && targetOrForward ? targetOrForward() : targetOrForward;
47
- if (!target) {
48
- return null;
49
- }
50
- const metadata = Reflect.getMetadata(decorators_js_1.MODEL_DESCTRIPTION_SYMBOL, target);
51
- // we want collapse metadata vals in reverse order ( base class first )
52
- const inheritanceChain = getConstructorChain(target).reverse();
53
- const merger = (a, b) => {
54
- if (lodash_1.default.isArray(a)) {
55
- return a.concat(b);
56
- }
57
- if (!(lodash_1.default.isNil(a) || lodash_1.default.isEmpty(a)) && (lodash_1.default.isNil(b) || lodash_1.default.isEmpty(b))) {
58
- return a;
59
- }
60
- if (lodash_1.default.isMap(a)) {
61
- return new Map([...a, ...b]);
62
- }
63
- return b;
64
- };
65
- return inheritanceChain.reduce((prev, c) => {
66
- return {
67
- ...lodash_1.default.assignWith(prev, metadata[c], merger),
68
- Converters: new Map([...(prev.Converters ?? []), ...(metadata[c] ? metadata[c].Converters : [])]),
69
- };
70
- }, {});
71
- }
72
34
  /**
73
35
  *
74
36
  * Updates model descriptor
@@ -82,7 +44,7 @@ function updateModelDescriptor(targetOrForward, callback) {
82
44
  if (!target) {
83
45
  return null;
84
46
  }
85
- const metadata = Reflect.getMetadata(decorators_js_1.MODEL_DESCTRIPTION_SYMBOL, target);
47
+ const metadata = Reflect.getMetadata(symbols_js_1.MODEL_DESCTRIPTION_SYMBOL, target);
86
48
  callback(metadata[target.name]);
87
49
  }
88
50
  class ModelBase {
@@ -103,7 +65,7 @@ class ModelBase {
103
65
  * db table attached, column information and others.
104
66
  */
105
67
  get ModelDescriptor() {
106
- return extractModelDescriptor(this.constructor);
68
+ return (0, descriptor_js_1.extractModelDescriptor)(this.constructor);
107
69
  }
108
70
  /**
109
71
  * Gets di container associated with this model ( via connection object eg. different drivers have their own implementation of things)
@@ -147,7 +109,7 @@ class ModelBase {
147
109
  return this.PrimaryKeyValue;
148
110
  }
149
111
  driver() {
150
- const orm = di_1.DI.get(orm_js_1.Orm);
112
+ const orm = di_1.DI.get('Orm');
151
113
  const driver = orm.Connections.get(this.ModelDescriptor.Connection);
152
114
  return driver;
153
115
  }
@@ -560,19 +522,16 @@ class ModelBase {
560
522
  }
561
523
  }
562
524
  createSelectQuery() {
563
- return createQuery(this.constructor, builders_js_1.SelectQueryBuilder);
525
+ return (0, builders_js_1.createQuery)(this.constructor, builders_js_1.SelectQueryBuilder);
564
526
  }
565
527
  createUpdateQuery() {
566
- return createQuery(this.constructor, builders_js_1.UpdateQueryBuilder);
528
+ return (0, builders_js_1.createQuery)(this.constructor, builders_js_1.UpdateQueryBuilder);
567
529
  }
568
530
  createInsertQuery() {
569
- return createQuery(this.constructor, builders_js_1.InsertQueryBuilder);
531
+ return (0, builders_js_1.createQuery)(this.constructor, builders_js_1.InsertQueryBuilder);
570
532
  }
571
533
  }
572
534
  exports.ModelBase = ModelBase;
573
- function _descriptor(model) {
574
- return extractModelDescriptor(model);
575
- }
576
535
  function _preparePkWhere(description, query, model) {
577
536
  if (description.PrimaryKey) {
578
537
  query.where(description.PrimaryKey, model.PrimaryKeyValue);
@@ -609,54 +568,9 @@ function _prepareOrderBy(description, query, order) {
609
568
  class HistoricalModel {
610
569
  }
611
570
  exports.HistoricalModel = HistoricalModel;
612
- /**
613
- * Helper function to create query based on model
614
- *
615
- * @param model - source model for query
616
- * @param query - query class
617
- * @param injectModel - should inject model information into query, if not, query will return raw data
618
- *
619
- * @returns
620
- */
621
- function createQuery(model, query, injectModel = true) {
622
- const dsc = _descriptor(model);
623
- if (!dsc) {
624
- throw new Error(`model ${model.name} does not have model descriptor. Use @model decorator on class`);
625
- }
626
- const driver = di_1.DI.resolve('OrmConnection', [dsc.Connection]);
627
- if (!driver) {
628
- throw new Error(`model ${model.name} have invalid connection ${dsc.Connection}, please check your db config file or model connection name`);
629
- }
630
- const cnt = driver.Container;
631
- const models = di_1.DI.getRegisteredTypes('__models__');
632
- const qr = cnt.resolve(query, [driver, injectModel ? models.find((x) => x.name === model.name) : null]);
633
- if (qr instanceof builders_js_1.SelectQueryBuilder) {
634
- const scope = model._queryScopes;
635
- if (scope) {
636
- Object.getOwnPropertyNames(scope.__proto__)
637
- .filter((x) => x !== 'constructor')
638
- .forEach(function (property) {
639
- if (typeof scope[property] === 'function') {
640
- qr[property] = scope[property].bind(qr);
641
- }
642
- });
643
- }
644
- }
645
- qr.middleware(new middlewares_js_1.DiscriminationMapMiddleware(dsc));
646
- qr.setTable(dsc.TableName);
647
- if (driver.Options.Database) {
648
- qr.database(driver.Options.Database);
649
- }
650
- return {
651
- query: qr,
652
- description: dsc,
653
- model,
654
- container: driver.Container,
655
- };
656
- }
657
571
  exports.MODEL_STATIC_MIXINS = {
658
572
  getModelDescriptor() {
659
- const dsc = _descriptor(this);
573
+ const dsc = (0, builders_js_1._descriptor)(this);
660
574
  if (!dsc) {
661
575
  throw new exceptions_js_1.OrmException(`Model ${this.constructor.name} has no descriptor`);
662
576
  }
@@ -677,12 +591,12 @@ exports.MODEL_STATIC_MIXINS = {
677
591
  return rDescriptor;
678
592
  },
679
593
  truncate() {
680
- const { query } = createQuery(this, builders_js_1.TruncateTableQueryBuilder, false);
594
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.TruncateTableQueryBuilder, false);
681
595
  return query;
682
596
  },
683
597
  driver() {
684
598
  const dsc = this.getModelDescriptor();
685
- const orm = di_1.DI.get(orm_js_1.Orm);
599
+ const orm = di_1.DI.get('Orm');
686
600
  const driver = orm.Connections.get(dsc.Connection);
687
601
  if (!driver) {
688
602
  throw new Error(`model ${this.name} have invalid connection ${dsc.Connection}, please check your db config file or model connection name`);
@@ -710,7 +624,7 @@ exports.MODEL_STATIC_MIXINS = {
710
624
  };
711
625
  switch (relationDescriptor.Type) {
712
626
  case interfaces_js_1.RelationType.One:
713
- const { query: JoinQuery } = createQuery(relationDescriptor.SourceModel, builders_js_1.SelectQueryBuilder);
627
+ const { query: JoinQuery } = (0, builders_js_1.createQuery)(relationDescriptor.SourceModel, builders_js_1.SelectQueryBuilder);
714
628
  // NOTE: we could use simple right join, but we use LEFT JOIN
715
629
  // becouse sqlite does not support right join
716
630
  // UPDATE: newest sqlite engine does support right join
@@ -728,22 +642,22 @@ exports.MODEL_STATIC_MIXINS = {
728
642
  case interfaces_js_1.RelationType.Query:
729
643
  throw new exceptions_js_1.OrmException(`many to many relation not supported in populate`);
730
644
  case interfaces_js_1.RelationType.Many:
731
- const { query } = createQuery(relationDescriptor.TargetModel, builders_js_1.SelectQueryBuilder);
645
+ const { query } = (0, builders_js_1.createQuery)(relationDescriptor.TargetModel, builders_js_1.SelectQueryBuilder);
732
646
  query.where(relationDescriptor.ForeignKey, owner instanceof ModelBase ? owner.PrimaryKeyValue : owner);
733
647
  return query;
734
648
  }
735
649
  },
736
650
  query() {
737
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
651
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
738
652
  return query;
739
653
  },
740
654
  select() {
741
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
655
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
742
656
  query.select('*');
743
657
  return query;
744
658
  },
745
659
  where(column, operator, value) {
746
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
660
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
747
661
  query.select('*');
748
662
  return query.where(column, operator, value);
749
663
  },
@@ -751,11 +665,11 @@ exports.MODEL_STATIC_MIXINS = {
751
665
  if (data instanceof ModelBase) {
752
666
  throw new exceptions_js_1.OrmException(`use model::update() function to update model`);
753
667
  }
754
- const { query } = createQuery(this, builders_js_1.UpdateQueryBuilder);
668
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.UpdateQueryBuilder);
755
669
  return query.update(data);
756
670
  },
757
671
  all(page, perPage) {
758
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
672
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
759
673
  query.select('*');
760
674
  if (page >= 0 && perPage > 0) {
761
675
  query.take(perPage).skip(page * perPage);
@@ -766,7 +680,7 @@ exports.MODEL_STATIC_MIXINS = {
766
680
  * Try to insert new value
767
681
  */
768
682
  async insert(data, insertBehaviour = interfaces_js_1.InsertBehaviour.None) {
769
- const { query, description, container } = createQuery(this, builders_js_1.InsertQueryBuilder);
683
+ const { query, description, container } = (0, builders_js_1.createQuery)(this, builders_js_1.InsertQueryBuilder);
770
684
  const converter = container.resolve(interfaces_js_1.ObjectToSqlConverter);
771
685
  if (Array.isArray(data)) {
772
686
  if (insertBehaviour !== interfaces_js_1.InsertBehaviour.None) {
@@ -819,14 +733,14 @@ exports.MODEL_STATIC_MIXINS = {
819
733
  return query;
820
734
  },
821
735
  async find(pks) {
822
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
736
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
823
737
  const pkey = description.PrimaryKey;
824
738
  query.select('*');
825
739
  query.whereIn(pkey, pks);
826
740
  return await query;
827
741
  },
828
742
  async findOrFail(pks) {
829
- const { query, description, model } = createQuery(this, builders_js_1.SelectQueryBuilder);
743
+ const { query, description, model } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
830
744
  const pkey = description.PrimaryKey;
831
745
  query.select('*');
832
746
  query.whereIn(pkey, pks);
@@ -837,7 +751,7 @@ exports.MODEL_STATIC_MIXINS = {
837
751
  return result;
838
752
  },
839
753
  async get(pk) {
840
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
754
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
841
755
  const pkey = description.PrimaryKey;
842
756
  query.select('*');
843
757
  query.where(pkey, pk);
@@ -845,7 +759,7 @@ exports.MODEL_STATIC_MIXINS = {
845
759
  return (await query.first());
846
760
  },
847
761
  async getOrFail(pk) {
848
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
762
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
849
763
  const pkey = description.PrimaryKey;
850
764
  query.select('*');
851
765
  query.where(pkey, pk);
@@ -853,12 +767,12 @@ exports.MODEL_STATIC_MIXINS = {
853
767
  return (await query.firstOrFail());
854
768
  },
855
769
  destroy(pks) {
856
- const description = _descriptor(this);
770
+ const description = (0, builders_js_1._descriptor)(this);
857
771
  const data = Array.isArray(pks) ? pks : [pks];
858
772
  if (data.length === 0) {
859
773
  throw new exceptions_js_1.OrmException('Cannot delete empty array of primary keys');
860
774
  }
861
- const { query } = description.SoftDelete?.DeletedAt ? createQuery(this, builders_js_1.UpdateQueryBuilder) : createQuery(this, builders_js_1.DeleteQueryBuilder);
775
+ const { query } = description.SoftDelete?.DeletedAt ? (0, builders_js_1.createQuery)(this, builders_js_1.UpdateQueryBuilder) : (0, builders_js_1.createQuery)(this, builders_js_1.DeleteQueryBuilder);
862
776
  if (description.SoftDelete?.DeletedAt) {
863
777
  query.update({
864
778
  [description.SoftDelete.DeletedAt]: luxon_1.DateTime.now(),
@@ -875,7 +789,7 @@ exports.MODEL_STATIC_MIXINS = {
875
789
  return entity;
876
790
  },
877
791
  async getOrCreate(pk, data) {
878
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
792
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
879
793
  // pk constrain
880
794
  if (description.PrimaryKey && pk !== null) {
881
795
  query.where(description.PrimaryKey, pk);
@@ -894,7 +808,7 @@ exports.MODEL_STATIC_MIXINS = {
894
808
  return entity;
895
809
  },
896
810
  async getOrNew(data) {
897
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
811
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
898
812
  // check for all unique columns ( unique constrain )
899
813
  description.Columns.filter((c) => c.Unique || c.PrimaryKey).forEach((c) => {
900
814
  query.andWhere(c.Name, data[c.Name]);
@@ -902,13 +816,21 @@ exports.MODEL_STATIC_MIXINS = {
902
816
  _prepareOrderBy(description, query);
903
817
  let entity = (await query.first());
904
818
  if (!entity) {
905
- entity = new (Function.prototype.bind.apply(this))(data);
819
+ const toHydrate = data ?? {};
820
+ const primaryKey = description.Columns.find((c) => c.PrimaryKey);
821
+ // remove primary key from data to hydrate
822
+ // we dont want to set primary key on new model if not exists
823
+ // and autoincrement is set
824
+ if (primaryKey.AutoIncrement) {
825
+ delete toHydrate[description.PrimaryKey];
826
+ }
827
+ entity = new (Function.prototype.bind.apply(this))(toHydrate);
906
828
  return entity;
907
829
  }
908
830
  return entity;
909
831
  },
910
832
  async exists(pk) {
911
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
833
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
912
834
  // pk constrain
913
835
  if (description.PrimaryKey && pk !== null) {
914
836
  query.where(description.PrimaryKey, pk);
@@ -920,17 +842,17 @@ exports.MODEL_STATIC_MIXINS = {
920
842
  return false;
921
843
  },
922
844
  whereExists(qOrRel, callback) {
923
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
845
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
924
846
  query.whereExist(qOrRel, callback);
925
847
  return query;
926
848
  },
927
849
  whereNotExists(q) {
928
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
850
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
929
851
  query.whereNotExists(q);
930
852
  return query;
931
853
  },
932
854
  async first(callback) {
933
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
855
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
934
856
  _prepareOrderBy(description, query, enums_js_1.SortOrder.ASC);
935
857
  if (callback) {
936
858
  callback(query);
@@ -938,7 +860,7 @@ exports.MODEL_STATIC_MIXINS = {
938
860
  return (await query.first());
939
861
  },
940
862
  async last(callback) {
941
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
863
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
942
864
  _prepareOrderBy(description, query, enums_js_1.SortOrder.DESC);
943
865
  if (callback) {
944
866
  callback(query);
@@ -946,7 +868,7 @@ exports.MODEL_STATIC_MIXINS = {
946
868
  return (await query.first());
947
869
  },
948
870
  async newest(callback) {
949
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
871
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
950
872
  if (description.Timestamps?.CreatedAt) {
951
873
  query.order(description.Timestamps.CreatedAt, enums_js_1.SortOrder.DESC);
952
874
  }
@@ -959,7 +881,7 @@ exports.MODEL_STATIC_MIXINS = {
959
881
  return (await query.first());
960
882
  },
961
883
  async oldest(callback) {
962
- const { query, description } = createQuery(this, builders_js_1.SelectQueryBuilder);
884
+ const { query, description } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
963
885
  if (description.Timestamps?.CreatedAt) {
964
886
  query.order(description.Timestamps.CreatedAt, enums_js_1.SortOrder.ASC);
965
887
  }
@@ -972,7 +894,7 @@ exports.MODEL_STATIC_MIXINS = {
972
894
  return (await query.first());
973
895
  },
974
896
  async count(callback) {
975
- const { query } = createQuery(this, builders_js_1.SelectQueryBuilder);
897
+ const { query } = (0, builders_js_1.createQuery)(this, builders_js_1.SelectQueryBuilder);
976
898
  query.count('*', 'count');
977
899
  if (callback) {
978
900
  callback(query);
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../../src/orm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,SAAS,EAAc,SAAS,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AACpG,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAwC,YAAY,EAA4B,MAAM,iBAAiB,CAAC;AAC/G,OAAO,EAAE,SAAS,EAAsE,MAAM,YAAY,CAAC;AAE3G,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAYxC,qBAAa,GAAI,SAAQ,YAAY;IAC5B,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAM;IAEzC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAM;IAEhD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAgC;IAGnE,SAAS,EAAE,SAAS,CAAC;IAG5B,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;IAGnB,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAEvC;;;;;OAKG;IACU,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAuCrF;;;;;OAKG;IACU,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC7E;;;OAGG;IACU,eAAe;IAsEf,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCrC,SAAS,CAAC,yBAAyB;IASnC,SAAS,CAAC,aAAa;IAoBvB;;;;;;;;OAQG;IACH,SAAS,CAAC,aAAa,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAQ5D;;;;;;;;OAQG;IACH,SAAS,CAAC,iBAAiB,CAAC,CAAC,SAAS,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;YAczD,iBAAiB;IAkD/B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,gBAAgB;YAeV,wBAAwB;IAqEzB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAKtC"}
1
+ {"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../../src/orm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,SAAS,EAAc,SAAS,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AACpG,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAwC,YAAY,EAA4B,MAAM,iBAAiB,CAAC;AAC/G,OAAO,EAAE,SAAS,EAA8C,MAAM,YAAY,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAaxC,qBAAa,GAAI,SAAQ,YAAY;IAC5B,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAM;IAEzC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAM;IAEhD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAgC;IAGnE,SAAS,EAAE,SAAS,CAAC;IAG5B,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;IAGnB,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAEvC;;;;;OAKG;IACU,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAuCrF;;;;;OAKG;IACU,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC7E;;;OAGG;IACU,eAAe;IAkFf,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCrC,SAAS,CAAC,yBAAyB;IASnC,SAAS,CAAC,aAAa;IAyBvB;;;;;;;;OAQG;IACH,SAAS,CAAC,aAAa,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAQ5D;;;;;;;;OAQG;IACH,SAAS,CAAC,iBAAiB,CAAC,CAAC,SAAS,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;YAczD,iBAAiB;IAkD/B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,gBAAgB;YAeV,wBAAwB;IAqEzB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAKtC"}
package/lib/cjs/orm.js CHANGED
@@ -20,10 +20,11 @@ const log_common_1 = require("@spinajs/log-common");
20
20
  const lodash_1 = __importDefault(require("lodash"));
21
21
  const interfaces_js_2 = require("./interfaces.js");
22
22
  const model_js_1 = require("./model.js");
23
- const decorators_js_1 = require("./decorators.js");
23
+ const symbols_js_1 = require("./symbols.js");
24
24
  const exceptions_1 = require("@spinajs/exceptions");
25
25
  const exceptions_js_1 = require("./exceptions.js");
26
26
  const luxon_1 = require("luxon");
27
+ const descriptor_js_1 = require("./descriptor.js");
27
28
  /**
28
29
  * Used to exclude sensitive data to others. eg. removed password field from cfg
29
30
  */
@@ -103,7 +104,7 @@ class Orm extends di_1.AsyncService {
103
104
  */
104
105
  async reloadTableInfo() {
105
106
  for (const m of this.Models) {
106
- const descriptor = (0, model_js_1.extractModelDescriptor)(m.type);
107
+ const descriptor = (0, descriptor_js_1.extractModelDescriptor)(m.type);
107
108
  if (descriptor) {
108
109
  const connection = this.Connections.get(descriptor.Connection);
109
110
  if (!connection) {
@@ -118,7 +119,19 @@ class Orm extends di_1.AsyncService {
118
119
  if (columns) {
119
120
  (0, model_js_1.updateModelDescriptor)(m.type, (d) => {
120
121
  d.Columns = lodash_1.default.unionBy(d.Columns, lodash_1.default.uniqBy(columns.map((c) => {
121
- return lodash_1.default.assign(lodash_1.default.find(descriptor.Columns, { Name: c.Name }), c);
122
+ // Only assign properties from table column that are not undefined
123
+ const existingColumn = lodash_1.default.find(descriptor.Columns, { Name: c.Name });
124
+ if (existingColumn) {
125
+ // Merge only defined properties from table info
126
+ Object.keys(c).forEach(key => {
127
+ const columnKey = key;
128
+ if (c[columnKey] !== undefined) {
129
+ existingColumn[columnKey] = c[columnKey];
130
+ }
131
+ });
132
+ return existingColumn;
133
+ }
134
+ return c;
122
135
  }), 'Name'), 'Name');
123
136
  // m.type[MODEL_DESCTRIPTION_SYMBOL].Schema = buildJsonSchema(columns);
124
137
  /**
@@ -190,10 +203,14 @@ class Orm extends di_1.AsyncService {
190
203
  }
191
204
  wireRelations() {
192
205
  this.Models.forEach((x) => {
193
- const desc = (0, model_js_1.extractModelDescriptor)(x.type);
206
+ const desc = (0, descriptor_js_1.extractModelDescriptor)(x.type);
194
207
  if (!desc)
195
208
  return;
196
209
  desc.Relations.forEach((rel) => {
210
+ // Skip relations without TargetModelType (e.g., Query relations)
211
+ if (!rel.TargetModelType) {
212
+ return;
213
+ }
197
214
  const found = this.Models.find((y) => {
198
215
  const type = lodash_1.default.isString(rel.TargetModelType) ? rel.TargetModelType : rel.TargetModelType.name;
199
216
  return y.name === type;
@@ -323,7 +340,7 @@ class Orm extends di_1.AsyncService {
323
340
  migrations = migrations.reverse();
324
341
  }
325
342
  for (const m of migrations) {
326
- const md = m.type[decorators_js_1.MIGRATION_DESCRIPTION_SYMBOL];
343
+ const md = m.type[symbols_js_1.MIGRATION_DESCRIPTION_SYMBOL];
327
344
  const cn = this.Connections.get(md.Connection);
328
345
  if (!cn) {
329
346
  this.Log.warn(`Connection ${md.Connection} not exists for migration ${m.name} at file ${m.file}`);