joist-orm 1.294.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (482) hide show
  1. package/build/{drivers/PostgresDriver.d.ts → PostgresDriver.d.ts} +1 -4
  2. package/build/PostgresDriver.d.ts.map +1 -0
  3. package/build/{drivers/PostgresDriver.js → PostgresDriver.js} +49 -58
  4. package/build/PostgresDriver.js.map +1 -0
  5. package/build/codegen.d.ts +2 -0
  6. package/build/codegen.d.ts.map +1 -0
  7. package/build/codegen.js +29 -0
  8. package/build/codegen.js.map +1 -0
  9. package/build/graphql-codegen-export.d.ts +2 -0
  10. package/build/graphql-codegen-export.d.ts.map +1 -0
  11. package/build/{drivers/index.js → graphql-codegen-export.js} +3 -5
  12. package/build/graphql-codegen-export.js.map +1 -0
  13. package/build/graphql-export.d.ts +2 -0
  14. package/build/graphql-export.d.ts.map +1 -0
  15. package/build/graphql-export.js +19 -0
  16. package/build/graphql-export.js.map +1 -0
  17. package/build/index.d.ts +3 -128
  18. package/build/index.d.ts.map +1 -1
  19. package/build/index.js +8 -284
  20. package/build/index.js.map +1 -1
  21. package/build/knex-export.d.ts +2 -0
  22. package/build/knex-export.d.ts.map +1 -0
  23. package/build/knex-export.js +19 -0
  24. package/build/knex-export.js.map +1 -0
  25. package/build/pg-migrate.d.ts +2 -0
  26. package/build/pg-migrate.d.ts.map +1 -0
  27. package/build/pg-migrate.js +30 -0
  28. package/build/pg-migrate.js.map +1 -0
  29. package/build/postgres-driver.d.ts +2 -0
  30. package/build/postgres-driver.d.ts.map +1 -0
  31. package/build/postgres-driver.js +7 -0
  32. package/build/postgres-driver.js.map +1 -0
  33. package/build/tests-export.d.ts +2 -0
  34. package/build/tests-export.d.ts.map +1 -0
  35. package/build/tests-export.js +19 -0
  36. package/build/tests-export.js.map +1 -0
  37. package/package.json +85 -16
  38. package/build/AliasAssigner.d.ts +0 -7
  39. package/build/AliasAssigner.d.ts.map +0 -1
  40. package/build/AliasAssigner.js +0 -30
  41. package/build/AliasAssigner.js.map +0 -1
  42. package/build/Aliases.d.ts +0 -110
  43. package/build/Aliases.d.ts.map +0 -1
  44. package/build/Aliases.js +0 -456
  45. package/build/Aliases.js.map +0 -1
  46. package/build/BaseEntity.d.ts +0 -66
  47. package/build/BaseEntity.d.ts.map +0 -1
  48. package/build/BaseEntity.js +0 -120
  49. package/build/BaseEntity.js.map +0 -1
  50. package/build/ConditionBuilder.d.ts +0 -50
  51. package/build/ConditionBuilder.d.ts.map +0 -1
  52. package/build/ConditionBuilder.js +0 -178
  53. package/build/ConditionBuilder.js.map +0 -1
  54. package/build/Entity.d.ts +0 -38
  55. package/build/Entity.d.ts.map +0 -1
  56. package/build/Entity.js +0 -8
  57. package/build/Entity.js.map +0 -1
  58. package/build/EntityFields.d.ts +0 -37
  59. package/build/EntityFields.d.ts.map +0 -1
  60. package/build/EntityFields.js +0 -3
  61. package/build/EntityFields.js.map +0 -1
  62. package/build/EntityFilter.d.ts +0 -113
  63. package/build/EntityFilter.d.ts.map +0 -1
  64. package/build/EntityFilter.js +0 -3
  65. package/build/EntityFilter.js.map +0 -1
  66. package/build/EntityGraphQLFilter.d.ts +0 -51
  67. package/build/EntityGraphQLFilter.d.ts.map +0 -1
  68. package/build/EntityGraphQLFilter.js +0 -54
  69. package/build/EntityGraphQLFilter.js.map +0 -1
  70. package/build/EntityManager.d.ts +0 -734
  71. package/build/EntityManager.d.ts.map +0 -1
  72. package/build/EntityManager.js +0 -2075
  73. package/build/EntityManager.js.map +0 -1
  74. package/build/EntityMetadata.d.ts +0 -185
  75. package/build/EntityMetadata.d.ts.map +0 -1
  76. package/build/EntityMetadata.js +0 -61
  77. package/build/EntityMetadata.js.map +0 -1
  78. package/build/EnumMetadata.d.ts +0 -15
  79. package/build/EnumMetadata.d.ts.map +0 -1
  80. package/build/EnumMetadata.js +0 -3
  81. package/build/EnumMetadata.js.map +0 -1
  82. package/build/FlushLock.d.ts +0 -26
  83. package/build/FlushLock.d.ts.map +0 -1
  84. package/build/FlushLock.js +0 -57
  85. package/build/FlushLock.js.map +0 -1
  86. package/build/HintTree.d.ts +0 -42
  87. package/build/HintTree.d.ts.map +0 -1
  88. package/build/HintTree.js +0 -64
  89. package/build/HintTree.js.map +0 -1
  90. package/build/IndexManager.d.ts +0 -30
  91. package/build/IndexManager.d.ts.map +0 -1
  92. package/build/IndexManager.js +0 -206
  93. package/build/IndexManager.js.map +0 -1
  94. package/build/InstanceData.d.ts +0 -59
  95. package/build/InstanceData.d.ts.map +0 -1
  96. package/build/InstanceData.js +0 -162
  97. package/build/InstanceData.js.map +0 -1
  98. package/build/IsLoadedCache.d.ts +0 -32
  99. package/build/IsLoadedCache.d.ts.map +0 -1
  100. package/build/IsLoadedCache.js +0 -80
  101. package/build/IsLoadedCache.js.map +0 -1
  102. package/build/JoinRows.d.ts +0 -75
  103. package/build/JoinRows.d.ts.map +0 -1
  104. package/build/JoinRows.js +0 -246
  105. package/build/JoinRows.js.map +0 -1
  106. package/build/PluginManager.d.ts +0 -90
  107. package/build/PluginManager.d.ts.map +0 -1
  108. package/build/PluginManager.js +0 -97
  109. package/build/PluginManager.js.map +0 -1
  110. package/build/QueryParser.d.ts +0 -271
  111. package/build/QueryParser.d.ts.map +0 -1
  112. package/build/QueryParser.js +0 -853
  113. package/build/QueryParser.js.map +0 -1
  114. package/build/QueryParser.pruning.d.ts +0 -5
  115. package/build/QueryParser.pruning.d.ts.map +0 -1
  116. package/build/QueryParser.pruning.js +0 -118
  117. package/build/QueryParser.pruning.js.map +0 -1
  118. package/build/QueryVisitor.d.ts +0 -19
  119. package/build/QueryVisitor.d.ts.map +0 -1
  120. package/build/QueryVisitor.js +0 -84
  121. package/build/QueryVisitor.js.map +0 -1
  122. package/build/ReactionsManager.d.ts +0 -84
  123. package/build/ReactionsManager.d.ts.map +0 -1
  124. package/build/ReactionsManager.js +0 -308
  125. package/build/ReactionsManager.js.map +0 -1
  126. package/build/Todo.d.ts +0 -31
  127. package/build/Todo.d.ts.map +0 -1
  128. package/build/Todo.js +0 -73
  129. package/build/Todo.js.map +0 -1
  130. package/build/caches.d.ts +0 -6
  131. package/build/caches.d.ts.map +0 -1
  132. package/build/caches.js +0 -42
  133. package/build/caches.js.map +0 -1
  134. package/build/changes.d.ts +0 -79
  135. package/build/changes.d.ts.map +0 -1
  136. package/build/changes.js +0 -251
  137. package/build/changes.js.map +0 -1
  138. package/build/config.d.ts +0 -237
  139. package/build/config.d.ts.map +0 -1
  140. package/build/config.js +0 -298
  141. package/build/config.js.map +0 -1
  142. package/build/config.test.d.ts +0 -2
  143. package/build/config.test.d.ts.map +0 -1
  144. package/build/config.test.js +0 -53
  145. package/build/config.test.js.map +0 -1
  146. package/build/configure.d.ts +0 -13
  147. package/build/configure.d.ts.map +0 -1
  148. package/build/configure.js +0 -329
  149. package/build/configure.js.map +0 -1
  150. package/build/dataloaders/findByUniqueDataLoader.d.ts +0 -7
  151. package/build/dataloaders/findByUniqueDataLoader.d.ts.map +0 -1
  152. package/build/dataloaders/findByUniqueDataLoader.js +0 -47
  153. package/build/dataloaders/findByUniqueDataLoader.js.map +0 -1
  154. package/build/dataloaders/findCountDataLoader.d.ts +0 -7
  155. package/build/dataloaders/findCountDataLoader.d.ts.map +0 -1
  156. package/build/dataloaders/findCountDataLoader.js +0 -74
  157. package/build/dataloaders/findCountDataLoader.js.map +0 -1
  158. package/build/dataloaders/findDataLoader.d.ts +0 -37
  159. package/build/dataloaders/findDataLoader.d.ts.map +0 -1
  160. package/build/dataloaders/findDataLoader.js +0 -337
  161. package/build/dataloaders/findDataLoader.js.map +0 -1
  162. package/build/dataloaders/findIdsDataLoader.d.ts +0 -7
  163. package/build/dataloaders/findIdsDataLoader.d.ts.map +0 -1
  164. package/build/dataloaders/findIdsDataLoader.js +0 -74
  165. package/build/dataloaders/findIdsDataLoader.js.map +0 -1
  166. package/build/dataloaders/findOrCreateDataLoader.d.ts +0 -13
  167. package/build/dataloaders/findOrCreateDataLoader.d.ts.map +0 -1
  168. package/build/dataloaders/findOrCreateDataLoader.js +0 -174
  169. package/build/dataloaders/findOrCreateDataLoader.js.map +0 -1
  170. package/build/dataloaders/lensDataLoader.d.ts +0 -12
  171. package/build/dataloaders/lensDataLoader.d.ts.map +0 -1
  172. package/build/dataloaders/lensDataLoader.js +0 -180
  173. package/build/dataloaders/lensDataLoader.js.map +0 -1
  174. package/build/dataloaders/loadDataLoader.d.ts +0 -11
  175. package/build/dataloaders/loadDataLoader.d.ts.map +0 -1
  176. package/build/dataloaders/loadDataLoader.js +0 -54
  177. package/build/dataloaders/loadDataLoader.js.map +0 -1
  178. package/build/dataloaders/manyToManyDataLoader.d.ts +0 -8
  179. package/build/dataloaders/manyToManyDataLoader.d.ts.map +0 -1
  180. package/build/dataloaders/manyToManyDataLoader.js +0 -74
  181. package/build/dataloaders/manyToManyDataLoader.js.map +0 -1
  182. package/build/dataloaders/manyToManyFindDataLoader.d.ts +0 -8
  183. package/build/dataloaders/manyToManyFindDataLoader.d.ts.map +0 -1
  184. package/build/dataloaders/manyToManyFindDataLoader.js +0 -70
  185. package/build/dataloaders/manyToManyFindDataLoader.js.map +0 -1
  186. package/build/dataloaders/oneToManyDataLoader.d.ts +0 -7
  187. package/build/dataloaders/oneToManyDataLoader.d.ts.map +0 -1
  188. package/build/dataloaders/oneToManyDataLoader.js +0 -60
  189. package/build/dataloaders/oneToManyDataLoader.js.map +0 -1
  190. package/build/dataloaders/oneToManyFindDataLoader.d.ts +0 -8
  191. package/build/dataloaders/oneToManyFindDataLoader.d.ts.map +0 -1
  192. package/build/dataloaders/oneToManyFindDataLoader.js +0 -71
  193. package/build/dataloaders/oneToManyFindDataLoader.js.map +0 -1
  194. package/build/dataloaders/oneToOneDataLoader.d.ts +0 -7
  195. package/build/dataloaders/oneToOneDataLoader.d.ts.map +0 -1
  196. package/build/dataloaders/oneToOneDataLoader.js +0 -59
  197. package/build/dataloaders/oneToOneDataLoader.js.map +0 -1
  198. package/build/dataloaders/populateDataLoader.d.ts +0 -13
  199. package/build/dataloaders/populateDataLoader.d.ts.map +0 -1
  200. package/build/dataloaders/populateDataLoader.js +0 -148
  201. package/build/dataloaders/populateDataLoader.js.map +0 -1
  202. package/build/dataloaders/recursiveChildrenDataLoader.d.ts +0 -7
  203. package/build/dataloaders/recursiveChildrenDataLoader.d.ts.map +0 -1
  204. package/build/dataloaders/recursiveChildrenDataLoader.js +0 -77
  205. package/build/dataloaders/recursiveChildrenDataLoader.js.map +0 -1
  206. package/build/dataloaders/recursiveParentsDataLoader.d.ts +0 -7
  207. package/build/dataloaders/recursiveParentsDataLoader.d.ts.map +0 -1
  208. package/build/dataloaders/recursiveParentsDataLoader.js +0 -59
  209. package/build/dataloaders/recursiveParentsDataLoader.js.map +0 -1
  210. package/build/defaults.d.ts +0 -54
  211. package/build/defaults.d.ts.map +0 -1
  212. package/build/defaults.js +0 -282
  213. package/build/defaults.js.map +0 -1
  214. package/build/driverApi.d.ts +0 -19
  215. package/build/driverApi.d.ts.map +0 -1
  216. package/build/driverApi.js +0 -17
  217. package/build/driverApi.js.map +0 -1
  218. package/build/drivers/Driver.d.ts +0 -26
  219. package/build/drivers/Driver.d.ts.map +0 -1
  220. package/build/drivers/Driver.js +0 -3
  221. package/build/drivers/Driver.js.map +0 -1
  222. package/build/drivers/EntityWriter.d.ts +0 -64
  223. package/build/drivers/EntityWriter.d.ts.map +0 -1
  224. package/build/drivers/EntityWriter.js +0 -237
  225. package/build/drivers/EntityWriter.js.map +0 -1
  226. package/build/drivers/IdAssigner.d.ts +0 -50
  227. package/build/drivers/IdAssigner.d.ts.map +0 -1
  228. package/build/drivers/IdAssigner.js +0 -133
  229. package/build/drivers/IdAssigner.js.map +0 -1
  230. package/build/drivers/PostgresDriver.d.ts.map +0 -1
  231. package/build/drivers/PostgresDriver.js.map +0 -1
  232. package/build/drivers/buildRawQuery.d.ts +0 -20
  233. package/build/drivers/buildRawQuery.d.ts.map +0 -1
  234. package/build/drivers/buildRawQuery.js +0 -148
  235. package/build/drivers/buildRawQuery.js.map +0 -1
  236. package/build/drivers/buildUtils.d.ts +0 -4
  237. package/build/drivers/buildUtils.d.ts.map +0 -1
  238. package/build/drivers/buildUtils.js +0 -79
  239. package/build/drivers/buildUtils.js.map +0 -1
  240. package/build/drivers/index.d.ts +0 -5
  241. package/build/drivers/index.d.ts.map +0 -1
  242. package/build/drivers/index.js.map +0 -1
  243. package/build/fields.d.ts +0 -24
  244. package/build/fields.d.ts.map +0 -1
  245. package/build/fields.js +0 -162
  246. package/build/fields.js.map +0 -1
  247. package/build/getProperties.d.ts +0 -28
  248. package/build/getProperties.d.ts.map +0 -1
  249. package/build/getProperties.js +0 -141
  250. package/build/getProperties.js.map +0 -1
  251. package/build/json.d.ts +0 -77
  252. package/build/json.d.ts.map +0 -1
  253. package/build/json.js +0 -116
  254. package/build/json.js.map +0 -1
  255. package/build/k.d.ts +0 -2
  256. package/build/k.d.ts.map +0 -1
  257. package/build/k.js +0 -9
  258. package/build/k.js.map +0 -1
  259. package/build/keys.d.ts +0 -49
  260. package/build/keys.d.ts.map +0 -1
  261. package/build/keys.js +0 -195
  262. package/build/keys.js.map +0 -1
  263. package/build/keywords.d.ts +0 -5
  264. package/build/keywords.d.ts.map +0 -1
  265. package/build/keywords.js +0 -124
  266. package/build/keywords.js.map +0 -1
  267. package/build/loadHints.d.ts +0 -112
  268. package/build/loadHints.d.ts.map +0 -1
  269. package/build/loadHints.js +0 -75
  270. package/build/loadHints.js.map +0 -1
  271. package/build/loadLens.d.ts +0 -66
  272. package/build/loadLens.d.ts.map +0 -1
  273. package/build/loadLens.js +0 -287
  274. package/build/loadLens.js.map +0 -1
  275. package/build/logging/FactoryLogger.d.ts +0 -24
  276. package/build/logging/FactoryLogger.d.ts.map +0 -1
  277. package/build/logging/FactoryLogger.js +0 -77
  278. package/build/logging/FactoryLogger.js.map +0 -1
  279. package/build/logging/FieldLogger.d.ts +0 -27
  280. package/build/logging/FieldLogger.d.ts.map +0 -1
  281. package/build/logging/FieldLogger.js +0 -69
  282. package/build/logging/FieldLogger.js.map +0 -1
  283. package/build/logging/ReactionLogger.d.ts +0 -23
  284. package/build/logging/ReactionLogger.d.ts.map +0 -1
  285. package/build/logging/ReactionLogger.js +0 -65
  286. package/build/logging/ReactionLogger.js.map +0 -1
  287. package/build/newEntity.d.ts +0 -45
  288. package/build/newEntity.d.ts.map +0 -1
  289. package/build/newEntity.js +0 -106
  290. package/build/newEntity.js.map +0 -1
  291. package/build/newTestInstance.d.ts +0 -193
  292. package/build/newTestInstance.d.ts.map +0 -1
  293. package/build/newTestInstance.js +0 -738
  294. package/build/newTestInstance.js.map +0 -1
  295. package/build/normalizeHints.d.ts +0 -16
  296. package/build/normalizeHints.d.ts.map +0 -1
  297. package/build/normalizeHints.js +0 -31
  298. package/build/normalizeHints.js.map +0 -1
  299. package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -9
  300. package/build/plugins/ImmutableEntitiesPlugin.d.ts.map +0 -1
  301. package/build/plugins/ImmutableEntitiesPlugin.js +0 -21
  302. package/build/plugins/ImmutableEntitiesPlugin.js.map +0 -1
  303. package/build/plugins/PreloadPlugin.d.ts +0 -69
  304. package/build/plugins/PreloadPlugin.d.ts.map +0 -1
  305. package/build/plugins/PreloadPlugin.js +0 -3
  306. package/build/plugins/PreloadPlugin.js.map +0 -1
  307. package/build/preloading/JsonAggregatePreloader.d.ts +0 -16
  308. package/build/preloading/JsonAggregatePreloader.d.ts.map +0 -1
  309. package/build/preloading/JsonAggregatePreloader.js +0 -238
  310. package/build/preloading/JsonAggregatePreloader.js.map +0 -1
  311. package/build/preloading/canPreload.d.ts +0 -3
  312. package/build/preloading/canPreload.d.ts.map +0 -1
  313. package/build/preloading/canPreload.js +0 -21
  314. package/build/preloading/canPreload.js.map +0 -1
  315. package/build/preloading/partitionHint.d.ts +0 -5
  316. package/build/preloading/partitionHint.d.ts.map +0 -1
  317. package/build/preloading/partitionHint.js +0 -56
  318. package/build/preloading/partitionHint.js.map +0 -1
  319. package/build/reactiveHints.d.ts +0 -129
  320. package/build/reactiveHints.d.ts.map +0 -1
  321. package/build/reactiveHints.js +0 -458
  322. package/build/reactiveHints.js.map +0 -1
  323. package/build/relations/AbstractPropertyImpl.d.ts +0 -8
  324. package/build/relations/AbstractPropertyImpl.d.ts.map +0 -1
  325. package/build/relations/AbstractPropertyImpl.js +0 -15
  326. package/build/relations/AbstractPropertyImpl.js.map +0 -1
  327. package/build/relations/AbstractRelationImpl.d.ts +0 -36
  328. package/build/relations/AbstractRelationImpl.d.ts.map +0 -1
  329. package/build/relations/AbstractRelationImpl.js +0 -19
  330. package/build/relations/AbstractRelationImpl.js.map +0 -1
  331. package/build/relations/Collection.d.ts +0 -28
  332. package/build/relations/Collection.d.ts.map +0 -1
  333. package/build/relations/Collection.js +0 -18
  334. package/build/relations/Collection.js.map +0 -1
  335. package/build/relations/CustomCollection.d.ts +0 -69
  336. package/build/relations/CustomCollection.d.ts.map +0 -1
  337. package/build/relations/CustomCollection.js +0 -166
  338. package/build/relations/CustomCollection.js.map +0 -1
  339. package/build/relations/CustomReference.d.ts +0 -71
  340. package/build/relations/CustomReference.d.ts.map +0 -1
  341. package/build/relations/CustomReference.js +0 -152
  342. package/build/relations/CustomReference.js.map +0 -1
  343. package/build/relations/LargeCollection.d.ts +0 -19
  344. package/build/relations/LargeCollection.d.ts.map +0 -1
  345. package/build/relations/LargeCollection.js +0 -3
  346. package/build/relations/LargeCollection.js.map +0 -1
  347. package/build/relations/ManyToManyCollection.d.ts +0 -44
  348. package/build/relations/ManyToManyCollection.d.ts.map +0 -1
  349. package/build/relations/ManyToManyCollection.js +0 -268
  350. package/build/relations/ManyToManyCollection.js.map +0 -1
  351. package/build/relations/ManyToManyLargeCollection.d.ts +0 -30
  352. package/build/relations/ManyToManyLargeCollection.d.ts.map +0 -1
  353. package/build/relations/ManyToManyLargeCollection.js +0 -119
  354. package/build/relations/ManyToManyLargeCollection.js.map +0 -1
  355. package/build/relations/ManyToOneReference.d.ts +0 -121
  356. package/build/relations/ManyToOneReference.d.ts.map +0 -1
  357. package/build/relations/ManyToOneReference.js +0 -389
  358. package/build/relations/ManyToOneReference.js.map +0 -1
  359. package/build/relations/OneToManyCollection.d.ts +0 -58
  360. package/build/relations/OneToManyCollection.d.ts.map +0 -1
  361. package/build/relations/OneToManyCollection.js +0 -347
  362. package/build/relations/OneToManyCollection.js.map +0 -1
  363. package/build/relations/OneToManyLargeCollection.d.ts +0 -26
  364. package/build/relations/OneToManyLargeCollection.d.ts.map +0 -1
  365. package/build/relations/OneToManyLargeCollection.js +0 -102
  366. package/build/relations/OneToManyLargeCollection.js.map +0 -1
  367. package/build/relations/OneToOneReference.d.ts +0 -93
  368. package/build/relations/OneToOneReference.d.ts.map +0 -1
  369. package/build/relations/OneToOneReference.js +0 -228
  370. package/build/relations/OneToOneReference.js.map +0 -1
  371. package/build/relations/PolymorphicReference.d.ts +0 -89
  372. package/build/relations/PolymorphicReference.d.ts.map +0 -1
  373. package/build/relations/PolymorphicReference.js +0 -244
  374. package/build/relations/PolymorphicReference.js.map +0 -1
  375. package/build/relations/ReactiveField.d.ts +0 -87
  376. package/build/relations/ReactiveField.d.ts.map +0 -1
  377. package/build/relations/ReactiveField.js +0 -149
  378. package/build/relations/ReactiveField.js.map +0 -1
  379. package/build/relations/ReactiveGetter.d.ts +0 -30
  380. package/build/relations/ReactiveGetter.d.ts.map +0 -1
  381. package/build/relations/ReactiveGetter.js +0 -38
  382. package/build/relations/ReactiveGetter.js.map +0 -1
  383. package/build/relations/ReactiveManyToMany.d.ts +0 -56
  384. package/build/relations/ReactiveManyToMany.d.ts.map +0 -1
  385. package/build/relations/ReactiveManyToMany.js +0 -243
  386. package/build/relations/ReactiveManyToMany.js.map +0 -1
  387. package/build/relations/ReactiveManyToManyOtherSide.d.ts +0 -47
  388. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +0 -1
  389. package/build/relations/ReactiveManyToManyOtherSide.js +0 -155
  390. package/build/relations/ReactiveManyToManyOtherSide.js.map +0 -1
  391. package/build/relations/ReactiveQueryField.d.ts +0 -41
  392. package/build/relations/ReactiveQueryField.d.ts.map +0 -1
  393. package/build/relations/ReactiveQueryField.js +0 -125
  394. package/build/relations/ReactiveQueryField.js.map +0 -1
  395. package/build/relations/ReactiveReference.d.ts +0 -119
  396. package/build/relations/ReactiveReference.d.ts.map +0 -1
  397. package/build/relations/ReactiveReference.js +0 -333
  398. package/build/relations/ReactiveReference.js.map +0 -1
  399. package/build/relations/ReadOnlyCollection.d.ts +0 -19
  400. package/build/relations/ReadOnlyCollection.d.ts.map +0 -1
  401. package/build/relations/ReadOnlyCollection.js +0 -15
  402. package/build/relations/ReadOnlyCollection.js.map +0 -1
  403. package/build/relations/RecursiveCollection.d.ts +0 -84
  404. package/build/relations/RecursiveCollection.d.ts.map +0 -1
  405. package/build/relations/RecursiveCollection.js +0 -296
  406. package/build/relations/RecursiveCollection.js.map +0 -1
  407. package/build/relations/Reference.d.ts +0 -35
  408. package/build/relations/Reference.d.ts.map +0 -1
  409. package/build/relations/Reference.js +0 -21
  410. package/build/relations/Reference.js.map +0 -1
  411. package/build/relations/Relation.d.ts +0 -14
  412. package/build/relations/Relation.d.ts.map +0 -1
  413. package/build/relations/Relation.js +0 -12
  414. package/build/relations/Relation.js.map +0 -1
  415. package/build/relations/hasAsyncMethod.d.ts +0 -27
  416. package/build/relations/hasAsyncMethod.d.ts.map +0 -1
  417. package/build/relations/hasAsyncMethod.js +0 -47
  418. package/build/relations/hasAsyncMethod.js.map +0 -1
  419. package/build/relations/hasAsyncProperty.d.ts +0 -49
  420. package/build/relations/hasAsyncProperty.d.ts.map +0 -1
  421. package/build/relations/hasAsyncProperty.js +0 -98
  422. package/build/relations/hasAsyncProperty.js.map +0 -1
  423. package/build/relations/hasManyDerived.d.ts +0 -22
  424. package/build/relations/hasManyDerived.d.ts.map +0 -1
  425. package/build/relations/hasManyDerived.js +0 -32
  426. package/build/relations/hasManyDerived.js.map +0 -1
  427. package/build/relations/hasManyThrough.d.ts +0 -10
  428. package/build/relations/hasManyThrough.d.ts.map +0 -1
  429. package/build/relations/hasManyThrough.js +0 -24
  430. package/build/relations/hasManyThrough.js.map +0 -1
  431. package/build/relations/hasOneDerived.d.ts +0 -12
  432. package/build/relations/hasOneDerived.d.ts.map +0 -1
  433. package/build/relations/hasOneDerived.js +0 -24
  434. package/build/relations/hasOneDerived.js.map +0 -1
  435. package/build/relations/hasOneThrough.d.ts +0 -10
  436. package/build/relations/hasOneThrough.d.ts.map +0 -1
  437. package/build/relations/hasOneThrough.js +0 -24
  438. package/build/relations/hasOneThrough.js.map +0 -1
  439. package/build/relations/index.d.ts +0 -28
  440. package/build/relations/index.d.ts.map +0 -1
  441. package/build/relations/index.js +0 -88
  442. package/build/relations/index.js.map +0 -1
  443. package/build/rules.d.ts +0 -123
  444. package/build/rules.d.ts.map +0 -1
  445. package/build/rules.js +0 -231
  446. package/build/rules.js.map +0 -1
  447. package/build/runtimeConfig.d.ts +0 -17
  448. package/build/runtimeConfig.d.ts.map +0 -1
  449. package/build/runtimeConfig.js +0 -18
  450. package/build/runtimeConfig.js.map +0 -1
  451. package/build/serde.d.ts +0 -277
  452. package/build/serde.d.ts.map +0 -1
  453. package/build/serde.js +0 -517
  454. package/build/serde.js.map +0 -1
  455. package/build/temporal.d.ts +0 -16
  456. package/build/temporal.d.ts.map +0 -1
  457. package/build/temporal.js +0 -48
  458. package/build/temporal.js.map +0 -1
  459. package/build/temporalMappers.d.ts +0 -25
  460. package/build/temporalMappers.d.ts.map +0 -1
  461. package/build/temporalMappers.js +0 -59
  462. package/build/temporalMappers.js.map +0 -1
  463. package/build/typeMap.d.ts +0 -68
  464. package/build/typeMap.d.ts.map +0 -1
  465. package/build/typeMap.js +0 -3
  466. package/build/typeMap.js.map +0 -1
  467. package/build/unnest.d.ts +0 -13
  468. package/build/unnest.d.ts.map +0 -1
  469. package/build/unnest.js +0 -85
  470. package/build/unnest.js.map +0 -1
  471. package/build/upsert.d.ts +0 -42
  472. package/build/upsert.d.ts.map +0 -1
  473. package/build/upsert.js +0 -265
  474. package/build/upsert.js.map +0 -1
  475. package/build/utils.d.ts +0 -58
  476. package/build/utils.d.ts.map +0 -1
  477. package/build/utils.js +0 -236
  478. package/build/utils.js.map +0 -1
  479. package/build/withLoaded.d.ts +0 -56
  480. package/build/withLoaded.d.ts.map +0 -1
  481. package/build/withLoaded.js +0 -76
  482. package/build/withLoaded.js.map +0 -1
@@ -1,296 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RecursiveCycleError = exports.RecursiveChildrenCollectionImpl = exports.RecursiveParentsCollectionImpl = void 0;
4
- exports.hasRecursiveParents = hasRecursiveParents;
5
- exports.hasRecursiveChildren = hasRecursiveChildren;
6
- const recursiveChildrenDataLoader_1 = require("../dataloaders/recursiveChildrenDataLoader");
7
- const recursiveParentsDataLoader_1 = require("../dataloaders/recursiveParentsDataLoader");
8
- const index_1 = require("../index");
9
- const newEntity_1 = require("../newEntity");
10
- const AbstractRelationImpl_1 = require("./AbstractRelationImpl");
11
- const Relation_1 = require("./Relation");
12
- /**
13
- * An alias for creating `RecursiveParentsCollectionImpl`s.
14
- *
15
- * I.e. for `Author.mentor` (m2o fk), we can return `Author.mentorsRecursive` recursively looking up.
16
- */
17
- function hasRecursiveParents(m2oName, // i.e. `author.mentor`
18
- otherFieldName) {
19
- return (0, newEntity_1.lazyField)((entity, fieldName) => {
20
- return new RecursiveParentsCollectionImpl(entity, fieldName, m2oName, otherFieldName);
21
- });
22
- }
23
- /**
24
- * An alias for creating `RecursiveChildrenCollectionImpl`s.
25
- *
26
- * I.e. for `Author.mentees` (o2m), we can return `Author.menteesRecursive` recursively looking down.
27
- */
28
- function hasRecursiveChildren(o2mName, // i.e. `author.mentees`
29
- otherFieldName) {
30
- return (0, newEntity_1.lazyField)((entity, fieldName) => {
31
- return new RecursiveChildrenCollectionImpl(entity, fieldName, o2mName, otherFieldName);
32
- });
33
- }
34
- /**
35
- * A base class for the common methods between the parent & children recursive collections.
36
- *
37
- * We could probably move some of this into AbstractRelationImpl?
38
- */
39
- class AbstractRecursiveCollectionImpl extends AbstractRelationImpl_1.AbstractRelationImpl {
40
- get get() {
41
- return this.filterDeleted(this.doGet(), { withDeleted: false });
42
- }
43
- get getWithDeleted() {
44
- return this.filterDeleted(this.doGet(), { withDeleted: true });
45
- }
46
- setFromOpts() {
47
- throw new Error("Method not implemented.");
48
- }
49
- set() {
50
- throw new Error("Method not implemented.");
51
- }
52
- get isPreloaded() {
53
- return false;
54
- }
55
- preload() {
56
- throw new Error("Method not implemented.");
57
- }
58
- cleanupOnEntityDeleted() {
59
- return Promise.resolve();
60
- }
61
- maybeCascadeDelete() { }
62
- get meta() {
63
- return (0, index_1.getMetadata)(this.entity);
64
- }
65
- /** Removes pending-hard-delete or soft-deleted entities, unless explicitly asked for. */
66
- filterDeleted(entities, opts) {
67
- return opts?.withDeleted === true
68
- ? [...entities]
69
- : entities.filter((e) => !e.isDeletedEntity && !e.isSoftDeletedEntity);
70
- }
71
- [Relation_1.RelationT] = null;
72
- [Relation_1.RelationU] = null;
73
- }
74
- class RecursiveParentsCollectionImpl extends AbstractRecursiveCollectionImpl {
75
- #fieldName;
76
- #m2oName;
77
- #otherFieldName;
78
- #loaded = undefined;
79
- constructor(entity, fieldName, m2oName, otherFieldName) {
80
- super(entity);
81
- this.#fieldName = fieldName;
82
- this.#m2oName = m2oName;
83
- this.#otherFieldName = otherFieldName;
84
- }
85
- // opts is an internal parameter
86
- async load(opts = {}) {
87
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
88
- if (!this.isLoaded || opts.forceReload) {
89
- // If we have `[grandchild, newlyCreatedParent, existingGrandparent, ...more...]`, skip up to the
90
- // `existingGrandparent`, because if we `.load(entity)` (i.e. where we are the `grandchild`) then
91
- // recursiveParentsDataLoader will try CTE query up from `grandchild[parent]`, but since that will
92
- // be `newlyCreatedParent`, it doesn't have an id yet.
93
- const entityToLoad = opts.forceReload ? this.entity : this.findUnloadedReference()?.entity;
94
- if (entityToLoad && !entityToLoad.isNewEntity) {
95
- await (0, recursiveParentsDataLoader_1.recursiveParentsDataLoader)(this.entity.em, this)
96
- .load(entityToLoad)
97
- .catch(function load(err) {
98
- throw (0, index_1.appendStack)(err, new Error());
99
- });
100
- // See if there are any WIP changes, i.e. new parents, that the ^ SQL query didn't know to load.
101
- // We don't have to `while` loop this, because if parent itself has WIP changes above it, then
102
- // its own `RecursiveParentsCollectionImpl.load` will load it, before returning to this method.
103
- const unloadedParent = this.findUnloadedReference();
104
- if (unloadedParent) {
105
- await (0, recursiveParentsDataLoader_1.recursiveParentsDataLoader)(this.entity.em, this)
106
- .load(unloadedParent.entity)
107
- .catch(function load(err) {
108
- throw (0, index_1.appendStack)(err, new Error());
109
- });
110
- }
111
- }
112
- this.#loaded = true;
113
- }
114
- return this.filterDeleted(this.doGet(), opts);
115
- }
116
- get isLoaded() {
117
- if (this.#loaded !== undefined)
118
- return this.#loaded;
119
- this.#loaded = this.findUnloadedReference() === undefined;
120
- (0, index_1.getEmInternalApi)(this.entity.em).isLoadedCache.addNaive(this);
121
- return this.#loaded;
122
- }
123
- resetIsLoaded() {
124
- this.#loaded = undefined;
125
- }
126
- get fieldName() {
127
- return this.#fieldName;
128
- }
129
- get m2oFieldName() {
130
- return this.#m2oName;
131
- }
132
- get otherFieldName() {
133
- return this.#otherFieldName;
134
- }
135
- get hasBeenSet() {
136
- return false;
137
- }
138
- toString() {
139
- return `RecursiveParentsCollectionImpl(entity: ${this.entity}, fieldName: ${this.fieldName})`;
140
- }
141
- doGet() {
142
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
143
- const unloaded = this.findUnloadedReference();
144
- if (unloaded) {
145
- throw new Error(this.toString() + `.get was called but ${unloaded} was not loaded`);
146
- }
147
- const parents = [];
148
- const visited = new Set();
149
- for (let current = getLoadedReference(this.entity[this.#m2oName]); current !== undefined; current = getLoadedReference(current[this.#m2oName])) {
150
- parents.push(current);
151
- if (visited.has(current))
152
- throw new RecursiveCycleError(this, [...visited, current]);
153
- visited.add(current);
154
- }
155
- return parents;
156
- }
157
- findUnloadedReference() {
158
- const visited = new Set();
159
- for (let current = this.entity; current !== undefined; current = getLoadedReference(current[this.#m2oName])) {
160
- const relation = current[this.#m2oName];
161
- if ((0, index_1.isReference)(relation) && !(0, index_1.isLoadedReference)(relation))
162
- return relation;
163
- if (visited.has(current))
164
- throw new RecursiveCycleError(this, [...visited, current]);
165
- visited.add(current);
166
- }
167
- return undefined;
168
- }
169
- }
170
- exports.RecursiveParentsCollectionImpl = RecursiveParentsCollectionImpl;
171
- class RecursiveChildrenCollectionImpl extends AbstractRecursiveCollectionImpl {
172
- #fieldName;
173
- #o2mName;
174
- #otherFieldName;
175
- #loaded = undefined;
176
- constructor(entity, fieldName, o2mName, otherFieldName) {
177
- super(entity);
178
- this.#fieldName = fieldName;
179
- this.#o2mName = o2mName;
180
- this.#otherFieldName = otherFieldName;
181
- }
182
- // opts is an internal parameter
183
- async load(opts = {}) {
184
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
185
- if (!this.isLoaded || opts.forceReload) {
186
- if (!this.entity.isNewEntity) {
187
- await (0, recursiveChildrenDataLoader_1.recursiveChildrenDataLoader)(this.entity.em, this)
188
- .load(this.entity)
189
- .catch(function load(err) {
190
- throw (0, index_1.appendStack)(err, new Error());
191
- });
192
- }
193
- const unloaded = this.findUnloadedCollections();
194
- if (unloaded.length > 0) {
195
- // Go through the entities own `fooRecursive` collection so that it's marked as loaded.
196
- // We don't have to `while` loop this, because if they children themselves have any WIP
197
- // changes, then their own `RecursiveChildrenCollectionImpl.load` will load them.
198
- await Promise.all(unloaded.map((r) => r.entity[this.fieldName].load(opts)));
199
- }
200
- this.#loaded = true;
201
- }
202
- return this.filterDeleted(this.doGet(), opts);
203
- }
204
- get isLoaded() {
205
- if (this.#loaded !== undefined)
206
- return this.#loaded;
207
- this.#loaded = this.findUnloadedCollections().length === 0;
208
- (0, index_1.getEmInternalApi)(this.entity.em).isLoadedCache.addNaive(this);
209
- return this.#loaded;
210
- }
211
- resetIsLoaded() {
212
- this.#loaded = undefined;
213
- }
214
- get fieldName() {
215
- return this.#fieldName;
216
- }
217
- get o2mFieldName() {
218
- return this.#o2mName;
219
- }
220
- get otherFieldName() {
221
- return this.#otherFieldName;
222
- }
223
- get hasBeenSet() {
224
- return false;
225
- }
226
- toString() {
227
- return `RecursiveChildrenCollectionImpl(entity: ${this.entity}, fieldName: ${this.fieldName})`;
228
- }
229
- doGet() {
230
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
231
- if (!this.isLoaded) {
232
- throw new Error(this.toString() + `.get was called but when not loaded`);
233
- }
234
- const children = [];
235
- const visited = new Set();
236
- // Use a node+path combo to know which path caused the cycle
237
- const todo = [{ relation: this.entity[this.#o2mName], path: [this.entity] }];
238
- while (todo.length > 0) {
239
- const { relation, path } = todo.pop();
240
- if (visited.has(relation))
241
- throw new RecursiveCycleError(this, path);
242
- visited.add(relation);
243
- for (const child of getLoadedCollection(relation)) {
244
- children.push(child);
245
- todo.push({ relation: child[this.#o2mName], path: [...path, child] });
246
- }
247
- }
248
- return children;
249
- }
250
- /** Finds any children/downstream o2m collections or o2o references. */
251
- findUnloadedCollections() {
252
- const visited = new Set();
253
- const unloaded = [];
254
- const todo = [{ relation: this.entity[this.#o2mName], path: [this.entity] }];
255
- while (todo.length > 0) {
256
- const { relation, path } = todo.pop();
257
- if (visited.has(relation))
258
- throw new RecursiveCycleError(this, path);
259
- visited.add(relation);
260
- if ((0, index_1.isCollection)(relation) && !(0, index_1.isLoadedCollection)(relation)) {
261
- unloaded.push(relation);
262
- }
263
- else if ((0, index_1.isOneToOneReference)(relation) && !(0, index_1.isLoadedOneToOneReference)(relation)) {
264
- unloaded.push(relation);
265
- }
266
- else {
267
- for (const child of getLoadedCollection(relation)) {
268
- todo.push({ relation: child[this.#o2mName], path: [...path, child] });
269
- }
270
- }
271
- }
272
- return unloaded;
273
- }
274
- }
275
- exports.RecursiveChildrenCollectionImpl = RecursiveChildrenCollectionImpl;
276
- function getLoadedReference(relation) {
277
- return (0, index_1.isLoadedReference)(relation) ? relation.get : (0, index_1.fail)(`${relation} was not loaded`);
278
- }
279
- function getLoadedCollection(relation) {
280
- return (0, index_1.isLoadedCollection)(relation)
281
- ? relation.get
282
- : (0, index_1.isLoadedOneToOneReference)(relation)
283
- ? relation.get
284
- ? [relation.get]
285
- : []
286
- : (0, index_1.fail)(`${relation} was not loaded`);
287
- }
288
- class RecursiveCycleError extends Error {
289
- entities = [];
290
- constructor(relation, entities) {
291
- super(`Cycle detected in ${relation.entity.toString()}.${relation.fieldName}`);
292
- this.entities = entities;
293
- }
294
- }
295
- exports.RecursiveCycleError = RecursiveCycleError;
296
- //# sourceMappingURL=RecursiveCollection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RecursiveCollection.js","sourceRoot":"","sources":["../../src/relations/RecursiveCollection.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import { Entity } from "../Entity";
2
- import { IdOf, TaggedId } from "../EntityManager";
3
- import { Relation } from "./index";
4
- export declare const ReferenceN: unique symbol;
5
- /**
6
- * A many-to-one / foreign key from `T` to `U`, i.e. book to author.
7
- *
8
- * The `N` generic is for whether the field is optional (i.e. the foreign key column is
9
- * nullable). If it is optional, `N` will be `undefined`, which makes the return types
10
- * `U | undefined`. If it is not optional, `N` will be `never`, making the return types
11
- * `U | never` which becomes just `U`.
12
- */
13
- export interface Reference<T extends Entity, U extends Entity, N extends never | undefined> extends Relation<T, U> {
14
- [ReferenceN]: N;
15
- readonly isLoaded: boolean;
16
- load(opts?: {
17
- withDeleted?: boolean;
18
- forceReload?: true;
19
- }): Promise<U | N>;
20
- set(other: U | N): void;
21
- /** Returns the always-tagged id of the current value, or undefined if unset or new. */
22
- idTaggedMaybe: TaggedId | undefined;
23
- }
24
- /** Adds a known-safe `get` accessor. */
25
- export interface LoadedReference<T extends Entity, U extends Entity, N extends never | undefined> extends Reference<T, U, N> {
26
- id: IdOf<U> | N;
27
- get: U | N;
28
- getWithDeleted: U | N;
29
- isSet: boolean;
30
- }
31
- /** Type guard utility for determining if an entity field is a Reference. */
32
- export declare function isReference(maybeReference: any): maybeReference is Reference<any, any, any>;
33
- /** Type guard utility for determining if an entity field is a loaded Reference. */
34
- export declare function isLoadedReference(maybeReference: any): maybeReference is Reference<any, any, any> & LoadedReference<any, any, any>;
35
- //# sourceMappingURL=Reference.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../../src/relations/Reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAML,QAAQ,EACT,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,UAAU,eAAW,CAAC;AAEnC;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,KAAK,GAAG,SAAS,CAAE,SAAQ,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IAChH,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAGhB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE3B,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3E,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAExB,uFAAuF;IACvF,aAAa,EAAE,QAAQ,GAAG,SAAS,CAAC;CACrC;AAED,wCAAwC;AACxC,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,KAAK,GAAG,SAAS,CAC9F,SAAQ,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAQ1B,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEhB,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAEX,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC;IAItB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,cAAc,EAAE,GAAG,GAAG,cAAc,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAQ3F;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,GAAG,GAClB,cAAc,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAE7E"}
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReferenceN = void 0;
4
- exports.isReference = isReference;
5
- exports.isLoadedReference = isLoadedReference;
6
- const index_1 = require("./index");
7
- // Exported and used in sub-interfaces/types per https://stackoverflow.com/a/70437874/355031
8
- exports.ReferenceN = Symbol();
9
- /** Type guard utility for determining if an entity field is a Reference. */
10
- function isReference(maybeReference) {
11
- return (maybeReference instanceof index_1.OneToOneReferenceImpl ||
12
- maybeReference instanceof index_1.ManyToOneReferenceImpl ||
13
- maybeReference instanceof index_1.ReactiveReferenceImpl ||
14
- maybeReference instanceof index_1.CustomReference ||
15
- maybeReference instanceof index_1.PolymorphicReferenceImpl);
16
- }
17
- /** Type guard utility for determining if an entity field is a loaded Reference. */
18
- function isLoadedReference(maybeReference) {
19
- return isReference(maybeReference) && maybeReference.isLoaded;
20
- }
21
- //# sourceMappingURL=Reference.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Reference.js","sourceRoot":"","sources":["../../src/relations/Reference.ts"],"names":[],"mappings":";;;AA0DA,kCAQC;AAGD,8CAIC;AAvED,mCAOiB;AAEjB,4FAA4F;AAC/E,QAAA,UAAU,GAAG,MAAM,EAAE,CAAC;AA6CnC,4EAA4E;AAC5E,SAAgB,WAAW,CAAC,cAAmB;IAC7C,OAAO,CACL,cAAc,YAAY,6BAAqB;QAC/C,cAAc,YAAY,8BAAsB;QAChD,cAAc,YAAY,6BAAqB;QAC/C,cAAc,YAAY,uBAAe;QACzC,cAAc,YAAY,gCAAwB,CACnD,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,SAAgB,iBAAiB,CAC/B,cAAmB;IAEnB,OAAO,WAAW,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC;AAChE,CAAC"}
@@ -1,14 +0,0 @@
1
- import { Entity } from "../Entity";
2
- export declare const RelationT: unique symbol;
3
- export declare const RelationU: unique symbol;
4
- /** A relationship from `T` to `U`, could be any of many-to-one, one-to-many, or many-to-many. */
5
- export interface Relation<T extends Entity, U extends Entity> {
6
- [RelationT]: T;
7
- [RelationU]: U;
8
- isLoaded: boolean;
9
- entity: Entity;
10
- hasBeenSet: boolean;
11
- }
12
- /** Type guard utility for determining if an entity field is a Relation. */
13
- export declare function isRelation(maybeRelation: any): maybeRelation is Relation<any, any>;
14
- //# sourceMappingURL=Relation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Relation.d.ts","sourceRoot":"","sources":["../../src/relations/Relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAGnC,eAAO,MAAM,SAAS,eAAW,CAAC;AAClC,eAAO,MAAM,SAAS,eAAW,CAAC;AAElC,iGAAiG;AACjG,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM;IAO1D,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACf,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,aAAa,EAAE,GAAG,GAAG,aAAa,IAAI,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAElF"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RelationU = exports.RelationT = void 0;
4
- exports.isRelation = isRelation;
5
- const index_1 = require("./index");
6
- exports.RelationT = Symbol();
7
- exports.RelationU = Symbol();
8
- /** Type guard utility for determining if an entity field is a Relation. */
9
- function isRelation(maybeRelation) {
10
- return (0, index_1.isReference)(maybeRelation) || (0, index_1.isCollection)(maybeRelation);
11
- }
12
- //# sourceMappingURL=Relation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Relation.js","sourceRoot":"","sources":["../../src/relations/Relation.ts"],"names":[],"mappings":";;;AAsBA,gCAEC;AAvBD,mCAAoD;AAEvC,QAAA,SAAS,GAAG,MAAM,EAAE,CAAC;AACrB,QAAA,SAAS,GAAG,MAAM,EAAE,CAAC;AAiBlC,2EAA2E;AAC3E,SAAgB,UAAU,CAAC,aAAkB;IAC3C,OAAO,IAAA,mBAAW,EAAC,aAAa,CAAC,IAAI,IAAA,oBAAY,EAAC,aAAa,CAAC,CAAC;AACnE,CAAC"}
@@ -1,27 +0,0 @@
1
- import { Entity } from "../Entity";
2
- import { LoadHint, Loaded } from "../loadHints";
3
- declare const AsyncMethodM: unique symbol;
4
- export declare const AsyncMethodPopulateSecret: unique symbol;
5
- export interface AsyncMethod<T extends Entity, A extends unknown[], V> {
6
- [AsyncMethodM]: undefined;
7
- isLoaded: boolean;
8
- load(...args: A): Promise<V>;
9
- }
10
- export interface LoadedMethod<T extends Entity, A extends unknown[], V> {
11
- call(...args: A): V;
12
- }
13
- export declare function hasAsyncMethod<T extends Entity, const H extends LoadHint<T>, A extends unknown[], V>(loadHint: H, fn: (entity: Loaded<T, H>, ...args: A) => V): AsyncMethod<T, A, V>;
14
- export declare class AsyncMethodImpl<T extends Entity, H extends LoadHint<T>, A extends unknown[], V> implements AsyncMethod<T, A, V> {
15
- #private;
16
- private fn;
17
- private loaded;
18
- private loadPromise;
19
- constructor(entity: T, hint: H, fn: (entity: Loaded<T, H>, ...args: A) => V);
20
- /** Args might be either the user-provided args, or the populate `opts` if we're being preloaded. */
21
- load(...args: A): Promise<V>;
22
- call(...args: A): V;
23
- get isLoaded(): boolean;
24
- [AsyncMethodM]: undefined;
25
- }
26
- export {};
27
- //# sourceMappingURL=hasAsyncMethod.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasAsyncMethod.d.ts","sourceRoot":"","sources":["../../src/relations/hasAsyncMethod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAY,MAAM,cAAc,CAAC;AAG1D,QAAA,MAAM,YAAY,eAAW,CAAC;AAC9B,eAAO,MAAM,yBAAyB,eAAW,CAAC;AAElD,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC;IAEnE,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC;IACpE,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;CACrB;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EAClG,QAAQ,EAAE,CAAC,EACX,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAC1C,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAItB;AAED,qBAAa,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,CAC1F,YAAW,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;;IAU7B,OAAO,CAAC,EAAE;IARZ,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAA2B;gBAK5C,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,CAAC,EACC,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC;IAMrD,oGAAoG;IAC9F,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAUlC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC;IAOnB,IAAI,QAAQ,YAEX;IAED,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC;CAC3B"}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AsyncMethodImpl = exports.AsyncMethodPopulateSecret = void 0;
4
- exports.hasAsyncMethod = hasAsyncMethod;
5
- const loadHints_1 = require("../loadHints");
6
- const newEntity_1 = require("../newEntity");
7
- const AsyncMethodM = Symbol();
8
- exports.AsyncMethodPopulateSecret = Symbol();
9
- function hasAsyncMethod(loadHint, fn) {
10
- return (0, newEntity_1.lazyField)((entity) => {
11
- return new AsyncMethodImpl(entity, loadHint, fn);
12
- });
13
- }
14
- class AsyncMethodImpl {
15
- fn;
16
- loaded = false;
17
- loadPromise;
18
- #entity;
19
- #hint;
20
- constructor(entity, hint, fn) {
21
- this.fn = fn;
22
- this.#entity = entity;
23
- this.#hint = hint;
24
- }
25
- /** Args might be either the user-provided args, or the populate `opts` if we're being preloaded. */
26
- async load(...args) {
27
- // Are we being called by `em.populate`? If so, we don't have the real args, so avoid invoking fn
28
- const isPopulate = args && typeof args[0] === "object" && exports.AsyncMethodPopulateSecret in args[0];
29
- if (!this.loaded) {
30
- this.loadPromise ??= this.#entity.em.populate(this.#entity, this.#hint).then((loaded) => (this.loaded = true));
31
- await this.loadPromise;
32
- }
33
- return isPopulate ? undefined : this.call(...args);
34
- }
35
- call(...args) {
36
- if (!this.isLoaded) {
37
- throw new Error("hasAsyncMethod.call was called but not loaded");
38
- }
39
- return this.fn(this.#entity, ...args);
40
- }
41
- get isLoaded() {
42
- return this.loaded || (0, loadHints_1.isLoaded)(this.#entity, this.#hint);
43
- }
44
- [AsyncMethodM];
45
- }
46
- exports.AsyncMethodImpl = AsyncMethodImpl;
47
- //# sourceMappingURL=hasAsyncMethod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasAsyncMethod.js","sourceRoot":"","sources":["../../src/relations/hasAsyncMethod.ts"],"names":[],"mappings":";;;AAkBA,wCAOC;AAxBD,4CAA0D;AAC1D,4CAAyC;AAEzC,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC;AACjB,QAAA,yBAAyB,GAAG,MAAM,EAAE,CAAC;AAalD,SAAgB,cAAc,CAC5B,QAAW,EACX,EAA2C;IAE3C,OAAO,IAAA,qBAAS,EAAC,CAAC,MAAS,EAAE,EAAE;QAC7B,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAa,eAAe;IAWhB;IARF,MAAM,GAAG,KAAK,CAAC;IACf,WAAW,CAA2B;IAErC,OAAO,CAAI;IACX,KAAK,CAAI;IAClB,YACE,MAAS,EACT,IAAO,EACC,EAA2C;QAA3C,OAAE,GAAF,EAAE,CAAyC;QAEnD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,oGAAoG;IACpG,KAAK,CAAC,IAAI,CAAC,GAAG,IAAO;QACnB,iGAAiG;QACjG,MAAM,UAAU,GAAG,IAAI,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,iCAAyB,IAAK,IAAY,CAAC,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;YAChH,MAAM,IAAI,CAAC,WAAW,CAAC;QACzB,CAAC;QACD,OAAO,UAAU,CAAC,CAAC,CAAE,SAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,CAAC,GAAG,IAAO;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAuB,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,IAAI,IAAA,oBAAQ,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED,CAAC,YAAY,CAAC,CAAY;CAC3B;AAxCD,0CAwCC"}
@@ -1,49 +0,0 @@
1
- import { Entity } from "../Entity";
2
- import { LoadHint, Loaded } from "../loadHints";
3
- import { MaybeReactedPropertyEntity, Reacted, ReactiveHint } from "../reactiveHints";
4
- export declare const AsyncPropertyT: unique symbol;
5
- export interface AsyncProperty<T extends Entity, V> {
6
- [AsyncPropertyT]: T;
7
- isLoaded: boolean;
8
- load(): Promise<V>;
9
- }
10
- export interface LoadedProperty<T extends Entity, V> {
11
- get: V;
12
- }
13
- /**
14
- * Creates a calculated derived value from a load hint + lambda.
15
- *
16
- * The property can be accessed by default as a promise, with `someProperty.load()`.
17
- *
18
- * But if `someProperty` is used as a populate hint, then it can be accessed synchronously,
19
- * with `someProperty.get`.
20
- */
21
- export declare function hasAsyncProperty<T extends Entity, const H extends LoadHint<T>, V>(loadHint: H, fn: (entity: Loaded<T, H>) => V): AsyncProperty<T, V>;
22
- /**
23
- * Creates a calculated derived value from a load hint + lambda.
24
- *
25
- * The property can be accessed by default as a promise, with `someProperty.load()`.
26
- *
27
- * But if `someProperty` is used as a populate hint, then it can be accessed synchronously,
28
- * with `someProperty.get`.
29
- */
30
- export declare function hasReactiveAsyncProperty<T extends Entity, const H extends ReactiveHint<T>, V>(reactiveHint: H, fn: (entity: Reacted<T, H>) => MaybeReactedPropertyEntity<V>): AsyncProperty<T, V>;
31
- export declare class AsyncPropertyImpl<T extends Entity, H extends LoadHint<T>, V> implements AsyncProperty<T, V> {
32
- #private;
33
- private fn;
34
- private opts;
35
- constructor(entity: T, hint: H | ReactiveHint<T>, fn: (entity: Loaded<T, H>) => V, opts?: {
36
- isReactive?: boolean;
37
- });
38
- load(): Promise<V>;
39
- get loadHint(): H;
40
- get reactiveHint(): ReactiveHint<T> | undefined;
41
- get get(): V;
42
- get isLoaded(): boolean;
43
- [AsyncPropertyT]: T;
44
- }
45
- /** Type guard utility for determining if an entity field is an AsyncProperty. */
46
- export declare function isAsyncProperty(maybeAsyncProperty: any): maybeAsyncProperty is AsyncProperty<any, any>;
47
- /** Type guard utility for determining if an entity field is a loaded AsyncProperty. */
48
- export declare function isLoadedAsyncProperty(maybeAsyncProperty: any): maybeAsyncProperty is AsyncProperty<any, any> & LoadedProperty<any, any>;
49
- //# sourceMappingURL=hasAsyncProperty.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasAsyncProperty.d.ts","sourceRoot":"","sources":["../../src/relations/hasAsyncProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAY,MAAM,cAAc,CAAC;AAE1D,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,YAAY,EAAqB,MAAM,kBAAkB,CAAC;AAGxG,eAAO,MAAM,cAAc,eAAW,CAAC;AAEvC,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC;IAEhD,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;CACpB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC;IACjD,GAAG,EAAE,CAAC,CAAC;CACR;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAC/E,QAAQ,EAAE,CAAC,EACX,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAC9B,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAIrB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,EAC3F,YAAY,EAAE,CAAC,EACf,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,0BAA0B,CAAC,CAAC,CAAC,GAC3D,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAIrB;AAED,qBAAa,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;;IAWrG,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,IAAI;gBAHZ,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,EACjB,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAC/B,IAAI,GAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAO;IAQ7C,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC;IAWlB,IAAI,QAAQ,IAAI,CAAC,CAMhB;IAED,IAAI,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAE9C;IAED,IAAI,GAAG,IAAI,CAAC,CAEX;IAED,IAAI,QAAQ,YAMX;IAED,CAAC,cAAc,CAAC,EAAuB,CAAC,CAAC;CAC1C;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,kBAAkB,EAAE,GAAG,GAAG,kBAAkB,IAAI,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAEtG;AAED,uFAAuF;AACvF,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,GAAG,GACtB,kBAAkB,IAAI,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAE1E"}