joist-core 2.3.0 → 2.4.0-next.2

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 (1548) hide show
  1. package/build/BaseEntity.cjs +112 -0
  2. package/build/BaseEntity.cjs.map +1 -0
  3. package/build/BaseEntity.d.cts +73 -0
  4. package/build/BaseEntity.d.cts.map +1 -0
  5. package/build/BaseEntity.d.mts +73 -0
  6. package/build/BaseEntity.d.mts.map +1 -0
  7. package/build/BaseEntity.js +99 -110
  8. package/build/BaseEntity.js.map +1 -1
  9. package/build/Entity.cjs +12 -0
  10. package/build/Entity.cjs.map +1 -0
  11. package/build/Entity.d.cts +42 -0
  12. package/build/Entity.d.cts.map +1 -0
  13. package/build/Entity.d.mts +42 -0
  14. package/build/Entity.d.mts.map +1 -0
  15. package/build/Entity.js +8 -5
  16. package/build/Entity.js.map +1 -1
  17. package/build/EntityFields.cjs +1 -0
  18. package/build/EntityFields.d.cts +36 -0
  19. package/build/EntityFields.d.cts.map +1 -0
  20. package/build/EntityFields.d.mts +36 -0
  21. package/build/EntityFields.d.mts.map +1 -0
  22. package/build/EntityFields.js +1 -3
  23. package/build/EntityManager.cjs +1935 -0
  24. package/build/EntityManager.cjs.map +1 -0
  25. package/build/EntityManager.d.cts +835 -0
  26. package/build/EntityManager.d.cts.map +1 -0
  27. package/build/EntityManager.d.mts +835 -0
  28. package/build/EntityManager.d.mts.map +1 -0
  29. package/build/EntityManager.js +1812 -2211
  30. package/build/EntityManager.js.map +1 -1
  31. package/build/EntityMetadata.cjs +75 -0
  32. package/build/EntityMetadata.cjs.map +1 -0
  33. package/build/EntityMetadata.d.cts +262 -0
  34. package/build/EntityMetadata.d.cts.map +1 -0
  35. package/build/EntityMetadata.d.mts +262 -0
  36. package/build/EntityMetadata.d.mts.map +1 -0
  37. package/build/EntityMetadata.js +31 -48
  38. package/build/EntityMetadata.js.map +1 -1
  39. package/build/EnumMetadata.cjs +1 -0
  40. package/build/EnumMetadata.d.cts +18 -0
  41. package/build/EnumMetadata.d.cts.map +1 -0
  42. package/build/EnumMetadata.d.mts +18 -0
  43. package/build/EnumMetadata.d.mts.map +1 -0
  44. package/build/EnumMetadata.js +1 -3
  45. package/build/IndexManager.cjs +178 -0
  46. package/build/IndexManager.cjs.map +1 -0
  47. package/build/IndexManager.d.cts +36 -0
  48. package/build/IndexManager.d.cts.map +1 -0
  49. package/build/IndexManager.d.mts +36 -0
  50. package/build/IndexManager.d.mts.map +1 -0
  51. package/build/IndexManager.js +169 -218
  52. package/build/IndexManager.js.map +1 -1
  53. package/build/InstanceData.cjs +218 -0
  54. package/build/InstanceData.cjs.map +1 -0
  55. package/build/InstanceData.d.cts +98 -0
  56. package/build/InstanceData.d.cts.map +1 -0
  57. package/build/InstanceData.d.mts +98 -0
  58. package/build/InstanceData.d.mts.map +1 -0
  59. package/build/InstanceData.js +215 -222
  60. package/build/InstanceData.js.map +1 -1
  61. package/build/PluginManager.cjs +89 -0
  62. package/build/PluginManager.cjs.map +1 -0
  63. package/build/PluginManager.d.cts +112 -0
  64. package/build/PluginManager.d.cts.map +1 -0
  65. package/build/PluginManager.d.mts +112 -0
  66. package/build/PluginManager.d.mts.map +1 -0
  67. package/build/PluginManager.js +80 -106
  68. package/build/PluginManager.js.map +1 -1
  69. package/build/RowData.cjs +37 -0
  70. package/build/RowData.cjs.map +1 -0
  71. package/build/RowData.d.cts +53 -0
  72. package/build/RowData.d.cts.map +1 -0
  73. package/build/RowData.d.mts +53 -0
  74. package/build/RowData.d.mts.map +1 -0
  75. package/build/RowData.js +35 -0
  76. package/build/RowData.js.map +1 -0
  77. package/build/_virtual/_rolldown/runtime.cjs +23 -0
  78. package/build/batchloaders/BatchLoader.cjs +49 -0
  79. package/build/batchloaders/BatchLoader.cjs.map +1 -0
  80. package/build/batchloaders/BatchLoader.d.cts +17 -0
  81. package/build/batchloaders/BatchLoader.d.cts.map +1 -0
  82. package/build/batchloaders/BatchLoader.d.mts +17 -0
  83. package/build/batchloaders/BatchLoader.d.mts.map +1 -0
  84. package/build/batchloaders/BatchLoader.js +45 -54
  85. package/build/batchloaders/BatchLoader.js.map +1 -1
  86. package/build/batchloaders/enumCollectionBatchLoader.cjs +66 -0
  87. package/build/batchloaders/enumCollectionBatchLoader.cjs.map +1 -0
  88. package/build/batchloaders/enumCollectionBatchLoader.d.cts +11 -0
  89. package/build/batchloaders/enumCollectionBatchLoader.d.cts.map +1 -0
  90. package/build/batchloaders/enumCollectionBatchLoader.d.mts +11 -0
  91. package/build/batchloaders/enumCollectionBatchLoader.d.mts.map +1 -0
  92. package/build/batchloaders/enumCollectionBatchLoader.js +58 -48
  93. package/build/batchloaders/enumCollectionBatchLoader.js.map +1 -1
  94. package/build/batchloaders/loadBatchLoader.cjs +78 -0
  95. package/build/batchloaders/loadBatchLoader.cjs.map +1 -0
  96. package/build/batchloaders/loadBatchLoader.d.cts +20 -0
  97. package/build/batchloaders/loadBatchLoader.d.cts.map +1 -0
  98. package/build/batchloaders/loadBatchLoader.d.mts +20 -0
  99. package/build/batchloaders/loadBatchLoader.d.mts.map +1 -0
  100. package/build/batchloaders/loadBatchLoader.js +72 -51
  101. package/build/batchloaders/loadBatchLoader.js.map +1 -1
  102. package/build/batchloaders/manyToManyBatchLoader.cjs +78 -0
  103. package/build/batchloaders/manyToManyBatchLoader.cjs.map +1 -0
  104. package/build/batchloaders/manyToManyBatchLoader.d.cts +11 -0
  105. package/build/batchloaders/manyToManyBatchLoader.d.cts.map +1 -0
  106. package/build/batchloaders/manyToManyBatchLoader.d.mts +11 -0
  107. package/build/batchloaders/manyToManyBatchLoader.d.mts.map +1 -0
  108. package/build/batchloaders/manyToManyBatchLoader.js +70 -61
  109. package/build/batchloaders/manyToManyBatchLoader.js.map +1 -1
  110. package/build/batchloaders/oneToManyBatchLoader.cjs +63 -0
  111. package/build/batchloaders/oneToManyBatchLoader.cjs.map +1 -0
  112. package/build/batchloaders/oneToManyBatchLoader.d.cts +11 -0
  113. package/build/batchloaders/oneToManyBatchLoader.d.cts.map +1 -0
  114. package/build/batchloaders/oneToManyBatchLoader.d.mts +11 -0
  115. package/build/batchloaders/oneToManyBatchLoader.d.mts.map +1 -0
  116. package/build/batchloaders/oneToManyBatchLoader.js +58 -48
  117. package/build/batchloaders/oneToManyBatchLoader.js.map +1 -1
  118. package/build/batchloaders/oneToOneBatchLoader.cjs +64 -0
  119. package/build/batchloaders/oneToOneBatchLoader.cjs.map +1 -0
  120. package/build/batchloaders/oneToOneBatchLoader.d.cts +10 -0
  121. package/build/batchloaders/oneToOneBatchLoader.d.cts.map +1 -0
  122. package/build/batchloaders/oneToOneBatchLoader.d.mts +10 -0
  123. package/build/batchloaders/oneToOneBatchLoader.d.mts.map +1 -0
  124. package/build/batchloaders/oneToOneBatchLoader.js +59 -50
  125. package/build/batchloaders/oneToOneBatchLoader.js.map +1 -1
  126. package/build/batchloaders/populateBatchLoader.cjs +155 -0
  127. package/build/batchloaders/populateBatchLoader.cjs.map +1 -0
  128. package/build/batchloaders/populateBatchLoader.d.cts +17 -0
  129. package/build/batchloaders/populateBatchLoader.d.cts.map +1 -0
  130. package/build/batchloaders/populateBatchLoader.d.mts +17 -0
  131. package/build/batchloaders/populateBatchLoader.d.mts.map +1 -0
  132. package/build/batchloaders/populateBatchLoader.js +147 -203
  133. package/build/batchloaders/populateBatchLoader.js.map +1 -1
  134. package/build/batchloaders/recursiveChildrenBatchLoader.cjs +78 -0
  135. package/build/batchloaders/recursiveChildrenBatchLoader.cjs.map +1 -0
  136. package/build/batchloaders/recursiveChildrenBatchLoader.d.cts +10 -0
  137. package/build/batchloaders/recursiveChildrenBatchLoader.d.cts.map +1 -0
  138. package/build/batchloaders/recursiveChildrenBatchLoader.d.mts +10 -0
  139. package/build/batchloaders/recursiveChildrenBatchLoader.d.mts.map +1 -0
  140. package/build/batchloaders/recursiveChildrenBatchLoader.js +71 -72
  141. package/build/batchloaders/recursiveChildrenBatchLoader.js.map +1 -1
  142. package/build/batchloaders/recursiveM2mBatchLoader.cjs +83 -0
  143. package/build/batchloaders/recursiveM2mBatchLoader.cjs.map +1 -0
  144. package/build/batchloaders/recursiveM2mBatchLoader.d.cts +10 -0
  145. package/build/batchloaders/recursiveM2mBatchLoader.d.cts.map +1 -0
  146. package/build/batchloaders/recursiveM2mBatchLoader.d.mts +10 -0
  147. package/build/batchloaders/recursiveM2mBatchLoader.d.mts.map +1 -0
  148. package/build/batchloaders/recursiveM2mBatchLoader.js +76 -79
  149. package/build/batchloaders/recursiveM2mBatchLoader.js.map +1 -1
  150. package/build/batchloaders/recursiveParentsBatchLoader.cjs +65 -0
  151. package/build/batchloaders/recursiveParentsBatchLoader.cjs.map +1 -0
  152. package/build/batchloaders/recursiveParentsBatchLoader.d.cts +10 -0
  153. package/build/batchloaders/recursiveParentsBatchLoader.d.cts.map +1 -0
  154. package/build/batchloaders/recursiveParentsBatchLoader.d.mts +10 -0
  155. package/build/batchloaders/recursiveParentsBatchLoader.d.mts.map +1 -0
  156. package/build/batchloaders/recursiveParentsBatchLoader.js +58 -55
  157. package/build/batchloaders/recursiveParentsBatchLoader.js.map +1 -1
  158. package/build/changes.cjs +221 -0
  159. package/build/changes.cjs.map +1 -0
  160. package/build/changes.d.cts +95 -0
  161. package/build/changes.d.cts.map +1 -0
  162. package/build/changes.d.mts +95 -0
  163. package/build/changes.d.mts.map +1 -0
  164. package/build/changes.js +208 -285
  165. package/build/changes.js.map +1 -1
  166. package/build/config.cjs +295 -0
  167. package/build/config.cjs.map +1 -0
  168. package/build/config.d.cts +277 -0
  169. package/build/config.d.cts.map +1 -0
  170. package/build/config.d.mts +277 -0
  171. package/build/config.d.mts.map +1 -0
  172. package/build/config.js +255 -301
  173. package/build/config.js.map +1 -1
  174. package/build/configure.cjs +324 -0
  175. package/build/configure.cjs.map +1 -0
  176. package/build/configure.d.cts +19 -0
  177. package/build/configure.d.cts.map +1 -0
  178. package/build/configure.d.mts +19 -0
  179. package/build/configure.d.mts.map +1 -0
  180. package/build/configure.js +265 -348
  181. package/build/configure.js.map +1 -1
  182. package/build/dataloaders/fastWhereFilterHash.cjs +140 -0
  183. package/build/dataloaders/fastWhereFilterHash.cjs.map +1 -0
  184. package/build/dataloaders/fastWhereFilterHash.d.cts +18 -0
  185. package/build/dataloaders/fastWhereFilterHash.d.cts.map +1 -0
  186. package/build/dataloaders/fastWhereFilterHash.d.mts +18 -0
  187. package/build/dataloaders/fastWhereFilterHash.d.mts.map +1 -0
  188. package/build/dataloaders/fastWhereFilterHash.js +108 -133
  189. package/build/dataloaders/fastWhereFilterHash.js.map +1 -1
  190. package/build/dataloaders/findByUniqueDataLoader.cjs +58 -0
  191. package/build/dataloaders/findByUniqueDataLoader.cjs.map +1 -0
  192. package/build/dataloaders/findByUniqueDataLoader.d.cts +10 -0
  193. package/build/dataloaders/findByUniqueDataLoader.d.cts.map +1 -0
  194. package/build/dataloaders/findByUniqueDataLoader.d.mts +10 -0
  195. package/build/dataloaders/findByUniqueDataLoader.d.mts.map +1 -0
  196. package/build/dataloaders/findByUniqueDataLoader.js +53 -44
  197. package/build/dataloaders/findByUniqueDataLoader.js.map +1 -1
  198. package/build/dataloaders/findCountDataLoader.cjs +123 -0
  199. package/build/dataloaders/findCountDataLoader.cjs.map +1 -0
  200. package/build/dataloaders/findCountDataLoader.d.cts +19 -0
  201. package/build/dataloaders/findCountDataLoader.d.cts.map +1 -0
  202. package/build/dataloaders/findCountDataLoader.d.mts +19 -0
  203. package/build/dataloaders/findCountDataLoader.d.mts.map +1 -0
  204. package/build/dataloaders/findCountDataLoader.js +112 -109
  205. package/build/dataloaders/findCountDataLoader.js.map +1 -1
  206. package/build/dataloaders/findDataLoader.cjs +365 -0
  207. package/build/dataloaders/findDataLoader.cjs.map +1 -0
  208. package/build/dataloaders/findDataLoader.d.cts +79 -0
  209. package/build/dataloaders/findDataLoader.d.cts.map +1 -0
  210. package/build/dataloaders/findDataLoader.d.mts +79 -0
  211. package/build/dataloaders/findDataLoader.d.mts.map +1 -0
  212. package/build/dataloaders/findDataLoader.js +298 -382
  213. package/build/dataloaders/findDataLoader.js.map +1 -1
  214. package/build/dataloaders/findIdsDataLoader.cjs +82 -0
  215. package/build/dataloaders/findIdsDataLoader.cjs.map +1 -0
  216. package/build/dataloaders/findIdsDataLoader.d.cts +9 -0
  217. package/build/dataloaders/findIdsDataLoader.d.cts.map +1 -0
  218. package/build/dataloaders/findIdsDataLoader.d.mts +9 -0
  219. package/build/dataloaders/findIdsDataLoader.d.mts.map +1 -0
  220. package/build/dataloaders/findIdsDataLoader.js +77 -74
  221. package/build/dataloaders/findIdsDataLoader.js.map +1 -1
  222. package/build/dataloaders/findOrCreateDataLoader.cjs +120 -0
  223. package/build/dataloaders/findOrCreateDataLoader.cjs.map +1 -0
  224. package/build/dataloaders/findOrCreateDataLoader.d.cts +15 -0
  225. package/build/dataloaders/findOrCreateDataLoader.d.cts.map +1 -0
  226. package/build/dataloaders/findOrCreateDataLoader.d.mts +15 -0
  227. package/build/dataloaders/findOrCreateDataLoader.d.mts.map +1 -0
  228. package/build/dataloaders/findOrCreateDataLoader.js +102 -164
  229. package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
  230. package/build/dataloaders/findPaginatedDataLoader.cjs +98 -0
  231. package/build/dataloaders/findPaginatedDataLoader.cjs.map +1 -0
  232. package/build/dataloaders/findPaginatedDataLoader.d.cts +10 -0
  233. package/build/dataloaders/findPaginatedDataLoader.d.cts.map +1 -0
  234. package/build/dataloaders/findPaginatedDataLoader.d.mts +10 -0
  235. package/build/dataloaders/findPaginatedDataLoader.d.mts.map +1 -0
  236. package/build/dataloaders/findPaginatedDataLoader.js +93 -80
  237. package/build/dataloaders/findPaginatedDataLoader.js.map +1 -1
  238. package/build/dataloaders/lensDataLoader.cjs +178 -0
  239. package/build/dataloaders/lensDataLoader.cjs.map +1 -0
  240. package/build/dataloaders/lensDataLoader.d.cts +15 -0
  241. package/build/dataloaders/lensDataLoader.d.cts.map +1 -0
  242. package/build/dataloaders/lensDataLoader.d.mts +15 -0
  243. package/build/dataloaders/lensDataLoader.d.mts.map +1 -0
  244. package/build/dataloaders/lensDataLoader.js +172 -176
  245. package/build/dataloaders/lensDataLoader.js.map +1 -1
  246. package/build/dataloaders/manyToManyFindDataLoader.cjs +84 -0
  247. package/build/dataloaders/manyToManyFindDataLoader.cjs.map +1 -0
  248. package/build/dataloaders/manyToManyFindDataLoader.d.cts +12 -0
  249. package/build/dataloaders/manyToManyFindDataLoader.d.cts.map +1 -0
  250. package/build/dataloaders/manyToManyFindDataLoader.d.mts +12 -0
  251. package/build/dataloaders/manyToManyFindDataLoader.d.mts.map +1 -0
  252. package/build/dataloaders/manyToManyFindDataLoader.js +76 -70
  253. package/build/dataloaders/manyToManyFindDataLoader.js.map +1 -1
  254. package/build/dataloaders/oneToManyFindDataLoader.cjs +77 -0
  255. package/build/dataloaders/oneToManyFindDataLoader.cjs.map +1 -0
  256. package/build/dataloaders/oneToManyFindDataLoader.d.cts +12 -0
  257. package/build/dataloaders/oneToManyFindDataLoader.d.cts.map +1 -0
  258. package/build/dataloaders/oneToManyFindDataLoader.d.mts +12 -0
  259. package/build/dataloaders/oneToManyFindDataLoader.d.mts.map +1 -0
  260. package/build/dataloaders/oneToManyFindDataLoader.js +71 -67
  261. package/build/dataloaders/oneToManyFindDataLoader.js.map +1 -1
  262. package/build/defaults.cjs +195 -0
  263. package/build/defaults.cjs.map +1 -0
  264. package/build/defaults.d.cts +56 -0
  265. package/build/defaults.d.cts.map +1 -0
  266. package/build/defaults.d.mts +56 -0
  267. package/build/defaults.d.mts.map +1 -0
  268. package/build/defaults.js +171 -271
  269. package/build/defaults.js.map +1 -1
  270. package/build/drivers/Driver.cjs +3 -0
  271. package/build/drivers/Driver.d.cts +51 -0
  272. package/build/drivers/Driver.d.cts.map +1 -0
  273. package/build/drivers/Driver.d.mts +51 -0
  274. package/build/drivers/Driver.d.mts.map +1 -0
  275. package/build/drivers/Driver.js +3 -3
  276. package/build/drivers/EntityWriter.cjs +208 -0
  277. package/build/drivers/EntityWriter.cjs.map +1 -0
  278. package/build/drivers/EntityWriter.d.cts +66 -0
  279. package/build/drivers/EntityWriter.d.cts.map +1 -0
  280. package/build/drivers/EntityWriter.d.mts +66 -0
  281. package/build/drivers/EntityWriter.d.mts.map +1 -0
  282. package/build/drivers/EntityWriter.js +183 -219
  283. package/build/drivers/EntityWriter.js.map +1 -1
  284. package/build/drivers/IdAssigner.cjs +89 -0
  285. package/build/drivers/IdAssigner.cjs.map +1 -0
  286. package/build/drivers/IdAssigner.d.cts +50 -0
  287. package/build/drivers/IdAssigner.d.cts.map +1 -0
  288. package/build/drivers/IdAssigner.d.mts +50 -0
  289. package/build/drivers/IdAssigner.d.mts.map +1 -0
  290. package/build/drivers/IdAssigner.js +80 -124
  291. package/build/drivers/IdAssigner.js.map +1 -1
  292. package/build/drivers/driverApi.cjs +19 -0
  293. package/build/drivers/driverApi.cjs.map +1 -0
  294. package/build/drivers/driverApi.d.cts +22 -0
  295. package/build/drivers/driverApi.d.cts.map +1 -0
  296. package/build/drivers/driverApi.d.mts +22 -0
  297. package/build/drivers/driverApi.d.mts.map +1 -0
  298. package/build/drivers/driverApi.js +18 -0
  299. package/build/drivers/driverApi.js.map +1 -0
  300. package/build/drivers/index.cjs +7 -0
  301. package/build/drivers/index.d.cts +4 -0
  302. package/build/drivers/index.d.mts +4 -0
  303. package/build/drivers/index.js +3 -22
  304. package/build/fields.cjs +127 -0
  305. package/build/fields.cjs.map +1 -0
  306. package/build/fields.d.cts +29 -0
  307. package/build/fields.d.cts.map +1 -0
  308. package/build/fields.d.mts +29 -0
  309. package/build/fields.d.mts.map +1 -0
  310. package/build/fields.js +98 -160
  311. package/build/fields.js.map +1 -1
  312. package/build/flush/FlushLock.cjs +51 -0
  313. package/build/flush/FlushLock.cjs.map +1 -0
  314. package/build/flush/FlushLock.d.cts +29 -0
  315. package/build/flush/FlushLock.d.cts.map +1 -0
  316. package/build/flush/FlushLock.d.mts +29 -0
  317. package/build/flush/FlushLock.d.mts.map +1 -0
  318. package/build/flush/FlushLock.js +51 -0
  319. package/build/flush/FlushLock.js.map +1 -0
  320. package/build/flush/JoinRows.cjs +263 -0
  321. package/build/flush/JoinRows.cjs.map +1 -0
  322. package/build/flush/JoinRows.d.cts +120 -0
  323. package/build/flush/JoinRows.d.cts.map +1 -0
  324. package/build/flush/JoinRows.d.mts +120 -0
  325. package/build/flush/JoinRows.d.mts.map +1 -0
  326. package/build/flush/JoinRows.js +261 -0
  327. package/build/flush/JoinRows.js.map +1 -0
  328. package/build/flush/PendingChanges.cjs +1 -0
  329. package/build/flush/PendingChanges.d.cts +29 -0
  330. package/build/flush/PendingChanges.d.cts.map +1 -0
  331. package/build/flush/PendingChanges.d.mts +29 -0
  332. package/build/flush/PendingChanges.d.mts.map +1 -0
  333. package/build/flush/PendingChanges.js +1 -0
  334. package/build/flush/Todo.cjs +71 -0
  335. package/build/flush/Todo.cjs.map +1 -0
  336. package/build/flush/Todo.d.cts +38 -0
  337. package/build/flush/Todo.d.cts.map +1 -0
  338. package/build/flush/Todo.d.mts +38 -0
  339. package/build/flush/Todo.d.mts.map +1 -0
  340. package/build/flush/Todo.js +67 -0
  341. package/build/flush/Todo.js.map +1 -0
  342. package/build/getProperties.cjs +87 -0
  343. package/build/getProperties.cjs.map +1 -0
  344. package/build/getProperties.d.cts +30 -0
  345. package/build/getProperties.d.cts.map +1 -0
  346. package/build/getProperties.d.mts +30 -0
  347. package/build/getProperties.d.mts.map +1 -0
  348. package/build/getProperties.js +71 -128
  349. package/build/getProperties.js.map +1 -1
  350. package/build/index.cjs +524 -0
  351. package/build/index.cjs.map +1 -0
  352. package/build/index.d.cts +180 -0
  353. package/build/index.d.cts.map +1 -0
  354. package/build/index.d.mts +180 -0
  355. package/build/index.d.mts.map +1 -0
  356. package/build/index.js +171 -292
  357. package/build/index.js.map +1 -1
  358. package/build/json.cjs +79 -0
  359. package/build/json.cjs.map +1 -0
  360. package/build/json.d.cts +76 -0
  361. package/build/json.d.cts.map +1 -0
  362. package/build/json.d.mts +76 -0
  363. package/build/json.d.mts.map +1 -0
  364. package/build/json.js +68 -106
  365. package/build/json.js.map +1 -1
  366. package/build/k.cjs +9 -0
  367. package/build/k.cjs.map +1 -0
  368. package/build/k.d.cts +1 -0
  369. package/build/k.d.mts +1 -0
  370. package/build/k.js +6 -6
  371. package/build/k.js.map +1 -1
  372. package/build/keys.cjs +181 -0
  373. package/build/keys.cjs.map +1 -0
  374. package/build/keys.d.cts +55 -0
  375. package/build/keys.d.cts.map +1 -0
  376. package/build/keys.d.mts +55 -0
  377. package/build/keys.d.mts.map +1 -0
  378. package/build/keys.js +129 -162
  379. package/build/keys.js.map +1 -1
  380. package/build/loading/HintTree.cjs +67 -0
  381. package/build/loading/HintTree.cjs.map +1 -0
  382. package/build/loading/HintTree.d.cts +45 -0
  383. package/build/loading/HintTree.d.cts.map +1 -0
  384. package/build/loading/HintTree.d.mts +45 -0
  385. package/build/loading/HintTree.d.mts.map +1 -0
  386. package/build/loading/HintTree.js +66 -0
  387. package/build/loading/HintTree.js.map +1 -0
  388. package/build/loading/IsLoadedCache.cjs +58 -0
  389. package/build/loading/IsLoadedCache.cjs.map +1 -0
  390. package/build/loading/IsLoadedCache.d.cts +35 -0
  391. package/build/loading/IsLoadedCache.d.cts.map +1 -0
  392. package/build/loading/IsLoadedCache.d.mts +35 -0
  393. package/build/loading/IsLoadedCache.d.mts.map +1 -0
  394. package/build/loading/IsLoadedCache.js +57 -0
  395. package/build/loading/IsLoadedCache.js.map +1 -0
  396. package/build/loading/loadHints.cjs +95 -0
  397. package/build/loading/loadHints.cjs.map +1 -0
  398. package/build/loading/loadHints.d.cts +116 -0
  399. package/build/loading/loadHints.d.cts.map +1 -0
  400. package/build/loading/loadHints.d.mts +116 -0
  401. package/build/loading/loadHints.d.mts.map +1 -0
  402. package/build/loading/loadHints.js +88 -0
  403. package/build/loading/loadHints.js.map +1 -0
  404. package/build/loading/loadLens.cjs +212 -0
  405. package/build/loading/loadLens.cjs.map +1 -0
  406. package/build/loading/loadLens.d.cts +77 -0
  407. package/build/loading/loadLens.d.cts.map +1 -0
  408. package/build/loading/loadLens.d.mts +77 -0
  409. package/build/loading/loadLens.d.mts.map +1 -0
  410. package/build/loading/loadLens.js +201 -0
  411. package/build/loading/loadLens.js.map +1 -0
  412. package/build/loading/withLoaded.cjs +64 -0
  413. package/build/loading/withLoaded.cjs.map +1 -0
  414. package/build/loading/withLoaded.d.cts +65 -0
  415. package/build/loading/withLoaded.d.cts.map +1 -0
  416. package/build/loading/withLoaded.d.mts +65 -0
  417. package/build/loading/withLoaded.d.mts.map +1 -0
  418. package/build/loading/withLoaded.js +61 -0
  419. package/build/loading/withLoaded.js.map +1 -0
  420. package/build/logging/FactoryLogger.cjs +66 -0
  421. package/build/logging/FactoryLogger.cjs.map +1 -0
  422. package/build/logging/FactoryLogger.d.cts +27 -0
  423. package/build/logging/FactoryLogger.d.cts.map +1 -0
  424. package/build/logging/FactoryLogger.d.mts +27 -0
  425. package/build/logging/FactoryLogger.d.mts.map +1 -0
  426. package/build/logging/FactoryLogger.js +58 -73
  427. package/build/logging/FactoryLogger.js.map +1 -1
  428. package/build/logging/FieldLogger.cjs +57 -0
  429. package/build/logging/FieldLogger.cjs.map +1 -0
  430. package/build/logging/FieldLogger.d.cts +32 -0
  431. package/build/logging/FieldLogger.d.cts.map +1 -0
  432. package/build/logging/FieldLogger.d.mts +32 -0
  433. package/build/logging/FieldLogger.d.mts.map +1 -0
  434. package/build/logging/FieldLogger.js +51 -67
  435. package/build/logging/FieldLogger.js.map +1 -1
  436. package/build/logging/ReactionLogger.cjs +93 -0
  437. package/build/logging/ReactionLogger.cjs.map +1 -0
  438. package/build/logging/ReactionLogger.d.cts +37 -0
  439. package/build/logging/ReactionLogger.d.cts.map +1 -0
  440. package/build/logging/ReactionLogger.d.mts +37 -0
  441. package/build/logging/ReactionLogger.d.mts.map +1 -0
  442. package/build/logging/ReactionLogger.js +76 -66
  443. package/build/logging/ReactionLogger.js.map +1 -1
  444. package/build/newEntity.cjs +89 -0
  445. package/build/newEntity.cjs.map +1 -0
  446. package/build/newEntity.d.cts +48 -0
  447. package/build/newEntity.d.cts.map +1 -0
  448. package/build/newEntity.d.mts +48 -0
  449. package/build/newEntity.d.mts.map +1 -0
  450. package/build/newEntity.js +71 -94
  451. package/build/newEntity.js.map +1 -1
  452. package/build/newTestInstance.cjs +539 -0
  453. package/build/newTestInstance.cjs.map +1 -0
  454. package/build/newTestInstance.d.cts +207 -0
  455. package/build/newTestInstance.d.cts.map +1 -0
  456. package/build/newTestInstance.d.mts +207 -0
  457. package/build/newTestInstance.d.mts.map +1 -0
  458. package/build/newTestInstance.js +459 -721
  459. package/build/newTestInstance.js.map +1 -1
  460. package/build/normalizeHints.cjs +58 -0
  461. package/build/normalizeHints.cjs.map +1 -0
  462. package/build/normalizeHints.d.cts +24 -0
  463. package/build/normalizeHints.d.cts.map +1 -0
  464. package/build/normalizeHints.d.mts +24 -0
  465. package/build/normalizeHints.d.mts.map +1 -0
  466. package/build/normalizeHints.js +40 -55
  467. package/build/normalizeHints.js.map +1 -1
  468. package/build/nowUTC.cjs +15 -0
  469. package/build/nowUTC.cjs.map +1 -0
  470. package/build/nowUTC.d.cts +10 -0
  471. package/build/nowUTC.d.cts.map +1 -0
  472. package/build/nowUTC.d.mts +10 -0
  473. package/build/nowUTC.d.mts.map +1 -0
  474. package/build/nowUTC.js +14 -0
  475. package/build/nowUTC.js.map +1 -0
  476. package/build/plugins/ImmutableEntitiesPlugin.cjs +21 -0
  477. package/build/plugins/ImmutableEntitiesPlugin.cjs.map +1 -0
  478. package/build/plugins/ImmutableEntitiesPlugin.d.cts +12 -0
  479. package/build/plugins/ImmutableEntitiesPlugin.d.cts.map +1 -0
  480. package/build/plugins/ImmutableEntitiesPlugin.d.mts +12 -0
  481. package/build/plugins/ImmutableEntitiesPlugin.d.mts.map +1 -0
  482. package/build/plugins/ImmutableEntitiesPlugin.js +19 -20
  483. package/build/plugins/ImmutableEntitiesPlugin.js.map +1 -1
  484. package/build/plugins/PreloadPlugin.cjs +3 -0
  485. package/build/plugins/PreloadPlugin.d.cts +77 -0
  486. package/build/plugins/PreloadPlugin.d.cts.map +1 -0
  487. package/build/plugins/PreloadPlugin.d.mts +77 -0
  488. package/build/plugins/PreloadPlugin.d.mts.map +1 -0
  489. package/build/plugins/PreloadPlugin.js +3 -3
  490. package/build/preloading/JsonAggregatePreloader.cjs +280 -0
  491. package/build/preloading/JsonAggregatePreloader.cjs.map +1 -0
  492. package/build/preloading/JsonAggregatePreloader.d.cts +19 -0
  493. package/build/preloading/JsonAggregatePreloader.d.cts.map +1 -0
  494. package/build/preloading/JsonAggregatePreloader.d.mts +19 -0
  495. package/build/preloading/JsonAggregatePreloader.d.mts.map +1 -0
  496. package/build/preloading/JsonAggregatePreloader.js +270 -320
  497. package/build/preloading/JsonAggregatePreloader.js.map +1 -1
  498. package/build/preloading/canPreload.cjs +19 -0
  499. package/build/preloading/canPreload.cjs.map +1 -0
  500. package/build/preloading/canPreload.d.cts +6 -0
  501. package/build/preloading/canPreload.d.cts.map +1 -0
  502. package/build/preloading/canPreload.d.mts +6 -0
  503. package/build/preloading/canPreload.d.mts.map +1 -0
  504. package/build/preloading/canPreload.js +15 -21
  505. package/build/preloading/canPreload.js.map +1 -1
  506. package/build/preloading/partitionHint.cjs +43 -0
  507. package/build/preloading/partitionHint.cjs.map +1 -0
  508. package/build/preloading/partitionHint.d.cts +8 -0
  509. package/build/preloading/partitionHint.d.cts.map +1 -0
  510. package/build/preloading/partitionHint.d.mts +8 -0
  511. package/build/preloading/partitionHint.d.mts.map +1 -0
  512. package/build/preloading/partitionHint.js +36 -56
  513. package/build/preloading/partitionHint.js.map +1 -1
  514. package/build/queries/ConditionBuilder.cjs +106 -0
  515. package/build/queries/ConditionBuilder.cjs.map +1 -0
  516. package/build/queries/ConditionBuilder.d.cts +31 -0
  517. package/build/queries/ConditionBuilder.d.cts.map +1 -0
  518. package/build/queries/ConditionBuilder.d.mts +31 -0
  519. package/build/queries/ConditionBuilder.d.mts.map +1 -0
  520. package/build/queries/ConditionBuilder.js +105 -0
  521. package/build/queries/ConditionBuilder.js.map +1 -0
  522. package/build/queries/conditions.cjs +15 -0
  523. package/build/queries/conditions.cjs.map +1 -0
  524. package/build/queries/conditions.d.cts +38 -0
  525. package/build/queries/conditions.d.cts.map +1 -0
  526. package/build/queries/conditions.d.mts +38 -0
  527. package/build/queries/conditions.d.mts.map +1 -0
  528. package/build/queries/conditions.js +13 -0
  529. package/build/queries/conditions.js.map +1 -0
  530. package/build/queries/entityQueryUtils.cjs +60 -0
  531. package/build/queries/entityQueryUtils.cjs.map +1 -0
  532. package/build/queries/entityQueryUtils.d.cts +19 -0
  533. package/build/queries/entityQueryUtils.d.cts.map +1 -0
  534. package/build/queries/entityQueryUtils.d.mts +19 -0
  535. package/build/queries/entityQueryUtils.d.mts.map +1 -0
  536. package/build/queries/entityQueryUtils.js +56 -0
  537. package/build/queries/entityQueryUtils.js.map +1 -0
  538. package/build/queries/find/Aliases.cjs +301 -0
  539. package/build/queries/find/Aliases.cjs.map +1 -0
  540. package/build/queries/find/Aliases.d.cts +122 -0
  541. package/build/queries/find/Aliases.d.cts.map +1 -0
  542. package/build/queries/find/Aliases.d.mts +122 -0
  543. package/build/queries/find/Aliases.d.mts.map +1 -0
  544. package/build/queries/find/Aliases.js +293 -0
  545. package/build/queries/find/Aliases.js.map +1 -0
  546. package/build/queries/find/DeferredAlias.cjs +25 -0
  547. package/build/queries/find/DeferredAlias.cjs.map +1 -0
  548. package/build/queries/find/DeferredAlias.d.cts +22 -0
  549. package/build/queries/find/DeferredAlias.d.cts.map +1 -0
  550. package/build/queries/find/DeferredAlias.d.mts +22 -0
  551. package/build/queries/find/DeferredAlias.d.mts.map +1 -0
  552. package/build/queries/find/DeferredAlias.js +22 -0
  553. package/build/queries/find/DeferredAlias.js.map +1 -0
  554. package/build/queries/find/EntityFilter.cjs +27 -0
  555. package/build/queries/find/EntityFilter.cjs.map +1 -0
  556. package/build/queries/find/EntityFilter.d.cts +127 -0
  557. package/build/queries/find/EntityFilter.d.cts.map +1 -0
  558. package/build/queries/find/EntityFilter.d.mts +127 -0
  559. package/build/queries/find/EntityFilter.d.mts.map +1 -0
  560. package/build/queries/find/EntityFilter.js +26 -0
  561. package/build/queries/find/EntityFilter.js.map +1 -0
  562. package/build/queries/find/EntityGraphQLFilter.cjs +52 -0
  563. package/build/queries/find/EntityGraphQLFilter.cjs.map +1 -0
  564. package/build/queries/find/EntityGraphQLFilter.d.cts +59 -0
  565. package/build/queries/find/EntityGraphQLFilter.d.cts.map +1 -0
  566. package/build/queries/find/EntityGraphQLFilter.d.mts +59 -0
  567. package/build/queries/find/EntityGraphQLFilter.d.mts.map +1 -0
  568. package/build/queries/find/EntityGraphQLFilter.js +50 -0
  569. package/build/queries/find/EntityGraphQLFilter.js.map +1 -0
  570. package/build/queries/find/QueryParser.cjs +553 -0
  571. package/build/queries/find/QueryParser.cjs.map +1 -0
  572. package/build/queries/find/QueryParser.collectionJoins.cjs +353 -0
  573. package/build/queries/find/QueryParser.collectionJoins.cjs.map +1 -0
  574. package/build/queries/find/QueryParser.collectionJoins.d.cts +30 -0
  575. package/build/queries/find/QueryParser.collectionJoins.d.cts.map +1 -0
  576. package/build/queries/find/QueryParser.collectionJoins.d.mts +30 -0
  577. package/build/queries/find/QueryParser.collectionJoins.d.mts.map +1 -0
  578. package/build/queries/find/QueryParser.collectionJoins.js +352 -0
  579. package/build/queries/find/QueryParser.collectionJoins.js.map +1 -0
  580. package/build/queries/find/QueryParser.d.cts +192 -0
  581. package/build/queries/find/QueryParser.d.cts.map +1 -0
  582. package/build/queries/find/QueryParser.d.mts +192 -0
  583. package/build/queries/find/QueryParser.d.mts.map +1 -0
  584. package/build/queries/find/QueryParser.js +546 -0
  585. package/build/queries/find/QueryParser.js.map +1 -0
  586. package/build/queries/find/QueryParser.pruning.cjs +115 -0
  587. package/build/queries/find/QueryParser.pruning.cjs.map +1 -0
  588. package/build/queries/find/QueryParser.pruning.d.cts +8 -0
  589. package/build/queries/find/QueryParser.pruning.d.cts.map +1 -0
  590. package/build/queries/find/QueryParser.pruning.d.mts +8 -0
  591. package/build/queries/find/QueryParser.pruning.d.mts.map +1 -0
  592. package/build/queries/find/QueryParser.pruning.js +113 -0
  593. package/build/queries/find/QueryParser.pruning.js.map +1 -0
  594. package/build/queries/find/QueryVisitor.cjs +77 -0
  595. package/build/queries/find/QueryVisitor.cjs.map +1 -0
  596. package/build/queries/find/QueryVisitor.d.cts +24 -0
  597. package/build/queries/find/QueryVisitor.d.cts.map +1 -0
  598. package/build/queries/find/QueryVisitor.d.mts +24 -0
  599. package/build/queries/find/QueryVisitor.d.mts.map +1 -0
  600. package/build/queries/find/QueryVisitor.js +74 -0
  601. package/build/queries/find/QueryVisitor.js.map +1 -0
  602. package/build/queries/find/buildFindQuery.cjs +112 -0
  603. package/build/queries/find/buildFindQuery.cjs.map +1 -0
  604. package/build/queries/find/buildFindQuery.d.cts +24 -0
  605. package/build/queries/find/buildFindQuery.d.cts.map +1 -0
  606. package/build/queries/find/buildFindQuery.d.mts +24 -0
  607. package/build/queries/find/buildFindQuery.d.mts.map +1 -0
  608. package/build/queries/find/buildFindQuery.js +110 -0
  609. package/build/queries/find/buildFindQuery.js.map +1 -0
  610. package/build/queries/find/scopes.cjs +301 -0
  611. package/build/queries/find/scopes.cjs.map +1 -0
  612. package/build/queries/find/scopes.d.cts +188 -0
  613. package/build/queries/find/scopes.d.cts.map +1 -0
  614. package/build/queries/find/scopes.d.mts +188 -0
  615. package/build/queries/find/scopes.d.mts.map +1 -0
  616. package/build/queries/find/scopes.js +296 -0
  617. package/build/queries/find/scopes.js.map +1 -0
  618. package/build/queries/parsedConditions.cjs +21 -0
  619. package/build/queries/parsedConditions.cjs.map +1 -0
  620. package/build/queries/parsedConditions.d.cts +127 -0
  621. package/build/queries/parsedConditions.d.cts.map +1 -0
  622. package/build/queries/parsedConditions.d.mts +127 -0
  623. package/build/queries/parsedConditions.d.mts.map +1 -0
  624. package/build/queries/parsedConditions.js +20 -0
  625. package/build/queries/parsedConditions.js.map +1 -0
  626. package/build/queries/renderConditions.cjs +66 -0
  627. package/build/queries/renderConditions.cjs.map +1 -0
  628. package/build/queries/renderConditions.d.cts +15 -0
  629. package/build/queries/renderConditions.d.cts.map +1 -0
  630. package/build/queries/renderConditions.d.mts +15 -0
  631. package/build/queries/renderConditions.d.mts.map +1 -0
  632. package/build/queries/renderConditions.js +64 -0
  633. package/build/queries/renderConditions.js.map +1 -0
  634. package/build/queries/skipCondition.cjs +14 -0
  635. package/build/queries/skipCondition.cjs.map +1 -0
  636. package/build/queries/skipCondition.d.cts +7 -0
  637. package/build/queries/skipCondition.d.cts.map +1 -0
  638. package/build/queries/skipCondition.d.mts +7 -0
  639. package/build/queries/skipCondition.d.mts.map +1 -0
  640. package/build/queries/skipCondition.js +13 -0
  641. package/build/queries/skipCondition.js.map +1 -0
  642. package/build/queries/sql/AliasAssigner.cjs +35 -0
  643. package/build/queries/sql/AliasAssigner.cjs.map +1 -0
  644. package/build/queries/sql/AliasAssigner.d.cts +13 -0
  645. package/build/queries/sql/AliasAssigner.d.cts.map +1 -0
  646. package/build/queries/sql/AliasAssigner.d.mts +13 -0
  647. package/build/queries/sql/AliasAssigner.d.mts.map +1 -0
  648. package/build/queries/sql/AliasAssigner.js +34 -0
  649. package/build/queries/sql/AliasAssigner.js.map +1 -0
  650. package/build/queries/sql/Expr.cjs +529 -0
  651. package/build/queries/sql/Expr.cjs.map +1 -0
  652. package/build/queries/sql/Expr.d.cts +284 -0
  653. package/build/queries/sql/Expr.d.cts.map +1 -0
  654. package/build/queries/sql/Expr.d.mts +284 -0
  655. package/build/queries/sql/Expr.d.mts.map +1 -0
  656. package/build/queries/sql/Expr.js +512 -0
  657. package/build/queries/sql/Expr.js.map +1 -0
  658. package/build/queries/sql/JoinTree.cjs +72 -0
  659. package/build/queries/sql/JoinTree.cjs.map +1 -0
  660. package/build/queries/sql/JoinTree.d.cts +107 -0
  661. package/build/queries/sql/JoinTree.d.cts.map +1 -0
  662. package/build/queries/sql/JoinTree.d.mts +107 -0
  663. package/build/queries/sql/JoinTree.d.mts.map +1 -0
  664. package/build/queries/sql/JoinTree.js +71 -0
  665. package/build/queries/sql/JoinTree.js.map +1 -0
  666. package/build/queries/sql/Tables.cjs +803 -0
  667. package/build/queries/sql/Tables.cjs.map +1 -0
  668. package/build/queries/sql/Tables.d.cts +322 -0
  669. package/build/queries/sql/Tables.d.cts.map +1 -0
  670. package/build/queries/sql/Tables.d.mts +322 -0
  671. package/build/queries/sql/Tables.d.mts.map +1 -0
  672. package/build/queries/sql/Tables.js +786 -0
  673. package/build/queries/sql/Tables.js.map +1 -0
  674. package/build/queries/sql/custom.cjs +52 -0
  675. package/build/queries/sql/custom.cjs.map +1 -0
  676. package/build/queries/sql/custom.d.cts +85 -0
  677. package/build/queries/sql/custom.d.cts.map +1 -0
  678. package/build/queries/sql/custom.d.mts +85 -0
  679. package/build/queries/sql/custom.d.mts.map +1 -0
  680. package/build/queries/sql/custom.js +49 -0
  681. package/build/queries/sql/custom.js.map +1 -0
  682. package/build/queries/sql/execute.cjs +276 -0
  683. package/build/queries/sql/execute.cjs.map +1 -0
  684. package/build/queries/sql/execute.d.cts +294 -0
  685. package/build/queries/sql/execute.d.cts.map +1 -0
  686. package/build/queries/sql/execute.d.mts +294 -0
  687. package/build/queries/sql/execute.d.mts.map +1 -0
  688. package/build/queries/sql/execute.js +273 -0
  689. package/build/queries/sql/execute.js.map +1 -0
  690. package/build/queries/sql/expressions/arrayAgg.cjs +63 -0
  691. package/build/queries/sql/expressions/arrayAgg.cjs.map +1 -0
  692. package/build/queries/sql/expressions/arrayAgg.d.cts +24 -0
  693. package/build/queries/sql/expressions/arrayAgg.d.cts.map +1 -0
  694. package/build/queries/sql/expressions/arrayAgg.d.mts +24 -0
  695. package/build/queries/sql/expressions/arrayAgg.d.mts.map +1 -0
  696. package/build/queries/sql/expressions/arrayAgg.js +61 -0
  697. package/build/queries/sql/expressions/arrayAgg.js.map +1 -0
  698. package/build/queries/sql/expressions/case.cjs +71 -0
  699. package/build/queries/sql/expressions/case.cjs.map +1 -0
  700. package/build/queries/sql/expressions/case.d.cts +57 -0
  701. package/build/queries/sql/expressions/case.d.cts.map +1 -0
  702. package/build/queries/sql/expressions/case.d.mts +57 -0
  703. package/build/queries/sql/expressions/case.d.mts.map +1 -0
  704. package/build/queries/sql/expressions/case.js +68 -0
  705. package/build/queries/sql/expressions/case.js.map +1 -0
  706. package/build/queries/sql/expressions/coalesce.cjs +25 -0
  707. package/build/queries/sql/expressions/coalesce.cjs.map +1 -0
  708. package/build/queries/sql/expressions/coalesce.d.cts +21 -0
  709. package/build/queries/sql/expressions/coalesce.d.cts.map +1 -0
  710. package/build/queries/sql/expressions/coalesce.d.mts +21 -0
  711. package/build/queries/sql/expressions/coalesce.d.mts.map +1 -0
  712. package/build/queries/sql/expressions/coalesce.js +22 -0
  713. package/build/queries/sql/expressions/coalesce.js.map +1 -0
  714. package/build/queries/sql/expressions/codecs.cjs +126 -0
  715. package/build/queries/sql/expressions/codecs.cjs.map +1 -0
  716. package/build/queries/sql/expressions/codecs.d.cts +11 -0
  717. package/build/queries/sql/expressions/codecs.d.cts.map +1 -0
  718. package/build/queries/sql/expressions/codecs.d.mts +11 -0
  719. package/build/queries/sql/expressions/codecs.d.mts.map +1 -0
  720. package/build/queries/sql/expressions/codecs.js +125 -0
  721. package/build/queries/sql/expressions/codecs.js.map +1 -0
  722. package/build/queries/sql/expressions/expression.cjs +102 -0
  723. package/build/queries/sql/expressions/expression.cjs.map +1 -0
  724. package/build/queries/sql/expressions/expression.d.cts +23 -0
  725. package/build/queries/sql/expressions/expression.d.cts.map +1 -0
  726. package/build/queries/sql/expressions/expression.d.mts +23 -0
  727. package/build/queries/sql/expressions/expression.d.mts.map +1 -0
  728. package/build/queries/sql/expressions/expression.js +97 -0
  729. package/build/queries/sql/expressions/expression.js.map +1 -0
  730. package/build/queries/sql/expressions/greatest.cjs +25 -0
  731. package/build/queries/sql/expressions/greatest.cjs.map +1 -0
  732. package/build/queries/sql/expressions/greatest.d.cts +21 -0
  733. package/build/queries/sql/expressions/greatest.d.cts.map +1 -0
  734. package/build/queries/sql/expressions/greatest.d.mts +21 -0
  735. package/build/queries/sql/expressions/greatest.d.mts.map +1 -0
  736. package/build/queries/sql/expressions/greatest.js +22 -0
  737. package/build/queries/sql/expressions/greatest.js.map +1 -0
  738. package/build/queries/sql/expressions/least.cjs +25 -0
  739. package/build/queries/sql/expressions/least.cjs.map +1 -0
  740. package/build/queries/sql/expressions/least.d.cts +21 -0
  741. package/build/queries/sql/expressions/least.d.cts.map +1 -0
  742. package/build/queries/sql/expressions/least.d.mts +21 -0
  743. package/build/queries/sql/expressions/least.d.mts.map +1 -0
  744. package/build/queries/sql/expressions/least.js +22 -0
  745. package/build/queries/sql/expressions/least.js.map +1 -0
  746. package/build/queries/sql/expressions/nullIf.cjs +27 -0
  747. package/build/queries/sql/expressions/nullIf.cjs.map +1 -0
  748. package/build/queries/sql/expressions/nullIf.d.cts +22 -0
  749. package/build/queries/sql/expressions/nullIf.d.cts.map +1 -0
  750. package/build/queries/sql/expressions/nullIf.d.mts +22 -0
  751. package/build/queries/sql/expressions/nullIf.d.mts.map +1 -0
  752. package/build/queries/sql/expressions/nullIf.js +24 -0
  753. package/build/queries/sql/expressions/nullIf.js.map +1 -0
  754. package/build/queries/sql/expressions/parseExpression.cjs +75 -0
  755. package/build/queries/sql/expressions/parseExpression.cjs.map +1 -0
  756. package/build/queries/sql/expressions/parseExpression.d.cts +19 -0
  757. package/build/queries/sql/expressions/parseExpression.d.cts.map +1 -0
  758. package/build/queries/sql/expressions/parseExpression.d.mts +19 -0
  759. package/build/queries/sql/expressions/parseExpression.d.mts.map +1 -0
  760. package/build/queries/sql/expressions/parseExpression.js +70 -0
  761. package/build/queries/sql/expressions/parseExpression.js.map +1 -0
  762. package/build/queries/sql/expressions/types.cjs +1 -0
  763. package/build/queries/sql/expressions/types.d.cts +114 -0
  764. package/build/queries/sql/expressions/types.d.cts.map +1 -0
  765. package/build/queries/sql/expressions/types.d.mts +114 -0
  766. package/build/queries/sql/expressions/types.d.mts.map +1 -0
  767. package/build/queries/sql/expressions/types.js +1 -0
  768. package/build/queries/sql/keywords.cjs +136 -0
  769. package/build/queries/sql/keywords.cjs.map +1 -0
  770. package/build/queries/sql/keywords.d.cts +18 -0
  771. package/build/queries/sql/keywords.d.cts.map +1 -0
  772. package/build/queries/sql/keywords.d.mts +18 -0
  773. package/build/queries/sql/keywords.d.mts.map +1 -0
  774. package/build/queries/sql/keywords.js +132 -0
  775. package/build/queries/sql/keywords.js.map +1 -0
  776. package/build/queries/sql/query.cjs +1610 -0
  777. package/build/queries/sql/query.cjs.map +1 -0
  778. package/build/queries/sql/query.d.cts +844 -0
  779. package/build/queries/sql/query.d.cts.map +1 -0
  780. package/build/queries/sql/query.d.mts +844 -0
  781. package/build/queries/sql/query.d.mts.map +1 -0
  782. package/build/queries/sql/query.js +1592 -0
  783. package/build/queries/sql/query.js.map +1 -0
  784. package/build/queries/unnest.cjs +62 -0
  785. package/build/queries/unnest.cjs.map +1 -0
  786. package/build/queries/unnest.d.cts +16 -0
  787. package/build/queries/unnest.d.cts.map +1 -0
  788. package/build/queries/unnest.d.mts +16 -0
  789. package/build/queries/unnest.d.mts.map +1 -0
  790. package/build/queries/unnest.js +60 -0
  791. package/build/queries/unnest.js.map +1 -0
  792. package/build/queries/valueFilters.cjs +240 -0
  793. package/build/queries/valueFilters.cjs.map +1 -0
  794. package/build/queries/valueFilters.d.cts +26 -0
  795. package/build/queries/valueFilters.d.cts.map +1 -0
  796. package/build/queries/valueFilters.d.mts +26 -0
  797. package/build/queries/valueFilters.d.mts.map +1 -0
  798. package/build/queries/valueFilters.js +236 -0
  799. package/build/queries/valueFilters.js.map +1 -0
  800. package/build/reactivity/ReactionsManager.cjs +264 -0
  801. package/build/reactivity/ReactionsManager.cjs.map +1 -0
  802. package/build/reactivity/ReactionsManager.d.cts +98 -0
  803. package/build/reactivity/ReactionsManager.d.cts.map +1 -0
  804. package/build/reactivity/ReactionsManager.d.mts +98 -0
  805. package/build/reactivity/ReactionsManager.d.mts.map +1 -0
  806. package/build/reactivity/ReactionsManager.js +263 -0
  807. package/build/reactivity/ReactionsManager.js.map +1 -0
  808. package/build/reactivity/reactiveHints.cjs +328 -0
  809. package/build/reactivity/reactiveHints.cjs.map +1 -0
  810. package/build/reactivity/reactiveHints.d.cts +143 -0
  811. package/build/reactivity/reactiveHints.d.cts.map +1 -0
  812. package/build/reactivity/reactiveHints.d.mts +143 -0
  813. package/build/reactivity/reactiveHints.d.mts.map +1 -0
  814. package/build/reactivity/reactiveHints.js +321 -0
  815. package/build/reactivity/reactiveHints.js.map +1 -0
  816. package/build/relations/AbstractPropertyImpl.cjs +16 -0
  817. package/build/relations/AbstractPropertyImpl.cjs.map +1 -0
  818. package/build/relations/AbstractPropertyImpl.d.cts +11 -0
  819. package/build/relations/AbstractPropertyImpl.d.cts.map +1 -0
  820. package/build/relations/AbstractPropertyImpl.d.mts +11 -0
  821. package/build/relations/AbstractPropertyImpl.d.mts.map +1 -0
  822. package/build/relations/AbstractPropertyImpl.js +13 -13
  823. package/build/relations/AbstractPropertyImpl.js.map +1 -1
  824. package/build/relations/AbstractRelationImpl.cjs +15 -0
  825. package/build/relations/AbstractRelationImpl.cjs.map +1 -0
  826. package/build/relations/AbstractRelationImpl.d.cts +43 -0
  827. package/build/relations/AbstractRelationImpl.d.cts.map +1 -0
  828. package/build/relations/AbstractRelationImpl.d.mts +43 -0
  829. package/build/relations/AbstractRelationImpl.d.mts.map +1 -0
  830. package/build/relations/AbstractRelationImpl.js +12 -17
  831. package/build/relations/AbstractRelationImpl.js.map +1 -1
  832. package/build/relations/AsyncProperty.cjs +75 -0
  833. package/build/relations/AsyncProperty.cjs.map +1 -0
  834. package/build/relations/AsyncProperty.d.cts +40 -0
  835. package/build/relations/AsyncProperty.d.cts.map +1 -0
  836. package/build/relations/AsyncProperty.d.mts +40 -0
  837. package/build/relations/AsyncProperty.d.mts.map +1 -0
  838. package/build/relations/AsyncProperty.js +61 -70
  839. package/build/relations/AsyncProperty.js.map +1 -1
  840. package/build/relations/AsyncReactiveField.cjs +110 -0
  841. package/build/relations/AsyncReactiveField.cjs.map +1 -0
  842. package/build/relations/AsyncReactiveField.d.cts +50 -0
  843. package/build/relations/AsyncReactiveField.d.cts.map +1 -0
  844. package/build/relations/AsyncReactiveField.d.mts +50 -0
  845. package/build/relations/AsyncReactiveField.d.mts.map +1 -0
  846. package/build/relations/AsyncReactiveField.js +97 -116
  847. package/build/relations/AsyncReactiveField.js.map +1 -1
  848. package/build/relations/Collection.cjs +23 -0
  849. package/build/relations/Collection.cjs.map +1 -0
  850. package/build/relations/Collection.d.cts +37 -0
  851. package/build/relations/Collection.d.cts.map +1 -0
  852. package/build/relations/Collection.d.mts +37 -0
  853. package/build/relations/Collection.d.mts.map +1 -0
  854. package/build/relations/Collection.js +14 -11
  855. package/build/relations/Collection.js.map +1 -1
  856. package/build/relations/CustomCollection.cjs +144 -0
  857. package/build/relations/CustomCollection.cjs.map +1 -0
  858. package/build/relations/CustomCollection.d.cts +74 -0
  859. package/build/relations/CustomCollection.d.cts.map +1 -0
  860. package/build/relations/CustomCollection.d.mts +74 -0
  861. package/build/relations/CustomCollection.d.mts.map +1 -0
  862. package/build/relations/CustomCollection.js +138 -162
  863. package/build/relations/CustomCollection.js.map +1 -1
  864. package/build/relations/CustomReference.cjs +142 -0
  865. package/build/relations/CustomReference.cjs.map +1 -0
  866. package/build/relations/CustomReference.d.cts +76 -0
  867. package/build/relations/CustomReference.d.cts.map +1 -0
  868. package/build/relations/CustomReference.d.mts +76 -0
  869. package/build/relations/CustomReference.d.mts.map +1 -0
  870. package/build/relations/CustomReference.js +135 -147
  871. package/build/relations/CustomReference.js.map +1 -1
  872. package/build/relations/EnumCollection.cjs +178 -0
  873. package/build/relations/EnumCollection.cjs.map +1 -0
  874. package/build/relations/EnumCollection.d.cts +86 -0
  875. package/build/relations/EnumCollection.d.cts.map +1 -0
  876. package/build/relations/EnumCollection.d.mts +86 -0
  877. package/build/relations/EnumCollection.d.mts.map +1 -0
  878. package/build/relations/EnumCollection.js +172 -207
  879. package/build/relations/EnumCollection.js.map +1 -1
  880. package/build/relations/LargeCollection.cjs +4 -0
  881. package/build/relations/LargeCollection.d.cts +22 -0
  882. package/build/relations/LargeCollection.d.cts.map +1 -0
  883. package/build/relations/LargeCollection.d.mts +22 -0
  884. package/build/relations/LargeCollection.d.mts.map +1 -0
  885. package/build/relations/LargeCollection.js +4 -3
  886. package/build/relations/LazyField.cjs +140 -0
  887. package/build/relations/LazyField.cjs.map +1 -0
  888. package/build/relations/LazyField.d.cts +51 -0
  889. package/build/relations/LazyField.d.cts.map +1 -0
  890. package/build/relations/LazyField.d.mts +51 -0
  891. package/build/relations/LazyField.d.mts.map +1 -0
  892. package/build/relations/LazyField.js +134 -0
  893. package/build/relations/LazyField.js.map +1 -0
  894. package/build/relations/ManyToManyCollection.cjs +421 -0
  895. package/build/relations/ManyToManyCollection.cjs.map +1 -0
  896. package/build/relations/ManyToManyCollection.d.cts +59 -0
  897. package/build/relations/ManyToManyCollection.d.cts.map +1 -0
  898. package/build/relations/ManyToManyCollection.d.mts +59 -0
  899. package/build/relations/ManyToManyCollection.d.mts.map +1 -0
  900. package/build/relations/ManyToManyCollection.js +411 -471
  901. package/build/relations/ManyToManyCollection.js.map +1 -1
  902. package/build/relations/ManyToManyLargeCollection.cjs +91 -0
  903. package/build/relations/ManyToManyLargeCollection.cjs.map +1 -0
  904. package/build/relations/ManyToManyLargeCollection.d.cts +34 -0
  905. package/build/relations/ManyToManyLargeCollection.d.cts.map +1 -0
  906. package/build/relations/ManyToManyLargeCollection.d.mts +34 -0
  907. package/build/relations/ManyToManyLargeCollection.d.mts.map +1 -0
  908. package/build/relations/ManyToManyLargeCollection.js +85 -118
  909. package/build/relations/ManyToManyLargeCollection.js.map +1 -1
  910. package/build/relations/ManyToOneReference.cjs +364 -0
  911. package/build/relations/ManyToOneReference.cjs.map +1 -0
  912. package/build/relations/ManyToOneReference.d.cts +121 -0
  913. package/build/relations/ManyToOneReference.d.cts.map +1 -0
  914. package/build/relations/ManyToOneReference.d.mts +121 -0
  915. package/build/relations/ManyToOneReference.d.mts.map +1 -0
  916. package/build/relations/ManyToOneReference.js +344 -411
  917. package/build/relations/ManyToOneReference.js.map +1 -1
  918. package/build/relations/OneToManyCollection.cjs +492 -0
  919. package/build/relations/OneToManyCollection.cjs.map +1 -0
  920. package/build/relations/OneToManyCollection.d.cts +69 -0
  921. package/build/relations/OneToManyCollection.d.cts.map +1 -0
  922. package/build/relations/OneToManyCollection.d.mts +69 -0
  923. package/build/relations/OneToManyCollection.d.mts.map +1 -0
  924. package/build/relations/OneToManyCollection.js +480 -579
  925. package/build/relations/OneToManyCollection.js.map +1 -1
  926. package/build/relations/OneToManyLargeCollection.cjs +85 -0
  927. package/build/relations/OneToManyLargeCollection.cjs.map +1 -0
  928. package/build/relations/OneToManyLargeCollection.d.cts +29 -0
  929. package/build/relations/OneToManyLargeCollection.d.cts.map +1 -0
  930. package/build/relations/OneToManyLargeCollection.d.mts +29 -0
  931. package/build/relations/OneToManyLargeCollection.d.mts.map +1 -0
  932. package/build/relations/OneToManyLargeCollection.js +79 -99
  933. package/build/relations/OneToManyLargeCollection.js.map +1 -1
  934. package/build/relations/OneToOneReference.cjs +209 -0
  935. package/build/relations/OneToOneReference.cjs.map +1 -0
  936. package/build/relations/OneToOneReference.d.cts +97 -0
  937. package/build/relations/OneToOneReference.d.cts.map +1 -0
  938. package/build/relations/OneToOneReference.d.mts +97 -0
  939. package/build/relations/OneToOneReference.d.mts.map +1 -0
  940. package/build/relations/OneToOneReference.js +193 -221
  941. package/build/relations/OneToOneReference.js.map +1 -1
  942. package/build/relations/PolymorphicReference.cjs +210 -0
  943. package/build/relations/PolymorphicReference.cjs.map +1 -0
  944. package/build/relations/PolymorphicReference.d.cts +93 -0
  945. package/build/relations/PolymorphicReference.d.cts.map +1 -0
  946. package/build/relations/PolymorphicReference.d.mts +93 -0
  947. package/build/relations/PolymorphicReference.d.mts.map +1 -0
  948. package/build/relations/PolymorphicReference.js +200 -237
  949. package/build/relations/PolymorphicReference.js.map +1 -1
  950. package/build/relations/PropertySymbols.cjs +7 -0
  951. package/build/relations/PropertySymbols.cjs.map +1 -0
  952. package/build/relations/PropertySymbols.d.cts +5 -0
  953. package/build/relations/PropertySymbols.d.cts.map +1 -0
  954. package/build/relations/PropertySymbols.d.mts +5 -0
  955. package/build/relations/PropertySymbols.d.mts.map +1 -0
  956. package/build/relations/PropertySymbols.js +6 -0
  957. package/build/relations/PropertySymbols.js.map +1 -0
  958. package/build/relations/ReactiveField.cjs +114 -0
  959. package/build/relations/ReactiveField.cjs.map +1 -0
  960. package/build/relations/ReactiveField.d.cts +88 -0
  961. package/build/relations/ReactiveField.d.cts.map +1 -0
  962. package/build/relations/ReactiveField.d.mts +88 -0
  963. package/build/relations/ReactiveField.d.mts.map +1 -0
  964. package/build/relations/ReactiveField.js +104 -137
  965. package/build/relations/ReactiveField.js.map +1 -1
  966. package/build/relations/ReactiveGetter.cjs +40 -0
  967. package/build/relations/ReactiveGetter.cjs.map +1 -0
  968. package/build/relations/ReactiveGetter.d.cts +33 -0
  969. package/build/relations/ReactiveGetter.d.cts.map +1 -0
  970. package/build/relations/ReactiveGetter.d.mts +33 -0
  971. package/build/relations/ReactiveGetter.d.mts.map +1 -0
  972. package/build/relations/ReactiveGetter.js +30 -31
  973. package/build/relations/ReactiveGetter.js.map +1 -1
  974. package/build/relations/ReactiveManyToMany.cjs +198 -0
  975. package/build/relations/ReactiveManyToMany.cjs.map +1 -0
  976. package/build/relations/ReactiveManyToMany.d.cts +63 -0
  977. package/build/relations/ReactiveManyToMany.d.cts.map +1 -0
  978. package/build/relations/ReactiveManyToMany.d.mts +63 -0
  979. package/build/relations/ReactiveManyToMany.d.mts.map +1 -0
  980. package/build/relations/ReactiveManyToMany.js +187 -238
  981. package/build/relations/ReactiveManyToMany.js.map +1 -1
  982. package/build/relations/ReactiveManyToManyOtherSide.cjs +148 -0
  983. package/build/relations/ReactiveManyToManyOtherSide.cjs.map +1 -0
  984. package/build/relations/ReactiveManyToManyOtherSide.d.cts +53 -0
  985. package/build/relations/ReactiveManyToManyOtherSide.d.cts.map +1 -0
  986. package/build/relations/ReactiveManyToManyOtherSide.d.mts +53 -0
  987. package/build/relations/ReactiveManyToManyOtherSide.d.mts.map +1 -0
  988. package/build/relations/ReactiveManyToManyOtherSide.js +139 -152
  989. package/build/relations/ReactiveManyToManyOtherSide.js.map +1 -1
  990. package/build/relations/ReactiveReference.cjs +336 -0
  991. package/build/relations/ReactiveReference.cjs.map +1 -0
  992. package/build/relations/ReactiveReference.d.cts +124 -0
  993. package/build/relations/ReactiveReference.d.cts.map +1 -0
  994. package/build/relations/ReactiveReference.d.mts +124 -0
  995. package/build/relations/ReactiveReference.d.mts.map +1 -0
  996. package/build/relations/ReactiveReference.js +321 -385
  997. package/build/relations/ReactiveReference.js.map +1 -1
  998. package/build/relations/ReadOnlyCollection.cjs +18 -0
  999. package/build/relations/ReadOnlyCollection.cjs.map +1 -0
  1000. package/build/relations/ReadOnlyCollection.d.cts +22 -0
  1001. package/build/relations/ReadOnlyCollection.d.cts.map +1 -0
  1002. package/build/relations/ReadOnlyCollection.d.mts +22 -0
  1003. package/build/relations/ReadOnlyCollection.d.mts.map +1 -0
  1004. package/build/relations/ReadOnlyCollection.js +9 -9
  1005. package/build/relations/ReadOnlyCollection.js.map +1 -1
  1006. package/build/relations/RecursiveCollection.cjs +386 -0
  1007. package/build/relations/RecursiveCollection.cjs.map +1 -0
  1008. package/build/relations/RecursiveCollection.d.cts +112 -0
  1009. package/build/relations/RecursiveCollection.d.cts.map +1 -0
  1010. package/build/relations/RecursiveCollection.d.mts +112 -0
  1011. package/build/relations/RecursiveCollection.d.mts.map +1 -0
  1012. package/build/relations/RecursiveCollection.js +367 -427
  1013. package/build/relations/RecursiveCollection.js.map +1 -1
  1014. package/build/relations/RecursiveCycleError.cjs +17 -0
  1015. package/build/relations/RecursiveCycleError.cjs.map +1 -0
  1016. package/build/relations/RecursiveCycleError.d.cts +15 -0
  1017. package/build/relations/RecursiveCycleError.d.cts.map +1 -0
  1018. package/build/relations/RecursiveCycleError.d.mts +15 -0
  1019. package/build/relations/RecursiveCycleError.d.mts.map +1 -0
  1020. package/build/relations/RecursiveCycleError.js +14 -13
  1021. package/build/relations/RecursiveCycleError.js.map +1 -1
  1022. package/build/relations/Reference.cjs +25 -0
  1023. package/build/relations/Reference.cjs.map +1 -0
  1024. package/build/relations/Reference.d.cts +39 -0
  1025. package/build/relations/Reference.d.cts.map +1 -0
  1026. package/build/relations/Reference.d.mts +39 -0
  1027. package/build/relations/Reference.d.mts.map +1 -0
  1028. package/build/relations/Reference.js +15 -14
  1029. package/build/relations/Reference.js.map +1 -1
  1030. package/build/relations/ReferenceSymbols.cjs +7 -0
  1031. package/build/relations/ReferenceSymbols.cjs.map +1 -0
  1032. package/build/relations/ReferenceSymbols.d.cts +5 -0
  1033. package/build/relations/ReferenceSymbols.d.cts.map +1 -0
  1034. package/build/relations/ReferenceSymbols.d.mts +5 -0
  1035. package/build/relations/ReferenceSymbols.d.mts.map +1 -0
  1036. package/build/relations/ReferenceSymbols.js +6 -0
  1037. package/build/relations/ReferenceSymbols.js.map +1 -0
  1038. package/build/relations/Relation.cjs +17 -0
  1039. package/build/relations/Relation.cjs.map +1 -0
  1040. package/build/relations/Relation.d.cts +16 -0
  1041. package/build/relations/Relation.d.cts.map +1 -0
  1042. package/build/relations/Relation.d.mts +16 -0
  1043. package/build/relations/Relation.d.mts.map +1 -0
  1044. package/build/relations/Relation.js +10 -8
  1045. package/build/relations/Relation.js.map +1 -1
  1046. package/build/relations/RelationSymbols.cjs +9 -0
  1047. package/build/relations/RelationSymbols.cjs.map +1 -0
  1048. package/build/relations/RelationSymbols.d.cts +6 -0
  1049. package/build/relations/RelationSymbols.d.cts.map +1 -0
  1050. package/build/relations/RelationSymbols.d.mts +6 -0
  1051. package/build/relations/RelationSymbols.d.mts.map +1 -0
  1052. package/build/relations/RelationSymbols.js +7 -0
  1053. package/build/relations/RelationSymbols.js.map +1 -0
  1054. package/build/relations/hasAsyncMethod.cjs +47 -0
  1055. package/build/relations/hasAsyncMethod.cjs.map +1 -0
  1056. package/build/relations/hasAsyncMethod.d.cts +29 -0
  1057. package/build/relations/hasAsyncMethod.d.cts.map +1 -0
  1058. package/build/relations/hasAsyncMethod.d.mts +29 -0
  1059. package/build/relations/hasAsyncMethod.d.mts.map +1 -0
  1060. package/build/relations/hasAsyncMethod.js +40 -43
  1061. package/build/relations/hasAsyncMethod.js.map +1 -1
  1062. package/build/relations/hasManyDerived.cjs +35 -0
  1063. package/build/relations/hasManyDerived.cjs.map +1 -0
  1064. package/build/relations/hasManyDerived.d.cts +25 -0
  1065. package/build/relations/hasManyDerived.d.cts.map +1 -0
  1066. package/build/relations/hasManyDerived.d.mts +25 -0
  1067. package/build/relations/hasManyDerived.d.mts.map +1 -0
  1068. package/build/relations/hasManyDerived.js +30 -28
  1069. package/build/relations/hasManyDerived.js.map +1 -1
  1070. package/build/relations/hasManyThrough.cjs +29 -0
  1071. package/build/relations/hasManyThrough.cjs.map +1 -0
  1072. package/build/relations/hasManyThrough.d.cts +16 -0
  1073. package/build/relations/hasManyThrough.d.cts.map +1 -0
  1074. package/build/relations/hasManyThrough.d.mts +16 -0
  1075. package/build/relations/hasManyThrough.d.mts.map +1 -0
  1076. package/build/relations/hasManyThrough.js +24 -20
  1077. package/build/relations/hasManyThrough.js.map +1 -1
  1078. package/build/relations/hasOneDerived.cjs +32 -0
  1079. package/build/relations/hasOneDerived.cjs.map +1 -0
  1080. package/build/relations/hasOneDerived.d.cts +15 -0
  1081. package/build/relations/hasOneDerived.d.cts.map +1 -0
  1082. package/build/relations/hasOneDerived.d.mts +15 -0
  1083. package/build/relations/hasOneDerived.d.mts.map +1 -0
  1084. package/build/relations/hasOneDerived.js +27 -20
  1085. package/build/relations/hasOneDerived.js.map +1 -1
  1086. package/build/relations/hasOneThrough.cjs +31 -0
  1087. package/build/relations/hasOneThrough.cjs.map +1 -0
  1088. package/build/relations/hasOneThrough.d.cts +16 -0
  1089. package/build/relations/hasOneThrough.d.cts.map +1 -0
  1090. package/build/relations/hasOneThrough.d.mts +16 -0
  1091. package/build/relations/hasOneThrough.d.mts.map +1 -0
  1092. package/build/relations/hasOneThrough.js +26 -22
  1093. package/build/relations/hasOneThrough.js.map +1 -1
  1094. package/build/relations/hasProperty.cjs +109 -0
  1095. package/build/relations/hasProperty.cjs.map +1 -0
  1096. package/build/relations/hasProperty.d.cts +53 -0
  1097. package/build/relations/hasProperty.d.cts.map +1 -0
  1098. package/build/relations/hasProperty.d.mts +53 -0
  1099. package/build/relations/hasProperty.d.mts.map +1 -0
  1100. package/build/relations/hasProperty.js +90 -95
  1101. package/build/relations/hasProperty.js.map +1 -1
  1102. package/build/relations/index.cjs +99 -0
  1103. package/build/relations/index.d.cts +32 -0
  1104. package/build/relations/index.d.mts +32 -0
  1105. package/build/relations/index.js +31 -97
  1106. package/build/relations/isCascadeDelete.cjs +11 -0
  1107. package/build/relations/isCascadeDelete.cjs.map +1 -0
  1108. package/build/relations/isCascadeDelete.d.cts +7 -0
  1109. package/build/relations/isCascadeDelete.d.cts.map +1 -0
  1110. package/build/relations/isCascadeDelete.d.mts +7 -0
  1111. package/build/relations/isCascadeDelete.d.mts.map +1 -0
  1112. package/build/relations/isCascadeDelete.js +10 -0
  1113. package/build/relations/isCascadeDelete.js.map +1 -0
  1114. package/build/resurrection.cjs +74 -0
  1115. package/build/resurrection.cjs.map +1 -0
  1116. package/build/resurrection.d.cts +13 -0
  1117. package/build/resurrection.d.cts.map +1 -0
  1118. package/build/resurrection.d.mts +13 -0
  1119. package/build/resurrection.d.mts.map +1 -0
  1120. package/build/resurrection.js +48 -69
  1121. package/build/resurrection.js.map +1 -1
  1122. package/build/rules.cjs +227 -0
  1123. package/build/rules.cjs.map +1 -0
  1124. package/build/rules.d.cts +145 -0
  1125. package/build/rules.d.cts.map +1 -0
  1126. package/build/rules.d.mts +145 -0
  1127. package/build/rules.d.mts.map +1 -0
  1128. package/build/rules.js +189 -204
  1129. package/build/rules.js.map +1 -1
  1130. package/build/runtimeConfig.cjs +25 -0
  1131. package/build/runtimeConfig.cjs.map +1 -0
  1132. package/build/runtimeConfig.d.cts +24 -0
  1133. package/build/runtimeConfig.d.cts.map +1 -0
  1134. package/build/runtimeConfig.d.mts +24 -0
  1135. package/build/runtimeConfig.d.mts.map +1 -0
  1136. package/build/runtimeConfig.js +16 -12
  1137. package/build/runtimeConfig.js.map +1 -1
  1138. package/build/serde/TypeInfo.cjs +80 -0
  1139. package/build/serde/TypeInfo.cjs.map +1 -0
  1140. package/build/serde/TypeInfo.d.cts +57 -0
  1141. package/build/serde/TypeInfo.d.cts.map +1 -0
  1142. package/build/serde/TypeInfo.d.mts +57 -0
  1143. package/build/serde/TypeInfo.d.mts.map +1 -0
  1144. package/build/serde/TypeInfo.js +78 -0
  1145. package/build/serde/TypeInfo.js.map +1 -0
  1146. package/build/serde/columns.cjs +63 -0
  1147. package/build/serde/columns.cjs.map +1 -0
  1148. package/build/serde/columns.d.cts +38 -0
  1149. package/build/serde/columns.d.cts.map +1 -0
  1150. package/build/serde/columns.d.mts +38 -0
  1151. package/build/serde/columns.d.mts.map +1 -0
  1152. package/build/serde/columns.js +62 -0
  1153. package/build/serde/columns.js.map +1 -0
  1154. package/build/serde/fieldSerde.cjs +188 -0
  1155. package/build/serde/fieldSerde.cjs.map +1 -0
  1156. package/build/serde/fieldSerde.d.cts +87 -0
  1157. package/build/serde/fieldSerde.d.cts.map +1 -0
  1158. package/build/serde/fieldSerde.d.mts +87 -0
  1159. package/build/serde/fieldSerde.d.mts.map +1 -0
  1160. package/build/serde/fieldSerde.js +182 -0
  1161. package/build/serde/fieldSerde.js.map +1 -0
  1162. package/build/serde/serde.cjs +499 -0
  1163. package/build/serde/serde.cjs.map +1 -0
  1164. package/build/serde/serde.d.cts +248 -0
  1165. package/build/serde/serde.d.cts.map +1 -0
  1166. package/build/serde/serde.d.mts +248 -0
  1167. package/build/serde/serde.d.mts.map +1 -0
  1168. package/build/serde/serde.js +485 -0
  1169. package/build/serde/serde.js.map +1 -0
  1170. package/build/serde/temporal.cjs +57 -0
  1171. package/build/serde/temporal.cjs.map +1 -0
  1172. package/build/serde/temporal.d.cts +44 -0
  1173. package/build/serde/temporal.d.cts.map +1 -0
  1174. package/build/serde/temporal.d.mts +44 -0
  1175. package/build/serde/temporal.d.mts.map +1 -0
  1176. package/build/serde/temporal.js +55 -0
  1177. package/build/serde/temporal.js.map +1 -0
  1178. package/build/serde/temporalMappers.cjs +62 -0
  1179. package/build/serde/temporalMappers.cjs.map +1 -0
  1180. package/build/serde/temporalMappers.d.cts +36 -0
  1181. package/build/serde/temporalMappers.d.cts.map +1 -0
  1182. package/build/serde/temporalMappers.d.mts +36 -0
  1183. package/build/serde/temporalMappers.d.mts.map +1 -0
  1184. package/build/serde/temporalMappers.js +58 -0
  1185. package/build/serde/temporalMappers.js.map +1 -0
  1186. package/build/trusted.cjs +16 -0
  1187. package/build/trusted.cjs.map +1 -0
  1188. package/build/trusted.d.cts +8 -0
  1189. package/build/trusted.d.cts.map +1 -0
  1190. package/build/trusted.d.mts +8 -0
  1191. package/build/trusted.d.mts.map +1 -0
  1192. package/build/trusted.js +8 -8
  1193. package/build/trusted.js.map +1 -1
  1194. package/build/typeMap.cjs +3 -0
  1195. package/build/typeMap.d.cts +88 -0
  1196. package/build/typeMap.d.cts.map +1 -0
  1197. package/build/typeMap.d.mts +88 -0
  1198. package/build/typeMap.d.mts.map +1 -0
  1199. package/build/typeMap.js +3 -3
  1200. package/build/upsert.cjs +175 -0
  1201. package/build/upsert.cjs.map +1 -0
  1202. package/build/upsert.d.cts +42 -0
  1203. package/build/upsert.d.cts.map +1 -0
  1204. package/build/upsert.d.mts +42 -0
  1205. package/build/upsert.d.mts.map +1 -0
  1206. package/build/upsert.js +159 -274
  1207. package/build/upsert.js.map +1 -1
  1208. package/build/utils.cjs +204 -0
  1209. package/build/utils.cjs.map +1 -0
  1210. package/build/utils.d.cts +65 -0
  1211. package/build/utils.d.cts.map +1 -0
  1212. package/build/utils.d.mts +65 -0
  1213. package/build/utils.d.mts.map +1 -0
  1214. package/build/utils.js +123 -192
  1215. package/build/utils.js.map +1 -1
  1216. package/package.json +34 -14
  1217. package/build/AliasAssigner.d.ts +0 -10
  1218. package/build/AliasAssigner.d.ts.map +0 -1
  1219. package/build/AliasAssigner.js +0 -39
  1220. package/build/AliasAssigner.js.map +0 -1
  1221. package/build/Aliases.d.ts +0 -117
  1222. package/build/Aliases.d.ts.map +0 -1
  1223. package/build/Aliases.js +0 -457
  1224. package/build/Aliases.js.map +0 -1
  1225. package/build/BaseEntity.d.ts +0 -68
  1226. package/build/BaseEntity.d.ts.map +0 -1
  1227. package/build/ConditionBuilder.d.ts +0 -29
  1228. package/build/ConditionBuilder.d.ts.map +0 -1
  1229. package/build/ConditionBuilder.js +0 -112
  1230. package/build/ConditionBuilder.js.map +0 -1
  1231. package/build/Entity.d.ts +0 -39
  1232. package/build/Entity.d.ts.map +0 -1
  1233. package/build/EntityFields.d.ts +0 -37
  1234. package/build/EntityFields.d.ts.map +0 -1
  1235. package/build/EntityFields.js.map +0 -1
  1236. package/build/EntityFilter.d.ts +0 -134
  1237. package/build/EntityFilter.d.ts.map +0 -1
  1238. package/build/EntityFilter.js +0 -21
  1239. package/build/EntityFilter.js.map +0 -1
  1240. package/build/EntityGraphQLFilter.d.ts +0 -56
  1241. package/build/EntityGraphQLFilter.d.ts.map +0 -1
  1242. package/build/EntityGraphQLFilter.js +0 -53
  1243. package/build/EntityGraphQLFilter.js.map +0 -1
  1244. package/build/EntityManager.d.ts +0 -740
  1245. package/build/EntityManager.d.ts.map +0 -1
  1246. package/build/EntityMetadata.d.ts +0 -233
  1247. package/build/EntityMetadata.d.ts.map +0 -1
  1248. package/build/EnumMetadata.d.ts +0 -15
  1249. package/build/EnumMetadata.d.ts.map +0 -1
  1250. package/build/EnumMetadata.js.map +0 -1
  1251. package/build/FlushLock.d.ts +0 -26
  1252. package/build/FlushLock.d.ts.map +0 -1
  1253. package/build/FlushLock.js +0 -57
  1254. package/build/FlushLock.js.map +0 -1
  1255. package/build/HintTree.d.ts +0 -42
  1256. package/build/HintTree.d.ts.map +0 -1
  1257. package/build/HintTree.js +0 -64
  1258. package/build/HintTree.js.map +0 -1
  1259. package/build/IndexManager.d.ts +0 -31
  1260. package/build/IndexManager.d.ts.map +0 -1
  1261. package/build/InstanceData.d.ts +0 -79
  1262. package/build/InstanceData.d.ts.map +0 -1
  1263. package/build/IsLoadedCache.d.ts +0 -32
  1264. package/build/IsLoadedCache.d.ts.map +0 -1
  1265. package/build/IsLoadedCache.js +0 -91
  1266. package/build/IsLoadedCache.js.map +0 -1
  1267. package/build/JoinRows.d.ts +0 -117
  1268. package/build/JoinRows.d.ts.map +0 -1
  1269. package/build/JoinRows.js +0 -320
  1270. package/build/JoinRows.js.map +0 -1
  1271. package/build/PendingChanges.d.ts +0 -26
  1272. package/build/PendingChanges.d.ts.map +0 -1
  1273. package/build/PendingChanges.js +0 -3
  1274. package/build/PendingChanges.js.map +0 -1
  1275. package/build/PluginManager.d.ts +0 -102
  1276. package/build/PluginManager.d.ts.map +0 -1
  1277. package/build/QueryParser.collectionJoins.d.ts +0 -27
  1278. package/build/QueryParser.collectionJoins.d.ts.map +0 -1
  1279. package/build/QueryParser.collectionJoins.js +0 -466
  1280. package/build/QueryParser.collectionJoins.js.map +0 -1
  1281. package/build/QueryParser.collectionJoins.test.d.ts +0 -2
  1282. package/build/QueryParser.collectionJoins.test.d.ts.map +0 -1
  1283. package/build/QueryParser.collectionJoins.test.js +0 -772
  1284. package/build/QueryParser.collectionJoins.test.js.map +0 -1
  1285. package/build/QueryParser.d.ts +0 -336
  1286. package/build/QueryParser.d.ts.map +0 -1
  1287. package/build/QueryParser.js +0 -965
  1288. package/build/QueryParser.js.map +0 -1
  1289. package/build/QueryParser.pruning.d.ts +0 -7
  1290. package/build/QueryParser.pruning.d.ts.map +0 -1
  1291. package/build/QueryParser.pruning.js +0 -195
  1292. package/build/QueryParser.pruning.js.map +0 -1
  1293. package/build/QueryParser.pruning.test.d.ts +0 -2
  1294. package/build/QueryParser.pruning.test.d.ts.map +0 -1
  1295. package/build/QueryParser.pruning.test.js +0 -106
  1296. package/build/QueryParser.pruning.test.js.map +0 -1
  1297. package/build/QueryParser.test.d.ts +0 -2
  1298. package/build/QueryParser.test.d.ts.map +0 -1
  1299. package/build/QueryParser.test.js +0 -27
  1300. package/build/QueryParser.test.js.map +0 -1
  1301. package/build/QueryVisitor.d.ts +0 -19
  1302. package/build/QueryVisitor.d.ts.map +0 -1
  1303. package/build/QueryVisitor.js +0 -106
  1304. package/build/QueryVisitor.js.map +0 -1
  1305. package/build/ReactionsManager.d.ts +0 -85
  1306. package/build/ReactionsManager.d.ts.map +0 -1
  1307. package/build/ReactionsManager.js +0 -315
  1308. package/build/ReactionsManager.js.map +0 -1
  1309. package/build/Todo.d.ts +0 -35
  1310. package/build/Todo.d.ts.map +0 -1
  1311. package/build/Todo.js +0 -73
  1312. package/build/Todo.js.map +0 -1
  1313. package/build/batchloaders/BatchLoader.d.ts +0 -14
  1314. package/build/batchloaders/BatchLoader.d.ts.map +0 -1
  1315. package/build/batchloaders/enumCollectionBatchLoader.d.ts +0 -7
  1316. package/build/batchloaders/enumCollectionBatchLoader.d.ts.map +0 -1
  1317. package/build/batchloaders/loadBatchLoader.d.ts +0 -17
  1318. package/build/batchloaders/loadBatchLoader.d.ts.map +0 -1
  1319. package/build/batchloaders/manyToManyBatchLoader.d.ts +0 -7
  1320. package/build/batchloaders/manyToManyBatchLoader.d.ts.map +0 -1
  1321. package/build/batchloaders/oneToManyBatchLoader.d.ts +0 -7
  1322. package/build/batchloaders/oneToManyBatchLoader.d.ts.map +0 -1
  1323. package/build/batchloaders/oneToOneBatchLoader.d.ts +0 -7
  1324. package/build/batchloaders/oneToOneBatchLoader.d.ts.map +0 -1
  1325. package/build/batchloaders/populateBatchLoader.d.ts +0 -13
  1326. package/build/batchloaders/populateBatchLoader.d.ts.map +0 -1
  1327. package/build/batchloaders/recursiveChildrenBatchLoader.d.ts +0 -7
  1328. package/build/batchloaders/recursiveChildrenBatchLoader.d.ts.map +0 -1
  1329. package/build/batchloaders/recursiveM2mBatchLoader.d.ts +0 -7
  1330. package/build/batchloaders/recursiveM2mBatchLoader.d.ts.map +0 -1
  1331. package/build/batchloaders/recursiveParentsBatchLoader.d.ts +0 -7
  1332. package/build/batchloaders/recursiveParentsBatchLoader.d.ts.map +0 -1
  1333. package/build/changes.d.ts +0 -92
  1334. package/build/changes.d.ts.map +0 -1
  1335. package/build/config.d.ts +0 -250
  1336. package/build/config.d.ts.map +0 -1
  1337. package/build/config.test.d.ts +0 -2
  1338. package/build/config.test.d.ts.map +0 -1
  1339. package/build/config.test.js +0 -53
  1340. package/build/config.test.js.map +0 -1
  1341. package/build/configure.d.ts +0 -15
  1342. package/build/configure.d.ts.map +0 -1
  1343. package/build/dataloaders/fastWhereFilterHash.d.ts +0 -15
  1344. package/build/dataloaders/fastWhereFilterHash.d.ts.map +0 -1
  1345. package/build/dataloaders/fastWhereFilterHash.test.d.ts +0 -2
  1346. package/build/dataloaders/fastWhereFilterHash.test.d.ts.map +0 -1
  1347. package/build/dataloaders/fastWhereFilterHash.test.js +0 -59
  1348. package/build/dataloaders/fastWhereFilterHash.test.js.map +0 -1
  1349. package/build/dataloaders/findByUniqueDataLoader.d.ts +0 -7
  1350. package/build/dataloaders/findByUniqueDataLoader.d.ts.map +0 -1
  1351. package/build/dataloaders/findCountDataLoader.d.ts +0 -16
  1352. package/build/dataloaders/findCountDataLoader.d.ts.map +0 -1
  1353. package/build/dataloaders/findDataLoader.d.ts +0 -76
  1354. package/build/dataloaders/findDataLoader.d.ts.map +0 -1
  1355. package/build/dataloaders/findIdsDataLoader.d.ts +0 -6
  1356. package/build/dataloaders/findIdsDataLoader.d.ts.map +0 -1
  1357. package/build/dataloaders/findOrCreateDataLoader.d.ts +0 -13
  1358. package/build/dataloaders/findOrCreateDataLoader.d.ts.map +0 -1
  1359. package/build/dataloaders/findPaginatedDataLoader.d.ts +0 -7
  1360. package/build/dataloaders/findPaginatedDataLoader.d.ts.map +0 -1
  1361. package/build/dataloaders/lensDataLoader.d.ts +0 -12
  1362. package/build/dataloaders/lensDataLoader.d.ts.map +0 -1
  1363. package/build/dataloaders/manyToManyFindDataLoader.d.ts +0 -8
  1364. package/build/dataloaders/manyToManyFindDataLoader.d.ts.map +0 -1
  1365. package/build/dataloaders/oneToManyFindDataLoader.d.ts +0 -8
  1366. package/build/dataloaders/oneToManyFindDataLoader.d.ts.map +0 -1
  1367. package/build/defaults.d.ts +0 -54
  1368. package/build/defaults.d.ts.map +0 -1
  1369. package/build/driverApi.d.ts +0 -19
  1370. package/build/driverApi.d.ts.map +0 -1
  1371. package/build/driverApi.js +0 -17
  1372. package/build/driverApi.js.map +0 -1
  1373. package/build/drivers/Driver.d.ts +0 -26
  1374. package/build/drivers/Driver.d.ts.map +0 -1
  1375. package/build/drivers/Driver.js.map +0 -1
  1376. package/build/drivers/EntityWriter.d.ts +0 -64
  1377. package/build/drivers/EntityWriter.d.ts.map +0 -1
  1378. package/build/drivers/IdAssigner.d.ts +0 -48
  1379. package/build/drivers/IdAssigner.d.ts.map +0 -1
  1380. package/build/drivers/buildRawQuery.d.ts +0 -22
  1381. package/build/drivers/buildRawQuery.d.ts.map +0 -1
  1382. package/build/drivers/buildRawQuery.js +0 -153
  1383. package/build/drivers/buildRawQuery.js.map +0 -1
  1384. package/build/drivers/buildUtils.d.ts +0 -9
  1385. package/build/drivers/buildUtils.d.ts.map +0 -1
  1386. package/build/drivers/buildUtils.js +0 -88
  1387. package/build/drivers/buildUtils.js.map +0 -1
  1388. package/build/drivers/index.d.ts +0 -6
  1389. package/build/drivers/index.d.ts.map +0 -1
  1390. package/build/drivers/index.js.map +0 -1
  1391. package/build/fields.d.ts +0 -26
  1392. package/build/fields.d.ts.map +0 -1
  1393. package/build/getProperties.d.ts +0 -28
  1394. package/build/getProperties.d.ts.map +0 -1
  1395. package/build/index.d.ts +0 -133
  1396. package/build/index.d.ts.map +0 -1
  1397. package/build/json.d.ts +0 -77
  1398. package/build/json.d.ts.map +0 -1
  1399. package/build/k.d.ts +0 -2
  1400. package/build/k.d.ts.map +0 -1
  1401. package/build/keys.d.ts +0 -49
  1402. package/build/keys.d.ts.map +0 -1
  1403. package/build/keywords.d.ts +0 -5
  1404. package/build/keywords.d.ts.map +0 -1
  1405. package/build/keywords.js +0 -124
  1406. package/build/keywords.js.map +0 -1
  1407. package/build/loadHints.d.ts +0 -121
  1408. package/build/loadHints.d.ts.map +0 -1
  1409. package/build/loadHints.js +0 -129
  1410. package/build/loadHints.js.map +0 -1
  1411. package/build/loadLens.d.ts +0 -77
  1412. package/build/loadLens.d.ts.map +0 -1
  1413. package/build/loadLens.js +0 -320
  1414. package/build/loadLens.js.map +0 -1
  1415. package/build/logging/FactoryLogger.d.ts +0 -24
  1416. package/build/logging/FactoryLogger.d.ts.map +0 -1
  1417. package/build/logging/FieldLogger.d.ts +0 -27
  1418. package/build/logging/FieldLogger.d.ts.map +0 -1
  1419. package/build/logging/ReactionLogger.d.ts +0 -27
  1420. package/build/logging/ReactionLogger.d.ts.map +0 -1
  1421. package/build/newEntity.d.ts +0 -45
  1422. package/build/newEntity.d.ts.map +0 -1
  1423. package/build/newTestInstance.d.ts +0 -208
  1424. package/build/newTestInstance.d.ts.map +0 -1
  1425. package/build/normalizeHints.d.ts +0 -23
  1426. package/build/normalizeHints.d.ts.map +0 -1
  1427. package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -9
  1428. package/build/plugins/ImmutableEntitiesPlugin.d.ts.map +0 -1
  1429. package/build/plugins/PreloadPlugin.d.ts +0 -69
  1430. package/build/plugins/PreloadPlugin.d.ts.map +0 -1
  1431. package/build/plugins/PreloadPlugin.js.map +0 -1
  1432. package/build/preloading/JsonAggregatePreloader.d.ts +0 -16
  1433. package/build/preloading/JsonAggregatePreloader.d.ts.map +0 -1
  1434. package/build/preloading/canPreload.d.ts +0 -3
  1435. package/build/preloading/canPreload.d.ts.map +0 -1
  1436. package/build/preloading/partitionHint.d.ts +0 -5
  1437. package/build/preloading/partitionHint.d.ts.map +0 -1
  1438. package/build/reactiveHints.d.ts +0 -146
  1439. package/build/reactiveHints.d.ts.map +0 -1
  1440. package/build/reactiveHints.js +0 -509
  1441. package/build/reactiveHints.js.map +0 -1
  1442. package/build/relations/AbstractPropertyImpl.d.ts +0 -8
  1443. package/build/relations/AbstractPropertyImpl.d.ts.map +0 -1
  1444. package/build/relations/AbstractRelationImpl.d.ts +0 -41
  1445. package/build/relations/AbstractRelationImpl.d.ts.map +0 -1
  1446. package/build/relations/AsyncProperty.d.ts +0 -36
  1447. package/build/relations/AsyncProperty.d.ts.map +0 -1
  1448. package/build/relations/AsyncReactiveField.d.ts +0 -41
  1449. package/build/relations/AsyncReactiveField.d.ts.map +0 -1
  1450. package/build/relations/Collection.d.ts +0 -33
  1451. package/build/relations/Collection.d.ts.map +0 -1
  1452. package/build/relations/CustomCollection.d.ts +0 -69
  1453. package/build/relations/CustomCollection.d.ts.map +0 -1
  1454. package/build/relations/CustomReference.d.ts +0 -71
  1455. package/build/relations/CustomReference.d.ts.map +0 -1
  1456. package/build/relations/EnumCollection.d.ts +0 -81
  1457. package/build/relations/EnumCollection.d.ts.map +0 -1
  1458. package/build/relations/LargeCollection.d.ts +0 -19
  1459. package/build/relations/LargeCollection.d.ts.map +0 -1
  1460. package/build/relations/LargeCollection.js.map +0 -1
  1461. package/build/relations/ManyToManyCollection.d.ts +0 -52
  1462. package/build/relations/ManyToManyCollection.d.ts.map +0 -1
  1463. package/build/relations/ManyToManyLargeCollection.d.ts +0 -31
  1464. package/build/relations/ManyToManyLargeCollection.d.ts.map +0 -1
  1465. package/build/relations/ManyToOneReference.d.ts +0 -117
  1466. package/build/relations/ManyToOneReference.d.ts.map +0 -1
  1467. package/build/relations/OneToManyCollection.d.ts +0 -62
  1468. package/build/relations/OneToManyCollection.d.ts.map +0 -1
  1469. package/build/relations/OneToManyLargeCollection.d.ts +0 -26
  1470. package/build/relations/OneToManyLargeCollection.d.ts.map +0 -1
  1471. package/build/relations/OneToOneReference.d.ts +0 -93
  1472. package/build/relations/OneToOneReference.d.ts.map +0 -1
  1473. package/build/relations/PolymorphicReference.d.ts +0 -89
  1474. package/build/relations/PolymorphicReference.d.ts.map +0 -1
  1475. package/build/relations/ReactiveField.d.ts +0 -85
  1476. package/build/relations/ReactiveField.d.ts.map +0 -1
  1477. package/build/relations/ReactiveGetter.d.ts +0 -30
  1478. package/build/relations/ReactiveGetter.d.ts.map +0 -1
  1479. package/build/relations/ReactiveManyToMany.d.ts +0 -57
  1480. package/build/relations/ReactiveManyToMany.d.ts.map +0 -1
  1481. package/build/relations/ReactiveManyToManyOtherSide.d.ts +0 -48
  1482. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +0 -1
  1483. package/build/relations/ReactiveReference.d.ts +0 -119
  1484. package/build/relations/ReactiveReference.d.ts.map +0 -1
  1485. package/build/relations/ReadOnlyCollection.d.ts +0 -19
  1486. package/build/relations/ReadOnlyCollection.d.ts.map +0 -1
  1487. package/build/relations/RecursiveCollection.d.ts +0 -108
  1488. package/build/relations/RecursiveCollection.d.ts.map +0 -1
  1489. package/build/relations/RecursiveCycleError.d.ts +0 -13
  1490. package/build/relations/RecursiveCycleError.d.ts.map +0 -1
  1491. package/build/relations/Reference.d.ts +0 -35
  1492. package/build/relations/Reference.d.ts.map +0 -1
  1493. package/build/relations/Relation.d.ts +0 -14
  1494. package/build/relations/Relation.d.ts.map +0 -1
  1495. package/build/relations/hasAsyncMethod.d.ts +0 -27
  1496. package/build/relations/hasAsyncMethod.d.ts.map +0 -1
  1497. package/build/relations/hasManyDerived.d.ts +0 -22
  1498. package/build/relations/hasManyDerived.d.ts.map +0 -1
  1499. package/build/relations/hasManyThrough.d.ts +0 -10
  1500. package/build/relations/hasManyThrough.d.ts.map +0 -1
  1501. package/build/relations/hasOneDerived.d.ts +0 -12
  1502. package/build/relations/hasOneDerived.d.ts.map +0 -1
  1503. package/build/relations/hasOneThrough.d.ts +0 -10
  1504. package/build/relations/hasOneThrough.d.ts.map +0 -1
  1505. package/build/relations/hasProperty.d.ts +0 -50
  1506. package/build/relations/hasProperty.d.ts.map +0 -1
  1507. package/build/relations/index.d.ts +0 -30
  1508. package/build/relations/index.d.ts.map +0 -1
  1509. package/build/relations/index.js.map +0 -1
  1510. package/build/resurrection.d.ts +0 -10
  1511. package/build/resurrection.d.ts.map +0 -1
  1512. package/build/rules.d.ts +0 -123
  1513. package/build/rules.d.ts.map +0 -1
  1514. package/build/runtimeConfig.d.ts +0 -17
  1515. package/build/runtimeConfig.d.ts.map +0 -1
  1516. package/build/scopes.d.ts +0 -185
  1517. package/build/scopes.d.ts.map +0 -1
  1518. package/build/scopes.js +0 -302
  1519. package/build/scopes.js.map +0 -1
  1520. package/build/serde.d.ts +0 -277
  1521. package/build/serde.d.ts.map +0 -1
  1522. package/build/serde.js +0 -517
  1523. package/build/serde.js.map +0 -1
  1524. package/build/temporal.d.ts +0 -46
  1525. package/build/temporal.d.ts.map +0 -1
  1526. package/build/temporal.js +0 -66
  1527. package/build/temporal.js.map +0 -1
  1528. package/build/temporalMappers.d.ts +0 -25
  1529. package/build/temporalMappers.d.ts.map +0 -1
  1530. package/build/temporalMappers.js +0 -59
  1531. package/build/temporalMappers.js.map +0 -1
  1532. package/build/trusted.d.ts +0 -5
  1533. package/build/trusted.d.ts.map +0 -1
  1534. package/build/typeMap.d.ts +0 -68
  1535. package/build/typeMap.d.ts.map +0 -1
  1536. package/build/typeMap.js.map +0 -1
  1537. package/build/unnest.d.ts +0 -13
  1538. package/build/unnest.d.ts.map +0 -1
  1539. package/build/unnest.js +0 -85
  1540. package/build/unnest.js.map +0 -1
  1541. package/build/upsert.d.ts +0 -42
  1542. package/build/upsert.d.ts.map +0 -1
  1543. package/build/utils.d.ts +0 -60
  1544. package/build/utils.d.ts.map +0 -1
  1545. package/build/withLoaded.d.ts +0 -56
  1546. package/build/withLoaded.d.ts.map +0 -1
  1547. package/build/withLoaded.js +0 -76
  1548. package/build/withLoaded.js.map +0 -1
@@ -0,0 +1,71 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_queries_sql_Expr = require("../Expr.cjs");
3
+ const require_queries_sql_expressions_parseExpression = require("./parseExpression.cjs");
4
+ const require_queries_sql_expressions_expression = require("./expression.cjs");
5
+ //#region src/queries/sql/expressions/case.ts
6
+ /**
7
+ * Parses WHEN entries and an optional final ELSE into a ParsedCaseExpression.
8
+ * Requires at least one WHEN, even if its condition may later be pruned.
9
+ */
10
+ function parseCaseExpression(input) {
11
+ const entries = Array.isArray(input) ? input : [input];
12
+ const whens = [];
13
+ let fallback;
14
+ for (const [i, entry] of entries.entries()) if (require_queries_sql_expressions_parseExpression.isObject(entry) && "else" in entry) {
15
+ require_queries_sql_expressions_parseExpression.checkKeys(entry, ["else"]);
16
+ if (whens.length === 0) throw new Error("CASE needs a WHEN arm before ELSE");
17
+ if (i !== entries.length - 1) throw new Error("CASE ELSE must be last");
18
+ fallback = require_queries_sql_expressions_parseExpression.parseExpression(entry.else);
19
+ } else {
20
+ if (!require_queries_sql_expressions_parseExpression.isObject(entry) || !("when" in entry) || !("then" in entry)) throw new Error("A CASE arm needs when and then");
21
+ require_queries_sql_expressions_parseExpression.checkKeys(entry, ["when", "then"]);
22
+ whens.push({
23
+ when: entry.when,
24
+ then: require_queries_sql_expressions_parseExpression.parseExpression(entry.then)
25
+ });
26
+ }
27
+ if (whens.length === 0) throw new Error("CASE needs at least one arm");
28
+ const [first, ...rest] = whens;
29
+ return {
30
+ kind: "case",
31
+ whens: [first, ...rest],
32
+ else: fallback
33
+ };
34
+ }
35
+ /** Removes CASE entries with omitted conditions, falling back to ELSE or SQL NULL if none remain. */
36
+ function caseToSql(parsed, ctx, codec) {
37
+ const parts = [];
38
+ for (const entry of parsed.whens) {
39
+ const when = entry.when === void 0 ? void 0 : ctx.conditionToSql(entry.when);
40
+ if (!when) continue;
41
+ const branch = require_queries_sql_Expr.joinFragments([when, require_queries_sql_expressions_expression.expressionToSql(entry.then, ctx, codec)], " THEN ");
42
+ parts.push({
43
+ ...branch,
44
+ sql: `WHEN ${branch.sql}`
45
+ });
46
+ }
47
+ const otherwise = require_queries_sql_expressions_expression.expressionToSql(parsed.else ?? {
48
+ kind: "literal",
49
+ value: null
50
+ }, ctx, codec);
51
+ if (parts.length === 0) return otherwise;
52
+ if (parsed.else) parts.push({
53
+ ...otherwise,
54
+ sql: `ELSE ${otherwise.sql}`
55
+ });
56
+ const body = require_queries_sql_Expr.joinFragments(parts, " ");
57
+ return {
58
+ ...body,
59
+ sql: `(CASE ${body.sql} END)`
60
+ };
61
+ }
62
+ /** CASE is definitely non-null only when every THEN value and the ELSE value are non-null. */
63
+ function caseNullable(parsed) {
64
+ return parsed.else && require_queries_sql_expressions_expression.expressionNullable(parsed.else) === false && parsed.whens.every((entry) => require_queries_sql_expressions_expression.expressionNullable(entry.then) === false) ? false : void 0;
65
+ }
66
+ //#endregion
67
+ exports.caseNullable = caseNullable;
68
+ exports.caseToSql = caseToSql;
69
+ exports.parseCaseExpression = parseCaseExpression;
70
+
71
+ //# sourceMappingURL=case.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case.cjs","names":["isObject","parseExpression","joinFragments","expressionToSql","expressionNullable"],"sources":["../../../../src/queries/sql/expressions/case.ts"],"sourcesContent":["import { type ExprContext, type SqlFragment, joinFragments } from \"src/queries/sql/Expr.ts\";\nimport { expressionNullable, expressionToSql } from \"src/queries/sql/expressions/expression.ts\";\nimport { checkKeys, isObject, parseExpression } from \"src/queries/sql/expressions/parseExpression.ts\";\nimport type { CheckExpression, ParsedExpression, ResultCodec } from \"src/queries/sql/expressions/types.ts\";\nimport type { QueryCondition } from \"src/queries/sql/query.ts\";\n\n/** One condition and the value to return when it is true. */\nexport interface CaseWhen {\n readonly when: QueryCondition | undefined;\n readonly then: unknown;\n readonly else?: never;\n}\n\n/** The fallback value, allowed only as the last entry in a CASE array. */\nexport interface CaseElse {\n readonly else: unknown;\n readonly when?: never;\n readonly then?: never;\n}\n\n/** A single WHEN or an ordered array of WHEN entries with an optional final ELSE. */\nexport interface CaseInput {\n readonly case: CaseWhen | readonly (CaseWhen | CaseElse)[];\n}\n\n/** The values returned by CASE's THEN and ELSE entries. */\nexport type CaseArmValue<A> = A extends readonly unknown[]\n ? CaseArmValue<A[number]>\n : A extends { readonly then: infer V }\n ? V\n : A extends { readonly else: infer V }\n ? V\n : never;\n\n/** A single CASE entry must be WHEN; an array can also have a final ELSE. */\nexport type CheckCase<A, R> = A extends readonly []\n ? \"CASE needs at least one arm\"\n : A extends readonly unknown[]\n ? { readonly [K in keyof A]: CheckCaseEntry<A[K], R> } & CheckCaseOrder<A>\n : A extends CaseWhen\n ? CheckCaseEntry<A, R>\n : never;\n\n/** Checks THEN/ELSE values and rejects extra keys on an entry. */\ntype CheckCaseEntry<A, R> = A extends CaseWhen\n ? { readonly [K in keyof A]: K extends \"then\" ? CheckExpression<A[K], R> : K extends \"when\" ? unknown : never }\n : A extends CaseElse\n ? { readonly [K in keyof A]: K extends \"else\" ? CheckExpression<A[K], R> : never }\n : never;\n\n/** Fixed CASE arrays can be checked now; dynamic arrays get the same checks at runtime. */\ntype CheckCaseOrder<A extends readonly unknown[], HasWhen extends boolean = false> = A extends readonly [\n infer H,\n ...infer T,\n]\n ? H extends { readonly else: unknown }\n ? HasWhen extends true\n ? T extends readonly []\n ? unknown\n : \"CASE ELSE must be last\"\n : \"CASE needs a WHEN arm before ELSE\"\n : CheckCaseOrder<T, true>\n : unknown;\n\n/** A CASE has at least one WHEN and an optional ELSE; no ELSE means SQL NULL. */\nexport interface ParsedCaseExpression {\n kind: \"case\";\n whens: [ParsedCaseWhen, ...ParsedCaseWhen[]];\n else?: ParsedExpression;\n}\n\n/** A CASE condition and its parsed result expression. */\ninterface ParsedCaseWhen {\n when: QueryCondition | undefined;\n then: ParsedExpression;\n}\n\n/**\n * Parses WHEN entries and an optional final ELSE into a ParsedCaseExpression.\n * Requires at least one WHEN, even if its condition may later be pruned.\n */\nexport function parseCaseExpression(input: unknown): ParsedCaseExpression {\n const entries = Array.isArray(input) ? input : [input];\n const whens: ParsedCaseWhen[] = [];\n let fallback: ParsedExpression | undefined;\n for (const [i, entry] of entries.entries()) {\n if (isObject(entry) && \"else\" in entry) {\n checkKeys(entry, [\"else\"]);\n if (whens.length === 0) throw new Error(\"CASE needs a WHEN arm before ELSE\");\n if (i !== entries.length - 1) throw new Error(\"CASE ELSE must be last\");\n fallback = parseExpression(entry.else);\n } else {\n if (!isObject(entry) || !(\"when\" in entry) || !(\"then\" in entry))\n throw new Error(\"A CASE arm needs when and then\");\n checkKeys(entry, [\"when\", \"then\"]);\n whens.push({ when: entry.when as QueryCondition | undefined, then: parseExpression(entry.then) });\n }\n }\n if (whens.length === 0) throw new Error(\"CASE needs at least one arm\");\n const [first, ...rest] = whens;\n return { kind: \"case\", whens: [first, ...rest], else: fallback };\n}\n\n/** Removes CASE entries with omitted conditions, falling back to ELSE or SQL NULL if none remain. */\nexport function caseToSql(parsed: ParsedCaseExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment {\n const parts: SqlFragment[] = [];\n for (const entry of parsed.whens) {\n const when = entry.when === undefined ? undefined : ctx.conditionToSql(entry.when);\n if (!when) continue;\n const branch = joinFragments([when, expressionToSql(entry.then, ctx, codec)], \" THEN \");\n parts.push({ ...branch, sql: `WHEN ${branch.sql}` });\n }\n const otherwise = expressionToSql(parsed.else ?? { kind: \"literal\", value: null }, ctx, codec);\n if (parts.length === 0) return otherwise;\n if (parsed.else) parts.push({ ...otherwise, sql: `ELSE ${otherwise.sql}` });\n const body = joinFragments(parts, \" \");\n return { ...body, sql: `(CASE ${body.sql} END)` };\n}\n\n/** CASE is definitely non-null only when every THEN value and the ELSE value are non-null. */\nexport function caseNullable(parsed: ParsedCaseExpression): boolean | undefined {\n return parsed.else &&\n expressionNullable(parsed.else) === false &&\n parsed.whens.every((entry) => expressionNullable(entry.then) === false)\n ? false\n : undefined;\n}\n"],"mappings":";;;;;;;;;AAiFA,SAAgB,oBAAoB,OAAsC;CACxE,MAAM,UAAU,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;CACrD,MAAM,QAA0B,CAAC;CACjC,IAAI;CACJ,KAAK,MAAM,CAAC,GAAG,UAAU,QAAQ,QAAQ,GACvC,IAAIA,gDAAAA,SAAS,KAAK,KAAK,UAAU,OAAO;EACtC,gDAAA,UAAU,OAAO,CAAC,MAAM,CAAC;EACzB,IAAI,MAAM,WAAW,GAAG,MAAM,IAAI,MAAM,mCAAmC;EAC3E,IAAI,MAAM,QAAQ,SAAS,GAAG,MAAM,IAAI,MAAM,wBAAwB;EACtE,WAAWC,gDAAAA,gBAAgB,MAAM,IAAI;CACvC,OAAO;EACL,IAAI,CAACD,gDAAAA,SAAS,KAAK,KAAK,EAAE,UAAU,UAAU,EAAE,UAAU,QACxD,MAAM,IAAI,MAAM,gCAAgC;EAClD,gDAAA,UAAU,OAAO,CAAC,QAAQ,MAAM,CAAC;EACjC,MAAM,KAAK;GAAE,MAAM,MAAM;GAAoC,MAAMC,gDAAAA,gBAAgB,MAAM,IAAI;EAAE,CAAC;CAClG;CAEF,IAAI,MAAM,WAAW,GAAG,MAAM,IAAI,MAAM,6BAA6B;CACrE,MAAM,CAAC,OAAO,GAAG,QAAQ;CACzB,OAAO;EAAE,MAAM;EAAQ,OAAO,CAAC,OAAO,GAAG,IAAI;EAAG,MAAM;CAAS;AACjE;;AAGA,SAAgB,UAAU,QAA8B,KAAkB,OAAiC;CACzG,MAAM,QAAuB,CAAC;CAC9B,KAAK,MAAM,SAAS,OAAO,OAAO;EAChC,MAAM,OAAO,MAAM,SAAS,KAAA,IAAY,KAAA,IAAY,IAAI,eAAe,MAAM,IAAI;EACjF,IAAI,CAAC,MAAM;EACX,MAAM,SAASC,yBAAAA,cAAc,CAAC,MAAMC,2CAAAA,gBAAgB,MAAM,MAAM,KAAK,KAAK,CAAC,GAAG,QAAQ;EACtF,MAAM,KAAK;GAAE,GAAG;GAAQ,KAAK,QAAQ,OAAO;EAAM,CAAC;CACrD;CACA,MAAM,YAAYA,2CAAAA,gBAAgB,OAAO,QAAQ;EAAE,MAAM;EAAW,OAAO;CAAK,GAAG,KAAK,KAAK;CAC7F,IAAI,MAAM,WAAW,GAAG,OAAO;CAC/B,IAAI,OAAO,MAAM,MAAM,KAAK;EAAE,GAAG;EAAW,KAAK,QAAQ,UAAU;CAAM,CAAC;CAC1E,MAAM,OAAOD,yBAAAA,cAAc,OAAO,GAAG;CACrC,OAAO;EAAE,GAAG;EAAM,KAAK,SAAS,KAAK,IAAI;CAAO;AAClD;;AAGA,SAAgB,aAAa,QAAmD;CAC9E,OAAO,OAAO,QACZE,2CAAAA,mBAAmB,OAAO,IAAI,MAAM,SACpC,OAAO,MAAM,OAAO,UAAUA,2CAAAA,mBAAmB,MAAM,IAAI,MAAM,KAAK,IACpE,QACA,KAAA;AACN"}
@@ -0,0 +1,57 @@
1
+ import { CheckExpression, ParsedExpression, ResultCodec } from "./types.cjs";
2
+ import { QueryCondition } from "../query.cjs";
3
+ import { ExprContext, SqlFragment } from "../Expr.cjs";
4
+ //#region src/queries/sql/expressions/case.d.ts
5
+ /** One condition and the value to return when it is true. */
6
+ interface CaseWhen {
7
+ readonly when: QueryCondition | undefined;
8
+ readonly then: unknown;
9
+ readonly else?: never;
10
+ }
11
+ /** The fallback value, allowed only as the last entry in a CASE array. */
12
+ interface CaseElse {
13
+ readonly else: unknown;
14
+ readonly when?: never;
15
+ readonly then?: never;
16
+ }
17
+ /** A single WHEN or an ordered array of WHEN entries with an optional final ELSE. */
18
+ interface CaseInput {
19
+ readonly case: CaseWhen | readonly (CaseWhen | CaseElse)[];
20
+ }
21
+ /** The values returned by CASE's THEN and ELSE entries. */
22
+ type CaseArmValue<A> = A extends readonly unknown[] ? CaseArmValue<A[number]> : A extends {
23
+ readonly then: infer V;
24
+ } ? V : A extends {
25
+ readonly else: infer V;
26
+ } ? V : never;
27
+ /** A single CASE entry must be WHEN; an array can also have a final ELSE. */
28
+ type CheckCase<A, R> = A extends readonly [] ? "CASE needs at least one arm" : A extends readonly unknown[] ? { readonly [K in keyof A]: CheckCaseEntry<A[K], R>; } & CheckCaseOrder<A> : A extends CaseWhen ? CheckCaseEntry<A, R> : never;
29
+ /** Checks THEN/ELSE values and rejects extra keys on an entry. */
30
+ type CheckCaseEntry<A, R> = A extends CaseWhen ? { readonly [K in keyof A]: K extends "then" ? CheckExpression<A[K], R> : K extends "when" ? unknown : never; } : A extends CaseElse ? { readonly [K in keyof A]: K extends "else" ? CheckExpression<A[K], R> : never; } : never;
31
+ /** Fixed CASE arrays can be checked now; dynamic arrays get the same checks at runtime. */
32
+ type CheckCaseOrder<A extends readonly unknown[], HasWhen extends boolean = false> = A extends readonly [infer H, ...infer T] ? H extends {
33
+ readonly else: unknown;
34
+ } ? HasWhen extends true ? T extends readonly [] ? unknown : "CASE ELSE must be last" : "CASE needs a WHEN arm before ELSE" : CheckCaseOrder<T, true> : unknown;
35
+ /** A CASE has at least one WHEN and an optional ELSE; no ELSE means SQL NULL. */
36
+ interface ParsedCaseExpression {
37
+ kind: "case";
38
+ whens: [ParsedCaseWhen, ...ParsedCaseWhen[]];
39
+ else?: ParsedExpression;
40
+ }
41
+ /** A CASE condition and its parsed result expression. */
42
+ interface ParsedCaseWhen {
43
+ when: QueryCondition | undefined;
44
+ then: ParsedExpression;
45
+ }
46
+ /**
47
+ * Parses WHEN entries and an optional final ELSE into a ParsedCaseExpression.
48
+ * Requires at least one WHEN, even if its condition may later be pruned.
49
+ */
50
+ declare function parseCaseExpression(input: unknown): ParsedCaseExpression;
51
+ /** Removes CASE entries with omitted conditions, falling back to ELSE or SQL NULL if none remain. */
52
+ declare function caseToSql(parsed: ParsedCaseExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment;
53
+ /** CASE is definitely non-null only when every THEN value and the ELSE value are non-null. */
54
+ declare function caseNullable(parsed: ParsedCaseExpression): boolean | undefined;
55
+ //#endregion
56
+ export { CaseArmValue, CaseElse, CaseInput, CaseWhen, CheckCase, ParsedCaseExpression, caseNullable, caseToSql, parseCaseExpression };
57
+ //# sourceMappingURL=case.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case.d.cts","names":[],"sources":["../../../../src/queries/sql/expressions/case.ts"],"mappings":";;;;;UAOiB;WACN,MAAM;WACN;WACA;;;UAIM;WACN;WACA;WACA;;;UAIM;WACN,MAAM,qBAAqB,WAAW;;;KAIrC,aAAa,KAAK,+BAC1B,aAAa,aACb;WAAqB,YAAY;IAC/B,IACA;WAAqB,YAAY;IAC/B;;KAII,UAAU,GAAG,KAAK,wDAE1B,2CACc,WAAW,IAAI,eAAe,EAAE,IAAI,QAAO,eAAe,KACtE,UAAU,WACR,eAAe,GAAG;;KAIrB,eAAe,GAAG,KAAK,UAAU,uBACtB,WAAW,IAAI,mBAAmB,gBAAgB,EAAE,IAAI,KAAK,wCACzE,UAAU,uBACI,WAAW,IAAI,mBAAmB,gBAAgB,EAAE,IAAI;;KAIrE,eAAe,8BAA8B,mCAAmC,0BAC7E,YACG,KAEP;WAAqB;IACnB,uBACE,mGAIF,eAAe;;UAIJ;EACf;EACA,QAAQ,mBAAmB;EAC3B,OAAO;;;UAIC;EACR,MAAM;EACN,MAAM;;;;;;iBAOQ,oBAAoB,iBAAiB;;iBAuBrC,UAAU,QAAQ,sBAAsB,KAAK,aAAa,OAAO,cAAc;;iBAgB/E,aAAa,QAAQ"}
@@ -0,0 +1,57 @@
1
+ import { CheckExpression, ParsedExpression, ResultCodec } from "./types.mjs";
2
+ import { QueryCondition } from "../query.mjs";
3
+ import { ExprContext, SqlFragment } from "../Expr.mjs";
4
+ //#region src/queries/sql/expressions/case.d.ts
5
+ /** One condition and the value to return when it is true. */
6
+ interface CaseWhen {
7
+ readonly when: QueryCondition | undefined;
8
+ readonly then: unknown;
9
+ readonly else?: never;
10
+ }
11
+ /** The fallback value, allowed only as the last entry in a CASE array. */
12
+ interface CaseElse {
13
+ readonly else: unknown;
14
+ readonly when?: never;
15
+ readonly then?: never;
16
+ }
17
+ /** A single WHEN or an ordered array of WHEN entries with an optional final ELSE. */
18
+ interface CaseInput {
19
+ readonly case: CaseWhen | readonly (CaseWhen | CaseElse)[];
20
+ }
21
+ /** The values returned by CASE's THEN and ELSE entries. */
22
+ type CaseArmValue<A> = A extends readonly unknown[] ? CaseArmValue<A[number]> : A extends {
23
+ readonly then: infer V;
24
+ } ? V : A extends {
25
+ readonly else: infer V;
26
+ } ? V : never;
27
+ /** A single CASE entry must be WHEN; an array can also have a final ELSE. */
28
+ type CheckCase<A, R> = A extends readonly [] ? "CASE needs at least one arm" : A extends readonly unknown[] ? { readonly [K in keyof A]: CheckCaseEntry<A[K], R>; } & CheckCaseOrder<A> : A extends CaseWhen ? CheckCaseEntry<A, R> : never;
29
+ /** Checks THEN/ELSE values and rejects extra keys on an entry. */
30
+ type CheckCaseEntry<A, R> = A extends CaseWhen ? { readonly [K in keyof A]: K extends "then" ? CheckExpression<A[K], R> : K extends "when" ? unknown : never; } : A extends CaseElse ? { readonly [K in keyof A]: K extends "else" ? CheckExpression<A[K], R> : never; } : never;
31
+ /** Fixed CASE arrays can be checked now; dynamic arrays get the same checks at runtime. */
32
+ type CheckCaseOrder<A extends readonly unknown[], HasWhen extends boolean = false> = A extends readonly [infer H, ...infer T] ? H extends {
33
+ readonly else: unknown;
34
+ } ? HasWhen extends true ? T extends readonly [] ? unknown : "CASE ELSE must be last" : "CASE needs a WHEN arm before ELSE" : CheckCaseOrder<T, true> : unknown;
35
+ /** A CASE has at least one WHEN and an optional ELSE; no ELSE means SQL NULL. */
36
+ interface ParsedCaseExpression {
37
+ kind: "case";
38
+ whens: [ParsedCaseWhen, ...ParsedCaseWhen[]];
39
+ else?: ParsedExpression;
40
+ }
41
+ /** A CASE condition and its parsed result expression. */
42
+ interface ParsedCaseWhen {
43
+ when: QueryCondition | undefined;
44
+ then: ParsedExpression;
45
+ }
46
+ /**
47
+ * Parses WHEN entries and an optional final ELSE into a ParsedCaseExpression.
48
+ * Requires at least one WHEN, even if its condition may later be pruned.
49
+ */
50
+ declare function parseCaseExpression(input: unknown): ParsedCaseExpression;
51
+ /** Removes CASE entries with omitted conditions, falling back to ELSE or SQL NULL if none remain. */
52
+ declare function caseToSql(parsed: ParsedCaseExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment;
53
+ /** CASE is definitely non-null only when every THEN value and the ELSE value are non-null. */
54
+ declare function caseNullable(parsed: ParsedCaseExpression): boolean | undefined;
55
+ //#endregion
56
+ export { CaseArmValue, CaseElse, CaseInput, CaseWhen, CheckCase, ParsedCaseExpression, caseNullable, caseToSql, parseCaseExpression };
57
+ //# sourceMappingURL=case.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case.d.mts","names":[],"sources":["../../../../src/queries/sql/expressions/case.ts"],"mappings":";;;;;UAOiB;WACN,MAAM;WACN;WACA;;;UAIM;WACN;WACA;WACA;;;UAIM;WACN,MAAM,qBAAqB,WAAW;;;KAIrC,aAAa,KAAK,+BAC1B,aAAa,aACb;WAAqB,YAAY;IAC/B,IACA;WAAqB,YAAY;IAC/B;;KAII,UAAU,GAAG,KAAK,wDAE1B,2CACc,WAAW,IAAI,eAAe,EAAE,IAAI,QAAO,eAAe,KACtE,UAAU,WACR,eAAe,GAAG;;KAIrB,eAAe,GAAG,KAAK,UAAU,uBACtB,WAAW,IAAI,mBAAmB,gBAAgB,EAAE,IAAI,KAAK,wCACzE,UAAU,uBACI,WAAW,IAAI,mBAAmB,gBAAgB,EAAE,IAAI;;KAIrE,eAAe,8BAA8B,mCAAmC,0BAC7E,YACG,KAEP;WAAqB;IACnB,uBACE,mGAIF,eAAe;;UAIJ;EACf;EACA,QAAQ,mBAAmB;EAC3B,OAAO;;;UAIC;EACR,MAAM;EACN,MAAM;;;;;;iBAOQ,oBAAoB,iBAAiB;;iBAuBrC,UAAU,QAAQ,sBAAsB,KAAK,aAAa,OAAO,cAAc;;iBAgB/E,aAAa,QAAQ"}
@@ -0,0 +1,68 @@
1
+ import { joinFragments } from "../Expr.js";
2
+ import { checkKeys, isObject, parseExpression } from "./parseExpression.js";
3
+ import { expressionNullable, expressionToSql } from "./expression.js";
4
+ //#region src/queries/sql/expressions/case.ts
5
+ /**
6
+ * Parses WHEN entries and an optional final ELSE into a ParsedCaseExpression.
7
+ * Requires at least one WHEN, even if its condition may later be pruned.
8
+ */
9
+ function parseCaseExpression(input) {
10
+ const entries = Array.isArray(input) ? input : [input];
11
+ const whens = [];
12
+ let fallback;
13
+ for (const [i, entry] of entries.entries()) if (isObject(entry) && "else" in entry) {
14
+ checkKeys(entry, ["else"]);
15
+ if (whens.length === 0) throw new Error("CASE needs a WHEN arm before ELSE");
16
+ if (i !== entries.length - 1) throw new Error("CASE ELSE must be last");
17
+ fallback = parseExpression(entry.else);
18
+ } else {
19
+ if (!isObject(entry) || !("when" in entry) || !("then" in entry)) throw new Error("A CASE arm needs when and then");
20
+ checkKeys(entry, ["when", "then"]);
21
+ whens.push({
22
+ when: entry.when,
23
+ then: parseExpression(entry.then)
24
+ });
25
+ }
26
+ if (whens.length === 0) throw new Error("CASE needs at least one arm");
27
+ const [first, ...rest] = whens;
28
+ return {
29
+ kind: "case",
30
+ whens: [first, ...rest],
31
+ else: fallback
32
+ };
33
+ }
34
+ /** Removes CASE entries with omitted conditions, falling back to ELSE or SQL NULL if none remain. */
35
+ function caseToSql(parsed, ctx, codec) {
36
+ const parts = [];
37
+ for (const entry of parsed.whens) {
38
+ const when = entry.when === void 0 ? void 0 : ctx.conditionToSql(entry.when);
39
+ if (!when) continue;
40
+ const branch = joinFragments([when, expressionToSql(entry.then, ctx, codec)], " THEN ");
41
+ parts.push({
42
+ ...branch,
43
+ sql: `WHEN ${branch.sql}`
44
+ });
45
+ }
46
+ const otherwise = expressionToSql(parsed.else ?? {
47
+ kind: "literal",
48
+ value: null
49
+ }, ctx, codec);
50
+ if (parts.length === 0) return otherwise;
51
+ if (parsed.else) parts.push({
52
+ ...otherwise,
53
+ sql: `ELSE ${otherwise.sql}`
54
+ });
55
+ const body = joinFragments(parts, " ");
56
+ return {
57
+ ...body,
58
+ sql: `(CASE ${body.sql} END)`
59
+ };
60
+ }
61
+ /** CASE is definitely non-null only when every THEN value and the ELSE value are non-null. */
62
+ function caseNullable(parsed) {
63
+ return parsed.else && expressionNullable(parsed.else) === false && parsed.whens.every((entry) => expressionNullable(entry.then) === false) ? false : void 0;
64
+ }
65
+ //#endregion
66
+ export { caseNullable, caseToSql, parseCaseExpression };
67
+
68
+ //# sourceMappingURL=case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case.js","names":[],"sources":["../../../../src/queries/sql/expressions/case.ts"],"sourcesContent":["import { type ExprContext, type SqlFragment, joinFragments } from \"src/queries/sql/Expr.ts\";\nimport { expressionNullable, expressionToSql } from \"src/queries/sql/expressions/expression.ts\";\nimport { checkKeys, isObject, parseExpression } from \"src/queries/sql/expressions/parseExpression.ts\";\nimport type { CheckExpression, ParsedExpression, ResultCodec } from \"src/queries/sql/expressions/types.ts\";\nimport type { QueryCondition } from \"src/queries/sql/query.ts\";\n\n/** One condition and the value to return when it is true. */\nexport interface CaseWhen {\n readonly when: QueryCondition | undefined;\n readonly then: unknown;\n readonly else?: never;\n}\n\n/** The fallback value, allowed only as the last entry in a CASE array. */\nexport interface CaseElse {\n readonly else: unknown;\n readonly when?: never;\n readonly then?: never;\n}\n\n/** A single WHEN or an ordered array of WHEN entries with an optional final ELSE. */\nexport interface CaseInput {\n readonly case: CaseWhen | readonly (CaseWhen | CaseElse)[];\n}\n\n/** The values returned by CASE's THEN and ELSE entries. */\nexport type CaseArmValue<A> = A extends readonly unknown[]\n ? CaseArmValue<A[number]>\n : A extends { readonly then: infer V }\n ? V\n : A extends { readonly else: infer V }\n ? V\n : never;\n\n/** A single CASE entry must be WHEN; an array can also have a final ELSE. */\nexport type CheckCase<A, R> = A extends readonly []\n ? \"CASE needs at least one arm\"\n : A extends readonly unknown[]\n ? { readonly [K in keyof A]: CheckCaseEntry<A[K], R> } & CheckCaseOrder<A>\n : A extends CaseWhen\n ? CheckCaseEntry<A, R>\n : never;\n\n/** Checks THEN/ELSE values and rejects extra keys on an entry. */\ntype CheckCaseEntry<A, R> = A extends CaseWhen\n ? { readonly [K in keyof A]: K extends \"then\" ? CheckExpression<A[K], R> : K extends \"when\" ? unknown : never }\n : A extends CaseElse\n ? { readonly [K in keyof A]: K extends \"else\" ? CheckExpression<A[K], R> : never }\n : never;\n\n/** Fixed CASE arrays can be checked now; dynamic arrays get the same checks at runtime. */\ntype CheckCaseOrder<A extends readonly unknown[], HasWhen extends boolean = false> = A extends readonly [\n infer H,\n ...infer T,\n]\n ? H extends { readonly else: unknown }\n ? HasWhen extends true\n ? T extends readonly []\n ? unknown\n : \"CASE ELSE must be last\"\n : \"CASE needs a WHEN arm before ELSE\"\n : CheckCaseOrder<T, true>\n : unknown;\n\n/** A CASE has at least one WHEN and an optional ELSE; no ELSE means SQL NULL. */\nexport interface ParsedCaseExpression {\n kind: \"case\";\n whens: [ParsedCaseWhen, ...ParsedCaseWhen[]];\n else?: ParsedExpression;\n}\n\n/** A CASE condition and its parsed result expression. */\ninterface ParsedCaseWhen {\n when: QueryCondition | undefined;\n then: ParsedExpression;\n}\n\n/**\n * Parses WHEN entries and an optional final ELSE into a ParsedCaseExpression.\n * Requires at least one WHEN, even if its condition may later be pruned.\n */\nexport function parseCaseExpression(input: unknown): ParsedCaseExpression {\n const entries = Array.isArray(input) ? input : [input];\n const whens: ParsedCaseWhen[] = [];\n let fallback: ParsedExpression | undefined;\n for (const [i, entry] of entries.entries()) {\n if (isObject(entry) && \"else\" in entry) {\n checkKeys(entry, [\"else\"]);\n if (whens.length === 0) throw new Error(\"CASE needs a WHEN arm before ELSE\");\n if (i !== entries.length - 1) throw new Error(\"CASE ELSE must be last\");\n fallback = parseExpression(entry.else);\n } else {\n if (!isObject(entry) || !(\"when\" in entry) || !(\"then\" in entry))\n throw new Error(\"A CASE arm needs when and then\");\n checkKeys(entry, [\"when\", \"then\"]);\n whens.push({ when: entry.when as QueryCondition | undefined, then: parseExpression(entry.then) });\n }\n }\n if (whens.length === 0) throw new Error(\"CASE needs at least one arm\");\n const [first, ...rest] = whens;\n return { kind: \"case\", whens: [first, ...rest], else: fallback };\n}\n\n/** Removes CASE entries with omitted conditions, falling back to ELSE or SQL NULL if none remain. */\nexport function caseToSql(parsed: ParsedCaseExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment {\n const parts: SqlFragment[] = [];\n for (const entry of parsed.whens) {\n const when = entry.when === undefined ? undefined : ctx.conditionToSql(entry.when);\n if (!when) continue;\n const branch = joinFragments([when, expressionToSql(entry.then, ctx, codec)], \" THEN \");\n parts.push({ ...branch, sql: `WHEN ${branch.sql}` });\n }\n const otherwise = expressionToSql(parsed.else ?? { kind: \"literal\", value: null }, ctx, codec);\n if (parts.length === 0) return otherwise;\n if (parsed.else) parts.push({ ...otherwise, sql: `ELSE ${otherwise.sql}` });\n const body = joinFragments(parts, \" \");\n return { ...body, sql: `(CASE ${body.sql} END)` };\n}\n\n/** CASE is definitely non-null only when every THEN value and the ELSE value are non-null. */\nexport function caseNullable(parsed: ParsedCaseExpression): boolean | undefined {\n return parsed.else &&\n expressionNullable(parsed.else) === false &&\n parsed.whens.every((entry) => expressionNullable(entry.then) === false)\n ? false\n : undefined;\n}\n"],"mappings":";;;;;;;;AAiFA,SAAgB,oBAAoB,OAAsC;CACxE,MAAM,UAAU,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;CACrD,MAAM,QAA0B,CAAC;CACjC,IAAI;CACJ,KAAK,MAAM,CAAC,GAAG,UAAU,QAAQ,QAAQ,GACvC,IAAI,SAAS,KAAK,KAAK,UAAU,OAAO;EACtC,UAAU,OAAO,CAAC,MAAM,CAAC;EACzB,IAAI,MAAM,WAAW,GAAG,MAAM,IAAI,MAAM,mCAAmC;EAC3E,IAAI,MAAM,QAAQ,SAAS,GAAG,MAAM,IAAI,MAAM,wBAAwB;EACtE,WAAW,gBAAgB,MAAM,IAAI;CACvC,OAAO;EACL,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE,UAAU,UAAU,EAAE,UAAU,QACxD,MAAM,IAAI,MAAM,gCAAgC;EAClD,UAAU,OAAO,CAAC,QAAQ,MAAM,CAAC;EACjC,MAAM,KAAK;GAAE,MAAM,MAAM;GAAoC,MAAM,gBAAgB,MAAM,IAAI;EAAE,CAAC;CAClG;CAEF,IAAI,MAAM,WAAW,GAAG,MAAM,IAAI,MAAM,6BAA6B;CACrE,MAAM,CAAC,OAAO,GAAG,QAAQ;CACzB,OAAO;EAAE,MAAM;EAAQ,OAAO,CAAC,OAAO,GAAG,IAAI;EAAG,MAAM;CAAS;AACjE;;AAGA,SAAgB,UAAU,QAA8B,KAAkB,OAAiC;CACzG,MAAM,QAAuB,CAAC;CAC9B,KAAK,MAAM,SAAS,OAAO,OAAO;EAChC,MAAM,OAAO,MAAM,SAAS,KAAA,IAAY,KAAA,IAAY,IAAI,eAAe,MAAM,IAAI;EACjF,IAAI,CAAC,MAAM;EACX,MAAM,SAAS,cAAc,CAAC,MAAM,gBAAgB,MAAM,MAAM,KAAK,KAAK,CAAC,GAAG,QAAQ;EACtF,MAAM,KAAK;GAAE,GAAG;GAAQ,KAAK,QAAQ,OAAO;EAAM,CAAC;CACrD;CACA,MAAM,YAAY,gBAAgB,OAAO,QAAQ;EAAE,MAAM;EAAW,OAAO;CAAK,GAAG,KAAK,KAAK;CAC7F,IAAI,MAAM,WAAW,GAAG,OAAO;CAC/B,IAAI,OAAO,MAAM,MAAM,KAAK;EAAE,GAAG;EAAW,KAAK,QAAQ,UAAU;CAAM,CAAC;CAC1E,MAAM,OAAO,cAAc,OAAO,GAAG;CACrC,OAAO;EAAE,GAAG;EAAM,KAAK,SAAS,KAAK,IAAI;CAAO;AAClD;;AAGA,SAAgB,aAAa,QAAmD;CAC9E,OAAO,OAAO,QACZ,mBAAmB,OAAO,IAAI,MAAM,SACpC,OAAO,MAAM,OAAO,UAAU,mBAAmB,MAAM,IAAI,MAAM,KAAK,IACpE,QACA,KAAA;AACN"}
@@ -0,0 +1,25 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_queries_sql_expressions_parseExpression = require("./parseExpression.cjs");
3
+ const require_queries_sql_expressions_expression = require("./expression.cjs");
4
+ //#region src/queries/sql/expressions/coalesce.ts
5
+ /** Parses COALESCE candidates and requires at least one value. */
6
+ function parseCoalesceExpression(input) {
7
+ return {
8
+ kind: "coalesce",
9
+ candidates: require_queries_sql_expressions_parseExpression.parseNonEmptyOperands(input, "COALESCE")
10
+ };
11
+ }
12
+ /** Renders COALESCE candidates in their original order. */
13
+ function coalesceToSql(parsed, ctx, codec) {
14
+ return require_queries_sql_expressions_expression.functionToSql("COALESCE", parsed.candidates, ctx, codec);
15
+ }
16
+ /** One non-null candidate guarantees a non-null COALESCE result. */
17
+ function coalesceNullable(parsed) {
18
+ return parsed.candidates.some((candidate) => require_queries_sql_expressions_expression.expressionNullable(candidate) === false) ? false : void 0;
19
+ }
20
+ //#endregion
21
+ exports.coalesceNullable = coalesceNullable;
22
+ exports.coalesceToSql = coalesceToSql;
23
+ exports.parseCoalesceExpression = parseCoalesceExpression;
24
+
25
+ //# sourceMappingURL=coalesce.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce.cjs","names":["parseNonEmptyOperands","functionToSql","expressionNullable"],"sources":["../../../../src/queries/sql/expressions/coalesce.ts"],"sourcesContent":["import type { ExprContext, SqlFragment } from \"src/queries/sql/Expr.ts\";\nimport { expressionNullable, functionToSql } from \"src/queries/sql/expressions/expression.ts\";\nimport { parseNonEmptyOperands } from \"src/queries/sql/expressions/parseExpression.ts\";\nimport type { ParsedExpression, ResultCodec } from \"src/queries/sql/expressions/types.ts\";\n\n/** Candidates in order of preference; COALESCE returns the first non-null value. */\nexport interface CoalesceInput {\n readonly coalesce: readonly unknown[];\n}\n\n/** A COALESCE with at least one candidate, in SQL evaluation order. */\nexport interface ParsedCoalesceExpression {\n kind: \"coalesce\";\n candidates: [ParsedExpression, ...ParsedExpression[]];\n}\n\n/** Parses COALESCE candidates and requires at least one value. */\nexport function parseCoalesceExpression(input: unknown): ParsedCoalesceExpression {\n return { kind: \"coalesce\", candidates: parseNonEmptyOperands(input, \"COALESCE\") };\n}\n\n/** Renders COALESCE candidates in their original order. */\nexport function coalesceToSql(parsed: ParsedCoalesceExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment {\n return functionToSql(\"COALESCE\", parsed.candidates, ctx, codec);\n}\n\n/** One non-null candidate guarantees a non-null COALESCE result. */\nexport function coalesceNullable(parsed: ParsedCoalesceExpression): boolean | undefined {\n return parsed.candidates.some((candidate) => expressionNullable(candidate) === false) ? false : undefined;\n}\n"],"mappings":";;;;;AAiBA,SAAgB,wBAAwB,OAA0C;CAChF,OAAO;EAAE,MAAM;EAAY,YAAYA,gDAAAA,sBAAsB,OAAO,UAAU;CAAE;AAClF;;AAGA,SAAgB,cAAc,QAAkC,KAAkB,OAAiC;CACjH,OAAOC,2CAAAA,cAAc,YAAY,OAAO,YAAY,KAAK,KAAK;AAChE;;AAGA,SAAgB,iBAAiB,QAAuD;CACtF,OAAO,OAAO,WAAW,MAAM,cAAcC,2CAAAA,mBAAmB,SAAS,MAAM,KAAK,IAAI,QAAQ,KAAA;AAClG"}
@@ -0,0 +1,21 @@
1
+ import { ParsedExpression, ResultCodec } from "./types.cjs";
2
+ import { ExprContext, SqlFragment } from "../Expr.cjs";
3
+ //#region src/queries/sql/expressions/coalesce.d.ts
4
+ /** Candidates in order of preference; COALESCE returns the first non-null value. */
5
+ interface CoalesceInput {
6
+ readonly coalesce: readonly unknown[];
7
+ }
8
+ /** A COALESCE with at least one candidate, in SQL evaluation order. */
9
+ interface ParsedCoalesceExpression {
10
+ kind: "coalesce";
11
+ candidates: [ParsedExpression, ...ParsedExpression[]];
12
+ }
13
+ /** Parses COALESCE candidates and requires at least one value. */
14
+ declare function parseCoalesceExpression(input: unknown): ParsedCoalesceExpression;
15
+ /** Renders COALESCE candidates in their original order. */
16
+ declare function coalesceToSql(parsed: ParsedCoalesceExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment;
17
+ /** One non-null candidate guarantees a non-null COALESCE result. */
18
+ declare function coalesceNullable(parsed: ParsedCoalesceExpression): boolean | undefined;
19
+ //#endregion
20
+ export { CoalesceInput, ParsedCoalesceExpression, coalesceNullable, coalesceToSql, parseCoalesceExpression };
21
+ //# sourceMappingURL=coalesce.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce.d.cts","names":[],"sources":["../../../../src/queries/sql/expressions/coalesce.ts"],"mappings":";;;;UAMiB;WACN;;;UAIM;EACf;EACA,aAAa,qBAAqB;;;iBAIpB,wBAAwB,iBAAiB;;iBAKzC,cAAc,QAAQ,0BAA0B,KAAK,aAAa,OAAO,cAAc;;iBAKvF,iBAAiB,QAAQ"}
@@ -0,0 +1,21 @@
1
+ import { ParsedExpression, ResultCodec } from "./types.mjs";
2
+ import { ExprContext, SqlFragment } from "../Expr.mjs";
3
+ //#region src/queries/sql/expressions/coalesce.d.ts
4
+ /** Candidates in order of preference; COALESCE returns the first non-null value. */
5
+ interface CoalesceInput {
6
+ readonly coalesce: readonly unknown[];
7
+ }
8
+ /** A COALESCE with at least one candidate, in SQL evaluation order. */
9
+ interface ParsedCoalesceExpression {
10
+ kind: "coalesce";
11
+ candidates: [ParsedExpression, ...ParsedExpression[]];
12
+ }
13
+ /** Parses COALESCE candidates and requires at least one value. */
14
+ declare function parseCoalesceExpression(input: unknown): ParsedCoalesceExpression;
15
+ /** Renders COALESCE candidates in their original order. */
16
+ declare function coalesceToSql(parsed: ParsedCoalesceExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment;
17
+ /** One non-null candidate guarantees a non-null COALESCE result. */
18
+ declare function coalesceNullable(parsed: ParsedCoalesceExpression): boolean | undefined;
19
+ //#endregion
20
+ export { CoalesceInput, ParsedCoalesceExpression, coalesceNullable, coalesceToSql, parseCoalesceExpression };
21
+ //# sourceMappingURL=coalesce.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce.d.mts","names":[],"sources":["../../../../src/queries/sql/expressions/coalesce.ts"],"mappings":";;;;UAMiB;WACN;;;UAIM;EACf;EACA,aAAa,qBAAqB;;;iBAIpB,wBAAwB,iBAAiB;;iBAKzC,cAAc,QAAQ,0BAA0B,KAAK,aAAa,OAAO,cAAc;;iBAKvF,iBAAiB,QAAQ"}
@@ -0,0 +1,22 @@
1
+ import { parseNonEmptyOperands } from "./parseExpression.js";
2
+ import { expressionNullable, functionToSql } from "./expression.js";
3
+ //#region src/queries/sql/expressions/coalesce.ts
4
+ /** Parses COALESCE candidates and requires at least one value. */
5
+ function parseCoalesceExpression(input) {
6
+ return {
7
+ kind: "coalesce",
8
+ candidates: parseNonEmptyOperands(input, "COALESCE")
9
+ };
10
+ }
11
+ /** Renders COALESCE candidates in their original order. */
12
+ function coalesceToSql(parsed, ctx, codec) {
13
+ return functionToSql("COALESCE", parsed.candidates, ctx, codec);
14
+ }
15
+ /** One non-null candidate guarantees a non-null COALESCE result. */
16
+ function coalesceNullable(parsed) {
17
+ return parsed.candidates.some((candidate) => expressionNullable(candidate) === false) ? false : void 0;
18
+ }
19
+ //#endregion
20
+ export { coalesceNullable, coalesceToSql, parseCoalesceExpression };
21
+
22
+ //# sourceMappingURL=coalesce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce.js","names":[],"sources":["../../../../src/queries/sql/expressions/coalesce.ts"],"sourcesContent":["import type { ExprContext, SqlFragment } from \"src/queries/sql/Expr.ts\";\nimport { expressionNullable, functionToSql } from \"src/queries/sql/expressions/expression.ts\";\nimport { parseNonEmptyOperands } from \"src/queries/sql/expressions/parseExpression.ts\";\nimport type { ParsedExpression, ResultCodec } from \"src/queries/sql/expressions/types.ts\";\n\n/** Candidates in order of preference; COALESCE returns the first non-null value. */\nexport interface CoalesceInput {\n readonly coalesce: readonly unknown[];\n}\n\n/** A COALESCE with at least one candidate, in SQL evaluation order. */\nexport interface ParsedCoalesceExpression {\n kind: \"coalesce\";\n candidates: [ParsedExpression, ...ParsedExpression[]];\n}\n\n/** Parses COALESCE candidates and requires at least one value. */\nexport function parseCoalesceExpression(input: unknown): ParsedCoalesceExpression {\n return { kind: \"coalesce\", candidates: parseNonEmptyOperands(input, \"COALESCE\") };\n}\n\n/** Renders COALESCE candidates in their original order. */\nexport function coalesceToSql(parsed: ParsedCoalesceExpression, ctx: ExprContext, codec: ResultCodec): SqlFragment {\n return functionToSql(\"COALESCE\", parsed.candidates, ctx, codec);\n}\n\n/** One non-null candidate guarantees a non-null COALESCE result. */\nexport function coalesceNullable(parsed: ParsedCoalesceExpression): boolean | undefined {\n return parsed.candidates.some((candidate) => expressionNullable(candidate) === false) ? false : undefined;\n}\n"],"mappings":";;;;AAiBA,SAAgB,wBAAwB,OAA0C;CAChF,OAAO;EAAE,MAAM;EAAY,YAAY,sBAAsB,OAAO,UAAU;CAAE;AAClF;;AAGA,SAAgB,cAAc,QAAkC,KAAkB,OAAiC;CACjH,OAAO,cAAc,YAAY,OAAO,YAAY,KAAK,KAAK;AAChE;;AAGA,SAAgB,iBAAiB,QAAuD;CACtF,OAAO,OAAO,WAAW,MAAM,cAAc,mBAAmB,SAAS,MAAM,KAAK,IAAI,QAAQ,KAAA;AAClG"}
@@ -0,0 +1,126 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_serde_TypeInfo = require("../../../serde/TypeInfo.cjs");
3
+ const require_queries_sql_Expr = require("../Expr.cjs");
4
+ const require_utils = require("../../../utils.cjs");
5
+ let node_util = require("node:util");
6
+ //#region src/queries/sql/expressions/codecs.ts
7
+ /**
8
+ * Chooses one decoder for all possible result values. Columns must agree on a compatible SQL type and domain;
9
+ * literals use that column's encoder. This is conservative: PostgreSQL may accept other combinations,
10
+ * but Joist cannot safely choose their decoder. I.e. Author.id and Book.id both store integers but use different tags.
11
+ */
12
+ function chooseExpressionCodec(parsed) {
13
+ const leaves = expressionLeaves(parsed);
14
+ const expressions = leaves.flatMap((leaf) => "codec" in leaf ? [leaf.codec] : []);
15
+ const first = expressions[0];
16
+ if (first) {
17
+ for (const other of expressions.slice(1)) {
18
+ if (other === first) continue;
19
+ const a = first.outputType;
20
+ const b = other.outputType;
21
+ if (!a || !b || !compatibleDbTypes(a.dbType, b.dbType) || a.domain !== b.domain || a.idMeta !== b.idMeta) {
22
+ const mismatches = !a || !b ? ["unknown codec"] : [
23
+ ...!compatibleDbTypes(a.dbType, b.dbType) ? ["SQL type"] : [],
24
+ ...a.domain !== b.domain ? ["domain"] : [],
25
+ ...a.idMeta !== b.idMeta ? ["ID target"] : []
26
+ ];
27
+ throw new Error(`Expression operands need matching SQL types and codecs: ${describeType(a)} vs ${describeType(b)}; mismatched ${mismatches.join(", ")}`);
28
+ }
29
+ }
30
+ for (const leaf of leaves) if ("literal" in leaf) checkLiteral(leaf.literal.value, first.outputType);
31
+ return first;
32
+ }
33
+ const literals = leaves.flatMap((leaf) => "literal" in leaf ? [leaf.literal] : []);
34
+ const types = literals.map((v) => literalType(v.value)).filter((v) => v !== void 0);
35
+ for (const literal of literals) checkLiteral(literal.value, types[0]);
36
+ return new LiteralCodec(types[0] ?? {
37
+ dbType: "text",
38
+ domain: String
39
+ });
40
+ }
41
+ /** Gives literal-only expressions a SQL type so PostgreSQL does not return numbers as text. */
42
+ var LiteralCodec = class {
43
+ outputType;
44
+ constructor(outputType) {
45
+ this.outputType = outputType;
46
+ }
47
+ encode(value) {
48
+ return value;
49
+ }
50
+ decode(value) {
51
+ return this.outputType.domain === BigInt ? BigInt(value) : value;
52
+ }
53
+ };
54
+ /**
55
+ * Finds parsed operands that share a codec, including NULLIF's comparison operand but not CASE conditions.
56
+ * Each kind selects its own value fields; only CASE's THEN and ELSE expressions contribute a result codec.
57
+ */
58
+ function expressionLeaves(parsed) {
59
+ if (parsed instanceof require_queries_sql_Expr.BaseExpr) return [{ codec: parsed }];
60
+ switch (parsed.kind) {
61
+ case "literal": return [{ literal: parsed }];
62
+ case "arrayAgg": {
63
+ const valueCodec = chooseExpressionCodec(parsed.value);
64
+ return [{ codec: {
65
+ outputType: require_serde_TypeInfo.arrayOutputType(valueCodec.outputType),
66
+ encode: (value) => Array.isArray(value) ? value.map((element) => valueCodec.encode(element)) : value,
67
+ decode: (value) => Array.isArray(value) ? value.map((element) => valueCodec.decode(element)) : value
68
+ } }];
69
+ }
70
+ case "coalesce": return parsed.candidates.flatMap((candidate) => expressionLeaves(candidate));
71
+ case "nullIf": return [...expressionLeaves(parsed.value), ...expressionLeaves(parsed.equals)];
72
+ case "greatest":
73
+ case "least": return parsed.values.flatMap((value) => expressionLeaves(value));
74
+ case "case": return [...parsed.whens.flatMap((entry) => expressionLeaves(entry.then)), ...parsed.else ? expressionLeaves(parsed.else) : []];
75
+ default: return require_utils.assertNever(parsed);
76
+ }
77
+ }
78
+ /** Supplies predictable PostgreSQL types for standalone primitive literals. */
79
+ function literalType(value) {
80
+ if (value === null) return void 0;
81
+ if (typeof value === "string") return {
82
+ dbType: "text",
83
+ domain: String,
84
+ arrayElementSafe: true
85
+ };
86
+ if (typeof value === "number") return {
87
+ dbType: "float8",
88
+ domain: Number,
89
+ arrayElementSafe: true
90
+ };
91
+ if (typeof value === "boolean") return {
92
+ dbType: "bool",
93
+ domain: Boolean,
94
+ arrayElementSafe: true
95
+ };
96
+ if (typeof value === "bigint") return {
97
+ dbType: "int8",
98
+ domain: BigInt
99
+ };
100
+ if (value instanceof Date) return {
101
+ dbType: "timestamptz",
102
+ domain: Date
103
+ };
104
+ throw new Error("Object and array literals need an expression with a matching codec");
105
+ }
106
+ /** Rejects primitive literals that disagree with the column; custom values are checked by their encoder. */
107
+ function checkLiteral(value, type) {
108
+ if (value === null || !type) return;
109
+ const domain = type.domain;
110
+ if (domain === String && typeof value !== "string" || domain === Number && typeof value !== "number" || domain === Boolean && typeof value !== "boolean" || domain === BigInt && typeof value !== "bigint" || domain === Date && !(value instanceof Date)) throw new Error(`Expression values must have compatible types: expected ${describeType(type)}, got ${(0, node_util.inspect)(value)} (${typeof value})`);
111
+ }
112
+ /** Names the storage type, conversion domain, and entity tag involved in a codec mismatch. */
113
+ function describeType(type) {
114
+ if (!type) return "unknown codec";
115
+ const domain = typeof type.domain === "function" ? type.domain.name : (0, node_util.inspect)(type.domain, { depth: 0 });
116
+ return `${type.dbType} (domain ${domain}${type.idMeta ? `, ID target ${type.idMeta.type}` : ""})`;
117
+ }
118
+ const compatibleStringDbTypes = /* @__PURE__ */ new Set(["text", "varchar"]);
119
+ /** Allows PostgreSQL scalar string types that resolve to a common string result. */
120
+ function compatibleDbTypes(a, b) {
121
+ return a === b || compatibleStringDbTypes.has(a) && compatibleStringDbTypes.has(b);
122
+ }
123
+ //#endregion
124
+ exports.chooseExpressionCodec = chooseExpressionCodec;
125
+
126
+ //# sourceMappingURL=codecs.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codecs.cjs","names":["BaseExpr","arrayOutputType","assertNever","inspect"],"sources":["../../../../src/queries/sql/expressions/codecs.ts"],"sourcesContent":["import { inspect } from \"node:util\";\n\nimport { BaseExpr } from \"src/queries/sql/Expr.ts\";\nimport type { ParsedExpression, ParsedLiteralExpression, ResultCodec } from \"src/queries/sql/expressions/types.ts\";\nimport { type TypeInfo, arrayOutputType } from \"src/serde/TypeInfo.ts\";\nimport { assertNever } from \"src/utils.ts\";\n\n/**\n * Chooses one decoder for all possible result values. Columns must agree on a compatible SQL type and domain;\n * literals use that column's encoder. This is conservative: PostgreSQL may accept other combinations,\n * but Joist cannot safely choose their decoder. I.e. Author.id and Book.id both store integers but use different tags.\n */\nexport function chooseExpressionCodec(parsed: ParsedExpression): ResultCodec {\n const leaves = expressionLeaves(parsed);\n const expressions = leaves.flatMap((leaf) => (\"codec\" in leaf ? [leaf.codec] : []));\n const first = expressions[0];\n if (first) {\n for (const other of expressions.slice(1)) {\n if (other === first) continue;\n const a = first.outputType;\n const b = other.outputType;\n if (!a || !b || !compatibleDbTypes(a.dbType, b.dbType) || a.domain !== b.domain || a.idMeta !== b.idMeta) {\n const mismatches =\n !a || !b\n ? [\"unknown codec\"]\n : [\n ...(!compatibleDbTypes(a.dbType, b.dbType) ? [\"SQL type\"] : []),\n ...(a.domain !== b.domain ? [\"domain\"] : []),\n ...(a.idMeta !== b.idMeta ? [\"ID target\"] : []),\n ];\n throw new Error(\n `Expression operands need matching SQL types and codecs: ${describeType(a)} vs ${describeType(b)}; mismatched ${mismatches.join(\", \")}`,\n );\n }\n }\n for (const leaf of leaves) if (\"literal\" in leaf) checkLiteral(leaf.literal.value, first.outputType);\n return first;\n }\n const literals = leaves.flatMap((leaf) => (\"literal\" in leaf ? [leaf.literal] : []));\n const types = literals.map((v) => literalType(v.value)).filter((v) => v !== undefined);\n for (const literal of literals) checkLiteral(literal.value, types[0]);\n return new LiteralCodec(types[0] ?? { dbType: \"text\", domain: String });\n}\n\n/** Gives literal-only expressions a SQL type so PostgreSQL does not return numbers as text. */\nclass LiteralCodec {\n constructor(readonly outputType: TypeInfo) {}\n\n encode(value: unknown): unknown {\n return value;\n }\n\n decode(value: unknown): unknown {\n return this.outputType.domain === BigInt ? BigInt(value as string) : value;\n }\n}\n\n/**\n * Finds parsed operands that share a codec, including NULLIF's comparison operand but not CASE conditions.\n * Each kind selects its own value fields; only CASE's THEN and ELSE expressions contribute a result codec.\n */\nfunction expressionLeaves(parsed: ParsedExpression): CodecLeaf[] {\n if (parsed instanceof BaseExpr) return [{ codec: parsed }];\n switch (parsed.kind) {\n case \"literal\":\n return [{ literal: parsed }];\n case \"arrayAgg\": {\n const valueCodec = chooseExpressionCodec(parsed.value);\n return [\n {\n codec: {\n outputType: arrayOutputType(valueCodec.outputType),\n encode: (value) => (Array.isArray(value) ? value.map((element) => valueCodec.encode(element)) : value),\n decode: (value) => (Array.isArray(value) ? value.map((element) => valueCodec.decode(element)) : value),\n },\n },\n ];\n }\n case \"coalesce\":\n return parsed.candidates.flatMap((candidate) => expressionLeaves(candidate));\n case \"nullIf\":\n return [...expressionLeaves(parsed.value), ...expressionLeaves(parsed.equals)];\n case \"greatest\":\n case \"least\":\n return parsed.values.flatMap((value) => expressionLeaves(value));\n case \"case\":\n return [\n ...parsed.whens.flatMap((entry) => expressionLeaves(entry.then)),\n ...(parsed.else ? expressionLeaves(parsed.else) : []),\n ];\n default:\n return assertNever(parsed);\n }\n}\n\n/** One result codec or one literal that will adopt a sibling codec. */\ntype CodecLeaf = { codec: ResultCodec } | { literal: ParsedLiteralExpression };\n\n/** Supplies predictable PostgreSQL types for standalone primitive literals. */\nfunction literalType(value: unknown): TypeInfo | undefined {\n if (value === null) return undefined;\n if (typeof value === \"string\") return { dbType: \"text\", domain: String, arrayElementSafe: true };\n if (typeof value === \"number\") return { dbType: \"float8\", domain: Number, arrayElementSafe: true };\n if (typeof value === \"boolean\") return { dbType: \"bool\", domain: Boolean, arrayElementSafe: true };\n if (typeof value === \"bigint\") return { dbType: \"int8\", domain: BigInt };\n if (value instanceof Date) return { dbType: \"timestamptz\", domain: Date };\n throw new Error(\"Object and array literals need an expression with a matching codec\");\n}\n\n/** Rejects primitive literals that disagree with the column; custom values are checked by their encoder. */\nfunction checkLiteral(value: unknown, type: TypeInfo | undefined): void {\n if (value === null || !type) return;\n const domain = type.domain;\n if (\n (domain === String && typeof value !== \"string\") ||\n (domain === Number && typeof value !== \"number\") ||\n (domain === Boolean && typeof value !== \"boolean\") ||\n (domain === BigInt && typeof value !== \"bigint\") ||\n (domain === Date && !(value instanceof Date))\n ) {\n throw new Error(\n `Expression values must have compatible types: expected ${describeType(type)}, got ${inspect(value)} (${typeof value})`,\n );\n }\n}\n\n/** Names the storage type, conversion domain, and entity tag involved in a codec mismatch. */\nfunction describeType(type: TypeInfo | undefined): string {\n if (!type) return \"unknown codec\";\n const domain = typeof type.domain === \"function\" ? type.domain.name : inspect(type.domain, { depth: 0 });\n return `${type.dbType} (domain ${domain}${type.idMeta ? `, ID target ${type.idMeta.type}` : \"\"})`;\n}\n\nconst compatibleStringDbTypes = new Set([\"text\", \"varchar\"]);\n\n/** Allows PostgreSQL scalar string types that resolve to a common string result. */\nfunction compatibleDbTypes(a: string, b: string): boolean {\n return a === b || (compatibleStringDbTypes.has(a) && compatibleStringDbTypes.has(b));\n}\n"],"mappings":";;;;;;;;;;;AAYA,SAAgB,sBAAsB,QAAuC;CAC3E,MAAM,SAAS,iBAAiB,MAAM;CACtC,MAAM,cAAc,OAAO,SAAS,SAAU,WAAW,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAE;CAClF,MAAM,QAAQ,YAAY;CAC1B,IAAI,OAAO;EACT,KAAK,MAAM,SAAS,YAAY,MAAM,CAAC,GAAG;GACxC,IAAI,UAAU,OAAO;GACrB,MAAM,IAAI,MAAM;GAChB,MAAM,IAAI,MAAM;GAChB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,EAAE,QAAQ,EAAE,MAAM,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ;IACxG,MAAM,aACJ,CAAC,KAAK,CAAC,IACH,CAAC,eAAe,IAChB;KACE,GAAI,CAAC,kBAAkB,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC,UAAU,IAAI,CAAC;KAC7D,GAAI,EAAE,WAAW,EAAE,SAAS,CAAC,QAAQ,IAAI,CAAC;KAC1C,GAAI,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,CAAC;IAC/C;IACN,MAAM,IAAI,MACR,2DAA2D,aAAa,CAAC,EAAE,MAAM,aAAa,CAAC,EAAE,eAAe,WAAW,KAAK,IAAI,GACtI;GACF;EACF;EACA,KAAK,MAAM,QAAQ,QAAQ,IAAI,aAAa,MAAM,aAAa,KAAK,QAAQ,OAAO,MAAM,UAAU;EACnG,OAAO;CACT;CACA,MAAM,WAAW,OAAO,SAAS,SAAU,aAAa,OAAO,CAAC,KAAK,OAAO,IAAI,CAAC,CAAE;CACnF,MAAM,QAAQ,SAAS,KAAK,MAAM,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,MAAM,MAAM,KAAA,CAAS;CACrF,KAAK,MAAM,WAAW,UAAU,aAAa,QAAQ,OAAO,MAAM,EAAE;CACpE,OAAO,IAAI,aAAa,MAAM,MAAM;EAAE,QAAQ;EAAQ,QAAQ;CAAO,CAAC;AACxE;;AAGA,IAAM,eAAN,MAAmB;CACI;CAArB,YAAY,YAA+B;EAAtB,KAAA,aAAA;CAAuB;CAE5C,OAAO,OAAyB;EAC9B,OAAO;CACT;CAEA,OAAO,OAAyB;EAC9B,OAAO,KAAK,WAAW,WAAW,SAAS,OAAO,KAAe,IAAI;CACvE;AACF;;;;;AAMA,SAAS,iBAAiB,QAAuC;CAC/D,IAAI,kBAAkBA,yBAAAA,UAAU,OAAO,CAAC,EAAE,OAAO,OAAO,CAAC;CACzD,QAAQ,OAAO,MAAf;EACE,KAAK,WACH,OAAO,CAAC,EAAE,SAAS,OAAO,CAAC;EAC7B,KAAK,YAAY;GACf,MAAM,aAAa,sBAAsB,OAAO,KAAK;GACrD,OAAO,CACL,EACE,OAAO;IACL,YAAYC,uBAAAA,gBAAgB,WAAW,UAAU;IACjD,SAAS,UAAW,MAAM,QAAQ,KAAK,IAAI,MAAM,KAAK,YAAY,WAAW,OAAO,OAAO,CAAC,IAAI;IAChG,SAAS,UAAW,MAAM,QAAQ,KAAK,IAAI,MAAM,KAAK,YAAY,WAAW,OAAO,OAAO,CAAC,IAAI;GAClG,EACF,CACF;EACF;EACA,KAAK,YACH,OAAO,OAAO,WAAW,SAAS,cAAc,iBAAiB,SAAS,CAAC;EAC7E,KAAK,UACH,OAAO,CAAC,GAAG,iBAAiB,OAAO,KAAK,GAAG,GAAG,iBAAiB,OAAO,MAAM,CAAC;EAC/E,KAAK;EACL,KAAK,SACH,OAAO,OAAO,OAAO,SAAS,UAAU,iBAAiB,KAAK,CAAC;EACjE,KAAK,QACH,OAAO,CACL,GAAG,OAAO,MAAM,SAAS,UAAU,iBAAiB,MAAM,IAAI,CAAC,GAC/D,GAAI,OAAO,OAAO,iBAAiB,OAAO,IAAI,IAAI,CAAC,CACrD;EACF,SACE,OAAOC,cAAAA,YAAY,MAAM;CAC7B;AACF;;AAMA,SAAS,YAAY,OAAsC;CACzD,IAAI,UAAU,MAAM,OAAO,KAAA;CAC3B,IAAI,OAAO,UAAU,UAAU,OAAO;EAAE,QAAQ;EAAQ,QAAQ;EAAQ,kBAAkB;CAAK;CAC/F,IAAI,OAAO,UAAU,UAAU,OAAO;EAAE,QAAQ;EAAU,QAAQ;EAAQ,kBAAkB;CAAK;CACjG,IAAI,OAAO,UAAU,WAAW,OAAO;EAAE,QAAQ;EAAQ,QAAQ;EAAS,kBAAkB;CAAK;CACjG,IAAI,OAAO,UAAU,UAAU,OAAO;EAAE,QAAQ;EAAQ,QAAQ;CAAO;CACvE,IAAI,iBAAiB,MAAM,OAAO;EAAE,QAAQ;EAAe,QAAQ;CAAK;CACxE,MAAM,IAAI,MAAM,oEAAoE;AACtF;;AAGA,SAAS,aAAa,OAAgB,MAAkC;CACtE,IAAI,UAAU,QAAQ,CAAC,MAAM;CAC7B,MAAM,SAAS,KAAK;CACpB,IACG,WAAW,UAAU,OAAO,UAAU,YACtC,WAAW,UAAU,OAAO,UAAU,YACtC,WAAW,WAAW,OAAO,UAAU,aACvC,WAAW,UAAU,OAAO,UAAU,YACtC,WAAW,QAAQ,EAAE,iBAAiB,OAEvC,MAAM,IAAI,MACR,0DAA0D,aAAa,IAAI,EAAE,SAAA,GAAQC,UAAAA,QAAAA,CAAQ,KAAK,EAAE,IAAI,OAAO,MAAM,EACvH;AAEJ;;AAGA,SAAS,aAAa,MAAoC;CACxD,IAAI,CAAC,MAAM,OAAO;CAClB,MAAM,SAAS,OAAO,KAAK,WAAW,aAAa,KAAK,OAAO,QAAA,GAAOA,UAAAA,QAAAA,CAAQ,KAAK,QAAQ,EAAE,OAAO,EAAE,CAAC;CACvG,OAAO,GAAG,KAAK,OAAO,WAAW,SAAS,KAAK,SAAS,eAAe,KAAK,OAAO,SAAS,GAAG;AACjG;AAEA,MAAM,0CAA0B,IAAI,IAAI,CAAC,QAAQ,SAAS,CAAC;;AAG3D,SAAS,kBAAkB,GAAW,GAAoB;CACxD,OAAO,MAAM,KAAM,wBAAwB,IAAI,CAAC,KAAK,wBAAwB,IAAI,CAAC;AACpF"}
@@ -0,0 +1,11 @@
1
+ import { ParsedExpression, ResultCodec } from "./types.cjs";
2
+ //#region src/queries/sql/expressions/codecs.d.ts
3
+ /**
4
+ * Chooses one decoder for all possible result values. Columns must agree on a compatible SQL type and domain;
5
+ * literals use that column's encoder. This is conservative: PostgreSQL may accept other combinations,
6
+ * but Joist cannot safely choose their decoder. I.e. Author.id and Book.id both store integers but use different tags.
7
+ */
8
+ declare function chooseExpressionCodec(parsed: ParsedExpression): ResultCodec;
9
+ //#endregion
10
+ export { chooseExpressionCodec };
11
+ //# sourceMappingURL=codecs.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codecs.d.cts","names":[],"sources":["../../../../src/queries/sql/expressions/codecs.ts"],"mappings":";;;;;;;iBAYgB,sBAAsB,QAAQ,mBAAmB"}
@@ -0,0 +1,11 @@
1
+ import { ParsedExpression, ResultCodec } from "./types.mjs";
2
+ //#region src/queries/sql/expressions/codecs.d.ts
3
+ /**
4
+ * Chooses one decoder for all possible result values. Columns must agree on a compatible SQL type and domain;
5
+ * literals use that column's encoder. This is conservative: PostgreSQL may accept other combinations,
6
+ * but Joist cannot safely choose their decoder. I.e. Author.id and Book.id both store integers but use different tags.
7
+ */
8
+ declare function chooseExpressionCodec(parsed: ParsedExpression): ResultCodec;
9
+ //#endregion
10
+ export { chooseExpressionCodec };
11
+ //# sourceMappingURL=codecs.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codecs.d.mts","names":[],"sources":["../../../../src/queries/sql/expressions/codecs.ts"],"mappings":";;;;;;;iBAYgB,sBAAsB,QAAQ,mBAAmB"}