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
package/build/rules.js DELETED
@@ -1,231 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ValidationErrors = exports.ValidationCode = void 0;
4
- exports.newRequiredRule = newRequiredRule;
5
- exports.cannotBeUpdated = cannotBeUpdated;
6
- exports.cannotBeChanged = cannotBeChanged;
7
- exports.isCannotBeUpdatedRule = isCannotBeUpdatedRule;
8
- exports.mustBeSubType = mustBeSubType;
9
- exports.minValueRule = minValueRule;
10
- exports.maxValueRule = maxValueRule;
11
- exports.rangeValueRule = rangeValueRule;
12
- const EntityManager_1 = require("./EntityManager");
13
- const fields_1 = require("./fields");
14
- const relations_1 = require("./relations");
15
- const utils_1 = require("./utils");
16
- var ValidationCode;
17
- (function (ValidationCode) {
18
- ValidationCode["required"] = "required";
19
- ValidationCode["cannotBeUpdated"] = "not-updatable";
20
- ValidationCode["cannotBeChanged"] = "not-changeable";
21
- ValidationCode["numeric"] = "not-numeric";
22
- ValidationCode["minValue"] = "under-min";
23
- ValidationCode["maxValue"] = "over-max";
24
- })(ValidationCode || (exports.ValidationCode = ValidationCode = {}));
25
- function errorMessage(errors) {
26
- if (errors.length === 1) {
27
- return `Validation error: ${errors[0].entity.toString()} ${errors[0].message}`;
28
- }
29
- else {
30
- const message = [...(0, utils_1.groupBy)(errors, (e) => e.entity.toString()).entries()]
31
- .map(([entityToString, errors]) => `${entityToString} ${errors.map((e) => e.message).join(", ")}`)
32
- .join(", ");
33
- return `Validation errors (${errors.length}): ${message}`;
34
- }
35
- }
36
- class ValidationErrors extends Error {
37
- errors;
38
- toJSON;
39
- constructor(messageOrErrors) {
40
- super(typeof messageOrErrors === "string" ? messageOrErrors : errorMessage(messageOrErrors));
41
- this.errors = typeof messageOrErrors === "string" ? [{ message: messageOrErrors }] : messageOrErrors;
42
- // Jest clones without prototype, so explictly setting this as a property rather than a class method
43
- // https://github.com/jestjs/jest/issues/11958
44
- this.toJSON = () => `ValidationErrors: ${this.message}`;
45
- }
46
- }
47
- exports.ValidationErrors = ValidationErrors;
48
- function ruleWithOpts(opts, fn) {
49
- return (entity) => {
50
- // Since all of our rules are sync, we run the rule first, then check if we should have run it second since this
51
- // may be an async operation. This way we can avoid running promises if we don't have to.
52
- const result = fn(entity);
53
- if (result === undefined)
54
- return;
55
- const { unless, if: _if } = opts ?? {};
56
- if (unless === undefined && _if === undefined)
57
- return result;
58
- const shouldRun = [unless ?? (() => false), _if ?? (() => true)].map((fn) => fn(entity));
59
- return (0, utils_1.maybePromiseThen)(shouldRun.some((r) => r instanceof Promise) ? Promise.all(shouldRun) : shouldRun, ([unless, _if]) => (!unless && _if ? result : undefined));
60
- };
61
- }
62
- /**
63
- * Creates a validation rule for required fields.
64
- *
65
- * This is added automatically by codegen to entities based on FK not-nulls.
66
- */
67
- function newRequiredRule(key, opts = {}) {
68
- return ruleWithOpts(opts, (entity) => {
69
- // Use getField so that we peer through relations
70
- if ((0, fields_1.getField)(entity, key) === undefined) {
71
- // Sanity check for ReactiveQueryFields--this should be cheap to just always do; alternatively we could
72
- // have a RQF-specific `rqfRequiredRule` so that other `newRequiredRule` users don't pay the cost of these
73
- // two `if` checks`.
74
- if (entity.isNewEntity && (0, relations_1.isReactiveQueryField)(entity[key])) {
75
- throw new Error(`ReactiveQueryField ${entity.constructor.name}.${key} must have a default value, either in the database or with config.setDefault (see the 4th step in https://joist-orm.io/modeling/reactive-fields/#reactive-query-fields.`);
76
- }
77
- return { field: key, code: ValidationCode.required, message: `${key} is required` };
78
- }
79
- });
80
- }
81
- function cannotBeUpdated(field, optsOrUnless) {
82
- const opts = typeof optsOrUnless === "function" ? { unless: optsOrUnless } : (optsOrUnless ?? {});
83
- const fn = ruleWithOpts(opts, (entity) => {
84
- // For now putting the `EntityChanges` cast here to avoid breaking cannotBeUpdated rules
85
- // on base types, see Publisher.ts's `cannotBeUpdated("type")` repro.
86
- if (entity.changes[field].hasUpdated) {
87
- const value = entity[field];
88
- // If we're being changed b/c of an em.merge, that is okay
89
- if ((0, relations_1.isLoadedReference)(value) && (0, EntityManager_1.getEmInternalApi)(entity.em).isMerging(value.get))
90
- return;
91
- return { field, code: ValidationCode.cannotBeUpdated, message: `${field} cannot be updated` };
92
- }
93
- return;
94
- });
95
- return Object.assign(fn, { field, immutable: opts.unless === undefined && opts.if === undefined });
96
- }
97
- /**
98
- * Creates a validation rule that a field cannot be changed once set.
99
- *
100
- * If the optional `unless` function returns true, then the update is allowed.
101
- */
102
- function cannotBeChanged(field, opts) {
103
- return ruleWithOpts(opts, (entity) => {
104
- const changes = entity.changes[field];
105
- if (changes.kind === "m2m" || changes.kind === "o2m") {
106
- throw new Error("cannotBeChanged is only supported on primitive & m2o fields");
107
- }
108
- else if (changes.hasUpdated) {
109
- const originalValue = changes.originalValue;
110
- if (originalValue === undefined)
111
- return;
112
- const value = (0, fields_1.getField)(entity, field);
113
- if ((0, EntityManager_1.getEmInternalApi)(entity.em).isMerging(value))
114
- return;
115
- return { field, code: ValidationCode.cannotBeChanged, message: `${field} cannot be changed` };
116
- }
117
- return;
118
- });
119
- }
120
- function isCannotBeUpdatedRule(rule) {
121
- return "field" in rule && "immutable" in rule;
122
- }
123
- /** For STI, enforces subtype-specific relations/FKs at runtime. */
124
- function mustBeSubType(relationName, opts = {}) {
125
- return ruleWithOpts(opts, (entity) => {
126
- const m2o = entity[relationName];
127
- const other = m2o.get;
128
- const otherCstr = m2o.otherMeta.cstr;
129
- if (other && !(other instanceof otherCstr)) {
130
- return `${relationName} must be a ${otherCstr.name} not ${other}`;
131
- }
132
- });
133
- }
134
- /**
135
- * Creates a validation rule that a field value cannot be smaller than a
136
- * certain value.
137
- *
138
- * @param field The field to validate
139
- * @param minValue The inclusive minimum value. e.g 0 range is [0, Infinity]
140
- * @param opts Optional validation rule options that control when the rule should run:
141
- * - unless: Function that returns true to skip validation
142
- * - if: Function that returns true to run validation
143
- *
144
- * @example
145
- * // Age cannot be smaller than 0
146
- * config.addRule(minValueRule("age", 0));
147
- */
148
- function minValueRule(field, minValue, opts = {}) {
149
- return ruleWithOpts(opts, (entity) => {
150
- const value = entity[field];
151
- // Ignore undefined and null values. These should be handled by required rules
152
- if (value === undefined || value === null)
153
- return;
154
- // Show an error when the value type is not a number
155
- if (typeof value !== "number") {
156
- return { field, code: ValidationCode.numeric, message: `${field} must be a number` };
157
- }
158
- // Show an error when the value is smaller than the minimum value
159
- if (value < minValue) {
160
- return {
161
- field,
162
- code: ValidationCode.minValue,
163
- message: `${field} must be greater than or equal to ${minValue}`,
164
- };
165
- }
166
- return;
167
- });
168
- }
169
- /**
170
- * Creates a validation rule that a field value cannot be greater than a
171
- * certain value.
172
- *
173
- * @param field The field to validate
174
- * @param maxValue The include maximum value. e.g 10 range is [-Infinity, 10]
175
- * @param opts Optional validation rule options that control when the rule should run:
176
- * - unless: Function that returns true to skip validation
177
- * - if: Function that returns true to run validation
178
- *
179
- * @example
180
- * // Age cannot be greater than 150
181
- * config.addRule(maxValueRule("age", 150));
182
- */
183
- function maxValueRule(field, maxValue, opts = {}) {
184
- return ruleWithOpts(opts, (entity) => {
185
- const value = entity[field];
186
- // Ignore undefined and null values. These should be handled by required rules
187
- if (value === undefined || value === null)
188
- return;
189
- // Show an error when the value type is not a number
190
- if (typeof value !== "number") {
191
- return { field, code: ValidationCode.numeric, message: `${field} must be a number` };
192
- }
193
- // Show an error when the value is smaller than the minimum value
194
- if (value > maxValue) {
195
- return {
196
- field,
197
- code: ValidationCode.maxValue,
198
- message: `${field} must be smaller than or equal to ${maxValue}`,
199
- };
200
- }
201
- return;
202
- });
203
- }
204
- /**
205
- * Creates a validation rule that a field value must be within a range of
206
- * certain values
207
- *
208
- * @param field The field to validate
209
- * @param minValue The inclusive minimum value. e.g 0 [0, Infinity]
210
- * @param maxValue The include maximum value. e.g 10 [-Infinity, 10]
211
- * @param opts Optional validation rule options that control when the rule should run:
212
- * - unless: Function that returns true to skip validation
213
- * - if: Function that returns true to run validation * @example
214
- *
215
- * // Age must be between 0 and 150
216
- * config.addRule(rangeValueRule("age", 0, 150));
217
- */
218
- function rangeValueRule(field, minValue, maxValue, opts = {}) {
219
- return ruleWithOpts(opts, (entity) => {
220
- // Check min and max value rules. Because these are called without opts, it should be safe to treat them as sync.
221
- const minValueResult = minValueRule(field, minValue)(entity);
222
- const maxValueResult = maxValueRule(field, maxValue)(entity);
223
- // Return any errors or nothing
224
- if (minValueResult)
225
- return minValueResult;
226
- if (maxValueResult)
227
- return maxValueResult;
228
- return;
229
- });
230
- }
231
- //# sourceMappingURL=rules.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- export declare function getRuntimeConfig(): RuntimeConfig;
2
- /**
3
- * Holds any `joist-config.json` values that we want to access at runtime.
4
- */
5
- export type RuntimeConfig = {
6
- temporal: false | {
7
- /** The application's default time zone, i.e. when we say "now", and store it as yyyy-MM-dd, what time zone should we use? */
8
- timeZone: string;
9
- };
10
- };
11
- /**
12
- * Called by the code-generated `metadata.ts` to pass along `joist-config.json` values.
13
- *
14
- * This avoids having to load/parse/ship the `joist-config.json` file at runtime.
15
- */
16
- export declare function setRuntimeConfig(config: RuntimeConfig): void;
17
- //# sourceMappingURL=runtimeConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtimeConfig.d.ts","sourceRoot":"","sources":["../src/runtimeConfig.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,IAAI,aAAa,CAEhD;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EACJ,KAAK,GACL;QACE,6HAA6H;QAC7H,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACP,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,QAErD"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRuntimeConfig = getRuntimeConfig;
4
- exports.setRuntimeConfig = setRuntimeConfig;
5
- const utils_1 = require("./utils");
6
- let runtimeConfig = undefined;
7
- function getRuntimeConfig() {
8
- return runtimeConfig ?? (0, utils_1.fail)("setRuntimeConfig in metadata.ts has not been invoked yet");
9
- }
10
- /**
11
- * Called by the code-generated `metadata.ts` to pass along `joist-config.json` values.
12
- *
13
- * This avoids having to load/parse/ship the `joist-config.json` file at runtime.
14
- */
15
- function setRuntimeConfig(config) {
16
- runtimeConfig = config;
17
- }
18
- //# sourceMappingURL=runtimeConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../src/runtimeConfig.ts"],"names":[],"mappings":";;AAIA,4CAEC;AAmBD,4CAEC;AA3BD,mCAA+B;AAE/B,IAAI,aAAa,GAA8B,SAAS,CAAC;AAEzD,SAAgB,gBAAgB;IAC9B,OAAO,aAAa,IAAI,IAAA,YAAI,EAAC,0DAA0D,CAAC,CAAC;AAC3F,CAAC;AAcD;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,MAAqB;IACpD,aAAa,GAAG,MAAM,CAAC;AACzB,CAAC"}
package/build/serde.d.ts DELETED
@@ -1,277 +0,0 @@
1
- import type { Temporal } from "temporal-polyfill";
2
- import { Field, SerdeField } from "./EntityMetadata";
3
- import { InsertFixup } from "./drivers/EntityWriter";
4
- import { Entity, EntityMetadata } from "./index";
5
- export declare function hasSerde(field: Field): field is SerdeField;
6
- /**
7
- * The database/column serialization / deserialization details of a given field.
8
- *
9
- * Most implementations will have just a single column in `columns`, but some logical
10
- * domain fields can be mapped to multiple physical database columns, i.e. polymorphic
11
- * references.
12
- */
13
- export interface FieldSerde {
14
- /** A single field might persist to multiple columns, i.e. polymorphic references. */
15
- columns: Column[];
16
- /**
17
- * Accepts the database `row` and sets the field's value(s) into the `__orm.data`.
18
- *
19
- * Originally used in `EntityManager.hydrate` to set db values into the entity, although
20
- * now we invoke it lazily in `getField` to avoid copying data until it's actually needed.
21
- */
22
- setOnEntity(data: any, row: any): void;
23
- }
24
- /**
25
- * An interface that generalizes our Date-vs-Temporal support.
26
- *
27
- * @typeParam T - The domain type, i.e. `Date` or `Temporal.ZonedDateTime`.
28
- */
29
- export interface TimestampSerde<T> extends FieldSerde {
30
- /** Given business logic that wants to "set this value to 'now'", converts its Date to our T. */
31
- mapFromNow(now: Date): T;
32
- /** Used for reading oplock values. */
33
- dbValue(data: any): any;
34
- }
35
- /** A specific physical column of a logical field. */
36
- export interface Column {
37
- columnName: string;
38
- dbType: string;
39
- /** From the given `__orm.data` hash, return this columns value, i.e. for putting in `UPDATE` params. */
40
- dbValue(data: any, entity: Entity, tableName: string, fixups: InsertFixup[] | undefined): any;
41
- /**
42
- * Used by `fork`, `importEntity`, and `run` to create an __orm.row from an __orm.data. Should output what we would
43
- * expect from a db query
44
- */
45
- rowValue(data: any): any;
46
- /** For a given domain value, return the database value, i.e. for putting `em.find` params into a db WHERE clause. */
47
- mapToDb(value: any): any;
48
- /**
49
- * For converting `json_agg`-preloaded JSON values into *ResultSet* type.
50
- *
51
- * I.e. our `#orm.row` hash always wants the db-side value, as-is coming from the database driver.
52
- * During `getField`, we always expect the ResultSet value, b/c we lazy call `setOnEntity` to go
53
- * from db-value to domain-value.
54
- *
55
- * So `mapFromJsonAgg` is for preloading that needs to go from json-value *only to db-value*.
56
- *
57
- * I.e. for types like temporal, which we keep as strings in `row`, the json-value will match
58
- * the db-value, so `mapFromJsonAgg` can be a noop. But (at one point...) `Date`s we store as
59
- * `Date`s in `row`, so then `mapFromJsonAgg` needs to convert string json-value value into a `Date`.
60
- */
61
- mapFromJsonAgg(value: any): any;
62
- isArray: boolean;
63
- /** Used by `unnest_arrays`. */
64
- isNullableArray: boolean;
65
- }
66
- /**
67
- * Provides a simplified, public API for mapping between db/domain values.
68
- *
69
- * Joist's internal `FieldSerde` API is admittedly a little crufty, and so this
70
- * API is intended to be a simpler, more user-friendly way to define custom types.
71
- */
72
- export interface CustomSerde<DomainType, DbType> {
73
- toDb(value: DomainType): DbType;
74
- fromDb(value: DbType): DomainType;
75
- }
76
- export declare class CustomSerdeAdapter implements FieldSerde {
77
- protected fieldName: string;
78
- columnName: string;
79
- dbType: string;
80
- private mapper;
81
- columns: this[];
82
- isArray: boolean;
83
- isNullableArray: boolean;
84
- constructor(fieldName: string, columnName: string, dbType: string, mapper: CustomSerde<any, any>, isArray?: boolean, isNullableArray?: boolean);
85
- setOnEntity(data: any, row: any): void;
86
- dbValue(data: any): any;
87
- rowValue(data: any): any;
88
- mapToDb(value: any): any;
89
- mapFromJsonAgg(value: any): any;
90
- }
91
- /**
92
- * Supports `string`, `int`, etc., as well as `string[]`, `int[]`, etc.
93
- *
94
- * This is not generally meant for subclassing, because it assumes things like
95
- * `string[]`s can be mapped 1:1. See `CustomSerdeAdapter` a good base class
96
- * that will handle converting individual elements.
97
- */
98
- export declare class PrimitiveSerde implements FieldSerde {
99
- protected fieldName: string;
100
- columnName: string;
101
- dbType: string;
102
- isArray: boolean;
103
- isNullableArray: boolean;
104
- columns: this[];
105
- constructor(fieldName: string, columnName: string, dbType: string, isArray?: boolean, isNullableArray?: boolean);
106
- setOnEntity(data: any, row: any): void;
107
- dbValue(data: any): any;
108
- rowValue(data: any): any;
109
- mapToDb(value: any): any;
110
- mapFromJsonAgg(value: any): any;
111
- }
112
- export declare class DateSerde extends PrimitiveSerde implements TimestampSerde<Date> {
113
- /** Accept the caller's date as-is. */
114
- mapFromNow(now: Date): Date;
115
- mapFromJsonAgg(value: any): any;
116
- mapToDb(value: Date): string;
117
- }
118
- /** Converts `DATE`s `Temporal.PlainDate`s. */
119
- export declare class PlainDateSerde extends CustomSerdeAdapter {
120
- constructor(fieldName: string, columnName: string, dbType: string, isArray?: boolean, isNullableArray?: boolean);
121
- }
122
- /** Converts `TIME`s to `Temporal.PlainTime`s. */
123
- export declare class PlainTimeSerde extends CustomSerdeAdapter {
124
- constructor(fieldName: string, columnName: string, dbType: string, isArray?: boolean, isNullableArray?: boolean);
125
- }
126
- /** Converts `TIMESTAMP`s to `Temporal.PlainDateTime`s. */
127
- export declare class PlainDateTimeSerde extends CustomSerdeAdapter implements TimestampSerde<Temporal.PlainDateTime> {
128
- constructor(fieldName: string, columnName: string, dbType: string, isArray?: boolean, isNullableArray?: boolean);
129
- mapFromNow(now: Date): Temporal.PlainDateTime;
130
- }
131
- /** Converts `TIMESTAMP WITH TIME ZONE`s to `Temporal.ZonedDateTime`s. */
132
- export declare class ZonedDateTimeSerde extends CustomSerdeAdapter implements TimestampSerde<Temporal.ZonedDateTime> {
133
- constructor(fieldName: string, columnName: string, dbType: string, isArray?: boolean, isNullableArray?: boolean);
134
- mapFromNow(now: Date): Temporal.ZonedDateTime;
135
- }
136
- export declare class BigIntSerde implements FieldSerde {
137
- private fieldName;
138
- columnName: string;
139
- isArray: boolean;
140
- isNullableArray: boolean;
141
- columns: this[];
142
- dbType: string;
143
- constructor(fieldName: string, columnName: string);
144
- setOnEntity(data: any, row: any): void;
145
- dbValue(data: any): any;
146
- rowValue(data: any): any;
147
- mapToDb(value: any): any;
148
- mapFromJsonAgg(value: any): any;
149
- }
150
- /**
151
- * Maps `decimal(...)` database types to the JS `number`.
152
- *
153
- * Note that we assume the db values are within the range of the JS `number`;
154
- * we should eventually sanity check that.
155
- *
156
- * Also note that knex/pg accept `number`s as input, so we only need
157
- * to handle from-database -> to JS translation.
158
- */
159
- export declare class DecimalToNumberSerde implements FieldSerde {
160
- private fieldName;
161
- columnName: string;
162
- dbType: string;
163
- isArray: boolean;
164
- isNullableArray: boolean;
165
- columns: this[];
166
- constructor(fieldName: string, columnName: string);
167
- setOnEntity(data: any, row: any): void;
168
- dbValue(data: any): any;
169
- rowValue(data: any): any;
170
- mapToDb(value: any): any;
171
- mapFromJsonAgg(value: any): any;
172
- }
173
- /** Maps physical integer keys to logical string IDs "because GraphQL". */
174
- export declare class KeySerde implements FieldSerde {
175
- private fieldName;
176
- columnName: string;
177
- dbType: "bigint" | "int" | "uuid" | "text";
178
- isArray: boolean;
179
- isNullableArray: boolean;
180
- columns: this[];
181
- private meta;
182
- constructor(tagName: string, fieldName: string, columnName: string, dbType: "bigint" | "int" | "uuid" | "text");
183
- setOnEntity(data: any, row: any): void;
184
- dbValue(data: any, entity: Entity, tableName: string, fixups: InsertFixup[] | undefined): number | null | undefined;
185
- rowValue(data: any): any;
186
- mapToDb(value: any): any;
187
- mapFromJsonAgg(value: any): any;
188
- }
189
- export declare class PolymorphicKeySerde implements FieldSerde {
190
- private meta;
191
- private fieldName;
192
- constructor(meta: () => EntityMetadata, fieldName: string);
193
- setOnEntity(data: any, row: any): void;
194
- get columns(): Array<Column & {
195
- otherMetadata: () => EntityMetadata;
196
- }>;
197
- get columnName(): string;
198
- private get field();
199
- }
200
- export declare class EnumFieldSerde implements FieldSerde {
201
- private fieldName;
202
- columnName: string;
203
- dbType: "int" | "uuid";
204
- private enumObject;
205
- isArray: boolean;
206
- isNullableArray: boolean;
207
- columns: this[];
208
- constructor(fieldName: string, columnName: string, dbType: "int" | "uuid", enumObject: any);
209
- setOnEntity(data: any, row: any): void;
210
- dbValue(data: any): any;
211
- rowValue(data: any): any;
212
- mapToDb(value: any): any;
213
- mapFromJsonAgg(value: any): any;
214
- }
215
- export declare class EnumArrayFieldSerde implements FieldSerde {
216
- private fieldName;
217
- columnName: string;
218
- dbType: "int[]" | "uuid[]";
219
- isNullableArray: boolean;
220
- private enumObject;
221
- isArray: boolean;
222
- columns: this[];
223
- constructor(fieldName: string, columnName: string, dbType: "int[]" | "uuid[]", isNullableArray: boolean, enumObject: any);
224
- setOnEntity(data: any, row: any): void;
225
- dbValue(data: any): any;
226
- rowValue(data: any): any;
227
- mapToDb(value: any): any;
228
- mapFromJsonAgg(value: any): any;
229
- }
230
- /** Similar to SimpleSerde, but applies the superstruct `assert` function when reading values from the db. */
231
- export declare class SuperstructSerde implements FieldSerde {
232
- private fieldName;
233
- columnName: string;
234
- private superstruct;
235
- dbType: string;
236
- isArray: boolean;
237
- isNullableArray: boolean;
238
- columns: this[];
239
- private assert;
240
- constructor(fieldName: string, columnName: string, superstruct: any);
241
- setOnEntity(data: any, row: any): void;
242
- dbValue(data: any): string;
243
- rowValue(data: any): any;
244
- mapToDb(value: any): string;
245
- mapFromJsonAgg(value: any): any;
246
- }
247
- export declare class JsonSerde implements FieldSerde {
248
- private fieldName;
249
- columnName: string;
250
- dbType: string;
251
- isArray: boolean;
252
- isNullableArray: boolean;
253
- columns: this[];
254
- constructor(fieldName: string, columnName: string);
255
- setOnEntity(data: any, row: any): void;
256
- dbValue(data: any): string;
257
- rowValue(data: any): any;
258
- mapToDb(value: any): string;
259
- mapFromJsonAgg(value: any): any;
260
- }
261
- /** Similar to SimpleSerde, but applies the zod's `parse` function when reading values from the db. */
262
- export declare class ZodSerde implements FieldSerde {
263
- private fieldName;
264
- columnName: string;
265
- private zodSchema;
266
- dbType: string;
267
- isArray: boolean;
268
- isNullableArray: boolean;
269
- columns: this[];
270
- constructor(fieldName: string, columnName: string, zodSchema: any);
271
- setOnEntity(data: any, row: any): void;
272
- dbValue(data: any): string;
273
- rowValue(data: any): any;
274
- mapToDb(value: any): string;
275
- mapFromJsonAgg(value: any): any;
276
- }
277
- //# sourceMappingURL=serde.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serde.d.ts","sourceRoot":"","sources":["../src/serde.ts"],"names":[],"mappings":"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"}