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 +0,0 @@
1
- {"version":3,"file":"EntityManager.js","sourceRoot":"","sources":["../src/EntityManager.ts"],"names":[],"mappings":"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"}
@@ -1,185 +0,0 @@
1
- import { Entity } from "./Entity";
2
- import { EntityManager, MaybeAbstractEntityConstructor, TimestampFields } from "./EntityManager";
3
- import { ConfigApi } from "./config";
4
- import { DeepNew } from "./loadHints";
5
- import { FieldSerde, PolymorphicKeySerde } from "./serde";
6
- export declare function getMetadata<T extends Entity>(entity: T): EntityMetadata<T>;
7
- export declare function getMetadata<T extends Entity>(type: MaybeAbstractEntityConstructor<T>): EntityMetadata<T>;
8
- export declare function getMetadata<T extends Entity>(meta: EntityMetadata): EntityMetadata;
9
- /**
10
- * Runtime metadata about an entity.
11
- *
12
- * The `joist-codegen` step will generate this by reading the database schema at build/codegen
13
- * time, along with any customizations in `joist-config.json`.
14
- *
15
- * Note: This has no generic, like `T extends Entity`, because `Entity<IdType>` i.e. with
16
- * an unknown string/id type, causes issues when we want to generically mix `EntityMetadata`
17
- * of different types, that even liberally using `EntityMetadata<any>` did not avoid.
18
- */
19
- export interface EntityMetadata<T extends Entity = any> {
20
- cstr: MaybeAbstractEntityConstructor<T>;
21
- type: string;
22
- /** Whether id field is a tagged string. */
23
- idType: "tagged-string" | "untagged-string" | "number";
24
- /** The database column type, i.e. used to do `::type` casts in Postgres. */
25
- idDbType: "bigint" | "int" | "uuid" | "text";
26
- tableName: string;
27
- /** If we're a subtype, our immediate base type's name, e.g. for `SmallPublisher` this would be `Publisher`. */
28
- baseType: string | undefined;
29
- inheritanceType?: "sti" | "cti" | undefined;
30
- /** Indicates the field to use to derive which subtype to instantiate; only set on the base meta. */
31
- stiDiscriminatorField?: string;
32
- /** The discriminator enum value for this subtype; only set on sub metas. */
33
- stiDiscriminatorValue?: number;
34
- /** Whether this type is abstract (cannot be instantiated directly). */
35
- ctiAbstract?: boolean;
36
- tagName: string;
37
- fields: Record<string, Field>;
38
- allFields: Record<string, Field & {
39
- aliasSuffix: string;
40
- }>;
41
- /** Usually polys are in `allFields`, but we pull the components out for comp-specific finds, like `parentBook`. */
42
- polyComponentFields?: Record<string, Field & {
43
- aliasSuffix: string;
44
- }>;
45
- config: ConfigApi<any, any>;
46
- orderBy: string | undefined;
47
- timestampFields: TimestampFields | undefined;
48
- factory: (em: EntityManager<any, any, any>, opts?: any) => DeepNew<T>;
49
- /** The list of base types for this subtype, e.g. for Dog it'd be [Animal, Mammal]. */
50
- baseTypes: EntityMetadata[];
51
- /** The list of subtypes for this base type, e.g. for Animal it'd be `[Mammal, Dog]`. */
52
- subTypes: EntityMetadata[];
53
- /** If the schema is lacking deferred FKs, this is our insertion order. */
54
- nonDeferredFkOrder?: number;
55
- }
56
- export type Field = PrimaryKeyField | PrimitiveField | EnumField | OneToManyField | LargeOneToManyField | ManyToOneField | ManyToManyField | OneToOneField | PolymorphicField;
57
- export type SerdeField = PrimaryKeyField | PrimitiveField | EnumField | ManyToOneField | PolymorphicField;
58
- export type PrimaryKeyField = {
59
- kind: "primaryKey";
60
- fieldName: string;
61
- fieldIdName: undefined;
62
- required: true;
63
- serde: FieldSerde;
64
- immutable: true;
65
- };
66
- export type PrimitiveField = {
67
- kind: "primitive";
68
- fieldName: string;
69
- fieldIdName: undefined;
70
- required: boolean;
71
- derived: "orm" | "sync" | "async" | false;
72
- protected: boolean;
73
- type: string | Function;
74
- serde: FieldSerde;
75
- immutable: boolean;
76
- citext?: boolean;
77
- default?: "schema" | "config";
78
- sanitize?: boolean;
79
- };
80
- export type EnumField = {
81
- kind: "enum";
82
- fieldName: string;
83
- fieldIdName: undefined;
84
- required: boolean;
85
- derived: "sync" | "async" | false;
86
- enumDetailType: {
87
- getValues(): ReadonlyArray<unknown>;
88
- findById(id: any): unknown;
89
- };
90
- serde: FieldSerde;
91
- immutable: boolean;
92
- default?: "schema" | "config";
93
- };
94
- export type OneToManyField = {
95
- kind: "o2m";
96
- fieldName: string;
97
- fieldIdName: string;
98
- required: boolean;
99
- otherMetadata: () => EntityMetadata;
100
- otherFieldName: string;
101
- /** Useful when our other side is a poly, to find which component points back to us. */
102
- otherColumnName: string;
103
- serde: undefined;
104
- immutable: false;
105
- orderBy?: {
106
- field: string;
107
- direction: "ASC" | "DESC";
108
- };
109
- };
110
- export type LargeOneToManyField = {
111
- kind: "lo2m";
112
- fieldName: string;
113
- fieldIdName: string;
114
- required: boolean;
115
- otherMetadata: () => EntityMetadata;
116
- otherFieldName: string;
117
- /** Useful when our other side is a poly, to find which component points back to us. */
118
- otherColumnName: string;
119
- serde: undefined;
120
- immutable: false;
121
- };
122
- export type ManyToOneField = {
123
- kind: "m2o";
124
- fieldName: string;
125
- fieldIdName: string;
126
- required: boolean;
127
- otherMetadata: () => EntityMetadata;
128
- otherFieldName: string;
129
- serde: FieldSerde;
130
- immutable: boolean;
131
- derived: "async" | false;
132
- default?: "schema" | "config";
133
- };
134
- export type ManyToManyField = {
135
- kind: "m2m";
136
- fieldName: string;
137
- fieldIdName: string;
138
- required: boolean;
139
- derived: "async" | "otherSide" | false;
140
- otherMetadata: () => EntityMetadata;
141
- otherFieldName: string;
142
- serde: undefined;
143
- immutable: false;
144
- joinTableName: string;
145
- columnNames: [string, string];
146
- };
147
- export type OneToOneField = {
148
- kind: "o2o";
149
- fieldName: string;
150
- fieldIdName: string;
151
- required: boolean;
152
- otherMetadata: () => EntityMetadata;
153
- otherFieldName: string;
154
- /** Useful when our other side is a poly, to find which component points back to us. */
155
- otherColumnName: string;
156
- serde: undefined;
157
- immutable: false;
158
- };
159
- export type PolymorphicField = {
160
- kind: "poly";
161
- fieldName: string;
162
- fieldIdName: string;
163
- required: boolean;
164
- components: PolymorphicFieldComponent[];
165
- serde: PolymorphicKeySerde;
166
- immutable: boolean;
167
- };
168
- export type PolymorphicFieldComponent = {
169
- otherMetadata: () => EntityMetadata;
170
- otherFieldName: string;
171
- columnName: string;
172
- };
173
- export declare function isOneToManyField(ormField: Field): ormField is OneToManyField;
174
- export declare function isManyToOneField(ormField: Field): ormField is ManyToOneField;
175
- export declare function isManyToManyField(ormField: Field): ormField is ManyToManyField;
176
- export declare function isOneToOneField(ormField: Field): ormField is OneToOneField;
177
- export declare function isPolymorphicField(ormField: Field): ormField is PolymorphicField;
178
- export declare function isReferenceField(ormField: Field): ormField is ManyToOneField | OneToOneField | PolymorphicField;
179
- export declare function isCollectionField(ormField: Field): ormField is OneToManyField | ManyToManyField;
180
- export declare function getBaseAndSelfMetas(meta: EntityMetadata): EntityMetadata[];
181
- export declare function getBaseAndSelfMetas(entity: Entity): EntityMetadata[];
182
- export declare function getBaseSelfAndSubMetas(meta: EntityMetadata): EntityMetadata[];
183
- export declare function getSubMetas(meta: EntityMetadata): EntityMetadata[];
184
- export declare function getBaseMeta(meta: EntityMetadata): EntityMetadata;
185
- //# sourceMappingURL=EntityMetadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityMetadata.d.ts","sourceRoot":"","sources":["../src/EntityMetadata.ts"],"names":[],"mappings":"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"}
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMetadata = getMetadata;
4
- exports.isOneToManyField = isOneToManyField;
5
- exports.isManyToOneField = isManyToOneField;
6
- exports.isManyToManyField = isManyToManyField;
7
- exports.isOneToOneField = isOneToOneField;
8
- exports.isPolymorphicField = isPolymorphicField;
9
- exports.isReferenceField = isReferenceField;
10
- exports.isCollectionField = isCollectionField;
11
- exports.getBaseAndSelfMetas = getBaseAndSelfMetas;
12
- exports.getBaseSelfAndSubMetas = getBaseSelfAndSubMetas;
13
- exports.getSubMetas = getSubMetas;
14
- exports.getBaseMeta = getBaseMeta;
15
- const BaseEntity_1 = require("./BaseEntity");
16
- const Entity_1 = require("./Entity");
17
- function getMetadata(param) {
18
- if (!param)
19
- throw new Error(`Cannot getMetadata of ${param}`);
20
- return (typeof param === "function" ? param.metadata : "cstr" in param ? param : (0, BaseEntity_1.getInstanceData)(param).metadata);
21
- }
22
- function isOneToManyField(ormField) {
23
- return ormField.kind === "o2m";
24
- }
25
- function isManyToOneField(ormField) {
26
- return ormField.kind === "m2o";
27
- }
28
- function isManyToManyField(ormField) {
29
- return ormField.kind === "m2m";
30
- }
31
- function isOneToOneField(ormField) {
32
- return ormField.kind === "o2o";
33
- }
34
- function isPolymorphicField(ormField) {
35
- return ormField.kind === "poly";
36
- }
37
- function isReferenceField(ormField) {
38
- return ormField.kind === "m2o" || ormField.kind === "o2o" || ormField.kind === "poly";
39
- }
40
- function isCollectionField(ormField) {
41
- return ormField.kind === "o2m" || ormField.kind === "m2m";
42
- }
43
- function getBaseAndSelfMetas(param) {
44
- return (0, Entity_1.isEntity)(param) ? getBaseSelfAndSubMetas(getMetadata(param)) : [...param.baseTypes, param];
45
- }
46
- function getBaseSelfAndSubMetas(meta) {
47
- return [...meta.baseTypes, meta, ...meta.subTypes];
48
- }
49
- function getSubMetas(meta) {
50
- // We should do recursion at some point
51
- return meta.subTypes;
52
- }
53
- function getBaseMeta(meta) {
54
- if (!meta.baseType) {
55
- return meta;
56
- }
57
- else {
58
- return meta.baseTypes[0];
59
- }
60
- }
61
- //# sourceMappingURL=EntityMetadata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityMetadata.js","sourceRoot":"","sources":["../src/EntityMetadata.ts"],"names":[],"mappings":";;AAUA,kCAOC;AAqLD,4CAEC;AAED,4CAEC;AAED,8CAEC;AAED,0CAEC;AAED,gDAEC;AAED,4CAEC;AAED,8CAEC;AAID,kDAEC;AAED,wDAEC;AAED,kCAGC;AAED,kCAMC;AAvPD,6CAA+C;AAC/C,qCAA4C;AAS5C,SAAgB,WAAW,CACzB,KAA6D;IAE7D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;IAC9D,OAAO,CACL,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAE,KAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,4BAAe,EAAC,KAAK,CAAC,CAAC,QAAQ,CAChG,CAAC;AACtB,CAAC;AAqLD,SAAgB,gBAAgB,CAAC,QAAe;IAC9C,OAAO,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC;AACjC,CAAC;AAED,SAAgB,gBAAgB,CAAC,QAAe;IAC9C,OAAO,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC;AACjC,CAAC;AAED,SAAgB,iBAAiB,CAAC,QAAe;IAC/C,OAAO,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC;AACjC,CAAC;AAED,SAAgB,eAAe,CAAC,QAAe;IAC7C,OAAO,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC;AACjC,CAAC;AAED,SAAgB,kBAAkB,CAAC,QAAe;IAChD,OAAO,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;AAClC,CAAC;AAED,SAAgB,gBAAgB,CAAC,QAAe;IAC9C,OAAO,QAAQ,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;AACxF,CAAC;AAED,SAAgB,iBAAiB,CAAC,QAAe;IAC/C,OAAO,QAAQ,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC;AAC5D,CAAC;AAID,SAAgB,mBAAmB,CAAC,KAA8B;IAChE,OAAO,IAAA,iBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACpG,CAAC;AAED,SAAgB,sBAAsB,CAAC,IAAoB;IACzD,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;AACrD,CAAC;AAED,SAAgB,WAAW,CAAC,IAAoB;IAC9C,uCAAuC;IACvC,OAAO,IAAI,CAAC,QAAQ,CAAC;AACvB,CAAC;AAED,SAAgB,WAAW,CAAC,IAAoB;IAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC"}
@@ -1,15 +0,0 @@
1
- export interface EnumMetadata<C, D, I extends number | string = number | string> {
2
- /** Returns the enum type's name, i.e. `AuthorStatus`. */
3
- name: string;
4
- /** Gets the `code` details, i.e. `Statuses.getByCode(Status.DRAFT)`. */
5
- getByCode(code: C): D;
6
- /** Finds a code details for `code`, i.e. `Statuses.findByCode("DRAFT")`, returns `undefined` is not found. */
7
- findByCode(code: string): D | undefined;
8
- /** Finds a code details for `id`, i.e. `Statuss.findById(2)`, returns `undefined` is not found. */
9
- findById(id: I): D | undefined;
10
- /** Returns all the codes, i.e. `[Status.DRAFT, Status.PUBLISHED]`. */
11
- getValues(): ReadonlyArray<C>;
12
- /** Returns all the details. */
13
- getDetails(): ReadonlyArray<D>;
14
- }
15
- //# sourceMappingURL=EnumMetadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnumMetadata.d.ts","sourceRoot":"","sources":["../src/EnumMetadata.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;IAC7E,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IAEb,wEAAwE;IACxE,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IAEtB,8GAA8G;IAC9G,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;IAExC,mGAAmG;IACnG,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAE/B,sEAAsE;IACtE,SAAS,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;IAE9B,+BAA+B;IAC/B,UAAU,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;CAChC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=EnumMetadata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnumMetadata.js","sourceRoot":"","sources":["../src/EnumMetadata.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- /**
2
- * Prevents entities being mutated mid-flush.
3
- *
4
- * The `flush` process does a dirty check + SQL flush and generally doesn't want
5
- * entities to re-dirtied after it's done the initial dirty check. So we'd like
6
- * to prevent all setter calls while `flush` is running.
7
- *
8
- * That said, lifecycle code like hooks actually can make setter calls b/c `flush`
9
- * invokes them at a specific point in its process.
10
- *
11
- * We solve this by using node's `AsyncLocalStorage` to mark certain callbacks (promise
12
- * handlers) as blessed / invoked-from-`flush`-itself, and they are allowed to call setters,
13
- * but any external callers (i.e. application code) will be rejected.
14
- */
15
- export declare class FlushLock {
16
- #private;
17
- /** This will begin any non-hook restrictions on writing to entities. */
18
- startLock(): void;
19
- releaseLock(): void;
20
- /** Any writes that happen from `fn`, despite flush being locked, will be allowed. */
21
- allowWrites(fn: () => Promise<void>): Promise<void>;
22
- /** Blows up if writes are locked, i.e. we're flushing and the caller is not within an `allowWrites` block. */
23
- checkWritesAllowed(): void;
24
- get isFlushing(): boolean;
25
- }
26
- //# sourceMappingURL=FlushLock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FlushLock.d.ts","sourceRoot":"","sources":["../src/FlushLock.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;GAaG;AACH,qBAAa,SAAS;;IAIpB,wEAAwE;IACxE,SAAS,IAAI,IAAI;IAOjB,WAAW,IAAI,IAAI;IAInB,qFAAqF;IACrF,WAAW,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD,8GAA8G;IAC9G,kBAAkB,IAAI,IAAI;IAW1B,IAAI,UAAU,IAAI,OAAO,CAExB;CACF"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FlushLock = void 0;
4
- const async_hooks_1 = require("async_hooks");
5
- /** A marker to prevent setter calls during `flush` calls. */
6
- const currentFlushSecret = new async_hooks_1.AsyncLocalStorage();
7
- /**
8
- * Prevents entities being mutated mid-flush.
9
- *
10
- * The `flush` process does a dirty check + SQL flush and generally doesn't want
11
- * entities to re-dirtied after it's done the initial dirty check. So we'd like
12
- * to prevent all setter calls while `flush` is running.
13
- *
14
- * That said, lifecycle code like hooks actually can make setter calls b/c `flush`
15
- * invokes them at a specific point in its process.
16
- *
17
- * We solve this by using node's `AsyncLocalStorage` to mark certain callbacks (promise
18
- * handlers) as blessed / invoked-from-`flush`-itself, and they are allowed to call setters,
19
- * but any external callers (i.e. application code) will be rejected.
20
- */
21
- class FlushLock {
22
- #flushSecret = 0;
23
- #isFlushing = false;
24
- /** This will begin any non-hook restrictions on writing to entities. */
25
- startLock() {
26
- if (this.#isFlushing) {
27
- throw new Error("Cannot flush while another flush is already in progress");
28
- }
29
- this.#isFlushing = true;
30
- }
31
- releaseLock() {
32
- this.#isFlushing = false;
33
- }
34
- /** Any writes that happen from `fn`, despite flush being locked, will be allowed. */
35
- allowWrites(fn) {
36
- return currentFlushSecret.run({ flushSecret: this.#flushSecret }, () => fn().then(() => {
37
- this.#flushSecret += 1;
38
- }));
39
- }
40
- /** Blows up if writes are locked, i.e. we're flushing and the caller is not within an `allowWrites` block. */
41
- checkWritesAllowed() {
42
- if (this.#isFlushing) {
43
- const { flushSecret } = currentFlushSecret.getStore() || {};
44
- if (flushSecret === undefined) {
45
- throw new Error(`Cannot mutate an entity during an em.flush outside of a entity hook or from afterCommit`);
46
- }
47
- else if (flushSecret !== this.#flushSecret) {
48
- throw new Error(`Attempting to reuse a hook context outside its flush loop`);
49
- }
50
- }
51
- }
52
- get isFlushing() {
53
- return this.#isFlushing;
54
- }
55
- }
56
- exports.FlushLock = FlushLock;
57
- //# sourceMappingURL=FlushLock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FlushLock.js","sourceRoot":"","sources":["../src/FlushLock.ts"],"names":[],"mappings":";;;AAAA,6CAAgD;AAEhD,6DAA6D;AAC7D,MAAM,kBAAkB,GAAG,IAAI,+BAAiB,EAA2B,CAAC;AAE5E;;;;;;;;;;;;;GAaG;AACH,MAAa,SAAS;IACpB,YAAY,GAAW,CAAC,CAAC;IACzB,WAAW,GAAY,KAAK,CAAC;IAE7B,wEAAwE;IACxE,SAAS;QACP,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,WAAW;QACT,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,qFAAqF;IACrF,WAAW,CAAC,EAAuB;QACjC,OAAO,kBAAkB,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,CACrE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,8GAA8G;IAC9G,kBAAkB;QAChB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,EAAE,WAAW,EAAE,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC5D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,yFAAyF,CAAC,CAAC;YAC7G,CAAC;iBAAM,IAAI,WAAW,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;CACF;AAxCD,8BAwCC"}
@@ -1,42 +0,0 @@
1
- import { Entity } from "./Entity";
2
- import { TaggedId } from "./EntityManager";
3
- import { LoadHint } from "./loadHints";
4
- export type EntityOrId = Entity | TaggedId;
5
- export type HintNode<E extends EntityOrId> = {
6
- /** These entities are the root entities of our preload, i.e. we use them to trim the tree to prevent over-fetching. */
7
- entities: Set<E>;
8
- /** A runtime indication of the type of `E`. */
9
- entitiesKind: "instances" | "ids" | "none";
10
- /** The hints to preload at this node, i.e. if `E` is `Author`, the `books: "reviews` or just `comments: {}`. */
11
- hints: {
12
- [key: string]: HintNode<E>;
13
- };
14
- };
15
- /**
16
- * Given a number of potentially overlapping load hints, i.e. `{ authors: "books" }` and
17
- * `{ authors: "reviews" }`, combines them into a single `HintNode` tree, with bookkeeping
18
- * of which entities requested each specific node of the tree.
19
- *
20
- * I.e. if we're populating three publishers, two with `{ authors: "books" }` and one with
21
- * `{ authors: "reviews" }`, we'll end up with a tree like:
22
- *
23
- * ```
24
- * {
25
- * authors: {
26
- * entities: [p1, p2, p3],
27
- * hints: {
28
- * books: { entities: [p1, p2], hints: {} },
29
- * reviews: { entities: [p3], hints: {} },
30
- * }
31
- * }
32
- * }
33
- * ```
34
- *
35
- * Which will let us preload `authors` for all three publishers, but `books` only for the
36
- * first two, and `reviews` only for the third, i.e. we can prevent over-fetching.
37
- */
38
- export declare function buildHintTree<E extends EntityOrId>(hints: readonly {
39
- entity: E;
40
- hint: LoadHint<any> | undefined;
41
- }[] | LoadHint<any>): HintNode<E>;
42
- //# sourceMappingURL=HintTree.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HintTree.d.ts","sourceRoot":"","sources":["../src/HintTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAOvC,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE3C,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,UAAU,IAAI;IAC3C,uHAAuH;IACvH,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,+CAA+C;IAC/C,YAAY,EAAE,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3C,gHAAgH;IAChH,KAAK,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,UAAU,EAChD,KAAK,EAAE,SAAS;IAAE,MAAM,EAAE,CAAC,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;CAAE,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAC/E,QAAQ,CAAC,CAAC,CAAC,CAqBb"}