myorm_pg 2.0.0 → 2.2.0

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 (46) hide show
  1. package/README.md +356 -170
  2. package/lib/core/decorators/SchemasDecorators.d.ts +3 -0
  3. package/lib/core/decorators/SchemasDecorators.d.ts.map +1 -1
  4. package/lib/core/decorators/SchemasDecorators.js +14 -0
  5. package/lib/core/decorators/SchemasDecorators.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 +5 -0
  11. package/lib/core/exceptions/ConstraintFailException.d.ts.map +1 -0
  12. package/lib/core/exceptions/ConstraintFailException.js +13 -0
  13. package/lib/core/exceptions/ConstraintFailException.js.map +1 -0
  14. package/lib/core/objects/interfaces/IDBConnection.d.ts +1 -0
  15. package/lib/core/objects/interfaces/IDBConnection.d.ts.map +1 -1
  16. package/lib/core/objects/interfaces/IDBContext.d.ts +34 -1
  17. package/lib/core/objects/interfaces/IDBContext.d.ts.map +1 -1
  18. package/lib/core/objects/interfaces/IDBManager.d.ts +1 -0
  19. package/lib/core/objects/interfaces/IDBManager.d.ts.map +1 -1
  20. package/lib/core/objects/interfaces/IDBSet.d.ts +20 -1
  21. package/lib/core/objects/interfaces/IDBSet.d.ts.map +1 -1
  22. package/lib/implementations/PGDBConnection.d.ts +1 -0
  23. package/lib/implementations/PGDBConnection.d.ts.map +1 -1
  24. package/lib/implementations/PGDBConnection.js +5 -0
  25. package/lib/implementations/PGDBConnection.js.map +1 -1
  26. package/lib/implementations/PGDBContext.d.ts +39 -3
  27. package/lib/implementations/PGDBContext.d.ts.map +1 -1
  28. package/lib/implementations/PGDBContext.js +219 -0
  29. package/lib/implementations/PGDBContext.js.map +1 -1
  30. package/lib/implementations/PGDBManager.d.ts +2 -0
  31. package/lib/implementations/PGDBManager.d.ts.map +1 -1
  32. package/lib/implementations/PGDBManager.js +38 -0
  33. package/lib/implementations/PGDBManager.js.map +1 -1
  34. package/lib/implementations/PGDBSet.d.ts +13 -2
  35. package/lib/implementations/PGDBSet.d.ts.map +1 -1
  36. package/lib/implementations/PGDBSet.js +254 -84
  37. package/lib/implementations/PGDBSet.js.map +1 -1
  38. package/lib/implementations/PGFluentField.d.ts +18 -0
  39. package/lib/implementations/PGFluentField.d.ts.map +1 -0
  40. package/lib/implementations/PGFluentField.js +154 -0
  41. package/lib/implementations/PGFluentField.js.map +1 -0
  42. package/lib/implementations/PGSetHelper.d.ts +19 -0
  43. package/lib/implementations/PGSetHelper.d.ts.map +1 -0
  44. package/lib/implementations/PGSetHelper.js +48 -0
  45. package/lib/implementations/PGSetHelper.js.map +1 -0
  46. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SchemasDecorators.js","sourceRoot":"","sources":["../../../src/core/decorators/SchemasDecorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemasDecorators.js","sourceRoot":"","sources":["../../../src/core/decorators/SchemasDecorators.ts"],"names":[],"mappings":";;;;;AACA,4BAA0B;AAE1B,0DAAkC;AAClC,wDAAqD;AAErD,MAAqB,iBAAiB;IAY3B,MAAM,CAAC,KAAK,CAAC,IAAc;QAE9B,OAAO,UAAU,MAAe;YAE5B,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,eAAe,EAAE,SAAS,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAK,MAAmB,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAClJ,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAK,MAAmB,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC;QAC7H,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,MAAe;;QAE3C,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QAE1E,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,MAAA,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,eAAe,EAAE,SAAS,CAAC,0CAAE,KAAK,CAAC;QAE7G,OAAO,IAAI,CAAC;IAChB,CAAC;IAGM,MAAM,CAAC,MAAM,CAAC,IAAc;QAE/B,OAAO,UAAU,MAAe,EAAE,YAAqB;YAEnD,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,YAAY,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACzI,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,YAAY,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC3I,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAAC,IAAe,EAAE,YAAqB;;QAEnE,IAAI,IAAI,GAAI,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAExF,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,MAAA,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,YAAY,CAAC,0CAAE,KAAK,CAAC;QAEnG,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,OAAO;QAEjB,OAAO,UAAU,MAAe,EAAE,YAAqB;YAEnD,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YACtG,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACxG,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAe,EAAE,YAAqB;;QAE/D,IAAI,IAAI,GAAI,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAEzF,IAAG,IAAI,IAAI,SAAS;YAChB,IAAI,GAAG,MAAA,MAAA,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,CAAC,0CAAE,KAAK,mCAAI,KAAK,CAAC;QAE7G,OAAO,CAAC,IAAI,CAAC;IACjB,CAAC;IAGM,MAAM,CAAC,QAAQ,CAAI,WAA+C,EAAE,QAA4B;QAEnG,OAAO,iBAAiB,CAAC,QAAQ,CAAI,WAAW,EAAE,2BAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACzF,CAAC;IAEM,MAAM,CAAC,SAAS,CAAI,WAA+C,EAAE,QAA4B;QAEpG,OAAO,iBAAiB,CAAC,QAAQ,CAAI,WAAW,EAAE,2BAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC1F,CAAC;IAEM,MAAM,CAAC,SAAS,CAAI,WAA+C,EAAE,QAA4B;QAEpG,OAAO,iBAAiB,CAAC,QAAQ,CAAI,WAAW,EAAE,2BAAY,CAAC,WAAW,EAAC,QAAQ,CAAC,CAAC;IACzF,CAAC;IAEM,MAAM,CAAC,UAAU,CAAI,WAA+C,EAAE,QAA4B;QAErG,OAAO,iBAAiB,CAAC,QAAQ,CAAI,WAAW,EAAE,2BAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC3F,CAAC;IAEO,MAAM,CAAC,QAAQ,CAAI,WAA+C,EAAE,QAAuB,EAAE,QAA4B;QAE7H,OAAO,UAAU,MAAe,EAAE,YAAqB;YAEnD,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,kBAAkB,EAAE,YAAY,EAAG,EAAE,WAAW,EAAG,WAAW,EAAE,QAAQ,EAAG,QAAQ,EAAE,KAAK,EAAG,QAAQ,EAAE,CAAC,CAAC;YACxK,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,EAAE,WAAW,EAAG,WAAW,EAAE,QAAQ,EAAG,QAAQ,EAAE,KAAK,EAAG,QAAQ,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACzK,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAC,IAAe,EAAE,YAAqB;;QAErE,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,IAAI,EAAE,YAAY,CAAwG,CAAC;QAEhM,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,MAAA,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,kBAAkB,EAAE,YAAY,CAAC,0CAAE,KAA2G,CAAC;QAE3M,OAAO,IAAI,CAAC;IAChB,CAAC;IAIM,MAAM,CAAC,UAAU;QAEpB,OAAO,UAAU,MAAe,EAAE,YAAqB;YAEnD,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,oBAAoB,EAAE,YAAY,EAAG,IAAI,CAAC,CAAC;YAC1G,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,IAAI,EAAG,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC5G,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,IAAe,EAAE,YAAqB;;QAE7D,IAAI,IAAI,GAAI,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAE5F,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAErG,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;QAElH,IAAG,CAAC,IAAI;YACJ,IAAI,GAAG,MAAA,MAAA,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,oBAAoB,EAAE,YAAY,CAAC,0CAAE,KAAK,mCAAI,KAAK,CAAC;QAEhH,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,IAAuC;QAEnE,KAAI,IAAI,IAAI,IAAK,cAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EACzC;YACI,IAAG,iBAAiB,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;gBACzC,OAAO,IAAI,CAAC;SACnB;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAGM,MAAM,CAAC,QAAQ,CAAC,IAAc;QAEjC,OAAO,UAAU,MAAe,EAAE,YAAqB;YAEnD,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,kBAAkB,EAAE,YAAY,EAAG,IAAI,CAAC,CAAC;YACxG,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACzG,CAAC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAC,IAAe,EAAE,YAAqB;;QAErE,IAAI,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAE1F,IAAG,CAAC,KAAK;YACL,KAAK,GAAG,MAAA,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,kBAAkB,EAAE,YAAY,CAAC,0CAAE,KAAK,CAAC;QAEtG,IAAG,KAAK,KAAK,SAAS;YAClB,OAAO,SAAS,CAAC;;YAEjB,OAAO,KAAgB,CAAC;IAChC,CAAC;;AAzKL,oCA4KC;AAxKkB,iCAAe,GAAY,sBAAsB,CAAC;AAClD,kCAAgB,GAAY,uBAAuB,CAAC;AACpD,oCAAkB,GAAY,yBAAyB,CAAC;AACxD,sCAAoB,GAAY,2BAA2B,CAAC;AAC5D,oCAAkB,GAAY,6BAA6B,CAAC;AAC5D,mCAAiB,GAAY,wBAAwB,CAAC;AAsKzE,MAAM,oBAAoB;IAIf,MAAM,CAAC,GAAG,CAAC,MAAiB,EAAE,GAAY,EAAE,MAAgB;QAE/D,IAAI,IAAI,GAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC;QAE9H,IAAG,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YACtB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;QAEnB,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,MAAiB,EAAE,GAAY,EAAE,MAAgB,EAAE,KAAY;QAE7E,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAEzC,IAAG,IAAI,EACP;YACI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACtB;aAED;YACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd;gBACI,IAAI,EAAG,MAAM;gBACb,GAAG,EAAG,GAAG;gBACT,MAAM,EAAG,MAAM;gBACf,KAAK,EAAG,KAAK;aAChB,CAAC,CAAC;SACV;IACL,CAAC;;AA9Be,6BAAQ,GAAiB,EAAE,CAAC"}
@@ -26,6 +26,7 @@ export default class Type {
26
26
  static ExtractElementType(dbType: string): DBTypes;
27
27
  static IsDate(dbType: string): boolean;
28
28
  static IsNumber(dbType: string): boolean;
29
+ static IsText(dbType: string): boolean;
29
30
  /**
30
31
  *
31
32
  * @method
@@ -1 +1 @@
1
- {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,MAAM,CAAC,OAAO,OAAO,IAAI;WAEP,aAAa,CAAC,IAAI,EAAG,QAAQ;WAO7B,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI;QAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAI,OAAO,CAAA;KAAC,GAAG,SAAS;WAKpG,qBAAqB,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI,MAAM,GAAG,SAAS;WAelF,OAAO,CAAC,IAAI,EAAG,MAAM,GAAI,MAAM;WAa/B,cAAc,CAAC,MAAM,EAAG,GAAG,EAAE,QAAQ,EAAG;QAAC,KAAK,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,OAAO,CAAC;QAAC,KAAK,EAAG,GAAG,CAAC;QAAC,MAAM,EAAG,OAAO,CAAA;KAAC;WASvG,eAAe,CAAC,MAAM,EAAG,GAAG,GAAI,UAAU,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;WAM3E,YAAY,CAAC,IAAI,EAAG,QAAQ,GAAI,MAAM;WAKtC,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,MAAM;WAKrD,QAAQ,CAAC,GAAG,EAAG,GAAG,GAAI,OAAO;WAoB7B,oBAAoB,CAAC,IAAI,EAAG,QAAQ,GAAI;QAAE,KAAK,EAAG,MAAM,CAAC;QAAC,MAAM,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,MAAM,CAAA;KAAE,EAAE;WA8B5F,OAAO,CAAC,MAAM,EAAG,MAAM;WAevB,kBAAkB,CAAC,MAAM,EAAG,MAAM;WAKlC,MAAM,CAAC,MAAM,EAAG,MAAM;WAWtB,QAAQ,CAAC,MAAM,EAAG,MAAM;IAatC;;;;;OAKG;WACW,QAAQ,CAAC,IAAI,EAAG,MAAM,GAAI,OAAO;CAkBlD"}
1
+ {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,MAAM,CAAC,OAAO,OAAO,IAAI;WAEP,aAAa,CAAC,IAAI,EAAG,QAAQ;WAO7B,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI;QAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAI,OAAO,CAAA;KAAC,GAAG,SAAS;WAKpG,qBAAqB,CAAC,IAAI,EAAG,QAAQ,EAAE,YAAY,EAAG,MAAM,GAAI,MAAM,GAAG,SAAS;WAelF,OAAO,CAAC,IAAI,EAAG,MAAM,GAAI,MAAM;WAa/B,cAAc,CAAC,MAAM,EAAG,GAAG,EAAE,QAAQ,EAAG;QAAC,KAAK,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,OAAO,CAAC;QAAC,KAAK,EAAG,GAAG,CAAC;QAAC,MAAM,EAAG,OAAO,CAAA;KAAC;WASvG,eAAe,CAAC,MAAM,EAAG,GAAG,GAAI,UAAU,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;WAM3E,YAAY,CAAC,IAAI,EAAG,QAAQ,GAAI,MAAM;WAKtC,aAAa,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,MAAM;WAKrD,QAAQ,CAAC,GAAG,EAAG,GAAG,GAAI,OAAO;WAoB7B,oBAAoB,CAAC,IAAI,EAAG,QAAQ,GAAI;QAAE,KAAK,EAAG,MAAM,CAAC;QAAC,MAAM,EAAG,MAAM,CAAC;QAAC,IAAI,EAAG,MAAM,CAAA;KAAE,EAAE;WA8B5F,OAAO,CAAC,MAAM,EAAG,MAAM;WAevB,kBAAkB,CAAC,MAAM,EAAG,MAAM;WAKlC,MAAM,CAAC,MAAM,EAAG,MAAM;WAWtB,QAAQ,CAAC,MAAM,EAAG,MAAM;WAaxB,MAAM,CAAC,MAAM,EAAG,MAAM;IAUpC;;;;;OAKG;WACW,QAAQ,CAAC,IAAI,EAAG,MAAM,GAAI,OAAO;CAkBlD"}
@@ -109,6 +109,12 @@ class Type {
109
109
  }
110
110
  return false;
111
111
  }
112
+ static IsText(dbType) {
113
+ switch (dbType.toLocaleLowerCase()) {
114
+ case DBTypes_1.DBTypes.TEXT: return true;
115
+ }
116
+ return false;
117
+ }
112
118
  /**
113
119
  *
114
120
  * @method
@@ -117,7 +123,7 @@ class Type {
117
123
  */
118
124
  static CastType(type) {
119
125
  for (let k in DBTypes_1.DBTypes) {
120
- if (DBTypes_1.DBTypes[k] == type.toLocaleLowerCase().trim())
126
+ if (DBTypes_1.DBTypes[k] == type.toLowerCase().trim())
121
127
  return DBTypes_1.DBTypes[k];
122
128
  }
123
129
  switch (type.toLowerCase()) {
@@ -1 +1 @@
1
- {"version":3,"file":"Type.js","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Type.js","sourceRoot":"","sources":["../../../src/core/design/Type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import Exception from "./Exception";
2
+ export default class ConstraintFailException extends Exception {
3
+ constructor(message: string);
4
+ }
5
+ //# sourceMappingURL=ConstraintFailException.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstraintFailException.d.ts","sourceRoot":"","sources":["../../../src/core/exceptions/ConstraintFailException.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,SAAS;gBAE9C,OAAO,EAAG,MAAM;CAI/B"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const Exception_1 = __importDefault(require("./Exception"));
7
+ class ConstraintFailException extends Exception_1.default {
8
+ constructor(message) {
9
+ super(message);
10
+ }
11
+ }
12
+ exports.default = ConstraintFailException;
13
+ //# sourceMappingURL=ConstraintFailException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstraintFailException.js","sourceRoot":"","sources":["../../../src/core/exceptions/ConstraintFailException.ts"],"names":[],"mappings":";;;;;AAAA,4DAAoC;AAEpC,MAAqB,uBAAwB,SAAQ,mBAAS;IAE1D,YAAY,OAAgB;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AAND,0CAMC"}
@@ -4,6 +4,7 @@ export default interface IDBConnection {
4
4
  DataBaseName: string;
5
5
  UserName: string;
6
6
  PassWord: string;
7
+ IsOpen: boolean;
7
8
  Open(): Promise<void>;
8
9
  Query(query: string): Promise<any>;
9
10
  Close(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"IDBConnection.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBConnection.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,WAAW,aAAa;IAElC,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,KAAK,IAAK,IAAI,CAAC;IACf,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
1
+ {"version":3,"file":"IDBConnection.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBConnection.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,WAAW,aAAa;IAElC,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IAClB,MAAM,EAAG,OAAO,CAAC;IACjB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,KAAK,IAAK,IAAI,CAAC;IACf,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
@@ -1,8 +1,41 @@
1
1
  import IDBSet from './IDBSet';
2
+ import IStatement from './IStatement';
2
3
  export default interface IDBContext {
3
- Collection<T>(cTor: {
4
+ Collection<T extends Object>(cTor: {
4
5
  new (...args: any[]): T;
5
6
  }): IDBSet<T> | undefined;
6
7
  UpdateDatabaseAsync(): Promise<void>;
8
+ ExecuteNonQuery(query: string): Promise<void>;
9
+ ExecuteQuery(query: string): Promise<any>;
10
+ }
11
+ export interface IThreeQueryableObject {
12
+ Join(...args: {
13
+ new (...args: any[]): Object;
14
+ }[]): IJoiningQuery;
15
+ }
16
+ export interface IJoiningQuery {
17
+ On<C extends Object, U extends Object>(cT: {
18
+ new (...args: any[]): C;
19
+ }, cKey: keyof C, uT: {
20
+ new (...args: any[]): U;
21
+ }, uKey: keyof U): IJoiningQuery;
22
+ Where<C extends Object, K extends keyof C>(cT: {
23
+ new (...args: any[]): C;
24
+ }, statement: IStatement<C, K>): IJoiningQuery;
25
+ And<C extends Object, K extends keyof C>(cT: {
26
+ new (...args: any[]): C;
27
+ }, statement: IStatement<C, K>): IJoiningQuery;
28
+ Or<C extends Object, K extends keyof C>(cT: {
29
+ new (...args: any[]): C;
30
+ }, statement: IStatement<C, K>): IJoiningQuery;
31
+ Select<C extends Object>(cT: {
32
+ new (...args: any[]): C;
33
+ }): IJoinSelectable<C>;
34
+ }
35
+ export interface IJoinSelectable<T> {
36
+ ToListAsync(): Promise<T[]>;
37
+ Join<K extends keyof T>(key: K): IJoinSelectable<T>;
38
+ OrderBy<K extends keyof T>(key: K): IJoinSelectable<T>;
39
+ OrderDescendingBy<K extends keyof T>(key: K): IJoinSelectable<T>;
7
40
  }
8
41
  //# sourceMappingURL=IDBContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IDBContext.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBContext.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,UAAU,CAAC,CAAC,EAAE,IAAI,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,GAAI,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAE1E,mBAAmB,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC"}
1
+ {"version":3,"file":"IDBContext.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBContext.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,GAAI,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACzF,mBAAmB,IAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,YAAY,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,qBAAqB;IAElC,IAAI,CAAC,GAAG,IAAI,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,MAAM,CAAA;KAAC,EAAE,GAAI,aAAa,CAAC;CACtE;AAED,MAAM,WAAW,aAAa;IAE1B,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,IAAI,EAAG,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,IAAI,EAAG,MAAM,CAAC,GAAI,aAAa,CAAC;IAC3J,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAK,aAAa,CAAC;IAC5H,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAK,aAAa,CAAC;IAC1H,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAK,aAAa,CAAC;IACzH,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAG;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;CACnF;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAE9B,WAAW,IAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7B,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IACzD,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,eAAe,CAAC,CAAC,CAAC,CAAC;CACtE"}
@@ -1,4 +1,5 @@
1
1
  export default interface IDBManager {
2
+ CheckConnection(): Promise<boolean>;
2
3
  CheckDatabase(dababase: string): Promise<boolean>;
3
4
  CreateDataBase(dababase: string): Promise<void>;
4
5
  CheckTable(cTor: Function): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"IDBManager.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBManager.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,aAAa,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD,cAAc,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD,UAAU,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,WAAW,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C,WAAW,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D,YAAY,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D,uBAAuB,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
1
+ {"version":3,"file":"IDBManager.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBManager.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,WAAW,UAAU;IAE/B,eAAe,IAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAErC,aAAa,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD,cAAc,CAAC,QAAQ,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD,UAAU,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,WAAW,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C,WAAW,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D,YAAY,CAAC,IAAI,EAAG,QAAQ,EAAE,GAAG,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D,uBAAuB,CAAC,IAAI,EAAG,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,eAAe,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAAC;CAE1C"}
@@ -1,5 +1,5 @@
1
1
  import IStatement from "./IStatement";
2
- export default interface IDBSet<T> {
2
+ export default interface IDBSet<T extends Object> {
3
3
  AddAsync(obj: T): Promise<T>;
4
4
  UpdateAsync(obj: T): Promise<T>;
5
5
  DeleteAsync(obj: T): Promise<T>;
@@ -12,5 +12,24 @@ export default interface IDBSet<T> {
12
12
  Limit(limit: number): IDBSet<T>;
13
13
  ToListAsync(): Promise<T[]>;
14
14
  FirstOrDefaultAsync(): Promise<T | undefined>;
15
+ CleanQueryTree(): void;
16
+ }
17
+ export interface IFluentQueryableObject<T extends Object, R extends IDBSet<T>> {
18
+ WhereField<K extends keyof T>(field: K): IFluentField<T, K, R>;
19
+ WhereAsString(where: string): R;
20
+ AndField<K extends keyof T>(field: K): IFluentField<T, K, R>;
21
+ OrField<K extends keyof T>(field: K): IFluentField<T, K, R>;
22
+ AndLoadAll<K extends keyof T>(field: K): R;
23
+ }
24
+ export interface IFluentField<T extends Object, K extends keyof T, R extends IDBSet<T>> {
25
+ IsGreaterThan(value: T[K]): R;
26
+ IsEqualTo(value: T[K]): R;
27
+ IsNotEqualTo(value: T[K]): R;
28
+ IsSmallerThan(value: T[K]): R;
29
+ IsInsideIn(value: T[K][]): R;
30
+ Constains(value: T[K]): R;
31
+ StartsWith(value: T[K]): R;
32
+ EndsWith(value: T[K]): R;
33
+ IsNull(): R;
15
34
  }
16
35
  //# sourceMappingURL=IDBSet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IDBSet.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBSet.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AAGtC,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC,CAAC;IAE7B,QAAQ,CAAC,GAAG,EAAG,CAAC,GAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,WAAW,CAAC,GAAG,EAAG,CAAC,GAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,WAAW,CAAC,GAAG,EAAG,CAAC,GAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACnE,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACjE,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,SAAS,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAChD,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAG,CAAC,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7C,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAClC,WAAW,IAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7B,mBAAmB,IAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;CAClD"}
1
+ {"version":3,"file":"IDBSet.d.ts","sourceRoot":"","sources":["../../../../src/core/objects/interfaces/IDBSet.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export default class PGDBConnection implements IDBConnection {
5
5
  DataBaseName: string;
6
6
  UserName: string;
7
7
  PassWord: string;
8
+ IsOpen: boolean;
8
9
  private _conn;
9
10
  private _database;
10
11
  constructor(host: string, port: number, dababase: string, user: string, pass: string);
@@ -1 +1 @@
1
- {"version":3,"file":"PGDBConnection.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,0CAA0C,CAAC;AAIrE,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,aAAa;IAEjD,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IACzB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,SAAS,CAAW;gBAEhB,IAAI,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM,EAAE,QAAQ,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM;IAUlF,UAAU,IAAK,cAAc;IAM7B,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IA6BtB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC;IAiBpC,KAAK;IAmBC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB7C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAcpD"}
1
+ {"version":3,"file":"PGDBConnection.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,0CAA0C,CAAC;AAIrE,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,aAAa;IAEjD,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,YAAY,EAAG,MAAM,CAAC;IACtB,QAAQ,EAAG,MAAM,CAAC;IAClB,QAAQ,EAAG,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,SAAS,CAAW;gBAEhB,IAAI,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM,EAAE,QAAQ,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM,EAAE,IAAI,EAAG,MAAM;IAWlF,UAAU,IAAK,cAAc;IAM7B,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAiCtB,KAAK,CAAC,KAAK,EAAG,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC;IAiBpC,KAAK;IAoBC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB7C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAcpD"}
@@ -23,6 +23,7 @@ class PGDBConnection {
23
23
  this._database = dababase;
24
24
  this.UserName = user;
25
25
  this.PassWord = pass;
26
+ this.IsOpen = false;
26
27
  }
27
28
  AsPostgres() {
28
29
  this.DataBaseName = "postgres";
@@ -30,6 +31,8 @@ class PGDBConnection {
30
31
  }
31
32
  Open() {
32
33
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
34
+ if (this.IsOpen)
35
+ yield this.Close();
33
36
  this._conn = new pg_1.default.Client({
34
37
  host: this.HostName,
35
38
  port: this.Port,
@@ -40,6 +43,7 @@ class PGDBConnection {
40
43
  this.DataBaseName = this._database;
41
44
  try {
42
45
  yield this._conn.connect();
46
+ this.IsOpen = true;
43
47
  resolve();
44
48
  }
45
49
  catch (err) {
@@ -61,6 +65,7 @@ class PGDBConnection {
61
65
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
62
66
  try {
63
67
  yield this._conn.end();
68
+ this.IsOpen = false;
64
69
  resolve();
65
70
  }
66
71
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"PGDBConnection.js","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4CAAqB;AAGrB,yGAAiF;AACjF,+FAAuE;AAEvE,MAAqB,cAAc;IAU/B,YAAY,IAAa,EAAE,IAAa,EAAE,QAAiB,EAAE,IAAa,EAAE,IAAa;QAErF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACzB,CAAC;IAEM,UAAU;QAEb,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,IAAI;QAGP,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAE/C,IAAI,CAAC,KAAK,GAAG,IAAI,YAAE,CAAC,MAAM,CAAC;gBACvB,IAAI,EAAG,IAAI,CAAC,QAAQ;gBACpB,IAAI,EAAG,IAAI,CAAC,IAAI;gBAChB,QAAQ,EAAG,IAAI,CAAC,YAAY;gBAC5B,IAAI,EAAG,IAAI,CAAC,QAAQ;gBACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aAC1B,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;YAEnC,IACA;gBACI,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;aAEb;YAAA,OAAM,GAAG,EACV;gBAEI,MAAM,CAAC,IAAI,iCAAuB,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC,CAAC;aAC/D;QACL,CAAC,CAAA,CAAC,CAAC;IAEP,CAAC;IAEM,KAAK,CAAC,KAAc;QAEvB,OAAO,IAAI,OAAO,CAAM,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAE9C,IACA;gBACI,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAE1C;YAAA,OAAM,GAAG,EACV;gBACI,MAAM,CAAC,IAAI,iCAAuB,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC,CAAC;aAC/D;QACL,CAAC,CAAA,CAAC,CAAC;IAGP,CAAC;IAEM,KAAK;QAER,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAE/C,IACA;gBACI,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBACvB,OAAO,EAAE,CAAC;aAEb;YAAA,OAAM,GAAG,EACV;gBACI,MAAM,CAAC,IAAI,iCAAuB,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC,CAAC;aAC/D;QACL,CAAC,CAAA,CAAC,CAAC;IAGP,CAAC;IAGY,eAAe,CAAC,KAAa;;YAEtC,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAE/C,IACA;oBACI,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAC7B,OAAO,EAAE,CAAC;iBAEb;gBAAA,OAAM,GAAG,EACV;oBACI,MAAM,CAAC,IAAI,4BAAkB,CAAE,GAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;iBACjE;YACL,CAAC,CAAA,CAAC,CAAC;QAEP,CAAC;KAAA;IAGY,OAAO,CAAC,KAAa;;YAE9B,OAAO,IAAI,OAAO,CAAM,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAE9C,IACA;oBACI,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;iBAE1C;gBAAA,OAAM,GAAG,EACV;oBACI,MAAM,CAAC,IAAI,4BAAkB,CAAE,GAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;iBACjE;YACL,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AA3HD,iCA2HC"}
1
+ {"version":3,"file":"PGDBConnection.js","sourceRoot":"","sources":["../../src/implementations/PGDBConnection.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import IDBContext from "../core/objects/interfaces/IDBContext";
1
+ import IDBContext, { IThreeQueryableObject, IJoiningQuery, IJoinSelectable } from "../core/objects/interfaces/IDBContext";
2
2
  import IDBSet from "../core/objects/interfaces/IDBSet";
3
+ import IStatement from "../core/objects/interfaces/IStatement";
3
4
  import PGDBManager from "./PGDBManager";
4
- export default abstract class PGDBContext implements IDBContext {
5
+ export default abstract class PGDBContext implements IDBContext, IThreeQueryableObject {
5
6
  protected _manager: PGDBManager;
6
7
  private _mappedTypes;
7
8
  constructor(manager: PGDBManager);
@@ -9,9 +10,44 @@ export default abstract class PGDBContext implements IDBContext {
9
10
  IsMapped(type: {
10
11
  new (...args: any[]): unknown;
11
12
  }): boolean;
12
- Collection<T>(cTor: {
13
+ Collection<T extends Object>(cTor: {
13
14
  new (...args: any[]): T;
14
15
  }): IDBSet<T> | undefined;
15
16
  UpdateDatabaseAsync(): Promise<void>;
17
+ ExecuteNonQuery(query: string): Promise<void>;
18
+ ExecuteQuery(query: string): Promise<any>;
19
+ Join(...args: (new (...args: any[]) => Object)[]): IJoiningQuery;
16
20
  }
21
+ export declare class JoiningQuery implements IJoiningQuery {
22
+ private _context;
23
+ private _stack;
24
+ private _onStatements;
25
+ constructor(context: PGDBContext, stack: (new (...args: any[]) => Object)[]);
26
+ On<C extends Object, U extends Object>(cT: {
27
+ new (...args: any[]): C;
28
+ }, cKey: keyof C, uT: {
29
+ new (...args: any[]): U;
30
+ }, uKey: keyof U): IJoiningQuery;
31
+ Where<C extends Object, K extends keyof C>(cT: new (...args: any[]) => C, statement: IStatement<C, K>): IJoiningQuery;
32
+ And<C extends Object, K extends keyof C>(cT: new (...args: any[]) => C, statement: IStatement<C, K>): IJoiningQuery;
33
+ Or<C extends Object, K extends keyof C>(cT: new (...args: any[]) => C, statement: IStatement<C, K>): IJoiningQuery;
34
+ Select<C extends Object>(cT: new (...args: any[]) => C): IJoinSelectable<C>;
35
+ private CheckIfTypeIsAllowed;
36
+ }
37
+ export declare class JoinSelectable<T extends Object> implements IJoinSelectable<T> {
38
+ private _context;
39
+ private _stack;
40
+ private _onStatements;
41
+ private _type;
42
+ constructor(cT: new (...args: any[]) => T, context: PGDBContext, stack: IUnion[], onStack: [string, string][]);
43
+ Join<K extends keyof T>(key: K): IJoinSelectable<T>;
44
+ OrderBy<K extends keyof T>(key: K): IJoinSelectable<T>;
45
+ OrderDescendingBy<K extends keyof T>(key: K): IJoinSelectable<T>;
46
+ ToListAsync(): Promise<T[]>;
47
+ }
48
+ interface IUnion {
49
+ Type: unknown;
50
+ Key?: string;
51
+ }
52
+ export {};
17
53
  //# sourceMappingURL=PGDBContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PGDBContext.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBContext.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,uCAAuC,CAAC;AAC/D,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,WAAW,MAAM,eAAe,CAAC;AAGxC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAY,YAAW,UAAU;IAE3D,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC;IAEhC,OAAO,CAAC,YAAY,CAAuC;gBAE/C,OAAO,EAAG,WAAW;IAM1B,cAAc;IAoBd,QAAQ,CAAC,IAAI,EAAG;QAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAI,OAAO,CAAA;KAAC,GAAI,OAAO;IAK3D,UAAU,CAAC,CAAC,EAAE,IAAI,EAAI;QAAC,KAAK,GAAG,IAAI,EAAG,GAAG,EAAE,GAAI,CAAC,CAAA;KAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS;IAenE,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;CAcpD"}
1
+ {"version":3,"file":"PGDBContext.d.ts","sourceRoot":"","sources":["../../src/implementations/PGDBContext.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.JoinSelectable = exports.JoiningQuery = void 0;
16
+ const SchemasDecorators_1 = __importDefault(require("../core/decorators/SchemasDecorators"));
17
+ const Type_1 = __importDefault(require("../core/design/Type"));
18
+ const ConstraintFailException_1 = __importDefault(require("../core/exceptions/ConstraintFailException"));
19
+ const InvalidOperationException_1 = __importDefault(require("../core/exceptions/InvalidOperationException"));
15
20
  const PGDBSet_1 = __importDefault(require("./PGDBSet"));
21
+ const PGSetHelper_1 = __importDefault(require("./PGSetHelper"));
16
22
  class PGDBContext {
17
23
  constructor(manager) {
18
24
  this._manager = manager;
@@ -52,6 +58,219 @@ class PGDBContext {
52
58
  }
53
59
  });
54
60
  }
61
+ ExecuteNonQuery(query) {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ yield this._manager.ExecuteNonQuery(query);
64
+ });
65
+ }
66
+ ExecuteQuery(query) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ return yield this._manager.Execute(query);
69
+ });
70
+ }
71
+ Join(...args) {
72
+ return new JoiningQuery(this, args);
73
+ }
55
74
  }
56
75
  exports.default = PGDBContext;
76
+ class JoiningQuery {
77
+ constructor(context, stack) {
78
+ this._stack = [];
79
+ this._onStatements = [];
80
+ this._context = context;
81
+ this._stack.push(...stack.map(s => { return { Type: s }; }));
82
+ let notMappedTypes = this._stack.filter(s => this._context.Collection(s.Type) == undefined);
83
+ if (notMappedTypes.length > 0) {
84
+ this._stack = [];
85
+ throw new InvalidOperationException_1.default(`The type ${notMappedTypes[0].Type.name} is not mapped`);
86
+ }
87
+ }
88
+ On(cT, cKey, uT, uKey) {
89
+ this.CheckIfTypeIsAllowed(cT);
90
+ this.CheckIfTypeIsAllowed(cT);
91
+ let leftIndex = this._stack.findIndex(s => s.Type == cT);
92
+ let rightIndex = this._stack.findIndex(s => s.Type == uT);
93
+ if (rightIndex - leftIndex != 1)
94
+ throw new InvalidOperationException_1.default(`The On statement must follow the same order than Join`);
95
+ this._onStatements.push([cKey.toString(), uKey.toString()]);
96
+ return this;
97
+ }
98
+ Where(cT, statement) {
99
+ this.CheckIfTypeIsAllowed(cT);
100
+ let set = this._context.Collection(cT);
101
+ set.Where(statement);
102
+ return this;
103
+ }
104
+ And(cT, statement) {
105
+ this.CheckIfTypeIsAllowed(cT);
106
+ let set = this._context.Collection(cT);
107
+ set.And(statement);
108
+ return this;
109
+ }
110
+ Or(cT, statement) {
111
+ this.CheckIfTypeIsAllowed(cT);
112
+ let set = this._context.Collection(cT);
113
+ set.Or(statement);
114
+ return this;
115
+ }
116
+ Select(cT) {
117
+ return new JoinSelectable(cT, this._context, this._stack, this._onStatements);
118
+ }
119
+ CheckIfTypeIsAllowed(cT) {
120
+ let set = this._context.Collection(cT);
121
+ if (!set)
122
+ throw new InvalidOperationException_1.default(`The type ${cT.name} is not mapped`);
123
+ let index = this._stack.findIndex(s => s.Type == cT);
124
+ if (index == -1)
125
+ throw new InvalidOperationException_1.default(`The type ${cT.name} is not inside the Join list`);
126
+ }
127
+ }
128
+ exports.JoiningQuery = JoiningQuery;
129
+ class JoinSelectable {
130
+ constructor(cT, context, stack, onStack) {
131
+ this._stack = [];
132
+ this._onStatements = [];
133
+ this._type = cT;
134
+ this._context = context;
135
+ this._stack = stack;
136
+ this._onStatements = onStack;
137
+ }
138
+ Join(key) {
139
+ var _a;
140
+ (_a = this._context.Collection(this._type)) === null || _a === void 0 ? void 0 : _a.Join(key);
141
+ return this;
142
+ }
143
+ OrderBy(key) {
144
+ var _a;
145
+ (_a = this._context.Collection(this._type)) === null || _a === void 0 ? void 0 : _a.OrderBy(key);
146
+ return this;
147
+ }
148
+ OrderDescendingBy(key) {
149
+ var _a;
150
+ (_a = this._context.Collection(this._type)) === null || _a === void 0 ? void 0 : _a.OrderDescendingBy(key);
151
+ return this;
152
+ }
153
+ ToListAsync() {
154
+ return __awaiter(this, void 0, void 0, function* () {
155
+ if (this._stack.length > this._onStatements.length + 1)
156
+ throw new InvalidOperationException_1.default(`There is no enought On clausules to join all selected types`);
157
+ if (this._stack.length < this._onStatements.length + 1)
158
+ throw new InvalidOperationException_1.default(`There is more On clausules than join types selecteds`);
159
+ let selectedSideSet = this._context.Collection(this._type);
160
+ let leftSideType = this._stack[0].Type;
161
+ let selectedTable = Type_1.default.GetTableName(this._type);
162
+ let query = `select distinct "${selectedTable}".* from "${Type_1.default.GetTableName(leftSideType)}" `;
163
+ for (let i = 1; i < this._stack.length; i++) {
164
+ let rightSideType = this._stack[i].Type;
165
+ let leftSideTable = Type_1.default.GetTableName(leftSideType);
166
+ let rigthSideTable = Type_1.default.GetTableName(rightSideType);
167
+ let onStatement = this._onStatements[i - 1];
168
+ let leftSideField = onStatement[0];
169
+ let rightSideField = onStatement[1];
170
+ let leftSideIsArray = Type_1.default.GetDesingType(leftSideType, leftSideField) == Array;
171
+ let rightSideIsArray = Type_1.default.GetDesingType(rightSideType, rightSideField) == Array;
172
+ let rightSideTypeMap = Type_1.default.GetColumnNameAndType(rightSideType);
173
+ let leftSideTypeMap = Type_1.default.GetColumnNameAndType(leftSideType);
174
+ query += ` inner join "${rigthSideTable}" on `;
175
+ if ((leftSideIsArray && rightSideIsArray) || (!leftSideIsArray && !rightSideIsArray)) {
176
+ query += ` "${leftSideTable}".${Type_1.default.GetColumnName(leftSideType, leftSideField)} = "${rigthSideTable}".${Type_1.default.GetColumnName(rightSideType, rightSideField)} `;
177
+ }
178
+ else if (leftSideIsArray && !rightSideIsArray) {
179
+ let relation = SchemasDecorators_1.default.GetRelationAttribute(leftSideType, leftSideField);
180
+ if (relation) {
181
+ let rType = relation.TypeBuilder();
182
+ let key = SchemasDecorators_1.default.ExtractPrimaryKey(rType);
183
+ if (!key)
184
+ throw new ConstraintFailException_1.default(`The type ${rType.name} was no one primary key field`);
185
+ let relationMap = Type_1.default.GetColumnNameAndType(rType);
186
+ let leftSideDBType = Type_1.default.CastType(relationMap.filter(s => s.Field == key)[0].Type);
187
+ let rightSideDBType = Type_1.default.CastType(rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Type);
188
+ let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
189
+ let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
190
+ if (leftSideDBType != rightSideDBType) {
191
+ throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
192
+ }
193
+ query += ` "${rigthSideTable}".${rightColumnName} = ANY("${leftSideTable}".${leftColumnName})`;
194
+ }
195
+ else {
196
+ let dataType = SchemasDecorators_1.default.GetDataTypeAttribute(leftSideType, leftSideField);
197
+ if (!dataType) {
198
+ throw new InvalidOperationException_1.default(`Can not find the DataAttributeof ${leftSideType.name}.${leftSideField}`);
199
+ }
200
+ let elementType = Type_1.default.ExtractElementType(dataType);
201
+ if (!elementType)
202
+ throw new InvalidOperationException_1.default(`Can not determine the array element type of ${leftSideType.name}.${leftSideField}`);
203
+ let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
204
+ let rightSideDBType = Type_1.default.CastType(rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Type);
205
+ let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
206
+ let areNumbers = Type_1.default.IsNumber(Type_1.default.CastType(elementType)) && Type_1.default.IsNumber(rightSideDBType);
207
+ let areString = Type_1.default.IsText(Type_1.default.CastType(elementType)) && Type_1.default.IsText(rightSideDBType);
208
+ let areDate = Type_1.default.IsDate(Type_1.default.CastType(elementType)) && Type_1.default.IsDate(rightSideDBType);
209
+ let areArray = Type_1.default.IsArray(Type_1.default.CastType(elementType)) && Type_1.default.IsArray(rightSideDBType);
210
+ let areSameType = this._context["_manager"]["CastToPostgreSQLType"](elementType) == this._context["_manager"]["CastToPostgreSQLType"](rightSideDBType);
211
+ let areSerial = this._context["_manager"]["CastToPostgreSQLType"](elementType) == "serial" && this._context["_manager"]["CastToPostgreSQLType"](rightSideDBType) == "serial";
212
+ if (!(areNumbers || areString || areDate || areArray || areSameType || areSerial))
213
+ throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
214
+ query += ` "${rigthSideTable}".${rightColumnName} = ANY("${leftSideTable}".${leftColumnName})`;
215
+ }
216
+ }
217
+ else if (rightSideIsArray && !leftSideIsArray) {
218
+ let relation = SchemasDecorators_1.default.GetRelationAttribute(rightSideType, rightSideField);
219
+ if (relation) {
220
+ let rType = relation.TypeBuilder();
221
+ let key = SchemasDecorators_1.default.ExtractPrimaryKey(rType);
222
+ if (!key)
223
+ throw new ConstraintFailException_1.default(`The type ${rType.name} was no one primary key field`);
224
+ let relationMap = Type_1.default.GetColumnNameAndType(rType);
225
+ let rightSideDBType = Type_1.default.CastType(relationMap.filter(s => s.Field == key)[0].Type);
226
+ let leftSideDBType = Type_1.default.CastType(rightSideTypeMap.filter(s => s.Field == leftSideField)[0].Type);
227
+ let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
228
+ let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
229
+ if (leftSideDBType != rightSideDBType) {
230
+ throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
231
+ }
232
+ query += ` "${leftSideTable}".${leftColumnName} = ANY("${rigthSideTable}".${rightColumnName})`;
233
+ }
234
+ else {
235
+ let dataType = SchemasDecorators_1.default.GetDataTypeAttribute(rightSideType, rightSideField);
236
+ if (!dataType) {
237
+ throw new InvalidOperationException_1.default(`Can not find the DataAttributeof ${rightSideType.name}.${rightSideField}`);
238
+ }
239
+ let elementType = Type_1.default.ExtractElementType(dataType);
240
+ if (!elementType)
241
+ throw new InvalidOperationException_1.default(`Can not determine the array element type of ${rightSideType.name}.${rightSideField}`);
242
+ let leftColumnName = leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Column;
243
+ let leftSideDBType = Type_1.default.CastType(leftSideTypeMap.filter(s => s.Field == leftSideField)[0].Type);
244
+ let rightColumnName = rightSideTypeMap.filter(s => s.Field == rightSideField)[0].Column;
245
+ let areNumbers = Type_1.default.IsNumber(Type_1.default.CastType(elementType)) && Type_1.default.IsNumber(leftSideDBType);
246
+ let areString = Type_1.default.IsText(Type_1.default.CastType(elementType)) && Type_1.default.IsText(leftSideDBType);
247
+ let areDate = Type_1.default.IsDate(Type_1.default.CastType(elementType)) && Type_1.default.IsDate(leftSideDBType);
248
+ let areArray = Type_1.default.IsArray(Type_1.default.CastType(elementType)) && Type_1.default.IsArray(leftSideDBType);
249
+ let areSameType = this._context["_manager"]["CastToPostgreSQLType"](elementType) == this._context["_manager"]["CastToPostgreSQLType"](leftSideDBType);
250
+ let areSerial = this._context["_manager"]["CastToPostgreSQLType"](elementType) == "serial" && this._context["_manager"]["CastToPostgreSQLType"](leftSideDBType) == "serial";
251
+ if (!(areNumbers || areString || areDate || areArray || areSameType || areSerial))
252
+ throw new InvalidOperationException_1.default(`${leftSideType.name}.${leftSideField} and ${rightSideType.name}.${rightSideField} must be the same type to join`);
253
+ query += ` "${leftSideTable}".${leftColumnName} = ANY("${rigthSideTable}".${rightColumnName})`;
254
+ }
255
+ }
256
+ leftSideType = this._stack[i].Type;
257
+ }
258
+ let where = "";
259
+ for (let type of this._stack) {
260
+ let set = this._context.Collection(type.Type);
261
+ let statements = set["_statements"];
262
+ for (let s of statements) {
263
+ let operation = s.StatementType.toString();
264
+ if (operation == "where" && where.length > 0)
265
+ operation = "and";
266
+ where += ` ${operation} ${set["EvaluateStatement"](s)}`;
267
+ }
268
+ }
269
+ PGSetHelper_1.default.InjectSQL(selectedSideSet, query);
270
+ PGSetHelper_1.default.InjectWhere(selectedSideSet, where);
271
+ return yield selectedSideSet.ToListAsync();
272
+ });
273
+ }
274
+ }
275
+ exports.JoinSelectable = JoinSelectable;
57
276
  //# sourceMappingURL=PGDBContext.js.map