joist-core 2.3.0-next.4 → 2.3.0-next.41

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 (437) hide show
  1. package/build/AliasAssigner.d.ts +0 -1
  2. package/build/AliasAssigner.js.map +1 -1
  3. package/build/Aliases.d.ts +1 -2
  4. package/build/Aliases.js +2 -2
  5. package/build/Aliases.js.map +1 -1
  6. package/build/BaseEntity.d.ts +0 -1
  7. package/build/BaseEntity.js.map +1 -1
  8. package/build/ConditionBuilder.d.ts +0 -1
  9. package/build/ConditionBuilder.js +1 -1
  10. package/build/ConditionBuilder.js.map +1 -1
  11. package/build/Entity.d.ts +0 -1
  12. package/build/Entity.js.map +1 -1
  13. package/build/EntityFields.d.ts +0 -1
  14. package/build/EntityFilter.d.ts +0 -1
  15. package/build/EntityFilter.js.map +1 -1
  16. package/build/EntityGraphQLFilter.d.ts +0 -1
  17. package/build/EntityManager.d.ts +41 -7
  18. package/build/EntityManager.js +410 -143
  19. package/build/EntityManager.js.map +1 -1
  20. package/build/EntityMetadata.d.ts +22 -3
  21. package/build/EntityMetadata.js +5 -3
  22. package/build/EntityMetadata.js.map +1 -1
  23. package/build/EnumMetadata.d.ts +0 -1
  24. package/build/FlushLock.d.ts +0 -1
  25. package/build/FlushLock.js.map +1 -1
  26. package/build/HintTree.d.ts +0 -1
  27. package/build/HintTree.js.map +1 -1
  28. package/build/IndexManager.d.ts +4 -3
  29. package/build/IndexManager.js +4 -2
  30. package/build/IndexManager.js.map +1 -1
  31. package/build/InstanceData.d.ts +25 -10
  32. package/build/InstanceData.js +76 -28
  33. package/build/InstanceData.js.map +1 -1
  34. package/build/IsLoadedCache.d.ts +0 -1
  35. package/build/IsLoadedCache.js.map +1 -1
  36. package/build/JoinRows.d.ts +0 -1
  37. package/build/JoinRows.js.map +1 -1
  38. package/build/PendingChanges.d.ts +0 -1
  39. package/build/PluginManager.d.ts +13 -5
  40. package/build/PluginManager.js +4 -0
  41. package/build/PluginManager.js.map +1 -1
  42. package/build/QueryParser.collectionJoins.d.ts +0 -1
  43. package/build/QueryParser.collectionJoins.js.map +1 -1
  44. package/build/QueryParser.d.ts +7 -1
  45. package/build/QueryParser.js +44 -10
  46. package/build/QueryParser.js.map +1 -1
  47. package/build/QueryParser.pruning.d.ts +0 -1
  48. package/build/QueryParser.pruning.js.map +1 -1
  49. package/build/QueryVisitor.d.ts +0 -1
  50. package/build/QueryVisitor.js.map +1 -1
  51. package/build/ReactionsManager.d.ts +13 -4
  52. package/build/ReactionsManager.js +77 -50
  53. package/build/ReactionsManager.js.map +1 -1
  54. package/build/RowData.d.ts +49 -0
  55. package/build/RowData.js +37 -0
  56. package/build/RowData.js.map +1 -0
  57. package/build/Todo.d.ts +1 -2
  58. package/build/Todo.js +16 -5
  59. package/build/Todo.js.map +1 -1
  60. package/build/batchloaders/BatchLoader.d.ts +0 -1
  61. package/build/batchloaders/BatchLoader.js.map +1 -1
  62. package/build/batchloaders/enumCollectionBatchLoader.d.ts +0 -1
  63. package/build/batchloaders/enumCollectionBatchLoader.js.map +1 -1
  64. package/build/batchloaders/loadBatchLoader.d.ts +0 -1
  65. package/build/batchloaders/loadBatchLoader.js +21 -15
  66. package/build/batchloaders/loadBatchLoader.js.map +1 -1
  67. package/build/batchloaders/manyToManyBatchLoader.d.ts +0 -1
  68. package/build/batchloaders/manyToManyBatchLoader.js.map +1 -1
  69. package/build/batchloaders/oneToManyBatchLoader.d.ts +0 -1
  70. package/build/batchloaders/oneToManyBatchLoader.js +2 -2
  71. package/build/batchloaders/oneToManyBatchLoader.js.map +1 -1
  72. package/build/batchloaders/oneToOneBatchLoader.d.ts +0 -1
  73. package/build/batchloaders/oneToOneBatchLoader.js +2 -2
  74. package/build/batchloaders/oneToOneBatchLoader.js.map +1 -1
  75. package/build/batchloaders/populateBatchLoader.d.ts +0 -1
  76. package/build/batchloaders/populateBatchLoader.js +12 -22
  77. package/build/batchloaders/populateBatchLoader.js.map +1 -1
  78. package/build/batchloaders/recursiveChildrenBatchLoader.d.ts +0 -1
  79. package/build/batchloaders/recursiveChildrenBatchLoader.js +5 -3
  80. package/build/batchloaders/recursiveChildrenBatchLoader.js.map +1 -1
  81. package/build/batchloaders/recursiveM2mBatchLoader.d.ts +0 -1
  82. package/build/batchloaders/recursiveM2mBatchLoader.js +1 -1
  83. package/build/batchloaders/recursiveM2mBatchLoader.js.map +1 -1
  84. package/build/batchloaders/recursiveParentsBatchLoader.d.ts +0 -1
  85. package/build/batchloaders/recursiveParentsBatchLoader.js +3 -3
  86. package/build/batchloaders/recursiveParentsBatchLoader.js.map +1 -1
  87. package/build/changes.d.ts +1 -2
  88. package/build/changes.js +4 -1
  89. package/build/changes.js.map +1 -1
  90. package/build/config.d.ts +21 -3
  91. package/build/config.js +36 -23
  92. package/build/config.js.map +1 -1
  93. package/build/configure.d.ts +0 -1
  94. package/build/configure.js +67 -3
  95. package/build/configure.js.map +1 -1
  96. package/build/dataloaders/fastWhereFilterHash.d.ts +0 -1
  97. package/build/dataloaders/fastWhereFilterHash.js.map +1 -1
  98. package/build/dataloaders/findByUniqueDataLoader.d.ts +0 -1
  99. package/build/dataloaders/findByUniqueDataLoader.js.map +1 -1
  100. package/build/dataloaders/findCountDataLoader.d.ts +0 -1
  101. package/build/dataloaders/findCountDataLoader.js.map +1 -1
  102. package/build/dataloaders/findDataLoader.d.ts +2 -3
  103. package/build/dataloaders/findDataLoader.js +41 -38
  104. package/build/dataloaders/findDataLoader.js.map +1 -1
  105. package/build/dataloaders/findIdsDataLoader.d.ts +0 -1
  106. package/build/dataloaders/findIdsDataLoader.js.map +1 -1
  107. package/build/dataloaders/findOrCreateDataLoader.d.ts +0 -1
  108. package/build/dataloaders/findOrCreateDataLoader.js +2 -2
  109. package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
  110. package/build/dataloaders/findPaginatedDataLoader.d.ts +0 -1
  111. package/build/dataloaders/findPaginatedDataLoader.js.map +1 -1
  112. package/build/dataloaders/lensDataLoader.d.ts +0 -1
  113. package/build/dataloaders/lensDataLoader.js +1 -1
  114. package/build/dataloaders/lensDataLoader.js.map +1 -1
  115. package/build/dataloaders/manyToManyFindDataLoader.d.ts +0 -1
  116. package/build/dataloaders/manyToManyFindDataLoader.js.map +1 -1
  117. package/build/dataloaders/oneToManyFindDataLoader.d.ts +0 -1
  118. package/build/dataloaders/oneToManyFindDataLoader.js.map +1 -1
  119. package/build/defaults.d.ts +0 -1
  120. package/build/defaults.js.map +1 -1
  121. package/build/driverApi.d.ts +1 -2
  122. package/build/driverApi.js +1 -1
  123. package/build/driverApi.js.map +1 -1
  124. package/build/drivers/Driver.d.ts +13 -2
  125. package/build/drivers/EntityWriter.d.ts +0 -1
  126. package/build/drivers/EntityWriter.js +32 -3
  127. package/build/drivers/EntityWriter.js.map +1 -1
  128. package/build/drivers/IdAssigner.d.ts +0 -1
  129. package/build/drivers/IdAssigner.js.map +1 -1
  130. package/build/drivers/buildRawQuery.d.ts +0 -1
  131. package/build/drivers/buildRawQuery.js +1 -3
  132. package/build/drivers/buildRawQuery.js.map +1 -1
  133. package/build/drivers/buildUtils.d.ts +0 -1
  134. package/build/drivers/buildUtils.js.map +1 -1
  135. package/build/drivers/index.d.ts +0 -1
  136. package/build/fields.d.ts +0 -1
  137. package/build/fields.js +5 -4
  138. package/build/fields.js.map +1 -1
  139. package/build/getProperties.d.ts +3 -4
  140. package/build/getProperties.js +3 -3
  141. package/build/getProperties.js.map +1 -1
  142. package/build/index.d.ts +6 -6
  143. package/build/index.js +11 -4
  144. package/build/index.js.map +1 -1
  145. package/build/json.d.ts +0 -1
  146. package/build/json.js +2 -2
  147. package/build/json.js.map +1 -1
  148. package/build/k.d.ts +0 -1
  149. package/build/keys.d.ts +7 -7
  150. package/build/keys.js +102 -46
  151. package/build/keys.js.map +1 -1
  152. package/build/keywords.d.ts +0 -1
  153. package/build/keywords.js.map +1 -1
  154. package/build/loadHints.d.ts +0 -1
  155. package/build/loadHints.js.map +1 -1
  156. package/build/loadLens.d.ts +0 -1
  157. package/build/loadLens.js +1 -1
  158. package/build/loadLens.js.map +1 -1
  159. package/build/logging/FactoryLogger.d.ts +0 -1
  160. package/build/logging/FactoryLogger.js.map +1 -1
  161. package/build/logging/FieldLogger.d.ts +2 -1
  162. package/build/logging/FieldLogger.js +11 -2
  163. package/build/logging/FieldLogger.js.map +1 -1
  164. package/build/logging/ReactionLogger.d.ts +2 -1
  165. package/build/logging/ReactionLogger.js +15 -1
  166. package/build/logging/ReactionLogger.js.map +1 -1
  167. package/build/newEntity.d.ts +2 -3
  168. package/build/newEntity.js +10 -8
  169. package/build/newEntity.js.map +1 -1
  170. package/build/newTestInstance.d.ts +0 -1
  171. package/build/newTestInstance.js +5 -1
  172. package/build/newTestInstance.js.map +1 -1
  173. package/build/normalizeHints.d.ts +0 -1
  174. package/build/normalizeHints.js.map +1 -1
  175. package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -1
  176. package/build/plugins/ImmutableEntitiesPlugin.js.map +1 -1
  177. package/build/plugins/PreloadPlugin.d.ts +10 -6
  178. package/build/preloading/JsonAggregatePreloader.d.ts +0 -1
  179. package/build/preloading/JsonAggregatePreloader.js +14 -9
  180. package/build/preloading/JsonAggregatePreloader.js.map +1 -1
  181. package/build/preloading/canPreload.d.ts +0 -1
  182. package/build/preloading/canPreload.js.map +1 -1
  183. package/build/preloading/partitionHint.d.ts +0 -1
  184. package/build/preloading/partitionHint.js.map +1 -1
  185. package/build/reactiveHints.d.ts +2 -3
  186. package/build/reactiveHints.js.map +1 -1
  187. package/build/relations/AbstractPropertyImpl.d.ts +0 -1
  188. package/build/relations/AbstractPropertyImpl.js.map +1 -1
  189. package/build/relations/AbstractRelationImpl.d.ts +0 -1
  190. package/build/relations/AbstractRelationImpl.js.map +1 -1
  191. package/build/relations/AsyncProperty.d.ts +0 -1
  192. package/build/relations/AsyncProperty.js.map +1 -1
  193. package/build/relations/AsyncReactiveField.d.ts +13 -9
  194. package/build/relations/AsyncReactiveField.js +22 -19
  195. package/build/relations/AsyncReactiveField.js.map +1 -1
  196. package/build/relations/Collection.d.ts +0 -1
  197. package/build/relations/Collection.js.map +1 -1
  198. package/build/relations/CustomCollection.d.ts +0 -1
  199. package/build/relations/CustomCollection.js.map +1 -1
  200. package/build/relations/CustomReference.d.ts +0 -1
  201. package/build/relations/CustomReference.js.map +1 -1
  202. package/build/relations/EnumCollection.d.ts +0 -1
  203. package/build/relations/EnumCollection.js.map +1 -1
  204. package/build/relations/LargeCollection.d.ts +0 -1
  205. package/build/relations/LazyField.d.ts +46 -0
  206. package/build/relations/LazyField.js +135 -0
  207. package/build/relations/LazyField.js.map +1 -0
  208. package/build/relations/ManyToManyCollection.d.ts +0 -1
  209. package/build/relations/ManyToManyCollection.js +5 -3
  210. package/build/relations/ManyToManyCollection.js.map +1 -1
  211. package/build/relations/ManyToManyLargeCollection.d.ts +0 -1
  212. package/build/relations/ManyToManyLargeCollection.js.map +1 -1
  213. package/build/relations/ManyToOneReference.d.ts +0 -1
  214. package/build/relations/ManyToOneReference.js.map +1 -1
  215. package/build/relations/OneToManyCollection.d.ts +0 -1
  216. package/build/relations/OneToManyCollection.js +3 -1
  217. package/build/relations/OneToManyCollection.js.map +1 -1
  218. package/build/relations/OneToManyLargeCollection.d.ts +0 -1
  219. package/build/relations/OneToManyLargeCollection.js.map +1 -1
  220. package/build/relations/OneToOneReference.d.ts +0 -1
  221. package/build/relations/OneToOneReference.js +1 -1
  222. package/build/relations/OneToOneReference.js.map +1 -1
  223. package/build/relations/PolymorphicReference.d.ts +0 -1
  224. package/build/relations/PolymorphicReference.js +1 -1
  225. package/build/relations/PolymorphicReference.js.map +1 -1
  226. package/build/relations/ReactiveField.d.ts +0 -1
  227. package/build/relations/ReactiveField.js.map +1 -1
  228. package/build/relations/ReactiveGetter.d.ts +0 -1
  229. package/build/relations/ReactiveGetter.js.map +1 -1
  230. package/build/relations/ReactiveManyToMany.d.ts +0 -1
  231. package/build/relations/ReactiveManyToMany.js +1 -1
  232. package/build/relations/ReactiveManyToMany.js.map +1 -1
  233. package/build/relations/ReactiveManyToManyOtherSide.d.ts +0 -1
  234. package/build/relations/ReactiveManyToManyOtherSide.js +1 -1
  235. package/build/relations/ReactiveManyToManyOtherSide.js.map +1 -1
  236. package/build/relations/ReactiveReference.d.ts +0 -1
  237. package/build/relations/ReactiveReference.js +1 -1
  238. package/build/relations/ReactiveReference.js.map +1 -1
  239. package/build/relations/ReadOnlyCollection.d.ts +0 -1
  240. package/build/relations/ReadOnlyCollection.js.map +1 -1
  241. package/build/relations/RecursiveCollection.d.ts +0 -1
  242. package/build/relations/RecursiveCollection.js.map +1 -1
  243. package/build/relations/RecursiveCycleError.d.ts +0 -1
  244. package/build/relations/RecursiveCycleError.js.map +1 -1
  245. package/build/relations/Reference.d.ts +0 -1
  246. package/build/relations/Reference.js.map +1 -1
  247. package/build/relations/Relation.d.ts +0 -1
  248. package/build/relations/Relation.js.map +1 -1
  249. package/build/relations/hasAsyncMethod.d.ts +0 -1
  250. package/build/relations/hasAsyncMethod.js.map +1 -1
  251. package/build/relations/hasManyDerived.d.ts +0 -1
  252. package/build/relations/hasManyDerived.js.map +1 -1
  253. package/build/relations/hasManyThrough.d.ts +0 -1
  254. package/build/relations/hasManyThrough.js.map +1 -1
  255. package/build/relations/hasOneDerived.d.ts +0 -1
  256. package/build/relations/hasOneDerived.js.map +1 -1
  257. package/build/relations/hasOneThrough.d.ts +0 -1
  258. package/build/relations/hasOneThrough.js.map +1 -1
  259. package/build/relations/hasProperty.d.ts +0 -1
  260. package/build/relations/hasProperty.js.map +1 -1
  261. package/build/relations/index.d.ts +1 -1
  262. package/build/relations/index.js +7 -2
  263. package/build/relations/index.js.map +1 -1
  264. package/build/resurrection.d.ts +0 -1
  265. package/build/resurrection.js.map +1 -1
  266. package/build/rules.d.ts +8 -1
  267. package/build/rules.js +17 -0
  268. package/build/rules.js.map +1 -1
  269. package/build/runtimeConfig.d.ts +4 -1
  270. package/build/runtimeConfig.js +5 -0
  271. package/build/runtimeConfig.js.map +1 -1
  272. package/build/scopes.d.ts +1 -2
  273. package/build/scopes.js.map +1 -1
  274. package/build/serde.d.ts +29 -17
  275. package/build/serde.js +46 -33
  276. package/build/serde.js.map +1 -1
  277. package/build/temporal.d.ts +0 -1
  278. package/build/temporal.js.map +1 -1
  279. package/build/temporalMappers.d.ts +11 -4
  280. package/build/temporalMappers.js +22 -11
  281. package/build/temporalMappers.js.map +1 -1
  282. package/build/trusted.d.ts +0 -1
  283. package/build/trusted.js.map +1 -1
  284. package/build/typeMap.d.ts +0 -1
  285. package/build/unnest.d.ts +0 -1
  286. package/build/unnest.js.map +1 -1
  287. package/build/upsert.d.ts +0 -1
  288. package/build/upsert.js.map +1 -1
  289. package/build/utils.d.ts +2 -1
  290. package/build/utils.js +7 -0
  291. package/build/utils.js.map +1 -1
  292. package/build/withLoaded.d.ts +1 -2
  293. package/build/withLoaded.js.map +1 -1
  294. package/package.json +6 -10
  295. package/build/AliasAssigner.d.ts.map +0 -1
  296. package/build/Aliases.d.ts.map +0 -1
  297. package/build/BaseEntity.d.ts.map +0 -1
  298. package/build/ConditionBuilder.d.ts.map +0 -1
  299. package/build/Entity.d.ts.map +0 -1
  300. package/build/EntityFields.d.ts.map +0 -1
  301. package/build/EntityFilter.d.ts.map +0 -1
  302. package/build/EntityGraphQLFilter.d.ts.map +0 -1
  303. package/build/EntityManager.d.ts.map +0 -1
  304. package/build/EntityMetadata.d.ts.map +0 -1
  305. package/build/EnumMetadata.d.ts.map +0 -1
  306. package/build/FlushLock.d.ts.map +0 -1
  307. package/build/HintTree.d.ts.map +0 -1
  308. package/build/IndexManager.d.ts.map +0 -1
  309. package/build/InstanceData.d.ts.map +0 -1
  310. package/build/IsLoadedCache.d.ts.map +0 -1
  311. package/build/JoinRows.d.ts.map +0 -1
  312. package/build/PendingChanges.d.ts.map +0 -1
  313. package/build/PluginManager.d.ts.map +0 -1
  314. package/build/QueryParser.collectionJoins.d.ts.map +0 -1
  315. package/build/QueryParser.collectionJoins.test.d.ts +0 -2
  316. package/build/QueryParser.collectionJoins.test.d.ts.map +0 -1
  317. package/build/QueryParser.collectionJoins.test.js +0 -772
  318. package/build/QueryParser.collectionJoins.test.js.map +0 -1
  319. package/build/QueryParser.d.ts.map +0 -1
  320. package/build/QueryParser.pruning.d.ts.map +0 -1
  321. package/build/QueryParser.pruning.test.d.ts +0 -2
  322. package/build/QueryParser.pruning.test.d.ts.map +0 -1
  323. package/build/QueryParser.pruning.test.js +0 -106
  324. package/build/QueryParser.pruning.test.js.map +0 -1
  325. package/build/QueryParser.test.d.ts +0 -2
  326. package/build/QueryParser.test.d.ts.map +0 -1
  327. package/build/QueryParser.test.js +0 -27
  328. package/build/QueryParser.test.js.map +0 -1
  329. package/build/QueryVisitor.d.ts.map +0 -1
  330. package/build/ReactionsManager.d.ts.map +0 -1
  331. package/build/Todo.d.ts.map +0 -1
  332. package/build/batchloaders/BatchLoader.d.ts.map +0 -1
  333. package/build/batchloaders/enumCollectionBatchLoader.d.ts.map +0 -1
  334. package/build/batchloaders/loadBatchLoader.d.ts.map +0 -1
  335. package/build/batchloaders/manyToManyBatchLoader.d.ts.map +0 -1
  336. package/build/batchloaders/oneToManyBatchLoader.d.ts.map +0 -1
  337. package/build/batchloaders/oneToOneBatchLoader.d.ts.map +0 -1
  338. package/build/batchloaders/populateBatchLoader.d.ts.map +0 -1
  339. package/build/batchloaders/recursiveChildrenBatchLoader.d.ts.map +0 -1
  340. package/build/batchloaders/recursiveM2mBatchLoader.d.ts.map +0 -1
  341. package/build/batchloaders/recursiveParentsBatchLoader.d.ts.map +0 -1
  342. package/build/changes.d.ts.map +0 -1
  343. package/build/config.d.ts.map +0 -1
  344. package/build/config.test.d.ts +0 -2
  345. package/build/config.test.d.ts.map +0 -1
  346. package/build/config.test.js +0 -53
  347. package/build/config.test.js.map +0 -1
  348. package/build/configure.d.ts.map +0 -1
  349. package/build/dataloaders/fastWhereFilterHash.d.ts.map +0 -1
  350. package/build/dataloaders/fastWhereFilterHash.test.d.ts +0 -2
  351. package/build/dataloaders/fastWhereFilterHash.test.d.ts.map +0 -1
  352. package/build/dataloaders/fastWhereFilterHash.test.js +0 -59
  353. package/build/dataloaders/fastWhereFilterHash.test.js.map +0 -1
  354. package/build/dataloaders/findByUniqueDataLoader.d.ts.map +0 -1
  355. package/build/dataloaders/findCountDataLoader.d.ts.map +0 -1
  356. package/build/dataloaders/findDataLoader.d.ts.map +0 -1
  357. package/build/dataloaders/findIdsDataLoader.d.ts.map +0 -1
  358. package/build/dataloaders/findOrCreateDataLoader.d.ts.map +0 -1
  359. package/build/dataloaders/findPaginatedDataLoader.d.ts.map +0 -1
  360. package/build/dataloaders/lensDataLoader.d.ts.map +0 -1
  361. package/build/dataloaders/manyToManyFindDataLoader.d.ts.map +0 -1
  362. package/build/dataloaders/oneToManyFindDataLoader.d.ts.map +0 -1
  363. package/build/defaults.d.ts.map +0 -1
  364. package/build/driverApi.d.ts.map +0 -1
  365. package/build/drivers/Driver.d.ts.map +0 -1
  366. package/build/drivers/EntityWriter.d.ts.map +0 -1
  367. package/build/drivers/IdAssigner.d.ts.map +0 -1
  368. package/build/drivers/buildRawQuery.d.ts.map +0 -1
  369. package/build/drivers/buildUtils.d.ts.map +0 -1
  370. package/build/drivers/index.d.ts.map +0 -1
  371. package/build/fields.d.ts.map +0 -1
  372. package/build/getProperties.d.ts.map +0 -1
  373. package/build/index.d.ts.map +0 -1
  374. package/build/json.d.ts.map +0 -1
  375. package/build/k.d.ts.map +0 -1
  376. package/build/keys.d.ts.map +0 -1
  377. package/build/keywords.d.ts.map +0 -1
  378. package/build/loadHints.d.ts.map +0 -1
  379. package/build/loadLens.d.ts.map +0 -1
  380. package/build/logging/FactoryLogger.d.ts.map +0 -1
  381. package/build/logging/FieldLogger.d.ts.map +0 -1
  382. package/build/logging/ReactionLogger.d.ts.map +0 -1
  383. package/build/newEntity.d.ts.map +0 -1
  384. package/build/newTestInstance.d.ts.map +0 -1
  385. package/build/normalizeHints.d.ts.map +0 -1
  386. package/build/plugins/ImmutableEntitiesPlugin.d.ts.map +0 -1
  387. package/build/plugins/PreloadPlugin.d.ts.map +0 -1
  388. package/build/preloading/JsonAggregatePreloader.d.ts.map +0 -1
  389. package/build/preloading/canPreload.d.ts.map +0 -1
  390. package/build/preloading/partitionHint.d.ts.map +0 -1
  391. package/build/reactiveHints.d.ts.map +0 -1
  392. package/build/relations/AbstractPropertyImpl.d.ts.map +0 -1
  393. package/build/relations/AbstractRelationImpl.d.ts.map +0 -1
  394. package/build/relations/AsyncProperty.d.ts.map +0 -1
  395. package/build/relations/AsyncReactiveField.d.ts.map +0 -1
  396. package/build/relations/Collection.d.ts.map +0 -1
  397. package/build/relations/CustomCollection.d.ts.map +0 -1
  398. package/build/relations/CustomReference.d.ts.map +0 -1
  399. package/build/relations/EnumCollection.d.ts.map +0 -1
  400. package/build/relations/LargeCollection.d.ts.map +0 -1
  401. package/build/relations/ManyToManyCollection.d.ts.map +0 -1
  402. package/build/relations/ManyToManyLargeCollection.d.ts.map +0 -1
  403. package/build/relations/ManyToOneReference.d.ts.map +0 -1
  404. package/build/relations/OneToManyCollection.d.ts.map +0 -1
  405. package/build/relations/OneToManyLargeCollection.d.ts.map +0 -1
  406. package/build/relations/OneToOneReference.d.ts.map +0 -1
  407. package/build/relations/PolymorphicReference.d.ts.map +0 -1
  408. package/build/relations/ReactiveField.d.ts.map +0 -1
  409. package/build/relations/ReactiveGetter.d.ts.map +0 -1
  410. package/build/relations/ReactiveManyToMany.d.ts.map +0 -1
  411. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +0 -1
  412. package/build/relations/ReactiveReference.d.ts.map +0 -1
  413. package/build/relations/ReadOnlyCollection.d.ts.map +0 -1
  414. package/build/relations/RecursiveCollection.d.ts.map +0 -1
  415. package/build/relations/RecursiveCycleError.d.ts.map +0 -1
  416. package/build/relations/Reference.d.ts.map +0 -1
  417. package/build/relations/Relation.d.ts.map +0 -1
  418. package/build/relations/hasAsyncMethod.d.ts.map +0 -1
  419. package/build/relations/hasManyDerived.d.ts.map +0 -1
  420. package/build/relations/hasManyThrough.d.ts.map +0 -1
  421. package/build/relations/hasOneDerived.d.ts.map +0 -1
  422. package/build/relations/hasOneThrough.d.ts.map +0 -1
  423. package/build/relations/hasProperty.d.ts.map +0 -1
  424. package/build/relations/index.d.ts.map +0 -1
  425. package/build/resurrection.d.ts.map +0 -1
  426. package/build/rules.d.ts.map +0 -1
  427. package/build/runtimeConfig.d.ts.map +0 -1
  428. package/build/scopes.d.ts.map +0 -1
  429. package/build/serde.d.ts.map +0 -1
  430. package/build/temporal.d.ts.map +0 -1
  431. package/build/temporalMappers.d.ts.map +0 -1
  432. package/build/trusted.d.ts.map +0 -1
  433. package/build/typeMap.d.ts.map +0 -1
  434. package/build/unnest.d.ts.map +0 -1
  435. package/build/upsert.d.ts.map +0 -1
  436. package/build/utils.d.ts.map +0 -1
  437. package/build/withLoaded.d.ts.map +0 -1
@@ -16,6 +16,7 @@ const trusted_1 = require("./trusted");
16
16
  class ReactionsManager {
17
17
  /** Stores all source `Reactables`s that have been marked for later traversal. */
18
18
  pendingReactables = new Map();
19
+ /** Failed actions to retry post-hooks, deduped by target field name -> entity (rare error path). */
19
20
  actionsPendingTypeErrors = new Map();
20
21
  /**
21
22
  * A map of entity tagName -> fields that have been marked as dirty.
@@ -27,10 +28,18 @@ class ReactionsManager {
27
28
  * Instead, we just track the dirty fields by type-of-entity, which is enough for `isPendingRecalc`.
28
29
  */
29
30
  dirtyFields = new Map();
30
- processedActions = new Set();
31
+ /**
32
+ * Tracks which entities have already run a `runOnce` reactable, keyed by the target field
33
+ * name -> entities. We key on `r.name` (not `r` itself) b/c two `Reactable`s reverse-indexed
34
+ * from different source paths can target the same derived field, and must dedupe together.
35
+ * Keying the outer map by field name (of which there are few) instead of by entity (of which
36
+ * there are many) means we allocate just one `Set` per distinct field name, rather than a
37
+ * `Set` per entity or the old per-action `${entity.toTaggedString()}_${r.name}` key strings.
38
+ */
39
+ processedActions = new Map();
31
40
  #needsRecalc = { populate: false, query: false, reaction: false };
32
41
  // Accessible for EntityManager.runValidation to reuse
33
- logger = ReactionLogger_1.globalLogger;
42
+ logger = ReactionLogger_1.globalLogger ?? ReactionLogger_1.noopReactionLogger;
34
43
  em;
35
44
  /** These are NPEs that *might* have been from invalid m2o fields, so we only throw them after validation. */
36
45
  suppressedTypeErrors = [];
@@ -56,9 +65,8 @@ class ReactionsManager {
56
65
  // its `.load()` called again so that it's `setField` marks `initials` as
57
66
  // dirty, otherwise it will be left out of any INSERTs/UPDATEs.
58
67
  this.getPending(r).todo.add(entity);
59
- this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
60
68
  this.#needsRecalc[r.kind] = true;
61
- this.logger?.logQueued(entity, fieldName, r);
69
+ this.logger.logQueued(entity, fieldName, r);
62
70
  }
63
71
  }
64
72
  /** Dequeues reactivity on `fieldName`, i.e. if it's no longer dirty. */
@@ -90,9 +98,8 @@ class ReactionsManager {
90
98
  queueAllDownstreamFields(entity, reason) {
91
99
  for (const r of this.getReactables(entity)) {
92
100
  this.getPending(r).todo.add(entity);
93
- this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
94
101
  this.#needsRecalc[r.kind] = true;
95
- this.logger?.logQueuedAll(entity, reason, r);
102
+ this.logger.logQueuedAll(entity, reason, r);
96
103
  }
97
104
  }
98
105
  /**
@@ -122,7 +129,7 @@ class ReactionsManager {
122
129
  */
123
130
  async recalcPendingReactables(kind) {
124
131
  if (this.needsRecalc(kind))
125
- this.logger?.logStartingRecalc(this.em, kind);
132
+ this.logger.logStartingRecalc(this.em, kind);
126
133
  let loops = 0;
127
134
  while (this.needsRecalc(kind)) {
128
135
  // ...we probably should only loop for `kind=reactables` Reactables, and `kind=reactiveQueries`
@@ -136,7 +143,10 @@ class ReactionsManager {
136
143
  else {
137
144
  this.#needsRecalc.query = false;
138
145
  }
139
- const actionsMap = new Map();
146
+ // Dedupe actions by (target field name, entity); see the `processedActions` docs for why
147
+ // we key on `r.name` instead of `r` or the old per-action key strings
148
+ const seen = new Map();
149
+ const actions = [];
140
150
  await Promise.all([...this.pendingReactables.entries()].map(async ([r, pending]) => {
141
151
  // Skip reactive queries until post-flush
142
152
  if (kind === "reactables" && r.kind === "query")
@@ -153,39 +163,41 @@ class ReactionsManager {
153
163
  // Walk back from the source to any downstream entities
154
164
  const entities = r.path.length === 0 ? todo : await (0, reactiveHints_1.followReverseHint)(r.name, todo, r.path);
155
165
  const actionableEntities = entities.filter((entity) => !entity.isDeletedEntity && entity instanceof r.cstr);
156
- this.logger?.logWalked(todo, r, actionableEntities, "recalc");
157
- actionableEntities.forEach((entity) => {
158
- const key = makeActionKey(entity, r);
166
+ this.logger.logWalked(todo, r, actionableEntities, "recalc");
167
+ let seenEntities = seen.get(r.name);
168
+ if (!seenEntities)
169
+ seen.set(r.name, (seenEntities = new Set()));
170
+ const processed = r.runOnce ? this.processedActions.get(r.name) : undefined;
171
+ for (const entity of actionableEntities) {
159
172
  // We could arrive at the same reactable from multiple paths (eg, 2 dependent fields changed), so we need to
160
173
  // dedupe based on the entity and reactable to only run each action once for any given entity per loop
161
- if (actionsMap.has(key))
162
- return;
174
+ if (seenEntities.has(entity))
175
+ continue;
163
176
  // If this reactable has already run and shouldn't run again, then skip it
164
- if (r.runOnce && this.processedActions.has(key))
165
- return;
166
- actionsMap.set(key, { key, r, entity });
167
- });
177
+ if (processed && processed.has(entity))
178
+ continue;
179
+ seenEntities.add(entity);
180
+ actions.push({ r, entity });
181
+ }
168
182
  }));
169
- const actions = [...actionsMap.values()];
170
- this.logger?.logLoadingStart(this.em, actions);
183
+ this.logger.logLoadingStart(this.em, actions);
171
184
  // Use allSettled so that we can watch for derived values that want to use an entity's id
172
185
  // i.e. they can fail, but we'll queue them from later.
173
- const startTime = this.logger?.now() ?? 0;
186
+ const startTime = this.logger.now();
174
187
  const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.map((a) => this.#doAction(a))));
175
- const endTime = this.logger?.now() ?? 0;
176
- this.logger?.logLoadingEnd(this.em, endTime - startTime);
177
- const actionsPendingAssignedIds = new Map();
188
+ const endTime = this.logger.now();
189
+ this.logger.logLoadingEnd(this.em, endTime - startTime);
190
+ // This loop's actions are already unique by (name, entity), so a plain array dedupes fine
191
+ const actionsPendingAssignedIds = [];
178
192
  const failures = [];
179
193
  results.forEach((result, i) => {
180
194
  if (result.status === "rejected") {
181
195
  // Let `author.id` and `book.author.get.firstName` errors run again after flush/hooks fills them in
182
196
  if (result.reason instanceof index_1.NoIdError) {
183
- const action = actions[i];
184
- actionsPendingAssignedIds.set(action.key, action);
197
+ actionsPendingAssignedIds.push(actions[i]);
185
198
  }
186
199
  else if (result.reason instanceof TypeError) {
187
- const action = actions[i];
188
- this.actionsPendingTypeErrors.set(action.key, action);
200
+ this.addPendingTypeError(actions[i]);
189
201
  }
190
202
  else {
191
203
  failures.push(result.reason);
@@ -194,19 +206,17 @@ class ReactionsManager {
194
206
  });
195
207
  // If we have any actions that need to be re-run because they failed due to a missing id, then we assign ids and
196
208
  // re-run them.
197
- if (actionsPendingAssignedIds.size > 0) {
209
+ if (actionsPendingAssignedIds.length > 0) {
198
210
  await this.em.assignNewIds();
199
- const actions = [...actionsPendingAssignedIds.values()];
200
- this.logger?.logLoadingStart(this.em, actions);
201
- const startTime = this.logger?.now() ?? 0;
202
- const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.map((a) => this.#doAction(a))));
203
- const endTime = this.logger?.now() ?? 0;
204
- this.logger?.logLoadingEnd(this.em, endTime - startTime);
211
+ this.logger.logLoadingStart(this.em, actionsPendingAssignedIds);
212
+ const startTime = this.logger.now();
213
+ const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actionsPendingAssignedIds.map((a) => this.#doAction(a))));
214
+ const endTime = this.logger.now();
215
+ this.logger.logLoadingEnd(this.em, endTime - startTime);
205
216
  results.forEach((result, i) => {
206
217
  if (result.status === "rejected") {
207
218
  if (result.reason instanceof TypeError) {
208
- const action = actions[i];
209
- this.actionsPendingTypeErrors.set(action.key, action);
219
+ this.addPendingTypeError(actionsPendingAssignedIds[i]);
210
220
  }
211
221
  else {
212
222
  failures.push(result.reason);
@@ -217,10 +227,14 @@ class ReactionsManager {
217
227
  if (failures.length > 0)
218
228
  throw failures[0];
219
229
  // Record any successful actions that should only run once so we don't run them again
220
- actions.forEach((action) => {
221
- if (action.r.runOnce)
222
- this.processedActions.add(action.key);
223
- });
230
+ for (const action of actions) {
231
+ if (action.r.runOnce) {
232
+ let set = this.processedActions.get(action.r.name);
233
+ if (!set)
234
+ this.processedActions.set(action.r.name, (set = new Set()));
235
+ set.add(action.entity);
236
+ }
237
+ }
224
238
  // This should generally not happen, only if two reactive fields depend on each other,
225
239
  // which in theory should probably be caught/blow up in the `configureMetadata` step,
226
240
  // but if it's not caught sooner, at least don't infinite loop.
@@ -230,12 +244,16 @@ class ReactionsManager {
230
244
  }
231
245
  }
232
246
  async recalcPendingTypeErrors() {
233
- const actions = [...this.actionsPendingTypeErrors.values()];
247
+ const actions = [];
248
+ for (const byEntity of this.actionsPendingTypeErrors.values()) {
249
+ for (const action of byEntity.values())
250
+ actions.push(action);
251
+ }
234
252
  this.actionsPendingTypeErrors.clear();
235
- const startTime = this.logger?.now() ?? 0;
253
+ const startTime = this.logger.now();
236
254
  const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.filter((a) => !a.entity.isDeletedEntity).map((a) => this.#doAction(a))));
237
- const endTime = this.logger?.now() ?? 0;
238
- this.logger?.logLoadingEnd(this.em, endTime - startTime);
255
+ const endTime = this.logger.now();
256
+ this.logger.logLoadingEnd(this.em, endTime - startTime);
239
257
  const failures = [];
240
258
  results.forEach((result) => {
241
259
  if (result.status === "rejected") {
@@ -260,7 +278,7 @@ class ReactionsManager {
260
278
  this.processedActions.clear();
261
279
  }
262
280
  setLogger(logger) {
263
- this.logger = logger;
281
+ this.logger = logger ?? ReactionLogger_1.noopReactionLogger;
264
282
  }
265
283
  clearSuppressedTypeErrors() {
266
284
  this.suppressedTypeErrors = [];
@@ -274,6 +292,13 @@ class ReactionsManager {
274
292
  const { r, entity } = action;
275
293
  return r.kind === "reaction" ? r.fn(entity, this.em.ctx) : entity[r.name].load();
276
294
  }
295
+ /** Remembers a TypeError'd action to retry post-hooks, deduped by (target field name, entity). */
296
+ addPendingTypeError(action) {
297
+ let byEntity = this.actionsPendingTypeErrors.get(action.r.name);
298
+ if (!byEntity)
299
+ this.actionsPendingTypeErrors.set(action.r.name, (byEntity = new Map()));
300
+ byEntity.set(action.entity, action);
301
+ }
277
302
  needsRecalc(kind) {
278
303
  return kind === "reactables" ? this.#needsRecalc.populate || this.#needsRecalc.reaction : this.#needsRecalc.query;
279
304
  }
@@ -282,6 +307,9 @@ class ReactionsManager {
282
307
  if (!pending) {
283
308
  pending = { todo: new Set(), done: new Set() };
284
309
  this.pendingReactables.set(r, pending);
310
+ // The dirty field name is constant per reactable, so mark it once on the first
311
+ // queue instead of paying the `getMetadata` + map lookup on every queued entity.
312
+ this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
285
313
  }
286
314
  return pending;
287
315
  }
@@ -304,12 +332,11 @@ class ReactionsManager {
304
332
  const byField = (0, index_1.getEmInternalApi)(this.em).isMerging(entity)
305
333
  ? meta.reactablesIncludingReadOnlyByField
306
334
  : meta.reactablesByField;
307
- return byField.get(fieldName) ?? [];
335
+ // Most fields have no reactables, so return a shared empty array instead of allocating one per set
336
+ return byField.get(fieldName) ?? noReactables;
308
337
  }
309
338
  }
310
339
  exports.ReactionsManager = ReactionsManager;
311
- /** Returns a stable dedupe key for retry/runOnce reaction bookkeeping. */
312
- function makeActionKey(entity, r) {
313
- return `${entity.toTaggedString()}_${r.name}`;
314
- }
340
+ /** A shared frozen array for fields with no downstream reactables. */
341
+ const noReactables = Object.freeze([]);
315
342
  //# sourceMappingURL=ReactionsManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReactionsManager.js","sourceRoot":"","sources":["../src/ReactionsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReactionsManager.js","sourceRoot":"","sources":["../src/ReactionsManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * A read-only view of one query's result rows; each entity references its as-loaded row as a
3
+ * `(rowData, rowIndex)` pair on its `InstanceData`.
4
+ *
5
+ * Each query result gets its own individual `RowData` — results are never combined or appended
6
+ * across queries. An entity keeps pointing at the `RowData` of whichever query first loaded it
7
+ * (or, for `em.refresh`, the query that most recently refreshed it), and the `RowData` is never
8
+ * written to: mutations go into the entity's `data`/`originalData` bags as usual, so a `RowData`
9
+ * stays a snapshot of "what the database returned for this query".
10
+ *
11
+ * This is the seam that lets rows be backed by different representations:
12
+ *
13
+ * - `PojoRowData` wraps the classic node-pg POJO rows, i.e. for the public
14
+ * `em.hydrate(type, rows)` API and drivers that return materialized rows, and
15
+ * - lazy/columnar results (`WireRowData` in joist-orm, see `JS-ROW-STORE-DESIGN.md`) keep raw
16
+ * wire bytes in off-heap arenas and only decode a `row × column` cell when a field is read.
17
+ *
18
+ * Values returned from `get` are "driver-level" values, i.e. whatever the pg type
19
+ * parsers produce (numbers for `int4`, parsed objects for `jsonb`, strings for
20
+ * deferred temporals); the field serdes then convert them to domain values.
21
+ */
22
+ export interface RowData {
23
+ /** The number of rows in this query result. */
24
+ readonly rowCount: number;
25
+ /** Returns the driver-level column value for a row, i.e. `rowData.get(0, "first_name")`. */
26
+ get(rowIndex: number, columnName: string): any;
27
+ /** Materializes one row as a classic POJO, i.e. for debugging and differential tests. */
28
+ toRow(rowIndex: number): any;
29
+ /** Materializes classic POJO rows, i.e. for `afterFind` observation or debugging. */
30
+ toRows(): any[];
31
+ /** Optionally marks `rowIndex` as retained by a hydrated entity; see `finalize`. */
32
+ retain?(rowIndex: number): void;
33
+ /**
34
+ * Optionally trims/compacts the result after hydration + sidecar reads are complete, i.e. so
35
+ * lazy results only retain bytes for rows whose entities were actually kept.
36
+ */
37
+ finalize?(): void;
38
+ }
39
+ /** Wraps classic materialized POJO rows, i.e. from node-pg results or hand-built test rows. */
40
+ export declare class PojoRowData implements RowData {
41
+ private rows;
42
+ constructor(rows: readonly any[]);
43
+ get rowCount(): number;
44
+ get(rowIndex: number, columnName: string): any;
45
+ toRow(rowIndex: number): any;
46
+ toRows(): any[];
47
+ }
48
+ /** A shared `RowData` for new entities, which have no database row yet (all columns undefined). */
49
+ export declare const emptyRowData: RowData;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.emptyRowData = exports.PojoRowData = void 0;
4
+ /** Wraps classic materialized POJO rows, i.e. from node-pg results or hand-built test rows. */
5
+ class PojoRowData {
6
+ rows;
7
+ constructor(rows) {
8
+ this.rows = rows;
9
+ }
10
+ get rowCount() {
11
+ return this.rows.length;
12
+ }
13
+ get(rowIndex, columnName) {
14
+ return this.rows[rowIndex][columnName];
15
+ }
16
+ toRow(rowIndex) {
17
+ return this.rows[rowIndex];
18
+ }
19
+ toRows() {
20
+ return this.rows;
21
+ }
22
+ }
23
+ exports.PojoRowData = PojoRowData;
24
+ /** A shared `RowData` for new entities, which have no database row yet (all columns undefined). */
25
+ exports.emptyRowData = {
26
+ rowCount: 0,
27
+ get() {
28
+ return undefined;
29
+ },
30
+ toRow() {
31
+ return {};
32
+ },
33
+ toRows() {
34
+ return [];
35
+ },
36
+ };
37
+ //# sourceMappingURL=RowData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowData.js","sourceRoot":"","sources":["../src/RowData.ts"],"names":[],"mappings":";;;AAuCA,+FAA+F;AAC/F;IACsB,IAAI;IAAxB,YAAoB,IAAoB;oBAApB,IAAI;IAAmB,CAAC;IAE5C,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,UAAkB;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,QAAgB;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,IAAa,CAAC;IAC5B,CAAC;CACF;;AAED,mGAAmG;AACtF,QAAA,YAAY,GAAY;IACnC,QAAQ,EAAE,CAAC;IACX,GAAG;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM;QACJ,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
package/build/Todo.d.ts CHANGED
@@ -17,7 +17,7 @@ export declare class Todo {
17
17
  /**
18
18
  * Scans `entities` for new/updated entities and groups them by type (by base type if applicable).
19
19
  */
20
- export declare function createTodos(entities: readonly Entity[]): Record<string, Todo>;
20
+ export declare function createTodos(entities: Iterable<Entity>): Record<string, Todo>;
21
21
  /** getOrSets a `Todo` for `entity` in `todos`. */
22
22
  export declare function getTodo(todos: Record<string, Todo>, entity: Entity): Todo;
23
23
  export interface JoinRowTodo {
@@ -32,4 +32,3 @@ export interface JoinRowTodo {
32
32
  }
33
33
  /** Given a list of `JoinRow`s for a given table, combine them into a single logical `JoinRowTodo`. */
34
34
  export declare function combineJoinRows(joinRows: Record<string, JoinRows>): Record<string, JoinRowTodo>;
35
- //# sourceMappingURL=Todo.d.ts.map
package/build/Todo.js CHANGED
@@ -13,11 +13,22 @@ class Todo {
13
13
  metadata;
14
14
  /** Groups `todos` by their base/subtype, currently only inserts. */
15
15
  static groupInsertsByTypeAndSubType(todos) {
16
- return new Map(Object.values(todos).flatMap((todo) => {
17
- return todo.metadata.inheritanceType
18
- ? [...(0, utils_1.groupBy)(todo.inserts, (e) => (0, EntityMetadata_1.getMetadata)(e)).entries()]
19
- : [[todo.metadata, todo.inserts]];
20
- }));
16
+ const map = new Map();
17
+ for (const todoKey in todos) {
18
+ const todo = todos[todoKey];
19
+ // Skip update/delete-only todos so hook loops don't allocate entries for empty insert lists
20
+ if (todo.inserts.length === 0)
21
+ continue;
22
+ if (todo.metadata.inheritanceType) {
23
+ for (const [meta, inserts] of (0, utils_1.groupBy)(todo.inserts, (e) => (0, EntityMetadata_1.getMetadata)(e))) {
24
+ map.set(meta, inserts);
25
+ }
26
+ }
27
+ else {
28
+ map.set(todo.metadata, todo.inserts);
29
+ }
30
+ }
31
+ return map;
21
32
  }
22
33
  inserts = [];
23
34
  updates = [];
package/build/Todo.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Todo.js","sourceRoot":"","sources":["../src/Todo.ts"],"names":[],"mappings":";;;AAiCA,kCAoBC;AAGD,0BAKC;AAeD,0CAOC;AAnFD,+EAA+E;AAC/E,6CAA+C;AAE/C,qDAA+D;AAE/D,mCAAkC;AAElC,qEAAqE;AACrE,MAAa,IAAI;IAkBN;IAjBT,oEAAoE;IACpE,MAAM,CAAC,4BAA4B,CAAC,KAA2B;QAC7D,OAAO,IAAI,GAAG,CACZ,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe;gBAClC,CAAC,CAAC,CAAC,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC7D,CAAC,CAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAW,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,OAAO,GAAa,EAAE,CAAC;IACvB,OAAO,GAAa,EAAE,CAAC;IACvB,OAAO,GAAa,EAAE,CAAC;IAEvB;IACE,6FAA6F;IACtF,QAAwB;QAAxB,aAAQ,GAAR,QAAQ,CAAgB;IAC9B,CAAC;CACL;AApBD,oBAoBC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,QAA2B;IACrD,MAAM,KAAK,GAAyB,EAAE,CAAC;IACvC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC;QACpD,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACpC,QAAQ,EAAE,EAAE,CAAC;gBACX,KAAK,QAAQ;oBACX,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC1B,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC1B,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC1B,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,kDAAkD;AAClD,SAAgB,OAAO,CAAC,KAA2B,EAAE,MAAc;IACjE,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC;IACjC,yFAAyF;IACzF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC5C,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AACzD,CAAC;AAcD,sGAAsG;AACtG,SAAgB,eAAe,CAAC,QAAkC;IAChE,MAAM,KAAK,GAAgC,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,IAAI,IAAI;YAAE,KAAK,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"Todo.js","sourceRoot":"","sources":["../src/Todo.ts"],"names":[],"mappings":"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"}
@@ -11,4 +11,3 @@ export declare class BatchLoader<K> {
11
11
  load(key: K): Promise<void>;
12
12
  loadAll(keys: K[]): Promise<void>;
13
13
  }
14
- //# sourceMappingURL=BatchLoader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/BatchLoader.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,MAAa,WAAW;IACtB,QAAQ,CAA+B;IACvC,QAAQ,CAAkB;IAC1B,aAAa,CAA4B;IAEzC,YAAY,OAAqC;QAC/C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,GAAM;QACT,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC,aAAc,CAAC;IAC7B,CAAC;IAED,OAAO,CAAC,IAAS;QACf,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,+FAA+F;QAC/F,gGAAgG;QAChG,2EAA2E;QAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAS,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC,aAAc,CAAC;IAC7B,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzD,qBAAqB,CAAC,GAAG,EAAE;oBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAS,CAAC;oBAC5B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;oBAC1B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AA1CD,kCA0CC;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;AAE1C,yDAAyD;AACzD,oEAAoE;AACpE,MAAM,qBAAqB,GACzB,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;IACnE,CAAC,CAAC,CAAC,EAAc,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC,EAAc,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"BatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/BatchLoader.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH;IACE,QAAQ,CAA+B;IACvC,QAAQ,CAAkB;IAC1B,aAAa,CAA4B;IAEzC,YAAY,OAAqC;QAC/C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,GAAM;QACT,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC,aAAc,CAAC;IAC7B,CAAC;IAED,OAAO,CAAC,IAAS;QACf,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,+FAA+F;QAC/F,gGAAgG;QAChG,2EAA2E;QAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAS,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC,aAAc,CAAC;IAC7B,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzD,qBAAqB,CAAC,GAAG,EAAE;oBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAS,CAAC;oBAC5B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;oBAC1B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;AAE1C,yDAAyD;AACzD,oEAAoE;AACpE,MAAM,qBAAqB,GACzB,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;IACnE,CAAC,CAAC,CAAC,EAAc,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC,EAAc,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC"}
@@ -4,4 +4,3 @@ import { BatchLoader } from "./BatchLoader";
4
4
  export declare const enumCollectionLoadOperation = "enum-collection-load";
5
5
  /** Batches `EnumCollection.load` calls via BatchLoader; keys are the owning entities' tagged ids. */
6
6
  export declare function enumCollectionBatchLoader(em: EntityManager, collection: ManyToManyLike): BatchLoader<string>;
7
- //# sourceMappingURL=enumCollectionBatchLoader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enumCollectionBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/enumCollectionBatchLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enumCollectionBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/enumCollectionBatchLoader.ts"],"names":[],"mappings":"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"}
@@ -14,4 +14,3 @@ export declare function loadBatchLoader(em: EntityManager, meta: EntityMetadata,
14
14
  taggedId: string;
15
15
  hint: LoadHint<any> | undefined;
16
16
  }>;
17
- //# sourceMappingURL=loadBatchLoader.d.ts.map
@@ -5,8 +5,8 @@ exports.loadBatchLoader = loadBatchLoader;
5
5
  const BaseEntity_1 = require("../BaseEntity");
6
6
  const EntityManager_1 = require("../EntityManager");
7
7
  const HintTree_1 = require("../HintTree");
8
- const QueryParser_1 = require("../QueryParser");
9
8
  const keys_1 = require("../keys");
9
+ const QueryParser_1 = require("../QueryParser");
10
10
  const utils_1 = require("../utils");
11
11
  exports.loadOperation = "load";
12
12
  /**
@@ -21,7 +21,7 @@ function loadBatchLoader(em, meta, overwriteExisting = false) {
21
21
  const keys = loads.map((l) => (0, keys_1.keyToNumber)(meta, l.taggedId));
22
22
  const alias = (0, utils_1.abbreviation)(meta.tableName);
23
23
  const query = {
24
- selects: [`"${alias}".*`],
24
+ selects: meta.hasLazyColumns ? (0, QueryParser_1.lazyExcludedSelects)(meta, alias) : [`"${alias}".*`],
25
25
  tables: [{ alias, join: "primary", table: meta.tableName }],
26
26
  condition: {
27
27
  kind: "exp",
@@ -35,21 +35,27 @@ function loadBatchLoader(em, meta, overwriteExisting = false) {
35
35
  const { preloader } = (0, EntityManager_1.getEmInternalApi)(em);
36
36
  const preloadHydrator = preloader &&
37
37
  preloader.addPreloading(meta, (0, HintTree_1.buildHintTree)(loads.map((l) => ({ entity: l.taggedId, hint: l.hint }))), query);
38
- const rows = await em["executeFind"](meta, exports.loadOperation, query, {});
39
- const entities = em.hydrate(meta.cstr, rows, { overwriteExisting });
40
- preloadHydrator && preloadHydrator(rows, entities);
41
- // If we're missing any requested rows, mark any requested-but-not-found entities as deleted
42
- if (rows.length !== loads.length) {
43
- const foundIds = new Set(rows.map((r) => (0, keys_1.tagId)(meta, r.id)));
44
- for (const load of loads) {
45
- if (!foundIds.has(load.taggedId)) {
46
- const existingEntity = em.findExistingInstance(load.taggedId);
47
- if (existingEntity) {
48
- (0, BaseEntity_1.getInstanceData)(existingEntity).markDeletedBecauseNotFound();
38
+ const rowData = await em["executeFindRowData"](meta, exports.loadOperation, query, {});
39
+ em["hydrateAndFinalize"](meta.cstr, rowData, {
40
+ overwriteExisting,
41
+ sidecars: (entities) => {
42
+ preloadHydrator && preloadHydrator(rowData, entities);
43
+ // If we're missing any requested rows, mark any requested-but-not-found entities as deleted
44
+ if (rowData.rowCount !== loads.length) {
45
+ const foundIds = new Set();
46
+ for (let i = 0; i < rowData.rowCount; i++)
47
+ foundIds.add((0, keys_1.tagId)(meta, rowData.get(i, "id")));
48
+ for (const load of loads) {
49
+ if (!foundIds.has(load.taggedId)) {
50
+ const existingEntity = em.findExistingInstance(load.taggedId);
51
+ if (existingEntity) {
52
+ (0, BaseEntity_1.getInstanceData)(existingEntity).markDeletedBecauseNotFound();
53
+ }
54
+ }
49
55
  }
50
56
  }
51
- }
52
- }
57
+ },
58
+ });
53
59
  });
54
60
  }
55
61
  //# sourceMappingURL=loadBatchLoader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loadBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/loadBatchLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/loadBatchLoader.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,3 @@ import { BatchLoader } from "./BatchLoader";
4
4
  export declare const manyToManyLoadOperation = "m2m-load";
5
5
  /** Batches m2m.packages/core/src/relations/ReactiveManyToMany.tsload calls via BatchLoader. */
6
6
  export declare function manyToManyBatchLoader(em: EntityManager, collection: ManyToManyLike): BatchLoader<string>;
7
- //# sourceMappingURL=manyToManyBatchLoader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manyToManyBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/manyToManyBatchLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manyToManyBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/manyToManyBatchLoader.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,3 @@ import { OneToManyCollection } from "../index";
4
4
  import { BatchLoader } from "./BatchLoader";
5
5
  export declare const oneToManyLoadOperation = "o2m-load";
6
6
  export declare function oneToManyBatchLoader<T extends Entity, U extends Entity>(em: EntityManager, collection: OneToManyCollection<T, U>): BatchLoader<string>;
7
- //# sourceMappingURL=oneToManyBatchLoader.d.ts.map
@@ -36,8 +36,8 @@ function oneToManyBatchLoader(em, collection) {
36
36
  orderBys: [{ alias, column: "id", order: "ASC" }],
37
37
  };
38
38
  (0, index_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
39
- const rows = await em["executeFind"](meta, exports.oneToManyLoadOperation, query, {});
40
- const entities = em.hydrate(meta.cstr, rows);
39
+ const rowData = await em["executeFindRowData"](meta, exports.oneToManyLoadOperation, query, {});
40
+ const entities = em["hydrateAndFinalize"](meta.cstr, rowData);
41
41
  const entitiesById = (0, utils_1.groupBy)(entities, (entity) => {
42
42
  const ownerId = (0, index_1.maybeResolveReferenceToId)((0, fields_1.getField)(entity, collection.otherFieldName));
43
43
  return ownerId ?? "dummyNoLongerOwned";