joist-orm 1.294.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (484) hide show
  1. package/build/codegen.d.ts +2 -0
  2. package/build/codegen.d.ts.map +1 -0
  3. package/build/codegen.js +29 -0
  4. package/build/codegen.js.map +1 -0
  5. package/build/drivers/PostgresDriver.d.ts +1 -4
  6. package/build/drivers/PostgresDriver.d.ts.map +1 -1
  7. package/build/drivers/PostgresDriver.js +49 -58
  8. package/build/drivers/PostgresDriver.js.map +1 -1
  9. package/build/graphql-codegen-export.d.ts +2 -0
  10. package/build/graphql-codegen-export.d.ts.map +1 -0
  11. package/build/{drivers/index.js → graphql-codegen-export.js} +3 -5
  12. package/build/graphql-codegen-export.js.map +1 -0
  13. package/build/graphql-export.d.ts +2 -0
  14. package/build/graphql-export.d.ts.map +1 -0
  15. package/build/graphql-export.js +19 -0
  16. package/build/graphql-export.js.map +1 -0
  17. package/build/index.d.ts +3 -128
  18. package/build/index.d.ts.map +1 -1
  19. package/build/index.js +8 -284
  20. package/build/index.js.map +1 -1
  21. package/build/knex-export.d.ts +2 -0
  22. package/build/knex-export.d.ts.map +1 -0
  23. package/build/knex-export.js +19 -0
  24. package/build/knex-export.js.map +1 -0
  25. package/build/pg-export.d.ts +2 -0
  26. package/build/pg-export.d.ts.map +1 -0
  27. package/build/pg-export.js +7 -0
  28. package/build/pg-export.js.map +1 -0
  29. package/build/pg-migrate.d.ts +2 -0
  30. package/build/pg-migrate.d.ts.map +1 -0
  31. package/build/pg-migrate.js +30 -0
  32. package/build/pg-migrate.js.map +1 -0
  33. package/build/tests-export.d.ts +2 -0
  34. package/build/tests-export.d.ts.map +1 -0
  35. package/build/tests-export.js +19 -0
  36. package/build/tests-export.js.map +1 -0
  37. package/package.json +94 -16
  38. package/build/AliasAssigner.d.ts +0 -7
  39. package/build/AliasAssigner.d.ts.map +0 -1
  40. package/build/AliasAssigner.js +0 -30
  41. package/build/AliasAssigner.js.map +0 -1
  42. package/build/Aliases.d.ts +0 -110
  43. package/build/Aliases.d.ts.map +0 -1
  44. package/build/Aliases.js +0 -456
  45. package/build/Aliases.js.map +0 -1
  46. package/build/BaseEntity.d.ts +0 -66
  47. package/build/BaseEntity.d.ts.map +0 -1
  48. package/build/BaseEntity.js +0 -120
  49. package/build/BaseEntity.js.map +0 -1
  50. package/build/ConditionBuilder.d.ts +0 -50
  51. package/build/ConditionBuilder.d.ts.map +0 -1
  52. package/build/ConditionBuilder.js +0 -178
  53. package/build/ConditionBuilder.js.map +0 -1
  54. package/build/Entity.d.ts +0 -38
  55. package/build/Entity.d.ts.map +0 -1
  56. package/build/Entity.js +0 -8
  57. package/build/Entity.js.map +0 -1
  58. package/build/EntityFields.d.ts +0 -37
  59. package/build/EntityFields.d.ts.map +0 -1
  60. package/build/EntityFields.js +0 -3
  61. package/build/EntityFields.js.map +0 -1
  62. package/build/EntityFilter.d.ts +0 -113
  63. package/build/EntityFilter.d.ts.map +0 -1
  64. package/build/EntityFilter.js +0 -3
  65. package/build/EntityFilter.js.map +0 -1
  66. package/build/EntityGraphQLFilter.d.ts +0 -51
  67. package/build/EntityGraphQLFilter.d.ts.map +0 -1
  68. package/build/EntityGraphQLFilter.js +0 -54
  69. package/build/EntityGraphQLFilter.js.map +0 -1
  70. package/build/EntityManager.d.ts +0 -734
  71. package/build/EntityManager.d.ts.map +0 -1
  72. package/build/EntityManager.js +0 -2075
  73. package/build/EntityManager.js.map +0 -1
  74. package/build/EntityMetadata.d.ts +0 -185
  75. package/build/EntityMetadata.d.ts.map +0 -1
  76. package/build/EntityMetadata.js +0 -61
  77. package/build/EntityMetadata.js.map +0 -1
  78. package/build/EnumMetadata.d.ts +0 -15
  79. package/build/EnumMetadata.d.ts.map +0 -1
  80. package/build/EnumMetadata.js +0 -3
  81. package/build/EnumMetadata.js.map +0 -1
  82. package/build/FlushLock.d.ts +0 -26
  83. package/build/FlushLock.d.ts.map +0 -1
  84. package/build/FlushLock.js +0 -57
  85. package/build/FlushLock.js.map +0 -1
  86. package/build/HintTree.d.ts +0 -42
  87. package/build/HintTree.d.ts.map +0 -1
  88. package/build/HintTree.js +0 -64
  89. package/build/HintTree.js.map +0 -1
  90. package/build/IndexManager.d.ts +0 -30
  91. package/build/IndexManager.d.ts.map +0 -1
  92. package/build/IndexManager.js +0 -206
  93. package/build/IndexManager.js.map +0 -1
  94. package/build/InstanceData.d.ts +0 -59
  95. package/build/InstanceData.d.ts.map +0 -1
  96. package/build/InstanceData.js +0 -162
  97. package/build/InstanceData.js.map +0 -1
  98. package/build/IsLoadedCache.d.ts +0 -32
  99. package/build/IsLoadedCache.d.ts.map +0 -1
  100. package/build/IsLoadedCache.js +0 -80
  101. package/build/IsLoadedCache.js.map +0 -1
  102. package/build/JoinRows.d.ts +0 -75
  103. package/build/JoinRows.d.ts.map +0 -1
  104. package/build/JoinRows.js +0 -246
  105. package/build/JoinRows.js.map +0 -1
  106. package/build/PluginManager.d.ts +0 -90
  107. package/build/PluginManager.d.ts.map +0 -1
  108. package/build/PluginManager.js +0 -97
  109. package/build/PluginManager.js.map +0 -1
  110. package/build/QueryParser.d.ts +0 -271
  111. package/build/QueryParser.d.ts.map +0 -1
  112. package/build/QueryParser.js +0 -853
  113. package/build/QueryParser.js.map +0 -1
  114. package/build/QueryParser.pruning.d.ts +0 -5
  115. package/build/QueryParser.pruning.d.ts.map +0 -1
  116. package/build/QueryParser.pruning.js +0 -118
  117. package/build/QueryParser.pruning.js.map +0 -1
  118. package/build/QueryVisitor.d.ts +0 -19
  119. package/build/QueryVisitor.d.ts.map +0 -1
  120. package/build/QueryVisitor.js +0 -84
  121. package/build/QueryVisitor.js.map +0 -1
  122. package/build/ReactionsManager.d.ts +0 -84
  123. package/build/ReactionsManager.d.ts.map +0 -1
  124. package/build/ReactionsManager.js +0 -308
  125. package/build/ReactionsManager.js.map +0 -1
  126. package/build/Todo.d.ts +0 -31
  127. package/build/Todo.d.ts.map +0 -1
  128. package/build/Todo.js +0 -73
  129. package/build/Todo.js.map +0 -1
  130. package/build/caches.d.ts +0 -6
  131. package/build/caches.d.ts.map +0 -1
  132. package/build/caches.js +0 -42
  133. package/build/caches.js.map +0 -1
  134. package/build/changes.d.ts +0 -79
  135. package/build/changes.d.ts.map +0 -1
  136. package/build/changes.js +0 -251
  137. package/build/changes.js.map +0 -1
  138. package/build/config.d.ts +0 -237
  139. package/build/config.d.ts.map +0 -1
  140. package/build/config.js +0 -298
  141. package/build/config.js.map +0 -1
  142. package/build/config.test.d.ts +0 -2
  143. package/build/config.test.d.ts.map +0 -1
  144. package/build/config.test.js +0 -53
  145. package/build/config.test.js.map +0 -1
  146. package/build/configure.d.ts +0 -13
  147. package/build/configure.d.ts.map +0 -1
  148. package/build/configure.js +0 -329
  149. package/build/configure.js.map +0 -1
  150. package/build/dataloaders/findByUniqueDataLoader.d.ts +0 -7
  151. package/build/dataloaders/findByUniqueDataLoader.d.ts.map +0 -1
  152. package/build/dataloaders/findByUniqueDataLoader.js +0 -47
  153. package/build/dataloaders/findByUniqueDataLoader.js.map +0 -1
  154. package/build/dataloaders/findCountDataLoader.d.ts +0 -7
  155. package/build/dataloaders/findCountDataLoader.d.ts.map +0 -1
  156. package/build/dataloaders/findCountDataLoader.js +0 -74
  157. package/build/dataloaders/findCountDataLoader.js.map +0 -1
  158. package/build/dataloaders/findDataLoader.d.ts +0 -37
  159. package/build/dataloaders/findDataLoader.d.ts.map +0 -1
  160. package/build/dataloaders/findDataLoader.js +0 -337
  161. package/build/dataloaders/findDataLoader.js.map +0 -1
  162. package/build/dataloaders/findIdsDataLoader.d.ts +0 -7
  163. package/build/dataloaders/findIdsDataLoader.d.ts.map +0 -1
  164. package/build/dataloaders/findIdsDataLoader.js +0 -74
  165. package/build/dataloaders/findIdsDataLoader.js.map +0 -1
  166. package/build/dataloaders/findOrCreateDataLoader.d.ts +0 -13
  167. package/build/dataloaders/findOrCreateDataLoader.d.ts.map +0 -1
  168. package/build/dataloaders/findOrCreateDataLoader.js +0 -174
  169. package/build/dataloaders/findOrCreateDataLoader.js.map +0 -1
  170. package/build/dataloaders/lensDataLoader.d.ts +0 -12
  171. package/build/dataloaders/lensDataLoader.d.ts.map +0 -1
  172. package/build/dataloaders/lensDataLoader.js +0 -180
  173. package/build/dataloaders/lensDataLoader.js.map +0 -1
  174. package/build/dataloaders/loadDataLoader.d.ts +0 -11
  175. package/build/dataloaders/loadDataLoader.d.ts.map +0 -1
  176. package/build/dataloaders/loadDataLoader.js +0 -54
  177. package/build/dataloaders/loadDataLoader.js.map +0 -1
  178. package/build/dataloaders/manyToManyDataLoader.d.ts +0 -8
  179. package/build/dataloaders/manyToManyDataLoader.d.ts.map +0 -1
  180. package/build/dataloaders/manyToManyDataLoader.js +0 -74
  181. package/build/dataloaders/manyToManyDataLoader.js.map +0 -1
  182. package/build/dataloaders/manyToManyFindDataLoader.d.ts +0 -8
  183. package/build/dataloaders/manyToManyFindDataLoader.d.ts.map +0 -1
  184. package/build/dataloaders/manyToManyFindDataLoader.js +0 -70
  185. package/build/dataloaders/manyToManyFindDataLoader.js.map +0 -1
  186. package/build/dataloaders/oneToManyDataLoader.d.ts +0 -7
  187. package/build/dataloaders/oneToManyDataLoader.d.ts.map +0 -1
  188. package/build/dataloaders/oneToManyDataLoader.js +0 -60
  189. package/build/dataloaders/oneToManyDataLoader.js.map +0 -1
  190. package/build/dataloaders/oneToManyFindDataLoader.d.ts +0 -8
  191. package/build/dataloaders/oneToManyFindDataLoader.d.ts.map +0 -1
  192. package/build/dataloaders/oneToManyFindDataLoader.js +0 -71
  193. package/build/dataloaders/oneToManyFindDataLoader.js.map +0 -1
  194. package/build/dataloaders/oneToOneDataLoader.d.ts +0 -7
  195. package/build/dataloaders/oneToOneDataLoader.d.ts.map +0 -1
  196. package/build/dataloaders/oneToOneDataLoader.js +0 -59
  197. package/build/dataloaders/oneToOneDataLoader.js.map +0 -1
  198. package/build/dataloaders/populateDataLoader.d.ts +0 -13
  199. package/build/dataloaders/populateDataLoader.d.ts.map +0 -1
  200. package/build/dataloaders/populateDataLoader.js +0 -148
  201. package/build/dataloaders/populateDataLoader.js.map +0 -1
  202. package/build/dataloaders/recursiveChildrenDataLoader.d.ts +0 -7
  203. package/build/dataloaders/recursiveChildrenDataLoader.d.ts.map +0 -1
  204. package/build/dataloaders/recursiveChildrenDataLoader.js +0 -77
  205. package/build/dataloaders/recursiveChildrenDataLoader.js.map +0 -1
  206. package/build/dataloaders/recursiveParentsDataLoader.d.ts +0 -7
  207. package/build/dataloaders/recursiveParentsDataLoader.d.ts.map +0 -1
  208. package/build/dataloaders/recursiveParentsDataLoader.js +0 -59
  209. package/build/dataloaders/recursiveParentsDataLoader.js.map +0 -1
  210. package/build/defaults.d.ts +0 -54
  211. package/build/defaults.d.ts.map +0 -1
  212. package/build/defaults.js +0 -282
  213. package/build/defaults.js.map +0 -1
  214. package/build/driverApi.d.ts +0 -19
  215. package/build/driverApi.d.ts.map +0 -1
  216. package/build/driverApi.js +0 -17
  217. package/build/driverApi.js.map +0 -1
  218. package/build/drivers/Driver.d.ts +0 -26
  219. package/build/drivers/Driver.d.ts.map +0 -1
  220. package/build/drivers/Driver.js +0 -3
  221. package/build/drivers/Driver.js.map +0 -1
  222. package/build/drivers/EntityWriter.d.ts +0 -64
  223. package/build/drivers/EntityWriter.d.ts.map +0 -1
  224. package/build/drivers/EntityWriter.js +0 -237
  225. package/build/drivers/EntityWriter.js.map +0 -1
  226. package/build/drivers/IdAssigner.d.ts +0 -50
  227. package/build/drivers/IdAssigner.d.ts.map +0 -1
  228. package/build/drivers/IdAssigner.js +0 -133
  229. package/build/drivers/IdAssigner.js.map +0 -1
  230. package/build/drivers/buildRawQuery.d.ts +0 -20
  231. package/build/drivers/buildRawQuery.d.ts.map +0 -1
  232. package/build/drivers/buildRawQuery.js +0 -148
  233. package/build/drivers/buildRawQuery.js.map +0 -1
  234. package/build/drivers/buildUtils.d.ts +0 -4
  235. package/build/drivers/buildUtils.d.ts.map +0 -1
  236. package/build/drivers/buildUtils.js +0 -79
  237. package/build/drivers/buildUtils.js.map +0 -1
  238. package/build/drivers/index.d.ts +0 -5
  239. package/build/drivers/index.d.ts.map +0 -1
  240. package/build/drivers/index.js.map +0 -1
  241. package/build/fields.d.ts +0 -24
  242. package/build/fields.d.ts.map +0 -1
  243. package/build/fields.js +0 -162
  244. package/build/fields.js.map +0 -1
  245. package/build/getProperties.d.ts +0 -28
  246. package/build/getProperties.d.ts.map +0 -1
  247. package/build/getProperties.js +0 -141
  248. package/build/getProperties.js.map +0 -1
  249. package/build/json.d.ts +0 -77
  250. package/build/json.d.ts.map +0 -1
  251. package/build/json.js +0 -116
  252. package/build/json.js.map +0 -1
  253. package/build/k.d.ts +0 -2
  254. package/build/k.d.ts.map +0 -1
  255. package/build/k.js +0 -9
  256. package/build/k.js.map +0 -1
  257. package/build/keys.d.ts +0 -49
  258. package/build/keys.d.ts.map +0 -1
  259. package/build/keys.js +0 -195
  260. package/build/keys.js.map +0 -1
  261. package/build/keywords.d.ts +0 -5
  262. package/build/keywords.d.ts.map +0 -1
  263. package/build/keywords.js +0 -124
  264. package/build/keywords.js.map +0 -1
  265. package/build/loadHints.d.ts +0 -112
  266. package/build/loadHints.d.ts.map +0 -1
  267. package/build/loadHints.js +0 -75
  268. package/build/loadHints.js.map +0 -1
  269. package/build/loadLens.d.ts +0 -66
  270. package/build/loadLens.d.ts.map +0 -1
  271. package/build/loadLens.js +0 -287
  272. package/build/loadLens.js.map +0 -1
  273. package/build/logging/FactoryLogger.d.ts +0 -24
  274. package/build/logging/FactoryLogger.d.ts.map +0 -1
  275. package/build/logging/FactoryLogger.js +0 -77
  276. package/build/logging/FactoryLogger.js.map +0 -1
  277. package/build/logging/FieldLogger.d.ts +0 -27
  278. package/build/logging/FieldLogger.d.ts.map +0 -1
  279. package/build/logging/FieldLogger.js +0 -69
  280. package/build/logging/FieldLogger.js.map +0 -1
  281. package/build/logging/ReactionLogger.d.ts +0 -23
  282. package/build/logging/ReactionLogger.d.ts.map +0 -1
  283. package/build/logging/ReactionLogger.js +0 -65
  284. package/build/logging/ReactionLogger.js.map +0 -1
  285. package/build/newEntity.d.ts +0 -45
  286. package/build/newEntity.d.ts.map +0 -1
  287. package/build/newEntity.js +0 -106
  288. package/build/newEntity.js.map +0 -1
  289. package/build/newTestInstance.d.ts +0 -193
  290. package/build/newTestInstance.d.ts.map +0 -1
  291. package/build/newTestInstance.js +0 -738
  292. package/build/newTestInstance.js.map +0 -1
  293. package/build/normalizeHints.d.ts +0 -16
  294. package/build/normalizeHints.d.ts.map +0 -1
  295. package/build/normalizeHints.js +0 -31
  296. package/build/normalizeHints.js.map +0 -1
  297. package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -9
  298. package/build/plugins/ImmutableEntitiesPlugin.d.ts.map +0 -1
  299. package/build/plugins/ImmutableEntitiesPlugin.js +0 -21
  300. package/build/plugins/ImmutableEntitiesPlugin.js.map +0 -1
  301. package/build/plugins/PreloadPlugin.d.ts +0 -69
  302. package/build/plugins/PreloadPlugin.d.ts.map +0 -1
  303. package/build/plugins/PreloadPlugin.js +0 -3
  304. package/build/plugins/PreloadPlugin.js.map +0 -1
  305. package/build/preloading/JsonAggregatePreloader.d.ts +0 -16
  306. package/build/preloading/JsonAggregatePreloader.d.ts.map +0 -1
  307. package/build/preloading/JsonAggregatePreloader.js +0 -238
  308. package/build/preloading/JsonAggregatePreloader.js.map +0 -1
  309. package/build/preloading/canPreload.d.ts +0 -3
  310. package/build/preloading/canPreload.d.ts.map +0 -1
  311. package/build/preloading/canPreload.js +0 -21
  312. package/build/preloading/canPreload.js.map +0 -1
  313. package/build/preloading/partitionHint.d.ts +0 -5
  314. package/build/preloading/partitionHint.d.ts.map +0 -1
  315. package/build/preloading/partitionHint.js +0 -56
  316. package/build/preloading/partitionHint.js.map +0 -1
  317. package/build/reactiveHints.d.ts +0 -129
  318. package/build/reactiveHints.d.ts.map +0 -1
  319. package/build/reactiveHints.js +0 -458
  320. package/build/reactiveHints.js.map +0 -1
  321. package/build/relations/AbstractPropertyImpl.d.ts +0 -8
  322. package/build/relations/AbstractPropertyImpl.d.ts.map +0 -1
  323. package/build/relations/AbstractPropertyImpl.js +0 -15
  324. package/build/relations/AbstractPropertyImpl.js.map +0 -1
  325. package/build/relations/AbstractRelationImpl.d.ts +0 -36
  326. package/build/relations/AbstractRelationImpl.d.ts.map +0 -1
  327. package/build/relations/AbstractRelationImpl.js +0 -19
  328. package/build/relations/AbstractRelationImpl.js.map +0 -1
  329. package/build/relations/Collection.d.ts +0 -28
  330. package/build/relations/Collection.d.ts.map +0 -1
  331. package/build/relations/Collection.js +0 -18
  332. package/build/relations/Collection.js.map +0 -1
  333. package/build/relations/CustomCollection.d.ts +0 -69
  334. package/build/relations/CustomCollection.d.ts.map +0 -1
  335. package/build/relations/CustomCollection.js +0 -166
  336. package/build/relations/CustomCollection.js.map +0 -1
  337. package/build/relations/CustomReference.d.ts +0 -71
  338. package/build/relations/CustomReference.d.ts.map +0 -1
  339. package/build/relations/CustomReference.js +0 -152
  340. package/build/relations/CustomReference.js.map +0 -1
  341. package/build/relations/LargeCollection.d.ts +0 -19
  342. package/build/relations/LargeCollection.d.ts.map +0 -1
  343. package/build/relations/LargeCollection.js +0 -3
  344. package/build/relations/LargeCollection.js.map +0 -1
  345. package/build/relations/ManyToManyCollection.d.ts +0 -44
  346. package/build/relations/ManyToManyCollection.d.ts.map +0 -1
  347. package/build/relations/ManyToManyCollection.js +0 -268
  348. package/build/relations/ManyToManyCollection.js.map +0 -1
  349. package/build/relations/ManyToManyLargeCollection.d.ts +0 -30
  350. package/build/relations/ManyToManyLargeCollection.d.ts.map +0 -1
  351. package/build/relations/ManyToManyLargeCollection.js +0 -119
  352. package/build/relations/ManyToManyLargeCollection.js.map +0 -1
  353. package/build/relations/ManyToOneReference.d.ts +0 -121
  354. package/build/relations/ManyToOneReference.d.ts.map +0 -1
  355. package/build/relations/ManyToOneReference.js +0 -389
  356. package/build/relations/ManyToOneReference.js.map +0 -1
  357. package/build/relations/OneToManyCollection.d.ts +0 -58
  358. package/build/relations/OneToManyCollection.d.ts.map +0 -1
  359. package/build/relations/OneToManyCollection.js +0 -347
  360. package/build/relations/OneToManyCollection.js.map +0 -1
  361. package/build/relations/OneToManyLargeCollection.d.ts +0 -26
  362. package/build/relations/OneToManyLargeCollection.d.ts.map +0 -1
  363. package/build/relations/OneToManyLargeCollection.js +0 -102
  364. package/build/relations/OneToManyLargeCollection.js.map +0 -1
  365. package/build/relations/OneToOneReference.d.ts +0 -93
  366. package/build/relations/OneToOneReference.d.ts.map +0 -1
  367. package/build/relations/OneToOneReference.js +0 -228
  368. package/build/relations/OneToOneReference.js.map +0 -1
  369. package/build/relations/PolymorphicReference.d.ts +0 -89
  370. package/build/relations/PolymorphicReference.d.ts.map +0 -1
  371. package/build/relations/PolymorphicReference.js +0 -244
  372. package/build/relations/PolymorphicReference.js.map +0 -1
  373. package/build/relations/ReactiveField.d.ts +0 -87
  374. package/build/relations/ReactiveField.d.ts.map +0 -1
  375. package/build/relations/ReactiveField.js +0 -149
  376. package/build/relations/ReactiveField.js.map +0 -1
  377. package/build/relations/ReactiveGetter.d.ts +0 -30
  378. package/build/relations/ReactiveGetter.d.ts.map +0 -1
  379. package/build/relations/ReactiveGetter.js +0 -38
  380. package/build/relations/ReactiveGetter.js.map +0 -1
  381. package/build/relations/ReactiveManyToMany.d.ts +0 -56
  382. package/build/relations/ReactiveManyToMany.d.ts.map +0 -1
  383. package/build/relations/ReactiveManyToMany.js +0 -243
  384. package/build/relations/ReactiveManyToMany.js.map +0 -1
  385. package/build/relations/ReactiveManyToManyOtherSide.d.ts +0 -47
  386. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +0 -1
  387. package/build/relations/ReactiveManyToManyOtherSide.js +0 -155
  388. package/build/relations/ReactiveManyToManyOtherSide.js.map +0 -1
  389. package/build/relations/ReactiveQueryField.d.ts +0 -41
  390. package/build/relations/ReactiveQueryField.d.ts.map +0 -1
  391. package/build/relations/ReactiveQueryField.js +0 -125
  392. package/build/relations/ReactiveQueryField.js.map +0 -1
  393. package/build/relations/ReactiveReference.d.ts +0 -119
  394. package/build/relations/ReactiveReference.d.ts.map +0 -1
  395. package/build/relations/ReactiveReference.js +0 -333
  396. package/build/relations/ReactiveReference.js.map +0 -1
  397. package/build/relations/ReadOnlyCollection.d.ts +0 -19
  398. package/build/relations/ReadOnlyCollection.d.ts.map +0 -1
  399. package/build/relations/ReadOnlyCollection.js +0 -15
  400. package/build/relations/ReadOnlyCollection.js.map +0 -1
  401. package/build/relations/RecursiveCollection.d.ts +0 -84
  402. package/build/relations/RecursiveCollection.d.ts.map +0 -1
  403. package/build/relations/RecursiveCollection.js +0 -296
  404. package/build/relations/RecursiveCollection.js.map +0 -1
  405. package/build/relations/Reference.d.ts +0 -35
  406. package/build/relations/Reference.d.ts.map +0 -1
  407. package/build/relations/Reference.js +0 -21
  408. package/build/relations/Reference.js.map +0 -1
  409. package/build/relations/Relation.d.ts +0 -14
  410. package/build/relations/Relation.d.ts.map +0 -1
  411. package/build/relations/Relation.js +0 -12
  412. package/build/relations/Relation.js.map +0 -1
  413. package/build/relations/hasAsyncMethod.d.ts +0 -27
  414. package/build/relations/hasAsyncMethod.d.ts.map +0 -1
  415. package/build/relations/hasAsyncMethod.js +0 -47
  416. package/build/relations/hasAsyncMethod.js.map +0 -1
  417. package/build/relations/hasAsyncProperty.d.ts +0 -49
  418. package/build/relations/hasAsyncProperty.d.ts.map +0 -1
  419. package/build/relations/hasAsyncProperty.js +0 -98
  420. package/build/relations/hasAsyncProperty.js.map +0 -1
  421. package/build/relations/hasManyDerived.d.ts +0 -22
  422. package/build/relations/hasManyDerived.d.ts.map +0 -1
  423. package/build/relations/hasManyDerived.js +0 -32
  424. package/build/relations/hasManyDerived.js.map +0 -1
  425. package/build/relations/hasManyThrough.d.ts +0 -10
  426. package/build/relations/hasManyThrough.d.ts.map +0 -1
  427. package/build/relations/hasManyThrough.js +0 -24
  428. package/build/relations/hasManyThrough.js.map +0 -1
  429. package/build/relations/hasOneDerived.d.ts +0 -12
  430. package/build/relations/hasOneDerived.d.ts.map +0 -1
  431. package/build/relations/hasOneDerived.js +0 -24
  432. package/build/relations/hasOneDerived.js.map +0 -1
  433. package/build/relations/hasOneThrough.d.ts +0 -10
  434. package/build/relations/hasOneThrough.d.ts.map +0 -1
  435. package/build/relations/hasOneThrough.js +0 -24
  436. package/build/relations/hasOneThrough.js.map +0 -1
  437. package/build/relations/index.d.ts +0 -28
  438. package/build/relations/index.d.ts.map +0 -1
  439. package/build/relations/index.js +0 -88
  440. package/build/relations/index.js.map +0 -1
  441. package/build/rules.d.ts +0 -123
  442. package/build/rules.d.ts.map +0 -1
  443. package/build/rules.js +0 -231
  444. package/build/rules.js.map +0 -1
  445. package/build/runtimeConfig.d.ts +0 -17
  446. package/build/runtimeConfig.d.ts.map +0 -1
  447. package/build/runtimeConfig.js +0 -18
  448. package/build/runtimeConfig.js.map +0 -1
  449. package/build/serde.d.ts +0 -277
  450. package/build/serde.d.ts.map +0 -1
  451. package/build/serde.js +0 -517
  452. package/build/serde.js.map +0 -1
  453. package/build/temporal.d.ts +0 -16
  454. package/build/temporal.d.ts.map +0 -1
  455. package/build/temporal.js +0 -48
  456. package/build/temporal.js.map +0 -1
  457. package/build/temporalMappers.d.ts +0 -25
  458. package/build/temporalMappers.d.ts.map +0 -1
  459. package/build/temporalMappers.js +0 -59
  460. package/build/temporalMappers.js.map +0 -1
  461. package/build/trusted.d.ts +0 -5
  462. package/build/trusted.d.ts.map +0 -1
  463. package/build/trusted.js +0 -15
  464. package/build/trusted.js.map +0 -1
  465. package/build/typeMap.d.ts +0 -68
  466. package/build/typeMap.d.ts.map +0 -1
  467. package/build/typeMap.js +0 -3
  468. package/build/typeMap.js.map +0 -1
  469. package/build/unnest.d.ts +0 -13
  470. package/build/unnest.d.ts.map +0 -1
  471. package/build/unnest.js +0 -85
  472. package/build/unnest.js.map +0 -1
  473. package/build/upsert.d.ts +0 -42
  474. package/build/upsert.d.ts.map +0 -1
  475. package/build/upsert.js +0 -265
  476. package/build/upsert.js.map +0 -1
  477. package/build/utils.d.ts +0 -58
  478. package/build/utils.d.ts.map +0 -1
  479. package/build/utils.js +0 -236
  480. package/build/utils.js.map +0 -1
  481. package/build/withLoaded.d.ts +0 -56
  482. package/build/withLoaded.d.ts.map +0 -1
  483. package/build/withLoaded.js +0 -76
  484. package/build/withLoaded.js.map +0 -1
package/build/serde.js DELETED
@@ -1,517 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ZodSerde = exports.JsonSerde = exports.SuperstructSerde = exports.EnumArrayFieldSerde = exports.EnumFieldSerde = exports.PolymorphicKeySerde = exports.KeySerde = exports.DecimalToNumberSerde = exports.BigIntSerde = exports.ZonedDateTimeSerde = exports.PlainDateTimeSerde = exports.PlainTimeSerde = exports.PlainDateSerde = exports.DateSerde = exports.PrimitiveSerde = exports.CustomSerdeAdapter = void 0;
4
- exports.hasSerde = hasSerde;
5
- const EntityMetadata_1 = require("./EntityMetadata");
6
- const index_1 = require("./index");
7
- const runtimeConfig_1 = require("./runtimeConfig");
8
- const temporal_1 = require("./temporal");
9
- const temporalMappers_1 = require("./temporalMappers");
10
- const utils_1 = require("./utils");
11
- function hasSerde(field) {
12
- return !!field.serde;
13
- }
14
- class CustomSerdeAdapter {
15
- fieldName;
16
- columnName;
17
- dbType;
18
- mapper;
19
- columns = [this];
20
- isArray = false;
21
- isNullableArray = false;
22
- constructor(fieldName, columnName, dbType, mapper,
23
- // Allow subtypes to override isArray
24
- isArray, isNullableArray = false) {
25
- this.fieldName = fieldName;
26
- this.columnName = columnName;
27
- this.dbType = dbType;
28
- this.mapper = mapper;
29
- if (isArray !== undefined)
30
- this.isArray = isArray;
31
- this.isNullableArray = isNullableArray;
32
- }
33
- setOnEntity(data, row) {
34
- const value = maybeNullToUndefined(row[this.columnName]);
35
- data[this.fieldName] =
36
- value !== undefined
37
- ? this.isArray
38
- ? value.map((value) => this.mapper.fromDb(value))
39
- : this.mapper.fromDb(value)
40
- : undefined;
41
- }
42
- dbValue(data) {
43
- const fieldData = data[this.fieldName];
44
- return fieldData !== undefined
45
- ? this.isArray
46
- ? fieldData.map((value) => this.mapper.toDb(value))
47
- : this.mapper.toDb(fieldData)
48
- : undefined;
49
- }
50
- rowValue(data) {
51
- return this.dbValue(data);
52
- }
53
- mapToDb(value) {
54
- return value === null ? value : this.mapper.toDb(value);
55
- }
56
- mapFromJsonAgg(value) {
57
- // Assume the database JSON value matches the ResultSet value
58
- return value;
59
- // return value === null
60
- // ? value
61
- // : this.isArray
62
- // ? value.map((value: any) => this.mapper.fromDb(value))
63
- // : this.mapper.fromDb(value);
64
- }
65
- }
66
- exports.CustomSerdeAdapter = CustomSerdeAdapter;
67
- /**
68
- * Supports `string`, `int`, etc., as well as `string[]`, `int[]`, etc.
69
- *
70
- * This is not generally meant for subclassing, because it assumes things like
71
- * `string[]`s can be mapped 1:1. See `CustomSerdeAdapter` a good base class
72
- * that will handle converting individual elements.
73
- */
74
- class PrimitiveSerde {
75
- fieldName;
76
- columnName;
77
- dbType;
78
- isArray;
79
- isNullableArray;
80
- columns = [this];
81
- constructor(fieldName, columnName, dbType, isArray = false, isNullableArray = false) {
82
- this.fieldName = fieldName;
83
- this.columnName = columnName;
84
- this.dbType = dbType;
85
- this.isArray = isArray;
86
- this.isNullableArray = isNullableArray;
87
- }
88
- setOnEntity(data, row) {
89
- data[this.fieldName] = maybeNullToUndefined(row[this.columnName]);
90
- }
91
- dbValue(data) {
92
- return this.mapToDb(data[this.fieldName]);
93
- }
94
- rowValue(data) {
95
- return this.dbValue(data);
96
- }
97
- mapToDb(value) {
98
- return value;
99
- }
100
- mapFromJsonAgg(value) {
101
- return value;
102
- }
103
- }
104
- exports.PrimitiveSerde = PrimitiveSerde;
105
- class DateSerde extends PrimitiveSerde {
106
- /** Accept the caller's date as-is. */
107
- mapFromNow(now) {
108
- return now;
109
- }
110
- mapFromJsonAgg(value) {
111
- if (value === null)
112
- return value;
113
- return new Date(value);
114
- }
115
- mapToDb(value) {
116
- // bun.sql needs this, node-pg does it out of the box
117
- return value?.toISOString();
118
- }
119
- }
120
- exports.DateSerde = DateSerde;
121
- /** Converts `DATE`s `Temporal.PlainDate`s. */
122
- class PlainDateSerde extends CustomSerdeAdapter {
123
- constructor(fieldName, columnName, dbType, isArray = false, isNullableArray = false) {
124
- super(fieldName, columnName, dbType, temporalMappers_1.plainDateMapper, isArray, isNullableArray);
125
- }
126
- }
127
- exports.PlainDateSerde = PlainDateSerde;
128
- /** Converts `TIME`s to `Temporal.PlainTime`s. */
129
- class PlainTimeSerde extends CustomSerdeAdapter {
130
- constructor(fieldName, columnName, dbType, isArray = false, isNullableArray = false) {
131
- super(fieldName, columnName, dbType, temporalMappers_1.plainTimeMapper, isArray, isNullableArray);
132
- }
133
- }
134
- exports.PlainTimeSerde = PlainTimeSerde;
135
- /** Converts `TIMESTAMP`s to `Temporal.PlainDateTime`s. */
136
- class PlainDateTimeSerde extends CustomSerdeAdapter {
137
- constructor(fieldName, columnName, dbType, isArray = false, isNullableArray = false) {
138
- super(fieldName, columnName, dbType, temporalMappers_1.plainDateTimeMapper, isArray, isNullableArray);
139
- }
140
- mapFromNow(now) {
141
- const { timeZone } = (0, runtimeConfig_1.getRuntimeConfig)().temporal;
142
- return (0, temporal_1.requireTemporal)().toTemporalInstant.call(now).toZonedDateTimeISO(timeZone).toPlainDateTime();
143
- }
144
- }
145
- exports.PlainDateTimeSerde = PlainDateTimeSerde;
146
- /** Converts `TIMESTAMP WITH TIME ZONE`s to `Temporal.ZonedDateTime`s. */
147
- class ZonedDateTimeSerde extends CustomSerdeAdapter {
148
- constructor(fieldName, columnName, dbType, isArray = false, isNullableArray = false) {
149
- super(fieldName, columnName, dbType, temporalMappers_1.zonedDateTimeMapper, isArray, isNullableArray);
150
- }
151
- mapFromNow(now) {
152
- const { timeZone } = (0, runtimeConfig_1.getRuntimeConfig)().temporal;
153
- return (0, temporal_1.requireTemporal)().toTemporalInstant.call(now).toZonedDateTimeISO(timeZone);
154
- }
155
- }
156
- exports.ZonedDateTimeSerde = ZonedDateTimeSerde;
157
- class BigIntSerde {
158
- fieldName;
159
- columnName;
160
- isArray = false;
161
- isNullableArray = false;
162
- columns = [this];
163
- dbType = "bigint";
164
- constructor(fieldName, columnName) {
165
- this.fieldName = fieldName;
166
- this.columnName = columnName;
167
- }
168
- setOnEntity(data, row) {
169
- const value = maybeNullToUndefined(row[this.columnName]);
170
- data[this.fieldName] = value ? BigInt(value) : value;
171
- }
172
- dbValue(data) {
173
- return data[this.fieldName];
174
- }
175
- rowValue(data) {
176
- return this.dbValue(data);
177
- }
178
- mapToDb(value) {
179
- return value;
180
- }
181
- mapFromJsonAgg(value) {
182
- return value === null ? value : BigInt(value);
183
- }
184
- }
185
- exports.BigIntSerde = BigIntSerde;
186
- /**
187
- * Maps `decimal(...)` database types to the JS `number`.
188
- *
189
- * Note that we assume the db values are within the range of the JS `number`;
190
- * we should eventually sanity check that.
191
- *
192
- * Also note that knex/pg accept `number`s as input, so we only need
193
- * to handle from-database -> to JS translation.
194
- */
195
- class DecimalToNumberSerde {
196
- fieldName;
197
- columnName;
198
- dbType = "decimal";
199
- isArray = false;
200
- isNullableArray = false;
201
- columns = [this];
202
- constructor(fieldName, columnName) {
203
- this.fieldName = fieldName;
204
- this.columnName = columnName;
205
- }
206
- setOnEntity(data, row) {
207
- const value = maybeNullToUndefined(row[this.columnName]);
208
- data[this.fieldName] = value !== undefined ? Number(value) : value;
209
- }
210
- dbValue(data) {
211
- return data[this.fieldName];
212
- }
213
- rowValue(data) {
214
- return this.dbValue(data);
215
- }
216
- mapToDb(value) {
217
- return value;
218
- }
219
- mapFromJsonAgg(value) {
220
- return value === null ? value : Number(value);
221
- }
222
- }
223
- exports.DecimalToNumberSerde = DecimalToNumberSerde;
224
- /** Maps physical integer keys to logical string IDs "because GraphQL". */
225
- class KeySerde {
226
- fieldName;
227
- columnName;
228
- dbType;
229
- isArray = false;
230
- isNullableArray = false;
231
- columns = [this];
232
- meta;
233
- constructor(tagName, fieldName, columnName, dbType) {
234
- this.fieldName = fieldName;
235
- this.columnName = columnName;
236
- this.dbType = dbType;
237
- this.meta = { tagName, idDbType: dbType };
238
- }
239
- setOnEntity(data, row) {
240
- data[this.fieldName] = (0, index_1.keyToTaggedId)(this.meta, row[this.columnName]);
241
- }
242
- dbValue(data, entity, tableName, fixups) {
243
- const value = data[this.fieldName];
244
- if (fixups &&
245
- (0, index_1.isEntity)(value) &&
246
- value.isNewEntity &&
247
- (0, EntityMetadata_1.getMetadata)(value).nonDeferredFkOrder &&
248
- (0, EntityMetadata_1.getMetadata)(entity).nonDeferredFkOrder &&
249
- (0, EntityMetadata_1.getMetadata)(value).nonDeferredFkOrder >= (0, EntityMetadata_1.getMetadata)(entity).nonDeferredFkOrder) {
250
- fixups.push({
251
- entity,
252
- tableName,
253
- column: this,
254
- value: (0, index_1.keyToNumber)(this.meta, (0, index_1.maybeResolveReferenceToId)(value)),
255
- });
256
- return null;
257
- }
258
- return (0, index_1.keyToNumber)(this.meta, (0, index_1.maybeResolveReferenceToId)(value));
259
- }
260
- rowValue(data) {
261
- // we don't have any fixups since we are trying to recreate what comes out of the db, so this is safe
262
- return this.dbValue(data, undefined, undefined, undefined);
263
- }
264
- mapToDb(value) {
265
- // Sometimes the nilIdValue will pass -1 as already a number, but usually this should be a tagged id
266
- return value === null || typeof value === "number"
267
- ? value
268
- : // We go through `maybeResolveReferenceToId` because filters like `in: [a1, a2]` will pass the
269
- // entity directly into mapToDb and not convert it to a tagged id first.
270
- (0, index_1.keyToNumber)(this.meta, (0, index_1.maybeResolveReferenceToId)(value));
271
- }
272
- mapFromJsonAgg(value) {
273
- return value === null ? value : value;
274
- }
275
- }
276
- exports.KeySerde = KeySerde;
277
- class PolymorphicKeySerde {
278
- meta;
279
- fieldName;
280
- constructor(meta, fieldName) {
281
- this.meta = meta;
282
- this.fieldName = fieldName;
283
- }
284
- setOnEntity(data, row) {
285
- this.columns
286
- .filter((column) => !!row[column.columnName])
287
- .forEach((column) => {
288
- data[this.fieldName] ??= (0, index_1.keyToTaggedId)(column.otherMetadata(), row[column.columnName]);
289
- });
290
- }
291
- // Lazy b/c we use PolymorphicField which we can't access in our cstr
292
- get columns() {
293
- const { fieldName } = this;
294
- // If our poly has multiple components from the same base type, i.e.
295
- // `parent_small_publisher_id` and `parent_large_publisher_id`, then we
296
- // need slightly different logic...
297
- const hasMultipleComponentsWithSameBaseType = [
298
- ...(0, utils_1.groupBy)(this.field.components, (comp) => (0, EntityMetadata_1.getBaseMeta)(comp.otherMetadata()).type).values(),
299
- ].some((group) => group.length > 1);
300
- return this.field.components.map((comp) => ({
301
- columnName: comp.columnName,
302
- dbType: comp.otherMetadata().idDbType,
303
- isArray: false,
304
- isNullableArray: false,
305
- otherMetadata: comp.otherMetadata,
306
- dbValue(data) {
307
- const id = (0, index_1.maybeResolveReferenceToId)(data[fieldName]);
308
- const cstr = id ? (0, index_1.getConstructorFromTaggedId)(id) : undefined;
309
- // We'll have multiple columns, i.e. [parent_author_id, parent_book_id], and each column
310
- // will only return a value if the `id` matches its type, i.e. `parent_author_id=a:1` will
311
- // return 1, but `parent_book_id` will return null.
312
- const idAppliesToThisColumn = hasMultipleComponentsWithSameBaseType
313
- ? cstr === comp.otherMetadata().cstr
314
- : cstr === (0, EntityMetadata_1.getBaseMeta)(comp.otherMetadata()).cstr;
315
- return idAppliesToThisColumn ? (0, index_1.keyToNumber)(comp.otherMetadata(), id) : undefined;
316
- },
317
- mapToDb(value) {
318
- return (0, index_1.keyToNumber)(comp.otherMetadata(), (0, index_1.maybeResolveReferenceToId)(value));
319
- },
320
- mapFromJsonAgg(value) {
321
- return value === null ? value : value;
322
- },
323
- rowValue(data) {
324
- return this.dbValue(data);
325
- },
326
- }));
327
- }
328
- get columnName() {
329
- throw new Error("Unsupported");
330
- }
331
- // Lazy b/c we use PolymorphicField which we can't access in our cstr
332
- get field() {
333
- return this.meta().fields[this.fieldName];
334
- }
335
- }
336
- exports.PolymorphicKeySerde = PolymorphicKeySerde;
337
- class EnumFieldSerde {
338
- fieldName;
339
- columnName;
340
- dbType;
341
- enumObject;
342
- isArray = false;
343
- isNullableArray = false;
344
- columns = [this];
345
- constructor(fieldName, columnName, dbType, enumObject) {
346
- this.fieldName = fieldName;
347
- this.columnName = columnName;
348
- this.dbType = dbType;
349
- this.enumObject = enumObject;
350
- }
351
- setOnEntity(data, row) {
352
- data[this.fieldName] = this.enumObject.findById(row[this.columnName])?.code;
353
- }
354
- dbValue(data) {
355
- return this.enumObject.findByCode(data[this.fieldName])?.id;
356
- }
357
- rowValue(data) {
358
- return this.dbValue(data);
359
- }
360
- mapToDb(value) {
361
- return this.enumObject.findByCode(value)?.id;
362
- }
363
- mapFromJsonAgg(value) {
364
- return value === null ? value : value;
365
- }
366
- }
367
- exports.EnumFieldSerde = EnumFieldSerde;
368
- class EnumArrayFieldSerde {
369
- fieldName;
370
- columnName;
371
- dbType;
372
- isNullableArray;
373
- enumObject;
374
- isArray = true;
375
- columns = [this];
376
- constructor(fieldName, columnName, dbType, isNullableArray, enumObject) {
377
- this.fieldName = fieldName;
378
- this.columnName = columnName;
379
- this.dbType = dbType;
380
- this.isNullableArray = isNullableArray;
381
- this.enumObject = enumObject;
382
- }
383
- setOnEntity(data, row) {
384
- data[this.fieldName] = row[this.columnName]?.map((id) => this.enumObject.findById(id).code) || [];
385
- }
386
- dbValue(data) {
387
- return data[this.fieldName]?.map((code) => this.enumObject.getByCode(code).id) || [];
388
- }
389
- rowValue(data) {
390
- return this.dbValue(data);
391
- }
392
- mapToDb(value) {
393
- return !value ? [] : value.map((code) => this.enumObject.getByCode(code).id);
394
- }
395
- mapFromJsonAgg(value) {
396
- return value === null ? value : value;
397
- }
398
- }
399
- exports.EnumArrayFieldSerde = EnumArrayFieldSerde;
400
- function maybeNullToUndefined(value) {
401
- return value === null ? undefined : value;
402
- }
403
- /** Similar to SimpleSerde, but applies the superstruct `assert` function when reading values from the db. */
404
- class SuperstructSerde {
405
- fieldName;
406
- columnName;
407
- superstruct;
408
- dbType = "jsonb";
409
- isArray = false;
410
- isNullableArray = false;
411
- columns = [this];
412
- // Use a dynamic require so that downstream projects don't have to depend on superstruct
413
- // until they want to, i.e. we don't have superstruct in the joist-orm package.json.
414
- assert = require("superstruct").assert;
415
- constructor(fieldName, columnName, superstruct) {
416
- this.fieldName = fieldName;
417
- this.columnName = columnName;
418
- this.superstruct = superstruct;
419
- }
420
- setOnEntity(data, row) {
421
- const value = maybeNullToUndefined(row[this.columnName]);
422
- if (value) {
423
- this.assert(value, this.superstruct);
424
- }
425
- data[this.fieldName] = value;
426
- }
427
- dbValue(data) {
428
- return JSON.stringify(data[this.fieldName]);
429
- }
430
- // JSON is returned by postgres already parsed, so we should just be able to return our data directly. Unlike with
431
- // JsonSerde, we can assume that superstruct would have parsed any complex types in the json correctly so we don't
432
- // need to do a round trip through JSON.stringify.
433
- rowValue(data) {
434
- return data[this.fieldName];
435
- }
436
- mapToDb(value) {
437
- return JSON.stringify(value);
438
- }
439
- mapFromJsonAgg(value) {
440
- return value === null ? value : value;
441
- }
442
- }
443
- exports.SuperstructSerde = SuperstructSerde;
444
- class JsonSerde {
445
- fieldName;
446
- columnName;
447
- dbType = "jsonb";
448
- isArray = false;
449
- isNullableArray = false;
450
- columns = [this];
451
- constructor(fieldName, columnName) {
452
- this.fieldName = fieldName;
453
- this.columnName = columnName;
454
- }
455
- setOnEntity(data, row) {
456
- data[this.fieldName] = maybeNullToUndefined(row[this.columnName]);
457
- }
458
- dbValue(data) {
459
- return JSON.stringify(data[this.fieldName]);
460
- }
461
- // JSON is returned by postgres already parsed, so if we are trying to recreate then we need to stringify, then parse.
462
- // It's necessary to do this instead of just returning the object directly because any complex types in the json need
463
- // to be stringified to correctly reflect the db value.
464
- rowValue(data) {
465
- const json = JSON.stringify(data[this.fieldName]);
466
- return (0, index_1.isDefined)(json) ? JSON.parse(json) : undefined;
467
- }
468
- mapToDb(value) {
469
- return JSON.stringify(value);
470
- }
471
- mapFromJsonAgg(value) {
472
- return value === null ? value : value;
473
- }
474
- }
475
- exports.JsonSerde = JsonSerde;
476
- /** Similar to SimpleSerde, but applies the zod's `parse` function when reading values from the db. */
477
- class ZodSerde {
478
- fieldName;
479
- columnName;
480
- zodSchema;
481
- dbType = "jsonb";
482
- isArray = false;
483
- isNullableArray = false;
484
- columns = [this];
485
- constructor(fieldName, columnName, zodSchema) {
486
- this.fieldName = fieldName;
487
- this.columnName = columnName;
488
- this.zodSchema = zodSchema;
489
- }
490
- setOnEntity(data, row) {
491
- const value = maybeNullToUndefined(row[this.columnName]);
492
- if (value) {
493
- data[this.fieldName] = this.zodSchema.parse(value);
494
- }
495
- else {
496
- data[this.fieldName] = value;
497
- }
498
- }
499
- dbValue(data) {
500
- // assume the data is already valid b/c it came from the entity
501
- return JSON.stringify(data[this.fieldName]);
502
- }
503
- // JSON is returned by postgres already parsed, so we should just be able to return our data directly. Unlike with
504
- // JsonSerde, we can assume that zod would have parsed any complex types in the json correctly so we don't need to
505
- // do a round trip through JSON.stringify.
506
- rowValue(data) {
507
- return data[this.fieldName];
508
- }
509
- mapToDb(value) {
510
- return JSON.stringify(value);
511
- }
512
- mapFromJsonAgg(value) {
513
- return value === null ? value : value;
514
- }
515
- }
516
- exports.ZodSerde = ZodSerde;
517
- //# sourceMappingURL=serde.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serde.js","sourceRoot":"","sources":["../src/serde.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import type { Intl, Temporal, toTemporalInstant } from "temporal-polyfill";
2
- type RequireTemporal = {
3
- Temporal: typeof Temporal;
4
- toTemporalInstant: typeof toTemporalInstant;
5
- Intl: typeof Intl;
6
- };
7
- /**
8
- * Conditionally/dynamically requires `temporal-polyfill`.
9
- *
10
- * We want to avoid directly importing/requiring `temporal-polyfill` because
11
- * it will introduce the dependency to all users of Joist.
12
- */
13
- export declare function maybeRequireTemporal(): RequireTemporal | undefined;
14
- export declare function requireTemporal(): RequireTemporal;
15
- export {};
16
- //# sourceMappingURL=temporal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"temporal.d.ts","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3E,KAAK,eAAe,GAAG;IAAE,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAAC,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAAC,IAAI,EAAE,OAAO,IAAI,CAAA;CAAE,CAAC;AAGrH;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,eAAe,GAAG,SAAS,CA2BlE;AAED,wBAAgB,eAAe,IAAI,eAAe,CAEjD"}
package/build/temporal.js DELETED
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.maybeRequireTemporal = maybeRequireTemporal;
4
- exports.requireTemporal = requireTemporal;
5
- const utils_1 = require("./utils");
6
- let temporal;
7
- /**
8
- * Conditionally/dynamically requires `temporal-polyfill`.
9
- *
10
- * We want to avoid directly importing/requiring `temporal-polyfill` because
11
- * it will introduce the dependency to all users of Joist.
12
- */
13
- function maybeRequireTemporal() {
14
- // if we've already failed to find a temporal implementation before, early exit
15
- if (temporal === false)
16
- return undefined;
17
- // if we already required temporal, just return that
18
- if (temporal)
19
- return temporal;
20
- // use built in temporal if present
21
- if ("Temporal" in global && "Intl" in global) {
22
- temporal = {
23
- Temporal: global.Temporal,
24
- toTemporalInstant: Date.prototype.toTemporalInstant,
25
- Intl: global.Intl,
26
- };
27
- return temporal;
28
- }
29
- // preferentially try to use temporal-polyfill
30
- try {
31
- temporal = require("temporal-polyfill");
32
- return temporal;
33
- }
34
- catch (e) { }
35
- // last resort, try to use @js-temporal/polyfill
36
- try {
37
- temporal = require("@js-temporal/polyfill");
38
- return temporal;
39
- }
40
- catch (e) { }
41
- // don't try to load temporal again
42
- temporal = false;
43
- return undefined;
44
- }
45
- function requireTemporal() {
46
- return maybeRequireTemporal() ?? (0, utils_1.fail)("Unable to find a Temporal implementation");
47
- }
48
- //# sourceMappingURL=temporal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":";;AAYA,oDA2BC;AAED,0CAEC;AA1CD,mCAA+B;AAG/B,IAAI,QAA6C,CAAC;AAElD;;;;;GAKG;AACH,SAAgB,oBAAoB;IAClC,+EAA+E;IAC/E,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IACzC,oDAAoD;IACpD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,mCAAmC;IACnC,IAAI,UAAU,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QAC7C,QAAQ,GAAG;YACT,QAAQ,EAAE,MAAM,CAAC,QAA2B;YAC5C,iBAAiB,EAAG,IAAI,CAAC,SAAiB,CAAC,iBAAiB;YAC5D,IAAI,EAAE,MAAM,CAAC,IAAmB;SACjC,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,8CAA8C;IAC9C,IAAI,CAAC;QACH,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACxC,OAAO,QAA2B,CAAC;IACrC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IACd,gDAAgD;IAChD,IAAI,CAAC;QACH,QAAQ,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC5C,OAAO,QAA2B,CAAC;IACrC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IACd,mCAAmC;IACnC,QAAQ,GAAG,KAAK,CAAC;IACjB,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,eAAe;IAC7B,OAAO,oBAAoB,EAAE,IAAI,IAAA,YAAI,EAAC,0CAA0C,CAAC,CAAC;AACpF,CAAC"}
@@ -1,25 +0,0 @@
1
- import type { Temporal } from "temporal-polyfill";
2
- import { CustomSerde } from "./serde";
3
- /** Converts Postgres `DATE` to/from Temporal.PlainDate. */
4
- export declare const plainDateMapper: CustomSerde<Temporal.PlainDate, string>;
5
- /** Converts Postgres `TIME` to/from Temporal.PlainTime. */
6
- export declare const plainTimeMapper: CustomSerde<Temporal.PlainTime, string>;
7
- /** Converts Postgres `TIMESTAMP` / `TIMESTAMP WITHOUT TIME ZONE` to/from Temporal.PlainDateTime. */
8
- export declare const plainDateTimeMapper: CustomSerde<Temporal.PlainDateTime, string>;
9
- /**
10
- * Converts Postgres `TIMESTAMPTZ`, `TIMESTAMPTZ WITH TIME ZONE` to/from Temporal.ZonedDateTime.
11
- *
12
- * Specifically, Postgres uses ISO 8601, which Temporal supports as well, except that PG ouputs a space instead of `T`
13
- * between the date/time for output.
14
- *
15
- * Additionally, `Temporal.ZonedDateTime.from` expects a time zone literal name to be supplied as part of the string,
16
- * but this is not stored by postgres.
17
- *
18
- * As such, we parse the offset and append it to string passed to `from` as the time zone. This means that if we did a
19
- * round trip of generating a db value then parsing it, then it may not strictly equal the original zdt.
20
- *
21
- * Finally, PG stores dates as UTC and converts them to its local time zone for output, so we could get any offset
22
- * theoretically. If, somehow, we don't get an offset, then we assume UTC.
23
- */
24
- export declare const zonedDateTimeMapper: CustomSerde<Temporal.ZonedDateTime, string>;
25
- //# sourceMappingURL=temporalMappers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"temporalMappers.d.ts","sourceRoot":"","sources":["../src/temporalMappers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAUtC,2DAA2D;AAC3D,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAK5C,CAAC;AAEzB,2DAA2D;AAC3D,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAK5C,CAAC;AAEzB,oGAAoG;AACpG,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAMpD,CAAC;AAEzB;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAUpD,CAAC"}