joist-orm 1.294.0 → 2.0.1

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 (484) hide show
  1. package/build/codegen.d.ts +2 -0
  2. package/build/codegen.d.ts.map +1 -0
  3. package/build/codegen.js +29 -0
  4. package/build/codegen.js.map +1 -0
  5. package/build/drivers/PostgresDriver.d.ts +1 -4
  6. package/build/drivers/PostgresDriver.d.ts.map +1 -1
  7. package/build/drivers/PostgresDriver.js +49 -58
  8. package/build/drivers/PostgresDriver.js.map +1 -1
  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-export.d.ts +2 -0
  26. package/build/pg-export.d.ts.map +1 -0
  27. package/build/pg-export.js +7 -0
  28. package/build/pg-export.js.map +1 -0
  29. package/build/pg-migrate.d.ts +2 -0
  30. package/build/pg-migrate.d.ts.map +1 -0
  31. package/build/pg-migrate.js +30 -0
  32. package/build/pg-migrate.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 +94 -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/buildRawQuery.d.ts +0 -20
  231. package/build/drivers/buildRawQuery.d.ts.map +0 -1
  232. package/build/drivers/buildRawQuery.js +0 -148
  233. package/build/drivers/buildRawQuery.js.map +0 -1
  234. package/build/drivers/buildUtils.d.ts +0 -4
  235. package/build/drivers/buildUtils.d.ts.map +0 -1
  236. package/build/drivers/buildUtils.js +0 -79
  237. package/build/drivers/buildUtils.js.map +0 -1
  238. package/build/drivers/index.d.ts +0 -5
  239. package/build/drivers/index.d.ts.map +0 -1
  240. package/build/drivers/index.js.map +0 -1
  241. package/build/fields.d.ts +0 -24
  242. package/build/fields.d.ts.map +0 -1
  243. package/build/fields.js +0 -162
  244. package/build/fields.js.map +0 -1
  245. package/build/getProperties.d.ts +0 -28
  246. package/build/getProperties.d.ts.map +0 -1
  247. package/build/getProperties.js +0 -141
  248. package/build/getProperties.js.map +0 -1
  249. package/build/json.d.ts +0 -77
  250. package/build/json.d.ts.map +0 -1
  251. package/build/json.js +0 -116
  252. package/build/json.js.map +0 -1
  253. package/build/k.d.ts +0 -2
  254. package/build/k.d.ts.map +0 -1
  255. package/build/k.js +0 -9
  256. package/build/k.js.map +0 -1
  257. package/build/keys.d.ts +0 -49
  258. package/build/keys.d.ts.map +0 -1
  259. package/build/keys.js +0 -195
  260. package/build/keys.js.map +0 -1
  261. package/build/keywords.d.ts +0 -5
  262. package/build/keywords.d.ts.map +0 -1
  263. package/build/keywords.js +0 -124
  264. package/build/keywords.js.map +0 -1
  265. package/build/loadHints.d.ts +0 -112
  266. package/build/loadHints.d.ts.map +0 -1
  267. package/build/loadHints.js +0 -75
  268. package/build/loadHints.js.map +0 -1
  269. package/build/loadLens.d.ts +0 -66
  270. package/build/loadLens.d.ts.map +0 -1
  271. package/build/loadLens.js +0 -287
  272. package/build/loadLens.js.map +0 -1
  273. package/build/logging/FactoryLogger.d.ts +0 -24
  274. package/build/logging/FactoryLogger.d.ts.map +0 -1
  275. package/build/logging/FactoryLogger.js +0 -77
  276. package/build/logging/FactoryLogger.js.map +0 -1
  277. package/build/logging/FieldLogger.d.ts +0 -27
  278. package/build/logging/FieldLogger.d.ts.map +0 -1
  279. package/build/logging/FieldLogger.js +0 -69
  280. package/build/logging/FieldLogger.js.map +0 -1
  281. package/build/logging/ReactionLogger.d.ts +0 -23
  282. package/build/logging/ReactionLogger.d.ts.map +0 -1
  283. package/build/logging/ReactionLogger.js +0 -65
  284. package/build/logging/ReactionLogger.js.map +0 -1
  285. package/build/newEntity.d.ts +0 -45
  286. package/build/newEntity.d.ts.map +0 -1
  287. package/build/newEntity.js +0 -106
  288. package/build/newEntity.js.map +0 -1
  289. package/build/newTestInstance.d.ts +0 -193
  290. package/build/newTestInstance.d.ts.map +0 -1
  291. package/build/newTestInstance.js +0 -738
  292. package/build/newTestInstance.js.map +0 -1
  293. package/build/normalizeHints.d.ts +0 -16
  294. package/build/normalizeHints.d.ts.map +0 -1
  295. package/build/normalizeHints.js +0 -31
  296. package/build/normalizeHints.js.map +0 -1
  297. package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -9
  298. package/build/plugins/ImmutableEntitiesPlugin.d.ts.map +0 -1
  299. package/build/plugins/ImmutableEntitiesPlugin.js +0 -21
  300. package/build/plugins/ImmutableEntitiesPlugin.js.map +0 -1
  301. package/build/plugins/PreloadPlugin.d.ts +0 -69
  302. package/build/plugins/PreloadPlugin.d.ts.map +0 -1
  303. package/build/plugins/PreloadPlugin.js +0 -3
  304. package/build/plugins/PreloadPlugin.js.map +0 -1
  305. package/build/preloading/JsonAggregatePreloader.d.ts +0 -16
  306. package/build/preloading/JsonAggregatePreloader.d.ts.map +0 -1
  307. package/build/preloading/JsonAggregatePreloader.js +0 -238
  308. package/build/preloading/JsonAggregatePreloader.js.map +0 -1
  309. package/build/preloading/canPreload.d.ts +0 -3
  310. package/build/preloading/canPreload.d.ts.map +0 -1
  311. package/build/preloading/canPreload.js +0 -21
  312. package/build/preloading/canPreload.js.map +0 -1
  313. package/build/preloading/partitionHint.d.ts +0 -5
  314. package/build/preloading/partitionHint.d.ts.map +0 -1
  315. package/build/preloading/partitionHint.js +0 -56
  316. package/build/preloading/partitionHint.js.map +0 -1
  317. package/build/reactiveHints.d.ts +0 -129
  318. package/build/reactiveHints.d.ts.map +0 -1
  319. package/build/reactiveHints.js +0 -458
  320. package/build/reactiveHints.js.map +0 -1
  321. package/build/relations/AbstractPropertyImpl.d.ts +0 -8
  322. package/build/relations/AbstractPropertyImpl.d.ts.map +0 -1
  323. package/build/relations/AbstractPropertyImpl.js +0 -15
  324. package/build/relations/AbstractPropertyImpl.js.map +0 -1
  325. package/build/relations/AbstractRelationImpl.d.ts +0 -36
  326. package/build/relations/AbstractRelationImpl.d.ts.map +0 -1
  327. package/build/relations/AbstractRelationImpl.js +0 -19
  328. package/build/relations/AbstractRelationImpl.js.map +0 -1
  329. package/build/relations/Collection.d.ts +0 -28
  330. package/build/relations/Collection.d.ts.map +0 -1
  331. package/build/relations/Collection.js +0 -18
  332. package/build/relations/Collection.js.map +0 -1
  333. package/build/relations/CustomCollection.d.ts +0 -69
  334. package/build/relations/CustomCollection.d.ts.map +0 -1
  335. package/build/relations/CustomCollection.js +0 -166
  336. package/build/relations/CustomCollection.js.map +0 -1
  337. package/build/relations/CustomReference.d.ts +0 -71
  338. package/build/relations/CustomReference.d.ts.map +0 -1
  339. package/build/relations/CustomReference.js +0 -152
  340. package/build/relations/CustomReference.js.map +0 -1
  341. package/build/relations/LargeCollection.d.ts +0 -19
  342. package/build/relations/LargeCollection.d.ts.map +0 -1
  343. package/build/relations/LargeCollection.js +0 -3
  344. package/build/relations/LargeCollection.js.map +0 -1
  345. package/build/relations/ManyToManyCollection.d.ts +0 -44
  346. package/build/relations/ManyToManyCollection.d.ts.map +0 -1
  347. package/build/relations/ManyToManyCollection.js +0 -268
  348. package/build/relations/ManyToManyCollection.js.map +0 -1
  349. package/build/relations/ManyToManyLargeCollection.d.ts +0 -30
  350. package/build/relations/ManyToManyLargeCollection.d.ts.map +0 -1
  351. package/build/relations/ManyToManyLargeCollection.js +0 -119
  352. package/build/relations/ManyToManyLargeCollection.js.map +0 -1
  353. package/build/relations/ManyToOneReference.d.ts +0 -121
  354. package/build/relations/ManyToOneReference.d.ts.map +0 -1
  355. package/build/relations/ManyToOneReference.js +0 -389
  356. package/build/relations/ManyToOneReference.js.map +0 -1
  357. package/build/relations/OneToManyCollection.d.ts +0 -58
  358. package/build/relations/OneToManyCollection.d.ts.map +0 -1
  359. package/build/relations/OneToManyCollection.js +0 -347
  360. package/build/relations/OneToManyCollection.js.map +0 -1
  361. package/build/relations/OneToManyLargeCollection.d.ts +0 -26
  362. package/build/relations/OneToManyLargeCollection.d.ts.map +0 -1
  363. package/build/relations/OneToManyLargeCollection.js +0 -102
  364. package/build/relations/OneToManyLargeCollection.js.map +0 -1
  365. package/build/relations/OneToOneReference.d.ts +0 -93
  366. package/build/relations/OneToOneReference.d.ts.map +0 -1
  367. package/build/relations/OneToOneReference.js +0 -228
  368. package/build/relations/OneToOneReference.js.map +0 -1
  369. package/build/relations/PolymorphicReference.d.ts +0 -89
  370. package/build/relations/PolymorphicReference.d.ts.map +0 -1
  371. package/build/relations/PolymorphicReference.js +0 -244
  372. package/build/relations/PolymorphicReference.js.map +0 -1
  373. package/build/relations/ReactiveField.d.ts +0 -87
  374. package/build/relations/ReactiveField.d.ts.map +0 -1
  375. package/build/relations/ReactiveField.js +0 -149
  376. package/build/relations/ReactiveField.js.map +0 -1
  377. package/build/relations/ReactiveGetter.d.ts +0 -30
  378. package/build/relations/ReactiveGetter.d.ts.map +0 -1
  379. package/build/relations/ReactiveGetter.js +0 -38
  380. package/build/relations/ReactiveGetter.js.map +0 -1
  381. package/build/relations/ReactiveManyToMany.d.ts +0 -56
  382. package/build/relations/ReactiveManyToMany.d.ts.map +0 -1
  383. package/build/relations/ReactiveManyToMany.js +0 -243
  384. package/build/relations/ReactiveManyToMany.js.map +0 -1
  385. package/build/relations/ReactiveManyToManyOtherSide.d.ts +0 -47
  386. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +0 -1
  387. package/build/relations/ReactiveManyToManyOtherSide.js +0 -155
  388. package/build/relations/ReactiveManyToManyOtherSide.js.map +0 -1
  389. package/build/relations/ReactiveQueryField.d.ts +0 -41
  390. package/build/relations/ReactiveQueryField.d.ts.map +0 -1
  391. package/build/relations/ReactiveQueryField.js +0 -125
  392. package/build/relations/ReactiveQueryField.js.map +0 -1
  393. package/build/relations/ReactiveReference.d.ts +0 -119
  394. package/build/relations/ReactiveReference.d.ts.map +0 -1
  395. package/build/relations/ReactiveReference.js +0 -333
  396. package/build/relations/ReactiveReference.js.map +0 -1
  397. package/build/relations/ReadOnlyCollection.d.ts +0 -19
  398. package/build/relations/ReadOnlyCollection.d.ts.map +0 -1
  399. package/build/relations/ReadOnlyCollection.js +0 -15
  400. package/build/relations/ReadOnlyCollection.js.map +0 -1
  401. package/build/relations/RecursiveCollection.d.ts +0 -84
  402. package/build/relations/RecursiveCollection.d.ts.map +0 -1
  403. package/build/relations/RecursiveCollection.js +0 -296
  404. package/build/relations/RecursiveCollection.js.map +0 -1
  405. package/build/relations/Reference.d.ts +0 -35
  406. package/build/relations/Reference.d.ts.map +0 -1
  407. package/build/relations/Reference.js +0 -21
  408. package/build/relations/Reference.js.map +0 -1
  409. package/build/relations/Relation.d.ts +0 -14
  410. package/build/relations/Relation.d.ts.map +0 -1
  411. package/build/relations/Relation.js +0 -12
  412. package/build/relations/Relation.js.map +0 -1
  413. package/build/relations/hasAsyncMethod.d.ts +0 -27
  414. package/build/relations/hasAsyncMethod.d.ts.map +0 -1
  415. package/build/relations/hasAsyncMethod.js +0 -47
  416. package/build/relations/hasAsyncMethod.js.map +0 -1
  417. package/build/relations/hasAsyncProperty.d.ts +0 -49
  418. package/build/relations/hasAsyncProperty.d.ts.map +0 -1
  419. package/build/relations/hasAsyncProperty.js +0 -98
  420. package/build/relations/hasAsyncProperty.js.map +0 -1
  421. package/build/relations/hasManyDerived.d.ts +0 -22
  422. package/build/relations/hasManyDerived.d.ts.map +0 -1
  423. package/build/relations/hasManyDerived.js +0 -32
  424. package/build/relations/hasManyDerived.js.map +0 -1
  425. package/build/relations/hasManyThrough.d.ts +0 -10
  426. package/build/relations/hasManyThrough.d.ts.map +0 -1
  427. package/build/relations/hasManyThrough.js +0 -24
  428. package/build/relations/hasManyThrough.js.map +0 -1
  429. package/build/relations/hasOneDerived.d.ts +0 -12
  430. package/build/relations/hasOneDerived.d.ts.map +0 -1
  431. package/build/relations/hasOneDerived.js +0 -24
  432. package/build/relations/hasOneDerived.js.map +0 -1
  433. package/build/relations/hasOneThrough.d.ts +0 -10
  434. package/build/relations/hasOneThrough.d.ts.map +0 -1
  435. package/build/relations/hasOneThrough.js +0 -24
  436. package/build/relations/hasOneThrough.js.map +0 -1
  437. package/build/relations/index.d.ts +0 -28
  438. package/build/relations/index.d.ts.map +0 -1
  439. package/build/relations/index.js +0 -88
  440. package/build/relations/index.js.map +0 -1
  441. package/build/rules.d.ts +0 -123
  442. package/build/rules.d.ts.map +0 -1
  443. package/build/rules.js +0 -231
  444. package/build/rules.js.map +0 -1
  445. package/build/runtimeConfig.d.ts +0 -17
  446. package/build/runtimeConfig.d.ts.map +0 -1
  447. package/build/runtimeConfig.js +0 -18
  448. package/build/runtimeConfig.js.map +0 -1
  449. package/build/serde.d.ts +0 -277
  450. package/build/serde.d.ts.map +0 -1
  451. package/build/serde.js +0 -517
  452. package/build/serde.js.map +0 -1
  453. package/build/temporal.d.ts +0 -16
  454. package/build/temporal.d.ts.map +0 -1
  455. package/build/temporal.js +0 -48
  456. package/build/temporal.js.map +0 -1
  457. package/build/temporalMappers.d.ts +0 -25
  458. package/build/temporalMappers.d.ts.map +0 -1
  459. package/build/temporalMappers.js +0 -59
  460. package/build/temporalMappers.js.map +0 -1
  461. package/build/trusted.d.ts +0 -5
  462. package/build/trusted.d.ts.map +0 -1
  463. package/build/trusted.js +0 -15
  464. package/build/trusted.js.map +0 -1
  465. package/build/typeMap.d.ts +0 -68
  466. package/build/typeMap.d.ts.map +0 -1
  467. package/build/typeMap.js +0 -3
  468. package/build/typeMap.js.map +0 -1
  469. package/build/unnest.d.ts +0 -13
  470. package/build/unnest.d.ts.map +0 -1
  471. package/build/unnest.js +0 -85
  472. package/build/unnest.js.map +0 -1
  473. package/build/upsert.d.ts +0 -42
  474. package/build/upsert.d.ts.map +0 -1
  475. package/build/upsert.js +0 -265
  476. package/build/upsert.js.map +0 -1
  477. package/build/utils.d.ts +0 -58
  478. package/build/utils.d.ts.map +0 -1
  479. package/build/utils.js +0 -236
  480. package/build/utils.js.map +0 -1
  481. package/build/withLoaded.d.ts +0 -56
  482. package/build/withLoaded.d.ts.map +0 -1
  483. package/build/withLoaded.js +0 -76
  484. package/build/withLoaded.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"ManyToOneReference.d.ts","sourceRoot":"","sources":["../../src/relations/ManyToOneReference.ts"],"names":[],"mappings":"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"}
@@ -1,389 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ManyToOneReferenceImpl = void 0;
4
- exports.hasOne = hasOne;
5
- exports.isManyToOneReference = isManyToOneReference;
6
- exports.failNoId = failNoId;
7
- exports.failIfNewEntity = failIfNewEntity;
8
- const Entity_1 = require("../Entity");
9
- const EntityManager_1 = require("../EntityManager");
10
- const EntityMetadata_1 = require("../EntityMetadata");
11
- const fields_1 = require("../fields");
12
- const index_1 = require("../index");
13
- const newEntity_1 = require("../newEntity");
14
- const utils_1 = require("../utils");
15
- const AbstractRelationImpl_1 = require("./AbstractRelationImpl");
16
- const OneToManyCollection_1 = require("./OneToManyCollection");
17
- const Reference_1 = require("./Reference");
18
- const Relation_1 = require("./Relation");
19
- /** An alias for creating `ManyToOneReference`s. */
20
- function hasOne() {
21
- return (0, newEntity_1.lazyField)((entity, fieldName) => {
22
- const m2o = (0, EntityMetadata_1.getMetadata)(entity).allFields[fieldName];
23
- return new ManyToOneReferenceImpl(entity, m2o);
24
- });
25
- }
26
- /** Type guard utility for determining if an entity field is a ManyToOneReference. */
27
- function isManyToOneReference(maybeReference) {
28
- return maybeReference instanceof ManyToOneReferenceImpl;
29
- }
30
- /**
31
- * Manages a foreign key from one entity to another, i.e. `Book.author --> Author`.
32
- *
33
- * We keep the current `author` / `author_id` value in the `__orm.data` hash, where the
34
- * current value could be either the (string) author id from the database, or an entity
35
- * `Author` that the user has set.
36
- *
37
- * Note that if our `images.author_id` column is unique, this `ManyToOneReference` will essentially
38
- * be half of a one-to-one relationship, but we'll keep using this `ManyToOneReference` on the "many"
39
- * side, and the other side, i.e. `Author.image` will use a `OneToOneReference` to point back to us.
40
- */
41
- class ManyToOneReferenceImpl extends AbstractRelationImpl_1.AbstractRelationImpl {
42
- #field;
43
- // Either the loaded entity, or N/undefined if we're allowed to be null
44
- loaded;
45
- // We need a separate boolean to b/c loaded == undefined can still mean "_isLoaded" for nullable fks.
46
- _isLoaded = false;
47
- #hasBeenSet = false;
48
- constructor(entity, field) {
49
- super(entity);
50
- this.#field = field;
51
- if ((0, index_1.getInstanceData)(entity).isOrWasNew) {
52
- this._isLoaded = true;
53
- }
54
- }
55
- async load(opts = {}) {
56
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
57
- if (this._isLoaded && this.loaded && !opts.forceReload) {
58
- return this.loaded;
59
- }
60
- const current = this.current();
61
- // Resolve the id to an entity
62
- if (!(0, Entity_1.isEntity)(current) && current !== undefined) {
63
- const entity = (await this.entity.em.load(this.otherMeta.cstr, current));
64
- // In extremely rare cases, someone might have called `set` while this promise was in-flight,
65
- // so make sure our current value is still the same as the fetched entity.
66
- if ((0, EntityManager_1.sameEntity)(entity, this.current())) {
67
- this.loaded = entity;
68
- }
69
- }
70
- else {
71
- this.loaded = current;
72
- }
73
- this._isLoaded = true;
74
- return this.filterDeleted(this.loaded, opts);
75
- }
76
- set(other) {
77
- this.setImpl(other);
78
- }
79
- get isSet() {
80
- return this.current() !== undefined;
81
- }
82
- get isLoaded() {
83
- // Even if `.load()` has not been called, `.get` will detect
84
- return this._isLoaded || this.current() === undefined || !!this.maybeFindEntity();
85
- }
86
- get isPreloaded() {
87
- return !!this.maybeFindEntity();
88
- }
89
- preload() {
90
- this.loaded = this.maybeFindEntity();
91
- this._isLoaded = true;
92
- }
93
- unload() {
94
- this.loaded = undefined;
95
- this._isLoaded = false;
96
- }
97
- import(other, findEntity) {
98
- const loaded = other.loaded ?? other.maybeFindEntity();
99
- this.loaded = loaded ? findEntity(loaded) : undefined;
100
- this._isLoaded = true;
101
- }
102
- doGet(opts) {
103
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
104
- // This should only be callable in the type system if we've already resolved this to an instance,
105
- // but, just in case we somehow got here in an unloaded state, check to see if we're already in the UoW
106
- if (!this._isLoaded) {
107
- const current = this.current();
108
- if (current === undefined) {
109
- this.loaded = current;
110
- }
111
- else {
112
- const existing = this.maybeFindEntity();
113
- if (existing === undefined) {
114
- throw new Error(`${this.entity}.${this.fieldName} was not loaded`);
115
- }
116
- this.loaded = existing;
117
- }
118
- this._isLoaded = true;
119
- }
120
- return this.filterDeleted(this.loaded, opts);
121
- }
122
- get getWithDeleted() {
123
- return this.doGet({ withDeleted: true });
124
- }
125
- get get() {
126
- return this.doGet({ withDeleted: false });
127
- }
128
- /** Returns the id of the current value. */
129
- get id() {
130
- return this.idMaybe || failNoId(this.entity, this.fieldName, this.current());
131
- }
132
- /** Sets the m2o to `id`, and allows accepting `undefined` (`N`) if this is a nullable relation. */
133
- set id(id) {
134
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
135
- const newId = (0, index_1.toTaggedId)(this.otherMeta, id);
136
- const previousId = this.idTaggedMaybe;
137
- const previous = this.maybeFindEntity();
138
- const changed = (0, fields_1.setField)(this.entity, this.fieldName, id);
139
- if (!changed) {
140
- return;
141
- }
142
- this.loaded = newId ? this.entity.em.getEntity(newId) : undefined;
143
- this._isLoaded = !!this.loaded;
144
- this.maybeRemove(previousId, previous);
145
- this.maybeAdd();
146
- }
147
- get idIfSet() {
148
- return this.idMaybe || failIfNewEntity(this.entity, this.fieldName, this.current());
149
- }
150
- get idUntagged() {
151
- return this.idUntaggedMaybe || failNoId(this.entity, this.fieldName, this.current());
152
- }
153
- get idUntaggedIfSet() {
154
- return this.idUntaggedMaybe || failIfNewEntity(this.entity, this.fieldName, this.current());
155
- }
156
- get idMaybe() {
157
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
158
- return (0, index_1.toIdOf)(this.otherMeta, this.idTaggedMaybe);
159
- }
160
- /** Returns the tagged id of the current value, or undefined if unset or a new entity. */
161
- get idTaggedMaybe() {
162
- // Skip the deleted check so that `isPreloaded` doesn't blow up during em.refreshes/populates
163
- // ensureNotDeleted(this.entity, "pending");
164
- return (0, index_1.maybeResolveReferenceToId)(this.current());
165
- }
166
- get fieldName() {
167
- return this.#field.fieldName;
168
- }
169
- get otherFieldName() {
170
- return this.#field.otherFieldName;
171
- }
172
- get idUntaggedMaybe() {
173
- return (0, index_1.deTagId)(this.otherMeta, this.idMaybe);
174
- }
175
- // Internal method used by OneToManyCollection
176
- setImpl(_other) {
177
- (0, index_1.ensureNotDeleted)(this.entity, "pending");
178
- this.#hasBeenSet = true;
179
- // If the project is not using tagged ids, we still want it tagged internally
180
- const other = (0, index_1.ensureTagged)(this.otherMeta, _other);
181
- if ((0, EntityManager_1.sameEntity)(other, this.current({ withDeleted: true }))) {
182
- return;
183
- }
184
- const previousId = this.idTaggedMaybe;
185
- const previous = this.maybeFindEntity();
186
- // Prefer to keep the id in our data hash, but if this is a new entity w/o an id, use the entity itself
187
- (0, fields_1.setField)(this.entity, this.fieldName, (0, Entity_1.isEntity)(other) ? (other?.idTaggedMaybe ?? other) : other);
188
- if (typeof other === "string") {
189
- this.loaded = undefined;
190
- this._isLoaded = false;
191
- }
192
- else {
193
- this.loaded = other;
194
- this._isLoaded = true;
195
- }
196
- this.maybeRemove(previousId, previous);
197
- this.maybeAdd();
198
- }
199
- // private impl
200
- setFromOpts(other) {
201
- this.setImpl(other);
202
- }
203
- maybeCascadeDelete() {
204
- if (this.isCascadeDelete) {
205
- const current = this.current({ withDeleted: true });
206
- if (current !== undefined && typeof current !== "string") {
207
- this.entity.em.delete(current);
208
- }
209
- }
210
- }
211
- async cleanupOnEntityDeleted() {
212
- // if we are going to delete this relation as well, then we don't need to clean it up
213
- if (this.isCascadeDelete)
214
- return;
215
- const current = await this.load({ withDeleted: true });
216
- if (current !== undefined) {
217
- const o2m = this.getOtherRelation(current);
218
- if (o2m instanceof OneToManyCollection_1.OneToManyCollection) {
219
- o2m.remove(this.entity, { requireLoaded: false });
220
- }
221
- else if (o2m instanceof index_1.OneToManyLargeCollection) {
222
- o2m.remove(this.entity);
223
- }
224
- else if (o2m instanceof index_1.OneToOneReferenceImpl) {
225
- o2m.set(undefined);
226
- }
227
- else {
228
- throw new Error(`Unhandled ${o2m}`);
229
- }
230
- }
231
- (0, fields_1.setField)(this.entity, this.fieldName, undefined);
232
- this.loaded = undefined;
233
- this._isLoaded = true;
234
- }
235
- maybeRemove(otherId, other) {
236
- if (other) {
237
- const prevRelation = this.getOtherRelation(other);
238
- if (prevRelation instanceof OneToManyCollection_1.OneToManyCollection) {
239
- prevRelation.removeIfLoaded(this.entity);
240
- }
241
- else if (prevRelation instanceof index_1.OneToManyLargeCollection) {
242
- prevRelation.remove(this.entity);
243
- }
244
- else {
245
- prevRelation.set(undefined, { percolating: true });
246
- }
247
- }
248
- else if (otherId) {
249
- // Other is not loaded in memory, but cache it in case our other side is later loaded
250
- const { em } = this.entity;
251
- let map = (0, EntityManager_1.getEmInternalApi)(em).pendingChildren.get(otherId);
252
- if (!map) {
253
- map = new Map();
254
- (0, EntityManager_1.getEmInternalApi)(em).pendingChildren.set(otherId, map);
255
- }
256
- let pending = map.get(this.otherFieldName);
257
- if (!pending) {
258
- pending = { adds: [], removes: [] };
259
- map.set(this.otherFieldName, pending);
260
- }
261
- (0, utils_1.maybeAdd)(pending.removes, this.entity);
262
- (0, utils_1.maybeRemove)(pending.adds, this.entity);
263
- }
264
- }
265
- maybeAdd() {
266
- const id = this.current();
267
- const other = this.maybeFindEntity();
268
- if (other) {
269
- // Other is already loaded in memory, immediately hook it up
270
- const newRelation = this.getOtherRelation(other);
271
- if (newRelation instanceof OneToManyCollection_1.OneToManyCollection) {
272
- newRelation.add(this.entity);
273
- }
274
- else if (newRelation instanceof index_1.OneToManyLargeCollection) {
275
- newRelation.add(this.entity);
276
- }
277
- else if (newRelation) {
278
- newRelation.set(this.entity, { percolating: true });
279
- }
280
- else {
281
- // Something is wrong, we should always have a relation, but instead
282
- // of blowing up here, let this finish b/c it will probably turn into
283
- // a validation error.
284
- }
285
- }
286
- else if (typeof id === "string") {
287
- // Other is not loaded in memory, but cache it in case our other side is later loaded
288
- const { em } = this.entity;
289
- let map = (0, EntityManager_1.getEmInternalApi)(em).pendingChildren.get(id);
290
- if (!map) {
291
- map = new Map();
292
- (0, EntityManager_1.getEmInternalApi)(em).pendingChildren.set(id, map);
293
- }
294
- let pending = map.get(this.otherFieldName);
295
- if (!pending) {
296
- pending = { adds: [], removes: [] };
297
- map.set(this.otherFieldName, pending);
298
- }
299
- (0, utils_1.maybeAdd)(pending.adds, this.entity);
300
- (0, utils_1.maybeRemove)(pending.removes, this.entity);
301
- }
302
- }
303
- // We need to keep U in data[fieldName] to handle entities without an id assigned yet.
304
- current(opts) {
305
- const current = (0, fields_1.getField)(this.entity, this.fieldName);
306
- if (current !== undefined && (0, Entity_1.isEntity)(current)) {
307
- return this.filterDeleted(current, opts);
308
- }
309
- return current;
310
- }
311
- get otherMeta() {
312
- return this.#field.otherMetadata();
313
- }
314
- get hasBeenSet() {
315
- return this.#hasBeenSet;
316
- }
317
- toString() {
318
- return `ManyToOneReference(entity: ${this.entity}, fieldName: ${this.fieldName}, otherType: ${this.otherMeta.type}, otherFieldName: ${this.otherFieldName}, id: ${this.idMaybe})`;
319
- }
320
- /**
321
- * Removes pending-hard-delete (but not soft-deleted), unless explicitly asked for.
322
- *
323
- * Note that we leave soft-deleted entities b/c the call signature of a `book.author.get`
324
- * very likely does not expect a soft-deleted entity to result in `undefined`.
325
- *
326
- * (Contrasted with `author.books.get` which is more intuitive to have soft-deleted
327
- * entities filtered out, i.e. it doesn't fundamentally change the return type.)
328
- */
329
- filterDeleted(entity, opts) {
330
- if (entity && (!opts || !opts.withDeleted) && entity.isDeletedEntity) {
331
- return undefined;
332
- }
333
- return entity;
334
- }
335
- /** Returns the other relation that points back at us, i.e. we're `book.author_id` and this is `Author.books`. */
336
- getOtherRelation(other) {
337
- return other[this.otherFieldName];
338
- }
339
- get isCascadeDelete() {
340
- return (0, AbstractRelationImpl_1.isCascadeDelete)(this, this.fieldName);
341
- }
342
- /**
343
- * Looks for an entity in `EntityManager`, b/c we may have it in memory even if
344
- * our reference is not specifically loaded.
345
- */
346
- maybeFindEntity() {
347
- // Check this.loaded first b/c a new entity won't have an id yet
348
- const { idTaggedMaybe } = this;
349
- return this.loaded ?? (idTaggedMaybe !== undefined ? this.entity.em.getEntity(idTaggedMaybe) : undefined);
350
- }
351
- [Relation_1.RelationT] = null;
352
- [Relation_1.RelationU] = null;
353
- [Reference_1.ReferenceN] = null;
354
- }
355
- exports.ManyToOneReferenceImpl = ManyToOneReferenceImpl;
356
- /**
357
- * Fails when we can't return an `.id` for a reference, i.e. it's unset or a new entity.
358
- *
359
- * We strictly type `book.author.id` as `AuthorId`, even if `book.author` is nullable, to
360
- * avoid users calling `.id` and getting back `undefined`, but not because "there is no
361
- * author", but only because "the assigned author doesn't have an id assigned yet".
362
- *
363
- * To handle nullable references, set `.idIfSet`.
364
- *
365
- * Assumes being called like `return idMaybe ?? failNoId()`, i.e. if we're called we
366
- * know the id is not available.
367
- */
368
- function failNoId(entity, fieldName, current) {
369
- if (!current)
370
- (0, index_1.fail)(`Reference ${entity}.${fieldName} is unset`);
371
- // Throw NoIdError, which lets ReactionsManager will handle reactive fields gracefully
372
- if (current instanceof index_1.BaseEntity)
373
- throw new index_1.NoIdError(`Reference ${entity}.${fieldName} is assigned to a new entity`);
374
- (0, index_1.fail)(`Unreachable`);
375
- }
376
- /**
377
- * Fails when we can't return an `.idIfSet` for a reference, i.e. it's a new entity.
378
- *
379
- * Assumes being called like `return idMaybe ?? failIfNewEntity()`, i.e. if we're called we
380
- * know the id is not available.
381
- */
382
- function failIfNewEntity(entity, fieldName, current) {
383
- if (current instanceof index_1.BaseEntity) {
384
- throw new index_1.NoIdError(`Reference ${entity}.${fieldName} is assigned to a new entity`);
385
- }
386
- // Since this is a `.idIfSet`, having no `current` is fine, return undefined.
387
- return undefined;
388
- }
389
- //# sourceMappingURL=ManyToOneReference.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ManyToOneReference.js","sourceRoot":"","sources":["../../src/relations/ManyToOneReference.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- import { Collection, Entity, EntityMetadata, IdOf, OneToManyField } from "../index";
2
- import { IsLoadedCachable } from "../IsLoadedCache";
3
- import { AbstractRelationImpl } from "./AbstractRelationImpl";
4
- import { RelationT, RelationU } from "./Relation";
5
- /** An alias for creating `OneToManyCollection`s. */
6
- export declare function hasMany<T extends Entity, U extends Entity>(): Collection<T, U>;
7
- export declare class OneToManyCollection<T extends Entity, U extends Entity> extends AbstractRelationImpl<T, U[]> implements Collection<T, U>, IsLoadedCachable {
8
- #private;
9
- constructor(entity: T, field: OneToManyField);
10
- load(opts?: {
11
- withDeleted?: boolean;
12
- forceReload?: boolean;
13
- }): Promise<readonly U[]>;
14
- find(id: IdOf<U>): Promise<U | undefined>;
15
- includes(other: U): Promise<boolean>;
16
- get isLoaded(): boolean;
17
- resetIsLoaded(): void;
18
- get isPreloaded(): boolean;
19
- preload(): void;
20
- import(other: OneToManyCollection<T, U>, findEntity: (e: U) => U): void;
21
- get get(): U[];
22
- get getWithDeleted(): U[];
23
- private doGet;
24
- set(values: readonly U[]): void;
25
- add(other: U): void;
26
- remove(other: U, opts?: {
27
- requireLoaded: boolean;
28
- }): void;
29
- removeAll(): void;
30
- setFromOpts(others: U[]): void;
31
- removeIfLoaded(other: U): void;
32
- maybeCascadeDelete(): void;
33
- cleanupOnEntityDeleted(): Promise<void>;
34
- private maybeAppendAddedBeforeLoaded;
35
- get fieldName(): keyof T & string;
36
- get otherFieldName(): keyof U & string;
37
- current(opts?: {
38
- withDeleted?: boolean;
39
- }): U[];
40
- get meta(): EntityMetadata;
41
- get otherMeta(): EntityMetadata;
42
- get hasBeenSet(): boolean;
43
- toString(): string;
44
- /** Called after `em.flush` to reset our dirty tracking. */
45
- resetAddedRemoved(): void;
46
- /** Removes pending-hard-delete or soft-deleted entities, unless explicitly asked for. */
47
- private filterDeleted;
48
- /** Returns the other relation that points back at us, i.e. we're `Author.image` and this is `Image.author_id`. */
49
- private getOtherRelation;
50
- private get isCascadeDelete();
51
- private getPreloaded;
52
- private registerAsMutated;
53
- added(): U[];
54
- removed(): U[];
55
- [RelationT]: T;
56
- [RelationU]: U;
57
- }
58
- //# sourceMappingURL=OneToManyCollection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OneToManyCollection.d.ts","sourceRoot":"","sources":["../../src/relations/OneToManyCollection.ts"],"names":[],"mappings":"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"}