joist-orm 1.123.0 → 1.124.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 (99) hide show
  1. package/build/src/EntityManager.d.ts.map +1 -1
  2. package/build/src/EntityManager.js +5 -1
  3. package/build/src/EntityManager.js.map +1 -1
  4. package/build/src/QueryParser.d.ts +2 -12
  5. package/build/src/QueryParser.d.ts.map +1 -1
  6. package/build/src/QueryParser.js +77 -46
  7. package/build/src/QueryParser.js.map +1 -1
  8. package/build/src/QueryVisitor.d.ts +15 -0
  9. package/build/src/QueryVisitor.d.ts.map +1 -0
  10. package/build/src/QueryVisitor.js +30 -0
  11. package/build/src/QueryVisitor.js.map +1 -0
  12. package/build/src/ReactionsManager.d.ts +7 -0
  13. package/build/src/ReactionsManager.d.ts.map +1 -1
  14. package/build/src/ReactionsManager.js +31 -2
  15. package/build/src/ReactionsManager.js.map +1 -1
  16. package/build/src/Todo.d.ts +1 -1
  17. package/build/src/Todo.d.ts.map +1 -1
  18. package/build/src/Todo.js.map +1 -1
  19. package/build/src/dataloaders/findByUniqueDataLoader.js +1 -1
  20. package/build/src/dataloaders/findByUniqueDataLoader.js.map +1 -1
  21. package/build/src/dataloaders/findCountDataLoader.js +1 -1
  22. package/build/src/dataloaders/findCountDataLoader.js.map +1 -1
  23. package/build/src/dataloaders/findDataLoader.d.ts.map +1 -1
  24. package/build/src/dataloaders/findDataLoader.js +5 -19
  25. package/build/src/dataloaders/findDataLoader.js.map +1 -1
  26. package/build/src/dataloaders/lensDataLoader.js +1 -1
  27. package/build/src/dataloaders/lensDataLoader.js.map +1 -1
  28. package/build/src/dataloaders/loadDataLoader.d.ts.map +1 -1
  29. package/build/src/dataloaders/loadDataLoader.js +4 -1
  30. package/build/src/dataloaders/loadDataLoader.js.map +1 -1
  31. package/build/src/dataloaders/manyToManyDataLoader.js +13 -16
  32. package/build/src/dataloaders/manyToManyDataLoader.js.map +1 -1
  33. package/build/src/dataloaders/manyToManyFindDataLoader.js +29 -32
  34. package/build/src/dataloaders/manyToManyFindDataLoader.js.map +1 -1
  35. package/build/src/dataloaders/oneToManyDataLoader.d.ts.map +1 -1
  36. package/build/src/dataloaders/oneToManyDataLoader.js +6 -3
  37. package/build/src/dataloaders/oneToManyDataLoader.js.map +1 -1
  38. package/build/src/dataloaders/oneToManyFindDataLoader.d.ts.map +1 -1
  39. package/build/src/dataloaders/oneToManyFindDataLoader.js +29 -32
  40. package/build/src/dataloaders/oneToManyFindDataLoader.js.map +1 -1
  41. package/build/src/dataloaders/oneToOneDataLoader.d.ts.map +1 -1
  42. package/build/src/dataloaders/oneToOneDataLoader.js +6 -3
  43. package/build/src/dataloaders/oneToOneDataLoader.js.map +1 -1
  44. package/build/src/dataloaders/populateDataLoader.d.ts.map +1 -1
  45. package/build/src/dataloaders/populateDataLoader.js +4 -1
  46. package/build/src/dataloaders/populateDataLoader.js.map +1 -1
  47. package/build/src/drivers/buildKnexQuery.d.ts.map +1 -1
  48. package/build/src/drivers/buildKnexQuery.js +21 -34
  49. package/build/src/drivers/buildKnexQuery.js.map +1 -1
  50. package/build/src/index.d.ts +14 -2
  51. package/build/src/index.d.ts.map +1 -1
  52. package/build/src/index.js +22 -1
  53. package/build/src/index.js.map +1 -1
  54. package/build/src/relations/AbstractPropertyImpl.d.ts +7 -0
  55. package/build/src/relations/AbstractPropertyImpl.d.ts.map +1 -0
  56. package/build/src/relations/AbstractPropertyImpl.js +15 -0
  57. package/build/src/relations/AbstractPropertyImpl.js.map +1 -0
  58. package/build/src/relations/AbstractRelationImpl.d.ts +3 -1
  59. package/build/src/relations/AbstractRelationImpl.d.ts.map +1 -1
  60. package/build/src/relations/AbstractRelationImpl.js +5 -1
  61. package/build/src/relations/AbstractRelationImpl.js.map +1 -1
  62. package/build/src/relations/CustomCollection.d.ts +1 -2
  63. package/build/src/relations/CustomCollection.d.ts.map +1 -1
  64. package/build/src/relations/CustomCollection.js +12 -14
  65. package/build/src/relations/CustomCollection.js.map +1 -1
  66. package/build/src/relations/CustomReference.d.ts +1 -2
  67. package/build/src/relations/CustomReference.d.ts.map +1 -1
  68. package/build/src/relations/CustomReference.js +11 -13
  69. package/build/src/relations/CustomReference.js.map +1 -1
  70. package/build/src/relations/ManyToManyCollection.d.ts +1 -2
  71. package/build/src/relations/ManyToManyCollection.d.ts.map +1 -1
  72. package/build/src/relations/ManyToManyCollection.js +30 -35
  73. package/build/src/relations/ManyToManyCollection.js.map +1 -1
  74. package/build/src/relations/ManyToOneReference.d.ts +1 -1
  75. package/build/src/relations/ManyToOneReference.d.ts.map +1 -1
  76. package/build/src/relations/ManyToOneReference.js +32 -34
  77. package/build/src/relations/ManyToOneReference.js.map +1 -1
  78. package/build/src/relations/OneToManyCollection.d.ts +1 -2
  79. package/build/src/relations/OneToManyCollection.d.ts.map +1 -1
  80. package/build/src/relations/OneToManyCollection.js +26 -31
  81. package/build/src/relations/OneToManyCollection.js.map +1 -1
  82. package/build/src/relations/OneToOneReference.d.ts +1 -2
  83. package/build/src/relations/OneToOneReference.d.ts.map +1 -1
  84. package/build/src/relations/OneToOneReference.js +17 -22
  85. package/build/src/relations/OneToOneReference.js.map +1 -1
  86. package/build/src/relations/PersistedAsyncProperty.d.ts +2 -1
  87. package/build/src/relations/PersistedAsyncProperty.d.ts.map +1 -1
  88. package/build/src/relations/PersistedAsyncProperty.js +12 -12
  89. package/build/src/relations/PersistedAsyncProperty.js.map +1 -1
  90. package/build/src/relations/PersistedAsyncReference.d.ts +1 -1
  91. package/build/src/relations/PersistedAsyncReference.d.ts.map +1 -1
  92. package/build/src/relations/PersistedAsyncReference.js +22 -24
  93. package/build/src/relations/PersistedAsyncReference.js.map +1 -1
  94. package/build/src/relations/PolymorphicReference.d.ts +1 -2
  95. package/build/src/relations/PolymorphicReference.d.ts.map +1 -1
  96. package/build/src/relations/PolymorphicReference.js +1 -3
  97. package/build/src/relations/PolymorphicReference.js.map +1 -1
  98. package/build/tsconfig.tsbuildinfo +1 -1
  99. package/package.json +2 -2
@@ -35,23 +35,20 @@ async function load(collection, keys) {
35
35
  const query = {
36
36
  selects: [`"${alias}".*`],
37
37
  tables: [{ alias, join: "primary", table: collection.joinTableName }],
38
- conditions: [],
39
38
  // Or together `where tag_id in (...)` or `book_id in (...)` if we're loading both sides simultaneously
40
- complexConditions: [
41
- {
42
- op: "or",
43
- conditions: Object.entries(columns).map(([columnId, values]) => {
44
- // Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
45
- const meta = collection.columnName == columnId ? (0, index_1.getMetadata)(collection.entity) : collection.otherMeta;
46
- return {
47
- alias,
48
- column: columnId,
49
- dbType: meta.idDbType,
50
- cond: { kind: "in", value: values.map((id) => (0, index_1.keyToNumber)(meta, id)) },
51
- };
52
- }),
53
- },
54
- ],
39
+ condition: {
40
+ op: "or",
41
+ conditions: Object.entries(columns).map(([columnId, values]) => {
42
+ // Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
43
+ const meta = collection.columnName == columnId ? (0, index_1.getMetadata)(collection.entity) : collection.otherMeta;
44
+ return {
45
+ alias,
46
+ column: columnId,
47
+ dbType: meta.idDbType,
48
+ cond: { kind: "in", value: values.map((id) => (0, index_1.keyToNumber)(meta, id)) },
49
+ };
50
+ }),
51
+ },
55
52
  orderBys: [{ alias, column: "id", order: "ASC" }],
56
53
  };
57
54
  // maybeAddNotSoftDeleted(conditions, meta, alias, "include");
@@ -1 +1 @@
1
- {"version":3,"file":"manyToManyDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyDataLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manyToManyDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyDataLoader.ts"],"names":[],"mappings":"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"}
@@ -14,39 +14,36 @@ async function load(collection, keys) {
14
14
  const query = {
15
15
  selects: [`"${alias}".*`],
16
16
  tables: [{ alias, join: "primary", table: joinTableName }],
17
- conditions: [],
18
17
  // Or together `where (tag_id = X and book_id = Y)` or `(book_id = B and tag_id = A)`
19
- complexConditions: [
20
- {
21
- op: "or",
22
- conditions: keys.map((key) => {
23
- const [one, two] = key.split(",");
24
- const [columnOne, idOne] = one.split("=");
25
- const [columnTwo, idTwo] = two.split("=");
26
- // Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
27
- const [meta1, meta2] = collection.columnName === columnOne
28
- ? [collection.meta, collection.otherMeta]
29
- : [collection.otherMeta, collection.meta];
30
- return {
31
- op: "and",
32
- conditions: [
33
- {
34
- alias,
35
- column: columnOne,
36
- dbType: meta1.idDbType,
37
- cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta1, idOne) },
38
- },
39
- {
40
- alias,
41
- column: columnTwo,
42
- dbType: meta2.idDbType,
43
- cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta2, idTwo) },
44
- },
45
- ],
46
- };
47
- }),
48
- },
49
- ],
18
+ condition: {
19
+ op: "or",
20
+ conditions: keys.map((key) => {
21
+ const [one, two] = key.split(",");
22
+ const [columnOne, idOne] = one.split("=");
23
+ const [columnTwo, idTwo] = two.split("=");
24
+ // Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
25
+ const [meta1, meta2] = collection.columnName === columnOne
26
+ ? [collection.meta, collection.otherMeta]
27
+ : [collection.otherMeta, collection.meta];
28
+ return {
29
+ op: "and",
30
+ conditions: [
31
+ {
32
+ alias,
33
+ column: columnOne,
34
+ dbType: meta1.idDbType,
35
+ cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta1, idOne) },
36
+ },
37
+ {
38
+ alias,
39
+ column: columnTwo,
40
+ dbType: meta2.idDbType,
41
+ cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta2, idTwo) },
42
+ },
43
+ ],
44
+ };
45
+ }),
46
+ },
50
47
  orderBys: [{ alias, column: "id", order: "ASC" }],
51
48
  };
52
49
  const rows = await em.driver.executeFind(em, query, {});
@@ -1 +1 @@
1
- {"version":3,"file":"manyToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyFindDataLoader.ts"],"names":[],"mappings":";;;AAGA,oCAOkB;AAElB,oFAAoF;AACpF,SAAgB,wBAAwB,CACtC,EAAiB,EACjB,UAAwE;IAExE,OAAO,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9F,CAAC;AALD,4DAKC;AAED,KAAK,UAAU,IAAI,CACjB,UAAwE,EACxE,IAA2B;IAE3B,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC;IACrC,MAAM,EAAE,EAAE,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC;IAEjC,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAoB;QAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;QACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QAC1D,UAAU,EAAE,EAAE;QACd,qFAAqF;QACrF,iBAAiB,EAAE;YACjB;gBACE,EAAE,EAAE,IAAI;gBACR,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC3B,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAClC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC1C,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC1C,sEAAsE;oBACtE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAClB,UAAU,CAAC,UAAU,KAAK,SAAS;wBACjC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC;wBACzC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;oBAC9C,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,UAAU,EAAE;4BACV;gCACE,KAAK;gCACL,MAAM,EAAE,SAAS;gCACjB,MAAM,EAAE,KAAK,CAAC,QAAQ;gCACtB,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAA,mBAAW,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE;6BACvD;4BACD;gCACE,KAAK;gCACL,MAAM,EAAE,SAAS;gCACjB,MAAM,EAAE,KAAK,CAAC,QAAQ;gCACtB,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAA,mBAAW,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE;6BACvD;yBACF;qBACF,CAAC;gBACJ,CAAC,CAAC;aACH;SACF;QACD,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KAClD,CAAC;IAEF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC;IACtC,MAAM,OAAO,GAAG,UAAU,CAAC,eAAe,CAAC;IAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;IAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC;IAEnC,0EAA0E;IAC1E,yEAAyE;IACzE,8CAA8C;IAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,CACnB,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,MAAM,CAAC,GAAG,GAAG,OAAO,IAAI,IAAA,aAAK,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAW,CAAC,EAAE,CAAC;QACjE,MAAM,CAAC,GAAG,GAAG,OAAO,IAAI,IAAA,aAAK,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAW,CAAC,EAAE,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"manyToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyFindDataLoader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oneToManyDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAML,mBAAmB,EAEpB,MAAM,UAAU,CAAC;AAGlB,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACpE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,GACpC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CA4CzB"}
1
+ {"version":3,"file":"oneToManyDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAML,mBAAmB,EAEpB,MAAM,UAAU,CAAC;AAGlB,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACpE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,GACpC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CA+CzB"}
@@ -15,9 +15,12 @@ function oneToManyDataLoader(em, collection) {
15
15
  const query = {
16
16
  selects: [`"${alias}".*`],
17
17
  tables: [{ alias, join: "primary", table: meta.tableName }],
18
- conditions: [
19
- { alias, column: collection.otherColumnName, dbType: meta.idDbType, cond: { kind: "in", value: keys } },
20
- ],
18
+ condition: {
19
+ op: "and",
20
+ conditions: [
21
+ { alias, column: collection.otherColumnName, dbType: meta.idDbType, cond: { kind: "in", value: keys } },
22
+ ],
23
+ },
21
24
  orderBys: [{ alias, column: "id", order: "ASC" }],
22
25
  };
23
26
  (0, index_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
@@ -1 +1 @@
1
- {"version":3,"file":"oneToManyDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyDataLoader.ts"],"names":[],"mappings":";;;AAGA,oCAQkB;AAClB,oCAAmC;AAEnC,SAAgB,mBAAmB,CACjC,EAAiB,EACjB,UAAqC;IAErC,2DAA2D;IAC3D,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAChD,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;IACrD,OAAO,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACxD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QAEvC,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAA,gBAAQ,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAoB;YAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;YACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3D,UAAU,EAAE;gBACV,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;aACxG;YACD,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAClD,CAAC;QAEF,IAAA,wCAAgC,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3D,uDAAuD;QACvD,8DAA8D;QAE9D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7F,sCAAsC;QAEtC,MAAM,YAAY,GAAG,IAAA,eAAO,EAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAChD,wEAAwE;YACxE,MAAM,OAAO,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;YACxF,yFAAyF;YACzF,uFAAuF;YACvF,0FAA0F;YAC1F,sFAAsF;YACtF,0FAA0F;YAC1F,qFAAqF;YACrF,eAAe;YACf,OAAO,OAAO,IAAI,oBAAoB,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AA/CD,kDA+CC"}
1
+ {"version":3,"file":"oneToManyDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyDataLoader.ts"],"names":[],"mappings":";;;AAGA,oCAQkB;AAClB,oCAAmC;AAEnC,SAAgB,mBAAmB,CACjC,EAAiB,EACjB,UAAqC;IAErC,2DAA2D;IAC3D,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAChD,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;IACrD,OAAO,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACxD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QAEvC,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAA,gBAAQ,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAoB;YAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;YACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3D,SAAS,EAAE;gBACT,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE;oBACV,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;iBACxG;aACF;YACD,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAClD,CAAC;QAEF,IAAA,wCAAgC,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3D,uDAAuD;QACvD,8DAA8D;QAE9D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7F,sCAAsC;QAEtC,MAAM,YAAY,GAAG,IAAA,eAAO,EAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAChD,wEAAwE;YACxE,MAAM,OAAO,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;YACxF,yFAAyF;YACzF,uFAAuF;YACvF,0FAA0F;YAC1F,sFAAsF;YACtF,0FAA0F;YAC1F,qFAAqF;YACrF,eAAe;YACf,OAAO,OAAO,IAAI,oBAAoB,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AAlDD,kDAkDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"oneToManyFindDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EAKzB,MAAM,UAAU,CAAC;AAElB,oFAAoF;AACpF,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACxE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GACrE,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAgEnC"}
1
+ {"version":3,"file":"oneToManyFindDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EAKzB,MAAM,UAAU,CAAC;AAElB,oFAAoF;AACpF,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACxE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GACrE,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CA6DnC"}
@@ -13,38 +13,35 @@ function oneToManyFindDataLoader(em, collection) {
13
13
  const query = {
14
14
  selects: [`"${alias}".*`],
15
15
  tables: [{ alias, join: "primary", table: meta.tableName }],
16
- conditions: [],
17
- complexConditions: [
18
- {
19
- // Or together `where (id = X and book_id = Y)`
20
- op: "or",
21
- conditions: keys.map((key) => {
22
- const [one, two] = key.split(",");
23
- // columnOne is the `id=`, so is really the "other" side of the o2m
24
- const [columnOne, idOne] = one.split("=");
25
- const [columnTwo, idTwo] = two.split("=");
26
- const [meta1, meta2] = [collection.otherMeta, collection.meta];
27
- // Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
28
- return {
29
- op: "and",
30
- conditions: [
31
- {
32
- alias,
33
- column: columnOne,
34
- dbType: meta1.idDbType,
35
- cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta1, idOne) },
36
- },
37
- {
38
- alias,
39
- column: columnTwo,
40
- dbType: meta2.idDbType,
41
- cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta2, idTwo) },
42
- },
43
- ],
44
- };
45
- }),
46
- },
47
- ],
16
+ // Or together `where (id = X and book_id = Y)`
17
+ condition: {
18
+ op: "or",
19
+ conditions: keys.map((key) => {
20
+ const [one, two] = key.split(",");
21
+ // columnOne is the `id=`, so is really the "other" side of the o2m
22
+ const [columnOne, idOne] = one.split("=");
23
+ const [columnTwo, idTwo] = two.split("=");
24
+ const [meta1, meta2] = [collection.otherMeta, collection.meta];
25
+ // Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
26
+ return {
27
+ op: "and",
28
+ conditions: [
29
+ {
30
+ alias,
31
+ column: columnOne,
32
+ dbType: meta1.idDbType,
33
+ cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta1, idOne) },
34
+ },
35
+ {
36
+ alias,
37
+ column: columnTwo,
38
+ dbType: meta2.idDbType,
39
+ cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta2, idTwo) },
40
+ },
41
+ ],
42
+ };
43
+ }),
44
+ },
48
45
  orderBys: [{ alias, column: "id", order: "ASC" }],
49
46
  };
50
47
  (0, index_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
@@ -1 +1 @@
1
- {"version":3,"file":"oneToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oneToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oneToOneDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToOneDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAUjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAGvE,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACnE,EAAE,EAAE,aAAa,EACjB,SAAS,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GACrC,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CA0CnC"}
1
+ {"version":3,"file":"oneToOneDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToOneDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAUjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAGvE,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACnE,EAAE,EAAE,aAAa,EACjB,SAAS,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GACrC,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CA6CnC"}
@@ -17,9 +17,12 @@ function oneToOneDataLoader(em, reference) {
17
17
  const query = {
18
18
  selects: [`"${alias}".*`],
19
19
  tables: [{ alias, join: "primary", table: otherMeta.tableName }],
20
- conditions: [
21
- { alias, column: reference.otherColumnName, dbType: meta.idDbType, cond: { kind: "in", value: keys } },
22
- ],
20
+ condition: {
21
+ op: "and",
22
+ conditions: [
23
+ { alias, column: reference.otherColumnName, dbType: meta.idDbType, cond: { kind: "in", value: keys } },
24
+ ],
25
+ },
23
26
  orderBys: [],
24
27
  };
25
28
  (0, index_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
@@ -1 +1 @@
1
- {"version":3,"file":"oneToOneDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToOneDataLoader.ts"],"names":[],"mappings":";;;AAGA,sDAAgD;AAChD,oCAOkB;AAElB,oCAAmC;AAEnC,SAAgB,kBAAkB,CAChC,EAAiB,EACjB,SAAsC;IAEtC,0DAA0D;IAC1D,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;IAC5D,OAAO,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACxD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;QAEhD,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAA,gBAAQ,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEnC,MAAM,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC;QAEhC,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,KAAK,GAAoB;YAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;YACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC;YAChE,UAAU,EAAE;gBACV,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;aACvG;YACD,QAAQ,EAAE,EAAE;SACb,CAAC;QAEF,IAAA,wCAAgC,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAE3D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAElG,MAAM,iBAAiB,GAAG,IAAA,eAAO,EAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACrD,wEAAwE;YACxE,MAAM,OAAO,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YAC7E,yFAAyF;YACzF,sFAAsF;YACtF,0FAA0F;YAC1F,sFAAsF;YACtF,0FAA0F;YAC1F,qFAAqF;YACrF,eAAe;YACf,OAAO,OAAO,IAAI,oBAAoB,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAkB,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC;AA7CD,gDA6CC"}
1
+ {"version":3,"file":"oneToOneDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToOneDataLoader.ts"],"names":[],"mappings":";;;AAGA,sDAAgD;AAChD,oCAOkB;AAElB,oCAAmC;AAEnC,SAAgB,kBAAkB,CAChC,EAAiB,EACjB,SAAsC;IAEtC,0DAA0D;IAC1D,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;IAC5D,OAAO,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACxD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;QAEhD,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAA,gBAAQ,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEnC,MAAM,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC;QAEhC,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,KAAK,GAAoB;YAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;YACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC;YAChE,SAAS,EAAE;gBACT,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE;oBACV,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;iBACvG;aACF;YACD,QAAQ,EAAE,EAAE;SACb,CAAC;QAEF,IAAA,wCAAgC,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAE3D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAElG,MAAM,iBAAiB,GAAG,IAAA,eAAO,EAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACrD,wEAAwE;YACxE,MAAM,OAAO,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YAC7E,yFAAyF;YACzF,sFAAsF;YACtF,0FAA0F;YAC1F,sFAAsF;YACtF,0FAA0F;YAC1F,qFAAqF;YACrF,eAAe;YACf,OAAO,OAAO,IAAI,oBAAoB,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAkB,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC;AAhDD,gDAgDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"populateDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/populateDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAiB,aAAa,EAAkE,MAAM,UAAU,CAAC;AACxH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAIxC,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,aAAa,EACjB,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,EACnB,IAAI,EAAE,SAAS,GAAG,YAAY,EAC9B,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GACnC,UAAU,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAA;CAAE,EAAE,GAAG,CAAC,CAyI1D"}
1
+ {"version":3,"file":"populateDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/populateDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAiB,aAAa,EAAkE,MAAM,UAAU,CAAC;AACxH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAIxC,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,aAAa,EACjB,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,EACnB,IAAI,EAAE,SAAS,GAAG,YAAY,EAC9B,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GACnC,UAAU,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAA;CAAE,EAAE,GAAG,CAAC,CA4I1D"}
@@ -43,7 +43,10 @@ function populateDataLoader(em, meta, hint, mode, opts = {}) {
43
43
  // We already have the entities loaded, so can do just `SELECT a.id` + the preload columns
44
44
  selects: [(0, index_1.kqDot)(alias, "id")],
45
45
  tables: [{ alias, join: "primary", table: meta.tableName }],
46
- conditions: [{ alias, column: "id", dbType: meta.idDbType, cond: { kind: "in", value: ids } }],
46
+ condition: {
47
+ op: "and",
48
+ conditions: [{ alias, column: "id", dbType: meta.idDbType, cond: { kind: "in", value: ids } }],
49
+ },
47
50
  orderBys: [],
48
51
  };
49
52
  const hydrator = preloader.addPreloading(em, meta, layerNode, query);
@@ -1 +1 @@
1
- {"version":3,"file":"populateDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/populateDataLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"populateDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/populateDataLoader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildKnexQuery.d.ts","sourceRoot":"","sources":["../../../src/drivers/buildKnexQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAA2C,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAGvG,OAAO,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;AAExC;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5C,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CA+D7B"}
1
+ {"version":3,"file":"buildKnexQuery.d.ts","sourceRoot":"","sources":["../../../src/drivers/buildKnexQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAA2C,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAGvG,OAAO,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;AAExC;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5C,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CA2D7B"}
@@ -43,13 +43,10 @@ function buildKnexQuery(knex, parsed, settings) {
43
43
  if (parsed.lateralJoins) {
44
44
  query.joinRaw(parsed.lateralJoins.joins.join("\n"), parsed.lateralJoins.bindings);
45
45
  }
46
- parsed.conditions.forEach((c) => {
47
- addColumnCondition(knex, query, c);
48
- });
49
- parsed.complexConditions &&
50
- parsed.complexConditions.forEach((c) => {
51
- addComplexCondition(knex, query, c);
52
- });
46
+ if (parsed.condition) {
47
+ const [sql, bindings] = buildWhereClause(parsed.condition);
48
+ query.whereRaw(sql, bindings);
49
+ }
53
50
  parsed.orderBys &&
54
51
  parsed.orderBys.forEach(({ alias, column, order }) => {
55
52
  // If we're doing "select distinct" for o2m joins, then all order bys must be selects
@@ -67,22 +64,20 @@ function buildKnexQuery(knex, parsed, settings) {
67
64
  return query;
68
65
  }
69
66
  exports.buildKnexQuery = buildKnexQuery;
70
- function addComplexCondition(knex, query, complex) {
71
- query.where((q) => {
72
- const op = complex.op === "and" ? "andWhere" : "orWhere";
73
- complex.conditions.forEach((c) => {
74
- if ("op" in c) {
75
- q[op]((q) => addComplexCondition(knex, q, c));
76
- }
77
- else {
78
- q[op]((q) => addColumnCondition(knex, q, c));
79
- }
80
- });
67
+ function buildWhereClause(exp) {
68
+ const tuples = exp.conditions.map((c) => {
69
+ if ("op" in c) {
70
+ return buildWhereClause(c);
71
+ }
72
+ else {
73
+ return buildCondition(c);
74
+ }
81
75
  });
76
+ return [tuples.map(([sql]) => sql).join(` ${exp.op} `), tuples.flatMap(([, bindings]) => bindings)];
82
77
  }
83
- function addColumnCondition(knex, query, cc) {
78
+ function buildCondition(cc) {
84
79
  const { alias, column, cond } = cc;
85
- const columnName = knex.raw((0, keywords_1.kqDot)(alias, column));
80
+ const columnName = (0, keywords_1.kqDot)(alias, column);
86
81
  switch (cond.kind) {
87
82
  case "eq":
88
83
  case "ne":
@@ -98,25 +93,17 @@ function addColumnCondition(knex, query, cc) {
98
93
  case "containedBy":
99
94
  case "overlaps":
100
95
  const fn = EntityGraphQLFilter_1.opToFn[cond.kind] ?? (0, utils_1.fail)(`Invalid operator ${cond.kind}`);
101
- query.where(columnName, fn, cond.value);
102
- break;
96
+ return [`${columnName} ${fn} ?`, [cond.value]];
103
97
  case "is-null":
104
- query.whereNull(columnName);
105
- break;
98
+ return [`${columnName} is null`, []];
106
99
  case "not-null":
107
- query.whereNotNull(columnName);
108
- break;
100
+ return [`${columnName} is not null`, []];
109
101
  case "in":
110
- query.whereIn(columnName, cond.value);
111
- break;
102
+ return [`${columnName} = any(?)`, [cond.value]];
112
103
  case "nin":
113
- query.whereNotIn(columnName, cond.value);
114
- break;
104
+ return [`${columnName} != any(?)`, [cond.value]];
115
105
  case "between":
116
- const [min, max] = cond.value;
117
- query.where(columnName, ">=", min);
118
- query.where(columnName, "<=", max);
119
- break;
106
+ return [`${columnName} between ? and ?`, cond.value];
120
107
  default:
121
108
  (0, utils_1.assertNever)(cond);
122
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"buildKnexQuery.js","sourceRoot":"","sources":["../../../src/drivers/buildKnexQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildKnexQuery.js","sourceRoot":"","sources":["../../../src/drivers/buildKnexQuery.ts"],"names":[],"mappings":"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"}
@@ -71,10 +71,22 @@ export declare function getRequiredKeys<T extends Entity>(type: EntityConstructo
71
71
  /** Processes the metas for rules/reactivity based on the user's `config.*` calls. */
72
72
  export declare function configureMetadata(metas: EntityMetadata[]): void;
73
73
  export declare function getEm(entity: Entity): EntityManager<any>;
74
- export declare function getRelations(entity: Entity): AbstractRelationImpl<any>[];
75
- export declare function getRelationEntries(entity: Entity): [string, AbstractRelationImpl<any>][];
74
+ export declare function getRelations(entity: Entity): AbstractRelationImpl<any, any>[];
75
+ export declare function getRelationEntries(entity: Entity): [string, AbstractRelationImpl<any, any>][];
76
76
  export declare function getConstructorFromTaggedId(id: TaggedId): MaybeAbstractEntityConstructor<any>;
77
+ export declare function getMetadataForTable(tableName: string): EntityMetadata;
77
78
  export declare function maybeGetConstructorFromReference(value: string | Entity | Reference<any, any, any> | undefined): MaybeAbstractEntityConstructor<any> | undefined;
78
79
  /** Casts a "maybe abstract" cstr to a concrete cstr when the calling code knows it's safe. */
79
80
  export declare function asConcreteCstr<T extends Entity>(cstr: MaybeAbstractEntityConstructor<T>): EntityConstructor<T>;
81
+ /**
82
+ * Thrown when `.id` is accessed on an entity that does not have an id yet.
83
+ *
84
+ * For Postgres, entities are actually allowed to have ids pre-INSERT, if you call
85
+ * `em.assignIds()`. Other databases typically require INSERTs to trigger the auto
86
+ * id assignment.
87
+ */
88
+ export declare class NoIdError extends Error {
89
+ }
90
+ /** Throws a `NoIdError` for `entity`, i.e. because `id` was called before being saved. */
91
+ export declare function failNoIdYet(entity: string): never;
80
92
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.asConcreteCstr = exports.maybeGetConstructorFromReference = exports.getConstructorFromTaggedId = exports.getRelationEntries = exports.getRelations = exports.getEm = exports.configureMetadata = exports.getRequiredKeys = exports.ensureNotDeleted = exports.setOpts = exports.setField = exports.withLoaded = exports.ensureWithLoaded = exports.indexBy = exports.fail = exports.cleanStringValue = exports.assertNever = exports.asNew = exports.rangeValueRule = exports.newRequiredRule = exports.minValueRule = exports.maxValueRule = exports.cannotBeUpdated = exports.ValidationErrors = exports.reverseReactiveHint = exports.normalizeHint = exports.deepNormalizeHint = exports.maybePopulateThen = exports.isNew = exports.isLoaded = exports.ensureLoaded = exports.assertLoaded = exports.kqStar = exports.kqDot = exports.kq = exports.ConfigApi = exports.isEntity = exports.EntityOrmField = exports.BaseEntity = exports.AliasAssigner = exports.newPgConnectionConfig = exports.testing = void 0;
17
+ exports.failNoIdYet = exports.NoIdError = exports.asConcreteCstr = exports.maybeGetConstructorFromReference = exports.getMetadataForTable = exports.getConstructorFromTaggedId = exports.getRelationEntries = exports.getRelations = exports.getEm = exports.configureMetadata = exports.getRequiredKeys = exports.ensureNotDeleted = exports.setOpts = exports.setField = exports.withLoaded = exports.ensureWithLoaded = exports.indexBy = exports.fail = exports.cleanStringValue = exports.assertNever = exports.asNew = exports.rangeValueRule = exports.newRequiredRule = exports.minValueRule = exports.maxValueRule = exports.cannotBeUpdated = exports.ValidationErrors = exports.reverseReactiveHint = exports.normalizeHint = exports.deepNormalizeHint = exports.maybePopulateThen = exports.isNew = exports.isLoaded = exports.ensureLoaded = exports.assertLoaded = exports.kqStar = exports.kqDot = exports.kq = exports.ConfigApi = exports.isEntity = exports.EntityOrmField = exports.BaseEntity = exports.AliasAssigner = exports.newPgConnectionConfig = exports.testing = void 0;
18
18
  const Entity_1 = require("./Entity");
19
19
  const EntityManager_1 = require("./EntityManager");
20
20
  const EntityMetadata_1 = require("./EntityMetadata");
@@ -229,6 +229,7 @@ function getRequiredKeys(entityOrType) {
229
229
  }
230
230
  exports.getRequiredKeys = getRequiredKeys;
231
231
  const tagToConstructorMap = new Map();
232
+ const tableToMetaMap = new Map();
232
233
  /** Processes the metas for rules/reactivity based on the user's `config.*` calls. */
233
234
  function configureMetadata(metas) {
234
235
  // Do a first pass to flag immutable fields (which we'll use in reverseReactiveHint)
@@ -237,6 +238,7 @@ function configureMetadata(metas) {
237
238
  // Add each constructor into our tag -> constructor map for future lookups
238
239
  tagToConstructorMap.set(meta.tagName, meta.cstr);
239
240
  }
241
+ tableToMetaMap.set(meta.tableName, meta);
240
242
  // Scan rules for cannotBeUpdated so that we can set `field.immutable`
241
243
  meta.config.__data.rules.forEach((rule) => {
242
244
  if ((0, rules_1.isCannotBeUpdatedRule)(rule.fn) && rule.fn.immutable) {
@@ -336,6 +338,10 @@ function getConstructorFromTaggedId(id) {
336
338
  return tagToConstructorMap.get(tag) ?? (0, utils_1.fail)(`Unknown tag: "${tag}" `);
337
339
  }
338
340
  exports.getConstructorFromTaggedId = getConstructorFromTaggedId;
341
+ function getMetadataForTable(tableName) {
342
+ return tableToMetaMap.get(tableName) ?? (0, utils_1.fail)(`Unknown table ${tableName}`);
343
+ }
344
+ exports.getMetadataForTable = getMetadataForTable;
339
345
  function maybeGetConstructorFromReference(value) {
340
346
  const id = (0, keys_1.maybeResolveReferenceToId)(value);
341
347
  return id ? getConstructorFromTaggedId(id) : undefined;
@@ -355,4 +361,19 @@ function asConcreteCstr(cstr) {
355
361
  return cstr;
356
362
  }
357
363
  exports.asConcreteCstr = asConcreteCstr;
364
+ /**
365
+ * Thrown when `.id` is accessed on an entity that does not have an id yet.
366
+ *
367
+ * For Postgres, entities are actually allowed to have ids pre-INSERT, if you call
368
+ * `em.assignIds()`. Other databases typically require INSERTs to trigger the auto
369
+ * id assignment.
370
+ */
371
+ class NoIdError extends Error {
372
+ }
373
+ exports.NoIdError = NoIdError;
374
+ /** Throws a `NoIdError` for `entity`, i.e. because `id` was called before being saved. */
375
+ function failNoIdYet(entity) {
376
+ throw new NoIdError(`${entity} has no id yet`);
377
+ }
378
+ exports.failNoIdYet = failNoIdYet;
358
379
  //# sourceMappingURL=index.js.map