@contember/engine-content-api 1.2.0-alpha.3 → 1.2.0-alpha.6

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 (164) hide show
  1. package/dist/src/acl/EvaluatedPredicateReplacer.d.ts +10 -0
  2. package/dist/src/acl/EvaluatedPredicateReplacer.d.ts.map +1 -0
  3. package/dist/src/acl/EvaluatedPredicateReplacer.js +40 -0
  4. package/dist/src/acl/EvaluatedPredicateReplacer.js.map +1 -0
  5. package/dist/src/acl/PredicateFactory.d.ts +4 -2
  6. package/dist/src/acl/PredicateFactory.d.ts.map +1 -1
  7. package/dist/src/acl/PredicateFactory.js +24 -6
  8. package/dist/src/acl/PredicateFactory.js.map +1 -1
  9. package/dist/src/acl/PredicatesInjector.d.ts +1 -1
  10. package/dist/src/acl/PredicatesInjector.d.ts.map +1 -1
  11. package/dist/src/acl/PredicatesInjector.js +14 -11
  12. package/dist/src/acl/PredicatesInjector.js.map +1 -1
  13. package/dist/src/acl/VariableInjector.d.ts +0 -1
  14. package/dist/src/acl/VariableInjector.d.ts.map +1 -1
  15. package/dist/src/acl/VariableInjector.js +4 -16
  16. package/dist/src/acl/VariableInjector.js.map +1 -1
  17. package/dist/src/acl/VariableUtils.d.ts +2 -13
  18. package/dist/src/acl/VariableUtils.d.ts.map +1 -1
  19. package/dist/src/acl/VariableUtils.js +6 -23
  20. package/dist/src/acl/VariableUtils.js.map +1 -1
  21. package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js +1 -1
  22. package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js.map +1 -1
  23. package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.d.ts.map +1 -1
  24. package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js +25 -13
  25. package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js.map +1 -1
  26. package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.d.ts.map +1 -1
  27. package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js +26 -13
  28. package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js.map +1 -1
  29. package/dist/src/input-validation/EntityRulesResolver.js +3 -3
  30. package/dist/src/input-validation/EntityRulesResolver.js.map +1 -1
  31. package/dist/src/input-validation/ValidationContext.d.ts +2 -2
  32. package/dist/src/input-validation/ValidationContext.d.ts.map +1 -1
  33. package/dist/src/input-validation/ValidationContext.js.map +1 -1
  34. package/dist/src/input-validation/ValidationDataSelector.d.ts.map +1 -1
  35. package/dist/src/input-validation/ValidationDataSelector.js +1 -1
  36. package/dist/src/input-validation/ValidationDataSelector.js.map +1 -1
  37. package/dist/src/mapper/Mapper.d.ts +4 -4
  38. package/dist/src/mapper/Mapper.d.ts.map +1 -1
  39. package/dist/src/mapper/Mapper.js +7 -7
  40. package/dist/src/mapper/Mapper.js.map +1 -1
  41. package/dist/src/mapper/MapperContainer.d.ts.map +1 -1
  42. package/dist/src/mapper/MapperContainer.js +5 -2
  43. package/dist/src/mapper/MapperContainer.js.map +1 -1
  44. package/dist/src/mapper/select/RelationFetcher.d.ts +40 -5
  45. package/dist/src/mapper/select/RelationFetcher.d.ts.map +1 -1
  46. package/dist/src/mapper/select/RelationFetcher.js +19 -6
  47. package/dist/src/mapper/select/RelationFetcher.js.map +1 -1
  48. package/dist/src/mapper/select/WhereBuilder.d.ts +3 -1
  49. package/dist/src/mapper/select/WhereBuilder.d.ts.map +1 -1
  50. package/dist/src/mapper/select/WhereBuilder.js +4 -2
  51. package/dist/src/mapper/select/WhereBuilder.js.map +1 -1
  52. package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts +2 -2
  53. package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts.map +1 -1
  54. package/dist/src/mapper/select/handlers/FieldsVisitor.js +31 -18
  55. package/dist/src/mapper/select/handlers/FieldsVisitor.js.map +1 -1
  56. package/dist/src/mapper/select/optimizer/ConditionOptimizer.d.ts +5 -0
  57. package/dist/src/mapper/select/optimizer/ConditionOptimizer.d.ts.map +1 -0
  58. package/dist/src/mapper/select/optimizer/ConditionOptimizer.js +33 -0
  59. package/dist/src/mapper/select/optimizer/ConditionOptimizer.js.map +1 -0
  60. package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts +11 -0
  61. package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts.map +1 -0
  62. package/dist/src/mapper/select/optimizer/WhereOptimizer.js +57 -0
  63. package/dist/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -0
  64. package/dist/src/mapper/select/optimizer/helpers.d.ts +10 -0
  65. package/dist/src/mapper/select/optimizer/helpers.d.ts.map +1 -0
  66. package/dist/src/mapper/select/optimizer/helpers.js +65 -0
  67. package/dist/src/mapper/select/optimizer/helpers.js.map +1 -0
  68. package/dist/src/resolvers/MutationResolver.js +1 -1
  69. package/dist/src/resolvers/MutationResolver.js.map +1 -1
  70. package/dist/src/resolvers/ReadHelpers.js +3 -3
  71. package/dist/src/resolvers/ReadHelpers.js.map +1 -1
  72. package/dist/src/resolvers/ReadResolver.js +2 -2
  73. package/dist/src/resolvers/ReadResolver.js.map +1 -1
  74. package/dist/src/tsconfig.tsbuildinfo +1 -1
  75. package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.d.ts +2 -0
  76. package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.d.ts.map +1 -0
  77. package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.js +38 -0
  78. package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.js.map +1 -0
  79. package/dist/tests/cases/integration/graphQlRequests/delete/aclDelete.test.js +1 -6
  80. package/dist/tests/cases/integration/graphQlRequests/delete/aclDelete.test.js.map +1 -1
  81. package/dist/tests/cases/integration/graphQlRequests/insert/acl/setField.test.js +2 -12
  82. package/dist/tests/cases/integration/graphQlRequests/insert/acl/setField.test.js.map +1 -1
  83. package/dist/tests/cases/integration/graphQlRequests/insert/aclInsert.test.js +1 -6
  84. package/dist/tests/cases/integration/graphQlRequests/insert/aclInsert.test.js.map +1 -1
  85. package/dist/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.js +7 -26
  86. package/dist/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.js.map +1 -1
  87. package/dist/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.js +1 -6
  88. package/dist/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.js.map +1 -1
  89. package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.d.ts +2 -0
  90. package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.d.ts.map +1 -0
  91. package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.js +137 -0
  92. package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.js.map +1 -0
  93. package/dist/tests/cases/integration/graphQlRequests/query/filter/complexCondition.test.js +1 -1
  94. package/dist/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.js +1 -1
  95. package/dist/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.js.map +1 -1
  96. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.js +73 -0
  97. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.js.map +1 -1
  98. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.js +73 -0
  99. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.js.map +1 -1
  100. package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js +6 -26
  101. package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js.map +1 -1
  102. package/dist/tests/cases/unit/aclVariablesFactory.test.js +4 -32
  103. package/dist/tests/cases/unit/aclVariablesFactory.test.js.map +1 -1
  104. package/dist/tests/cases/unit/conditionOptimizer.test.d.ts +2 -0
  105. package/dist/tests/cases/unit/conditionOptimizer.test.d.ts.map +1 -0
  106. package/dist/tests/cases/unit/conditionOptimizer.test.js +113 -0
  107. package/dist/tests/cases/unit/conditionOptimizer.test.js.map +1 -0
  108. package/dist/tests/cases/unit/orderbyHelper.test.js +1 -0
  109. package/dist/tests/cases/unit/orderbyHelper.test.js.map +1 -1
  110. package/dist/tests/cases/unit/predicatesFactory.test.d.ts +2 -0
  111. package/dist/tests/cases/unit/predicatesFactory.test.d.ts.map +1 -0
  112. package/dist/tests/cases/unit/predicatesFactory.test.js +103 -0
  113. package/dist/tests/cases/unit/predicatesFactory.test.js.map +1 -0
  114. package/dist/tests/cases/unit/predicatesInjector.test.js +9 -18
  115. package/dist/tests/cases/unit/predicatesInjector.test.js.map +1 -1
  116. package/dist/tests/cases/unit/variableInjector.test.js +2 -13
  117. package/dist/tests/cases/unit/variableInjector.test.js.map +1 -1
  118. package/dist/tests/cases/unit/whereOptimizer.test.d.ts +2 -0
  119. package/dist/tests/cases/unit/whereOptimizer.test.d.ts.map +1 -0
  120. package/dist/tests/cases/unit/whereOptimizer.test.js +81 -0
  121. package/dist/tests/cases/unit/whereOptimizer.test.js.map +1 -0
  122. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  123. package/package.json +10 -10
  124. package/src/acl/EvaluatedPredicateReplacer.ts +38 -0
  125. package/src/acl/PredicateFactory.ts +30 -7
  126. package/src/acl/PredicatesInjector.ts +18 -10
  127. package/src/acl/VariableInjector.ts +2 -17
  128. package/src/acl/VariableUtils.ts +7 -28
  129. package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.ts +3 -3
  130. package/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts +26 -28
  131. package/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts +27 -31
  132. package/src/input-validation/EntityRulesResolver.ts +3 -3
  133. package/src/input-validation/ValidationContext.ts +2 -2
  134. package/src/input-validation/ValidationDataSelector.ts +2 -2
  135. package/src/mapper/Mapper.ts +10 -6
  136. package/src/mapper/MapperContainer.ts +7 -3
  137. package/src/mapper/select/RelationFetcher.ts +95 -34
  138. package/src/mapper/select/WhereBuilder.ts +5 -2
  139. package/src/mapper/select/handlers/FieldsVisitor.ts +31 -24
  140. package/src/mapper/select/optimizer/ConditionOptimizer.ts +35 -0
  141. package/src/mapper/select/optimizer/WhereOptimizer.ts +67 -0
  142. package/src/mapper/select/optimizer/helpers.ts +54 -0
  143. package/src/resolvers/MutationResolver.ts +1 -1
  144. package/src/resolvers/ReadHelpers.ts +3 -3
  145. package/src/resolvers/ReadResolver.ts +2 -2
  146. package/tests/cases/integration/graphQlDb/insert/insertSequence.test.ts +34 -0
  147. package/tests/cases/integration/graphQlRequests/delete/aclDelete.test.ts +1 -6
  148. package/tests/cases/integration/graphQlRequests/insert/acl/setField.test.ts +2 -12
  149. package/tests/cases/integration/graphQlRequests/insert/aclInsert.test.ts +1 -6
  150. package/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.ts +7 -26
  151. package/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.ts +1 -6
  152. package/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.ts +130 -0
  153. package/tests/cases/integration/graphQlRequests/query/filter/complexCondition.test.ts +1 -1
  154. package/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.ts +1 -1
  155. package/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.ts +74 -0
  156. package/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.ts +77 -0
  157. package/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.ts +7 -27
  158. package/tests/cases/unit/aclVariablesFactory.test.ts +5 -34
  159. package/tests/cases/unit/conditionOptimizer.test.ts +129 -0
  160. package/tests/cases/unit/orderbyHelper.test.ts +1 -0
  161. package/tests/cases/unit/predicatesFactory.test.ts +97 -0
  162. package/tests/cases/unit/predicatesInjector.test.ts +9 -18
  163. package/tests/cases/unit/variableInjector.test.ts +2 -13
  164. package/tests/cases/unit/whereOptimizer.test.ts +77 -0
@@ -6,7 +6,7 @@ declare namespace ValidationContext {
6
6
  type: Type;
7
7
  }
8
8
  export type NodeType = Value.Object;
9
- export type ValueType = Value.FieldValue;
9
+ export type ValueType = Value.FieldValue | undefined;
10
10
  export enum NodeContextType {
11
11
  value = "value",
12
12
  node = "node",
@@ -32,7 +32,7 @@ declare namespace ValidationContext {
32
32
  export const createValueContext: (root: NodeContext, node: NodeType, value: ValueType) => ValueContext;
33
33
  export const createNodeListContext: (root: NodeContext, nodes: (NodeContext | ValueContext)[]) => NodeListContext;
34
34
  export const createRootContext: (node: NodeType) => NodeContext;
35
- export const createSingleNodeContext: (parent: NodeContext | ValueContext, value: object | null | string | number | boolean) => NodeContext | ValueContext;
35
+ export const createSingleNodeContext: (parent: NodeContext | ValueContext, value: ValueType) => NodeContext | ValueContext;
36
36
  export const createContext: (context: AnyContext, part: string) => AnyContext;
37
37
  export const changeContext: (context: AnyContext, path: Validation.ContextPath) => AnyContext;
38
38
  export interface ContextVisitor<R> {
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationContext.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,kBAAU,iBAAiB,CAAC;IAC3B,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,eAAe,GAAG,oBAAoB,CAAA;IAE5F,UAAU,iBAAiB,CAAC,IAAI,SAAS,eAAe;QACvD,IAAI,EAAE,WAAW,CAAA;QACjB,IAAI,EAAE,IAAI,CAAA;KACV;IAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAA;IACnC,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAA;IAExC,MAAM,MAAM,eAAe;QAC1B,KAAK,UAAU;QACf,IAAI,SAAS;QACb,QAAQ,aAAa;QACrB,SAAS,cAAc;KACvB;IAED,MAAM,WAAW,eAAe;QAC/B,IAAI,EAAE,QAAQ,CAAA;KACd;IAED,MAAM,WAAW,WAAY,SAAQ,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,eAAe;KAAG;IAEhG,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB,CAAC,eAAe,CAAC,SAAS,CAAC;KAAG;IAE7F,MAAM,WAAW,YAAa,SAAQ,iBAAiB,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,eAAe;QAC9F,KAAK,EAAE,SAAS,CAAA;KAChB;IAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB,CAAC,eAAe,CAAC,QAAQ,CAAC;QACnF,KAAK,EAAE,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,CAAA;KACrC;IAED,MAAM,CAAC,MAAM,qBAAqB,YAAa,UAAU,KAAG,eAI3D,CAAA;IAED,MAAM,CAAC,MAAM,iBAAiB,SAAU,WAAW,QAAQ,QAAQ,KAAG,WAIpE,CAAA;IACF,MAAM,CAAC,MAAM,0BAA0B,SAAU,WAAW,KAAG,oBAG7D,CAAA;IACF,MAAM,CAAC,MAAM,kBAAkB,SAAU,WAAW,QAAQ,QAAQ,SAAS,SAAS,KAAG,YAKvF,CAAA;IACF,MAAM,CAAC,MAAM,qBAAqB,SAAU,WAAW,SAAS,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,KAAG,eAI/F,CAAA;IACF,MAAM,CAAC,MAAM,iBAAiB,SAAU,QAAQ,KAAG,WAIlD,CAAA;IAED,MAAM,CAAC,MAAM,uBAAuB,WAC3B,WAAW,GAAG,YAAY,SAC3B,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,KAC9C,WAAW,GAAG,YAQhB,CAAA;IAED,MAAM,CAAC,MAAM,aAAa,YAAa,UAAU,QAAQ,MAAM,KAAG,UA6BjE,CAAA;IAED,MAAM,CAAC,MAAM,aAAa,YAAa,UAAU,mCAAiC,UAIjF,CAAA;IAED,MAAM,WAAW,cAAc,CAAC,CAAC;QAChC,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,CAAC,CAAA;QACjD,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,CAAA;QACzC,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,CAAC,CAAA;QAC3C,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,GAAG,CAAC,CAAA;KACvD;IAED,MAAM,CAAC,MAAM,oBAAoB,eAAgB,UAAU,kCAa1D,CAAA;;CACD;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"ValidationContext.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,kBAAU,iBAAiB,CAAC;IAC3B,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,eAAe,GAAG,oBAAoB,CAAA;IAE5F,UAAU,iBAAiB,CAAC,IAAI,SAAS,eAAe;QACvD,IAAI,EAAE,WAAW,CAAA;QACjB,IAAI,EAAE,IAAI,CAAA;KACV;IAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAA;IACnC,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;IAEpD,MAAM,MAAM,eAAe;QAC1B,KAAK,UAAU;QACf,IAAI,SAAS;QACb,QAAQ,aAAa;QACrB,SAAS,cAAc;KACvB;IAED,MAAM,WAAW,eAAe;QAC/B,IAAI,EAAE,QAAQ,CAAA;KACd;IAED,MAAM,WAAW,WAAY,SAAQ,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,eAAe;KAAG;IAEhG,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB,CAAC,eAAe,CAAC,SAAS,CAAC;KAAG;IAE7F,MAAM,WAAW,YAAa,SAAQ,iBAAiB,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,eAAe;QAC9F,KAAK,EAAE,SAAS,CAAA;KAChB;IAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB,CAAC,eAAe,CAAC,QAAQ,CAAC;QACnF,KAAK,EAAE,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,CAAA;KACrC;IAED,MAAM,CAAC,MAAM,qBAAqB,YAAa,UAAU,KAAG,eAI3D,CAAA;IAED,MAAM,CAAC,MAAM,iBAAiB,SAAU,WAAW,QAAQ,QAAQ,KAAG,WAIpE,CAAA;IACF,MAAM,CAAC,MAAM,0BAA0B,SAAU,WAAW,KAAG,oBAG7D,CAAA;IACF,MAAM,CAAC,MAAM,kBAAkB,SAAU,WAAW,QAAQ,QAAQ,SAAS,SAAS,KAAG,YAKvF,CAAA;IACF,MAAM,CAAC,MAAM,qBAAqB,SAAU,WAAW,SAAS,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,KAAG,eAI/F,CAAA;IACF,MAAM,CAAC,MAAM,iBAAiB,SAAU,QAAQ,KAAG,WAIlD,CAAA;IAED,MAAM,CAAC,MAAM,uBAAuB,WAC3B,WAAW,GAAG,YAAY,SAC3B,SAAS,KACd,WAAW,GAAG,YAQhB,CAAA;IAED,MAAM,CAAC,MAAM,aAAa,YAAa,UAAU,QAAQ,MAAM,KAAG,UA6BjE,CAAA;IAED,MAAM,CAAC,MAAM,aAAa,YAAa,UAAU,mCAAiC,UAIjF,CAAA;IAED,MAAM,WAAW,cAAc,CAAC,CAAC;QAChC,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,CAAC,CAAA;QACjD,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,CAAA;QACzC,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,CAAC,CAAA;QAC3C,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,GAAG,CAAC,CAAA;KACvD;IAED,MAAM,CAAC,MAAM,oBAAoB,eAAgB,UAAU,kCAa1D,CAAA;;CACD;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationContext.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ValidationContext.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":";;;AACA,oCAAsC;AAEtC,IAAU,iBAAiB,CAyI1B;AAzID,WAAU,iBAAiB;IAW1B,IAAY,eAKX;IALD,WAAY,eAAe;QAC1B,kCAAe,CAAA;QACf,gCAAa,CAAA;QACb,wCAAqB,CAAA;QACrB,0CAAuB,CAAA;IACxB,CAAC,EALW,eAAe,GAAf,iCAAe,KAAf,iCAAe,QAK1B;IAkBY,uCAAqB,GAAG,CAAC,OAAmB,EAAmB,EAAE;QAC7E,OAAO,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ;YAC/C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,kBAAA,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IACpG,CAAC,CAAA;IAEY,mCAAiB,GAAG,CAAC,IAAiB,EAAE,IAAc,EAAe,EAAE,CAAC,CAAC;QACrF,IAAI;QACJ,IAAI;QACJ,IAAI,EAAE,eAAe,CAAC,IAAI;KAC1B,CAAC,CAAA;IACW,4CAA0B,GAAG,CAAC,IAAiB,EAAwB,EAAE,CAAC,CAAC;QACvF,IAAI;QACJ,IAAI,EAAE,eAAe,CAAC,SAAS;KAC/B,CAAC,CAAA;IACW,oCAAkB,GAAG,CAAC,IAAiB,EAAE,IAAc,EAAE,KAAgB,EAAgB,EAAE,CAAC,CAAC;QACzG,IAAI;QACJ,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,eAAe,CAAC,KAAK;KAC3B,CAAC,CAAA;IACW,uCAAqB,GAAG,CAAC,IAAiB,EAAE,KAAqC,EAAmB,EAAE,CAAC,CAAC;QACpH,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,eAAe,CAAC,QAAQ;KAC9B,CAAC,CAAA;IACW,mCAAiB,GAAG,CAAC,IAAc,EAAe,EAAE;QAChE,MAAM,OAAO,GAAQ,EAAE,IAAI,EAAE,CAAA;QAC7B,OAAO,CAAC,IAAI,GAAG,OAAO,CAAA;QACtB,OAAO,OAAO,CAAA;IACf,CAAC,CAAA;IAEY,yCAAuB,GAAG,CACtC,MAAkC,EAClC,KAAgB,EACa,EAAE;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;SAChD;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;YAChD,OAAO,kBAAA,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,KAAiB,CAAC,CAAA;SACxD;QACD,OAAO,kBAAA,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC3D,CAAC,CAAA;IAEY,+BAAa,GAAG,CAAC,OAAmB,EAAE,IAAY,EAAc,EAAE;QAC9E,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ,EAAE;YAC9C,MAAM,YAAY,GAAoB;gBACrC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,eAAe,CAAC,QAAQ;aAC9B,CAAA;YACD,OAAO,OAAO,CAAC,KAAK;iBAClB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAA,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;iBAClC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAA,qBAAqB,CAAC,EAAE,CAAC,CAAC;iBACpC,MAAM,CACN,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,kBAAA,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EACnF,YAAY,CACZ,CAAA;SACF;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,EAAE;YAC/C,OAAO,OAAO,CAAA;SACd;QACD,IAAI,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,WAAW,EAAE;YAC9C,OAAO,kBAAA,0BAA0B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SAC/C;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,kBAAA,qBAAqB,CAC3B,OAAO,CAAC,IAAI,EACZ,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAA,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CACrD,CAAA;SACD;QACD,OAAO,kBAAA,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAA;IAEY,+BAAa,GAAG,CAAC,OAAmB,EAAE,IAA4B,EAAc,EAAE;QAC9F,OAAO,IAAI,CAAC,MAAM,CAAa,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YAC/C,OAAO,kBAAA,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACnC,CAAC,EAAE,OAAO,CAAC,CAAA;IACZ,CAAC,CAAA;IASY,sCAAoB,GAAG,CAAI,OAAmB,EAAE,OAA0B,EAAK,EAAE;QAC7F,QAAQ,OAAO,CAAC,IAAI,EAAE;YACrB,KAAK,iBAAiB,CAAC,eAAe,CAAC,IAAI;gBAC1C,OAAO,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;YACzC,KAAK,iBAAiB,CAAC,eAAe,CAAC,QAAQ;gBAC9C,OAAO,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;YAC7C,KAAK,iBAAiB,CAAC,eAAe,CAAC,KAAK;gBAC3C,OAAO,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAC1C,KAAK,iBAAiB,CAAC,eAAe,CAAC,SAAS;gBAC/C,OAAO,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YAC9C;gBACC,IAAA,mBAAW,EAAC,OAAO,CAAC,CAAA;SACrB;IACF,CAAC,CAAA;AACF,CAAC,EAzIS,iBAAiB,KAAjB,iBAAiB,QAyI1B;AAEQ,8CAAiB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationDataSelector.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,YAAY,EAAuB,MAAM,gBAAgB,CAAA;AAClE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEvD,qBAAa,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAArD,KAAK,EAAE,KAAK,CAAC,MAAM,EAAmB,eAAe,EAAE,eAAe;IAEtF,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW;IAI9E,MAAM,CAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,KAAK,EAAE,KAAK,CAAC,WAAW,EACxB,YAAY,EAAE,YAAY,GACxB,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;CAY/B"}
1
+ {"version":3,"file":"ValidationDataSelector.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEvD,qBAAa,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAArD,KAAK,EAAE,KAAK,CAAC,MAAM,EAAmB,eAAe,EAAE,eAAe;IAEtF,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW;IAI9E,MAAM,CAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,KAAK,EAAE,KAAK,CAAC,WAAW,EACxB,YAAY,EAAE,YAAY,GACxB,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;CAY/B"}
@@ -14,7 +14,7 @@ class ValidationDataSelector {
14
14
  return {};
15
15
  }
16
16
  const queryAst = this.queryAstFactory.create(entity.name, dependencies).withArg('by', where);
17
- const node = await mapper.selectUnique(entity, queryAst);
17
+ const node = await mapper.selectUnique(entity, queryAst, null);
18
18
  if (!node) {
19
19
  return null;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationDataSelector.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":";;;AAKA,MAAa,sBAAsB;IAClC,YAA6B,KAAmB,EAAmB,eAAgC;QAAtE,UAAK,GAAL,KAAK,CAAc;QAAmB,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAEhG,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAoB,EAAE,KAAwB;QAC1F,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAM,CAClB,MAAc,EACd,MAAoB,EACpB,KAAwB,EACxB,YAA0B;QAE1B,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3C,OAAO,EAAE,CAAA;SACT;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5F,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,CAAA;SACX;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;CACD;AAxBD,wDAwBC"}
1
+ {"version":3,"file":"ValidationDataSelector.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":";;;AAKA,MAAa,sBAAsB;IAClC,YAA6B,KAAmB,EAAmB,eAAgC;QAAtE,UAAK,GAAL,KAAK,CAAc;QAAmB,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAEhG,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAoB,EAAE,KAAwB;QAC1F,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAM,CAClB,MAAc,EACd,MAAoB,EACpB,KAAwB,EACxB,YAA0B;QAE1B,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3C,OAAO,EAAE,CAAA;SACT;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5F,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QAC9D,IAAI,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,CAAA;SACX;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;CACD;AAxBD,wDAwBC"}
@@ -34,10 +34,10 @@ export declare class Mapper {
34
34
  readonly constraintHelper: ConstraintHelper;
35
35
  constructor(schema: Model.Schema, db: database.Client, predicatesInjector: PredicatesInjector, selectBuilderFactory: SelectBuilderFactory, uniqueWhereExpander: UniqueWhereExpander, whereBuilder: WhereBuilder, junctionTableManager: JunctionTableManager, deleteExecutor: DeleteExecutor, updater: Updater, inserter: Inserter, pathFactory: PathFactory);
36
36
  selectField(entity: Model.Entity, where: Input.UniqueWhere, fieldName: string): Promise<any>;
37
- select(entity: Model.Entity, input: ObjectNode<Input.ListQueryInput>): Promise<SelectResultObject[]>;
38
- select(entity: Model.Entity, input: ObjectNode<Input.ListQueryInput>, indexBy: string): Promise<SelectIndexedResultObjects>;
39
- selectUnique(entity: Model.Entity, query: ObjectNode<Input.UniqueQueryInput>): Promise<SelectResultObject | null>;
40
- selectGrouped(entity: Model.Entity, input: ObjectNode<Input.ListQueryInput>, relation: Model.JoiningColumnRelation & Model.Relation): Promise<import("./select").SelectGroupedObjects>;
37
+ select(entity: Model.Entity, input: ObjectNode<Input.ListQueryInput>, overRelation: Model.AnyRelation | null): Promise<SelectResultObject[]>;
38
+ select(entity: Model.Entity, input: ObjectNode<Input.ListQueryInput>, overRelation: Model.AnyRelation | null, indexBy: string): Promise<SelectIndexedResultObjects>;
39
+ selectUnique(entity: Model.Entity, query: ObjectNode<Input.UniqueQueryInput>, overRelation: Model.AnyRelation | null): Promise<SelectResultObject | null>;
40
+ selectGrouped(entity: Model.Entity, input: ObjectNode<Input.ListQueryInput>, relation: Model.JoiningColumnRelation & Model.AnyRelation): Promise<import("./select").SelectGroupedObjects>;
41
41
  private selectRows;
42
42
  count(entity: Model.Entity, filter: Input.OptionalWhere): Promise<any>;
43
43
  countGrouped(entity: Model.Entity, filter: Input.OptionalWhere, relation: Model.JoiningColumnRelation & Model.Relation): Promise<Record<string, number>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Mapper.d.ts","sourceRoot":"","sources":["../../../src/mapper/Mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mapper.d.ts","sourceRoot":"","sources":["../../../src/mapper/Mapper.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ class Mapper {
40
40
  const result = await builtQb.getResult(this.db);
41
41
  return result[0] !== undefined ? result[0][columnName] : undefined;
42
42
  }
43
- async select(entity, input, indexBy) {
43
+ async select(entity, input, overRelation, indexBy) {
44
44
  const hydrator = new select_1.SelectHydrator();
45
45
  let qb = database_1.SelectBuilder.create();
46
46
  let indexByAlias = null;
@@ -49,14 +49,14 @@ class Mapper {
49
49
  indexByAlias = path.for(indexBy).alias;
50
50
  qb = qb.select([path.alias, (0, schema_utils_1.getColumnName)(this.schema, entity, indexBy)], indexByAlias);
51
51
  }
52
- const rows = await this.selectRows(hydrator, qb, entity, input);
52
+ const rows = await this.selectRows(hydrator, qb, entity, input, overRelation);
53
53
  return await (indexByAlias !== null ? hydrator.hydrateAll(rows, indexByAlias) : hydrator.hydrateAll(rows));
54
54
  }
55
- async selectUnique(entity, query) {
55
+ async selectUnique(entity, query, overRelation) {
56
56
  const uniqueWhere = this.uniqueWhereExpander.expand(entity, query.args.by);
57
57
  const where = query.args.filter ? { and: [uniqueWhere, query.args.filter] } : uniqueWhere;
58
58
  const queryExpanded = query.withArg('filter', where);
59
- return (await this.select(entity, queryExpanded))[0] || null;
59
+ return (await this.select(entity, queryExpanded, overRelation))[0] || null;
60
60
  }
61
61
  async selectGrouped(entity, input, relation) {
62
62
  const hydrator = new select_1.SelectHydrator();
@@ -64,15 +64,15 @@ class Mapper {
64
64
  const path = this.pathFactory.create([]);
65
65
  const groupingKey = '__grouping_key';
66
66
  qb = qb.select([path.alias, relation.joiningColumn.columnName], groupingKey);
67
- const rows = await this.selectRows(hydrator, qb, entity, input, relation.name);
67
+ const rows = await this.selectRows(hydrator, qb, entity, input, relation, relation.name);
68
68
  return await hydrator.hydrateGroups(rows, groupingKey);
69
69
  }
70
- async selectRows(hydrator, qb, entity, input, groupBy) {
70
+ async selectRows(hydrator, qb, entity, input, overRelation, groupBy) {
71
71
  const inputWithOrder = select_2.OrderByHelper.appendDefaultOrderBy(entity, input, []);
72
72
  const path = this.pathFactory.create([]);
73
73
  const augmentedBuilder = qb.from(entity.tableName, path.alias).meta('path', [...input.path, input.alias]);
74
74
  const selector = this.selectBuilderFactory.create(augmentedBuilder, hydrator);
75
- const filterWithPredicates = this.predicatesInjector.inject(entity, inputWithOrder.args.filter || {});
75
+ const filterWithPredicates = this.predicatesInjector.inject(entity, inputWithOrder.args.filter || {}, overRelation !== null && overRelation !== void 0 ? overRelation : undefined);
76
76
  const inputWithPredicates = inputWithOrder.withArg('filter', filterWithPredicates);
77
77
  selector.select(this, entity, inputWithPredicates, path, groupBy);
78
78
  return await selector.execute(this.db);
@@ -1 +1 @@
1
- {"version":3,"file":"Mapper.js","sourceRoot":"","sources":["../../../src/mapper/Mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mapper.js","sourceRoot":"","sources":["../../../src/mapper/Mapper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MapperContainer.d.ts","sourceRoot":"","sources":["../../../src/mapper/MapperContainer.ts"],"names":[],"mappings":"AAYA,OAAO,EAON,MAAM,EACN,aAAa,EAOb,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAoC,MAAM,qBAAqB,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAInD,aAAK,mBAAmB,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,GAAG,CAAC,YAAY,CAAA;IACnC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAA;IAC5B,SAAS,EAAE,SAAS,CAAA;CACpB,CAAA;AAED,MAAM,WAAW,eAAe;IAC/B,aAAa,EAAE,aAAa,CAAA;CAC5B;AAED,eAAO,MAAM,qBAAqB,0DAA2D,mBAAmB;wBAqEjG,MAAM;EAgBpB,CAAA"}
1
+ {"version":3,"file":"MapperContainer.d.ts","sourceRoot":"","sources":["../../../src/mapper/MapperContainer.ts"],"names":[],"mappings":"AAYA,OAAO,EAON,MAAM,EACN,aAAa,EAOb,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAoC,MAAM,qBAAqB,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAMnD,aAAK,mBAAmB,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,GAAG,CAAC,YAAY,CAAA;IACnC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAA;IAC5B,SAAS,EAAE,SAAS,CAAA;CACpB,CAAA;AAED,MAAM,WAAW,eAAe;IAC/B,aAAa,EAAE,aAAa,CAAA;CAC5B;AAED,eAAO,MAAM,qBAAqB,0DAA2D,mBAAmB;wBAuEjG,MAAM;EAgBpB,CAAA"}
@@ -9,16 +9,19 @@ const mapper_1 = require("../mapper");
9
9
  const dic_1 = require("@contember/dic");
10
10
  const PaginatedHasManyExecutionHandler_1 = require("../extensions/paginatedHasMany/PaginatedHasManyExecutionHandler");
11
11
  const PaginatedHasManyFieldProvider_1 = require("../extensions/paginatedHasMany/PaginatedHasManyFieldProvider");
12
+ const WhereOptimizer_1 = require("./select/optimizer/WhereOptimizer");
13
+ const ConditionOptimizer_1 = require("./select/optimizer/ConditionOptimizer");
12
14
  const createMapperContainer = ({ permissions, schema, identityVariables, providers }) => {
13
15
  const builder = new dic_1.Builder({})
14
16
  .addService('providers', () => providers)
15
17
  .addService('variableInjector', () => new acl_1.VariableInjector(schema.model, identityVariables))
16
- .addService('predicateFactory', ({ variableInjector }) => new acl_1.PredicateFactory(permissions, variableInjector))
18
+ .addService('predicateFactory', ({ variableInjector }) => new acl_1.PredicateFactory(permissions, schema.model, variableInjector))
17
19
  .addService('predicatesInjector', ({ predicateFactory }) => new acl_1.PredicatesInjector(schema.model, predicateFactory))
18
20
  .addService('joinBuilder', () => new select_1.JoinBuilder(schema.model))
19
21
  .addService('conditionBuilder', () => new select_1.ConditionBuilder())
20
22
  .addService('pathFactory', () => new mapper_1.PathFactory())
21
- .addService('whereBuilder', ({ joinBuilder, conditionBuilder, pathFactory }) => new select_1.WhereBuilder(schema.model, joinBuilder, conditionBuilder, pathFactory))
23
+ .addService('whereOptimized', () => new WhereOptimizer_1.WhereOptimizer(schema.model, new ConditionOptimizer_1.ConditionOptimizer()))
24
+ .addService('whereBuilder', ({ joinBuilder, conditionBuilder, pathFactory, whereOptimized }) => new select_1.WhereBuilder(schema.model, joinBuilder, conditionBuilder, pathFactory, whereOptimized))
22
25
  .addService('orderByBuilder', ({ joinBuilder }) => new select_1.OrderByBuilder(schema.model, joinBuilder))
23
26
  .addService('relationFetcher', ({ whereBuilder, orderByBuilder, predicatesInjector, pathFactory }) => new select_1.RelationFetcher(whereBuilder, orderByBuilder, predicatesInjector, pathFactory))
24
27
  .addService('fieldsVisitorFactory', ({ relationFetcher, predicateFactory, whereBuilder }) => new select_1.FieldsVisitorFactory(schema.model, relationFetcher, predicateFactory, whereBuilder))
@@ -1 +1 @@
1
- {"version":3,"file":"MapperContainer.js","sourceRoot":"","sources":["../../../src/mapper/MapperContainer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MapperContainer.js","sourceRoot":"","sources":["../../../src/mapper/MapperContainer.ts"],"names":[],"mappings":"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"}
@@ -4,23 +4,58 @@ import { Input, Model } from '@contember/schema';
4
4
  import { OrderByBuilder } from './OrderByBuilder';
5
5
  import { PredicatesInjector } from '../../acl';
6
6
  import { ObjectNode } from '../../inputProcessing';
7
- import { JoiningColumns } from '../types';
8
7
  import { SelectGroupedObjects } from './SelectHydrator';
9
8
  import { Mapper } from '../Mapper';
10
9
  export declare type GroupedCounts = Record<Input.PrimaryValue, number>;
10
+ declare type CountOneHasManyGroupsArgs = {
11
+ mapper: Mapper;
12
+ filter: Input.OptionalWhere | undefined;
13
+ targetEntity: Model.Entity;
14
+ targetRelation: Model.ManyHasOneRelation;
15
+ ids: Input.PrimaryValue[];
16
+ };
17
+ declare type FetchOneHasManyGroupsArgs = {
18
+ mapper: Mapper;
19
+ objectNode: ObjectNode<Input.ListQueryInput>;
20
+ targetEntity: Model.Entity;
21
+ relation: Model.OneHasManyRelation;
22
+ targetRelation: Model.ManyHasOneRelation;
23
+ ids: Input.PrimaryValue[];
24
+ };
25
+ declare type ManyHasManyBaseArgs = {
26
+ mapper: Mapper;
27
+ targetEntity: Model.Entity;
28
+ ids: Input.PrimaryValue[];
29
+ } & ({
30
+ directionFrom: 'owning';
31
+ sourceRelation: Model.ManyHasManyOwningRelation;
32
+ targetRelation: Model.ManyHasManyInverseRelation | null;
33
+ } | {
34
+ directionFrom: 'inverse';
35
+ sourceRelation: Model.ManyHasManyInverseRelation;
36
+ targetRelation: Model.ManyHasManyOwningRelation;
37
+ });
38
+ declare type CountManyHasManyGroupArgs = ManyHasManyBaseArgs & {
39
+ filter: Input.OptionalWhere | undefined;
40
+ };
41
+ declare type FetchManyHasManyGroupsArgs = ManyHasManyBaseArgs & {
42
+ field: ObjectNode<Input.ListQueryInput>;
43
+ };
11
44
  export declare class RelationFetcher {
12
45
  private readonly whereBuilder;
13
46
  private readonly orderBuilder;
14
47
  private readonly predicateInjector;
15
48
  private readonly pathFactory;
16
49
  constructor(whereBuilder: WhereBuilder, orderBuilder: OrderByBuilder, predicateInjector: PredicatesInjector, pathFactory: PathFactory);
17
- countOneHasManyGroups(mapper: Mapper, filter: Input.OptionalWhere | undefined, targetEntity: Model.Entity, targetRelation: Model.ManyHasOneRelation, ids: Input.PrimaryValue[]): Promise<GroupedCounts>;
18
- fetchOneHasManyGroups(mapper: Mapper, objectNode: ObjectNode<Input.ListQueryInput>, targetEntity: Model.Entity, relation: Model.OneHasManyRelation, targetRelation: Model.ManyHasOneRelation, ids: Input.PrimaryValue[]): Promise<SelectGroupedObjects>;
50
+ countOneHasManyGroups({ mapper, filter, targetEntity, targetRelation, ids, }: CountOneHasManyGroupsArgs): Promise<GroupedCounts>;
51
+ fetchOneHasManyGroups({ mapper, objectNode, targetEntity, relation, targetRelation, ids, }: FetchOneHasManyGroupsArgs): Promise<SelectGroupedObjects>;
19
52
  private createOneHasManyFilter;
20
- countManyHasManyGroups(mapper: Mapper, filter: Input.OptionalWhere | undefined, targetEntity: Model.Entity, owningRelation: Model.ManyHasManyOwningRelation, ids: Input.PrimaryValue[], joiningColumns: JoiningColumns): Promise<GroupedCounts>;
21
- fetchManyHasManyGroups(mapper: Mapper, field: ObjectNode<Input.ListQueryInput>, targetEntity: Model.Entity, fromRelation: Model.ManyHasManyOwningRelation | Model.ManyHasManyInverseRelation, owningRelation: Model.ManyHasManyOwningRelation, joiningColumns: JoiningColumns, ids: Input.PrimaryValue[]): Promise<SelectGroupedObjects>;
53
+ countManyHasManyGroups({ mapper, filter, targetEntity, directionFrom, sourceRelation, targetRelation, ids, }: CountManyHasManyGroupArgs): Promise<GroupedCounts>;
54
+ fetchManyHasManyGroups({ mapper, field, sourceRelation, targetEntity, targetRelation, directionFrom, ids, }: FetchManyHasManyGroupsArgs): Promise<SelectGroupedObjects>;
55
+ private resolveJoiningColumns;
22
56
  private buildManyHasManyGroups;
23
57
  private fetchJunction;
24
58
  private buildJunctionQb;
25
59
  }
60
+ export {};
26
61
  //# sourceMappingURL=RelationFetcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelationFetcher.d.ts","sourceRoot":"","sources":["../../../../src/mapper/select/RelationFetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAS,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAa,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,OAAO,EAAE,oBAAoB,EAAiC,MAAM,kBAAkB,CAAA;AACtF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,oBAAY,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;AAE9D,qBAAa,eAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAHX,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,cAAc,EAC5B,iBAAiB,EAAE,kBAAkB,EACrC,WAAW,EAAE,WAAW;IAG7B,qBAAqB,CACjC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,aAAa,GAAG,SAAS,EACvC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,kBAAkB,EACxC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,GACvB,OAAO,CAAC,aAAa,CAAC;IAKZ,qBAAqB,CACjC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,EAC5C,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAClC,cAAc,EAAE,KAAK,CAAC,kBAAkB,EACxC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,GACvB,OAAO,CAAC,oBAAoB,CAAC;IAYhC,OAAO,CAAC,sBAAsB;IAejB,sBAAsB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,aAAa,GAAG,SAAS,EACvC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,yBAAyB,EAC/C,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,EACzB,cAAc,EAAE,cAAc,GAC5B,OAAO,CAAC,aAAa,CAAC;IAaZ,sBAAsB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,EACvC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,YAAY,EAAE,KAAK,CAAC,yBAAyB,GAAG,KAAK,CAAC,0BAA0B,EAChF,cAAc,EAAE,KAAK,CAAC,yBAAyB,EAC/C,cAAc,EAAE,cAAc,EAC9B,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,GACvB,OAAO,CAAC,oBAAoB,CAAC;IAkChC,OAAO,CAAC,sBAAsB;YAyBhB,aAAa;IAiC3B,OAAO,CAAC,eAAe;CAqCvB"}
1
+ {"version":3,"file":"RelationFetcher.d.ts","sourceRoot":"","sources":["../../../../src/mapper/select/RelationFetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAS,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAa,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAG7D,OAAO,EAAE,oBAAoB,EAAiC,MAAM,kBAAkB,CAAA;AACtF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,oBAAY,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;AAE9D,aAAK,yBAAyB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,KAAK,CAAC,aAAa,GAAG,SAAS,CAAA;IACvC,YAAY,EAAE,KAAK,CAAC,MAAM,CAAA;IAC1B,cAAc,EAAE,KAAK,CAAC,kBAAkB,CAAA;IACxC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAA;CACzB,CAAA;AAED,aAAK,yBAAyB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAC5C,YAAY,EAAE,KAAK,CAAC,MAAM,CAAA;IAC1B,QAAQ,EAAE,KAAK,CAAC,kBAAkB,CAAA;IAClC,cAAc,EAAE,KAAK,CAAC,kBAAkB,CAAA;IACxC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAA;CACzB,CAAA;AAED,aAAK,mBAAmB,GACrB;IACD,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,KAAK,CAAC,MAAM,CAAA;IAC1B,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAA;CACzB,GAAG,CACD;IACD,aAAa,EAAE,QAAQ,CAAA;IACvB,cAAc,EAAE,KAAK,CAAC,yBAAyB,CAAA;IAC/C,cAAc,EAAE,KAAK,CAAC,0BAA0B,GAAG,IAAI,CAAA;CACvD,GACC;IACD,aAAa,EAAE,SAAS,CAAA;IACxB,cAAc,EAAE,KAAK,CAAC,0BAA0B,CAAA;IAChD,cAAc,EAAE,KAAK,CAAC,yBAAyB,CAAA;CAC/C,CACD,CAAA;AACF,aAAK,yBAAyB,GAC3B,mBAAmB,GACnB;IACD,MAAM,EAAE,KAAK,CAAC,aAAa,GAAG,SAAS,CAAA;CACvC,CAAA;AAEF,aAAK,0BAA0B,GAC5B,mBAAmB,GACnB;IACD,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;CACvC,CAAA;AAEF,qBAAa,eAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAHX,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,cAAc,EAC5B,iBAAiB,EAAE,kBAAkB,EACrC,WAAW,EAAE,WAAW;IAG7B,qBAAqB,CAAC,EAClC,MAAM,EACN,MAAM,EACN,YAAY,EACZ,cAAc,EACd,GAAG,GACH,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC;IAKxC,qBAAqB,CAAC,EAClC,MAAM,EACN,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,GAAG,GACH,EAAE,yBAAyB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAY5D,OAAO,CAAC,sBAAsB;IAejB,sBAAsB,CAAC,EACnC,MAAM,EACN,MAAM,EACN,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,GAAG,GACH,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC;IAexC,sBAAsB,CAAC,EACnC,MAAM,EACN,KAAK,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,aAAa,EACb,GAAG,GACH,EAAE,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAoC7D,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,sBAAsB;YAyBhB,aAAa;IAiC3B,OAAO,CAAC,eAAe;CAqCvB"}
@@ -11,11 +11,11 @@ class RelationFetcher {
11
11
  this.predicateInjector = predicateInjector;
12
12
  this.pathFactory = pathFactory;
13
13
  }
14
- async countOneHasManyGroups(mapper, filter, targetEntity, targetRelation, ids) {
14
+ async countOneHasManyGroups({ mapper, filter, targetEntity, targetRelation, ids, }) {
15
15
  const filterWithParent = this.createOneHasManyFilter(targetEntity, targetRelation, ids, filter);
16
16
  return mapper.countGrouped(targetEntity, filterWithParent, targetRelation);
17
17
  }
18
- async fetchOneHasManyGroups(mapper, objectNode, targetEntity, relation, targetRelation, ids) {
18
+ async fetchOneHasManyGroups({ mapper, objectNode, targetEntity, relation, targetRelation, ids, }) {
19
19
  const filter = this.createOneHasManyFilter(targetEntity, targetRelation, ids, objectNode.args.filter);
20
20
  const objectNodeWithWhere = objectNode.withArg('filter', filter);
21
21
  const objectNodeWithOrder = OrderByHelper_1.OrderByHelper.appendDefaultOrderBy(targetEntity, objectNodeWithWhere, relation.orderBy || []);
@@ -30,7 +30,9 @@ class RelationFetcher {
30
30
  : { and: [filter[targetRelation.name], targetRelationFilter] },
31
31
  };
32
32
  }
33
- async countManyHasManyGroups(mapper, filter, targetEntity, owningRelation, ids, joiningColumns) {
33
+ async countManyHasManyGroups({ mapper, filter, targetEntity, directionFrom, sourceRelation, targetRelation, ids, }) {
34
+ const owningRelation = directionFrom === 'owning' ? sourceRelation : targetRelation;
35
+ const joiningColumns = this.resolveJoiningColumns({ directionFrom, owningRelation });
34
36
  const qb = this.buildJunctionQb(owningRelation, ids, joiningColumns, targetEntity, { filter })
35
37
  .select(['junction_', joiningColumns.sourceColumn.columnName])
36
38
  .select(expr => expr.raw('count(*)'), 'row_count')
@@ -42,8 +44,10 @@ class RelationFetcher {
42
44
  }
43
45
  return Object.fromEntries(result);
44
46
  }
45
- async fetchManyHasManyGroups(mapper, field, targetEntity, fromRelation, owningRelation, joiningColumns, ids) {
46
- const defaultOrderBy = fromRelation.orderBy || [];
47
+ async fetchManyHasManyGroups({ mapper, field, sourceRelation, targetEntity, targetRelation, directionFrom, ids, }) {
48
+ const owningRelation = directionFrom === 'owning' ? sourceRelation : targetRelation;
49
+ const joiningColumns = this.resolveJoiningColumns({ directionFrom, owningRelation });
50
+ const defaultOrderBy = sourceRelation.orderBy || [];
47
51
  const objectNode = OrderByHelper_1.OrderByHelper.appendDefaultOrderBy(targetEntity, field, defaultOrderBy);
48
52
  const junctionValues = await this.fetchJunction(mapper.db, owningRelation, ids, joiningColumns, targetEntity, objectNode);
49
53
  if (junctionValues.length === 0) {
@@ -61,9 +65,18 @@ class RelationFetcher {
61
65
  },
62
66
  })
63
67
  .withField(primaryField);
64
- const result = await mapper.select(targetEntity, queryWithWhere);
68
+ const result = await mapper.select(targetEntity, queryWithWhere, targetRelation);
65
69
  return this.buildManyHasManyGroups(targetEntity, joiningColumns, result, junctionValues);
66
70
  }
71
+ resolveJoiningColumns({ directionFrom, owningRelation }) {
72
+ return directionFrom === 'owning' ? {
73
+ sourceColumn: owningRelation.joiningTable.joiningColumn,
74
+ targetColumn: owningRelation.joiningTable.inverseJoiningColumn,
75
+ } : {
76
+ sourceColumn: owningRelation.joiningTable.inverseJoiningColumn,
77
+ targetColumn: owningRelation.joiningTable.joiningColumn,
78
+ };
79
+ }
67
80
  buildManyHasManyGroups(entity, joiningColumns, resultObjects, junctionValues) {
68
81
  const dataById = {};
69
82
  for (let object of resultObjects) {
@@ -1 +1 @@
1
- {"version":3,"file":"RelationFetcher.js","sourceRoot":"","sources":["../../../../src/mapper/select/RelationFetcher.ts"],"names":[],"mappings":";;;AAEA,kDAA0F;AAI1F,2DAA6D;AAE7D,mDAA+C;AAM/C,MAAa,eAAe;IAC3B,YACkB,YAA0B,EAC1B,YAA4B,EAC5B,iBAAqC,EACrC,WAAwB;QAHxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,sBAAiB,GAAjB,iBAAiB,CAAoB;QACrC,gBAAW,GAAX,WAAW,CAAa;IACvC,CAAC;IAEG,KAAK,CAAC,qBAAqB,CACjC,MAAc,EACd,MAAuC,EACvC,YAA0B,EAC1B,cAAwC,EACxC,GAAyB;QAEzB,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;QAC/F,OAAO,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAA;IAC3E,CAAC;IAEM,KAAK,CAAC,qBAAqB,CACjC,MAAc,EACd,UAA4C,EAC5C,YAA0B,EAC1B,QAAkC,EAClC,cAAwC,EACxC,GAAyB;QAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrG,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,CAAuB,QAAQ,EAAE,MAAM,CAAC,CAAA;QACtF,MAAM,mBAAmB,GAAG,6BAAa,CAAC,oBAAoB,CAC7D,YAAY,EACZ,mBAAmB,EACnB,QAAQ,CAAC,OAAO,IAAI,EAAE,CACtB,CAAA;QAED,OAAO,MAAM,CAAC,aAAa,CAAC,YAAY,EAAE,mBAAmB,EAAE,cAAc,CAAC,CAAA;IAC/E,CAAC;IAEO,sBAAsB,CAC7B,YAA0B,EAC1B,cAAwC,EACxC,GAAyB,EACzB,MAAuC;QAEvC,MAAM,oBAAoB,GAAwB,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAA;QACzF,OAAO;YACN,GAAG,MAAM;YACT,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,cAAc,CAAC,IAAI,CAAC,CAAA;gBACpD,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,EAA0B;SACxF,CAAA;IACF,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAClC,MAAc,EACd,MAAuC,EACvC,YAA0B,EAC1B,cAA+C,EAC/C,GAAyB,EACzB,cAA8B;QAE9B,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,GAAG,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC;aAC5F,MAAM,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;aAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC;aACjD,OAAO,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;QACxC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACvB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAA;SACtF;QACD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAClC,MAAc,EACd,KAAuC,EACvC,YAA0B,EAC1B,YAAgF,EAChF,cAA+C,EAC/C,cAA8B,EAC9B,GAAyB;QAEzB,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,IAAI,EAAE,CAAA;QACjD,MAAM,UAAU,GAAG,6BAAa,CAAC,oBAAoB,CAAC,YAAY,EAAE,KAAK,EAAE,cAAc,CAAC,CAAA;QAE1F,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAC9C,MAAM,CAAC,EAAE,EACT,cAAc,EACd,GAAG,EACH,cAAc,EACd,YAAY,EACZ,UAAU,CACV,CAAA;QACD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAChC,OAAO,EAAE,CAAA;SACT;QAED,MAAM,YAAY,GAAG,IAAI,2BAAS,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAClF,MAAM,oBAAoB,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,CAAA;QACnE,MAAM,UAAU,GAAG,cAAc;aAC/B,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;aACnC,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAA;QAEvD,MAAM,cAAc,GAAG,UAAU;aAC/B,QAAQ,CAAC;YACT,MAAM,EAAE;gBACP,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;aAC1C;SACD,CAAC;aACD,SAAS,CAAC,YAAY,CAAC,CAAA;QACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;QAEhE,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,CAAC,CAAA;IACzF,CAAC;IAEO,sBAAsB,CAC7B,MAAoB,EACpB,cAA8B,EAC9B,aAAmC,EACnC,cAA2B;QAE3B,MAAM,QAAQ,GAAyC,EAAE,CAAA;QACzD,KAAK,IAAI,MAAM,IAAI,aAAa,EAAE;YACjC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAuB,CAAC,GAAG,MAAM,CAAA;SAC/D;QACD,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,CAAA;QAC3D,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,CAAA;QAC3D,MAAM,aAAa,GAAyB,EAAE,CAAA;QAC9C,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE;YAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,EAAE;gBAC7D,aAAa,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,GAAG,EAAE,CAAA;aAC5D;YACD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,CAAA;YACvE,IAAI,YAAY,EAAE;gBACjB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;aAC1E;SACD;QACD,OAAO,aAAa,CAAA;IACrB,CAAC;IAEO,KAAK,CAAC,aAAa,CAC1B,EAAU,EACV,QAAyC,EACzC,MAA4B,EAC5B,MAAsB,EACtB,YAA0B,EAC1B,MAAwC;QAExC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAA;QAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC;aAClF,MAAM,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;aACnE,MAAM,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;QAC9D,MAAM,OAAO,GAAG,IAAI,8BAAmB,CACtC,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAC7C,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE;YACjB,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE;gBACxB,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CACxC,EAAE,EACF,SAAS,EACT,YAAY,EACZ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAC3B,MAAM,CAAC,IAAI,CAAC,OAAO,CACnB,CAAA;aACD;YACD,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;QACvB,CAAC,EACD,MAAM,CAAC,IAAI,CAAC,MAAM,EAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CACjB,CAAA;QAED,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACvC,CAAC;IAEO,eAAe,CACtB,QAAyC,EACzC,GAAyB,EACzB,MAAsB,EACtB,YAA0B,EAC1B,UAAgC;QAEhC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAA;QAE1C,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,UAAU,CAAA;QAClD,IAAI,EAAE,GAAG,wBAAa,CAAC,MAAM,EAAE;aAC7B,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC;aACzC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;QAE7D,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;QAClF,MAAM,QAAQ,GAAG,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;QACvD,MAAM,eAAe,GACpB,UAAU,CAAC,OAAO;YAClB,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC7B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;YAC9B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAA;QAElD,IAAI,QAAQ,IAAI,eAAe,EAAE;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACxC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAC5D,SAAS,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE;gBACpF,IAAI,CAAC,KAAK;gBACV,YAAY,CAAC,aAAa;aAC1B,CAAC,CACF,CAAA;SACD;QAED,IAAI,KAAK,IAAI,QAAQ,EAAE;YACtB,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;SAClF;QACD,OAAO,EAAE,CAAA;IACV,CAAC;CACD;AAlND,0CAkNC"}
1
+ {"version":3,"file":"RelationFetcher.js","sourceRoot":"","sources":["../../../../src/mapper/select/RelationFetcher.ts"],"names":[],"mappings":";;;AAEA,kDAA0F;AAI1F,2DAA6D;AAE7D,mDAA+C;AAoD/C,MAAa,eAAe;IAC3B,YACkB,YAA0B,EAC1B,YAA4B,EAC5B,iBAAqC,EACrC,WAAwB;QAHxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,sBAAiB,GAAjB,iBAAiB,CAAoB;QACrC,gBAAW,GAAX,WAAW,CAAa;IACvC,CAAC;IAEG,KAAK,CAAC,qBAAqB,CAAC,EAClC,MAAM,EACN,MAAM,EACN,YAAY,EACZ,cAAc,EACd,GAAG,GACwB;QAC3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;QAC/F,OAAO,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAA;IAC3E,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,EAClC,MAAM,EACN,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,GAAG,GACwB;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrG,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,CAAuB,QAAQ,EAAE,MAAM,CAAC,CAAA;QACtF,MAAM,mBAAmB,GAAG,6BAAa,CAAC,oBAAoB,CAC7D,YAAY,EACZ,mBAAmB,EACnB,QAAQ,CAAC,OAAO,IAAI,EAAE,CACtB,CAAA;QAED,OAAO,MAAM,CAAC,aAAa,CAAC,YAAY,EAAE,mBAAmB,EAAE,cAAc,CAAC,CAAA;IAC/E,CAAC;IAEO,sBAAsB,CAC7B,YAA0B,EAC1B,cAAwC,EACxC,GAAyB,EACzB,MAAuC;QAEvC,MAAM,oBAAoB,GAAwB,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAA;QACzF,OAAO;YACN,GAAG,MAAM;YACT,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,cAAc,CAAC,IAAI,CAAC,CAAA;gBACpD,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,EAA0B;SACxF,CAAA;IACF,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,EACnC,MAAM,EACN,MAAM,EACN,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,GAAG,GACwB;QAC3B,MAAM,cAAc,GAAG,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAA;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,CAAA;QACpF,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,GAAG,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC;aAC5F,MAAM,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;aAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC;aACjD,OAAO,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;QACxC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACvB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAA;SACtF;QACD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,EACnC,MAAM,EACN,KAAK,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,aAAa,EACb,GAAG,GACyB;QAC5B,MAAM,cAAc,GAAG,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAA;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,CAAA;QACpF,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,IAAI,EAAE,CAAA;QACnD,MAAM,UAAU,GAAG,6BAAa,CAAC,oBAAoB,CAAC,YAAY,EAAE,KAAK,EAAE,cAAc,CAAC,CAAA;QAE1F,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAC9C,MAAM,CAAC,EAAE,EACT,cAAc,EACd,GAAG,EACH,cAAc,EACd,YAAY,EACZ,UAAU,CACV,CAAA;QACD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAChC,OAAO,EAAE,CAAA;SACT;QAED,MAAM,YAAY,GAAG,IAAI,2BAAS,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAClF,MAAM,oBAAoB,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,CAAA;QACnE,MAAM,UAAU,GAAG,cAAc;aAC/B,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;aACnC,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAA;QAEvD,MAAM,cAAc,GAAG,UAAU;aAC/B,QAAQ,CAAC;YACT,MAAM,EAAE;gBACP,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;aAC1C;SACD,CAAC;aACD,SAAS,CAAC,YAAY,CAAC,CAAA;QACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC,CAAA;QAEhF,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,CAAC,CAAA;IACzF,CAAC;IAEO,qBAAqB,CAAC,EAAE,aAAa,EAAE,cAAc,EAA4F;QACxJ,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC;YACnC,YAAY,EAAE,cAAc,CAAC,YAAY,CAAC,aAAa;YACvD,YAAY,EAAE,cAAc,CAAC,YAAY,CAAC,oBAAoB;SAC9D,CAAC,CAAC,CAAC;YACH,YAAY,EAAE,cAAc,CAAC,YAAY,CAAC,oBAAoB;YAC9D,YAAY,EAAE,cAAc,CAAC,YAAY,CAAC,aAAa;SACvD,CAAA;IACF,CAAC;IAEO,sBAAsB,CAC7B,MAAoB,EACpB,cAA8B,EAC9B,aAAmC,EACnC,cAA2B;QAE3B,MAAM,QAAQ,GAAyC,EAAE,CAAA;QACzD,KAAK,IAAI,MAAM,IAAI,aAAa,EAAE;YACjC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAuB,CAAC,GAAG,MAAM,CAAA;SAC/D;QACD,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,CAAA;QAC3D,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,CAAA;QAC3D,MAAM,aAAa,GAAyB,EAAE,CAAA;QAC9C,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE;YAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,EAAE;gBAC7D,aAAa,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,GAAG,EAAE,CAAA;aAC5D;YACD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,CAAA;YACvE,IAAI,YAAY,EAAE;gBACjB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAuB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;aAC1E;SACD;QACD,OAAO,aAAa,CAAA;IACrB,CAAC;IAEO,KAAK,CAAC,aAAa,CAC1B,EAAU,EACV,QAAyC,EACzC,MAA4B,EAC5B,MAAsB,EACtB,YAA0B,EAC1B,MAAwC;QAExC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAA;QAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC;aAClF,MAAM,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;aACnE,MAAM,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;QAC9D,MAAM,OAAO,GAAG,IAAI,8BAAmB,CACtC,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAC7C,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE;YACjB,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE;gBACxB,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CACxC,EAAE,EACF,SAAS,EACT,YAAY,EACZ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAC3B,MAAM,CAAC,IAAI,CAAC,OAAO,CACnB,CAAA;aACD;YACD,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;QACvB,CAAC,EACD,MAAM,CAAC,IAAI,CAAC,MAAM,EAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CACjB,CAAA;QAED,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACvC,CAAC;IAEO,eAAe,CACtB,QAAyC,EACzC,GAAyB,EACzB,MAAsB,EACtB,YAA0B,EAC1B,UAAgC;QAEhC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAA;QAE1C,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,UAAU,CAAA;QAClD,IAAI,EAAE,GAAG,wBAAa,CAAC,MAAM,EAAE;aAC7B,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC;aACzC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;QAE7D,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;QAClF,MAAM,QAAQ,GAAG,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;QACvD,MAAM,eAAe,GACpB,UAAU,CAAC,OAAO;YAClB,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC7B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;YAC9B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAA;QAElD,IAAI,QAAQ,IAAI,eAAe,EAAE;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACxC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAC5D,SAAS,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE;gBACpF,IAAI,CAAC,KAAK;gBACV,YAAY,CAAC,aAAa;aAC1B,CAAC,CACF,CAAA;SACD;QAED,IAAI,KAAK,IAAI,QAAQ,EAAE;YACtB,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;SAClF;QACD,OAAO,EAAE,CAAA;IACV,CAAC;CACD;AAjOD,0CAiOC"}
@@ -3,12 +3,14 @@ import { Path, PathFactory } from './Path';
3
3
  import { JoinBuilder } from './JoinBuilder';
4
4
  import { ConditionBuilder } from './ConditionBuilder';
5
5
  import { ConditionBuilder as SqlConditionBuilder, SelectBuilder } from '@contember/database';
6
+ import { WhereOptimizer } from './optimizer/WhereOptimizer';
6
7
  export declare class WhereBuilder {
7
8
  private readonly schema;
8
9
  private readonly joinBuilder;
9
10
  private readonly conditionBuilder;
10
11
  private readonly pathFactory;
11
- constructor(schema: Model.Schema, joinBuilder: JoinBuilder, conditionBuilder: ConditionBuilder, pathFactory: PathFactory);
12
+ private readonly whereOptimizer;
13
+ constructor(schema: Model.Schema, joinBuilder: JoinBuilder, conditionBuilder: ConditionBuilder, pathFactory: PathFactory, whereOptimizer: WhereOptimizer);
12
14
  build(qb: SelectBuilder<SelectBuilder.Result>, entity: Model.Entity, path: Path, where: Input.OptionalWhere, allowManyJoin?: boolean): SelectBuilder<SelectBuilder.Result>;
13
15
  buildAdvanced(entity: Model.Entity, path: Path, where: Input.OptionalWhere, callback: (clauseCb: (clause: SqlConditionBuilder) => SqlConditionBuilder) => SelectBuilder<SelectBuilder.Result>, allowManyJoin?: boolean): SelectBuilder<SelectBuilder.Result>;
14
16
  private buildInternal;
@@ -1 +1 @@
1
- {"version":3,"file":"WhereBuilder.d.ts","sourceRoot":"","sources":["../../../../src/mapper/select/WhereBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,gBAAgB,IAAI,mBAAmB,EAA0B,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEpH,qBAAa,YAAY;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAHX,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,WAAW;IAGnC,KAAK,CACX,EAAE,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,EACvC,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,aAAa,GAAE,OAAe;IAKxB,aAAa,CACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,mBAAmB,KAAK,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,EACjH,aAAa,GAAE,OAAe;IAW/B,OAAO,CAAC,aAAa;IA0IrB,OAAO,CAAC,yBAAyB;IAoCjC,OAAO,CAAC,gCAAgC;CA2CxC;AAED,oBAAY,mBAAmB,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAA"}
1
+ {"version":3,"file":"WhereBuilder.d.ts","sourceRoot":"","sources":["../../../../src/mapper/select/WhereBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,gBAAgB,IAAI,mBAAmB,EAA0B,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE3D,qBAAa,YAAY;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAJd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc;IAGzC,KAAK,CACX,EAAE,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,EACvC,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,aAAa,GAAE,OAAe;IAKxB,aAAa,CACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,mBAAmB,KAAK,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,EACjH,aAAa,GAAE,OAAe;IAY/B,OAAO,CAAC,aAAa;IA0IrB,OAAO,CAAC,yBAAyB;IAoCjC,OAAO,CAAC,gCAAgC;CA2CxC;AAED,oBAAY,mBAAmB,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAA"}
@@ -5,18 +5,20 @@ const utils_1 = require("../../utils");
5
5
  const schema_utils_1 = require("@contember/schema-utils");
6
6
  const database_1 = require("@contember/database");
7
7
  class WhereBuilder {
8
- constructor(schema, joinBuilder, conditionBuilder, pathFactory) {
8
+ constructor(schema, joinBuilder, conditionBuilder, pathFactory, whereOptimizer) {
9
9
  this.schema = schema;
10
10
  this.joinBuilder = joinBuilder;
11
11
  this.conditionBuilder = conditionBuilder;
12
12
  this.pathFactory = pathFactory;
13
+ this.whereOptimizer = whereOptimizer;
13
14
  }
14
15
  build(qb, entity, path, where, allowManyJoin = false) {
15
16
  return this.buildAdvanced(entity, path, where, cb => qb.where(clause => cb(clause)), allowManyJoin);
16
17
  }
17
18
  buildAdvanced(entity, path, where, callback, allowManyJoin = false) {
19
+ const optimizedWhere = this.whereOptimizer.optimize(where, entity);
18
20
  const joinList = [];
19
- const qbWithWhere = callback(clause => this.buildInternal(clause, entity, path, where, allowManyJoin, joinList));
21
+ const qbWithWhere = callback(clause => this.buildInternal(clause, entity, path, optimizedWhere, allowManyJoin, joinList));
20
22
  return joinList.reduce((qb, { path, entity, relationName }) => this.joinBuilder.join(qb, path, entity, relationName), qbWithWhere);
21
23
  }
22
24
  buildInternal(conditionBuilder, entity, path, where, allowManyJoin, joinList) {
@@ -1 +1 @@
1
- {"version":3,"file":"WhereBuilder.js","sourceRoot":"","sources":["../../../../src/mapper/select/WhereBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WhereBuilder.js","sourceRoot":"","sources":["../../../../src/mapper/select/WhereBuilder.ts"],"names":[],"mappings":";;;AAAA,uCAAkC;AAClC,0DAA4D;AAK5D,kDAAoH;AAGpH,MAAa,YAAY;IACxB,YACkB,MAAoB,EACpB,WAAwB,EACxB,gBAAkC,EAClC,WAAwB,EACxB,cAA8B;QAJ9B,WAAM,GAAN,MAAM,CAAc;QACpB,gBAAW,GAAX,WAAW,CAAa;QACxB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;IAC7C,CAAC;IAEG,KAAK,CACX,EAAuC,EACvC,MAAoB,EACpB,IAAU,EACV,KAA0B,EAC1B,gBAAyB,KAAK;QAE9B,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAA;IACpG,CAAC;IAEM,aAAa,CACnB,MAAoB,EACpB,IAAU,EACV,KAA0B,EAC1B,QAAiH,EACjH,gBAAyB,KAAK;QAE9B,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAClE,MAAM,QAAQ,GAA0B,EAAE,CAAA;QAE1C,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;QACzH,OAAO,QAAQ,CAAC,MAAM,CACrB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAC7F,WAAW,CACX,CAAA;IACF,CAAC;IAEO,aAAa,CACpB,gBAAqC,EACrC,MAAoB,EACpB,IAAU,EACV,KAAkB,EAClB,aAAsB,EACtB,QAA+B;QAE/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAA;QAE5B,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAA;YACtB,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAChD,IAAI,CAAC,MAAM,CACV,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAClB,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,EAC7F,MAAM,CACN,CACD,CAAA;SACD;QACD,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YAClD,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAA;YACrB,gBAAgB,GAAG,gBAAgB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAC/C,IAAI,CAAC,MAAM,CACV,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAClB,CAAC,KAAK;gBACL,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,EACrG,MAAM,CACN,CACD,CAAA;SACD;QACD,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;YAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAA;YACtB,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAChD,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,CAAC,CACvE,CAAA;SACD;QAED,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE;YAC9B,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,KAAK,EAAE;gBACrE,SAAQ;aACR;YAED,MAAM,WAAW,GAAG,CACnB,MAAoB,EACpB,QAAwB,EACxB,YAA0B,EACJ,EAAE;gBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBACtC,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAgB,CAAA;gBACrD,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5C,OAAO,gBAAgB,CAAA;iBACvB;gBACD,IAAI,IAAA,YAAI,EAA8B,QAAQ,EAAE,eAAe,CAAC,EAAE;oBACjE,MAAM,gBAAgB,GAAG,IAAI,CAAC,gCAAgC,CAAC,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;oBACnG,IAAI,gBAAgB,KAAK,IAAI,EAAE;wBAC9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CACjC,gBAAgB,EAChB,SAAS,EACT,QAAQ,CAAC,aAAa,CAAC,UAAU,EAChC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAqB,CAAC,UAAU,EACzE,gBAAgB,CAChB,CAAA;qBACD;iBACD;gBAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;gBAExE,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;YAC9G,CAAC,CAAA;YAED,gBAAgB,GAAG,IAAA,iCAAkB,EAAsB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE;gBAC1F,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;oBAC/B,MAAM,QAAQ,GAAuC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAuC,CAAA;oBAC7G,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;gBAChH,CAAC;gBACD,qBAAqB,EAAE,WAAW;gBAClC,oBAAoB,EAAE,WAAW;gBACjC,eAAe,EAAE,WAAW;gBAC5B,uBAAuB,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE;oBAC3E,IAAI,aAAa,EAAE;wBAClB,OAAO,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;qBAClD;oBACD,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAgB,CAAA;oBAErD,OAAO,gBAAgB,CAAC,MAAM,CAC7B,IAAI,CAAC,yBAAyB,CAC7B,CAAC,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,EACjC,aAAa,EACb,YAAY,EACZ,cAAc,CAAC,YAAY,EAC3B,SAAS,CACT,CACD,CAAA;gBACF,CAAC;gBACD,sBAAsB,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE;oBAC1D,IAAI,aAAa,EAAE;wBAClB,OAAO,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;qBAClD;oBAED,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAgB,CAAA;oBAErD,OAAO,gBAAgB,CAAC,MAAM,CAC7B,IAAI,CAAC,yBAAyB,CAC7B,CAAC,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,EACjC,aAAa,EACb,YAAY,EACZ,QAAQ,CAAC,YAAY,EACrB,QAAQ,CACR,CACD,CAAA;gBACF,CAAC;gBACD,eAAe,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE;oBACnE,IAAI,aAAa,EAAE;wBAClB,OAAO,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;qBAClD;oBAED,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAgB,CAAA;oBAErD,OAAO,gBAAgB,CAAC,MAAM,CAC7B,IAAI,CAAC,KAAK,CACT,wBAAa,CAAC,MAAM,EAAE;yBACpB,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;yBACzB,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC;yBACpC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,EACjH,YAAY,EACZ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EACnC,aAAa,EACb,IAAI,CACJ,CACD,CAAA;gBACF,CAAC;aACD,CAAC,CAAA;SACF;QACD,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEO,yBAAyB,CAChC,WAA0C,EAC1C,aAA0B,EAC1B,YAA0B,EAC1B,YAAgC,EAChC,QAA8B;QAE9B,MAAM,UAAU,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,oBAAoB,CAAC,UAAU,CAAA;QAC/H,MAAM,QAAQ,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU,CAAA;QAC7H,MAAM,EAAE,GAAG,wBAAa,CAAC,MAAM,EAAwB;aACrD,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC;aACzC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACzB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;QAEnE,MAAM,gBAAgB,GAAG,IAAI,CAAC,gCAAgC,CAAC,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;QACnG,IAAI,gBAAgB,KAAK,IAAI,EAAE;YAE9B,MAAM,UAAU,GAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAqB,CAAC,UAAU,CAAA;YAE5F,OAAO,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAC3B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAC3F,CAAA;SACD;QAED,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CACjE,MAAM,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAC3F,CAAA;QACD,OAAO,IAAI,CAAC,aAAa,CACxB,YAAY,EACZ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EACnC,aAAa,EACb,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAC1C,IAAI,CACJ,CAAA;IACF,CAAC;IAEO,gCAAgC,CAAC,KAAkB,EAAE,YAAoB;QAChF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACnF,OAAO,IAAI,CAAA;SACX;QACD,IAAI,SAAS,GAIT,EAAE,CAAA;QACN,IAAI,KAAK,CAAC,GAAG,EAAE;YACd,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG;iBAC1B,MAAM,CAAC,CAAC,EAAE,EAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,gCAAgC,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAA;YACpE,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,IAAI,CAAA;aACX;YACD,SAAS,CAAC,GAAG,GAAG,UAAsC,CAAA;SACtD;QACD,IAAI,KAAK,CAAC,EAAE,EAAE;YACb,MAAM,UAAU,GAAG,KAAK,CAAC,EAAE;iBACzB,MAAM,CAAC,CAAC,EAAE,EAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,gCAAgC,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAA;YACpE,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,IAAI,CAAA;aACX;YACD,SAAS,CAAC,EAAE,GAAG,UAAsC,CAAA;SACrD;QACD,IAAI,KAAK,CAAC,GAAG,EAAE;YACd,MAAM,UAAU,GAAG,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;YACjF,IAAI,UAAU,KAAK,IAAI,EAAE;gBACxB,OAAO,IAAI,CAAA;aACX;YACD,SAAS,CAAC,GAAG,GAAG,UAAoC,CAAA;SACpD;QACD,IAAI,KAAK,CAAC,YAAY,CAAC,EAAE;YACxB,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAA2B,CAAC,EAAE,CAAA;aAC1E;YACD,OAAO,KAAK,CAAC,YAAY,CAA2B,CAAA;SACpD;QACD,OAAO,SAAS,CAAA;IACjB,CAAC;CACD;AA7PD,oCA6PC"}
@@ -14,10 +14,10 @@ export declare class FieldsVisitor implements Model.RelationByTypeVisitor<void>,
14
14
  constructor(schema: Model.Schema, relationFetcher: RelationFetcher, predicateFactory: PredicateFactory, whereBuilder: WhereBuilder, mapper: Mapper, executionContext: SelectExecutionHandlerContext);
15
15
  visitColumn(entity: Model.Entity, column: Model.AnyColumn): void;
16
16
  visitManyHasManyInverse(entity: Model.Entity, relation: Model.ManyHasManyInverseRelation, targetEntity: Model.Entity, targetRelation: Model.ManyHasManyOwningRelation): void;
17
- visitManyHasManyOwning(entity: Model.Entity, relation: Model.ManyHasManyOwningRelation, targetEntity: Model.Entity): void;
17
+ visitManyHasManyOwning(entity: Model.Entity, relation: Model.ManyHasManyOwningRelation, targetEntity: Model.Entity, targetRelation: Model.ManyHasManyInverseRelation | null): void;
18
18
  visitOneHasMany(entity: Model.Entity, relation: Model.OneHasManyRelation, targetEntity: Model.Entity, targetRelation: Model.ManyHasOneRelation): void;
19
19
  visitOneHasOneInverse(entity: Model.Entity, relation: Model.OneHasOneInverseRelation, targetEntity: Model.Entity, targetRelation: Model.OneHasOneOwningRelation): void;
20
20
  visitOneHasOneOwning(entity: Model.Entity, relation: Model.OneHasOneOwningRelation, targetEntity: Model.Entity, targetRelation: Model.OneHasOneInverseRelation | null): void;
21
- visitManyHasOne(entity: Model.Entity, relation: Model.ManyHasOneRelation, targetEntity: Model.Entity): void;
21
+ visitManyHasOne(entity: Model.Entity, relation: Model.ManyHasOneRelation, targetEntity: Model.Entity, targetRelation: Model.OneHasManyRelation | null): void;
22
22
  }
23
23
  //# sourceMappingURL=FieldsVisitor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldsVisitor.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C,qBAAa,aAAc,YAAW,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;IAEhG,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBALhB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,6BAA6B;IAGjE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI;IAkCzD,uBAAuB,CAC7B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,0BAA0B,EAC1C,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,yBAAyB,GAC7C,IAAI;IA0BA,sBAAsB,CAC5B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,yBAAyB,EACzC,YAAY,EAAE,KAAK,CAAC,MAAM,GACxB,IAAI;IAmBA,eAAe,CACrB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAClC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,kBAAkB,GACtC,IAAI;IAcA,qBAAqB,CAC3B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,wBAAwB,EACxC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,uBAAuB,GAC3C,IAAI;IA0BA,oBAAoB,CAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,uBAAuB,EACvC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,wBAAwB,GAAG,IAAI,GACnD,IAAI;IAwBA,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAAE,YAAY,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI;CAuBlH"}
1
+ {"version":3,"file":"FieldsVisitor.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,qBAAa,aAAc,YAAW,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;IAEhG,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBALhB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,6BAA6B;IAGjE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI;IAkCzD,uBAAuB,CAC7B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,0BAA0B,EAC1C,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,yBAAyB,GAC7C,IAAI;IAuBA,sBAAsB,CAC5B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,yBAAyB,EACzC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,0BAA0B,GAAG,IAAI,GACrD,IAAI;IAsBA,eAAe,CACrB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAClC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,kBAAkB,GACtC,IAAI;IAqBA,qBAAqB,CAC3B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,wBAAwB,EACxC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,uBAAuB,GAC3C,IAAI;IA0BA,oBAAoB,CAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,uBAAuB,EACvC,YAAY,EAAE,KAAK,CAAC,MAAM,EAC1B,cAAc,EAAE,KAAK,CAAC,wBAAwB,GAAG,IAAI,GACnD,IAAI;IAwBA,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,kBAAkB,EAAE,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC,kBAAkB,GAAG,IAAI,GAAG,IAAI;CAuBnK"}