@contember/engine-content-api 2.1.0-alpha.37 → 2.1.0-alpha.39

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 (1751) hide show
  1. package/dist/development/index.cjs +141 -0
  2. package/dist/development/index.cjs.map +1 -0
  3. package/dist/development/index.js +138 -0
  4. package/dist/development/index.js.map +1 -0
  5. package/dist/development/src/ExecutionContainer.cjs +166 -0
  6. package/dist/development/src/ExecutionContainer.cjs.map +1 -0
  7. package/dist/development/src/ExecutionContainer.js +166 -0
  8. package/dist/development/src/ExecutionContainer.js.map +1 -0
  9. package/dist/development/src/acl/Authorizator.cjs +54 -0
  10. package/dist/development/src/acl/Authorizator.cjs.map +1 -0
  11. package/dist/development/src/acl/Authorizator.js +54 -0
  12. package/dist/development/src/acl/Authorizator.js.map +1 -0
  13. package/dist/development/src/acl/EvaluatedPredicateReplacer.cjs +27 -0
  14. package/dist/development/src/acl/EvaluatedPredicateReplacer.cjs.map +1 -0
  15. package/dist/development/src/acl/EvaluatedPredicateReplacer.js +27 -0
  16. package/dist/development/src/acl/EvaluatedPredicateReplacer.js.map +1 -0
  17. package/dist/development/src/acl/PermissionFactory.cjs +243 -0
  18. package/dist/development/src/acl/PermissionFactory.cjs.map +1 -0
  19. package/dist/development/src/acl/PermissionFactory.js +243 -0
  20. package/dist/development/src/acl/PermissionFactory.js.map +1 -0
  21. package/dist/development/src/acl/PredicateFactory.cjs +109 -0
  22. package/dist/development/src/acl/PredicateFactory.cjs.map +1 -0
  23. package/dist/development/src/acl/PredicateFactory.js +109 -0
  24. package/dist/development/src/acl/PredicateFactory.js.map +1 -0
  25. package/dist/development/src/acl/PredicatesInjector.cjs +147 -0
  26. package/dist/development/src/acl/PredicatesInjector.cjs.map +1 -0
  27. package/dist/development/src/acl/PredicatesInjector.js +147 -0
  28. package/dist/development/src/acl/PredicatesInjector.js.map +1 -0
  29. package/dist/development/src/acl/VariableInjector.cjs +38 -0
  30. package/dist/development/src/acl/VariableInjector.cjs.map +1 -0
  31. package/dist/development/src/acl/VariableInjector.js +38 -0
  32. package/dist/development/src/acl/VariableInjector.js.map +1 -0
  33. package/dist/development/src/acl/VariableUtils.cjs +20 -0
  34. package/dist/development/src/acl/VariableUtils.cjs.map +1 -0
  35. package/dist/development/src/acl/VariableUtils.js +20 -0
  36. package/dist/development/src/acl/VariableUtils.js.map +1 -0
  37. package/dist/development/src/exception.cjs +20 -0
  38. package/dist/development/src/exception.cjs.map +1 -0
  39. package/dist/development/src/exception.js +20 -0
  40. package/dist/development/src/exception.js.map +1 -0
  41. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.cjs +28 -0
  42. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.cjs.map +1 -0
  43. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.js +28 -0
  44. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.js.map +1 -0
  45. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.cjs +50 -0
  46. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.cjs.map +1 -0
  47. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js +50 -0
  48. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js.map +1 -0
  49. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.cjs +111 -0
  50. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.cjs.map +1 -0
  51. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js +111 -0
  52. package/dist/development/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js.map +1 -0
  53. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.cjs +58 -0
  54. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.cjs.map +1 -0
  55. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js +58 -0
  56. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js.map +1 -0
  57. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.cjs +44 -0
  58. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.cjs.map +1 -0
  59. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.js +44 -0
  60. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.js.map +1 -0
  61. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.cjs +24 -0
  62. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.cjs.map +1 -0
  63. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.js +24 -0
  64. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.js.map +1 -0
  65. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.cjs +54 -0
  66. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.cjs.map +1 -0
  67. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js +54 -0
  68. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js.map +1 -0
  69. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.cjs +58 -0
  70. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.cjs.map +1 -0
  71. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js +58 -0
  72. package/dist/development/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js.map +1 -0
  73. package/dist/development/src/input-validation/ColumnValueResolver.cjs +23 -0
  74. package/dist/development/src/input-validation/ColumnValueResolver.cjs.map +1 -0
  75. package/dist/development/src/input-validation/ColumnValueResolver.js +23 -0
  76. package/dist/development/src/input-validation/ColumnValueResolver.js.map +1 -0
  77. package/dist/development/src/input-validation/EntityRulesResolver.cjs +77 -0
  78. package/dist/development/src/input-validation/EntityRulesResolver.cjs.map +1 -0
  79. package/dist/development/src/input-validation/EntityRulesResolver.js +77 -0
  80. package/dist/development/src/input-validation/EntityRulesResolver.js.map +1 -0
  81. package/dist/development/src/input-validation/QueryAstFactory.cjs +47 -0
  82. package/dist/development/src/input-validation/QueryAstFactory.cjs.map +1 -0
  83. package/dist/development/src/input-validation/QueryAstFactory.js +47 -0
  84. package/dist/development/src/input-validation/QueryAstFactory.js.map +1 -0
  85. package/dist/development/src/input-validation/ValidationContext.cjs +102 -0
  86. package/dist/development/src/input-validation/ValidationContext.cjs.map +1 -0
  87. package/dist/development/src/input-validation/ValidationContext.js +103 -0
  88. package/dist/development/src/input-validation/ValidationContext.js.map +1 -0
  89. package/dist/development/src/input-validation/ValidationDataSelector.cjs +24 -0
  90. package/dist/development/src/input-validation/ValidationDataSelector.cjs.map +1 -0
  91. package/dist/development/src/input-validation/ValidationDataSelector.js +24 -0
  92. package/dist/development/src/input-validation/ValidationDataSelector.js.map +1 -0
  93. package/dist/development/src/input-validation/ValidationEvaluation.cjs +200 -0
  94. package/dist/development/src/input-validation/ValidationEvaluation.cjs.map +1 -0
  95. package/dist/development/src/input-validation/ValidationEvaluation.js +200 -0
  96. package/dist/development/src/input-validation/ValidationEvaluation.js.map +1 -0
  97. package/dist/development/src/input-validation/ValidationPath.cjs +11 -0
  98. package/dist/development/src/input-validation/ValidationPath.cjs.map +1 -0
  99. package/dist/development/src/input-validation/ValidationPath.js +11 -0
  100. package/dist/development/src/input-validation/ValidationPath.js.map +1 -0
  101. package/dist/development/src/input-validation/dependencies/DependencyCollector.cjs +48 -0
  102. package/dist/development/src/input-validation/dependencies/DependencyCollector.cjs.map +1 -0
  103. package/dist/development/src/input-validation/dependencies/DependencyCollector.js +48 -0
  104. package/dist/development/src/input-validation/dependencies/DependencyCollector.js.map +1 -0
  105. package/dist/development/src/input-validation/dependencies/DependencyMerger.cjs +11 -0
  106. package/dist/development/src/input-validation/dependencies/DependencyMerger.cjs.map +1 -0
  107. package/dist/development/src/input-validation/dependencies/DependencyMerger.js +11 -0
  108. package/dist/development/src/input-validation/dependencies/DependencyMerger.js.map +1 -0
  109. package/dist/development/src/input-validation/exceptions.cjs +6 -0
  110. package/dist/development/src/input-validation/exceptions.cjs.map +1 -0
  111. package/dist/development/src/input-validation/exceptions.js +6 -0
  112. package/dist/development/src/input-validation/exceptions.js.map +1 -0
  113. package/dist/development/src/input-validation/preValidation/CreateInputPreValidationProcessor.cjs +59 -0
  114. package/dist/development/src/input-validation/preValidation/CreateInputPreValidationProcessor.cjs.map +1 -0
  115. package/dist/development/src/input-validation/preValidation/CreateInputPreValidationProcessor.js +59 -0
  116. package/dist/development/src/input-validation/preValidation/CreateInputPreValidationProcessor.js.map +1 -0
  117. package/dist/development/src/input-validation/preValidation/InputPreValidator.cjs +130 -0
  118. package/dist/development/src/input-validation/preValidation/InputPreValidator.cjs.map +1 -0
  119. package/dist/development/src/input-validation/preValidation/InputPreValidator.js +130 -0
  120. package/dist/development/src/input-validation/preValidation/InputPreValidator.js.map +1 -0
  121. package/dist/development/src/input-validation/preValidation/UpdateInputPreValidationProcessor.cjs +114 -0
  122. package/dist/development/src/input-validation/preValidation/UpdateInputPreValidationProcessor.cjs.map +1 -0
  123. package/dist/development/src/input-validation/preValidation/UpdateInputPreValidationProcessor.js +114 -0
  124. package/dist/development/src/input-validation/preValidation/UpdateInputPreValidationProcessor.js.map +1 -0
  125. package/dist/development/src/inputProcessing/CreateInputVisitor.cjs +121 -0
  126. package/dist/development/src/inputProcessing/CreateInputVisitor.cjs.map +1 -0
  127. package/dist/development/src/inputProcessing/CreateInputVisitor.js +121 -0
  128. package/dist/development/src/inputProcessing/CreateInputVisitor.js.map +1 -0
  129. package/dist/development/src/inputProcessing/FieldNode.cjs +11 -0
  130. package/dist/development/src/inputProcessing/FieldNode.cjs.map +1 -0
  131. package/dist/development/src/inputProcessing/FieldNode.js +11 -0
  132. package/dist/development/src/inputProcessing/FieldNode.js.map +1 -0
  133. package/dist/development/src/inputProcessing/ObjectNode.cjs +43 -0
  134. package/dist/development/src/inputProcessing/ObjectNode.cjs.map +1 -0
  135. package/dist/development/src/inputProcessing/ObjectNode.js +43 -0
  136. package/dist/development/src/inputProcessing/ObjectNode.js.map +1 -0
  137. package/dist/development/src/inputProcessing/UniqueWhereExpander.cjs +59 -0
  138. package/dist/development/src/inputProcessing/UniqueWhereExpander.cjs.map +1 -0
  139. package/dist/development/src/inputProcessing/UniqueWhereExpander.js +59 -0
  140. package/dist/development/src/inputProcessing/UniqueWhereExpander.js.map +1 -0
  141. package/dist/development/src/inputProcessing/UpdateInputVisitor.cjs +153 -0
  142. package/dist/development/src/inputProcessing/UpdateInputVisitor.cjs.map +1 -0
  143. package/dist/development/src/inputProcessing/UpdateInputVisitor.js +153 -0
  144. package/dist/development/src/inputProcessing/UpdateInputVisitor.js.map +1 -0
  145. package/dist/development/src/introspection/IntrospectionSchemaDefinitionFactory.cjs +19 -0
  146. package/dist/development/src/introspection/IntrospectionSchemaDefinitionFactory.cjs.map +1 -0
  147. package/dist/development/src/introspection/IntrospectionSchemaDefinitionFactory.js +19 -0
  148. package/dist/development/src/introspection/IntrospectionSchemaDefinitionFactory.js.map +1 -0
  149. package/dist/development/src/introspection/IntrospectionSchemaFactory.cjs +157 -0
  150. package/dist/development/src/introspection/IntrospectionSchemaFactory.cjs.map +1 -0
  151. package/dist/development/src/introspection/IntrospectionSchemaFactory.js +157 -0
  152. package/dist/development/src/introspection/IntrospectionSchemaFactory.js.map +1 -0
  153. package/dist/development/src/introspection/content-schema.types.cjs +22 -0
  154. package/dist/development/src/introspection/content-schema.types.cjs.map +1 -0
  155. package/dist/development/src/introspection/content-schema.types.js +22 -0
  156. package/dist/development/src/introspection/content-schema.types.js.map +1 -0
  157. package/dist/development/src/introspection/introspection.schema.cjs +163 -0
  158. package/dist/development/src/introspection/introspection.schema.cjs.map +1 -0
  159. package/dist/development/src/introspection/introspection.schema.js +163 -0
  160. package/dist/development/src/introspection/introspection.schema.js.map +1 -0
  161. package/dist/development/src/mapper/CheckedPrimary.cjs +9 -0
  162. package/dist/development/src/mapper/CheckedPrimary.cjs.map +1 -0
  163. package/dist/development/src/mapper/CheckedPrimary.js +9 -0
  164. package/dist/development/src/mapper/CheckedPrimary.js.map +1 -0
  165. package/dist/development/src/mapper/ColumnValue.cjs +15 -0
  166. package/dist/development/src/mapper/ColumnValue.cjs.map +1 -0
  167. package/dist/development/src/mapper/ColumnValue.js +15 -0
  168. package/dist/development/src/mapper/ColumnValue.js.map +1 -0
  169. package/dist/development/src/mapper/ErrorUtils.cjs +130 -0
  170. package/dist/development/src/mapper/ErrorUtils.cjs.map +1 -0
  171. package/dist/development/src/mapper/ErrorUtils.js +113 -0
  172. package/dist/development/src/mapper/ErrorUtils.js.map +1 -0
  173. package/dist/development/src/mapper/EventManager.cjs +116 -0
  174. package/dist/development/src/mapper/EventManager.cjs.map +1 -0
  175. package/dist/development/src/mapper/EventManager.js +116 -0
  176. package/dist/development/src/mapper/EventManager.js.map +1 -0
  177. package/dist/development/src/mapper/JunctionTableManager.cjs +187 -0
  178. package/dist/development/src/mapper/JunctionTableManager.cjs.map +1 -0
  179. package/dist/development/src/mapper/JunctionTableManager.js +187 -0
  180. package/dist/development/src/mapper/JunctionTableManager.js.map +1 -0
  181. package/dist/development/src/mapper/Mapper.cjs +227 -0
  182. package/dist/development/src/mapper/Mapper.cjs.map +1 -0
  183. package/dist/development/src/mapper/Mapper.js +227 -0
  184. package/dist/development/src/mapper/Mapper.js.map +1 -0
  185. package/dist/development/src/mapper/MapperFactory.cjs +58 -0
  186. package/dist/development/src/mapper/MapperFactory.cjs.map +1 -0
  187. package/dist/development/src/mapper/MapperFactory.js +58 -0
  188. package/dist/development/src/mapper/MapperFactory.js.map +1 -0
  189. package/dist/development/src/mapper/MutationProcessorHelper.cjs +28 -0
  190. package/dist/development/src/mapper/MutationProcessorHelper.cjs.map +1 -0
  191. package/dist/development/src/mapper/MutationProcessorHelper.js +28 -0
  192. package/dist/development/src/mapper/MutationProcessorHelper.js.map +1 -0
  193. package/dist/development/src/mapper/Result.cjs +242 -0
  194. package/dist/development/src/mapper/Result.cjs.map +1 -0
  195. package/dist/development/src/mapper/Result.js +242 -0
  196. package/dist/development/src/mapper/Result.js.map +1 -0
  197. package/dist/development/src/mapper/delete/DeleteExecutor.cjs +210 -0
  198. package/dist/development/src/mapper/delete/DeleteExecutor.cjs.map +1 -0
  199. package/dist/development/src/mapper/delete/DeleteExecutor.js +210 -0
  200. package/dist/development/src/mapper/delete/DeleteExecutor.js.map +1 -0
  201. package/dist/development/src/mapper/delete/DeleteState.cjs +70 -0
  202. package/dist/development/src/mapper/delete/DeleteState.cjs.map +1 -0
  203. package/dist/development/src/mapper/delete/DeleteState.js +70 -0
  204. package/dist/development/src/mapper/delete/DeleteState.js.map +1 -0
  205. package/dist/development/src/mapper/delete/DeletedEntitiesStorage.cjs +26 -0
  206. package/dist/development/src/mapper/delete/DeletedEntitiesStorage.cjs.map +1 -0
  207. package/dist/development/src/mapper/delete/DeletedEntitiesStorage.js +26 -0
  208. package/dist/development/src/mapper/delete/DeletedEntitiesStorage.js.map +1 -0
  209. package/dist/development/src/mapper/delete/helpers.cjs +49 -0
  210. package/dist/development/src/mapper/delete/helpers.cjs.map +1 -0
  211. package/dist/development/src/mapper/delete/helpers.js +49 -0
  212. package/dist/development/src/mapper/delete/helpers.js.map +1 -0
  213. package/dist/development/src/mapper/insert/InsertBuilder.cjs +68 -0
  214. package/dist/development/src/mapper/insert/InsertBuilder.cjs.map +1 -0
  215. package/dist/development/src/mapper/insert/InsertBuilder.js +68 -0
  216. package/dist/development/src/mapper/insert/InsertBuilder.js.map +1 -0
  217. package/dist/development/src/mapper/insert/InsertBuilderFactory.cjs +16 -0
  218. package/dist/development/src/mapper/insert/InsertBuilderFactory.cjs.map +1 -0
  219. package/dist/development/src/mapper/insert/InsertBuilderFactory.js +16 -0
  220. package/dist/development/src/mapper/insert/InsertBuilderFactory.js.map +1 -0
  221. package/dist/development/src/mapper/insert/Inserter.cjs +73 -0
  222. package/dist/development/src/mapper/insert/Inserter.cjs.map +1 -0
  223. package/dist/development/src/mapper/insert/Inserter.js +73 -0
  224. package/dist/development/src/mapper/insert/Inserter.js.map +1 -0
  225. package/dist/development/src/mapper/insert/SqlCreateInputProcessor.cjs +77 -0
  226. package/dist/development/src/mapper/insert/SqlCreateInputProcessor.cjs.map +1 -0
  227. package/dist/development/src/mapper/insert/SqlCreateInputProcessor.js +77 -0
  228. package/dist/development/src/mapper/insert/SqlCreateInputProcessor.js.map +1 -0
  229. package/dist/development/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.cjs +43 -0
  230. package/dist/development/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.cjs.map +1 -0
  231. package/dist/development/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.js +43 -0
  232. package/dist/development/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.js.map +1 -0
  233. package/dist/development/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.cjs +40 -0
  234. package/dist/development/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.cjs.map +1 -0
  235. package/dist/development/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.js +40 -0
  236. package/dist/development/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.js.map +1 -0
  237. package/dist/development/src/mapper/insert/relations/OneHasManyCreateInputProcessor.cjs +38 -0
  238. package/dist/development/src/mapper/insert/relations/OneHasManyCreateInputProcessor.cjs.map +1 -0
  239. package/dist/development/src/mapper/insert/relations/OneHasManyCreateInputProcessor.js +38 -0
  240. package/dist/development/src/mapper/insert/relations/OneHasManyCreateInputProcessor.js.map +1 -0
  241. package/dist/development/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.cjs +63 -0
  242. package/dist/development/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.cjs.map +1 -0
  243. package/dist/development/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.js +63 -0
  244. package/dist/development/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.js.map +1 -0
  245. package/dist/development/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.cjs +65 -0
  246. package/dist/development/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.cjs.map +1 -0
  247. package/dist/development/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.js +65 -0
  248. package/dist/development/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.js.map +1 -0
  249. package/dist/development/src/mapper/select/ConditionBuilder.cjs +59 -0
  250. package/dist/development/src/mapper/select/ConditionBuilder.cjs.map +1 -0
  251. package/dist/development/src/mapper/select/ConditionBuilder.js +59 -0
  252. package/dist/development/src/mapper/select/ConditionBuilder.js.map +1 -0
  253. package/dist/development/src/mapper/select/JoinBuilder.cjs +31 -0
  254. package/dist/development/src/mapper/select/JoinBuilder.cjs.map +1 -0
  255. package/dist/development/src/mapper/select/JoinBuilder.js +31 -0
  256. package/dist/development/src/mapper/select/JoinBuilder.js.map +1 -0
  257. package/dist/development/src/mapper/select/JoinVisitor.cjs +90 -0
  258. package/dist/development/src/mapper/select/JoinVisitor.cjs.map +1 -0
  259. package/dist/development/src/mapper/select/JoinVisitor.js +90 -0
  260. package/dist/development/src/mapper/select/JoinVisitor.js.map +1 -0
  261. package/dist/development/src/mapper/select/OrderByBuilder.cjs +64 -0
  262. package/dist/development/src/mapper/select/OrderByBuilder.cjs.map +1 -0
  263. package/dist/development/src/mapper/select/OrderByBuilder.js +64 -0
  264. package/dist/development/src/mapper/select/OrderByBuilder.js.map +1 -0
  265. package/dist/development/src/mapper/select/OrderByHelper.cjs +37 -0
  266. package/dist/development/src/mapper/select/OrderByHelper.cjs.map +1 -0
  267. package/dist/development/src/mapper/select/OrderByHelper.js +37 -0
  268. package/dist/development/src/mapper/select/OrderByHelper.js.map +1 -0
  269. package/dist/development/src/mapper/select/Path.cjs +60 -0
  270. package/dist/development/src/mapper/select/Path.cjs.map +1 -0
  271. package/dist/development/src/mapper/select/Path.js +60 -0
  272. package/dist/development/src/mapper/select/Path.js.map +1 -0
  273. package/dist/development/src/mapper/select/RelationFetcher.cjs +188 -0
  274. package/dist/development/src/mapper/select/RelationFetcher.cjs.map +1 -0
  275. package/dist/development/src/mapper/select/RelationFetcher.js +188 -0
  276. package/dist/development/src/mapper/select/RelationFetcher.js.map +1 -0
  277. package/dist/development/src/mapper/select/SelectBuilder.cjs +178 -0
  278. package/dist/development/src/mapper/select/SelectBuilder.cjs.map +1 -0
  279. package/dist/development/src/mapper/select/SelectBuilder.js +178 -0
  280. package/dist/development/src/mapper/select/SelectBuilder.js.map +1 -0
  281. package/dist/development/src/mapper/select/SelectHydrator.cjs +90 -0
  282. package/dist/development/src/mapper/select/SelectHydrator.cjs.map +1 -0
  283. package/dist/development/src/mapper/select/SelectHydrator.js +90 -0
  284. package/dist/development/src/mapper/select/SelectHydrator.js.map +1 -0
  285. package/dist/development/src/mapper/select/WhereBuilder.cjs +297 -0
  286. package/dist/development/src/mapper/select/WhereBuilder.cjs.map +1 -0
  287. package/dist/development/src/mapper/select/WhereBuilder.js +297 -0
  288. package/dist/development/src/mapper/select/WhereBuilder.js.map +1 -0
  289. package/dist/development/src/mapper/select/handlers/FieldsVisitor.cjs +203 -0
  290. package/dist/development/src/mapper/select/handlers/FieldsVisitor.cjs.map +1 -0
  291. package/dist/development/src/mapper/select/handlers/FieldsVisitor.js +203 -0
  292. package/dist/development/src/mapper/select/handlers/FieldsVisitor.js.map +1 -0
  293. package/dist/development/src/mapper/select/handlers/FieldsVisitorFactory.cjs +26 -0
  294. package/dist/development/src/mapper/select/handlers/FieldsVisitorFactory.cjs.map +1 -0
  295. package/dist/development/src/mapper/select/handlers/FieldsVisitorFactory.js +26 -0
  296. package/dist/development/src/mapper/select/handlers/FieldsVisitorFactory.js.map +1 -0
  297. package/dist/development/src/mapper/select/handlers/MetaHandler.cjs +39 -0
  298. package/dist/development/src/mapper/select/handlers/MetaHandler.cjs.map +1 -0
  299. package/dist/development/src/mapper/select/handlers/MetaHandler.js +39 -0
  300. package/dist/development/src/mapper/select/handlers/MetaHandler.js.map +1 -0
  301. package/dist/development/src/mapper/select/optimizer/ConditionOptimizer.cjs +33 -0
  302. package/dist/development/src/mapper/select/optimizer/ConditionOptimizer.cjs.map +1 -0
  303. package/dist/development/src/mapper/select/optimizer/ConditionOptimizer.js +33 -0
  304. package/dist/development/src/mapper/select/optimizer/ConditionOptimizer.js.map +1 -0
  305. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.cjs +171 -0
  306. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.cjs.map +1 -0
  307. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.js +171 -0
  308. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -0
  309. package/dist/development/src/mapper/select/optimizer/WhereReplacer.cjs +63 -0
  310. package/dist/development/src/mapper/select/optimizer/WhereReplacer.cjs.map +1 -0
  311. package/dist/development/src/mapper/select/optimizer/WhereReplacer.js +63 -0
  312. package/dist/development/src/mapper/select/optimizer/WhereReplacer.js.map +1 -0
  313. package/dist/development/src/mapper/select/optimizer/helpers.cjs +59 -0
  314. package/dist/development/src/mapper/select/optimizer/helpers.cjs.map +1 -0
  315. package/dist/development/src/mapper/select/optimizer/helpers.js +59 -0
  316. package/dist/development/src/mapper/select/optimizer/helpers.js.map +1 -0
  317. package/dist/development/src/mapper/update/SqlUpdateInputProcessor.cjs +91 -0
  318. package/dist/development/src/mapper/update/SqlUpdateInputProcessor.cjs.map +1 -0
  319. package/dist/development/src/mapper/update/SqlUpdateInputProcessor.js +91 -0
  320. package/dist/development/src/mapper/update/SqlUpdateInputProcessor.js.map +1 -0
  321. package/dist/development/src/mapper/update/UpdateBuilder.cjs +113 -0
  322. package/dist/development/src/mapper/update/UpdateBuilder.cjs.map +1 -0
  323. package/dist/development/src/mapper/update/UpdateBuilder.js +113 -0
  324. package/dist/development/src/mapper/update/UpdateBuilder.js.map +1 -0
  325. package/dist/development/src/mapper/update/UpdateBuilderFactory.cjs +23 -0
  326. package/dist/development/src/mapper/update/UpdateBuilderFactory.cjs.map +1 -0
  327. package/dist/development/src/mapper/update/UpdateBuilderFactory.js +23 -0
  328. package/dist/development/src/mapper/update/UpdateBuilderFactory.js.map +1 -0
  329. package/dist/development/src/mapper/update/Updater.cjs +96 -0
  330. package/dist/development/src/mapper/update/Updater.cjs.map +1 -0
  331. package/dist/development/src/mapper/update/Updater.js +96 -0
  332. package/dist/development/src/mapper/update/Updater.js.map +1 -0
  333. package/dist/development/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.cjs +84 -0
  334. package/dist/development/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.cjs.map +1 -0
  335. package/dist/development/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.js +84 -0
  336. package/dist/development/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.js.map +1 -0
  337. package/dist/development/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.cjs +88 -0
  338. package/dist/development/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.cjs.map +1 -0
  339. package/dist/development/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.js +88 -0
  340. package/dist/development/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.js.map +1 -0
  341. package/dist/development/src/mapper/update/relations/OneHasManyUpdateInputProcessor.cjs +87 -0
  342. package/dist/development/src/mapper/update/relations/OneHasManyUpdateInputProcessor.cjs.map +1 -0
  343. package/dist/development/src/mapper/update/relations/OneHasManyUpdateInputProcessor.js +87 -0
  344. package/dist/development/src/mapper/update/relations/OneHasManyUpdateInputProcessor.js.map +1 -0
  345. package/dist/development/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.cjs +147 -0
  346. package/dist/development/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.cjs.map +1 -0
  347. package/dist/development/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.js +147 -0
  348. package/dist/development/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.js.map +1 -0
  349. package/dist/development/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.cjs +183 -0
  350. package/dist/development/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.cjs.map +1 -0
  351. package/dist/development/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.js +183 -0
  352. package/dist/development/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.js.map +1 -0
  353. package/dist/development/src/resolvers/GraphQlQueryAstFactory.cjs +115 -0
  354. package/dist/development/src/resolvers/GraphQlQueryAstFactory.cjs.map +1 -0
  355. package/dist/development/src/resolvers/GraphQlQueryAstFactory.js +115 -0
  356. package/dist/development/src/resolvers/GraphQlQueryAstFactory.js.map +1 -0
  357. package/dist/development/src/resolvers/MutationResolver.cjs +508 -0
  358. package/dist/development/src/resolvers/MutationResolver.cjs.map +1 -0
  359. package/dist/development/src/resolvers/MutationResolver.js +508 -0
  360. package/dist/development/src/resolvers/MutationResolver.js.map +1 -0
  361. package/dist/development/src/resolvers/ReadHelpers.cjs +50 -0
  362. package/dist/development/src/resolvers/ReadHelpers.cjs.map +1 -0
  363. package/dist/development/src/resolvers/ReadHelpers.js +50 -0
  364. package/dist/development/src/resolvers/ReadHelpers.js.map +1 -0
  365. package/dist/development/src/resolvers/ReadResolver.cjs +38 -0
  366. package/dist/development/src/resolvers/ReadResolver.cjs.map +1 -0
  367. package/dist/development/src/resolvers/ReadResolver.js +38 -0
  368. package/dist/development/src/resolvers/ReadResolver.js.map +1 -0
  369. package/dist/development/src/resolvers/RefreshViewResolver.cjs +21 -0
  370. package/dist/development/src/resolvers/RefreshViewResolver.cjs.map +1 -0
  371. package/dist/development/src/resolvers/RefreshViewResolver.js +21 -0
  372. package/dist/development/src/resolvers/RefreshViewResolver.js.map +1 -0
  373. package/dist/development/src/resolvers/ValidationResolver.cjs +63 -0
  374. package/dist/development/src/resolvers/ValidationResolver.cjs.map +1 -0
  375. package/dist/development/src/resolvers/ValidationResolver.js +63 -0
  376. package/dist/development/src/resolvers/ValidationResolver.js.map +1 -0
  377. package/dist/development/src/schema/ColumnTypeResolver.cjs +92 -0
  378. package/dist/development/src/schema/ColumnTypeResolver.cjs.map +1 -0
  379. package/dist/development/src/schema/ColumnTypeResolver.js +92 -0
  380. package/dist/development/src/schema/ColumnTypeResolver.js.map +1 -0
  381. package/dist/development/src/schema/ConditionTypeProvider.cjs +72 -0
  382. package/dist/development/src/schema/ConditionTypeProvider.cjs.map +1 -0
  383. package/dist/development/src/schema/ConditionTypeProvider.js +72 -0
  384. package/dist/development/src/schema/ConditionTypeProvider.js.map +1 -0
  385. package/dist/development/src/schema/CustomTypesProvider.cjs +61 -0
  386. package/dist/development/src/schema/CustomTypesProvider.cjs.map +1 -0
  387. package/dist/development/src/schema/CustomTypesProvider.js +61 -0
  388. package/dist/development/src/schema/CustomTypesProvider.js.map +1 -0
  389. package/dist/development/src/schema/EntityTypeProvider.cjs +130 -0
  390. package/dist/development/src/schema/EntityTypeProvider.cjs.map +1 -0
  391. package/dist/development/src/schema/EntityTypeProvider.js +130 -0
  392. package/dist/development/src/schema/EntityTypeProvider.js.map +1 -0
  393. package/dist/development/src/schema/EnumsProvider.cjs +34 -0
  394. package/dist/development/src/schema/EnumsProvider.cjs.map +1 -0
  395. package/dist/development/src/schema/EnumsProvider.js +34 -0
  396. package/dist/development/src/schema/EnumsProvider.js.map +1 -0
  397. package/dist/development/src/schema/FieldAccessVisitor.cjs +16 -0
  398. package/dist/development/src/schema/FieldAccessVisitor.cjs.map +1 -0
  399. package/dist/development/src/schema/FieldAccessVisitor.js +16 -0
  400. package/dist/development/src/schema/FieldAccessVisitor.js.map +1 -0
  401. package/dist/development/src/schema/GraphQlSchemaBuilder.cjs +122 -0
  402. package/dist/development/src/schema/GraphQlSchemaBuilder.cjs.map +1 -0
  403. package/dist/development/src/schema/GraphQlSchemaBuilder.js +122 -0
  404. package/dist/development/src/schema/GraphQlSchemaBuilder.js.map +1 -0
  405. package/dist/development/src/schema/GraphQlSchemaBuilderFactory.cjs +153 -0
  406. package/dist/development/src/schema/GraphQlSchemaBuilderFactory.cjs.map +1 -0
  407. package/dist/development/src/schema/GraphQlSchemaBuilderFactory.js +153 -0
  408. package/dist/development/src/schema/GraphQlSchemaBuilderFactory.js.map +1 -0
  409. package/dist/development/src/schema/MutationProvider.cjs +189 -0
  410. package/dist/development/src/schema/MutationProvider.cjs.map +1 -0
  411. package/dist/development/src/schema/MutationProvider.js +189 -0
  412. package/dist/development/src/schema/MutationProvider.js.map +1 -0
  413. package/dist/development/src/schema/OperationExtension.cjs +35 -0
  414. package/dist/development/src/schema/OperationExtension.cjs.map +1 -0
  415. package/dist/development/src/schema/OperationExtension.js +35 -0
  416. package/dist/development/src/schema/OperationExtension.js.map +1 -0
  417. package/dist/development/src/schema/OrderByTypeProvider.cjs +68 -0
  418. package/dist/development/src/schema/OrderByTypeProvider.cjs.map +1 -0
  419. package/dist/development/src/schema/OrderByTypeProvider.js +68 -0
  420. package/dist/development/src/schema/OrderByTypeProvider.js.map +1 -0
  421. package/dist/development/src/schema/PaginatedFieldConfigFactory.cjs +26 -0
  422. package/dist/development/src/schema/PaginatedFieldConfigFactory.cjs.map +1 -0
  423. package/dist/development/src/schema/PaginatedFieldConfigFactory.js +26 -0
  424. package/dist/development/src/schema/PaginatedFieldConfigFactory.js.map +1 -0
  425. package/dist/development/src/schema/QueryProvider.cjs +102 -0
  426. package/dist/development/src/schema/QueryProvider.cjs.map +1 -0
  427. package/dist/development/src/schema/QueryProvider.js +102 -0
  428. package/dist/development/src/schema/QueryProvider.js.map +1 -0
  429. package/dist/development/src/schema/RefreshViewMutationProvider.cjs +42 -0
  430. package/dist/development/src/schema/RefreshViewMutationProvider.cjs.map +1 -0
  431. package/dist/development/src/schema/RefreshViewMutationProvider.js +42 -0
  432. package/dist/development/src/schema/RefreshViewMutationProvider.js.map +1 -0
  433. package/dist/development/src/schema/ResultSchemaTypeProvider.cjs +90 -0
  434. package/dist/development/src/schema/ResultSchemaTypeProvider.cjs.map +1 -0
  435. package/dist/development/src/schema/ResultSchemaTypeProvider.js +90 -0
  436. package/dist/development/src/schema/ResultSchemaTypeProvider.js.map +1 -0
  437. package/dist/development/src/schema/ValidationQueriesProvider.cjs +57 -0
  438. package/dist/development/src/schema/ValidationQueriesProvider.cjs.map +1 -0
  439. package/dist/development/src/schema/ValidationQueriesProvider.js +57 -0
  440. package/dist/development/src/schema/ValidationQueriesProvider.js.map +1 -0
  441. package/dist/development/src/schema/WhereTypeProvider.cjs +103 -0
  442. package/dist/development/src/schema/WhereTypeProvider.cjs.map +1 -0
  443. package/dist/development/src/schema/WhereTypeProvider.js +103 -0
  444. package/dist/development/src/schema/WhereTypeProvider.js.map +1 -0
  445. package/dist/development/src/schema/entities/FieldArgsVisitor.cjs +37 -0
  446. package/dist/development/src/schema/entities/FieldArgsVisitor.cjs.map +1 -0
  447. package/dist/development/src/schema/entities/FieldArgsVisitor.js +37 -0
  448. package/dist/development/src/schema/entities/FieldArgsVisitor.js.map +1 -0
  449. package/dist/development/src/schema/entities/FieldTypeVisitor.cjs +33 -0
  450. package/dist/development/src/schema/entities/FieldTypeVisitor.cjs.map +1 -0
  451. package/dist/development/src/schema/entities/FieldTypeVisitor.js +33 -0
  452. package/dist/development/src/schema/entities/FieldTypeVisitor.js.map +1 -0
  453. package/dist/development/src/schema/mutations/ConnectOrCreateRelationInputProvider.cjs +45 -0
  454. package/dist/development/src/schema/mutations/ConnectOrCreateRelationInputProvider.cjs.map +1 -0
  455. package/dist/development/src/schema/mutations/ConnectOrCreateRelationInputProvider.js +45 -0
  456. package/dist/development/src/schema/mutations/ConnectOrCreateRelationInputProvider.js.map +1 -0
  457. package/dist/development/src/schema/mutations/CreateEntityInputFieldVisitor.cjs +40 -0
  458. package/dist/development/src/schema/mutations/CreateEntityInputFieldVisitor.cjs.map +1 -0
  459. package/dist/development/src/schema/mutations/CreateEntityInputFieldVisitor.js +40 -0
  460. package/dist/development/src/schema/mutations/CreateEntityInputFieldVisitor.js.map +1 -0
  461. package/dist/development/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.cjs +56 -0
  462. package/dist/development/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.cjs.map +1 -0
  463. package/dist/development/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.js +56 -0
  464. package/dist/development/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.js.map +1 -0
  465. package/dist/development/src/schema/mutations/CreateEntityRelationInputFieldVisitor.cjs +67 -0
  466. package/dist/development/src/schema/mutations/CreateEntityRelationInputFieldVisitor.cjs.map +1 -0
  467. package/dist/development/src/schema/mutations/CreateEntityRelationInputFieldVisitor.js +67 -0
  468. package/dist/development/src/schema/mutations/CreateEntityRelationInputFieldVisitor.js.map +1 -0
  469. package/dist/development/src/schema/mutations/CreateEntityRelationInputProvider.cjs +22 -0
  470. package/dist/development/src/schema/mutations/CreateEntityRelationInputProvider.cjs.map +1 -0
  471. package/dist/development/src/schema/mutations/CreateEntityRelationInputProvider.js +22 -0
  472. package/dist/development/src/schema/mutations/CreateEntityRelationInputProvider.js.map +1 -0
  473. package/dist/development/src/schema/mutations/EntityInputProvider.cjs +67 -0
  474. package/dist/development/src/schema/mutations/EntityInputProvider.cjs.map +1 -0
  475. package/dist/development/src/schema/mutations/EntityInputProvider.js +67 -0
  476. package/dist/development/src/schema/mutations/EntityInputProvider.js.map +1 -0
  477. package/dist/development/src/schema/mutations/UpdateEntityInputFieldVisitor.cjs +39 -0
  478. package/dist/development/src/schema/mutations/UpdateEntityInputFieldVisitor.cjs.map +1 -0
  479. package/dist/development/src/schema/mutations/UpdateEntityInputFieldVisitor.js +39 -0
  480. package/dist/development/src/schema/mutations/UpdateEntityInputFieldVisitor.js.map +1 -0
  481. package/dist/development/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.cjs +79 -0
  482. package/dist/development/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.cjs.map +1 -0
  483. package/dist/development/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.js +79 -0
  484. package/dist/development/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.js.map +1 -0
  485. package/dist/development/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.cjs +133 -0
  486. package/dist/development/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.cjs.map +1 -0
  487. package/dist/development/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.js +133 -0
  488. package/dist/development/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.js.map +1 -0
  489. package/dist/development/src/schema/mutations/UpdateEntityRelationInputProvider.cjs +22 -0
  490. package/dist/development/src/schema/mutations/UpdateEntityRelationInputProvider.cjs.map +1 -0
  491. package/dist/development/src/schema/mutations/UpdateEntityRelationInputProvider.js +22 -0
  492. package/dist/development/src/schema/mutations/UpdateEntityRelationInputProvider.js.map +1 -0
  493. package/dist/development/src/schema/utils.cjs +18 -0
  494. package/dist/development/src/schema/utils.cjs.map +1 -0
  495. package/dist/development/src/schema/utils.js +18 -0
  496. package/dist/development/src/schema/utils.js.map +1 -0
  497. package/dist/development/src/utils/Mutex.cjs +36 -0
  498. package/dist/development/src/utils/Mutex.cjs.map +1 -0
  499. package/dist/development/src/utils/Mutex.js +36 -0
  500. package/dist/development/src/utils/Mutex.js.map +1 -0
  501. package/dist/development/src/utils/ResolveInfoUtils.cjs +30 -0
  502. package/dist/development/src/utils/ResolveInfoUtils.cjs.map +1 -0
  503. package/dist/development/src/utils/ResolveInfoUtils.js +30 -0
  504. package/dist/development/src/utils/ResolveInfoUtils.js.map +1 -0
  505. package/dist/development/src/utils/accessor.cjs +22 -0
  506. package/dist/development/src/utils/accessor.cjs.map +1 -0
  507. package/dist/development/src/utils/accessor.js +22 -0
  508. package/dist/development/src/utils/accessor.js.map +1 -0
  509. package/dist/development/src/utils/assertNever.cjs +7 -0
  510. package/dist/development/src/utils/assertNever.cjs.map +1 -0
  511. package/dist/development/src/utils/assertNever.js +7 -0
  512. package/dist/development/src/utils/assertNever.js.map +1 -0
  513. package/dist/development/src/utils/isIt.cjs +10 -0
  514. package/dist/development/src/utils/isIt.cjs.map +1 -0
  515. package/dist/development/src/utils/isIt.js +10 -0
  516. package/dist/development/src/utils/isIt.js.map +1 -0
  517. package/dist/development/src/utils/object.cjs +15 -0
  518. package/dist/development/src/utils/object.cjs.map +1 -0
  519. package/dist/development/src/utils/object.js +15 -0
  520. package/dist/development/src/utils/object.js.map +1 -0
  521. package/dist/development/src/utils/paginationUtils.cjs +50 -0
  522. package/dist/development/src/utils/paginationUtils.cjs.map +1 -0
  523. package/dist/development/src/utils/paginationUtils.js +50 -0
  524. package/dist/development/src/utils/paginationUtils.js.map +1 -0
  525. package/dist/development/src/utils/promises.cjs +11 -0
  526. package/dist/development/src/utils/promises.cjs.map +1 -0
  527. package/dist/development/src/utils/promises.js +11 -0
  528. package/dist/development/src/utils/promises.js.map +1 -0
  529. package/dist/development/src/utils/singletonFactory.cjs +26 -0
  530. package/dist/development/src/utils/singletonFactory.cjs.map +1 -0
  531. package/dist/development/src/utils/singletonFactory.js +26 -0
  532. package/dist/development/src/utils/singletonFactory.js.map +1 -0
  533. package/dist/development/src/utils/strings.cjs +7 -0
  534. package/dist/development/src/utils/strings.cjs.map +1 -0
  535. package/dist/development/src/utils/strings.js +7 -0
  536. package/dist/development/src/utils/strings.js.map +1 -0
  537. package/dist/development/src/utils/tuple.cjs +5 -0
  538. package/dist/development/src/utils/tuple.cjs.map +1 -0
  539. package/dist/development/src/utils/tuple.js +5 -0
  540. package/dist/development/src/utils/tuple.js.map +1 -0
  541. package/dist/development/src/utils/uniqueWhereFields.cjs +19 -0
  542. package/dist/development/src/utils/uniqueWhereFields.cjs.map +1 -0
  543. package/dist/development/src/utils/uniqueWhereFields.js +19 -0
  544. package/dist/development/src/utils/uniqueWhereFields.js.map +1 -0
  545. package/dist/development/src/utils/viewComputedId.cjs +16 -0
  546. package/dist/development/src/utils/viewComputedId.cjs.map +1 -0
  547. package/dist/development/src/utils/viewComputedId.js +16 -0
  548. package/dist/development/src/utils/viewComputedId.js.map +1 -0
  549. package/dist/production/index.cjs +141 -0
  550. package/dist/production/index.cjs.map +1 -0
  551. package/dist/production/index.js +138 -0
  552. package/dist/production/index.js.map +1 -0
  553. package/dist/production/src/ExecutionContainer.cjs +166 -0
  554. package/dist/production/src/ExecutionContainer.cjs.map +1 -0
  555. package/dist/production/src/ExecutionContainer.js +166 -0
  556. package/dist/production/src/ExecutionContainer.js.map +1 -0
  557. package/dist/production/src/acl/Authorizator.cjs +54 -0
  558. package/dist/production/src/acl/Authorizator.cjs.map +1 -0
  559. package/dist/production/src/acl/Authorizator.js +54 -0
  560. package/dist/production/src/acl/Authorizator.js.map +1 -0
  561. package/dist/production/src/acl/EvaluatedPredicateReplacer.cjs +27 -0
  562. package/dist/production/src/acl/EvaluatedPredicateReplacer.cjs.map +1 -0
  563. package/dist/production/src/acl/EvaluatedPredicateReplacer.js +27 -0
  564. package/dist/production/src/acl/EvaluatedPredicateReplacer.js.map +1 -0
  565. package/dist/production/src/acl/PermissionFactory.cjs +243 -0
  566. package/dist/production/src/acl/PermissionFactory.cjs.map +1 -0
  567. package/dist/production/src/acl/PermissionFactory.js +243 -0
  568. package/dist/production/src/acl/PermissionFactory.js.map +1 -0
  569. package/dist/production/src/acl/PredicateFactory.cjs +109 -0
  570. package/dist/production/src/acl/PredicateFactory.cjs.map +1 -0
  571. package/dist/production/src/acl/PredicateFactory.js +109 -0
  572. package/dist/production/src/acl/PredicateFactory.js.map +1 -0
  573. package/dist/production/src/acl/PredicatesInjector.cjs +147 -0
  574. package/dist/production/src/acl/PredicatesInjector.cjs.map +1 -0
  575. package/dist/production/src/acl/PredicatesInjector.js +147 -0
  576. package/dist/production/src/acl/PredicatesInjector.js.map +1 -0
  577. package/dist/production/src/acl/VariableInjector.cjs +38 -0
  578. package/dist/production/src/acl/VariableInjector.cjs.map +1 -0
  579. package/dist/production/src/acl/VariableInjector.js +38 -0
  580. package/dist/production/src/acl/VariableInjector.js.map +1 -0
  581. package/dist/production/src/acl/VariableUtils.cjs +20 -0
  582. package/dist/production/src/acl/VariableUtils.cjs.map +1 -0
  583. package/dist/production/src/acl/VariableUtils.js +20 -0
  584. package/dist/production/src/acl/VariableUtils.js.map +1 -0
  585. package/dist/production/src/exception.cjs +20 -0
  586. package/dist/production/src/exception.cjs.map +1 -0
  587. package/dist/production/src/exception.js +20 -0
  588. package/dist/production/src/exception.js.map +1 -0
  589. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.cjs +28 -0
  590. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.cjs.map +1 -0
  591. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.js +28 -0
  592. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.js.map +1 -0
  593. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.cjs +50 -0
  594. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.cjs.map +1 -0
  595. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js +50 -0
  596. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js.map +1 -0
  597. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.cjs +111 -0
  598. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.cjs.map +1 -0
  599. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js +111 -0
  600. package/dist/production/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js.map +1 -0
  601. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.cjs +58 -0
  602. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.cjs.map +1 -0
  603. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js +58 -0
  604. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js.map +1 -0
  605. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.cjs +44 -0
  606. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.cjs.map +1 -0
  607. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.js +44 -0
  608. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.js.map +1 -0
  609. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.cjs +24 -0
  610. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.cjs.map +1 -0
  611. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.js +24 -0
  612. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.js.map +1 -0
  613. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.cjs +54 -0
  614. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.cjs.map +1 -0
  615. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js +54 -0
  616. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js.map +1 -0
  617. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.cjs +58 -0
  618. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.cjs.map +1 -0
  619. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js +58 -0
  620. package/dist/production/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js.map +1 -0
  621. package/dist/production/src/input-validation/ColumnValueResolver.cjs +23 -0
  622. package/dist/production/src/input-validation/ColumnValueResolver.cjs.map +1 -0
  623. package/dist/production/src/input-validation/ColumnValueResolver.js +23 -0
  624. package/dist/production/src/input-validation/ColumnValueResolver.js.map +1 -0
  625. package/dist/production/src/input-validation/EntityRulesResolver.cjs +77 -0
  626. package/dist/production/src/input-validation/EntityRulesResolver.cjs.map +1 -0
  627. package/dist/production/src/input-validation/EntityRulesResolver.js +77 -0
  628. package/dist/production/src/input-validation/EntityRulesResolver.js.map +1 -0
  629. package/dist/production/src/input-validation/QueryAstFactory.cjs +47 -0
  630. package/dist/production/src/input-validation/QueryAstFactory.cjs.map +1 -0
  631. package/dist/production/src/input-validation/QueryAstFactory.js +47 -0
  632. package/dist/production/src/input-validation/QueryAstFactory.js.map +1 -0
  633. package/dist/production/src/input-validation/ValidationContext.cjs +102 -0
  634. package/dist/production/src/input-validation/ValidationContext.cjs.map +1 -0
  635. package/dist/production/src/input-validation/ValidationContext.js +103 -0
  636. package/dist/production/src/input-validation/ValidationContext.js.map +1 -0
  637. package/dist/production/src/input-validation/ValidationDataSelector.cjs +24 -0
  638. package/dist/production/src/input-validation/ValidationDataSelector.cjs.map +1 -0
  639. package/dist/production/src/input-validation/ValidationDataSelector.js +24 -0
  640. package/dist/production/src/input-validation/ValidationDataSelector.js.map +1 -0
  641. package/dist/production/src/input-validation/ValidationEvaluation.cjs +200 -0
  642. package/dist/production/src/input-validation/ValidationEvaluation.cjs.map +1 -0
  643. package/dist/production/src/input-validation/ValidationEvaluation.js +200 -0
  644. package/dist/production/src/input-validation/ValidationEvaluation.js.map +1 -0
  645. package/dist/production/src/input-validation/ValidationPath.cjs +11 -0
  646. package/dist/production/src/input-validation/ValidationPath.cjs.map +1 -0
  647. package/dist/production/src/input-validation/ValidationPath.js +11 -0
  648. package/dist/production/src/input-validation/ValidationPath.js.map +1 -0
  649. package/dist/production/src/input-validation/dependencies/DependencyCollector.cjs +48 -0
  650. package/dist/production/src/input-validation/dependencies/DependencyCollector.cjs.map +1 -0
  651. package/dist/production/src/input-validation/dependencies/DependencyCollector.js +48 -0
  652. package/dist/production/src/input-validation/dependencies/DependencyCollector.js.map +1 -0
  653. package/dist/production/src/input-validation/dependencies/DependencyMerger.cjs +11 -0
  654. package/dist/production/src/input-validation/dependencies/DependencyMerger.cjs.map +1 -0
  655. package/dist/production/src/input-validation/dependencies/DependencyMerger.js +11 -0
  656. package/dist/production/src/input-validation/dependencies/DependencyMerger.js.map +1 -0
  657. package/dist/production/src/input-validation/exceptions.cjs +6 -0
  658. package/dist/production/src/input-validation/exceptions.cjs.map +1 -0
  659. package/dist/production/src/input-validation/exceptions.js +6 -0
  660. package/dist/production/src/input-validation/exceptions.js.map +1 -0
  661. package/dist/production/src/input-validation/preValidation/CreateInputPreValidationProcessor.cjs +59 -0
  662. package/dist/production/src/input-validation/preValidation/CreateInputPreValidationProcessor.cjs.map +1 -0
  663. package/dist/production/src/input-validation/preValidation/CreateInputPreValidationProcessor.js +59 -0
  664. package/dist/production/src/input-validation/preValidation/CreateInputPreValidationProcessor.js.map +1 -0
  665. package/dist/production/src/input-validation/preValidation/InputPreValidator.cjs +130 -0
  666. package/dist/production/src/input-validation/preValidation/InputPreValidator.cjs.map +1 -0
  667. package/dist/production/src/input-validation/preValidation/InputPreValidator.js +130 -0
  668. package/dist/production/src/input-validation/preValidation/InputPreValidator.js.map +1 -0
  669. package/dist/production/src/input-validation/preValidation/UpdateInputPreValidationProcessor.cjs +114 -0
  670. package/dist/production/src/input-validation/preValidation/UpdateInputPreValidationProcessor.cjs.map +1 -0
  671. package/dist/production/src/input-validation/preValidation/UpdateInputPreValidationProcessor.js +114 -0
  672. package/dist/production/src/input-validation/preValidation/UpdateInputPreValidationProcessor.js.map +1 -0
  673. package/dist/production/src/inputProcessing/CreateInputVisitor.cjs +121 -0
  674. package/dist/production/src/inputProcessing/CreateInputVisitor.cjs.map +1 -0
  675. package/dist/production/src/inputProcessing/CreateInputVisitor.js +121 -0
  676. package/dist/production/src/inputProcessing/CreateInputVisitor.js.map +1 -0
  677. package/dist/production/src/inputProcessing/FieldNode.cjs +11 -0
  678. package/dist/production/src/inputProcessing/FieldNode.cjs.map +1 -0
  679. package/dist/production/src/inputProcessing/FieldNode.js +11 -0
  680. package/dist/production/src/inputProcessing/FieldNode.js.map +1 -0
  681. package/dist/production/src/inputProcessing/ObjectNode.cjs +43 -0
  682. package/dist/production/src/inputProcessing/ObjectNode.cjs.map +1 -0
  683. package/dist/production/src/inputProcessing/ObjectNode.js +43 -0
  684. package/dist/production/src/inputProcessing/ObjectNode.js.map +1 -0
  685. package/dist/production/src/inputProcessing/UniqueWhereExpander.cjs +59 -0
  686. package/dist/production/src/inputProcessing/UniqueWhereExpander.cjs.map +1 -0
  687. package/dist/production/src/inputProcessing/UniqueWhereExpander.js +59 -0
  688. package/dist/production/src/inputProcessing/UniqueWhereExpander.js.map +1 -0
  689. package/dist/production/src/inputProcessing/UpdateInputVisitor.cjs +153 -0
  690. package/dist/production/src/inputProcessing/UpdateInputVisitor.cjs.map +1 -0
  691. package/dist/production/src/inputProcessing/UpdateInputVisitor.js +153 -0
  692. package/dist/production/src/inputProcessing/UpdateInputVisitor.js.map +1 -0
  693. package/dist/production/src/introspection/IntrospectionSchemaDefinitionFactory.cjs +19 -0
  694. package/dist/production/src/introspection/IntrospectionSchemaDefinitionFactory.cjs.map +1 -0
  695. package/dist/production/src/introspection/IntrospectionSchemaDefinitionFactory.js +19 -0
  696. package/dist/production/src/introspection/IntrospectionSchemaDefinitionFactory.js.map +1 -0
  697. package/dist/production/src/introspection/IntrospectionSchemaFactory.cjs +157 -0
  698. package/dist/production/src/introspection/IntrospectionSchemaFactory.cjs.map +1 -0
  699. package/dist/production/src/introspection/IntrospectionSchemaFactory.js +157 -0
  700. package/dist/production/src/introspection/IntrospectionSchemaFactory.js.map +1 -0
  701. package/dist/production/src/introspection/content-schema.types.cjs +22 -0
  702. package/dist/production/src/introspection/content-schema.types.cjs.map +1 -0
  703. package/dist/production/src/introspection/content-schema.types.js +22 -0
  704. package/dist/production/src/introspection/content-schema.types.js.map +1 -0
  705. package/dist/production/src/introspection/introspection.schema.cjs +163 -0
  706. package/dist/production/src/introspection/introspection.schema.cjs.map +1 -0
  707. package/dist/production/src/introspection/introspection.schema.js +163 -0
  708. package/dist/production/src/introspection/introspection.schema.js.map +1 -0
  709. package/dist/production/src/mapper/CheckedPrimary.cjs +9 -0
  710. package/dist/production/src/mapper/CheckedPrimary.cjs.map +1 -0
  711. package/dist/production/src/mapper/CheckedPrimary.js +9 -0
  712. package/dist/production/src/mapper/CheckedPrimary.js.map +1 -0
  713. package/dist/production/src/mapper/ColumnValue.cjs +15 -0
  714. package/dist/production/src/mapper/ColumnValue.cjs.map +1 -0
  715. package/dist/production/src/mapper/ColumnValue.js +15 -0
  716. package/dist/production/src/mapper/ColumnValue.js.map +1 -0
  717. package/dist/production/src/mapper/ErrorUtils.cjs +130 -0
  718. package/dist/production/src/mapper/ErrorUtils.cjs.map +1 -0
  719. package/dist/production/src/mapper/ErrorUtils.js +113 -0
  720. package/dist/production/src/mapper/ErrorUtils.js.map +1 -0
  721. package/dist/production/src/mapper/EventManager.cjs +116 -0
  722. package/dist/production/src/mapper/EventManager.cjs.map +1 -0
  723. package/dist/production/src/mapper/EventManager.js +116 -0
  724. package/dist/production/src/mapper/EventManager.js.map +1 -0
  725. package/dist/production/src/mapper/JunctionTableManager.cjs +187 -0
  726. package/dist/production/src/mapper/JunctionTableManager.cjs.map +1 -0
  727. package/dist/production/src/mapper/JunctionTableManager.js +187 -0
  728. package/dist/production/src/mapper/JunctionTableManager.js.map +1 -0
  729. package/dist/production/src/mapper/Mapper.cjs +227 -0
  730. package/dist/production/src/mapper/Mapper.cjs.map +1 -0
  731. package/dist/production/src/mapper/Mapper.js +227 -0
  732. package/dist/production/src/mapper/Mapper.js.map +1 -0
  733. package/dist/production/src/mapper/MapperFactory.cjs +58 -0
  734. package/dist/production/src/mapper/MapperFactory.cjs.map +1 -0
  735. package/dist/production/src/mapper/MapperFactory.js +58 -0
  736. package/dist/production/src/mapper/MapperFactory.js.map +1 -0
  737. package/dist/production/src/mapper/MutationProcessorHelper.cjs +28 -0
  738. package/dist/production/src/mapper/MutationProcessorHelper.cjs.map +1 -0
  739. package/dist/production/src/mapper/MutationProcessorHelper.js +28 -0
  740. package/dist/production/src/mapper/MutationProcessorHelper.js.map +1 -0
  741. package/dist/production/src/mapper/Result.cjs +242 -0
  742. package/dist/production/src/mapper/Result.cjs.map +1 -0
  743. package/dist/production/src/mapper/Result.js +242 -0
  744. package/dist/production/src/mapper/Result.js.map +1 -0
  745. package/dist/production/src/mapper/delete/DeleteExecutor.cjs +210 -0
  746. package/dist/production/src/mapper/delete/DeleteExecutor.cjs.map +1 -0
  747. package/dist/production/src/mapper/delete/DeleteExecutor.js +210 -0
  748. package/dist/production/src/mapper/delete/DeleteExecutor.js.map +1 -0
  749. package/dist/production/src/mapper/delete/DeleteState.cjs +70 -0
  750. package/dist/production/src/mapper/delete/DeleteState.cjs.map +1 -0
  751. package/dist/production/src/mapper/delete/DeleteState.js +70 -0
  752. package/dist/production/src/mapper/delete/DeleteState.js.map +1 -0
  753. package/dist/production/src/mapper/delete/DeletedEntitiesStorage.cjs +26 -0
  754. package/dist/production/src/mapper/delete/DeletedEntitiesStorage.cjs.map +1 -0
  755. package/dist/production/src/mapper/delete/DeletedEntitiesStorage.js +26 -0
  756. package/dist/production/src/mapper/delete/DeletedEntitiesStorage.js.map +1 -0
  757. package/dist/production/src/mapper/delete/helpers.cjs +49 -0
  758. package/dist/production/src/mapper/delete/helpers.cjs.map +1 -0
  759. package/dist/production/src/mapper/delete/helpers.js +49 -0
  760. package/dist/production/src/mapper/delete/helpers.js.map +1 -0
  761. package/dist/production/src/mapper/insert/InsertBuilder.cjs +68 -0
  762. package/dist/production/src/mapper/insert/InsertBuilder.cjs.map +1 -0
  763. package/dist/production/src/mapper/insert/InsertBuilder.js +68 -0
  764. package/dist/production/src/mapper/insert/InsertBuilder.js.map +1 -0
  765. package/dist/production/src/mapper/insert/InsertBuilderFactory.cjs +16 -0
  766. package/dist/production/src/mapper/insert/InsertBuilderFactory.cjs.map +1 -0
  767. package/dist/production/src/mapper/insert/InsertBuilderFactory.js +16 -0
  768. package/dist/production/src/mapper/insert/InsertBuilderFactory.js.map +1 -0
  769. package/dist/production/src/mapper/insert/Inserter.cjs +73 -0
  770. package/dist/production/src/mapper/insert/Inserter.cjs.map +1 -0
  771. package/dist/production/src/mapper/insert/Inserter.js +73 -0
  772. package/dist/production/src/mapper/insert/Inserter.js.map +1 -0
  773. package/dist/production/src/mapper/insert/SqlCreateInputProcessor.cjs +77 -0
  774. package/dist/production/src/mapper/insert/SqlCreateInputProcessor.cjs.map +1 -0
  775. package/dist/production/src/mapper/insert/SqlCreateInputProcessor.js +77 -0
  776. package/dist/production/src/mapper/insert/SqlCreateInputProcessor.js.map +1 -0
  777. package/dist/production/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.cjs +43 -0
  778. package/dist/production/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.cjs.map +1 -0
  779. package/dist/production/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.js +43 -0
  780. package/dist/production/src/mapper/insert/relations/ManyHasManyCreateInputProcessor.js.map +1 -0
  781. package/dist/production/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.cjs +40 -0
  782. package/dist/production/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.cjs.map +1 -0
  783. package/dist/production/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.js +40 -0
  784. package/dist/production/src/mapper/insert/relations/ManyHasOneCreateInputProcessor.js.map +1 -0
  785. package/dist/production/src/mapper/insert/relations/OneHasManyCreateInputProcessor.cjs +38 -0
  786. package/dist/production/src/mapper/insert/relations/OneHasManyCreateInputProcessor.cjs.map +1 -0
  787. package/dist/production/src/mapper/insert/relations/OneHasManyCreateInputProcessor.js +38 -0
  788. package/dist/production/src/mapper/insert/relations/OneHasManyCreateInputProcessor.js.map +1 -0
  789. package/dist/production/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.cjs +63 -0
  790. package/dist/production/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.cjs.map +1 -0
  791. package/dist/production/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.js +63 -0
  792. package/dist/production/src/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.js.map +1 -0
  793. package/dist/production/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.cjs +65 -0
  794. package/dist/production/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.cjs.map +1 -0
  795. package/dist/production/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.js +65 -0
  796. package/dist/production/src/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.js.map +1 -0
  797. package/dist/production/src/mapper/select/ConditionBuilder.cjs +59 -0
  798. package/dist/production/src/mapper/select/ConditionBuilder.cjs.map +1 -0
  799. package/dist/production/src/mapper/select/ConditionBuilder.js +59 -0
  800. package/dist/production/src/mapper/select/ConditionBuilder.js.map +1 -0
  801. package/dist/production/src/mapper/select/JoinBuilder.cjs +31 -0
  802. package/dist/production/src/mapper/select/JoinBuilder.cjs.map +1 -0
  803. package/dist/production/src/mapper/select/JoinBuilder.js +31 -0
  804. package/dist/production/src/mapper/select/JoinBuilder.js.map +1 -0
  805. package/dist/production/src/mapper/select/JoinVisitor.cjs +90 -0
  806. package/dist/production/src/mapper/select/JoinVisitor.cjs.map +1 -0
  807. package/dist/production/src/mapper/select/JoinVisitor.js +90 -0
  808. package/dist/production/src/mapper/select/JoinVisitor.js.map +1 -0
  809. package/dist/production/src/mapper/select/OrderByBuilder.cjs +64 -0
  810. package/dist/production/src/mapper/select/OrderByBuilder.cjs.map +1 -0
  811. package/dist/production/src/mapper/select/OrderByBuilder.js +64 -0
  812. package/dist/production/src/mapper/select/OrderByBuilder.js.map +1 -0
  813. package/dist/production/src/mapper/select/OrderByHelper.cjs +37 -0
  814. package/dist/production/src/mapper/select/OrderByHelper.cjs.map +1 -0
  815. package/dist/production/src/mapper/select/OrderByHelper.js +37 -0
  816. package/dist/production/src/mapper/select/OrderByHelper.js.map +1 -0
  817. package/dist/production/src/mapper/select/Path.cjs +60 -0
  818. package/dist/production/src/mapper/select/Path.cjs.map +1 -0
  819. package/dist/production/src/mapper/select/Path.js +60 -0
  820. package/dist/production/src/mapper/select/Path.js.map +1 -0
  821. package/dist/production/src/mapper/select/RelationFetcher.cjs +188 -0
  822. package/dist/production/src/mapper/select/RelationFetcher.cjs.map +1 -0
  823. package/dist/production/src/mapper/select/RelationFetcher.js +188 -0
  824. package/dist/production/src/mapper/select/RelationFetcher.js.map +1 -0
  825. package/dist/production/src/mapper/select/SelectBuilder.cjs +178 -0
  826. package/dist/production/src/mapper/select/SelectBuilder.cjs.map +1 -0
  827. package/dist/production/src/mapper/select/SelectBuilder.js +178 -0
  828. package/dist/production/src/mapper/select/SelectBuilder.js.map +1 -0
  829. package/dist/production/src/mapper/select/SelectHydrator.cjs +90 -0
  830. package/dist/production/src/mapper/select/SelectHydrator.cjs.map +1 -0
  831. package/dist/production/src/mapper/select/SelectHydrator.js +90 -0
  832. package/dist/production/src/mapper/select/SelectHydrator.js.map +1 -0
  833. package/dist/production/src/mapper/select/WhereBuilder.cjs +297 -0
  834. package/dist/production/src/mapper/select/WhereBuilder.cjs.map +1 -0
  835. package/dist/production/src/mapper/select/WhereBuilder.js +297 -0
  836. package/dist/production/src/mapper/select/WhereBuilder.js.map +1 -0
  837. package/dist/production/src/mapper/select/handlers/FieldsVisitor.cjs +203 -0
  838. package/dist/production/src/mapper/select/handlers/FieldsVisitor.cjs.map +1 -0
  839. package/dist/production/src/mapper/select/handlers/FieldsVisitor.js +203 -0
  840. package/dist/production/src/mapper/select/handlers/FieldsVisitor.js.map +1 -0
  841. package/dist/production/src/mapper/select/handlers/FieldsVisitorFactory.cjs +26 -0
  842. package/dist/production/src/mapper/select/handlers/FieldsVisitorFactory.cjs.map +1 -0
  843. package/dist/production/src/mapper/select/handlers/FieldsVisitorFactory.js +26 -0
  844. package/dist/production/src/mapper/select/handlers/FieldsVisitorFactory.js.map +1 -0
  845. package/dist/production/src/mapper/select/handlers/MetaHandler.cjs +39 -0
  846. package/dist/production/src/mapper/select/handlers/MetaHandler.cjs.map +1 -0
  847. package/dist/production/src/mapper/select/handlers/MetaHandler.js +39 -0
  848. package/dist/production/src/mapper/select/handlers/MetaHandler.js.map +1 -0
  849. package/dist/production/src/mapper/select/optimizer/ConditionOptimizer.cjs +33 -0
  850. package/dist/production/src/mapper/select/optimizer/ConditionOptimizer.cjs.map +1 -0
  851. package/dist/production/src/mapper/select/optimizer/ConditionOptimizer.js +33 -0
  852. package/dist/production/src/mapper/select/optimizer/ConditionOptimizer.js.map +1 -0
  853. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.cjs +171 -0
  854. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.cjs.map +1 -0
  855. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.js +171 -0
  856. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -0
  857. package/dist/production/src/mapper/select/optimizer/WhereReplacer.cjs +63 -0
  858. package/dist/production/src/mapper/select/optimizer/WhereReplacer.cjs.map +1 -0
  859. package/dist/production/src/mapper/select/optimizer/WhereReplacer.js +63 -0
  860. package/dist/production/src/mapper/select/optimizer/WhereReplacer.js.map +1 -0
  861. package/dist/production/src/mapper/select/optimizer/helpers.cjs +59 -0
  862. package/dist/production/src/mapper/select/optimizer/helpers.cjs.map +1 -0
  863. package/dist/production/src/mapper/select/optimizer/helpers.js +59 -0
  864. package/dist/production/src/mapper/select/optimizer/helpers.js.map +1 -0
  865. package/dist/production/src/mapper/update/SqlUpdateInputProcessor.cjs +91 -0
  866. package/dist/production/src/mapper/update/SqlUpdateInputProcessor.cjs.map +1 -0
  867. package/dist/production/src/mapper/update/SqlUpdateInputProcessor.js +91 -0
  868. package/dist/production/src/mapper/update/SqlUpdateInputProcessor.js.map +1 -0
  869. package/dist/production/src/mapper/update/UpdateBuilder.cjs +113 -0
  870. package/dist/production/src/mapper/update/UpdateBuilder.cjs.map +1 -0
  871. package/dist/production/src/mapper/update/UpdateBuilder.js +113 -0
  872. package/dist/production/src/mapper/update/UpdateBuilder.js.map +1 -0
  873. package/dist/production/src/mapper/update/UpdateBuilderFactory.cjs +23 -0
  874. package/dist/production/src/mapper/update/UpdateBuilderFactory.cjs.map +1 -0
  875. package/dist/production/src/mapper/update/UpdateBuilderFactory.js +23 -0
  876. package/dist/production/src/mapper/update/UpdateBuilderFactory.js.map +1 -0
  877. package/dist/production/src/mapper/update/Updater.cjs +96 -0
  878. package/dist/production/src/mapper/update/Updater.cjs.map +1 -0
  879. package/dist/production/src/mapper/update/Updater.js +96 -0
  880. package/dist/production/src/mapper/update/Updater.js.map +1 -0
  881. package/dist/production/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.cjs +84 -0
  882. package/dist/production/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.cjs.map +1 -0
  883. package/dist/production/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.js +84 -0
  884. package/dist/production/src/mapper/update/relations/ManyHasManyUpdateInputProcessor.js.map +1 -0
  885. package/dist/production/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.cjs +88 -0
  886. package/dist/production/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.cjs.map +1 -0
  887. package/dist/production/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.js +88 -0
  888. package/dist/production/src/mapper/update/relations/ManyHasOneUpdateInputProcessor.js.map +1 -0
  889. package/dist/production/src/mapper/update/relations/OneHasManyUpdateInputProcessor.cjs +87 -0
  890. package/dist/production/src/mapper/update/relations/OneHasManyUpdateInputProcessor.cjs.map +1 -0
  891. package/dist/production/src/mapper/update/relations/OneHasManyUpdateInputProcessor.js +87 -0
  892. package/dist/production/src/mapper/update/relations/OneHasManyUpdateInputProcessor.js.map +1 -0
  893. package/dist/production/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.cjs +147 -0
  894. package/dist/production/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.cjs.map +1 -0
  895. package/dist/production/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.js +147 -0
  896. package/dist/production/src/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.js.map +1 -0
  897. package/dist/production/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.cjs +183 -0
  898. package/dist/production/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.cjs.map +1 -0
  899. package/dist/production/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.js +183 -0
  900. package/dist/production/src/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.js.map +1 -0
  901. package/dist/production/src/resolvers/GraphQlQueryAstFactory.cjs +115 -0
  902. package/dist/production/src/resolvers/GraphQlQueryAstFactory.cjs.map +1 -0
  903. package/dist/production/src/resolvers/GraphQlQueryAstFactory.js +115 -0
  904. package/dist/production/src/resolvers/GraphQlQueryAstFactory.js.map +1 -0
  905. package/dist/production/src/resolvers/MutationResolver.cjs +508 -0
  906. package/dist/production/src/resolvers/MutationResolver.cjs.map +1 -0
  907. package/dist/production/src/resolvers/MutationResolver.js +508 -0
  908. package/dist/production/src/resolvers/MutationResolver.js.map +1 -0
  909. package/dist/production/src/resolvers/ReadHelpers.cjs +50 -0
  910. package/dist/production/src/resolvers/ReadHelpers.cjs.map +1 -0
  911. package/dist/production/src/resolvers/ReadHelpers.js +50 -0
  912. package/dist/production/src/resolvers/ReadHelpers.js.map +1 -0
  913. package/dist/production/src/resolvers/ReadResolver.cjs +38 -0
  914. package/dist/production/src/resolvers/ReadResolver.cjs.map +1 -0
  915. package/dist/production/src/resolvers/ReadResolver.js +38 -0
  916. package/dist/production/src/resolvers/ReadResolver.js.map +1 -0
  917. package/dist/production/src/resolvers/RefreshViewResolver.cjs +21 -0
  918. package/dist/production/src/resolvers/RefreshViewResolver.cjs.map +1 -0
  919. package/dist/production/src/resolvers/RefreshViewResolver.js +21 -0
  920. package/dist/production/src/resolvers/RefreshViewResolver.js.map +1 -0
  921. package/dist/production/src/resolvers/ValidationResolver.cjs +63 -0
  922. package/dist/production/src/resolvers/ValidationResolver.cjs.map +1 -0
  923. package/dist/production/src/resolvers/ValidationResolver.js +63 -0
  924. package/dist/production/src/resolvers/ValidationResolver.js.map +1 -0
  925. package/dist/production/src/schema/ColumnTypeResolver.cjs +92 -0
  926. package/dist/production/src/schema/ColumnTypeResolver.cjs.map +1 -0
  927. package/dist/production/src/schema/ColumnTypeResolver.js +92 -0
  928. package/dist/production/src/schema/ColumnTypeResolver.js.map +1 -0
  929. package/dist/production/src/schema/ConditionTypeProvider.cjs +72 -0
  930. package/dist/production/src/schema/ConditionTypeProvider.cjs.map +1 -0
  931. package/dist/production/src/schema/ConditionTypeProvider.js +72 -0
  932. package/dist/production/src/schema/ConditionTypeProvider.js.map +1 -0
  933. package/dist/production/src/schema/CustomTypesProvider.cjs +61 -0
  934. package/dist/production/src/schema/CustomTypesProvider.cjs.map +1 -0
  935. package/dist/production/src/schema/CustomTypesProvider.js +61 -0
  936. package/dist/production/src/schema/CustomTypesProvider.js.map +1 -0
  937. package/dist/production/src/schema/EntityTypeProvider.cjs +130 -0
  938. package/dist/production/src/schema/EntityTypeProvider.cjs.map +1 -0
  939. package/dist/production/src/schema/EntityTypeProvider.js +130 -0
  940. package/dist/production/src/schema/EntityTypeProvider.js.map +1 -0
  941. package/dist/production/src/schema/EnumsProvider.cjs +34 -0
  942. package/dist/production/src/schema/EnumsProvider.cjs.map +1 -0
  943. package/dist/production/src/schema/EnumsProvider.js +34 -0
  944. package/dist/production/src/schema/EnumsProvider.js.map +1 -0
  945. package/dist/production/src/schema/FieldAccessVisitor.cjs +16 -0
  946. package/dist/production/src/schema/FieldAccessVisitor.cjs.map +1 -0
  947. package/dist/production/src/schema/FieldAccessVisitor.js +16 -0
  948. package/dist/production/src/schema/FieldAccessVisitor.js.map +1 -0
  949. package/dist/production/src/schema/GraphQlSchemaBuilder.cjs +122 -0
  950. package/dist/production/src/schema/GraphQlSchemaBuilder.cjs.map +1 -0
  951. package/dist/production/src/schema/GraphQlSchemaBuilder.js +122 -0
  952. package/dist/production/src/schema/GraphQlSchemaBuilder.js.map +1 -0
  953. package/dist/production/src/schema/GraphQlSchemaBuilderFactory.cjs +153 -0
  954. package/dist/production/src/schema/GraphQlSchemaBuilderFactory.cjs.map +1 -0
  955. package/dist/production/src/schema/GraphQlSchemaBuilderFactory.js +153 -0
  956. package/dist/production/src/schema/GraphQlSchemaBuilderFactory.js.map +1 -0
  957. package/dist/production/src/schema/MutationProvider.cjs +189 -0
  958. package/dist/production/src/schema/MutationProvider.cjs.map +1 -0
  959. package/dist/production/src/schema/MutationProvider.js +189 -0
  960. package/dist/production/src/schema/MutationProvider.js.map +1 -0
  961. package/dist/production/src/schema/OperationExtension.cjs +35 -0
  962. package/dist/production/src/schema/OperationExtension.cjs.map +1 -0
  963. package/dist/production/src/schema/OperationExtension.js +35 -0
  964. package/dist/production/src/schema/OperationExtension.js.map +1 -0
  965. package/dist/production/src/schema/OrderByTypeProvider.cjs +68 -0
  966. package/dist/production/src/schema/OrderByTypeProvider.cjs.map +1 -0
  967. package/dist/production/src/schema/OrderByTypeProvider.js +68 -0
  968. package/dist/production/src/schema/OrderByTypeProvider.js.map +1 -0
  969. package/dist/production/src/schema/PaginatedFieldConfigFactory.cjs +26 -0
  970. package/dist/production/src/schema/PaginatedFieldConfigFactory.cjs.map +1 -0
  971. package/dist/production/src/schema/PaginatedFieldConfigFactory.js +26 -0
  972. package/dist/production/src/schema/PaginatedFieldConfigFactory.js.map +1 -0
  973. package/dist/production/src/schema/QueryProvider.cjs +102 -0
  974. package/dist/production/src/schema/QueryProvider.cjs.map +1 -0
  975. package/dist/production/src/schema/QueryProvider.js +102 -0
  976. package/dist/production/src/schema/QueryProvider.js.map +1 -0
  977. package/dist/production/src/schema/RefreshViewMutationProvider.cjs +42 -0
  978. package/dist/production/src/schema/RefreshViewMutationProvider.cjs.map +1 -0
  979. package/dist/production/src/schema/RefreshViewMutationProvider.js +42 -0
  980. package/dist/production/src/schema/RefreshViewMutationProvider.js.map +1 -0
  981. package/dist/production/src/schema/ResultSchemaTypeProvider.cjs +90 -0
  982. package/dist/production/src/schema/ResultSchemaTypeProvider.cjs.map +1 -0
  983. package/dist/production/src/schema/ResultSchemaTypeProvider.js +90 -0
  984. package/dist/production/src/schema/ResultSchemaTypeProvider.js.map +1 -0
  985. package/dist/production/src/schema/ValidationQueriesProvider.cjs +57 -0
  986. package/dist/production/src/schema/ValidationQueriesProvider.cjs.map +1 -0
  987. package/dist/production/src/schema/ValidationQueriesProvider.js +57 -0
  988. package/dist/production/src/schema/ValidationQueriesProvider.js.map +1 -0
  989. package/dist/production/src/schema/WhereTypeProvider.cjs +103 -0
  990. package/dist/production/src/schema/WhereTypeProvider.cjs.map +1 -0
  991. package/dist/production/src/schema/WhereTypeProvider.js +103 -0
  992. package/dist/production/src/schema/WhereTypeProvider.js.map +1 -0
  993. package/dist/production/src/schema/entities/FieldArgsVisitor.cjs +37 -0
  994. package/dist/production/src/schema/entities/FieldArgsVisitor.cjs.map +1 -0
  995. package/dist/production/src/schema/entities/FieldArgsVisitor.js +37 -0
  996. package/dist/production/src/schema/entities/FieldArgsVisitor.js.map +1 -0
  997. package/dist/production/src/schema/entities/FieldTypeVisitor.cjs +33 -0
  998. package/dist/production/src/schema/entities/FieldTypeVisitor.cjs.map +1 -0
  999. package/dist/production/src/schema/entities/FieldTypeVisitor.js +33 -0
  1000. package/dist/production/src/schema/entities/FieldTypeVisitor.js.map +1 -0
  1001. package/dist/production/src/schema/mutations/ConnectOrCreateRelationInputProvider.cjs +45 -0
  1002. package/dist/production/src/schema/mutations/ConnectOrCreateRelationInputProvider.cjs.map +1 -0
  1003. package/dist/production/src/schema/mutations/ConnectOrCreateRelationInputProvider.js +45 -0
  1004. package/dist/production/src/schema/mutations/ConnectOrCreateRelationInputProvider.js.map +1 -0
  1005. package/dist/production/src/schema/mutations/CreateEntityInputFieldVisitor.cjs +40 -0
  1006. package/dist/production/src/schema/mutations/CreateEntityInputFieldVisitor.cjs.map +1 -0
  1007. package/dist/production/src/schema/mutations/CreateEntityInputFieldVisitor.js +40 -0
  1008. package/dist/production/src/schema/mutations/CreateEntityInputFieldVisitor.js.map +1 -0
  1009. package/dist/production/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.cjs +56 -0
  1010. package/dist/production/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.cjs.map +1 -0
  1011. package/dist/production/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.js +56 -0
  1012. package/dist/production/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.js.map +1 -0
  1013. package/dist/production/src/schema/mutations/CreateEntityRelationInputFieldVisitor.cjs +67 -0
  1014. package/dist/production/src/schema/mutations/CreateEntityRelationInputFieldVisitor.cjs.map +1 -0
  1015. package/dist/production/src/schema/mutations/CreateEntityRelationInputFieldVisitor.js +67 -0
  1016. package/dist/production/src/schema/mutations/CreateEntityRelationInputFieldVisitor.js.map +1 -0
  1017. package/dist/production/src/schema/mutations/CreateEntityRelationInputProvider.cjs +22 -0
  1018. package/dist/production/src/schema/mutations/CreateEntityRelationInputProvider.cjs.map +1 -0
  1019. package/dist/production/src/schema/mutations/CreateEntityRelationInputProvider.js +22 -0
  1020. package/dist/production/src/schema/mutations/CreateEntityRelationInputProvider.js.map +1 -0
  1021. package/dist/production/src/schema/mutations/EntityInputProvider.cjs +67 -0
  1022. package/dist/production/src/schema/mutations/EntityInputProvider.cjs.map +1 -0
  1023. package/dist/production/src/schema/mutations/EntityInputProvider.js +67 -0
  1024. package/dist/production/src/schema/mutations/EntityInputProvider.js.map +1 -0
  1025. package/dist/production/src/schema/mutations/UpdateEntityInputFieldVisitor.cjs +39 -0
  1026. package/dist/production/src/schema/mutations/UpdateEntityInputFieldVisitor.cjs.map +1 -0
  1027. package/dist/production/src/schema/mutations/UpdateEntityInputFieldVisitor.js +39 -0
  1028. package/dist/production/src/schema/mutations/UpdateEntityInputFieldVisitor.js.map +1 -0
  1029. package/dist/production/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.cjs +79 -0
  1030. package/dist/production/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.cjs.map +1 -0
  1031. package/dist/production/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.js +79 -0
  1032. package/dist/production/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.js.map +1 -0
  1033. package/dist/production/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.cjs +133 -0
  1034. package/dist/production/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.cjs.map +1 -0
  1035. package/dist/production/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.js +133 -0
  1036. package/dist/production/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.js.map +1 -0
  1037. package/dist/production/src/schema/mutations/UpdateEntityRelationInputProvider.cjs +22 -0
  1038. package/dist/production/src/schema/mutations/UpdateEntityRelationInputProvider.cjs.map +1 -0
  1039. package/dist/production/src/schema/mutations/UpdateEntityRelationInputProvider.js +22 -0
  1040. package/dist/production/src/schema/mutations/UpdateEntityRelationInputProvider.js.map +1 -0
  1041. package/dist/production/src/schema/utils.cjs +18 -0
  1042. package/dist/production/src/schema/utils.cjs.map +1 -0
  1043. package/dist/production/src/schema/utils.js +18 -0
  1044. package/dist/production/src/schema/utils.js.map +1 -0
  1045. package/dist/production/src/utils/Mutex.cjs +36 -0
  1046. package/dist/production/src/utils/Mutex.cjs.map +1 -0
  1047. package/dist/production/src/utils/Mutex.js +36 -0
  1048. package/dist/production/src/utils/Mutex.js.map +1 -0
  1049. package/dist/production/src/utils/ResolveInfoUtils.cjs +30 -0
  1050. package/dist/production/src/utils/ResolveInfoUtils.cjs.map +1 -0
  1051. package/dist/production/src/utils/ResolveInfoUtils.js +30 -0
  1052. package/dist/production/src/utils/ResolveInfoUtils.js.map +1 -0
  1053. package/dist/production/src/utils/accessor.cjs +22 -0
  1054. package/dist/production/src/utils/accessor.cjs.map +1 -0
  1055. package/dist/production/src/utils/accessor.js +22 -0
  1056. package/dist/production/src/utils/accessor.js.map +1 -0
  1057. package/dist/production/src/utils/assertNever.cjs +7 -0
  1058. package/dist/production/src/utils/assertNever.cjs.map +1 -0
  1059. package/dist/production/src/utils/assertNever.js +7 -0
  1060. package/dist/production/src/utils/assertNever.js.map +1 -0
  1061. package/dist/production/src/utils/isIt.cjs +10 -0
  1062. package/dist/production/src/utils/isIt.cjs.map +1 -0
  1063. package/dist/production/src/utils/isIt.js +10 -0
  1064. package/dist/production/src/utils/isIt.js.map +1 -0
  1065. package/dist/production/src/utils/object.cjs +15 -0
  1066. package/dist/production/src/utils/object.cjs.map +1 -0
  1067. package/dist/production/src/utils/object.js +15 -0
  1068. package/dist/production/src/utils/object.js.map +1 -0
  1069. package/dist/production/src/utils/paginationUtils.cjs +50 -0
  1070. package/dist/production/src/utils/paginationUtils.cjs.map +1 -0
  1071. package/dist/production/src/utils/paginationUtils.js +50 -0
  1072. package/dist/production/src/utils/paginationUtils.js.map +1 -0
  1073. package/dist/production/src/utils/promises.cjs +11 -0
  1074. package/dist/production/src/utils/promises.cjs.map +1 -0
  1075. package/dist/production/src/utils/promises.js +11 -0
  1076. package/dist/production/src/utils/promises.js.map +1 -0
  1077. package/dist/production/src/utils/singletonFactory.cjs +26 -0
  1078. package/dist/production/src/utils/singletonFactory.cjs.map +1 -0
  1079. package/dist/production/src/utils/singletonFactory.js +26 -0
  1080. package/dist/production/src/utils/singletonFactory.js.map +1 -0
  1081. package/dist/production/src/utils/strings.cjs +7 -0
  1082. package/dist/production/src/utils/strings.cjs.map +1 -0
  1083. package/dist/production/src/utils/strings.js +7 -0
  1084. package/dist/production/src/utils/strings.js.map +1 -0
  1085. package/dist/production/src/utils/tuple.cjs +5 -0
  1086. package/dist/production/src/utils/tuple.cjs.map +1 -0
  1087. package/dist/production/src/utils/tuple.js +5 -0
  1088. package/dist/production/src/utils/tuple.js.map +1 -0
  1089. package/dist/production/src/utils/uniqueWhereFields.cjs +19 -0
  1090. package/dist/production/src/utils/uniqueWhereFields.cjs.map +1 -0
  1091. package/dist/production/src/utils/uniqueWhereFields.js +19 -0
  1092. package/dist/production/src/utils/uniqueWhereFields.js.map +1 -0
  1093. package/dist/production/src/utils/viewComputedId.cjs +16 -0
  1094. package/dist/production/src/utils/viewComputedId.cjs.map +1 -0
  1095. package/dist/production/src/utils/viewComputedId.js +16 -0
  1096. package/dist/production/src/utils/viewComputedId.js.map +1 -0
  1097. package/dist/tests/cases/bugs/bug-filter-or.test.d.ts +2 -0
  1098. package/dist/tests/cases/bugs/bug-filter-or.test.d.ts.map +1 -0
  1099. package/dist/tests/cases/bugs/bug-update-by-nested-unique.test.d.ts +2 -0
  1100. package/dist/tests/cases/bugs/bug-update-by-nested-unique.test.d.ts.map +1 -0
  1101. package/dist/tests/cases/bugs/bug102.test.d.ts +2 -0
  1102. package/dist/tests/cases/bugs/bug102.test.d.ts.map +1 -0
  1103. package/dist/tests/cases/integration/graphQlRequests/delete/aclDelete.test.d.ts +2 -0
  1104. package/dist/tests/cases/integration/graphQlRequests/delete/aclDelete.test.d.ts.map +1 -0
  1105. package/dist/tests/cases/integration/graphQlRequests/delete/additionalDeleteFilter.test.d.ts +2 -0
  1106. package/dist/tests/cases/integration/graphQlRequests/delete/additionalDeleteFilter.test.d.ts.map +1 -0
  1107. package/dist/tests/cases/integration/graphQlRequests/delete/cascadeDelete.test.d.ts +2 -0
  1108. package/dist/tests/cases/integration/graphQlRequests/delete/cascadeDelete.test.d.ts.map +1 -0
  1109. package/dist/tests/cases/integration/graphQlRequests/delete/deleteById.test.d.ts +2 -0
  1110. package/dist/tests/cases/integration/graphQlRequests/delete/deleteById.test.d.ts.map +1 -0
  1111. package/dist/tests/cases/integration/graphQlRequests/delete/orphanRemoval.test.d.ts +2 -0
  1112. package/dist/tests/cases/integration/graphQlRequests/delete/orphanRemoval.test.d.ts.map +1 -0
  1113. package/dist/tests/cases/integration/graphQlRequests/delete/restrictOnDelete.test.d.ts +2 -0
  1114. package/dist/tests/cases/integration/graphQlRequests/delete/restrictOnDelete.test.d.ts.map +1 -0
  1115. package/dist/tests/cases/integration/graphQlRequests/delete/setNullOnDelete.test.d.ts +2 -0
  1116. package/dist/tests/cases/integration/graphQlRequests/delete/setNullOnDelete.test.d.ts.map +1 -0
  1117. package/dist/tests/cases/integration/graphQlRequests/insert/acl/setField.test.d.ts +2 -0
  1118. package/dist/tests/cases/integration/graphQlRequests/insert/acl/setField.test.d.ts.map +1 -0
  1119. package/dist/tests/cases/integration/graphQlRequests/insert/aclInsert.test.d.ts +2 -0
  1120. package/dist/tests/cases/integration/graphQlRequests/insert/aclInsert.test.d.ts.map +1 -0
  1121. package/dist/tests/cases/integration/graphQlRequests/insert/basicInsert.test.d.ts +2 -0
  1122. package/dist/tests/cases/integration/graphQlRequests/insert/basicInsert.test.d.ts.map +1 -0
  1123. package/dist/tests/cases/integration/graphQlRequests/insert/insertCustomId.test.d.ts +2 -0
  1124. package/dist/tests/cases/integration/graphQlRequests/insert/insertCustomId.test.d.ts.map +1 -0
  1125. package/dist/tests/cases/integration/graphQlRequests/insert/jsonInsert.test.d.ts +2 -0
  1126. package/dist/tests/cases/integration/graphQlRequests/insert/jsonInsert.test.d.ts.map +1 -0
  1127. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasManyInverse/create.test.d.ts +2 -0
  1128. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasManyInverse/create.test.d.ts.map +1 -0
  1129. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasManyOwning/create.test.d.ts +2 -0
  1130. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasManyOwning/create.test.d.ts.map +1 -0
  1131. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasOne/connectOrCreate.test.d.ts +2 -0
  1132. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasOne/connectOrCreate.test.d.ts.map +1 -0
  1133. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasOne/create.test.d.ts +2 -0
  1134. package/dist/tests/cases/integration/graphQlRequests/insert/manyHasOne/create.test.d.ts.map +1 -0
  1135. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasMany/connect.test.d.ts +2 -0
  1136. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasMany/connect.test.d.ts.map +1 -0
  1137. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasMany/create.test.d.ts +2 -0
  1138. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasMany/create.test.d.ts.map +1 -0
  1139. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasOneInverse/create.test.d.ts +2 -0
  1140. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasOneInverse/create.test.d.ts.map +1 -0
  1141. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasOneOwning/create.test.d.ts +2 -0
  1142. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasOneOwning/create.test.d.ts.map +1 -0
  1143. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasOneOwning/empty.test.d.ts +2 -0
  1144. package/dist/tests/cases/integration/graphQlRequests/insert/oneHasOneOwning/empty.test.d.ts.map +1 -0
  1145. package/dist/tests/cases/integration/graphQlRequests/insert/subOperationFail.test.d.ts +2 -0
  1146. package/dist/tests/cases/integration/graphQlRequests/insert/subOperationFail.test.d.ts.map +1 -0
  1147. package/dist/tests/cases/integration/graphQlRequests/insert/validation/toBeFixed.test.d.ts +2 -0
  1148. package/dist/tests/cases/integration/graphQlRequests/insert/validation/toBeFixed.test.d.ts.map +1 -0
  1149. package/dist/tests/cases/integration/graphQlRequests/query/acl/differentRowAndFieldPredicate.test.d.ts +2 -0
  1150. package/dist/tests/cases/integration/graphQlRequests/query/acl/differentRowAndFieldPredicate.test.d.ts.map +1 -0
  1151. package/dist/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.d.ts +2 -0
  1152. package/dist/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.d.ts.map +1 -0
  1153. package/dist/tests/cases/integration/graphQlRequests/query/acl/isNullAcl.test.d.ts +2 -0
  1154. package/dist/tests/cases/integration/graphQlRequests/query/acl/isNullAcl.test.d.ts.map +1 -0
  1155. package/dist/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.d.ts +2 -0
  1156. package/dist/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.d.ts.map +1 -0
  1157. package/dist/tests/cases/integration/graphQlRequests/query/acl/orPredicate.test.d.ts +2 -0
  1158. package/dist/tests/cases/integration/graphQlRequests/query/acl/orPredicate.test.d.ts.map +1 -0
  1159. package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.d.ts +2 -0
  1160. package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.d.ts.map +1 -0
  1161. package/dist/tests/cases/integration/graphQlRequests/query/acl/relationAcl.test.d.ts +2 -0
  1162. package/dist/tests/cases/integration/graphQlRequests/query/acl/relationAcl.test.d.ts.map +1 -0
  1163. package/dist/tests/cases/integration/graphQlRequests/query/acl/rowPredicateSubset.test.d.ts +2 -0
  1164. package/dist/tests/cases/integration/graphQlRequests/query/acl/rowPredicateSubset.test.d.ts.map +1 -0
  1165. package/dist/tests/cases/integration/graphQlRequests/query/acl/sameRowAndFieldPredicate.test.d.ts +2 -0
  1166. package/dist/tests/cases/integration/graphQlRequests/query/acl/sameRowAndFieldPredicate.test.d.ts.map +1 -0
  1167. package/dist/tests/cases/integration/graphQlRequests/query/filter/backReferencedFilter.test.d.ts +2 -0
  1168. package/dist/tests/cases/integration/graphQlRequests/query/filter/backReferencedFilter.test.d.ts.map +1 -0
  1169. package/dist/tests/cases/integration/graphQlRequests/query/filter/complexCondition.test.d.ts +2 -0
  1170. package/dist/tests/cases/integration/graphQlRequests/query/filter/complexCondition.test.d.ts.map +1 -0
  1171. package/dist/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.d.ts +2 -0
  1172. package/dist/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.d.ts.map +1 -0
  1173. package/dist/tests/cases/integration/graphQlRequests/query/filter/containsQuery.test.d.ts +2 -0
  1174. package/dist/tests/cases/integration/graphQlRequests/query/filter/containsQuery.test.d.ts.map +1 -0
  1175. package/dist/tests/cases/integration/graphQlRequests/query/filter/manyHasManyOwnerRelation.test.d.ts +2 -0
  1176. package/dist/tests/cases/integration/graphQlRequests/query/filter/manyHasManyOwnerRelation.test.d.ts.map +1 -0
  1177. package/dist/tests/cases/integration/graphQlRequests/query/filter/manyHasOneRelation.test.d.ts +2 -0
  1178. package/dist/tests/cases/integration/graphQlRequests/query/filter/manyHasOneRelation.test.d.ts.map +1 -0
  1179. package/dist/tests/cases/integration/graphQlRequests/query/filter/oneHasManyRelation.test.d.ts +2 -0
  1180. package/dist/tests/cases/integration/graphQlRequests/query/filter/oneHasManyRelation.test.d.ts.map +1 -0
  1181. package/dist/tests/cases/integration/graphQlRequests/query/formatting/dateFormat.test.d.ts +2 -0
  1182. package/dist/tests/cases/integration/graphQlRequests/query/formatting/dateFormat.test.d.ts.map +1 -0
  1183. package/dist/tests/cases/integration/graphQlRequests/query/graphqlFeatures/alias.test.d.ts +2 -0
  1184. package/dist/tests/cases/integration/graphQlRequests/query/graphqlFeatures/alias.test.d.ts.map +1 -0
  1185. package/dist/tests/cases/integration/graphQlRequests/query/graphqlFeatures/fragments.test.d.ts +2 -0
  1186. package/dist/tests/cases/integration/graphQlRequests/query/graphqlFeatures/fragments.test.d.ts.map +1 -0
  1187. package/dist/tests/cases/integration/graphQlRequests/query/misc/aliasedType.test.d.ts +2 -0
  1188. package/dist/tests/cases/integration/graphQlRequests/query/misc/aliasedType.test.d.ts.map +1 -0
  1189. package/dist/tests/cases/integration/graphQlRequests/query/misc/longAliasHash.test.d.ts +2 -0
  1190. package/dist/tests/cases/integration/graphQlRequests/query/misc/longAliasHash.test.d.ts.map +1 -0
  1191. package/dist/tests/cases/integration/graphQlRequests/query/misc/reducedHasMany.test.d.ts +2 -0
  1192. package/dist/tests/cases/integration/graphQlRequests/query/misc/reducedHasMany.test.d.ts.map +1 -0
  1193. package/dist/tests/cases/integration/graphQlRequests/query/misc/transaction.test.d.ts +2 -0
  1194. package/dist/tests/cases/integration/graphQlRequests/query/misc/transaction.test.d.ts.map +1 -0
  1195. package/dist/tests/cases/integration/graphQlRequests/query/pagination/hasManyLimit.test.d.ts +2 -0
  1196. package/dist/tests/cases/integration/graphQlRequests/query/pagination/hasManyLimit.test.d.ts.map +1 -0
  1197. package/dist/tests/cases/integration/graphQlRequests/query/pagination/paginate.test.d.ts +2 -0
  1198. package/dist/tests/cases/integration/graphQlRequests/query/pagination/paginate.test.d.ts.map +1 -0
  1199. package/dist/tests/cases/integration/graphQlRequests/query/pagination/paginateAliased.test.d.ts +2 -0
  1200. package/dist/tests/cases/integration/graphQlRequests/query/pagination/paginateAliased.test.d.ts.map +1 -0
  1201. package/dist/tests/cases/integration/graphQlRequests/query/pagination/simpleLimit.test.d.ts +2 -0
  1202. package/dist/tests/cases/integration/graphQlRequests/query/pagination/simpleLimit.test.d.ts.map +1 -0
  1203. package/dist/tests/cases/integration/graphQlRequests/query/relations/advanced.test.d.ts +2 -0
  1204. package/dist/tests/cases/integration/graphQlRequests/query/relations/advanced.test.d.ts.map +1 -0
  1205. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.d.ts +2 -0
  1206. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.d.ts.map +1 -0
  1207. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.d.ts +2 -0
  1208. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.d.ts.map +1 -0
  1209. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasOne.test.d.ts +2 -0
  1210. package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasOne.test.d.ts.map +1 -0
  1211. package/dist/tests/cases/integration/graphQlRequests/query/relations/oneHasMany.test.d.ts +2 -0
  1212. package/dist/tests/cases/integration/graphQlRequests/query/relations/oneHasMany.test.d.ts.map +1 -0
  1213. package/dist/tests/cases/integration/graphQlRequests/query/relations/oneHasOneInverse.test.d.ts +2 -0
  1214. package/dist/tests/cases/integration/graphQlRequests/query/relations/oneHasOneInverse.test.d.ts.map +1 -0
  1215. package/dist/tests/cases/integration/graphQlRequests/query/relations/oneHasOneOwner.test.d.ts +2 -0
  1216. package/dist/tests/cases/integration/graphQlRequests/query/relations/oneHasOneOwner.test.d.ts.map +1 -0
  1217. package/dist/tests/cases/integration/graphQlRequests/query/sorting/byRelations.test.d.ts +2 -0
  1218. package/dist/tests/cases/integration/graphQlRequests/query/sorting/byRelations.test.d.ts.map +1 -0
  1219. package/dist/tests/cases/integration/graphQlRequests/query/sorting/defaultOrdering.test.d.ts +2 -0
  1220. package/dist/tests/cases/integration/graphQlRequests/query/sorting/defaultOrdering.test.d.ts.map +1 -0
  1221. package/dist/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.d.ts +2 -0
  1222. package/dist/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.d.ts.map +1 -0
  1223. package/dist/tests/cases/integration/graphQlRequests/query/sorting/randomSort.test.d.ts +2 -0
  1224. package/dist/tests/cases/integration/graphQlRequests/query/sorting/randomSort.test.d.ts.map +1 -0
  1225. package/dist/tests/cases/integration/graphQlRequests/query/sorting/sortNulls.test.d.ts +2 -0
  1226. package/dist/tests/cases/integration/graphQlRequests/query/sorting/sortNulls.test.d.ts.map +1 -0
  1227. package/dist/tests/cases/integration/graphQlRequests/query/sorting/sortedHasMany.test.d.ts +2 -0
  1228. package/dist/tests/cases/integration/graphQlRequests/query/sorting/sortedHasMany.test.d.ts.map +1 -0
  1229. package/dist/tests/cases/integration/graphQlRequests/query/unique/basicQueryById.test.d.ts +2 -0
  1230. package/dist/tests/cases/integration/graphQlRequests/query/unique/basicQueryById.test.d.ts.map +1 -0
  1231. package/dist/tests/cases/integration/graphQlRequests/query/unique/composedUnique.test.d.ts +2 -0
  1232. package/dist/tests/cases/integration/graphQlRequests/query/unique/composedUnique.test.d.ts.map +1 -0
  1233. package/dist/tests/cases/integration/graphQlRequests/query/unique/oneHasManyUnique.test.d.ts +2 -0
  1234. package/dist/tests/cases/integration/graphQlRequests/query/unique/oneHasManyUnique.test.d.ts.map +1 -0
  1235. package/dist/tests/cases/integration/graphQlRequests/query/unique/uniqueWithFilter.test.d.ts +2 -0
  1236. package/dist/tests/cases/integration/graphQlRequests/query/unique/uniqueWithFilter.test.d.ts.map +1 -0
  1237. package/dist/tests/cases/integration/graphQlRequests/query/view/view.test.d.ts +2 -0
  1238. package/dist/tests/cases/integration/graphQlRequests/query/view/view.test.d.ts.map +1 -0
  1239. package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.d.ts +2 -0
  1240. package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.d.ts.map +1 -0
  1241. package/dist/tests/cases/integration/graphQlRequests/update/additionalFilter.test.d.ts +2 -0
  1242. package/dist/tests/cases/integration/graphQlRequests/update/additionalFilter.test.d.ts.map +1 -0
  1243. package/dist/tests/cases/integration/graphQlRequests/update/basic/columnUpdate.test.d.ts +2 -0
  1244. package/dist/tests/cases/integration/graphQlRequests/update/basic/columnUpdate.test.d.ts.map +1 -0
  1245. package/dist/tests/cases/integration/graphQlRequests/update/basic/schema.d.ts +1 -0
  1246. package/dist/tests/cases/integration/graphQlRequests/update/basic/schema.d.ts.map +1 -0
  1247. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/connect.test.d.ts +2 -0
  1248. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/connect.test.d.ts.map +1 -0
  1249. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/create.test.d.ts +2 -0
  1250. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/create.test.d.ts.map +1 -0
  1251. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/delete.test.d.ts +2 -0
  1252. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/delete.test.d.ts.map +1 -0
  1253. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/disconnect.test.d.ts +2 -0
  1254. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/disconnect.test.d.ts.map +1 -0
  1255. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/schema.d.ts +3 -0
  1256. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/schema.d.ts.map +1 -0
  1257. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/update.test.d.ts +2 -0
  1258. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/update.test.d.ts.map +1 -0
  1259. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/upsert.test.d.ts +2 -0
  1260. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/upsert.test.d.ts.map +1 -0
  1261. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/connect.test.d.ts +2 -0
  1262. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/connect.test.d.ts.map +1 -0
  1263. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/connectOrCreate.test.d.ts +2 -0
  1264. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/connectOrCreate.test.d.ts.map +1 -0
  1265. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/create.test.d.ts +2 -0
  1266. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/create.test.d.ts.map +1 -0
  1267. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/delete.test.d.ts +2 -0
  1268. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/delete.test.d.ts.map +1 -0
  1269. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/disconnect.test.d.ts +2 -0
  1270. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/disconnect.test.d.ts.map +1 -0
  1271. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/schema.d.ts +3 -0
  1272. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/schema.d.ts.map +1 -0
  1273. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/update.test.d.ts +2 -0
  1274. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/update.test.d.ts.map +1 -0
  1275. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/upsert.test.d.ts +2 -0
  1276. package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/upsert.test.d.ts.map +1 -0
  1277. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/connect.test.d.ts +2 -0
  1278. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/connect.test.d.ts.map +1 -0
  1279. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/create.test.d.ts +2 -0
  1280. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/create.test.d.ts.map +1 -0
  1281. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/delete.test.d.ts +2 -0
  1282. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/delete.test.d.ts.map +1 -0
  1283. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/disconnect.test.d.ts +2 -0
  1284. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/disconnect.test.d.ts.map +1 -0
  1285. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/schema.d.ts +4 -0
  1286. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/schema.d.ts.map +1 -0
  1287. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/update.test.d.ts +2 -0
  1288. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/update.test.d.ts.map +1 -0
  1289. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/upsert.test.d.ts +2 -0
  1290. package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/upsert.test.d.ts.map +1 -0
  1291. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/combination.test.d.ts +2 -0
  1292. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/combination.test.d.ts.map +1 -0
  1293. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/connect.test.d.ts +2 -0
  1294. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/connect.test.d.ts.map +1 -0
  1295. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/connectOrCreate.test.d.ts +2 -0
  1296. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/connectOrCreate.test.d.ts.map +1 -0
  1297. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/create.test.d.ts +2 -0
  1298. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/create.test.d.ts.map +1 -0
  1299. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/delete.test.d.ts +2 -0
  1300. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/delete.test.d.ts.map +1 -0
  1301. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/disconnect.test.d.ts +2 -0
  1302. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/disconnect.test.d.ts.map +1 -0
  1303. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/schema.d.ts +4 -0
  1304. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/schema.d.ts.map +1 -0
  1305. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/update.test.d.ts +2 -0
  1306. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/update.test.d.ts.map +1 -0
  1307. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/upsert.test.d.ts +2 -0
  1308. package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/upsert.test.d.ts.map +1 -0
  1309. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/connect.test.d.ts +2 -0
  1310. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/connect.test.d.ts.map +1 -0
  1311. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/create.test.d.ts +2 -0
  1312. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/create.test.d.ts.map +1 -0
  1313. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/delete.test.d.ts +2 -0
  1314. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/delete.test.d.ts.map +1 -0
  1315. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/disconnect.test.d.ts +2 -0
  1316. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/disconnect.test.d.ts.map +1 -0
  1317. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/schema.d.ts +4 -0
  1318. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/schema.d.ts.map +1 -0
  1319. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/update.test.d.ts +2 -0
  1320. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/update.test.d.ts.map +1 -0
  1321. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/upsert.test.d.ts +2 -0
  1322. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/upsert.test.d.ts.map +1 -0
  1323. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connect.test.d.ts +2 -0
  1324. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connect.test.d.ts.map +1 -0
  1325. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connectOrCreate.test.d.ts +2 -0
  1326. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connectOrCreate.test.d.ts.map +1 -0
  1327. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/create.test.d.ts +2 -0
  1328. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/create.test.d.ts.map +1 -0
  1329. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/delete.test.d.ts +2 -0
  1330. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/delete.test.d.ts.map +1 -0
  1331. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/disconnect.test.d.ts +2 -0
  1332. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/disconnect.test.d.ts.map +1 -0
  1333. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/schema.d.ts +4 -0
  1334. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/schema.d.ts.map +1 -0
  1335. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/update.test.d.ts +2 -0
  1336. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/update.test.d.ts.map +1 -0
  1337. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/upsert.test.d.ts +2 -0
  1338. package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/upsert.test.d.ts.map +1 -0
  1339. package/dist/tests/cases/integration/graphQlRequests/update/queryPortal.test.d.ts +2 -0
  1340. package/dist/tests/cases/integration/graphQlRequests/update/queryPortal.test.d.ts.map +1 -0
  1341. package/dist/tests/cases/integration/graphQlRequests/update/transaction.test.d.ts +2 -0
  1342. package/dist/tests/cases/integration/graphQlRequests/update/transaction.test.d.ts.map +1 -0
  1343. package/dist/tests/cases/integration/graphQlRequests/update/validation/toBeFixed.test.d.ts +2 -0
  1344. package/dist/tests/cases/integration/graphQlRequests/update/validation/toBeFixed.test.d.ts.map +1 -0
  1345. package/dist/tests/cases/integration/graphQlRequests/upsert/basicUpsert.test.d.ts +2 -0
  1346. package/dist/tests/cases/integration/graphQlRequests/upsert/basicUpsert.test.d.ts.map +1 -0
  1347. package/dist/tests/cases/integration/graphQlRequests/validation/conditions.test.d.ts +7 -0
  1348. package/dist/tests/cases/integration/graphQlRequests/validation/conditions.test.d.ts.map +1 -0
  1349. package/dist/tests/cases/integration/graphQlRequests/validation/nestedValidation.test.d.ts +2 -0
  1350. package/dist/tests/cases/integration/graphQlRequests/validation/nestedValidation.test.d.ts.map +1 -0
  1351. package/dist/tests/cases/integration/graphQlRequests/validation/optionalAssert.test.d.ts +6 -0
  1352. package/dist/tests/cases/integration/graphQlRequests/validation/optionalAssert.test.d.ts.map +1 -0
  1353. package/dist/tests/cases/integration/graphQlRequests/validation/required.test.d.ts +2 -0
  1354. package/dist/tests/cases/integration/graphQlRequests/validation/required.test.d.ts.map +1 -0
  1355. package/dist/tests/cases/integration/graphQlRequests/validation/requiredWhen.test.d.ts +7 -0
  1356. package/dist/tests/cases/integration/graphQlRequests/validation/requiredWhen.test.d.ts.map +1 -0
  1357. package/dist/tests/cases/integration/graphQlRequests/validation/rules/andRule.test.d.ts +2 -0
  1358. package/dist/tests/cases/integration/graphQlRequests/validation/rules/andRule.test.d.ts.map +1 -0
  1359. package/dist/tests/cases/integration/graphQlRequests/validation/rules/lengthRangeRule.test.d.ts +2 -0
  1360. package/dist/tests/cases/integration/graphQlRequests/validation/rules/lengthRangeRule.test.d.ts.map +1 -0
  1361. package/dist/tests/cases/integration/graphQlRequests/validation/rules/maxLengthRule.test.d.ts +2 -0
  1362. package/dist/tests/cases/integration/graphQlRequests/validation/rules/maxLengthRule.test.d.ts.map +1 -0
  1363. package/dist/tests/cases/integration/graphQlRequests/validation/rules/minLength.test.d.ts +2 -0
  1364. package/dist/tests/cases/integration/graphQlRequests/validation/rules/minLength.test.d.ts.map +1 -0
  1365. package/dist/tests/cases/integration/graphQlRequests/validation/rules/notEmptyRule.test.d.ts +2 -0
  1366. package/dist/tests/cases/integration/graphQlRequests/validation/rules/notEmptyRule.test.d.ts.map +1 -0
  1367. package/dist/tests/cases/integration/graphQlRequests/validation/rules/notRule.test.d.ts +2 -0
  1368. package/dist/tests/cases/integration/graphQlRequests/validation/rules/notRule.test.d.ts.map +1 -0
  1369. package/dist/tests/cases/integration/graphQlRequests/validation/rules/orRule.test.d.ts +2 -0
  1370. package/dist/tests/cases/integration/graphQlRequests/validation/rules/orRule.test.d.ts.map +1 -0
  1371. package/dist/tests/cases/integration/graphQlRequests/validation/rules/patternRule.test.d.ts +2 -0
  1372. package/dist/tests/cases/integration/graphQlRequests/validation/rules/patternRule.test.d.ts.map +1 -0
  1373. package/dist/tests/cases/integration/graphQlRequests/validation/rules/rangeRule.test.d.ts +2 -0
  1374. package/dist/tests/cases/integration/graphQlRequests/validation/rules/rangeRule.test.d.ts.map +1 -0
  1375. package/dist/tests/cases/integration/graphQlRequests/validation/utils.d.ts +23 -0
  1376. package/dist/tests/cases/integration/graphQlRequests/validation/utils.d.ts.map +1 -0
  1377. package/dist/tests/cases/integration/graphQlSchema/graphQlSchemaBuilder.test.d.ts +2 -0
  1378. package/dist/tests/cases/integration/graphQlSchema/graphQlSchemaBuilder.test.d.ts.map +1 -0
  1379. package/dist/tests/cases/integration/graphQlSchema/model.d.ts +23 -0
  1380. package/dist/tests/cases/integration/graphQlSchema/model.d.ts.map +1 -0
  1381. package/dist/tests/cases/unit/aclVariablesFactory.test.d.ts +2 -0
  1382. package/dist/tests/cases/unit/aclVariablesFactory.test.d.ts.map +1 -0
  1383. package/dist/tests/cases/unit/conditionOptimizer.test.d.ts +2 -0
  1384. package/dist/tests/cases/unit/conditionOptimizer.test.d.ts.map +1 -0
  1385. package/dist/tests/cases/unit/inputPreValidator.test.d.ts +2 -0
  1386. package/dist/tests/cases/unit/inputPreValidator.test.d.ts.map +1 -0
  1387. package/dist/tests/cases/unit/inputValidation.test.d.ts +2 -0
  1388. package/dist/tests/cases/unit/inputValidation.test.d.ts.map +1 -0
  1389. package/dist/tests/cases/unit/orderbyHelper.test.d.ts +2 -0
  1390. package/dist/tests/cases/unit/orderbyHelper.test.d.ts.map +1 -0
  1391. package/dist/tests/cases/unit/permissionMerger.test.d.ts +2 -0
  1392. package/dist/tests/cases/unit/permissionMerger.test.d.ts.map +1 -0
  1393. package/dist/tests/cases/unit/predicatesFactory.test.d.ts +2 -0
  1394. package/dist/tests/cases/unit/predicatesFactory.test.d.ts.map +1 -0
  1395. package/dist/tests/cases/unit/predicatesInjector.test.d.ts +2 -0
  1396. package/dist/tests/cases/unit/predicatesInjector.test.d.ts.map +1 -0
  1397. package/dist/tests/cases/unit/uuidType.test.d.ts +2 -0
  1398. package/dist/tests/cases/unit/uuidType.test.d.ts.map +1 -0
  1399. package/dist/tests/cases/unit/variableInjector.test.d.ts +2 -0
  1400. package/dist/tests/cases/unit/variableInjector.test.d.ts.map +1 -0
  1401. package/dist/tests/cases/unit/whereBuilder.test.d.ts +2 -0
  1402. package/dist/tests/cases/unit/whereBuilder.test.d.ts.map +1 -0
  1403. package/dist/tests/cases/unit/whereOptimizer.test.d.ts +2 -0
  1404. package/dist/tests/cases/unit/whereOptimizer.test.d.ts.map +1 -0
  1405. package/dist/tests/src/assert.d.ts +5 -0
  1406. package/dist/tests/src/assert.d.ts.map +1 -0
  1407. package/dist/tests/src/tags.d.ts +3 -0
  1408. package/dist/tests/src/tags.d.ts.map +1 -0
  1409. package/dist/tests/src/test.d.ts +21 -0
  1410. package/dist/tests/src/test.d.ts.map +1 -0
  1411. package/dist/tests/src/testGraphql.d.ts +10 -0
  1412. package/dist/tests/src/testGraphql.d.ts.map +1 -0
  1413. package/dist/tests/src/testUuid.d.ts +5 -0
  1414. package/dist/tests/src/testUuid.d.ts.map +1 -0
  1415. package/dist/tests/src/utils.d.ts +6 -0
  1416. package/dist/tests/src/utils.d.ts.map +1 -0
  1417. package/dist/tests/tsconfig.tsbuildinfo +1 -0
  1418. package/dist/types/ExecutionContainer.d.ts +163 -0
  1419. package/dist/types/ExecutionContainer.d.ts.map +1 -0
  1420. package/dist/types/acl/Authorizator.d.ts +16 -0
  1421. package/dist/types/acl/Authorizator.d.ts.map +1 -0
  1422. package/dist/types/acl/EvaluatedPredicateReplacer.d.ts +9 -0
  1423. package/dist/types/acl/EvaluatedPredicateReplacer.d.ts.map +1 -0
  1424. package/dist/types/acl/PermissionFactory.d.ts +17 -0
  1425. package/dist/types/acl/PermissionFactory.d.ts.map +1 -0
  1426. package/dist/types/acl/PredicateFactory.d.ts +20 -0
  1427. package/dist/types/acl/PredicateFactory.d.ts.map +1 -0
  1428. package/dist/types/acl/PredicatesInjector.d.ts +25 -0
  1429. package/dist/types/acl/PredicatesInjector.d.ts.map +1 -0
  1430. package/dist/types/acl/VariableInjector.d.ts +9 -0
  1431. package/dist/types/acl/VariableInjector.d.ts.map +1 -0
  1432. package/dist/types/acl/VariableUtils.d.ts +5 -0
  1433. package/dist/types/acl/VariableUtils.d.ts.map +1 -0
  1434. package/dist/types/acl/index.d.ts +7 -0
  1435. package/dist/types/acl/index.d.ts.map +1 -0
  1436. package/dist/types/exception.d.ts +7 -0
  1437. package/dist/types/exception.d.ts.map +1 -0
  1438. package/dist/types/extensions/EntityFieldsProvider.d.ts +11 -0
  1439. package/dist/types/extensions/EntityFieldsProvider.d.ts.map +1 -0
  1440. package/dist/types/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.d.ts +14 -0
  1441. package/dist/types/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.d.ts.map +1 -0
  1442. package/dist/types/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.d.ts +11 -0
  1443. package/dist/types/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.d.ts.map +1 -0
  1444. package/dist/types/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.d.ts +27 -0
  1445. package/dist/types/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.d.ts.map +1 -0
  1446. package/dist/types/extensions/hasManyToHasOneReducer/index.d.ts +4 -0
  1447. package/dist/types/extensions/hasManyToHasOneReducer/index.d.ts.map +1 -0
  1448. package/dist/types/extensions/index.d.ts +3 -0
  1449. package/dist/types/extensions/index.d.ts.map +1 -0
  1450. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.d.ts +19 -0
  1451. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.d.ts.map +1 -0
  1452. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.d.ts +10 -0
  1453. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.d.ts.map +1 -0
  1454. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.d.ts +14 -0
  1455. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.d.ts.map +1 -0
  1456. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.d.ts +24 -0
  1457. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.d.ts.map +1 -0
  1458. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.d.ts +19 -0
  1459. package/dist/types/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.d.ts.map +1 -0
  1460. package/dist/types/index.d.ts +13 -0
  1461. package/dist/types/index.d.ts.map +1 -0
  1462. package/dist/types/input-validation/ColumnValueResolver.d.ts +10 -0
  1463. package/dist/types/input-validation/ColumnValueResolver.d.ts.map +1 -0
  1464. package/dist/types/input-validation/EntityRulesResolver.d.ts +9 -0
  1465. package/dist/types/input-validation/EntityRulesResolver.d.ts.map +1 -0
  1466. package/dist/types/input-validation/InputValidator.d.ts +8 -0
  1467. package/dist/types/input-validation/InputValidator.d.ts.map +1 -0
  1468. package/dist/types/input-validation/QueryAstFactory.d.ts +10 -0
  1469. package/dist/types/input-validation/QueryAstFactory.d.ts.map +1 -0
  1470. package/dist/types/input-validation/ValidationContext.d.ts +48 -0
  1471. package/dist/types/input-validation/ValidationContext.d.ts.map +1 -0
  1472. package/dist/types/input-validation/ValidationDataSelector.d.ts +12 -0
  1473. package/dist/types/input-validation/ValidationDataSelector.d.ts.map +1 -0
  1474. package/dist/types/input-validation/ValidationEvaluation.d.ts +4 -0
  1475. package/dist/types/input-validation/ValidationEvaluation.d.ts.map +1 -0
  1476. package/dist/types/input-validation/ValidationPath.d.ts +11 -0
  1477. package/dist/types/input-validation/ValidationPath.d.ts.map +1 -0
  1478. package/dist/types/input-validation/dependencies/DependencyCollector.d.ts +11 -0
  1479. package/dist/types/input-validation/dependencies/DependencyCollector.d.ts.map +1 -0
  1480. package/dist/types/input-validation/dependencies/DependencyMerger.d.ts +5 -0
  1481. package/dist/types/input-validation/dependencies/DependencyMerger.d.ts.map +1 -0
  1482. package/dist/types/input-validation/dependencies/index.d.ts +3 -0
  1483. package/dist/types/input-validation/dependencies/index.d.ts.map +1 -0
  1484. package/dist/types/input-validation/exceptions.d.ts +3 -0
  1485. package/dist/types/input-validation/exceptions.d.ts.map +1 -0
  1486. package/dist/types/input-validation/index.d.ts +12 -0
  1487. package/dist/types/input-validation/index.d.ts.map +1 -0
  1488. package/dist/types/input-validation/preValidation/CreateInputPreValidationProcessor.d.ts +29 -0
  1489. package/dist/types/input-validation/preValidation/CreateInputPreValidationProcessor.d.ts.map +1 -0
  1490. package/dist/types/input-validation/preValidation/InputPreValidator.d.ts +37 -0
  1491. package/dist/types/input-validation/preValidation/InputPreValidator.d.ts.map +1 -0
  1492. package/dist/types/input-validation/preValidation/UpdateInputPreValidationProcessor.d.ts +45 -0
  1493. package/dist/types/input-validation/preValidation/UpdateInputPreValidationProcessor.d.ts.map +1 -0
  1494. package/dist/types/input-validation/preValidation/index.d.ts +4 -0
  1495. package/dist/types/input-validation/preValidation/index.d.ts.map +1 -0
  1496. package/dist/types/inputProcessing/CreateInputProcessor.d.ts +52 -0
  1497. package/dist/types/inputProcessing/CreateInputProcessor.d.ts.map +1 -0
  1498. package/dist/types/inputProcessing/CreateInputVisitor.d.ts +20 -0
  1499. package/dist/types/inputProcessing/CreateInputVisitor.d.ts.map +1 -0
  1500. package/dist/types/inputProcessing/FieldNode.d.ts +7 -0
  1501. package/dist/types/inputProcessing/FieldNode.d.ts.map +1 -0
  1502. package/dist/types/inputProcessing/ObjectNode.d.ts +16 -0
  1503. package/dist/types/inputProcessing/ObjectNode.d.ts.map +1 -0
  1504. package/dist/types/inputProcessing/UniqueWhereExpander.d.ts +14 -0
  1505. package/dist/types/inputProcessing/UniqueWhereExpander.d.ts.map +1 -0
  1506. package/dist/types/inputProcessing/UpdateInputProcessor.d.ts +91 -0
  1507. package/dist/types/inputProcessing/UpdateInputProcessor.d.ts.map +1 -0
  1508. package/dist/types/inputProcessing/UpdateInputVisitor.d.ts +20 -0
  1509. package/dist/types/inputProcessing/UpdateInputVisitor.d.ts.map +1 -0
  1510. package/dist/types/inputProcessing/index.d.ts +8 -0
  1511. package/dist/types/inputProcessing/index.d.ts.map +1 -0
  1512. package/dist/types/introspection/IntrospectionSchemaDefinitionFactory.d.ts +9 -0
  1513. package/dist/types/introspection/IntrospectionSchemaDefinitionFactory.d.ts.map +1 -0
  1514. package/dist/types/introspection/IntrospectionSchemaFactory.d.ts +14 -0
  1515. package/dist/types/introspection/IntrospectionSchemaFactory.d.ts.map +1 -0
  1516. package/dist/types/introspection/content-schema.types.d.ts +125 -0
  1517. package/dist/types/introspection/content-schema.types.d.ts.map +1 -0
  1518. package/dist/types/introspection/index.d.ts +5 -0
  1519. package/dist/types/introspection/index.d.ts.map +1 -0
  1520. package/dist/types/introspection/introspection.schema.d.ts +5 -0
  1521. package/dist/types/introspection/introspection.schema.d.ts.map +1 -0
  1522. package/dist/types/mapper/CheckedPrimary.d.ts +6 -0
  1523. package/dist/types/mapper/CheckedPrimary.d.ts.map +1 -0
  1524. package/dist/types/mapper/ColumnValue.d.ts +10 -0
  1525. package/dist/types/mapper/ColumnValue.d.ts.map +1 -0
  1526. package/dist/types/mapper/Constraints.d.ts +28 -0
  1527. package/dist/types/mapper/Constraints.d.ts.map +1 -0
  1528. package/dist/types/mapper/ErrorUtils.d.ts +6 -0
  1529. package/dist/types/mapper/ErrorUtils.d.ts.map +1 -0
  1530. package/dist/types/mapper/EventManager.d.ts +86 -0
  1531. package/dist/types/mapper/EventManager.d.ts.map +1 -0
  1532. package/dist/types/mapper/JunctionTableManager.d.ts +47 -0
  1533. package/dist/types/mapper/JunctionTableManager.d.ts.map +1 -0
  1534. package/dist/types/mapper/Mapper.d.ts +55 -0
  1535. package/dist/types/mapper/Mapper.d.ts.map +1 -0
  1536. package/dist/types/mapper/MapperFactory.d.ts +34 -0
  1537. package/dist/types/mapper/MapperFactory.d.ts.map +1 -0
  1538. package/dist/types/mapper/MutationProcessorHelper.d.ts +11 -0
  1539. package/dist/types/mapper/MutationProcessorHelper.d.ts.map +1 -0
  1540. package/dist/types/mapper/Result.d.ts +158 -0
  1541. package/dist/types/mapper/Result.d.ts.map +1 -0
  1542. package/dist/types/mapper/delete/DeleteExecutor.d.ts +29 -0
  1543. package/dist/types/mapper/delete/DeleteExecutor.d.ts.map +1 -0
  1544. package/dist/types/mapper/delete/DeleteState.d.ts +22 -0
  1545. package/dist/types/mapper/delete/DeleteState.d.ts.map +1 -0
  1546. package/dist/types/mapper/delete/DeletedEntitiesStorage.d.ts +9 -0
  1547. package/dist/types/mapper/delete/DeletedEntitiesStorage.d.ts.map +1 -0
  1548. package/dist/types/mapper/delete/helpers.d.ts +11 -0
  1549. package/dist/types/mapper/delete/helpers.d.ts.map +1 -0
  1550. package/dist/types/mapper/delete/index.d.ts +3 -0
  1551. package/dist/types/mapper/delete/index.d.ts.map +1 -0
  1552. package/dist/types/mapper/index.d.ts +16 -0
  1553. package/dist/types/mapper/index.d.ts.map +1 -0
  1554. package/dist/types/mapper/insert/InsertBuilder.d.ts +25 -0
  1555. package/dist/types/mapper/insert/InsertBuilder.d.ts.map +1 -0
  1556. package/dist/types/mapper/insert/InsertBuilderFactory.d.ts +13 -0
  1557. package/dist/types/mapper/insert/InsertBuilderFactory.d.ts.map +1 -0
  1558. package/dist/types/mapper/insert/Inserter.d.ts +20 -0
  1559. package/dist/types/mapper/insert/Inserter.d.ts.map +1 -0
  1560. package/dist/types/mapper/insert/SqlCreateInputProcessor.d.ts +33 -0
  1561. package/dist/types/mapper/insert/SqlCreateInputProcessor.d.ts.map +1 -0
  1562. package/dist/types/mapper/insert/index.d.ts +5 -0
  1563. package/dist/types/mapper/insert/index.d.ts.map +1 -0
  1564. package/dist/types/mapper/insert/relations/ManyHasManyCreateInputProcessor.d.ts +26 -0
  1565. package/dist/types/mapper/insert/relations/ManyHasManyCreateInputProcessor.d.ts.map +1 -0
  1566. package/dist/types/mapper/insert/relations/ManyHasOneCreateInputProcessor.d.ts +25 -0
  1567. package/dist/types/mapper/insert/relations/ManyHasOneCreateInputProcessor.d.ts.map +1 -0
  1568. package/dist/types/mapper/insert/relations/OneHasManyCreateInputProcessor.d.ts +28 -0
  1569. package/dist/types/mapper/insert/relations/OneHasManyCreateInputProcessor.d.ts.map +1 -0
  1570. package/dist/types/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.d.ts +31 -0
  1571. package/dist/types/mapper/insert/relations/OneHasOneInverseCreateInputProcessor.d.ts.map +1 -0
  1572. package/dist/types/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.d.ts +26 -0
  1573. package/dist/types/mapper/insert/relations/OneHasOneOwningCreateInputProcessor.d.ts.map +1 -0
  1574. package/dist/types/mapper/select/ConditionBuilder.d.ts +6 -0
  1575. package/dist/types/mapper/select/ConditionBuilder.d.ts.map +1 -0
  1576. package/dist/types/mapper/select/JoinBuilder.d.ts +9 -0
  1577. package/dist/types/mapper/select/JoinBuilder.d.ts.map +1 -0
  1578. package/dist/types/mapper/select/JoinVisitor.d.ts +21 -0
  1579. package/dist/types/mapper/select/JoinVisitor.d.ts.map +1 -0
  1580. package/dist/types/mapper/select/OrderByBuilder.d.ts +12 -0
  1581. package/dist/types/mapper/select/OrderByBuilder.d.ts.map +1 -0
  1582. package/dist/types/mapper/select/OrderByHelper.d.ts +8 -0
  1583. package/dist/types/mapper/select/OrderByHelper.d.ts.map +1 -0
  1584. package/dist/types/mapper/select/Path.d.ts +20 -0
  1585. package/dist/types/mapper/select/Path.d.ts.map +1 -0
  1586. package/dist/types/mapper/select/RelationFetcher.d.ts +53 -0
  1587. package/dist/types/mapper/select/RelationFetcher.d.ts.map +1 -0
  1588. package/dist/types/mapper/select/SelectBuilder.d.ts +36 -0
  1589. package/dist/types/mapper/select/SelectBuilder.d.ts.map +1 -0
  1590. package/dist/types/mapper/select/SelectBuilderFactory.d.ts +8 -0
  1591. package/dist/types/mapper/select/SelectBuilderFactory.d.ts.map +1 -0
  1592. package/dist/types/mapper/select/SelectExecutionHandler.d.ts +36 -0
  1593. package/dist/types/mapper/select/SelectExecutionHandler.d.ts.map +1 -0
  1594. package/dist/types/mapper/select/SelectHydrator.d.ts +28 -0
  1595. package/dist/types/mapper/select/SelectHydrator.d.ts.map +1 -0
  1596. package/dist/types/mapper/select/WhereBuilder.d.ts +29 -0
  1597. package/dist/types/mapper/select/WhereBuilder.d.ts.map +1 -0
  1598. package/dist/types/mapper/select/handlers/FieldsVisitor.d.ts +26 -0
  1599. package/dist/types/mapper/select/handlers/FieldsVisitor.d.ts.map +1 -0
  1600. package/dist/types/mapper/select/handlers/FieldsVisitorFactory.d.ts +17 -0
  1601. package/dist/types/mapper/select/handlers/FieldsVisitorFactory.d.ts.map +1 -0
  1602. package/dist/types/mapper/select/handlers/MetaHandler.d.ts +11 -0
  1603. package/dist/types/mapper/select/handlers/MetaHandler.d.ts.map +1 -0
  1604. package/dist/types/mapper/select/handlers/index.d.ts +4 -0
  1605. package/dist/types/mapper/select/handlers/index.d.ts.map +1 -0
  1606. package/dist/types/mapper/select/index.d.ts +14 -0
  1607. package/dist/types/mapper/select/index.d.ts.map +1 -0
  1608. package/dist/types/mapper/select/optimizer/ConditionOptimizer.d.ts +5 -0
  1609. package/dist/types/mapper/select/optimizer/ConditionOptimizer.d.ts.map +1 -0
  1610. package/dist/types/mapper/select/optimizer/WhereOptimizer.d.ts +24 -0
  1611. package/dist/types/mapper/select/optimizer/WhereOptimizer.d.ts.map +1 -0
  1612. package/dist/types/mapper/select/optimizer/WhereReplacer.d.ts +5 -0
  1613. package/dist/types/mapper/select/optimizer/WhereReplacer.d.ts.map +1 -0
  1614. package/dist/types/mapper/select/optimizer/helpers.d.ts +10 -0
  1615. package/dist/types/mapper/select/optimizer/helpers.d.ts.map +1 -0
  1616. package/dist/types/mapper/types.d.ts +89 -0
  1617. package/dist/types/mapper/types.d.ts.map +1 -0
  1618. package/dist/types/mapper/update/SqlUpdateInputProcessor.d.ts +29 -0
  1619. package/dist/types/mapper/update/SqlUpdateInputProcessor.d.ts.map +1 -0
  1620. package/dist/types/mapper/update/UpdateBuilder.d.ts +28 -0
  1621. package/dist/types/mapper/update/UpdateBuilder.d.ts.map +1 -0
  1622. package/dist/types/mapper/update/UpdateBuilderFactory.d.ts +13 -0
  1623. package/dist/types/mapper/update/UpdateBuilderFactory.d.ts.map +1 -0
  1624. package/dist/types/mapper/update/Updater.d.ts +14 -0
  1625. package/dist/types/mapper/update/Updater.d.ts.map +1 -0
  1626. package/dist/types/mapper/update/index.d.ts +5 -0
  1627. package/dist/types/mapper/update/index.d.ts.map +1 -0
  1628. package/dist/types/mapper/update/relations/ManyHasManyUpdateInputProcessor.d.ts +48 -0
  1629. package/dist/types/mapper/update/relations/ManyHasManyUpdateInputProcessor.d.ts.map +1 -0
  1630. package/dist/types/mapper/update/relations/ManyHasOneUpdateInputProcessor.d.ts +42 -0
  1631. package/dist/types/mapper/update/relations/ManyHasOneUpdateInputProcessor.d.ts.map +1 -0
  1632. package/dist/types/mapper/update/relations/OneHasManyUpdateInputProcessor.d.ts +48 -0
  1633. package/dist/types/mapper/update/relations/OneHasManyUpdateInputProcessor.d.ts.map +1 -0
  1634. package/dist/types/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.d.ts +38 -0
  1635. package/dist/types/mapper/update/relations/OneHasOneInverseUpdateInputProcessor.d.ts.map +1 -0
  1636. package/dist/types/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.d.ts +42 -0
  1637. package/dist/types/mapper/update/relations/OneHasOneOwningUpdateInputProcessor.d.ts.map +1 -0
  1638. package/dist/types/resolvers/GraphQlQueryAstFactory.d.ts +14 -0
  1639. package/dist/types/resolvers/GraphQlQueryAstFactory.d.ts.map +1 -0
  1640. package/dist/types/resolvers/MutationResolver.d.ts +43 -0
  1641. package/dist/types/resolvers/MutationResolver.d.ts.map +1 -0
  1642. package/dist/types/resolvers/ReadHelpers.d.ts +7 -0
  1643. package/dist/types/resolvers/ReadHelpers.d.ts.map +1 -0
  1644. package/dist/types/resolvers/ReadResolver.d.ts +15 -0
  1645. package/dist/types/resolvers/ReadResolver.d.ts.map +1 -0
  1646. package/dist/types/resolvers/RefreshViewResolver.d.ts +13 -0
  1647. package/dist/types/resolvers/RefreshViewResolver.d.ts.map +1 -0
  1648. package/dist/types/resolvers/ValidationResolver.d.ts +12 -0
  1649. package/dist/types/resolvers/ValidationResolver.d.ts.map +1 -0
  1650. package/dist/types/resolvers/index.d.ts +5 -0
  1651. package/dist/types/resolvers/index.d.ts.map +1 -0
  1652. package/dist/types/schema/ColumnTypeResolver.d.ts +18 -0
  1653. package/dist/types/schema/ColumnTypeResolver.d.ts.map +1 -0
  1654. package/dist/types/schema/ConditionTypeProvider.d.ts +12 -0
  1655. package/dist/types/schema/ConditionTypeProvider.d.ts.map +1 -0
  1656. package/dist/types/schema/CustomTypesProvider.d.ts +9 -0
  1657. package/dist/types/schema/CustomTypesProvider.d.ts.map +1 -0
  1658. package/dist/types/schema/EntityTypeProvider.d.ts +27 -0
  1659. package/dist/types/schema/EntityTypeProvider.d.ts.map +1 -0
  1660. package/dist/types/schema/EnumsProvider.d.ts +11 -0
  1661. package/dist/types/schema/EnumsProvider.d.ts.map +1 -0
  1662. package/dist/types/schema/FieldAccessVisitor.d.ts +10 -0
  1663. package/dist/types/schema/FieldAccessVisitor.d.ts.map +1 -0
  1664. package/dist/types/schema/GraphQlSchemaBuilder.d.ts +26 -0
  1665. package/dist/types/schema/GraphQlSchemaBuilder.d.ts.map +1 -0
  1666. package/dist/types/schema/GraphQlSchemaBuilderFactory.d.ts +103 -0
  1667. package/dist/types/schema/GraphQlSchemaBuilderFactory.d.ts.map +1 -0
  1668. package/dist/types/schema/MutationProvider.d.ts +28 -0
  1669. package/dist/types/schema/MutationProvider.d.ts.map +1 -0
  1670. package/dist/types/schema/OperationExtension.d.ts +18 -0
  1671. package/dist/types/schema/OperationExtension.d.ts.map +1 -0
  1672. package/dist/types/schema/OrderByTypeProvider.d.ts +14 -0
  1673. package/dist/types/schema/OrderByTypeProvider.d.ts.map +1 -0
  1674. package/dist/types/schema/PaginatedFieldConfigFactory.d.ts +13 -0
  1675. package/dist/types/schema/PaginatedFieldConfigFactory.d.ts.map +1 -0
  1676. package/dist/types/schema/QueryProvider.d.ts +23 -0
  1677. package/dist/types/schema/QueryProvider.d.ts.map +1 -0
  1678. package/dist/types/schema/RefreshViewMutationProvider.d.ts +11 -0
  1679. package/dist/types/schema/RefreshViewMutationProvider.d.ts.map +1 -0
  1680. package/dist/types/schema/ResultSchemaTypeProvider.d.ts +14 -0
  1681. package/dist/types/schema/ResultSchemaTypeProvider.d.ts.map +1 -0
  1682. package/dist/types/schema/ValidationQueriesProvider.d.ts +21 -0
  1683. package/dist/types/schema/ValidationQueriesProvider.d.ts.map +1 -0
  1684. package/dist/types/schema/WhereTypeProvider.d.ts +21 -0
  1685. package/dist/types/schema/WhereTypeProvider.d.ts.map +1 -0
  1686. package/dist/types/schema/entities/FieldArgsVisitor.d.ts +32 -0
  1687. package/dist/types/schema/entities/FieldArgsVisitor.d.ts.map +1 -0
  1688. package/dist/types/schema/entities/FieldTypeVisitor.d.ts +15 -0
  1689. package/dist/types/schema/entities/FieldTypeVisitor.d.ts.map +1 -0
  1690. package/dist/types/schema/entities/index.d.ts +3 -0
  1691. package/dist/types/schema/entities/index.d.ts.map +1 -0
  1692. package/dist/types/schema/index.d.ts +19 -0
  1693. package/dist/types/schema/index.d.ts.map +1 -0
  1694. package/dist/types/schema/mutations/ConnectOrCreateRelationInputProvider.d.ts +15 -0
  1695. package/dist/types/schema/mutations/ConnectOrCreateRelationInputProvider.d.ts.map +1 -0
  1696. package/dist/types/schema/mutations/CreateEntityInputFieldVisitor.d.ts +16 -0
  1697. package/dist/types/schema/mutations/CreateEntityInputFieldVisitor.d.ts.map +1 -0
  1698. package/dist/types/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.d.ts +15 -0
  1699. package/dist/types/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.d.ts.map +1 -0
  1700. package/dist/types/schema/mutations/CreateEntityRelationInputFieldVisitor.d.ts +20 -0
  1701. package/dist/types/schema/mutations/CreateEntityRelationInputFieldVisitor.d.ts.map +1 -0
  1702. package/dist/types/schema/mutations/CreateEntityRelationInputProvider.d.ts +12 -0
  1703. package/dist/types/schema/mutations/CreateEntityRelationInputProvider.d.ts.map +1 -0
  1704. package/dist/types/schema/mutations/EntityInputProvider.d.ts +19 -0
  1705. package/dist/types/schema/mutations/EntityInputProvider.d.ts.map +1 -0
  1706. package/dist/types/schema/mutations/UpdateEntityInputFieldVisitor.d.ts +21 -0
  1707. package/dist/types/schema/mutations/UpdateEntityInputFieldVisitor.d.ts.map +1 -0
  1708. package/dist/types/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.d.ts +15 -0
  1709. package/dist/types/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.d.ts.map +1 -0
  1710. package/dist/types/schema/mutations/UpdateEntityRelationInputFieldVisitor.d.ts +24 -0
  1711. package/dist/types/schema/mutations/UpdateEntityRelationInputFieldVisitor.d.ts.map +1 -0
  1712. package/dist/types/schema/mutations/UpdateEntityRelationInputProvider.d.ts +12 -0
  1713. package/dist/types/schema/mutations/UpdateEntityRelationInputProvider.d.ts.map +1 -0
  1714. package/dist/types/schema/mutations/index.d.ts +10 -0
  1715. package/dist/types/schema/mutations/index.d.ts.map +1 -0
  1716. package/dist/types/schema/utils.d.ts +4 -0
  1717. package/dist/types/schema/utils.d.ts.map +1 -0
  1718. package/dist/types/tsconfig.tsbuildinfo +1 -0
  1719. package/dist/types/types.d.ts +10 -0
  1720. package/dist/types/types.d.ts.map +1 -0
  1721. package/dist/types/utils/Interface.d.ts +4 -0
  1722. package/dist/types/utils/Interface.d.ts.map +1 -0
  1723. package/dist/types/utils/Mutex.d.ts +8 -0
  1724. package/dist/types/utils/Mutex.d.ts.map +1 -0
  1725. package/dist/types/utils/ResolveInfoUtils.d.ts +6 -0
  1726. package/dist/types/utils/ResolveInfoUtils.d.ts.map +1 -0
  1727. package/dist/types/utils/accessor.d.ts +7 -0
  1728. package/dist/types/utils/accessor.d.ts.map +1 -0
  1729. package/dist/types/utils/assertNever.d.ts +2 -0
  1730. package/dist/types/utils/assertNever.d.ts.map +1 -0
  1731. package/dist/types/utils/index.d.ts +14 -0
  1732. package/dist/types/utils/index.d.ts.map +1 -0
  1733. package/dist/types/utils/isIt.d.ts +2 -0
  1734. package/dist/types/utils/isIt.d.ts.map +1 -0
  1735. package/dist/types/utils/object.d.ts +14 -0
  1736. package/dist/types/utils/object.d.ts.map +1 -0
  1737. package/dist/types/utils/paginationUtils.d.ts +12 -0
  1738. package/dist/types/utils/paginationUtils.d.ts.map +1 -0
  1739. package/dist/types/utils/promises.d.ts +3 -0
  1740. package/dist/types/utils/promises.d.ts.map +1 -0
  1741. package/dist/types/utils/singletonFactory.d.ts +2 -0
  1742. package/dist/types/utils/singletonFactory.d.ts.map +1 -0
  1743. package/dist/types/utils/strings.d.ts +3 -0
  1744. package/dist/types/utils/strings.d.ts.map +1 -0
  1745. package/dist/types/utils/tuple.d.ts +2 -0
  1746. package/dist/types/utils/tuple.d.ts.map +1 -0
  1747. package/dist/types/utils/uniqueWhereFields.d.ts +5 -0
  1748. package/dist/types/utils/uniqueWhereFields.d.ts.map +1 -0
  1749. package/dist/types/utils/viewComputedId.d.ts +2 -0
  1750. package/dist/types/utils/viewComputedId.d.ts.map +1 -0
  1751. package/package.json +16 -16
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const Database = require("@contember/database");
4
+ require("@contember/schema-utils");
5
+ require("@contember/schema");
6
+ const FieldNode = require("../../inputProcessing/FieldNode.cjs");
7
+ const OrderByHelper = require("./OrderByHelper.cjs");
8
+ class RelationFetcher {
9
+ constructor(whereBuilder, orderBuilder, predicateInjector, pathFactory) {
10
+ this.whereBuilder = whereBuilder;
11
+ this.orderBuilder = orderBuilder;
12
+ this.predicateInjector = predicateInjector;
13
+ this.pathFactory = pathFactory;
14
+ }
15
+ async countOneHasManyGroups({
16
+ mapper,
17
+ filter,
18
+ relationContext,
19
+ relationPath,
20
+ ids
21
+ }) {
22
+ const { targetRelation, targetEntity } = relationContext;
23
+ const filterWithParent = this.createOneHasManyFilter(targetEntity, targetRelation, ids, filter);
24
+ return mapper.countGrouped(targetEntity, filterWithParent, targetRelation, [
25
+ ...relationPath,
26
+ relationContext
27
+ ]);
28
+ }
29
+ async fetchOneHasManyGroups({
30
+ mapper,
31
+ objectNode,
32
+ relationContext,
33
+ relationPath,
34
+ ids
35
+ }) {
36
+ const { relation, targetEntity, targetRelation } = relationContext;
37
+ const filter = this.createOneHasManyFilter(targetEntity, targetRelation, ids, objectNode.args.filter);
38
+ const objectNodeWithWhere = objectNode.withArg("filter", filter);
39
+ const objectNodeWithOrder = OrderByHelper.OrderByHelper.appendDefaultOrderBy(
40
+ targetEntity,
41
+ objectNodeWithWhere,
42
+ relation.orderBy
43
+ );
44
+ return mapper.selectGrouped(targetEntity, objectNodeWithOrder, targetRelation, [
45
+ ...relationPath,
46
+ relationContext
47
+ ]);
48
+ }
49
+ createOneHasManyFilter(targetEntity, targetRelation, ids, filter) {
50
+ const targetRelationFilter = { [targetEntity.primary]: { in: ids } };
51
+ return {
52
+ ...filter,
53
+ [targetRelation.name]: !filter?.[targetRelation.name] ? targetRelationFilter : { and: [filter[targetRelation.name], targetRelationFilter] }
54
+ };
55
+ }
56
+ async countManyHasManyGroups({
57
+ mapper,
58
+ filter,
59
+ relationContext,
60
+ relationPath,
61
+ ids
62
+ }) {
63
+ const owningRelation = relationContext.type === "manyHasManyInverse" ? relationContext.targetRelation : relationContext.relation;
64
+ const joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable });
65
+ const qb = this.buildJunctionQb(owningRelation, ids, joiningColumns, relationContext.targetEntity, relationContext.entity, { filter }, [
66
+ ...relationPath,
67
+ relationContext
68
+ ]).select(["junction_", joiningColumns.sourceColumn.columnName]).select((expr) => expr.raw("count(*)"), "row_count").groupBy(["junction_", joiningColumns.sourceColumn.columnName]);
69
+ const result = /* @__PURE__ */ new Map();
70
+ const rows = await qb.getResult(mapper.db);
71
+ for (const row of rows) {
72
+ result.set(String(row[joiningColumns.sourceColumn.columnName]), Number(row.row_count));
73
+ }
74
+ return Object.fromEntries(result);
75
+ }
76
+ async fetchManyHasManyGroups({
77
+ mapper,
78
+ field,
79
+ relationContext,
80
+ relationPath,
81
+ ids
82
+ }) {
83
+ const owningRelation = relationContext.type === "manyHasManyInverse" ? relationContext.targetRelation : relationContext.relation;
84
+ const joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable });
85
+ const defaultOrderBy = relationContext.relation.orderBy;
86
+ const objectNode = OrderByHelper.OrderByHelper.appendDefaultOrderBy(relationContext.targetEntity, field, defaultOrderBy);
87
+ const { targetEntity, entity } = relationContext;
88
+ const junctionValues = await this.fetchJunction(
89
+ mapper.db,
90
+ owningRelation,
91
+ ids,
92
+ joiningColumns,
93
+ targetEntity,
94
+ entity,
95
+ objectNode,
96
+ [...relationPath, relationContext]
97
+ );
98
+ if (junctionValues.length === 0) {
99
+ return {};
100
+ }
101
+ const primaryField = new FieldNode.FieldNode(targetEntity.primary, targetEntity.primary, {});
102
+ const inverseJoiningColumn = joiningColumns.targetColumn.columnName;
103
+ const inverseIds = junctionValues.map((it) => it[inverseJoiningColumn]).filter((it, index, arr) => arr.indexOf(it) === index);
104
+ const queryWithWhere = objectNode.withArgs({
105
+ filter: {
106
+ [targetEntity.primary]: { in: inverseIds }
107
+ }
108
+ }).withField(primaryField);
109
+ const result = await mapper.select(targetEntity, queryWithWhere, [...relationPath, relationContext]);
110
+ return this.buildManyHasManyGroups(targetEntity, joiningColumns, result, junctionValues);
111
+ }
112
+ resolveJoiningColumns({ relationType, joiningTable }) {
113
+ return relationType === "manyHasManyOwning" ? {
114
+ sourceColumn: joiningTable.joiningColumn,
115
+ targetColumn: joiningTable.inverseJoiningColumn
116
+ } : {
117
+ sourceColumn: joiningTable.inverseJoiningColumn,
118
+ targetColumn: joiningTable.joiningColumn
119
+ };
120
+ }
121
+ buildManyHasManyGroups(entity, joiningColumns, resultObjects, junctionValues) {
122
+ const dataById = {};
123
+ for (let object of resultObjects) {
124
+ dataById[object[entity.primary]] = object;
125
+ }
126
+ const sourceColumn = joiningColumns.sourceColumn.columnName;
127
+ const targetColumn = joiningColumns.targetColumn.columnName;
128
+ const groupedResult = {};
129
+ for (let pair of junctionValues) {
130
+ if (!groupedResult[pair[sourceColumn]]) {
131
+ groupedResult[pair[sourceColumn]] = [];
132
+ }
133
+ const resultObject = dataById[pair[targetColumn]];
134
+ if (resultObject) {
135
+ groupedResult[pair[sourceColumn]].push(resultObject);
136
+ }
137
+ }
138
+ return groupedResult;
139
+ }
140
+ async fetchJunction(db, relation, values, column, targetEntity, sourceEntity, object, relationPath) {
141
+ const joiningTable = relation.joiningTable;
142
+ const qb = this.buildJunctionQb(relation, values, column, targetEntity, sourceEntity, object.args, relationPath).select(["junction_", joiningTable.inverseJoiningColumn.columnName]).select(["junction_", joiningTable.joiningColumn.columnName]);
143
+ const wrapper = new Database.LimitByGroupWrapper(
144
+ ["junction_", column.sourceColumn.columnName],
145
+ (orderable, qb2) => {
146
+ if (object.args.orderBy) {
147
+ [qb2, orderable] = this.orderBuilder.build(
148
+ qb2,
149
+ orderable,
150
+ targetEntity,
151
+ this.pathFactory.create([]),
152
+ object.args.orderBy
153
+ );
154
+ }
155
+ return [orderable, qb2];
156
+ },
157
+ object.args.offset,
158
+ object.args.limit
159
+ );
160
+ return await wrapper.getResult(qb, db);
161
+ }
162
+ buildJunctionQb(relation, ids, column, targetEntity, sourceEntity, objectArgs, relationPath) {
163
+ const joiningTable = relation.joiningTable;
164
+ const whereColumn = column.sourceColumn.columnName;
165
+ const primaryColumn = sourceEntity.fields[sourceEntity.primary];
166
+ let qb = Database.SelectBuilder.create().from(joiningTable.tableName, "junction_").where((clause) => clause.in(["junction_", whereColumn], ids, primaryColumn.columnType));
167
+ const where = this.predicateInjector.inject(targetEntity, objectArgs.filter || {}, relationPath[relationPath.length - 1]);
168
+ const hasWhere = where && Object.keys(where).length > 0;
169
+ const hasFieldOrderBy = objectArgs.orderBy && objectArgs.orderBy.length > 0 && !objectArgs.orderBy[0]._random && objectArgs.orderBy[0]._randomSeeded === void 0;
170
+ if (hasWhere || hasFieldOrderBy) {
171
+ const path = this.pathFactory.create([]);
172
+ qb = qb.join(
173
+ targetEntity.tableName,
174
+ path.alias,
175
+ (condition) => condition.compareColumns(["junction_", column.targetColumn.columnName], Database.Operator.eq, [
176
+ path.alias,
177
+ targetEntity.primaryColumn
178
+ ])
179
+ );
180
+ }
181
+ if (where && hasWhere) {
182
+ qb = this.whereBuilder.build(qb, targetEntity, this.pathFactory.create([]), where, { relationPath });
183
+ }
184
+ return qb;
185
+ }
186
+ }
187
+ exports.RelationFetcher = RelationFetcher;
188
+ //# sourceMappingURL=RelationFetcher.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationFetcher.cjs","sources":["../../../../../../packages/engine-content-api/src/mapper/select/RelationFetcher.ts"],"sourcesContent":["import { PathFactory } from './Path'\nimport { WhereBuilder } from './WhereBuilder'\nimport { Client, LimitByGroupWrapper, Operator, SelectBuilder } from '@contember/database'\nimport { Input, Model, Value } from '@contember/schema'\nimport { OrderByBuilder } from './OrderByBuilder'\nimport { PredicatesInjector } from '../../acl'\nimport { FieldNode, ObjectNode } from '../../inputProcessing'\nimport { JoiningColumns } from '../types'\nimport { OrderByHelper } from './OrderByHelper'\nimport { SelectGroupedObjects, SelectResultObject, SelectRow } from './SelectHydrator'\nimport { Mapper } from '../Mapper'\n\nexport type GroupedCounts = Record<Input.PrimaryValue, number>\n\ntype CountOneHasManyGroupsArgs = {\n\tmapper: Mapper\n\tfilter: Input.OptionalWhere | undefined\n\trelationPath: Model.AnyRelationContext[]\n\trelationContext: Model.OneHasManyContext\n\tids: Input.PrimaryValue[]\n}\n\ntype FetchOneHasManyGroupsArgs = {\n\tmapper: Mapper\n\tobjectNode: ObjectNode<Input.ListQueryInput>\n\trelationPath: Model.AnyRelationContext[]\n\trelationContext: Model.OneHasManyContext\n\tids: Input.PrimaryValue[]\n}\n\ntype ManyHasManyBaseArgs = {\n\tmapper: Mapper\n\tids: Input.PrimaryValue[]\n\trelationPath: Model.AnyRelationContext[]\n\trelationContext: Model.ManyHasManyInverseContext | Model.ManyHasManyOwningContext\n}\ntype CountManyHasManyGroupArgs =\n\t& ManyHasManyBaseArgs\n\t& {\n\t\tfilter: Input.OptionalWhere | undefined\n\t}\n\ntype FetchManyHasManyGroupsArgs =\n\t& ManyHasManyBaseArgs\n\t& {\n\t\tfield: ObjectNode<Input.ListQueryInput>\n\t}\n\nexport class RelationFetcher {\n\tconstructor(\n\t\tprivate readonly whereBuilder: WhereBuilder,\n\t\tprivate readonly orderBuilder: OrderByBuilder,\n\t\tprivate readonly predicateInjector: PredicatesInjector,\n\t\tprivate readonly pathFactory: PathFactory,\n\t) {}\n\n\tpublic async countOneHasManyGroups({\n\t\tmapper,\n\t\tfilter,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: CountOneHasManyGroupsArgs): Promise<GroupedCounts> {\n\t\tconst { targetRelation, targetEntity } = relationContext\n\t\tconst filterWithParent = this.createOneHasManyFilter(targetEntity, targetRelation, ids, filter)\n\t\treturn mapper.countGrouped(targetEntity, filterWithParent, targetRelation, [\n\t\t\t...relationPath,\n\t\t\trelationContext,\n\t\t])\n\t}\n\n\tpublic async fetchOneHasManyGroups({\n\t\tmapper,\n\t\tobjectNode,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: FetchOneHasManyGroupsArgs): Promise<SelectGroupedObjects> {\n\t\tconst { relation, targetEntity, targetRelation } = relationContext\n\t\tconst filter = this.createOneHasManyFilter(targetEntity, targetRelation, ids, objectNode.args.filter)\n\t\tconst objectNodeWithWhere = objectNode.withArg<Input.ListQueryInput>('filter', filter)\n\t\tconst objectNodeWithOrder = OrderByHelper.appendDefaultOrderBy(\n\t\t\ttargetEntity,\n\t\t\tobjectNodeWithWhere,\n\t\t\trelation.orderBy,\n\t\t)\n\n\t\treturn mapper.selectGrouped(targetEntity, objectNodeWithOrder, targetRelation, [\n\t\t\t...relationPath,\n\t\t\trelationContext,\n\t\t])\n\t}\n\n\tprivate createOneHasManyFilter(\n\t\ttargetEntity: Model.Entity,\n\t\ttargetRelation: Model.ManyHasOneRelation,\n\t\tids: Input.PrimaryValue[],\n\t\tfilter: Input.OptionalWhere | undefined,\n\t): Input.OptionalWhere {\n\t\tconst targetRelationFilter: Input.OptionalWhere = { [targetEntity.primary]: { in: ids } }\n\t\treturn {\n\t\t\t...filter,\n\t\t\t[targetRelation.name]: !filter?.[targetRelation.name]\n\t\t\t\t? targetRelationFilter\n\t\t\t\t: ({ and: [filter[targetRelation.name], targetRelationFilter] } as Input.OptionalWhere),\n\t\t}\n\t}\n\n\tpublic async countManyHasManyGroups({\n\t\tmapper,\n\t\tfilter,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: CountManyHasManyGroupArgs): Promise<GroupedCounts> {\n\t\tconst owningRelation = relationContext.type === 'manyHasManyInverse' ? relationContext.targetRelation : relationContext.relation\n\n\t\tconst joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable })\n\n\t\tconst qb = this.buildJunctionQb(owningRelation, ids, joiningColumns, relationContext.targetEntity, relationContext.entity, { filter }, [\n\t\t\t...relationPath,\n\t\t\trelationContext,\n\t\t])\n\t\t\t.select(['junction_', joiningColumns.sourceColumn.columnName])\n\t\t\t.select(expr => expr.raw('count(*)'), 'row_count')\n\t\t\t.groupBy(['junction_', joiningColumns.sourceColumn.columnName])\n\n\t\tconst result = new Map<string, number>()\n\t\tconst rows = await qb.getResult(mapper.db)\n\t\tfor (const row of rows) {\n\t\t\tresult.set(String(row[joiningColumns.sourceColumn.columnName]), Number(row.row_count))\n\t\t}\n\n\t\treturn Object.fromEntries(result)\n\t}\n\n\tpublic async fetchManyHasManyGroups({\n\t\tmapper,\n\t\tfield,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: FetchManyHasManyGroupsArgs): Promise<SelectGroupedObjects> {\n\t\tconst owningRelation = relationContext.type === 'manyHasManyInverse' ? relationContext.targetRelation : relationContext.relation\n\t\tconst joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable })\n\t\tconst defaultOrderBy = relationContext.relation.orderBy\n\t\tconst objectNode = OrderByHelper.appendDefaultOrderBy(relationContext.targetEntity, field, defaultOrderBy)\n\t\tconst { targetEntity, entity } = relationContext\n\t\tconst junctionValues = await this.fetchJunction(\n\t\t\tmapper.db,\n\t\t\towningRelation,\n\t\t\tids,\n\t\t\tjoiningColumns,\n\t\t\ttargetEntity,\n\t\t\tentity,\n\t\t\tobjectNode,\n\t\t\t[...relationPath, relationContext],\n\t\t)\n\t\tif (junctionValues.length === 0) {\n\t\t\treturn {}\n\t\t}\n\n\t\tconst primaryField = new FieldNode(targetEntity.primary, targetEntity.primary, {})\n\t\tconst inverseJoiningColumn = joiningColumns.targetColumn.columnName\n\t\tconst inverseIds = junctionValues\n\t\t\t.map(it => it[inverseJoiningColumn])\n\t\t\t.filter((it, index, arr) => arr.indexOf(it) === index)\n\n\t\tconst queryWithWhere = objectNode\n\t\t\t.withArgs({\n\t\t\t\tfilter: {\n\t\t\t\t\t[targetEntity.primary]: { in: inverseIds },\n\t\t\t\t},\n\t\t\t})\n\t\t\t.withField(primaryField)\n\t\tconst result = await mapper.select(targetEntity, queryWithWhere, [...relationPath, relationContext])\n\n\t\treturn this.buildManyHasManyGroups(targetEntity, joiningColumns, result, junctionValues)\n\t}\n\n\tprivate resolveJoiningColumns(\n\t\t{ relationType, joiningTable }: { joiningTable: Model.JoiningTable; relationType: 'manyHasManyOwning' | 'manyHasManyInverse' },\n\t): JoiningColumns {\n\t\treturn relationType === 'manyHasManyOwning'\n\t\t\t? {\n\t\t\t\tsourceColumn: joiningTable.joiningColumn,\n\t\t\t\ttargetColumn: joiningTable.inverseJoiningColumn,\n\t\t\t}\n\t\t\t: {\n\t\t\t\tsourceColumn: joiningTable.inverseJoiningColumn,\n\t\t\t\ttargetColumn: joiningTable.joiningColumn,\n\t\t\t}\n\t}\n\n\tprivate buildManyHasManyGroups(\n\t\tentity: Model.Entity,\n\t\tjoiningColumns: JoiningColumns,\n\t\tresultObjects: SelectResultObject[],\n\t\tjunctionValues: SelectRow[],\n\t): SelectGroupedObjects {\n\t\tconst dataById: { [id: string]: SelectResultObject } = {}\n\t\tfor (let object of resultObjects) {\n\t\t\tdataById[object[entity.primary] as Value.PrimaryValue] = object\n\t\t}\n\t\tconst sourceColumn = joiningColumns.sourceColumn.columnName\n\t\tconst targetColumn = joiningColumns.targetColumn.columnName\n\t\tconst groupedResult: SelectGroupedObjects = {}\n\t\tfor (let pair of junctionValues) {\n\t\t\tif (!groupedResult[pair[sourceColumn] as Value.PrimaryValue]) {\n\t\t\t\tgroupedResult[pair[sourceColumn] as Value.PrimaryValue] = []\n\t\t\t}\n\t\t\tconst resultObject = dataById[pair[targetColumn] as Value.PrimaryValue]\n\t\t\tif (resultObject) {\n\t\t\t\tgroupedResult[pair[sourceColumn] as Value.PrimaryValue].push(resultObject)\n\t\t\t}\n\t\t}\n\t\treturn groupedResult\n\t}\n\n\tprivate async fetchJunction(\n\t\tdb: Client,\n\t\trelation: Model.ManyHasManyOwningRelation,\n\t\tvalues: Input.PrimaryValue[],\n\t\tcolumn: JoiningColumns,\n\t\ttargetEntity: Model.Entity,\n\t\tsourceEntity: Model.Entity,\n\t\tobject: ObjectNode<Input.ListQueryInput>,\n\t\trelationPath: Model.AnyRelationContext[],\n\t): Promise<Record<string, Value.AtomicValue>[]> {\n\t\tconst joiningTable = relation.joiningTable\n\t\tconst qb = this.buildJunctionQb(relation, values, column, targetEntity, sourceEntity, object.args, relationPath)\n\t\t\t.select(['junction_', joiningTable.inverseJoiningColumn.columnName])\n\t\t\t.select(['junction_', joiningTable.joiningColumn.columnName])\n\t\tconst wrapper = new LimitByGroupWrapper(\n\t\t\t['junction_', column.sourceColumn.columnName],\n\t\t\t(orderable, qb) => {\n\t\t\t\tif (object.args.orderBy) {\n\t\t\t\t\t;[qb, orderable] = this.orderBuilder.build(\n\t\t\t\t\t\tqb,\n\t\t\t\t\t\torderable,\n\t\t\t\t\t\ttargetEntity,\n\t\t\t\t\t\tthis.pathFactory.create([]),\n\t\t\t\t\t\tobject.args.orderBy,\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\treturn [orderable, qb]\n\t\t\t},\n\t\t\tobject.args.offset,\n\t\t\tobject.args.limit,\n\t\t)\n\n\t\treturn await wrapper.getResult(qb, db)\n\t}\n\n\tprivate buildJunctionQb(\n\t\trelation: Model.ManyHasManyOwningRelation,\n\t\tids: Input.PrimaryValue[],\n\t\tcolumn: JoiningColumns,\n\t\ttargetEntity: Model.Entity,\n\t\tsourceEntity: Model.Entity,\n\t\tobjectArgs: Input.ListQueryInput,\n\t\trelationPath: Model.AnyRelationContext[],\n\t): SelectBuilder {\n\t\tconst joiningTable = relation.joiningTable\n\n\t\tconst whereColumn = column.sourceColumn.columnName\n\t\tconst primaryColumn = sourceEntity.fields[sourceEntity.primary] as Model.AnyColumn\n\t\tlet qb = SelectBuilder.create()\n\t\t\t.from(joiningTable.tableName, 'junction_')\n\t\t\t.where(clause => clause.in(['junction_', whereColumn], ids, primaryColumn.columnType))\n\n\t\tconst where = this.predicateInjector.inject(targetEntity, objectArgs.filter || {}, relationPath[relationPath.length - 1])\n\t\tconst hasWhere = where && Object.keys(where).length > 0\n\t\tconst hasFieldOrderBy = objectArgs.orderBy\n\t\t\t&& objectArgs.orderBy.length > 0\n\t\t\t&& !objectArgs.orderBy[0]._random\n\t\t\t&& objectArgs.orderBy[0]._randomSeeded === undefined\n\n\t\tif (hasWhere || hasFieldOrderBy) {\n\t\t\tconst path = this.pathFactory.create([])\n\t\t\tqb = qb.join(\n\t\t\t\ttargetEntity.tableName,\n\t\t\t\tpath.alias,\n\t\t\t\tcondition =>\n\t\t\t\t\tcondition.compareColumns(['junction_', column.targetColumn.columnName], Operator.eq, [\n\t\t\t\t\t\tpath.alias,\n\t\t\t\t\t\ttargetEntity.primaryColumn,\n\t\t\t\t\t]),\n\t\t\t)\n\t\t}\n\n\t\tif (where && hasWhere) {\n\t\t\tqb = this.whereBuilder.build(qb, targetEntity, this.pathFactory.create([]), where, { relationPath })\n\t\t}\n\t\treturn qb\n\t}\n}\n"],"names":["OrderByHelper","FieldNode","LimitByGroupWrapper","qb","SelectBuilder","Operator"],"mappings":"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"}
@@ -0,0 +1,188 @@
1
+ import { LimitByGroupWrapper, SelectBuilder, Operator } from "@contember/database";
2
+ import "@contember/schema-utils";
3
+ import "@contember/schema";
4
+ import { FieldNode } from "../../inputProcessing/FieldNode.js";
5
+ import { OrderByHelper } from "./OrderByHelper.js";
6
+ class RelationFetcher {
7
+ constructor(whereBuilder, orderBuilder, predicateInjector, pathFactory) {
8
+ this.whereBuilder = whereBuilder;
9
+ this.orderBuilder = orderBuilder;
10
+ this.predicateInjector = predicateInjector;
11
+ this.pathFactory = pathFactory;
12
+ }
13
+ async countOneHasManyGroups({
14
+ mapper,
15
+ filter,
16
+ relationContext,
17
+ relationPath,
18
+ ids
19
+ }) {
20
+ const { targetRelation, targetEntity } = relationContext;
21
+ const filterWithParent = this.createOneHasManyFilter(targetEntity, targetRelation, ids, filter);
22
+ return mapper.countGrouped(targetEntity, filterWithParent, targetRelation, [
23
+ ...relationPath,
24
+ relationContext
25
+ ]);
26
+ }
27
+ async fetchOneHasManyGroups({
28
+ mapper,
29
+ objectNode,
30
+ relationContext,
31
+ relationPath,
32
+ ids
33
+ }) {
34
+ const { relation, targetEntity, targetRelation } = relationContext;
35
+ const filter = this.createOneHasManyFilter(targetEntity, targetRelation, ids, objectNode.args.filter);
36
+ const objectNodeWithWhere = objectNode.withArg("filter", filter);
37
+ const objectNodeWithOrder = OrderByHelper.appendDefaultOrderBy(
38
+ targetEntity,
39
+ objectNodeWithWhere,
40
+ relation.orderBy
41
+ );
42
+ return mapper.selectGrouped(targetEntity, objectNodeWithOrder, targetRelation, [
43
+ ...relationPath,
44
+ relationContext
45
+ ]);
46
+ }
47
+ createOneHasManyFilter(targetEntity, targetRelation, ids, filter) {
48
+ const targetRelationFilter = { [targetEntity.primary]: { in: ids } };
49
+ return {
50
+ ...filter,
51
+ [targetRelation.name]: !filter?.[targetRelation.name] ? targetRelationFilter : { and: [filter[targetRelation.name], targetRelationFilter] }
52
+ };
53
+ }
54
+ async countManyHasManyGroups({
55
+ mapper,
56
+ filter,
57
+ relationContext,
58
+ relationPath,
59
+ ids
60
+ }) {
61
+ const owningRelation = relationContext.type === "manyHasManyInverse" ? relationContext.targetRelation : relationContext.relation;
62
+ const joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable });
63
+ const qb = this.buildJunctionQb(owningRelation, ids, joiningColumns, relationContext.targetEntity, relationContext.entity, { filter }, [
64
+ ...relationPath,
65
+ relationContext
66
+ ]).select(["junction_", joiningColumns.sourceColumn.columnName]).select((expr) => expr.raw("count(*)"), "row_count").groupBy(["junction_", joiningColumns.sourceColumn.columnName]);
67
+ const result = /* @__PURE__ */ new Map();
68
+ const rows = await qb.getResult(mapper.db);
69
+ for (const row of rows) {
70
+ result.set(String(row[joiningColumns.sourceColumn.columnName]), Number(row.row_count));
71
+ }
72
+ return Object.fromEntries(result);
73
+ }
74
+ async fetchManyHasManyGroups({
75
+ mapper,
76
+ field,
77
+ relationContext,
78
+ relationPath,
79
+ ids
80
+ }) {
81
+ const owningRelation = relationContext.type === "manyHasManyInverse" ? relationContext.targetRelation : relationContext.relation;
82
+ const joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable });
83
+ const defaultOrderBy = relationContext.relation.orderBy;
84
+ const objectNode = OrderByHelper.appendDefaultOrderBy(relationContext.targetEntity, field, defaultOrderBy);
85
+ const { targetEntity, entity } = relationContext;
86
+ const junctionValues = await this.fetchJunction(
87
+ mapper.db,
88
+ owningRelation,
89
+ ids,
90
+ joiningColumns,
91
+ targetEntity,
92
+ entity,
93
+ objectNode,
94
+ [...relationPath, relationContext]
95
+ );
96
+ if (junctionValues.length === 0) {
97
+ return {};
98
+ }
99
+ const primaryField = new FieldNode(targetEntity.primary, targetEntity.primary, {});
100
+ const inverseJoiningColumn = joiningColumns.targetColumn.columnName;
101
+ const inverseIds = junctionValues.map((it) => it[inverseJoiningColumn]).filter((it, index, arr) => arr.indexOf(it) === index);
102
+ const queryWithWhere = objectNode.withArgs({
103
+ filter: {
104
+ [targetEntity.primary]: { in: inverseIds }
105
+ }
106
+ }).withField(primaryField);
107
+ const result = await mapper.select(targetEntity, queryWithWhere, [...relationPath, relationContext]);
108
+ return this.buildManyHasManyGroups(targetEntity, joiningColumns, result, junctionValues);
109
+ }
110
+ resolveJoiningColumns({ relationType, joiningTable }) {
111
+ return relationType === "manyHasManyOwning" ? {
112
+ sourceColumn: joiningTable.joiningColumn,
113
+ targetColumn: joiningTable.inverseJoiningColumn
114
+ } : {
115
+ sourceColumn: joiningTable.inverseJoiningColumn,
116
+ targetColumn: joiningTable.joiningColumn
117
+ };
118
+ }
119
+ buildManyHasManyGroups(entity, joiningColumns, resultObjects, junctionValues) {
120
+ const dataById = {};
121
+ for (let object of resultObjects) {
122
+ dataById[object[entity.primary]] = object;
123
+ }
124
+ const sourceColumn = joiningColumns.sourceColumn.columnName;
125
+ const targetColumn = joiningColumns.targetColumn.columnName;
126
+ const groupedResult = {};
127
+ for (let pair of junctionValues) {
128
+ if (!groupedResult[pair[sourceColumn]]) {
129
+ groupedResult[pair[sourceColumn]] = [];
130
+ }
131
+ const resultObject = dataById[pair[targetColumn]];
132
+ if (resultObject) {
133
+ groupedResult[pair[sourceColumn]].push(resultObject);
134
+ }
135
+ }
136
+ return groupedResult;
137
+ }
138
+ async fetchJunction(db, relation, values, column, targetEntity, sourceEntity, object, relationPath) {
139
+ const joiningTable = relation.joiningTable;
140
+ const qb = this.buildJunctionQb(relation, values, column, targetEntity, sourceEntity, object.args, relationPath).select(["junction_", joiningTable.inverseJoiningColumn.columnName]).select(["junction_", joiningTable.joiningColumn.columnName]);
141
+ const wrapper = new LimitByGroupWrapper(
142
+ ["junction_", column.sourceColumn.columnName],
143
+ (orderable, qb2) => {
144
+ if (object.args.orderBy) {
145
+ [qb2, orderable] = this.orderBuilder.build(
146
+ qb2,
147
+ orderable,
148
+ targetEntity,
149
+ this.pathFactory.create([]),
150
+ object.args.orderBy
151
+ );
152
+ }
153
+ return [orderable, qb2];
154
+ },
155
+ object.args.offset,
156
+ object.args.limit
157
+ );
158
+ return await wrapper.getResult(qb, db);
159
+ }
160
+ buildJunctionQb(relation, ids, column, targetEntity, sourceEntity, objectArgs, relationPath) {
161
+ const joiningTable = relation.joiningTable;
162
+ const whereColumn = column.sourceColumn.columnName;
163
+ const primaryColumn = sourceEntity.fields[sourceEntity.primary];
164
+ let qb = SelectBuilder.create().from(joiningTable.tableName, "junction_").where((clause) => clause.in(["junction_", whereColumn], ids, primaryColumn.columnType));
165
+ const where = this.predicateInjector.inject(targetEntity, objectArgs.filter || {}, relationPath[relationPath.length - 1]);
166
+ const hasWhere = where && Object.keys(where).length > 0;
167
+ const hasFieldOrderBy = objectArgs.orderBy && objectArgs.orderBy.length > 0 && !objectArgs.orderBy[0]._random && objectArgs.orderBy[0]._randomSeeded === void 0;
168
+ if (hasWhere || hasFieldOrderBy) {
169
+ const path = this.pathFactory.create([]);
170
+ qb = qb.join(
171
+ targetEntity.tableName,
172
+ path.alias,
173
+ (condition) => condition.compareColumns(["junction_", column.targetColumn.columnName], Operator.eq, [
174
+ path.alias,
175
+ targetEntity.primaryColumn
176
+ ])
177
+ );
178
+ }
179
+ if (where && hasWhere) {
180
+ qb = this.whereBuilder.build(qb, targetEntity, this.pathFactory.create([]), where, { relationPath });
181
+ }
182
+ return qb;
183
+ }
184
+ }
185
+ export {
186
+ RelationFetcher
187
+ };
188
+ //# sourceMappingURL=RelationFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationFetcher.js","sources":["../../../../../../packages/engine-content-api/src/mapper/select/RelationFetcher.ts"],"sourcesContent":["import { PathFactory } from './Path'\nimport { WhereBuilder } from './WhereBuilder'\nimport { Client, LimitByGroupWrapper, Operator, SelectBuilder } from '@contember/database'\nimport { Input, Model, Value } from '@contember/schema'\nimport { OrderByBuilder } from './OrderByBuilder'\nimport { PredicatesInjector } from '../../acl'\nimport { FieldNode, ObjectNode } from '../../inputProcessing'\nimport { JoiningColumns } from '../types'\nimport { OrderByHelper } from './OrderByHelper'\nimport { SelectGroupedObjects, SelectResultObject, SelectRow } from './SelectHydrator'\nimport { Mapper } from '../Mapper'\n\nexport type GroupedCounts = Record<Input.PrimaryValue, number>\n\ntype CountOneHasManyGroupsArgs = {\n\tmapper: Mapper\n\tfilter: Input.OptionalWhere | undefined\n\trelationPath: Model.AnyRelationContext[]\n\trelationContext: Model.OneHasManyContext\n\tids: Input.PrimaryValue[]\n}\n\ntype FetchOneHasManyGroupsArgs = {\n\tmapper: Mapper\n\tobjectNode: ObjectNode<Input.ListQueryInput>\n\trelationPath: Model.AnyRelationContext[]\n\trelationContext: Model.OneHasManyContext\n\tids: Input.PrimaryValue[]\n}\n\ntype ManyHasManyBaseArgs = {\n\tmapper: Mapper\n\tids: Input.PrimaryValue[]\n\trelationPath: Model.AnyRelationContext[]\n\trelationContext: Model.ManyHasManyInverseContext | Model.ManyHasManyOwningContext\n}\ntype CountManyHasManyGroupArgs =\n\t& ManyHasManyBaseArgs\n\t& {\n\t\tfilter: Input.OptionalWhere | undefined\n\t}\n\ntype FetchManyHasManyGroupsArgs =\n\t& ManyHasManyBaseArgs\n\t& {\n\t\tfield: ObjectNode<Input.ListQueryInput>\n\t}\n\nexport class RelationFetcher {\n\tconstructor(\n\t\tprivate readonly whereBuilder: WhereBuilder,\n\t\tprivate readonly orderBuilder: OrderByBuilder,\n\t\tprivate readonly predicateInjector: PredicatesInjector,\n\t\tprivate readonly pathFactory: PathFactory,\n\t) {}\n\n\tpublic async countOneHasManyGroups({\n\t\tmapper,\n\t\tfilter,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: CountOneHasManyGroupsArgs): Promise<GroupedCounts> {\n\t\tconst { targetRelation, targetEntity } = relationContext\n\t\tconst filterWithParent = this.createOneHasManyFilter(targetEntity, targetRelation, ids, filter)\n\t\treturn mapper.countGrouped(targetEntity, filterWithParent, targetRelation, [\n\t\t\t...relationPath,\n\t\t\trelationContext,\n\t\t])\n\t}\n\n\tpublic async fetchOneHasManyGroups({\n\t\tmapper,\n\t\tobjectNode,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: FetchOneHasManyGroupsArgs): Promise<SelectGroupedObjects> {\n\t\tconst { relation, targetEntity, targetRelation } = relationContext\n\t\tconst filter = this.createOneHasManyFilter(targetEntity, targetRelation, ids, objectNode.args.filter)\n\t\tconst objectNodeWithWhere = objectNode.withArg<Input.ListQueryInput>('filter', filter)\n\t\tconst objectNodeWithOrder = OrderByHelper.appendDefaultOrderBy(\n\t\t\ttargetEntity,\n\t\t\tobjectNodeWithWhere,\n\t\t\trelation.orderBy,\n\t\t)\n\n\t\treturn mapper.selectGrouped(targetEntity, objectNodeWithOrder, targetRelation, [\n\t\t\t...relationPath,\n\t\t\trelationContext,\n\t\t])\n\t}\n\n\tprivate createOneHasManyFilter(\n\t\ttargetEntity: Model.Entity,\n\t\ttargetRelation: Model.ManyHasOneRelation,\n\t\tids: Input.PrimaryValue[],\n\t\tfilter: Input.OptionalWhere | undefined,\n\t): Input.OptionalWhere {\n\t\tconst targetRelationFilter: Input.OptionalWhere = { [targetEntity.primary]: { in: ids } }\n\t\treturn {\n\t\t\t...filter,\n\t\t\t[targetRelation.name]: !filter?.[targetRelation.name]\n\t\t\t\t? targetRelationFilter\n\t\t\t\t: ({ and: [filter[targetRelation.name], targetRelationFilter] } as Input.OptionalWhere),\n\t\t}\n\t}\n\n\tpublic async countManyHasManyGroups({\n\t\tmapper,\n\t\tfilter,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: CountManyHasManyGroupArgs): Promise<GroupedCounts> {\n\t\tconst owningRelation = relationContext.type === 'manyHasManyInverse' ? relationContext.targetRelation : relationContext.relation\n\n\t\tconst joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable })\n\n\t\tconst qb = this.buildJunctionQb(owningRelation, ids, joiningColumns, relationContext.targetEntity, relationContext.entity, { filter }, [\n\t\t\t...relationPath,\n\t\t\trelationContext,\n\t\t])\n\t\t\t.select(['junction_', joiningColumns.sourceColumn.columnName])\n\t\t\t.select(expr => expr.raw('count(*)'), 'row_count')\n\t\t\t.groupBy(['junction_', joiningColumns.sourceColumn.columnName])\n\n\t\tconst result = new Map<string, number>()\n\t\tconst rows = await qb.getResult(mapper.db)\n\t\tfor (const row of rows) {\n\t\t\tresult.set(String(row[joiningColumns.sourceColumn.columnName]), Number(row.row_count))\n\t\t}\n\n\t\treturn Object.fromEntries(result)\n\t}\n\n\tpublic async fetchManyHasManyGroups({\n\t\tmapper,\n\t\tfield,\n\t\trelationContext,\n\t\trelationPath,\n\t\tids,\n\t}: FetchManyHasManyGroupsArgs): Promise<SelectGroupedObjects> {\n\t\tconst owningRelation = relationContext.type === 'manyHasManyInverse' ? relationContext.targetRelation : relationContext.relation\n\t\tconst joiningColumns = this.resolveJoiningColumns({ relationType: relationContext.type, joiningTable: owningRelation.joiningTable })\n\t\tconst defaultOrderBy = relationContext.relation.orderBy\n\t\tconst objectNode = OrderByHelper.appendDefaultOrderBy(relationContext.targetEntity, field, defaultOrderBy)\n\t\tconst { targetEntity, entity } = relationContext\n\t\tconst junctionValues = await this.fetchJunction(\n\t\t\tmapper.db,\n\t\t\towningRelation,\n\t\t\tids,\n\t\t\tjoiningColumns,\n\t\t\ttargetEntity,\n\t\t\tentity,\n\t\t\tobjectNode,\n\t\t\t[...relationPath, relationContext],\n\t\t)\n\t\tif (junctionValues.length === 0) {\n\t\t\treturn {}\n\t\t}\n\n\t\tconst primaryField = new FieldNode(targetEntity.primary, targetEntity.primary, {})\n\t\tconst inverseJoiningColumn = joiningColumns.targetColumn.columnName\n\t\tconst inverseIds = junctionValues\n\t\t\t.map(it => it[inverseJoiningColumn])\n\t\t\t.filter((it, index, arr) => arr.indexOf(it) === index)\n\n\t\tconst queryWithWhere = objectNode\n\t\t\t.withArgs({\n\t\t\t\tfilter: {\n\t\t\t\t\t[targetEntity.primary]: { in: inverseIds },\n\t\t\t\t},\n\t\t\t})\n\t\t\t.withField(primaryField)\n\t\tconst result = await mapper.select(targetEntity, queryWithWhere, [...relationPath, relationContext])\n\n\t\treturn this.buildManyHasManyGroups(targetEntity, joiningColumns, result, junctionValues)\n\t}\n\n\tprivate resolveJoiningColumns(\n\t\t{ relationType, joiningTable }: { joiningTable: Model.JoiningTable; relationType: 'manyHasManyOwning' | 'manyHasManyInverse' },\n\t): JoiningColumns {\n\t\treturn relationType === 'manyHasManyOwning'\n\t\t\t? {\n\t\t\t\tsourceColumn: joiningTable.joiningColumn,\n\t\t\t\ttargetColumn: joiningTable.inverseJoiningColumn,\n\t\t\t}\n\t\t\t: {\n\t\t\t\tsourceColumn: joiningTable.inverseJoiningColumn,\n\t\t\t\ttargetColumn: joiningTable.joiningColumn,\n\t\t\t}\n\t}\n\n\tprivate buildManyHasManyGroups(\n\t\tentity: Model.Entity,\n\t\tjoiningColumns: JoiningColumns,\n\t\tresultObjects: SelectResultObject[],\n\t\tjunctionValues: SelectRow[],\n\t): SelectGroupedObjects {\n\t\tconst dataById: { [id: string]: SelectResultObject } = {}\n\t\tfor (let object of resultObjects) {\n\t\t\tdataById[object[entity.primary] as Value.PrimaryValue] = object\n\t\t}\n\t\tconst sourceColumn = joiningColumns.sourceColumn.columnName\n\t\tconst targetColumn = joiningColumns.targetColumn.columnName\n\t\tconst groupedResult: SelectGroupedObjects = {}\n\t\tfor (let pair of junctionValues) {\n\t\t\tif (!groupedResult[pair[sourceColumn] as Value.PrimaryValue]) {\n\t\t\t\tgroupedResult[pair[sourceColumn] as Value.PrimaryValue] = []\n\t\t\t}\n\t\t\tconst resultObject = dataById[pair[targetColumn] as Value.PrimaryValue]\n\t\t\tif (resultObject) {\n\t\t\t\tgroupedResult[pair[sourceColumn] as Value.PrimaryValue].push(resultObject)\n\t\t\t}\n\t\t}\n\t\treturn groupedResult\n\t}\n\n\tprivate async fetchJunction(\n\t\tdb: Client,\n\t\trelation: Model.ManyHasManyOwningRelation,\n\t\tvalues: Input.PrimaryValue[],\n\t\tcolumn: JoiningColumns,\n\t\ttargetEntity: Model.Entity,\n\t\tsourceEntity: Model.Entity,\n\t\tobject: ObjectNode<Input.ListQueryInput>,\n\t\trelationPath: Model.AnyRelationContext[],\n\t): Promise<Record<string, Value.AtomicValue>[]> {\n\t\tconst joiningTable = relation.joiningTable\n\t\tconst qb = this.buildJunctionQb(relation, values, column, targetEntity, sourceEntity, object.args, relationPath)\n\t\t\t.select(['junction_', joiningTable.inverseJoiningColumn.columnName])\n\t\t\t.select(['junction_', joiningTable.joiningColumn.columnName])\n\t\tconst wrapper = new LimitByGroupWrapper(\n\t\t\t['junction_', column.sourceColumn.columnName],\n\t\t\t(orderable, qb) => {\n\t\t\t\tif (object.args.orderBy) {\n\t\t\t\t\t;[qb, orderable] = this.orderBuilder.build(\n\t\t\t\t\t\tqb,\n\t\t\t\t\t\torderable,\n\t\t\t\t\t\ttargetEntity,\n\t\t\t\t\t\tthis.pathFactory.create([]),\n\t\t\t\t\t\tobject.args.orderBy,\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\treturn [orderable, qb]\n\t\t\t},\n\t\t\tobject.args.offset,\n\t\t\tobject.args.limit,\n\t\t)\n\n\t\treturn await wrapper.getResult(qb, db)\n\t}\n\n\tprivate buildJunctionQb(\n\t\trelation: Model.ManyHasManyOwningRelation,\n\t\tids: Input.PrimaryValue[],\n\t\tcolumn: JoiningColumns,\n\t\ttargetEntity: Model.Entity,\n\t\tsourceEntity: Model.Entity,\n\t\tobjectArgs: Input.ListQueryInput,\n\t\trelationPath: Model.AnyRelationContext[],\n\t): SelectBuilder {\n\t\tconst joiningTable = relation.joiningTable\n\n\t\tconst whereColumn = column.sourceColumn.columnName\n\t\tconst primaryColumn = sourceEntity.fields[sourceEntity.primary] as Model.AnyColumn\n\t\tlet qb = SelectBuilder.create()\n\t\t\t.from(joiningTable.tableName, 'junction_')\n\t\t\t.where(clause => clause.in(['junction_', whereColumn], ids, primaryColumn.columnType))\n\n\t\tconst where = this.predicateInjector.inject(targetEntity, objectArgs.filter || {}, relationPath[relationPath.length - 1])\n\t\tconst hasWhere = where && Object.keys(where).length > 0\n\t\tconst hasFieldOrderBy = objectArgs.orderBy\n\t\t\t&& objectArgs.orderBy.length > 0\n\t\t\t&& !objectArgs.orderBy[0]._random\n\t\t\t&& objectArgs.orderBy[0]._randomSeeded === undefined\n\n\t\tif (hasWhere || hasFieldOrderBy) {\n\t\t\tconst path = this.pathFactory.create([])\n\t\t\tqb = qb.join(\n\t\t\t\ttargetEntity.tableName,\n\t\t\t\tpath.alias,\n\t\t\t\tcondition =>\n\t\t\t\t\tcondition.compareColumns(['junction_', column.targetColumn.columnName], Operator.eq, [\n\t\t\t\t\t\tpath.alias,\n\t\t\t\t\t\ttargetEntity.primaryColumn,\n\t\t\t\t\t]),\n\t\t\t)\n\t\t}\n\n\t\tif (where && hasWhere) {\n\t\t\tqb = this.whereBuilder.build(qb, targetEntity, this.pathFactory.create([]), where, { relationPath })\n\t\t}\n\t\treturn qb\n\t}\n}\n"],"names":["qb"],"mappings":"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"}
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const schema = require("@contember/schema");
4
+ const schemaUtils = require("@contember/schema-utils");
5
+ const Database = require("@contember/database");
6
+ const assertNever = require("../../utils/assertNever.cjs");
7
+ const FieldNode = require("../../inputProcessing/FieldNode.cjs");
8
+ const ObjectNode = require("../../inputProcessing/ObjectNode.cjs");
9
+ var __defProp = Object.defineProperty;
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
12
+ class SelectBuilder {
13
+ constructor(schema2, whereBuilder, orderByBuilder, metaHandler, qb, hydrator, fieldsVisitorFactory, selectHandlers, pathFactory, relationPath, predicateFactory) {
14
+ this.schema = schema2;
15
+ this.whereBuilder = whereBuilder;
16
+ this.orderByBuilder = orderByBuilder;
17
+ this.metaHandler = metaHandler;
18
+ this.qb = qb;
19
+ this.hydrator = hydrator;
20
+ this.fieldsVisitorFactory = fieldsVisitorFactory;
21
+ this.selectHandlers = selectHandlers;
22
+ this.pathFactory = pathFactory;
23
+ this.relationPath = relationPath;
24
+ this.predicateFactory = predicateFactory;
25
+ __publicField(this, "resolver", () => {
26
+ throw new Error("SelectBuilder: Resolver called too soon");
27
+ });
28
+ __publicField(this, "rows", new Promise((resolve) => this.resolver = resolve));
29
+ __publicField(this, "queryWrapper", null);
30
+ }
31
+ async execute(db) {
32
+ let result;
33
+ if (this.queryWrapper) {
34
+ result = await this.queryWrapper.getResult(this.qb, db);
35
+ } else {
36
+ result = await this.qb.getResult(db);
37
+ }
38
+ this.resolver(result);
39
+ return result;
40
+ }
41
+ select(mapper, entity, input, path, groupBy) {
42
+ this.selectInternal(mapper, entity, path, input);
43
+ const where = input.args.filter;
44
+ if (where) {
45
+ this.qb = this.whereBuilder.build(this.qb, entity, path, where, { relationPath: this.relationPath });
46
+ }
47
+ const orderBy = input.args.orderBy || [];
48
+ if (groupBy) {
49
+ const groupByColumn = schemaUtils.getColumnName(this.schema, entity, groupBy);
50
+ this.queryWrapper = new Database.LimitByGroupWrapper(
51
+ [path.alias, groupByColumn],
52
+ (orderable, qb) => {
53
+ if (orderBy.length > 0) {
54
+ [qb, orderable] = this.orderByBuilder.build(qb, orderable, entity, this.pathFactory.create([]), orderBy);
55
+ }
56
+ return [orderable, qb];
57
+ },
58
+ input.args.offset,
59
+ input.args.limit
60
+ );
61
+ } else {
62
+ if (orderBy.length > 0) {
63
+ [this.qb] = this.orderByBuilder.build(this.qb, null, entity, path, orderBy);
64
+ }
65
+ this.qb = this.qb.limit(input.args.limit, input.args.offset);
66
+ }
67
+ }
68
+ selectInternal(mapper, entity, path, input) {
69
+ if (!input.fields.find((it) => it.name === entity.primary && it.alias === entity.primary)) {
70
+ input = input.withField(new FieldNode.FieldNode(entity.primary, entity.primary, {}));
71
+ }
72
+ const fetchedPredicates = /* @__PURE__ */ new Set();
73
+ const addPredicate = (predicate) => {
74
+ if (typeof predicate === "boolean") {
75
+ return () => predicate;
76
+ }
77
+ const predicatePath = path.for("__predicate").for(predicate);
78
+ if (!fetchedPredicates.has(predicate)) {
79
+ const relationContext = this.relationPath[this.relationPath.length - 1];
80
+ const primaryPredicate = this.predicateFactory.create(entity, schema.Acl.Operation.read, void 0, relationContext);
81
+ const fieldPredicate = this.predicateFactory.buildPredicates(entity, [predicate], relationContext);
82
+ this.qb = this.whereBuilder.buildAdvanced(
83
+ entity,
84
+ path.back(),
85
+ fieldPredicate,
86
+ (apply) => this.qb.select((expr) => expr.selectCondition((condition) => {
87
+ condition = apply(condition);
88
+ if (condition.isEmpty()) {
89
+ return condition.raw("true");
90
+ }
91
+ return condition;
92
+ }), predicatePath.alias),
93
+ { relationPath: this.relationPath, evaluatedPredicates: [primaryPredicate] }
94
+ );
95
+ fetchedPredicates.add(predicate);
96
+ }
97
+ return (row) => row[predicatePath.alias] === true;
98
+ };
99
+ for (let field of input.fields) {
100
+ const fieldPath = path.for(field.alias);
101
+ const fieldProperty = (() => {
102
+ if (field instanceof ObjectNode.ObjectNode) {
103
+ return { objectNode: field };
104
+ }
105
+ if (field instanceof FieldNode.FieldNode) {
106
+ return { fieldNode: field };
107
+ }
108
+ return assertNever.assertNever();
109
+ })();
110
+ const executionContext = {
111
+ mapper,
112
+ relationPath: this.relationPath,
113
+ addData: async ({ field: field2, dataProvider, defaultValue, predicate }) => {
114
+ if (predicate === false) {
115
+ this.hydrator.addPromise(fieldPath, () => null, Promise.resolve({}), defaultValue ?? null);
116
+ return;
117
+ }
118
+ const predicateGetter = predicate !== void 0 && predicate !== true ? addPredicate(predicate) : null;
119
+ const columnName = schemaUtils.getColumnName(this.schema, entity, field2);
120
+ const parentValuePath = path.for(field2);
121
+ let ids = await this.getColumnValues(parentValuePath, columnName, predicateGetter);
122
+ const data = ids.length > 0 ? dataProvider(ids) : Promise.resolve({});
123
+ this.hydrator.addPromise(
124
+ fieldPath,
125
+ (row) => predicateGetter === null || predicateGetter(row) ? row[parentValuePath.alias] : null,
126
+ data,
127
+ defaultValue ?? null
128
+ );
129
+ },
130
+ addColumn: ({ path: path2 = fieldPath, predicate, query, valueGetter }) => {
131
+ if (predicate === false) {
132
+ this.hydrator.addColumn(path2, () => null);
133
+ return;
134
+ }
135
+ const predicateGetter = predicate !== void 0 && predicate !== true ? addPredicate(predicate) : null;
136
+ if (query) {
137
+ this.qb = query(this.qb);
138
+ }
139
+ this.hydrator.addColumn(
140
+ path2,
141
+ valueGetter ?? ((row) => predicateGetter === null || predicateGetter(row) ? row[path2.alias] : null)
142
+ );
143
+ },
144
+ addPredicate,
145
+ path: fieldPath,
146
+ entity,
147
+ ...fieldProperty
148
+ };
149
+ if (field.name === "_meta") {
150
+ this.metaHandler.process(executionContext);
151
+ continue;
152
+ }
153
+ if (field.name === "__typename") {
154
+ continue;
155
+ }
156
+ if (field.extensions.extensionKey) {
157
+ const handler = this.selectHandlers[field.extensions.extensionKey];
158
+ if (!handler) {
159
+ throw new Error(`Handler for ${field.extensions.extensionKey} not found`);
160
+ }
161
+ handler.process(executionContext);
162
+ continue;
163
+ }
164
+ const fieldVisitor = this.fieldsVisitorFactory.create(mapper, executionContext);
165
+ schemaUtils.acceptFieldVisitor(this.schema, entity, field.name, fieldVisitor);
166
+ }
167
+ }
168
+ async getColumnValues(columnPath, columnName, predicateGetter) {
169
+ this.qb = this.qb.select([columnPath.back().alias, columnName], columnPath.alias);
170
+ const rows = await this.rows;
171
+ const filteredRows = predicateGetter === null ? rows : rows.filter(predicateGetter);
172
+ const columnAlias = columnPath.alias;
173
+ const ids = filteredRows.map((it) => it[columnAlias]).filter((it) => it !== null);
174
+ return Array.from(new Set(ids));
175
+ }
176
+ }
177
+ exports.SelectBuilder = SelectBuilder;
178
+ //# sourceMappingURL=SelectBuilder.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectBuilder.cjs","sources":["../../../../../../packages/engine-content-api/src/mapper/select/SelectBuilder.ts"],"sourcesContent":["import { Acl, Input, Model, Value } from '@contember/schema'\nimport { acceptFieldVisitor, getColumnName } from '@contember/schema-utils'\nimport { ColumnValueGetter, SelectHydrator, SelectRow } from './SelectHydrator'\nimport { Path, PathFactory } from './Path'\nimport { WhereBuilder } from './WhereBuilder'\nimport { Client, LimitByGroupWrapper, SelectBuilder as DbSelectBuilder } from '@contember/database'\nimport { OrderByBuilder } from './OrderByBuilder'\nimport { FieldsVisitorFactory } from './handlers'\nimport { SelectExecutionHandler, SelectExecutionHandlerContext } from './SelectExecutionHandler'\nimport { MetaHandler } from './handlers'\nimport { Mapper } from '../Mapper'\nimport { FieldNode, ObjectNode } from '../../inputProcessing'\nimport { assertNever } from '../../utils'\nimport { PredicateFactory } from '../../acl'\n\nexport class SelectBuilder {\n\tprivate resolver: (value: SelectRow[]) => void = () => {\n\t\tthrow new Error('SelectBuilder: Resolver called too soon')\n\t}\n\tpublic readonly rows: Promise<SelectRow[]> = new Promise(resolve => (this.resolver = resolve))\n\n\tprivate queryWrapper: LimitByGroupWrapper | null = null\n\n\tconstructor(\n\t\tprivate readonly schema: Model.Schema,\n\t\tprivate readonly whereBuilder: WhereBuilder,\n\t\tprivate readonly orderByBuilder: OrderByBuilder,\n\t\tprivate readonly metaHandler: MetaHandler,\n\t\tprivate qb: DbSelectBuilder<DbSelectBuilder.Result>,\n\t\tprivate readonly hydrator: SelectHydrator,\n\t\tprivate readonly fieldsVisitorFactory: FieldsVisitorFactory,\n\t\tprivate readonly selectHandlers: { [key: string]: SelectExecutionHandler<any> },\n\t\tprivate readonly pathFactory: PathFactory,\n\t\tprivate readonly relationPath: Model.AnyRelationContext[],\n\t\tprivate readonly predicateFactory: PredicateFactory,\n\t) {}\n\n\tpublic async execute(db: Client): Promise<SelectRow[]> {\n\t\tlet result: SelectRow[]\n\t\tif (this.queryWrapper) {\n\t\t\tresult = await this.queryWrapper.getResult(this.qb, db)\n\t\t} else {\n\t\t\tresult = await this.qb.getResult(db)\n\t\t}\n\t\tthis.resolver(result)\n\t\treturn result\n\t}\n\n\tpublic select(\n\t\tmapper: Mapper,\n\t\tentity: Model.Entity,\n\t\tinput: ObjectNode<Input.ListQueryInput>,\n\t\tpath: Path,\n\t\tgroupBy?: string,\n\t) {\n\t\tthis.selectInternal(mapper, entity, path, input)\n\t\tconst where = input.args.filter\n\t\tif (where) {\n\t\t\tthis.qb = this.whereBuilder.build(this.qb, entity, path, where, { relationPath: this.relationPath })\n\t\t}\n\t\tconst orderBy = input.args.orderBy || []\n\n\t\tif (groupBy) {\n\t\t\tconst groupByColumn = getColumnName(this.schema, entity, groupBy)\n\t\t\tthis.queryWrapper = new LimitByGroupWrapper(\n\t\t\t\t[path.alias, groupByColumn],\n\t\t\t\t(orderable, qb) => {\n\t\t\t\t\tif (orderBy.length > 0) {\n\t\t\t\t\t\t;[qb, orderable] = this.orderByBuilder.build(qb, orderable, entity, this.pathFactory.create([]), orderBy)\n\t\t\t\t\t}\n\t\t\t\t\treturn [orderable, qb]\n\t\t\t\t},\n\t\t\t\tinput.args.offset,\n\t\t\t\tinput.args.limit,\n\t\t\t)\n\t\t} else {\n\t\t\tif (orderBy.length > 0) {\n\t\t\t\t;[this.qb] = this.orderByBuilder.build(this.qb, null, entity, path, orderBy)\n\t\t\t}\n\t\t\tthis.qb = this.qb.limit(input.args.limit, input.args.offset)\n\t\t}\n\t}\n\n\tprivate selectInternal(mapper: Mapper, entity: Model.Entity, path: Path, input: ObjectNode) {\n\t\tif (!input.fields.find(it => it.name === entity.primary && it.alias === entity.primary)) {\n\t\t\tinput = input.withField(new FieldNode(entity.primary, entity.primary, {}))\n\t\t}\n\n\t\tconst fetchedPredicates = new Set()\n\t\tconst addPredicate = (predicate: Acl.Predicate): ColumnValueGetter<boolean> => {\n\t\t\tif (typeof predicate === 'boolean') {\n\t\t\t\treturn () => predicate\n\t\t\t}\n\t\t\tconst predicatePath = path.for('__predicate').for(predicate)\n\n\t\t\tif (!fetchedPredicates.has(predicate)) {\n\t\t\t\tconst relationContext = this.relationPath[this.relationPath.length - 1]\n\n\t\t\t\tconst primaryPredicate = this.predicateFactory.create(entity, Acl.Operation.read, undefined, relationContext)\n\t\t\t\tconst fieldPredicate = this.predicateFactory.buildPredicates(entity, [predicate], relationContext)\n\n\t\t\t\tthis.qb = this.whereBuilder.buildAdvanced(\n\t\t\t\t\tentity,\n\t\t\t\t\tpath.back(),\n\t\t\t\t\tfieldPredicate,\n\t\t\t\t\tapply =>\n\t\t\t\t\t\tthis.qb.select(expr =>\n\t\t\t\t\t\t\texpr.selectCondition(condition => {\n\t\t\t\t\t\t\t\tcondition = apply(condition)\n\t\t\t\t\t\t\t\tif (condition.isEmpty()) {\n\t\t\t\t\t\t\t\t\treturn condition.raw('true')\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn condition\n\t\t\t\t\t\t\t}), predicatePath.alias),\n\t\t\t\t\t{ relationPath: this.relationPath, evaluatedPredicates: [primaryPredicate] },\n\t\t\t\t)\n\t\t\t\tfetchedPredicates.add(predicate)\n\t\t\t}\n\t\t\treturn row => row[predicatePath.alias] === true\n\t\t}\n\n\t\tfor (let field of input.fields) {\n\t\t\tconst fieldPath = path.for(field.alias)\n\t\t\tconst fieldProperty = (() => {\n\t\t\t\tif (field instanceof ObjectNode) {\n\t\t\t\t\treturn { objectNode: field }\n\t\t\t\t}\n\t\t\t\tif (field instanceof FieldNode) {\n\t\t\t\t\treturn { fieldNode: field }\n\t\t\t\t}\n\t\t\t\treturn assertNever(field)\n\t\t\t})()\n\n\t\t\tconst executionContext: SelectExecutionHandlerContext = {\n\t\t\t\tmapper,\n\t\t\t\trelationPath: this.relationPath,\n\t\t\t\taddData: async ({ field, dataProvider, defaultValue, predicate }) => {\n\t\t\t\t\tif (predicate === false) {\n\t\t\t\t\t\tthis.hydrator.addPromise(fieldPath, () => null, Promise.resolve({}), defaultValue ?? null)\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tconst predicateGetter = predicate !== undefined && predicate !== true ? addPredicate(predicate) : null\n\t\t\t\t\tconst columnName = getColumnName(this.schema, entity, field)\n\t\t\t\t\tconst parentValuePath = path.for(field)\n\t\t\t\t\tlet ids = await this.getColumnValues(parentValuePath, columnName, predicateGetter)\n\n\t\t\t\t\tconst data = ids.length > 0 ? dataProvider(ids) : Promise.resolve({})\n\t\t\t\t\tthis.hydrator.addPromise(\n\t\t\t\t\t\tfieldPath,\n\t\t\t\t\t\trow => predicateGetter === null || predicateGetter(row) ? (row[parentValuePath.alias] as Value.PrimaryValue) : null,\n\t\t\t\t\t\tdata,\n\t\t\t\t\t\tdefaultValue ?? null,\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t\taddColumn: ({ path = fieldPath, predicate, query, valueGetter }) => {\n\t\t\t\t\tif (predicate === false) {\n\t\t\t\t\t\tthis.hydrator.addColumn(path, () => null)\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tconst predicateGetter = predicate !== undefined && predicate !== true ? addPredicate(predicate) : null\n\t\t\t\t\tif (query) {\n\t\t\t\t\t\tthis.qb = query(this.qb)\n\t\t\t\t\t}\n\t\t\t\t\tthis.hydrator.addColumn(\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\tvalueGetter ?? (row => predicateGetter === null || predicateGetter(row) ? row[path.alias] : null),\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t\taddPredicate: addPredicate,\n\t\t\t\tpath: fieldPath,\n\t\t\t\tentity: entity,\n\t\t\t\t...fieldProperty,\n\t\t\t}\n\n\t\t\tif (field.name === '_meta') {\n\t\t\t\tthis.metaHandler.process(executionContext)\n\t\t\t\tcontinue\n\t\t\t}\n\n\t\t\t// Disregarding __typename field since it's automatically handled by apollo server\n\t\t\tif (field.name === '__typename') {\n\t\t\t\tcontinue\n\t\t\t}\n\n\t\t\tif (field.extensions.extensionKey) {\n\t\t\t\tconst handler = this.selectHandlers[field.extensions.extensionKey]\n\t\t\t\tif (!handler) {\n\t\t\t\t\tthrow new Error(`Handler for ${field.extensions.extensionKey} not found`)\n\t\t\t\t}\n\t\t\t\thandler.process(executionContext)\n\t\t\t\tcontinue\n\t\t\t}\n\n\t\t\tconst fieldVisitor = this.fieldsVisitorFactory.create(mapper, executionContext)\n\t\t\tacceptFieldVisitor(this.schema, entity, field.name, fieldVisitor)\n\t\t}\n\t}\n\n\tprivate async getColumnValues(\n\t\tcolumnPath: Path,\n\t\tcolumnName: string,\n\t\tpredicateGetter: null | ColumnValueGetter<boolean>,\n\t): Promise<Input.PrimaryValue[]> {\n\t\tthis.qb = this.qb.select([columnPath.back().alias, columnName], columnPath.alias)\n\t\tconst rows = await this.rows\n\t\tconst filteredRows = predicateGetter === null ? rows : rows.filter(predicateGetter)\n\t\tconst columnAlias = columnPath.alias\n\t\tconst ids = filteredRows.map((it): Input.PrimaryValue => it[columnAlias] as Input.PrimaryValue).filter(it => it !== null)\n\t\treturn Array.from(new Set(ids))\n\t}\n}\n"],"names":["schema","getColumnName","LimitByGroupWrapper","FieldNode","Acl","ObjectNode","assertNever","field","path","acceptFieldVisitor"],"mappings":"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"}