myorm_pg 2.1.0 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +22 -2
  2. package/lib/Index.d.ts +4 -0
  3. package/lib/Index.d.ts.map +1 -1
  4. package/lib/Index.js +3 -1
  5. package/lib/Index.js.map +1 -1
  6. package/lib/core/design/Type.d.ts +1 -0
  7. package/lib/core/design/Type.d.ts.map +1 -1
  8. package/lib/core/design/Type.js +7 -1
  9. package/lib/core/design/Type.js.map +1 -1
  10. package/lib/core/exceptions/ConstraintFailException.d.ts +1 -1
  11. package/lib/core/exceptions/ConstraintFailException.d.ts.map +1 -1
  12. package/lib/core/exceptions/ConstraintFailException.js +2 -2
  13. package/lib/core/exceptions/ConstraintFailException.js.map +1 -1
  14. package/lib/core/objects/DBOperationLogHandler.d.ts +16 -0
  15. package/lib/core/objects/DBOperationLogHandler.d.ts.map +1 -0
  16. package/lib/core/objects/DBOperationLogHandler.js +17 -0
  17. package/lib/core/objects/DBOperationLogHandler.js.map +1 -0
  18. package/lib/core/objects/interfaces/IDBContext.d.ts +32 -1
  19. package/lib/core/objects/interfaces/IDBContext.d.ts.map +1 -1
  20. package/lib/core/objects/interfaces/IDBSet.d.ts +4 -3
  21. package/lib/core/objects/interfaces/IDBSet.d.ts.map +1 -1
  22. package/lib/core/objects/interfaces/IStatement.d.ts +3 -1
  23. package/lib/core/objects/interfaces/IStatement.d.ts.map +1 -1
  24. package/lib/core/objects/interfaces/IStatement.js +2 -0
  25. package/lib/core/objects/interfaces/IStatement.js.map +1 -1
  26. package/lib/implementations/PGDBContext.d.ts +37 -3
  27. package/lib/implementations/PGDBContext.d.ts.map +1 -1
  28. package/lib/implementations/PGDBContext.js +209 -0
  29. package/lib/implementations/PGDBContext.js.map +1 -1
  30. package/lib/implementations/PGDBManager.d.ts +4 -0
  31. package/lib/implementations/PGDBManager.d.ts.map +1 -1
  32. package/lib/implementations/PGDBManager.js +20 -0
  33. package/lib/implementations/PGDBManager.js.map +1 -1
  34. package/lib/implementations/PGDBSet.d.ts +5 -1
  35. package/lib/implementations/PGDBSet.d.ts.map +1 -1
  36. package/lib/implementations/PGDBSet.js +218 -107
  37. package/lib/implementations/PGDBSet.js.map +1 -1
  38. package/lib/implementations/PGSetHelper.d.ts +19 -0
  39. package/lib/implementations/PGSetHelper.d.ts.map +1 -0
  40. package/lib/implementations/PGSetHelper.js +48 -0
  41. package/lib/implementations/PGSetHelper.js.map +1 -0
  42. package/package.json +1 -1
@@ -22,6 +22,7 @@ const InvalidOperationException_1 = __importDefault(require("../core/exceptions/
22
22
  const RelationType_1 = require("../core/enums/RelationType");
23
23
  const ConstraintFailException_1 = __importDefault(require("../core/exceptions/ConstraintFailException"));
24
24
  const PGFluentField_1 = __importDefault(require("./PGFluentField"));
25
+ const PGSetHelper_1 = __importDefault(require("./PGSetHelper"));
25
26
  class PGDBSet {
26
27
  constructor(cTor, context) {
27
28
  this._statements = [];
@@ -379,6 +380,7 @@ class PGDBSet {
379
380
  }
380
381
  Where(statement) {
381
382
  var _a;
383
+ this.ResetFilters();
382
384
  this._statements.push({
383
385
  Statement: {
384
386
  Field: statement.Field.toString(),
@@ -437,23 +439,52 @@ class PGDBSet {
437
439
  this._limit = limit >= 1 ? { Limit: limit } : undefined;
438
440
  return this;
439
441
  }
440
- ToListAsync() {
442
+ CountAsync() {
441
443
  return __awaiter(this, void 0, void 0, function* () {
442
444
  return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
443
- let query = `select * from "${this._table}"`;
445
+ let query = `select count(*) from "${this._table}"`;
444
446
  if (this._whereAsString != undefined && this._statements.length > 0) {
445
447
  throw new InvalidOperationException_1.default("Is not possible combine free and structured queries");
446
448
  }
447
449
  if (this._whereAsString != undefined) {
448
450
  query += ` ${this._whereAsString} `;
449
451
  }
450
- for (let i = 0; i < this._statements.length; i++) {
451
- let where = this._statements[i];
452
- if (i == 0 && where.StatementType != StatementType.WHERE)
453
- throw new InvalidOperationException_1.default(`The query three must start with a WHERE statement`);
454
- if (i > 0 && where.StatementType == StatementType.WHERE)
455
- where.StatementType = StatementType.AND;
456
- query += ` ${where.StatementType} ${this.EvaluateStatement(where)} `;
452
+ query += this.EvaluateWhere();
453
+ let ordenation = "";
454
+ for (let orderby of this._ordering) {
455
+ ordenation += `${this.EvaluateOrderBy(orderby)},`;
456
+ }
457
+ if (this._ordering.length > 0) {
458
+ query += ` order by ${ordenation.substring(0, ordenation.length - 1)}`;
459
+ }
460
+ if (this._limit != undefined) {
461
+ query += ` limit ${this._limit.Limit}`;
462
+ }
463
+ var r = yield this._manager.Execute(query);
464
+ this.Reset();
465
+ return r.rows[0].count;
466
+ }));
467
+ });
468
+ }
469
+ ToListAsync() {
470
+ return __awaiter(this, void 0, void 0, function* () {
471
+ return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
472
+ let whereSrt = PGSetHelper_1.default.ExtractWhereData(this);
473
+ let sqlSrt = PGSetHelper_1.default.ExtractSQLData(this);
474
+ let query = `select "${this._table}".* from "${this._table}"`;
475
+ if (sqlSrt && sqlSrt.toLowerCase().trim().startsWith(`select distinct "${this._table}".*`))
476
+ query = sqlSrt;
477
+ if (!whereSrt) {
478
+ if (this._whereAsString != undefined && this._statements.length > 0) {
479
+ throw new InvalidOperationException_1.default("Is not possible combine free and structured queries");
480
+ }
481
+ if (this._whereAsString != undefined) {
482
+ query += ` ${this._whereAsString} `;
483
+ }
484
+ query += this.EvaluateWhere();
485
+ }
486
+ else {
487
+ query += whereSrt;
457
488
  }
458
489
  let ordenation = "";
459
490
  for (let orderby of this._ordering) {
@@ -471,88 +502,7 @@ class PGDBSet {
471
502
  return [];
472
503
  }
473
504
  let list = [];
474
- for (let row of r.rows) {
475
- let instance = Reflect.construct(this._type, []);
476
- for (let map of this._maps) {
477
- let type = Type_1.default.GetDesingType(this._type, map.Field);
478
- let relation = SchemasDecorators_1.default.GetRelationAttribute(this._type, map.Field);
479
- if ((!type || type === Array) && relation)
480
- type = relation.TypeBuilder();
481
- if (!this._context.IsMapped(type)) {
482
- let v = Reflect.get(row, map.Column);
483
- let vType = Type_1.default.CastType(map.Type);
484
- if (v != undefined) {
485
- if ([DBTypes_1.DBTypes.INTEGER, DBTypes_1.DBTypes.LONG, DBTypes_1.DBTypes.SERIAL].includes(vType))
486
- Reflect.set(instance, map.Field, Number.parseInt(v));
487
- else if (DBTypes_1.DBTypes.DOUBLE == vType)
488
- Reflect.set(instance, map.Field, Number.parseFloat(v));
489
- else if ([DBTypes_1.DBTypes.DATE, DBTypes_1.DBTypes.DATETIME].includes(vType)) {
490
- try {
491
- v = new Date(v);
492
- }
493
- catch (_a) { }
494
- Reflect.set(instance, map.Field, v);
495
- }
496
- else if (DBTypes_1.DBTypes.TEXT == vType)
497
- Reflect.set(instance, map.Field, v.toString());
498
- else
499
- Reflect.set(instance, map.Field, v);
500
- }
501
- else
502
- Reflect.set(instance, map.Field, v);
503
- }
504
- else {
505
- if (Reflect.get(row, map.Column) == undefined)
506
- continue;
507
- let includeType = this._includes.filter(s => s.Field == map.Field);
508
- let loaded = false;
509
- if (includeType.length > 0) {
510
- loaded = true;
511
- let colletion = this._context.Collection(type);
512
- if (colletion == undefined)
513
- continue;
514
- let subKey = SchemasDecorators_1.default.ExtractPrimaryKey(type);
515
- if ((relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.MANY_TO_MANY || (relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.ONE_TO_MANY) {
516
- let values = Reflect.get(row, map.Column);
517
- if (!values || values.length == 0)
518
- continue;
519
- colletion.Where({
520
- Field: subKey,
521
- Kind: IStatement_1.Operation.EQUALS,
522
- Value: values[0]
523
- });
524
- for (let i = 0; i < values.length; i++) {
525
- if (i == 0)
526
- continue;
527
- colletion.Or({
528
- Field: subKey,
529
- Kind: IStatement_1.Operation.EQUALS,
530
- Value: values[i]
531
- });
532
- }
533
- let subObjets = yield colletion.ToListAsync();
534
- Reflect.set(instance, map.Field, subObjets);
535
- }
536
- else {
537
- colletion.Where({
538
- Field: subKey,
539
- Kind: IStatement_1.Operation.EQUALS,
540
- Value: Reflect.get(row, map.Column)
541
- });
542
- let subObjet = yield colletion.FirstOrDefaultAsync();
543
- Reflect.set(instance, map.Field, subObjet);
544
- }
545
- }
546
- Type_1.default.InjectMetadata(instance, {
547
- Field: map.Field,
548
- Type: map.Type,
549
- Value: Reflect.get(row, map.Column),
550
- Loaded: loaded
551
- });
552
- }
553
- }
554
- list.push(instance);
555
- }
505
+ list = yield this.BuildObjects(r);
556
506
  this.Reset();
557
507
  return list;
558
508
  }));
@@ -569,6 +519,7 @@ class PGDBSet {
569
519
  });
570
520
  }
571
521
  WhereField(field) {
522
+ this.ResetFilters();
572
523
  return new PGFluentField_1.default(this, field, false);
573
524
  }
574
525
  AndField(field) {
@@ -578,6 +529,7 @@ class PGDBSet {
578
529
  return new PGFluentField_1.default(this, field, true);
579
530
  }
580
531
  WhereAsString(where) {
532
+ this.ResetFilters();
581
533
  if (where && !where.trim().toLocaleLowerCase().startsWith("where")) {
582
534
  where = `where ${where}`;
583
535
  }
@@ -615,12 +567,12 @@ class PGDBSet {
615
567
  let dt = value;
616
568
  if (!dt)
617
569
  throw new InvalidOperationException_1.default(`Can not cast the value: "${value}" in a valid date`);
618
- let dtStr = `'${dt.getFullYear()}-${dt.getMonth() + 1}-${dt.getDate()}'`;
570
+ let dtStr = `${dt.getFullYear()}-${dt.getMonth() + 1}-${dt.getDate()}`;
619
571
  if (colType == DBTypes_1.DBTypes.DATE) {
620
- return `${dtStr}`;
572
+ return `'${dtStr}'::date`;
621
573
  }
622
574
  else {
623
- return `${dtStr} ${dt.getHours()}:${dt.getMinutes()}`;
575
+ return `'${dtStr} ${dt.getHours()}:${dt.getMinutes()}'::timestamp`;
624
576
  }
625
577
  }
626
578
  else if (Type_1.default.IsArray(colType)) {
@@ -638,6 +590,18 @@ class PGDBSet {
638
590
  }
639
591
  throw new TypeNotSuportedException_1.default(`The type ${colType} is not suported`);
640
592
  }
593
+ EvaluateWhere() {
594
+ let query = "";
595
+ for (let i = 0; i < this._statements.length; i++) {
596
+ let where = this._statements[i];
597
+ if (i == 0 && where.StatementType != StatementType.WHERE)
598
+ throw new InvalidOperationException_1.default(`The query three must start with a WHERE statement`);
599
+ if (i > 0 && where.StatementType == StatementType.WHERE)
600
+ where.StatementType = StatementType.AND;
601
+ query += ` ${where.StatementType} ${this.EvaluateStatement(where)} `;
602
+ }
603
+ return query;
604
+ }
641
605
  EvaluateStatement(pgStatement) {
642
606
  let column = Type_1.default.GetColumnName(this._type, pgStatement.Statement.Field.toString());
643
607
  let typeName = Type_1.default.GetDesingTimeTypeName(this._type, pgStatement.Statement.Field.toString());
@@ -652,42 +616,91 @@ class PGDBSet {
652
616
  type = relation.TypeBuilder();
653
617
  }
654
618
  if (pgStatement.Statement.Value == undefined)
655
- return `${column} is null`;
656
- if (this._context.IsMapped(type)) {
657
- throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
619
+ return `"${this._table}".${column} is null`;
620
+ if (this._context.IsMapped(type) || (relation && this._context.IsMapped(relation.TypeBuilder()))) {
621
+ if (!relation)
622
+ throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
623
+ if (isArray) {
624
+ if (pgStatement.Statement.Value.lenght == 0)
625
+ return `coalesce(array_length("${this._table}".${column}, 1), 0) = 0`;
626
+ if (pgStatement.Statement.Value.filter(s => s == undefined || s == null).length > 0)
627
+ throw new InvalidOperationException_1.default(`Can not compare relations with null or undefined objets`);
628
+ let c = pgStatement.Statement.Value[0];
629
+ let k = SchemasDecorators_1.default.ExtractPrimaryKey(c.constructor);
630
+ if (!k)
631
+ throw new ConstraintFailException_1.default(`The type ${c.constructor.name} must have a key field`);
632
+ let elementType = Type_1.default.GetDesingTimeTypeName(c.constructor, k);
633
+ let internalType = Type_1.default.CastType(elementType);
634
+ let keyType = DBTypes_1.DBTypes.LONGARRAY;
635
+ if (Type_1.default.IsNumber(internalType))
636
+ keyType = DBTypes_1.DBTypes.LONGARRAY;
637
+ else if (Type_1.default.IsText(internalType))
638
+ keyType = DBTypes_1.DBTypes.TEXTARRAY;
639
+ else if (Type_1.default.IsDate(internalType))
640
+ keyType = DBTypes_1.DBTypes.DATEARRAY;
641
+ else
642
+ throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
643
+ let newValues = [];
644
+ for (let e of pgStatement.Statement.Value) {
645
+ newValues = [e[k]];
646
+ }
647
+ typeName = keyType;
648
+ pgStatement.Statement.Value = newValues;
649
+ }
650
+ else {
651
+ let k = SchemasDecorators_1.default.ExtractPrimaryKey(pgStatement.Statement.Value.constructor);
652
+ if (!k)
653
+ throw new ConstraintFailException_1.default(`The type ${pgStatement.Statement.Value.constructor.name} must have a key field`);
654
+ let elementType = Type_1.default.GetDesingTimeTypeName(pgStatement.Statement.Value.constructor, k);
655
+ let internalType = Type_1.default.CastType(elementType);
656
+ typeName = internalType;
657
+ pgStatement.Statement.Value = pgStatement.Statement.Value[k];
658
+ }
658
659
  }
659
660
  if (isArray) {
660
661
  if (!typeName)
661
662
  throw new InvalidOperationException_1.default(`Can not determine the correct type conversion for propety ${pgStatement.Statement.Field.toString()}`);
662
663
  if (pgStatement.Statement.Kind == IStatement_1.Operation.EQUALS) {
663
- return `${column} = ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
664
+ return `"${this._table}".${column} = ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
664
665
  }
665
666
  if (pgStatement.Statement.Kind == IStatement_1.Operation.NOTEQUALS) {
666
- return `${column} != ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
667
+ return `"${this._table}".${column} != ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
667
668
  }
668
- if (pgStatement.Statement.Kind == IStatement_1.Operation.SMALLER) {
669
- return `${column} <@ ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
669
+ if (pgStatement.Statement.Kind == IStatement_1.Operation.SMALLER || pgStatement.Statement.Kind == IStatement_1.Operation.SMALLEROREQUALS) {
670
+ return `"${this._table}".${column} <@ ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
670
671
  }
671
- if ([IStatement_1.Operation.STARTWITH, IStatement_1.Operation.CONSTAINS, IStatement_1.Operation.ENDWITH, IStatement_1.Operation.GREATHER].includes(pgStatement.Statement.Kind)) {
672
- return `${column} @> ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
672
+ if ([IStatement_1.Operation.STARTWITH, IStatement_1.Operation.CONSTAINS, IStatement_1.Operation.ENDWITH, IStatement_1.Operation.GREATHER, IStatement_1.Operation.GREATHEROREQUALS].includes(pgStatement.Statement.Kind)) {
673
+ return `"${this._table}".${column} @> ${this.CreateValueStatement(typeName, pgStatement.Statement.Value)}`;
673
674
  }
674
675
  }
675
676
  if (Type_1.default.IsNumber(Type_1.default.CastType(typeName.toString())) || Type_1.default.IsDate(Type_1.default.CastType(typeName.toString()))) {
676
677
  operation[1] = "";
677
678
  operation[2] = "";
679
+ if (Type_1.default.IsDate(Type_1.default.CastType(typeName.toString()))) {
680
+ let dt = pgStatement.Statement.Value;
681
+ if (!dt)
682
+ throw new InvalidOperationException_1.default(`Can not cast the value: "${pgStatement.Statement.Value}" in a valid date`);
683
+ let dtStr = `${dt.getFullYear()}-${dt.getMonth() + 1}-${dt.getDate()}`;
684
+ if (Type_1.default.CastType(typeName.toString()) == DBTypes_1.DBTypes.DATE) {
685
+ pgStatement.Statement.Value = `'${dtStr}'::date`;
686
+ }
687
+ else {
688
+ pgStatement.Statement.Value = `'${dtStr} ${dt.getHours()}:${dt.getMinutes()}'::timestamp`;
689
+ }
690
+ }
678
691
  if ([IStatement_1.Operation.CONSTAINS, IStatement_1.Operation.ENDWITH, IStatement_1.Operation.STARTWITH].filter(s => s == pgStatement.Statement.Kind).length > 0) {
679
- throw new InvalidOperationException_1.default(`Can not execute ${pgStatement.Statement.Kind.toString().toLocaleLowerCase()} with numbers or dates`);
692
+ throw new InvalidOperationException_1.default(`Can execute ${pgStatement.Statement.Kind.toString().toLocaleLowerCase()} only with text and array fields`);
680
693
  }
681
694
  }
682
695
  else {
683
696
  operation[1] = `$$${operation[1]}`;
684
697
  operation[2] = `${operation[2]}$$`;
685
698
  }
686
- return `${column} ${operation[0]} ${operation[1]}${pgStatement.Statement.Value}${operation[2]}`;
699
+ return `"${this._table}".${column} ${operation[0]} ${operation[1]}${pgStatement.Statement.Value}${operation[2]}`;
687
700
  }
688
701
  EvaluateOrderBy(ordering) {
689
702
  let column = Type_1.default.GetColumnName(this._type, ordering.Field.toString());
690
- return ` ${column} ${ordering.Order}`;
703
+ return ` "${this._table}".${column} ${ordering.Order}`;
691
704
  }
692
705
  GetOperators(operation) {
693
706
  switch (operation) {
@@ -702,9 +715,15 @@ class PGDBSet {
702
715
  case IStatement_1.Operation.GREATHER:
703
716
  return [">", "", ""];
704
717
  ;
718
+ case IStatement_1.Operation.GREATHEROREQUALS:
719
+ return [">=", "", ""];
720
+ ;
705
721
  case IStatement_1.Operation.SMALLER:
706
722
  return ["<", "", ""];
707
723
  ;
724
+ case IStatement_1.Operation.SMALLEROREQUALS:
725
+ return ["<=", "", ""];
726
+ ;
708
727
  case IStatement_1.Operation.NOTEQUALS:
709
728
  return ["!=", "", ""];
710
729
  ;
@@ -712,11 +731,15 @@ class PGDBSet {
712
731
  }
713
732
  }
714
733
  Reset() {
715
- this._statements = [];
716
734
  this._ordering = [];
717
735
  this._includes = [];
718
736
  this._limit = undefined;
737
+ this.ResetFilters();
738
+ }
739
+ ResetFilters() {
740
+ this._statements = [];
719
741
  this._whereAsString = undefined;
742
+ PGSetHelper_1.default.CleanORMData(this);
720
743
  }
721
744
  IsCorrectType(obj) {
722
745
  let sameCTor = obj && obj.constructor && obj.constructor == this._type;
@@ -741,6 +764,94 @@ class PGDBSet {
741
764
  obj.__proto__ = this._type;
742
765
  return true;
743
766
  }
767
+ BuildObjects(r) {
768
+ return __awaiter(this, void 0, void 0, function* () {
769
+ let list = [];
770
+ for (let row of r.rows) {
771
+ let instance = Reflect.construct(this._type, []);
772
+ for (let map of this._maps) {
773
+ let type = Type_1.default.GetDesingType(this._type, map.Field);
774
+ let relation = SchemasDecorators_1.default.GetRelationAttribute(this._type, map.Field);
775
+ if ((!type || type === Array) && relation)
776
+ type = relation.TypeBuilder();
777
+ if (!this._context.IsMapped(type)) {
778
+ let v = Reflect.get(row, map.Column);
779
+ let vType = Type_1.default.CastType(map.Type);
780
+ if (v != undefined) {
781
+ if ([DBTypes_1.DBTypes.INTEGER, DBTypes_1.DBTypes.LONG, DBTypes_1.DBTypes.SERIAL].includes(vType))
782
+ Reflect.set(instance, map.Field, Number.parseInt(v));
783
+ else if (DBTypes_1.DBTypes.DOUBLE == vType)
784
+ Reflect.set(instance, map.Field, Number.parseFloat(v));
785
+ else if ([DBTypes_1.DBTypes.DATE, DBTypes_1.DBTypes.DATETIME].includes(vType)) {
786
+ try {
787
+ v = new Date(v);
788
+ }
789
+ catch (_a) { }
790
+ Reflect.set(instance, map.Field, v);
791
+ }
792
+ else if (DBTypes_1.DBTypes.TEXT == vType)
793
+ Reflect.set(instance, map.Field, v.toString());
794
+ else
795
+ Reflect.set(instance, map.Field, v);
796
+ }
797
+ else
798
+ Reflect.set(instance, map.Field, v);
799
+ }
800
+ else {
801
+ if (Reflect.get(row, map.Column) == undefined)
802
+ continue;
803
+ let includeType = this._includes.filter(s => s.Field == map.Field);
804
+ let loaded = false;
805
+ if (includeType.length > 0) {
806
+ loaded = true;
807
+ let colletion = this._context.Collection(type);
808
+ if (colletion == undefined)
809
+ continue;
810
+ let subKey = SchemasDecorators_1.default.ExtractPrimaryKey(type);
811
+ if ((relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.MANY_TO_MANY || (relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.ONE_TO_MANY) {
812
+ let values = Reflect.get(row, map.Column);
813
+ if (!values || values.length == 0)
814
+ continue;
815
+ colletion.Where({
816
+ Field: subKey,
817
+ Kind: IStatement_1.Operation.EQUALS,
818
+ Value: values[0]
819
+ });
820
+ for (let i = 0; i < values.length; i++) {
821
+ if (i == 0)
822
+ continue;
823
+ colletion.Or({
824
+ Field: subKey,
825
+ Kind: IStatement_1.Operation.EQUALS,
826
+ Value: values[i]
827
+ });
828
+ }
829
+ let subObjets = yield colletion.ToListAsync();
830
+ Reflect.set(instance, map.Field, subObjets);
831
+ }
832
+ else {
833
+ colletion.Where({
834
+ Field: subKey,
835
+ Kind: IStatement_1.Operation.EQUALS,
836
+ Value: Reflect.get(row, map.Column)
837
+ });
838
+ let subObjet = yield colletion.FirstOrDefaultAsync();
839
+ Reflect.set(instance, map.Field, subObjet);
840
+ }
841
+ }
842
+ Type_1.default.InjectMetadata(instance, {
843
+ Field: map.Field,
844
+ Type: map.Type,
845
+ Value: Reflect.get(row, map.Column),
846
+ Loaded: loaded
847
+ });
848
+ }
849
+ }
850
+ list.push(instance);
851
+ }
852
+ return list;
853
+ });
854
+ }
744
855
  }
745
856
  exports.default = PGDBSet;
746
857
  var OrderDirection;
@@ -1 +1 @@
1
- {"version":3,"file":"PGDBSet.js","sourceRoot":"","sources":["../../src/implementations/PGDBSet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PGDBSet.js","sourceRoot":"","sources":["../../src/implementations/PGDBSet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import PGDBSet from "./PGDBSet";
2
+ export default class PGSetHelper {
3
+ private static _sqlKey;
4
+ private static _joinKey;
5
+ private static _onKey;
6
+ private static _whereKey;
7
+ static InjectORMData<T extends Object>(set: PGDBSet<T>, key: string, value: string): PGDBSet<T>;
8
+ static ExtractORMData<T extends Object>(set: PGDBSet<T>, key: string): string;
9
+ static InjectSQL<T extends Object>(set: PGDBSet<T>, sql: string): PGDBSet<T>;
10
+ static InjectWhere<T extends Object>(set: PGDBSet<T>, where: string): PGDBSet<T>;
11
+ static InjectJoin<T extends Object>(set: PGDBSet<T>, join: string): PGDBSet<T>;
12
+ static InjectOn<T extends Object>(set: PGDBSet<T>, on: string): PGDBSet<T>;
13
+ static ExtractJoinData<T extends Object>(set: PGDBSet<T>): string;
14
+ static ExtractOnData<T extends Object>(set: PGDBSet<T>): string;
15
+ static ExtractWhereData<T extends Object>(set: PGDBSet<T>): string;
16
+ static ExtractSQLData<T extends Object>(set: PGDBSet<T>): string;
17
+ static CleanORMData<T extends Object>(set: PGDBSet<T>): void;
18
+ }
19
+ //# sourceMappingURL=PGSetHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PGSetHelper.d.ts","sourceRoot":"","sources":["../../src/implementations/PGSetHelper.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,MAAM,CAAC,OAAO,OAAO,WAAW;IAG5B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAkB;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAmB;IAC1C,OAAO,CAAC,MAAM,CAAC,MAAM,CAAiB;IACtC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoB;WAE9B,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,CAAC,CAAC;WAM5F,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAG,MAAM,GAAI,MAAM;WAKzE,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,CAAC,CAAC;WAKxE,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,CAAC,CAAC;WAK5E,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAG,MAAM,GAAI,OAAO,CAAC,CAAC,CAAC;WAK1E,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAG,MAAM,GAAI,OAAO,CAAC,CAAC,CAAC;WAKtE,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,GAAI,MAAM;WAK5D,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,GAAI,MAAM;WAK1D,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,GAAI,MAAM;WAK7D,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,GAAI,MAAM;WAK3D,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAG,OAAO,CAAC,CAAC,CAAC,GAAI,IAAI;CAQxE"}