joist-core 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +176 -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 +167 -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,293 @@
1
+ import { maybeResolveReferenceToId } from "../../keys.js";
2
+ import { skipCondition } from "../skipCondition.js";
3
+ import { withDeferredAlias } from "./DeferredAlias.js";
4
+ import { makeLike, mapToDb } from "../valueFilters.js";
5
+ import { fail } from "../../utils.js";
6
+ import { getConstructorFromTaggedId } from "../../configure.js";
7
+ import { getBaseAndSelfMetas, getMetadata } from "../../EntityMetadata.js";
8
+ import { groupBy } from "joist-utils";
9
+ //#region src/queries/find/Aliases.ts
10
+ /** Creates an alias for complex domain filtering in `em.find`. */
11
+ function alias(cstr) {
12
+ return newAliasProxy(cstr);
13
+ }
14
+ /** Creates multiple aliases for complex filtering. */
15
+ function aliases(...types) {
16
+ return types.map((t) => newAliasProxy(t));
17
+ }
18
+ const aliasMgmt = Symbol("aliasMgmt");
19
+ /** Returns the runtime identity bound by the find parser. */
20
+ function getAliasMgmt(alias) {
21
+ return alias[aliasMgmt];
22
+ }
23
+ /** Returns the original metadata, preserving STI subtype identity. */
24
+ function getAliasMetadata(alias) {
25
+ return alias[aliasMgmt].meta;
26
+ }
27
+ /** Creates domain predicates lazily from entity field metadata. */
28
+ function newAliasProxy(cstr) {
29
+ const meta = getMetadata(cstr);
30
+ const mgmt = {
31
+ tableName: meta.tableName,
32
+ meta,
33
+ condition(build) {
34
+ return withDeferredAlias({
35
+ kind: "raw",
36
+ aliases: [],
37
+ condition: "unset",
38
+ bindings: [],
39
+ pruneable: false
40
+ }, (resolve, copy) => {
41
+ const bound = resolve(mgmt);
42
+ Object.assign(copy, build(bound.meta, bound.alias));
43
+ });
44
+ }
45
+ };
46
+ return new Proxy(cstr, {
47
+ get(_, key) {
48
+ if (key === aliasMgmt) return mgmt;
49
+ if (typeof key !== "string") return void 0;
50
+ const field = meta.allFields[key] ?? fail(`No field ${key} on ${cstr.name}`);
51
+ if (field.kind === "poly") return new PolyReferenceAlias(meta, mgmt, field);
52
+ if ([
53
+ "primaryKey",
54
+ "primitive",
55
+ "enum",
56
+ "m2o"
57
+ ].includes(field.kind)) return new AliasColumnImpl(meta, field, field.serde.columns[0], mgmt);
58
+ return fail(`Unsupported alias field kind ${field.kind}`);
59
+ },
60
+ has(_, key) {
61
+ return key === aliasMgmt || key in meta.allFields;
62
+ }
63
+ });
64
+ }
65
+ /** Recognizes only domain aliases, not physical tables. */
66
+ function isAlias(value) {
67
+ return typeof value === "function" && aliasMgmt in value;
68
+ }
69
+ /** Builds field conditions without implementing the SQL expression protocol. */
70
+ var AliasColumnImpl = class AliasColumnImpl {
71
+ meta;
72
+ field;
73
+ column;
74
+ mgmt;
75
+ constructor(meta, field, column, mgmt) {
76
+ this.meta = meta;
77
+ this.field = field;
78
+ this.column = column;
79
+ this.mgmt = mgmt;
80
+ }
81
+ eq(value) {
82
+ return this.compare("eq", "=", value);
83
+ }
84
+ ne(value) {
85
+ return this.compare("ne", "!=", value);
86
+ }
87
+ gt(value) {
88
+ return this.compare("gt", ">", value);
89
+ }
90
+ gte(value) {
91
+ return this.compare("gte", ">=", value);
92
+ }
93
+ lt(value) {
94
+ return this.compare("lt", "<", value);
95
+ }
96
+ lte(value) {
97
+ return this.compare("lte", "<=", value);
98
+ }
99
+ contains(value) {
100
+ return this.compare("contains", "@>", value);
101
+ }
102
+ ncontains(value) {
103
+ if (value instanceof AliasColumnImpl) return crossColumnCondition(this, value, "@>", true);
104
+ return this.addCondition({
105
+ kind: "ncontains",
106
+ value
107
+ });
108
+ }
109
+ overlaps(value) {
110
+ return this.compare("overlaps", "&&", value);
111
+ }
112
+ noverlaps(value) {
113
+ if (value instanceof AliasColumnImpl) return crossColumnCondition(this, value, "&&", true);
114
+ return this.addCondition({
115
+ kind: "noverlaps",
116
+ value
117
+ });
118
+ }
119
+ in(values) {
120
+ if (values === void 0) return skipCondition;
121
+ if (values === null) return fail("Unsupported");
122
+ if (values.includes(null)) return { or: [this.addCondition({ kind: "is-null" }), this.addCondition({
123
+ kind: "in",
124
+ value: values.filter((v) => v !== null)
125
+ })] };
126
+ return this.addCondition({
127
+ kind: "in",
128
+ value: [...values]
129
+ });
130
+ }
131
+ nin(values) {
132
+ if (values === void 0) return skipCondition;
133
+ if (values === null) return fail("Unsupported");
134
+ return this.addCondition({
135
+ kind: "nin",
136
+ value: values.filter((v) => v !== null)
137
+ });
138
+ }
139
+ between(v1, v2) {
140
+ if (v1 === void 0 || v2 === void 0) return skipCondition;
141
+ return this.addCondition({
142
+ kind: "between",
143
+ value: [v1, v2]
144
+ });
145
+ }
146
+ like(value) {
147
+ return this.addCondition({
148
+ kind: "like",
149
+ value
150
+ });
151
+ }
152
+ ilike(value) {
153
+ return this.addCondition({
154
+ kind: "ilike",
155
+ value
156
+ });
157
+ }
158
+ search(value) {
159
+ return !value ? skipCondition : this.addCondition({
160
+ kind: "ilike",
161
+ value: makeLike(value)
162
+ });
163
+ }
164
+ pathExists(value) {
165
+ return this.addCondition({
166
+ kind: "jsonPathExists",
167
+ value
168
+ });
169
+ }
170
+ pathIsTrue(value) {
171
+ return this.addCondition({
172
+ kind: "jsonPathPredicate",
173
+ value
174
+ });
175
+ }
176
+ raw(exp, bindings) {
177
+ if (bindings === void 0) return skipCondition;
178
+ return withDeferredAlias({
179
+ kind: "raw",
180
+ aliases: [],
181
+ condition: "unset",
182
+ pruneable: false,
183
+ bindings
184
+ }, (resolve, copy) => {
185
+ const r = resolve(this.mgmt);
186
+ const alias = getMaybeCtiAlias(this.meta, this.field, r.meta, r.alias);
187
+ copy.aliases = [alias];
188
+ copy.condition = `${alias}.${this.column.columnName} ${exp}`;
189
+ });
190
+ }
191
+ /** Maps literal values through the field serde and binds aliases only when parsing. */
192
+ addCondition(value) {
193
+ if ("value" in value && value.value === void 0) return skipCondition;
194
+ const cond = {
195
+ kind: "column",
196
+ alias: "unset",
197
+ column: this.column.columnName,
198
+ dbType: this.column.dbType,
199
+ cond: mapToDb(this.column, value)
200
+ };
201
+ return withDeferredAlias(cond, (resolve, copy) => {
202
+ const r = resolve(this.mgmt);
203
+ copy.alias = getMaybeCtiAlias(this.meta, this.field, r.meta, r.alias);
204
+ });
205
+ }
206
+ /** Handles literal values, NULL, and domain cross-alias comparisons. */
207
+ compare(kind, op, value) {
208
+ if (value === void 0) return skipCondition;
209
+ if (value instanceof AliasColumnImpl) return crossColumnCondition(this, value, op);
210
+ if (value === null && (kind === "eq" || kind === "ne")) return this.addCondition({ kind: kind === "eq" ? "is-null" : "not-null" });
211
+ if (value === null && [
212
+ "gt",
213
+ "gte",
214
+ "lt",
215
+ "lte"
216
+ ].includes(kind)) return fail("Unsupported");
217
+ return this.addCondition({
218
+ kind,
219
+ value
220
+ });
221
+ }
222
+ };
223
+ /** Resolves polymorphic predicates to their physical component columns. */
224
+ var PolyReferenceAlias = class {
225
+ meta;
226
+ mgmt;
227
+ field;
228
+ constructor(meta, mgmt, field) {
229
+ this.meta = meta;
230
+ this.mgmt = mgmt;
231
+ this.field = field;
232
+ }
233
+ eq(value) {
234
+ return this.addEqOrNe("eq", value);
235
+ }
236
+ ne(value) {
237
+ return this.addEqOrNe("ne", value);
238
+ }
239
+ in(values) {
240
+ if (values === void 0) return skipCondition;
241
+ const groups = groupBy(values, (id) => getConstructorFromTaggedId(maybeResolveReferenceToId(id)).name);
242
+ return { or: Object.entries(groups).map(([name, ids]) => {
243
+ const comp = this.field.components.find((c) => c.otherMetadata().cstr.name === name) ?? fail(`No component for ${name}`);
244
+ return this.component(comp).addCondition({
245
+ kind: "in",
246
+ value: ids
247
+ });
248
+ }) };
249
+ }
250
+ /** Picks the component from an entity, tagged id, or another domain alias column. */
251
+ addEqOrNe(kind, value) {
252
+ if (value === void 0) return skipCondition;
253
+ if (value === null) return { and: this.field.components.map((c) => this.component(c).addCondition({ kind: kind === "eq" ? "is-null" : "not-null" })) };
254
+ const otherMeta = value instanceof AliasColumnImpl ? value.field.kind === "m2o" ? value.field.otherMetadata() : value.meta : getMetadata(getConstructorFromTaggedId(maybeResolveReferenceToId(value)));
255
+ const comp = this.field.components.find((c) => getBaseAndSelfMetas(otherMeta).includes(c.otherMetadata())) ?? fail(`${this.field.fieldName} has no component for ${otherMeta.type}`);
256
+ const column = this.component(comp);
257
+ return kind === "eq" ? column.eq(value) : column.ne(value);
258
+ }
259
+ /** Uses the component serde, not the first component's codec. */
260
+ component(comp) {
261
+ const column = this.field.serde.columns.find((c) => c.columnName === comp.columnName) ?? fail("Missing column");
262
+ return new AliasColumnImpl(this.meta, this.field, column, this.mgmt);
263
+ }
264
+ };
265
+ /** Adjusts a field's SQL alias when a base alias is bound to a CTI subtype in the join tree. */
266
+ function getMaybeCtiAlias(meta, field, newMeta, newAlias) {
267
+ if (newMeta !== meta && newMeta.inheritanceType === "cti") {
268
+ if (getBaseAndSelfMetas(newMeta).includes(newMeta)) return `${newAlias}_b0`;
269
+ }
270
+ return `${newAlias}${field.aliasSuffix}`;
271
+ }
272
+ /** Compares domain columns with per-parse aliases, preserving condition reuse across find calls. */
273
+ function crossColumnCondition(left, right, op, negate = false) {
274
+ return withDeferredAlias({
275
+ kind: "raw",
276
+ aliases: [],
277
+ condition: "unset",
278
+ bindings: [],
279
+ pruneable: false
280
+ }, (resolve, copy) => {
281
+ const l = resolve(left.mgmt);
282
+ const r = resolve(right.mgmt);
283
+ const a1 = getMaybeCtiAlias(left.meta, left.field, l.meta, l.alias);
284
+ const a2 = getMaybeCtiAlias(right.meta, right.field, r.meta, r.alias);
285
+ copy.aliases = [a1, a2];
286
+ const sql = `${a1}.${left.column.columnName} ${op} ${a2}.${right.column.columnName}`;
287
+ copy.condition = negate ? `NOT (${sql})` : sql;
288
+ });
289
+ }
290
+ //#endregion
291
+ export { alias, aliasMgmt, aliases, getAliasMetadata, getAliasMgmt, getMaybeCtiAlias, isAlias, newAliasProxy };
292
+
293
+ //# sourceMappingURL=Aliases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Aliases.js","names":[],"sources":["../../../src/queries/find/Aliases.ts"],"sourcesContent":["import { groupBy } from \"joist-utils\";\n// Load configure first: relations must not evaluate before their base classes exist.\nimport { getConstructorFromTaggedId } from \"src/configure.ts\";\nimport type { Entity } from \"src/Entity.ts\";\nimport type { IdOf, MaybeAbstractEntityConstructor, TaggedId } from \"src/EntityManager.ts\";\nimport {\n type EntityMetadata,\n type Field,\n type PolymorphicField,\n type PolymorphicFieldComponent,\n getBaseAndSelfMetas,\n getMetadata,\n} from \"src/EntityMetadata.ts\";\nimport { maybeResolveReferenceToId } from \"src/keys.ts\";\nimport type { PredicateBrand } from \"src/queries/conditions.ts\";\nimport { withDeferredAlias } from \"src/queries/find/DeferredAlias.ts\";\nimport type { ExpressionCondition } from \"src/queries/find/EntityFilter.ts\";\nimport type { ColumnCondition, ParsedValueFilter, RawCondition } from \"src/queries/parsedConditions.ts\";\nimport { skipCondition } from \"src/queries/skipCondition.ts\";\nimport { makeLike, mapToDb } from \"src/queries/valueFilters.ts\";\nimport type { Column } from \"src/serde/columns.ts\";\nimport type { FieldsOf } from \"src/typeMap.ts\";\nimport { fail } from \"src/utils.ts\";\n\n/** Creates an alias for complex domain filtering in `em.find`. */\nexport function alias<T extends Entity>(cstr: MaybeAbstractEntityConstructor<T>): Alias<T> {\n return newAliasProxy(cstr);\n}\n\n/** Creates multiple aliases for complex filtering. */\nexport function aliases<T extends readonly MaybeAbstractEntityConstructor<any>[]>(\n ...types: T\n): { [P in keyof T]: T[P] extends MaybeAbstractEntityConstructor<infer E extends Entity> ? Alias<E> : never } {\n return types.map((t) => newAliasProxy(t)) as any;\n}\n\nexport const aliasMgmt = Symbol(\"aliasMgmt\");\nconst aliasColumn = Symbol(\"aliasColumn\");\n\n/** The identity and original entity metadata of an `em.find` alias. */\nexport interface AliasMgmt {\n tableName: string;\n meta: EntityMetadata;\n /**\n * Builds a raw condition using each query's bound metadata and SQL alias, before join pruning.\n * Return a fresh condition instead of mutating shared state; the callback runs only when used.\n */\n condition(build: (meta: EntityMetadata, alias: string) => RawCondition): RawCondition & PredicateBrand<\"domain\">;\n}\n\n/** Keeps domain aliases covariant in their entity type. */\nexport interface AliasBrand<T> extends AliasMgmt {\n readonly __entity: T;\n}\n\n/**\n * Domain field predicates, deliberately separate from SQL table expressions.\n *\n * An Alias names a place in an em.find relationship tree, not a fixed SQL table occurrence.\n * I.e. with `a = alias(Author)`, `{ author: { as: a } }` binds `a` to the Book's Author;\n * binding it under `{ author: { mentor: { as: a } } }` instead makes it the Author's mentor.\n * The find parser builds those joins and knows which entity metadata and SQL name apply there,\n * including any inheritance joins. The Alias cannot know that when `a.firstName.eq(name)` is created.\n *\n * DeferredAlias therefore resolves each predicate to a fresh column/raw condition using that parse's\n * binding. The resolved condition records the SQL aliases it reads, including both sides of a\n * cross-alias comparison. Join pruning uses those references to retain the joins the filter needs.\n * An undefined predicate is skipped, so it does not keep an otherwise-unused join alive; explicit\n * keepAliases and other query dependencies can still retain that join.\n *\n * Table expressions solve a different problem: their sources are supplied directly in from/join,\n * so they render through ExprContext rather than asking the find parser to bind a relationship path.\n * Neither path stores a resolved SQL name on the reusable handle or predicate.\n */\nexport type Alias<T extends Entity> = { readonly [aliasMgmt]: AliasBrand<T> } & {\n [P in keyof FieldsOf<T>]: P extends \"id\"\n ? EntityAlias<T>\n : FieldsOf<T>[P] extends { kind: \"primitive\" | \"enum\"; type: infer V; nullable: infer N }\n ? PrimitiveAlias<V, N extends undefined ? null : never>\n : FieldsOf<T>[P] extends { kind: \"m2o\"; type: infer U extends Entity; nullable: infer N }\n ? EntityAlias<U, N extends undefined ? null : never>\n : FieldsOf<T>[P] extends { kind: \"poly\"; type: infer U extends Entity }\n ? PolyAlias<U>\n : never;\n};\n\n/** A domain column accepted on the other side of a cross-alias comparison. */\nexport interface AliasColumn<V> {\n readonly [aliasColumn]: V;\n}\n\nexport interface PrimitiveAlias<V, N extends null | never = never> extends AliasColumn<V | N> {\n eq(value: V | N | AliasColumn<V | null> | undefined): ExpressionCondition;\n ne(value: V | N | AliasColumn<V | null> | undefined): ExpressionCondition;\n in(values: readonly (V | null)[] | undefined): ExpressionCondition;\n nin(values: readonly (V | null)[] | undefined): ExpressionCondition;\n gt(value: V | AliasColumn<V | null> | undefined): ExpressionCondition;\n gte(value: V | AliasColumn<V | null> | undefined): ExpressionCondition;\n lt(value: V | AliasColumn<V | null> | undefined): ExpressionCondition;\n lte(value: V | AliasColumn<V | null> | undefined): ExpressionCondition;\n like(value: V | undefined): ExpressionCondition;\n ilike(value: V | undefined): ExpressionCondition;\n search(value: V | undefined): ExpressionCondition;\n between(v1: V | undefined, v2: V | undefined): ExpressionCondition;\n // V is already an array; strings also support jsonb contains.\n contains(value: string | V | AliasColumn<V | null> | N | undefined): ExpressionCondition;\n ncontains(value: string | V | AliasColumn<V | null> | N | undefined): ExpressionCondition;\n overlaps(value: V | AliasColumn<V | null> | N | undefined): ExpressionCondition;\n noverlaps(value: V | AliasColumn<V | null> | N | undefined): ExpressionCondition;\n /** Adds a parameterized JSON path existence condition using `@?`. */\n pathExists(jsonPath: string | undefined): ExpressionCondition;\n /** Adds a parameterized JSON path predicate condition using `@@`. */\n pathIsTrue(jsonPath: string | undefined): ExpressionCondition;\n /** Adds an operator and expression with knex-style placeholders, without the column name. */\n raw(exp: string, bindings: readonly unknown[] | undefined): ExpressionCondition;\n}\n\nexport interface EntityAlias<T, N extends null | never = never> extends AliasColumn<IdOf<T> | N> {\n eq(value: T | IdOf<T> | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n ne(value: T | IdOf<T> | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n // Adding `| null` for GraphQL support\n in(values: readonly (T | IdOf<T> | null)[] | null | undefined): ExpressionCondition;\n nin(values: readonly (T | IdOf<T> | null)[] | null | undefined): ExpressionCondition;\n gt(value: IdOf<T> | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n gte(value: IdOf<T> | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n lt(value: IdOf<T> | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n lte(value: IdOf<T> | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n raw(exp: string, bindings: readonly unknown[] | undefined): ExpressionCondition;\n}\n\nexport interface PolyAlias<T extends Entity> {\n eq(value: T | TaggedId | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n ne(value: T | TaggedId | AliasColumn<IdOf<T> | null> | null | undefined): ExpressionCondition;\n in(values: readonly (T | TaggedId)[] | undefined): ExpressionCondition;\n}\n\n/** Returns the runtime identity bound by the find parser. */\nexport function getAliasMgmt(alias: { readonly [aliasMgmt]: AliasMgmt }): AliasMgmt {\n return alias[aliasMgmt];\n}\n\n/** Returns the original metadata, preserving STI subtype identity. */\nexport function getAliasMetadata<T extends Entity>(alias: Alias<T>): EntityMetadata<T> {\n return alias[aliasMgmt].meta as EntityMetadata<T>;\n}\n\n/** Creates domain predicates lazily from entity field metadata. */\nexport function newAliasProxy<T extends Entity>(cstr: MaybeAbstractEntityConstructor<T>): Alias<T> {\n const meta = getMetadata(cstr);\n const mgmt: AliasMgmt = {\n tableName: meta.tableName,\n meta,\n condition(build) {\n const cond: RawCondition = { kind: \"raw\", aliases: [], condition: \"unset\", bindings: [], pruneable: false };\n return withDeferredAlias(cond, (resolve, copy) => {\n const bound = resolve(mgmt);\n Object.assign(copy, build(bound.meta, bound.alias));\n });\n },\n };\n return new Proxy(cstr, {\n get(_, key) {\n if (key === aliasMgmt) return mgmt;\n if (typeof key !== \"string\") return undefined;\n const field = meta.allFields[key] ?? fail(`No field ${key} on ${cstr.name}`);\n if (field.kind === \"poly\") return new PolyReferenceAlias(meta, mgmt, field);\n if ([\"primaryKey\", \"primitive\", \"enum\", \"m2o\"].includes(field.kind)) {\n return new AliasColumnImpl(meta, field, field.serde!.columns[0], mgmt);\n }\n return fail(`Unsupported alias field kind ${field.kind}`);\n },\n has(_, key) {\n return key === aliasMgmt || key in meta.allFields;\n },\n }) as unknown as Alias<T>;\n}\n\n/** Recognizes only domain aliases, not physical tables. */\nexport function isAlias(value: unknown): value is Alias<Entity> {\n return typeof value === \"function\" && aliasMgmt in value;\n}\n\n/** Builds field conditions without implementing the SQL expression protocol. */\nclass AliasColumnImpl {\n declare readonly [aliasColumn]: unknown;\n\n constructor(\n readonly meta: EntityMetadata,\n readonly field: Field & { aliasSuffix: string },\n readonly column: Column,\n readonly mgmt: AliasMgmt,\n ) {}\n\n eq(value: unknown): ExpressionCondition {\n return this.compare(\"eq\", \"=\", value);\n }\n ne(value: unknown): ExpressionCondition {\n return this.compare(\"ne\", \"!=\", value);\n }\n gt(value: unknown): ExpressionCondition {\n return this.compare(\"gt\", \">\", value);\n }\n gte(value: unknown): ExpressionCondition {\n return this.compare(\"gte\", \">=\", value);\n }\n lt(value: unknown): ExpressionCondition {\n return this.compare(\"lt\", \"<\", value);\n }\n lte(value: unknown): ExpressionCondition {\n return this.compare(\"lte\", \"<=\", value);\n }\n contains(value: unknown): ExpressionCondition {\n return this.compare(\"contains\", \"@>\", value);\n }\n ncontains(value: unknown): ExpressionCondition {\n if (value instanceof AliasColumnImpl) return crossColumnCondition(this, value, \"@>\", true);\n return this.addCondition({ kind: \"ncontains\", value: value as readonly unknown[] });\n }\n overlaps(value: unknown): ExpressionCondition {\n return this.compare(\"overlaps\", \"&&\", value);\n }\n noverlaps(value: unknown): ExpressionCondition {\n if (value instanceof AliasColumnImpl) return crossColumnCondition(this, value, \"&&\", true);\n return this.addCondition({ kind: \"noverlaps\", value: value as readonly unknown[] });\n }\n\n in(values: readonly unknown[] | null | undefined): ExpressionCondition {\n if (values === undefined) return skipCondition;\n if (values === null) return fail(\"Unsupported\");\n if (values.includes(null)) {\n return {\n or: [\n this.addCondition({ kind: \"is-null\" }),\n this.addCondition({ kind: \"in\", value: values.filter((v) => v !== null) }),\n ],\n };\n }\n return this.addCondition({ kind: \"in\", value: [...values] });\n }\n\n nin(values: readonly unknown[] | null | undefined): ExpressionCondition {\n if (values === undefined) return skipCondition;\n if (values === null) return fail(\"Unsupported\");\n return this.addCondition({ kind: \"nin\", value: values.filter((v) => v !== null) });\n }\n\n between(v1: unknown, v2: unknown): ExpressionCondition {\n if (v1 === undefined || v2 === undefined) return skipCondition;\n return this.addCondition({ kind: \"between\", value: [v1, v2] });\n }\n\n like(value: unknown): ExpressionCondition {\n return this.addCondition({ kind: \"like\", value });\n }\n ilike(value: unknown): ExpressionCondition {\n return this.addCondition({ kind: \"ilike\", value });\n }\n search(value: unknown): ExpressionCondition {\n // Check !value so that empty strings are pruned\n return !value ? skipCondition : this.addCondition({ kind: \"ilike\", value: makeLike(value) });\n }\n pathExists(value: string | undefined): ExpressionCondition {\n return this.addCondition({ kind: \"jsonPathExists\", value: value! });\n }\n pathIsTrue(value: string | undefined): ExpressionCondition {\n return this.addCondition({ kind: \"jsonPathPredicate\", value: value! });\n }\n\n raw(exp: string, bindings: readonly unknown[] | undefined): ExpressionCondition {\n if (bindings === undefined) return skipCondition;\n const cond: RawCondition = { kind: \"raw\", aliases: [], condition: \"unset\", pruneable: false, bindings };\n return withDeferredAlias(cond, (resolve, copy) => {\n const r = resolve(this.mgmt);\n const alias = getMaybeCtiAlias(this.meta, this.field, r.meta, r.alias);\n copy.aliases = [alias];\n copy.condition = `${alias}.${this.column.columnName} ${exp}`;\n });\n }\n\n /** Maps literal values through the field serde and binds aliases only when parsing. */\n addCondition(value: ParsedValueFilter<unknown>): ExpressionCondition {\n if (\"value\" in value && value.value === undefined) return skipCondition;\n const cond: ColumnCondition = {\n kind: \"column\",\n alias: \"unset\",\n column: this.column.columnName,\n dbType: this.column.dbType,\n cond: mapToDb(this.column, value),\n };\n return withDeferredAlias(cond, (resolve, copy) => {\n const r = resolve(this.mgmt);\n copy.alias = getMaybeCtiAlias(this.meta, this.field, r.meta, r.alias);\n });\n }\n\n /** Handles literal values, NULL, and domain cross-alias comparisons. */\n private compare(\n kind: \"eq\" | \"ne\" | \"gt\" | \"gte\" | \"lt\" | \"lte\" | \"contains\" | \"ncontains\" | \"overlaps\",\n op: string,\n value: unknown,\n ): ExpressionCondition {\n if (value === undefined) return skipCondition;\n if (value instanceof AliasColumnImpl) return crossColumnCondition(this, value, op);\n if (value === null && (kind === \"eq\" || kind === \"ne\"))\n return this.addCondition({ kind: kind === \"eq\" ? \"is-null\" : \"not-null\" });\n if (value === null && [\"gt\", \"gte\", \"lt\", \"lte\"].includes(kind)) return fail(\"Unsupported\");\n return this.addCondition({ kind, value } as ParsedValueFilter<unknown>);\n }\n}\n\n/** Resolves polymorphic predicates to their physical component columns. */\nclass PolyReferenceAlias {\n constructor(\n private meta: EntityMetadata,\n private mgmt: AliasMgmt,\n private field: PolymorphicField & { aliasSuffix: string },\n ) {}\n\n eq(value: unknown): ExpressionCondition {\n return this.addEqOrNe(\"eq\", value);\n }\n ne(value: unknown): ExpressionCondition {\n return this.addEqOrNe(\"ne\", value);\n }\n\n in(values: readonly (Entity | TaggedId)[] | undefined): ExpressionCondition {\n if (values === undefined) return skipCondition;\n // Split up the ids by constructor\n const groups = groupBy(values, (id) => getConstructorFromTaggedId(maybeResolveReferenceToId(id)!).name);\n // Or together `parent_book_id in (1,2,3) OR parent_author_id IN (4,5,6)`\n return {\n or: Object.entries(groups).map(([name, ids]) => {\n const comp =\n this.field.components.find((c) => c.otherMetadata().cstr.name === name) ?? fail(`No component for ${name}`);\n return this.component(comp).addCondition({ kind: \"in\", value: ids });\n }),\n };\n }\n\n /** Picks the component from an entity, tagged id, or another domain alias column. */\n private addEqOrNe(kind: \"eq\" | \"ne\", value: unknown): ExpressionCondition {\n if (value === undefined) return skipCondition;\n if (value === null) {\n // We can AND each of the components as many conditions\n return {\n and: this.field.components.map((c) =>\n this.component(c).addCondition({ kind: kind === \"eq\" ? \"is-null\" : \"not-null\" }),\n ),\n };\n }\n const otherMeta =\n value instanceof AliasColumnImpl\n ? value.field.kind === \"m2o\"\n ? value.field.otherMetadata()\n : value.meta\n : getMetadata(getConstructorFromTaggedId(maybeResolveReferenceToId(value as Entity | TaggedId)!));\n const comp =\n this.field.components.find((c) => getBaseAndSelfMetas(otherMeta).includes(c.otherMetadata())) ??\n fail(`${this.field.fieldName} has no component for ${otherMeta.type}`);\n const column = this.component(comp);\n return kind === \"eq\" ? column.eq(value) : column.ne(value);\n }\n\n /** Uses the component serde, not the first component's codec. */\n private component(comp: PolymorphicFieldComponent): AliasColumnImpl {\n const column = this.field.serde.columns.find((c) => c.columnName === comp.columnName) ?? fail(\"Missing column\");\n return new AliasColumnImpl(this.meta, this.field, column, this.mgmt);\n }\n}\n\n/** Adjusts a field's SQL alias when a base alias is bound to a CTI subtype in the join tree. */\nexport function getMaybeCtiAlias(\n meta: EntityMetadata,\n field: Field & { aliasSuffix: string },\n newMeta: EntityMetadata,\n newAlias: string,\n): string {\n // Do we have mismatched `em.find(ChildMeta)` with a `alias(BaseMeta)`? If so, the\n // usual `${field.aliasSuffix}` won't know it should have a suffix, so we need to calc it.\n if (newMeta !== meta && newMeta.inheritanceType === \"cti\") {\n const bases = getBaseAndSelfMetas(newMeta);\n const fieldIsFromBase = bases.includes(newMeta);\n if (fieldIsFromBase) return `${newAlias}_b0`;\n }\n return `${newAlias}${field.aliasSuffix}`;\n}\n\n/** Compares domain columns with per-parse aliases, preserving condition reuse across find calls. */\nfunction crossColumnCondition(\n left: AliasColumnImpl,\n right: AliasColumnImpl,\n op: string,\n negate = false,\n): RawCondition & PredicateBrand<\"domain\"> {\n const cond: RawCondition = { kind: \"raw\", aliases: [], condition: \"unset\", bindings: [], pruneable: false };\n return withDeferredAlias(cond, (resolve, copy) => {\n const l = resolve(left.mgmt);\n const r = resolve(right.mgmt);\n const a1 = getMaybeCtiAlias(left.meta, left.field, l.meta, l.alias);\n const a2 = getMaybeCtiAlias(right.meta, right.field, r.meta, r.alias);\n copy.aliases = [a1, a2];\n const sql = `${a1}.${left.column.columnName} ${op} ${a2}.${right.column.columnName}`;\n copy.condition = negate ? `NOT (${sql})` : sql;\n });\n}\n"],"mappings":";;;;;;;;;;AAyBA,SAAgB,MAAwB,MAAmD;CACzF,OAAO,cAAc,IAAI;AAC3B;;AAGA,SAAgB,QACd,GAAG,OACyG;CAC5G,OAAO,MAAM,KAAK,MAAM,cAAc,CAAC,CAAC;AAC1C;AAEA,MAAa,YAAY,OAAO,WAAW;;AAqG3C,SAAgB,aAAa,OAAuD;CAClF,OAAO,MAAM;AACf;;AAGA,SAAgB,iBAAmC,OAAoC;CACrF,OAAO,MAAM,UAAU,CAAC;AAC1B;;AAGA,SAAgB,cAAgC,MAAmD;CACjG,MAAM,OAAO,YAAY,IAAI;CAC7B,MAAM,OAAkB;EACtB,WAAW,KAAK;EAChB;EACA,UAAU,OAAO;GAEf,OAAO,kBAAkB;IADI,MAAM;IAAO,SAAS,CAAC;IAAG,WAAW;IAAS,UAAU,CAAC;IAAG,WAAW;GACxE,IAAI,SAAS,SAAS;IAChD,MAAM,QAAQ,QAAQ,IAAI;IAC1B,OAAO,OAAO,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,CAAC;GACpD,CAAC;EACH;CACF;CACA,OAAO,IAAI,MAAM,MAAM;EACrB,IAAI,GAAG,KAAK;GACV,IAAI,QAAQ,WAAW,OAAO;GAC9B,IAAI,OAAO,QAAQ,UAAU,OAAO,KAAA;GACpC,MAAM,QAAQ,KAAK,UAAU,QAAQ,KAAK,YAAY,IAAI,MAAM,KAAK,MAAM;GAC3E,IAAI,MAAM,SAAS,QAAQ,OAAO,IAAI,mBAAmB,MAAM,MAAM,KAAK;GAC1E,IAAI;IAAC;IAAc;IAAa;IAAQ;GAAK,CAAC,CAAC,SAAS,MAAM,IAAI,GAChE,OAAO,IAAI,gBAAgB,MAAM,OAAO,MAAM,MAAO,QAAQ,IAAI,IAAI;GAEvE,OAAO,KAAK,gCAAgC,MAAM,MAAM;EAC1D;EACA,IAAI,GAAG,KAAK;GACV,OAAO,QAAQ,aAAa,OAAO,KAAK;EAC1C;CACF,CAAC;AACH;;AAGA,SAAgB,QAAQ,OAAwC;CAC9D,OAAO,OAAO,UAAU,cAAc,aAAa;AACrD;;AAGA,IAAM,kBAAN,MAAM,gBAAgB;CAIT;CACA;CACA;CACA;CAJX,YACE,MACA,OACA,QACA,MACA;EAJS,KAAA,OAAA;EACA,KAAA,QAAA;EACA,KAAA,SAAA;EACA,KAAA,OAAA;CACR;CAEH,GAAG,OAAqC;EACtC,OAAO,KAAK,QAAQ,MAAM,KAAK,KAAK;CACtC;CACA,GAAG,OAAqC;EACtC,OAAO,KAAK,QAAQ,MAAM,MAAM,KAAK;CACvC;CACA,GAAG,OAAqC;EACtC,OAAO,KAAK,QAAQ,MAAM,KAAK,KAAK;CACtC;CACA,IAAI,OAAqC;EACvC,OAAO,KAAK,QAAQ,OAAO,MAAM,KAAK;CACxC;CACA,GAAG,OAAqC;EACtC,OAAO,KAAK,QAAQ,MAAM,KAAK,KAAK;CACtC;CACA,IAAI,OAAqC;EACvC,OAAO,KAAK,QAAQ,OAAO,MAAM,KAAK;CACxC;CACA,SAAS,OAAqC;EAC5C,OAAO,KAAK,QAAQ,YAAY,MAAM,KAAK;CAC7C;CACA,UAAU,OAAqC;EAC7C,IAAI,iBAAiB,iBAAiB,OAAO,qBAAqB,MAAM,OAAO,MAAM,IAAI;EACzF,OAAO,KAAK,aAAa;GAAE,MAAM;GAAoB;EAA4B,CAAC;CACpF;CACA,SAAS,OAAqC;EAC5C,OAAO,KAAK,QAAQ,YAAY,MAAM,KAAK;CAC7C;CACA,UAAU,OAAqC;EAC7C,IAAI,iBAAiB,iBAAiB,OAAO,qBAAqB,MAAM,OAAO,MAAM,IAAI;EACzF,OAAO,KAAK,aAAa;GAAE,MAAM;GAAoB;EAA4B,CAAC;CACpF;CAEA,GAAG,QAAoE;EACrE,IAAI,WAAW,KAAA,GAAW,OAAO;EACjC,IAAI,WAAW,MAAM,OAAO,KAAK,aAAa;EAC9C,IAAI,OAAO,SAAS,IAAI,GACtB,OAAO,EACL,IAAI,CACF,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC,GACrC,KAAK,aAAa;GAAE,MAAM;GAAM,OAAO,OAAO,QAAQ,MAAM,MAAM,IAAI;EAAE,CAAC,CAC3E,EACF;EAEF,OAAO,KAAK,aAAa;GAAE,MAAM;GAAM,OAAO,CAAC,GAAG,MAAM;EAAE,CAAC;CAC7D;CAEA,IAAI,QAAoE;EACtE,IAAI,WAAW,KAAA,GAAW,OAAO;EACjC,IAAI,WAAW,MAAM,OAAO,KAAK,aAAa;EAC9C,OAAO,KAAK,aAAa;GAAE,MAAM;GAAO,OAAO,OAAO,QAAQ,MAAM,MAAM,IAAI;EAAE,CAAC;CACnF;CAEA,QAAQ,IAAa,IAAkC;EACrD,IAAI,OAAO,KAAA,KAAa,OAAO,KAAA,GAAW,OAAO;EACjD,OAAO,KAAK,aAAa;GAAE,MAAM;GAAW,OAAO,CAAC,IAAI,EAAE;EAAE,CAAC;CAC/D;CAEA,KAAK,OAAqC;EACxC,OAAO,KAAK,aAAa;GAAE,MAAM;GAAQ;EAAM,CAAC;CAClD;CACA,MAAM,OAAqC;EACzC,OAAO,KAAK,aAAa;GAAE,MAAM;GAAS;EAAM,CAAC;CACnD;CACA,OAAO,OAAqC;EAE1C,OAAO,CAAC,QAAQ,gBAAgB,KAAK,aAAa;GAAE,MAAM;GAAS,OAAO,SAAS,KAAK;EAAE,CAAC;CAC7F;CACA,WAAW,OAAgD;EACzD,OAAO,KAAK,aAAa;GAAE,MAAM;GAAyB;EAAO,CAAC;CACpE;CACA,WAAW,OAAgD;EACzD,OAAO,KAAK,aAAa;GAAE,MAAM;GAA4B;EAAO,CAAC;CACvE;CAEA,IAAI,KAAa,UAA+D;EAC9E,IAAI,aAAa,KAAA,GAAW,OAAO;EAEnC,OAAO,kBAAkB;GADI,MAAM;GAAO,SAAS,CAAC;GAAG,WAAW;GAAS,WAAW;GAAO;EACjE,IAAI,SAAS,SAAS;GAChD,MAAM,IAAI,QAAQ,KAAK,IAAI;GAC3B,MAAM,QAAQ,iBAAiB,KAAK,MAAM,KAAK,OAAO,EAAE,MAAM,EAAE,KAAK;GACrE,KAAK,UAAU,CAAC,KAAK;GACrB,KAAK,YAAY,GAAG,MAAM,GAAG,KAAK,OAAO,WAAW,GAAG;EACzD,CAAC;CACH;;CAGA,aAAa,OAAwD;EACnE,IAAI,WAAW,SAAS,MAAM,UAAU,KAAA,GAAW,OAAO;EAC1D,MAAM,OAAwB;GAC5B,MAAM;GACN,OAAO;GACP,QAAQ,KAAK,OAAO;GACpB,QAAQ,KAAK,OAAO;GACpB,MAAM,QAAQ,KAAK,QAAQ,KAAK;EAClC;EACA,OAAO,kBAAkB,OAAO,SAAS,SAAS;GAChD,MAAM,IAAI,QAAQ,KAAK,IAAI;GAC3B,KAAK,QAAQ,iBAAiB,KAAK,MAAM,KAAK,OAAO,EAAE,MAAM,EAAE,KAAK;EACtE,CAAC;CACH;;CAGA,QACE,MACA,IACA,OACqB;EACrB,IAAI,UAAU,KAAA,GAAW,OAAO;EAChC,IAAI,iBAAiB,iBAAiB,OAAO,qBAAqB,MAAM,OAAO,EAAE;EACjF,IAAI,UAAU,SAAS,SAAS,QAAQ,SAAS,OAC/C,OAAO,KAAK,aAAa,EAAE,MAAM,SAAS,OAAO,YAAY,WAAW,CAAC;EAC3E,IAAI,UAAU,QAAQ;GAAC;GAAM;GAAO;GAAM;EAAK,CAAC,CAAC,SAAS,IAAI,GAAG,OAAO,KAAK,aAAa;EAC1F,OAAO,KAAK,aAAa;GAAE;GAAM;EAAM,CAA+B;CACxE;AACF;;AAGA,IAAM,qBAAN,MAAyB;CAEb;CACA;CACA;CAHV,YACE,MACA,MACA,OACA;EAHQ,KAAA,OAAA;EACA,KAAA,OAAA;EACA,KAAA,QAAA;CACP;CAEH,GAAG,OAAqC;EACtC,OAAO,KAAK,UAAU,MAAM,KAAK;CACnC;CACA,GAAG,OAAqC;EACtC,OAAO,KAAK,UAAU,MAAM,KAAK;CACnC;CAEA,GAAG,QAAyE;EAC1E,IAAI,WAAW,KAAA,GAAW,OAAO;EAEjC,MAAM,SAAS,QAAQ,SAAS,OAAO,2BAA2B,0BAA0B,EAAE,CAAE,CAAC,CAAC,IAAI;EAEtG,OAAO,EACL,IAAI,OAAO,QAAQ,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,SAAS;GAC9C,MAAM,OACJ,KAAK,MAAM,WAAW,MAAM,MAAM,EAAE,cAAc,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,KAAK,oBAAoB,MAAM;GAC5G,OAAO,KAAK,UAAU,IAAI,CAAC,CAAC,aAAa;IAAE,MAAM;IAAM,OAAO;GAAI,CAAC;EACrE,CAAC,EACH;CACF;;CAGA,UAAkB,MAAmB,OAAqC;EACxE,IAAI,UAAU,KAAA,GAAW,OAAO;EAChC,IAAI,UAAU,MAEZ,OAAO,EACL,KAAK,KAAK,MAAM,WAAW,KAAK,MAC9B,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,EAAE,MAAM,SAAS,OAAO,YAAY,WAAW,CAAC,CACjF,EACF;EAEF,MAAM,YACJ,iBAAiB,kBACb,MAAM,MAAM,SAAS,QACnB,MAAM,MAAM,cAAc,IAC1B,MAAM,OACR,YAAY,2BAA2B,0BAA0B,KAA0B,CAAE,CAAC;EACpG,MAAM,OACJ,KAAK,MAAM,WAAW,MAAM,MAAM,oBAAoB,SAAS,CAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,KAC5F,KAAK,GAAG,KAAK,MAAM,UAAU,wBAAwB,UAAU,MAAM;EACvE,MAAM,SAAS,KAAK,UAAU,IAAI;EAClC,OAAO,SAAS,OAAO,OAAO,GAAG,KAAK,IAAI,OAAO,GAAG,KAAK;CAC3D;;CAGA,UAAkB,MAAkD;EAClE,MAAM,SAAS,KAAK,MAAM,MAAM,QAAQ,MAAM,MAAM,EAAE,eAAe,KAAK,UAAU,KAAK,KAAK,gBAAgB;EAC9G,OAAO,IAAI,gBAAgB,KAAK,MAAM,KAAK,OAAO,QAAQ,KAAK,IAAI;CACrE;AACF;;AAGA,SAAgB,iBACd,MACA,OACA,SACA,UACQ;CAGR,IAAI,YAAY,QAAQ,QAAQ,oBAAoB,OACpC;MAAA,oBAAoB,OACN,CAAC,CAAC,SAAS,OACrB,GAAG,OAAO,GAAG,SAAS;CAAA;CAE1C,OAAO,GAAG,WAAW,MAAM;AAC7B;;AAGA,SAAS,qBACP,MACA,OACA,IACA,SAAS,OACgC;CAEzC,OAAO,kBAAkB;EADI,MAAM;EAAO,SAAS,CAAC;EAAG,WAAW;EAAS,UAAU,CAAC;EAAG,WAAW;CACxE,IAAI,SAAS,SAAS;EAChD,MAAM,IAAI,QAAQ,KAAK,IAAI;EAC3B,MAAM,IAAI,QAAQ,MAAM,IAAI;EAC5B,MAAM,KAAK,iBAAiB,KAAK,MAAM,KAAK,OAAO,EAAE,MAAM,EAAE,KAAK;EAClE,MAAM,KAAK,iBAAiB,MAAM,MAAM,MAAM,OAAO,EAAE,MAAM,EAAE,KAAK;EACpE,KAAK,UAAU,CAAC,IAAI,EAAE;EACtB,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,OAAO,WAAW,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,OAAO;EACxE,KAAK,YAAY,SAAS,QAAQ,IAAI,KAAK;CAC7C,CAAC;AACH"}
@@ -0,0 +1,25 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_queries_conditions = require("../conditions.cjs");
3
+ //#region src/queries/find/DeferredAlias.ts
4
+ const deferredAliasSym = Symbol("joist.deferredAliasCondition");
5
+ /** Detects conditions that carry a per-parse alias resolver. */
6
+ function isDeferredAliasCondition(cond) {
7
+ return typeof cond === "object" && cond !== null && deferredAliasSym in cond;
8
+ }
9
+ /** Tags a condition without changing its enumerable shape; resolution only mutates a fresh copy. */
10
+ function withDeferredAlias(cond, resolve) {
11
+ return Object.defineProperty(require_queries_conditions.brandPredicate(cond, "domain"), deferredAliasSym, {
12
+ value: (r) => {
13
+ const copy = { ...cond };
14
+ resolve(r, copy);
15
+ return copy;
16
+ },
17
+ enumerable: false
18
+ });
19
+ }
20
+ //#endregion
21
+ exports.deferredAliasSym = deferredAliasSym;
22
+ exports.isDeferredAliasCondition = isDeferredAliasCondition;
23
+ exports.withDeferredAlias = withDeferredAlias;
24
+
25
+ //# sourceMappingURL=DeferredAlias.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeferredAlias.cjs","names":["brandPredicate"],"sources":["../../../src/queries/find/DeferredAlias.ts"],"sourcesContent":["import type { EntityMetadata } from \"src/EntityMetadata.ts\";\nimport { type PredicateBrand, brandPredicate } from \"src/queries/conditions.ts\";\n// Erased imports keep domain predicates independent of the query parser at module load time.\nimport type { AliasMgmt } from \"src/queries/find/Aliases.ts\";\nimport type { ColumnCondition, RawCondition } from \"src/queries/parsedConditions.ts\";\n\nexport const deferredAliasSym: unique symbol = Symbol(\"joist.deferredAliasCondition\");\n\n/** Resolves a domain alias to this em.find parse's binding. */\nexport type AliasResolver = (handle: AliasMgmt) => {\n meta: EntityMetadata;\n alias: string;\n};\n\n/** A domain condition whose SQL aliases are resolved afresh for each occurrence in em.find. */\nexport interface DeferredAliasCondition<C = ColumnCondition | RawCondition> extends PredicateBrand<\"domain\"> {\n [deferredAliasSym]: (resolve: AliasResolver) => C;\n}\n\n/** Detects conditions that carry a per-parse alias resolver. */\nexport function isDeferredAliasCondition<C>(cond: C): cond is C & DeferredAliasCondition<C> {\n return typeof cond === \"object\" && cond !== null && deferredAliasSym in cond;\n}\n\n/** Tags a condition without changing its enumerable shape; resolution only mutates a fresh copy. */\nexport function withDeferredAlias<C extends object>(\n cond: C,\n resolve: (r: AliasResolver, copy: C) => void,\n): C & DeferredAliasCondition<C> {\n return Object.defineProperty(brandPredicate(cond, \"domain\"), deferredAliasSym, {\n value: (r: AliasResolver) => {\n const copy = { ...cond };\n resolve(r, copy);\n return copy;\n },\n enumerable: false,\n }) as C & DeferredAliasCondition<C>;\n}\n"],"mappings":";;;AAMA,MAAa,mBAAkC,OAAO,8BAA8B;;AAcpF,SAAgB,yBAA4B,MAAgD;CAC1F,OAAO,OAAO,SAAS,YAAY,SAAS,QAAQ,oBAAoB;AAC1E;;AAGA,SAAgB,kBACd,MACA,SAC+B;CAC/B,OAAO,OAAO,eAAeA,2BAAAA,eAAe,MAAM,QAAQ,GAAG,kBAAkB;EAC7E,QAAQ,MAAqB;GAC3B,MAAM,OAAO,EAAE,GAAG,KAAK;GACvB,QAAQ,GAAG,IAAI;GACf,OAAO;EACT;EACA,YAAY;CACd,CAAC;AACH"}
@@ -0,0 +1,22 @@
1
+ import { ColumnCondition, RawCondition } from "../parsedConditions.cjs";
2
+ import { PredicateBrand } from "../conditions.cjs";
3
+ import { AliasMgmt } from "./Aliases.cjs";
4
+ import { EntityMetadata } from "../../EntityMetadata.cjs";
5
+ //#region src/queries/find/DeferredAlias.d.ts
6
+ declare const deferredAliasSym: unique symbol;
7
+ /** Resolves a domain alias to this em.find parse's binding. */
8
+ type AliasResolver = (handle: AliasMgmt) => {
9
+ meta: EntityMetadata;
10
+ alias: string;
11
+ };
12
+ /** A domain condition whose SQL aliases are resolved afresh for each occurrence in em.find. */
13
+ interface DeferredAliasCondition<C = ColumnCondition | RawCondition> extends PredicateBrand<"domain"> {
14
+ [deferredAliasSym]: (resolve: AliasResolver) => C;
15
+ }
16
+ /** Detects conditions that carry a per-parse alias resolver. */
17
+ declare function isDeferredAliasCondition<C>(cond: C): cond is C & DeferredAliasCondition<C>;
18
+ /** Tags a condition without changing its enumerable shape; resolution only mutates a fresh copy. */
19
+ declare function withDeferredAlias<C extends object>(cond: C, resolve: (r: AliasResolver, copy: C) => void): C & DeferredAliasCondition<C>;
20
+ //#endregion
21
+ export { AliasResolver, DeferredAliasCondition, deferredAliasSym, isDeferredAliasCondition, withDeferredAlias };
22
+ //# sourceMappingURL=DeferredAlias.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeferredAlias.d.cts","names":[],"sources":["../../../src/queries/find/DeferredAlias.ts"],"mappings":";;;;;cAMa;;KAGD,iBAAiB,QAAQ;EACnC,MAAM;EACN;;;UAIe,uBAAuB,IAAI,kBAAkB,sBAAsB;GACjF,oBAAoB,SAAS,kBAAkB;;;iBAIlC,yBAAyB,GAAG,MAAM,IAAI,QAAQ,IAAI,uBAAuB;;iBAKzE,kBAAkB,kBAChC,MAAM,GACN,UAAU,GAAG,eAAe,MAAM,aACjC,IAAI,uBAAuB"}
@@ -0,0 +1,22 @@
1
+ import { ColumnCondition, RawCondition } from "../parsedConditions.mjs";
2
+ import { PredicateBrand } from "../conditions.mjs";
3
+ import { AliasMgmt } from "./Aliases.mjs";
4
+ import { EntityMetadata } from "../../EntityMetadata.mjs";
5
+ //#region src/queries/find/DeferredAlias.d.ts
6
+ declare const deferredAliasSym: unique symbol;
7
+ /** Resolves a domain alias to this em.find parse's binding. */
8
+ type AliasResolver = (handle: AliasMgmt) => {
9
+ meta: EntityMetadata;
10
+ alias: string;
11
+ };
12
+ /** A domain condition whose SQL aliases are resolved afresh for each occurrence in em.find. */
13
+ interface DeferredAliasCondition<C = ColumnCondition | RawCondition> extends PredicateBrand<"domain"> {
14
+ [deferredAliasSym]: (resolve: AliasResolver) => C;
15
+ }
16
+ /** Detects conditions that carry a per-parse alias resolver. */
17
+ declare function isDeferredAliasCondition<C>(cond: C): cond is C & DeferredAliasCondition<C>;
18
+ /** Tags a condition without changing its enumerable shape; resolution only mutates a fresh copy. */
19
+ declare function withDeferredAlias<C extends object>(cond: C, resolve: (r: AliasResolver, copy: C) => void): C & DeferredAliasCondition<C>;
20
+ //#endregion
21
+ export { AliasResolver, DeferredAliasCondition, deferredAliasSym, isDeferredAliasCondition, withDeferredAlias };
22
+ //# sourceMappingURL=DeferredAlias.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeferredAlias.d.mts","names":[],"sources":["../../../src/queries/find/DeferredAlias.ts"],"mappings":";;;;;cAMa;;KAGD,iBAAiB,QAAQ;EACnC,MAAM;EACN;;;UAIe,uBAAuB,IAAI,kBAAkB,sBAAsB;GACjF,oBAAoB,SAAS,kBAAkB;;;iBAIlC,yBAAyB,GAAG,MAAM,IAAI,QAAQ,IAAI,uBAAuB;;iBAKzE,kBAAkB,kBAChC,MAAM,GACN,UAAU,GAAG,eAAe,MAAM,aACjC,IAAI,uBAAuB"}
@@ -0,0 +1,22 @@
1
+ import { brandPredicate } from "../conditions.js";
2
+ //#region src/queries/find/DeferredAlias.ts
3
+ const deferredAliasSym = Symbol("joist.deferredAliasCondition");
4
+ /** Detects conditions that carry a per-parse alias resolver. */
5
+ function isDeferredAliasCondition(cond) {
6
+ return typeof cond === "object" && cond !== null && deferredAliasSym in cond;
7
+ }
8
+ /** Tags a condition without changing its enumerable shape; resolution only mutates a fresh copy. */
9
+ function withDeferredAlias(cond, resolve) {
10
+ return Object.defineProperty(brandPredicate(cond, "domain"), deferredAliasSym, {
11
+ value: (r) => {
12
+ const copy = { ...cond };
13
+ resolve(r, copy);
14
+ return copy;
15
+ },
16
+ enumerable: false
17
+ });
18
+ }
19
+ //#endregion
20
+ export { deferredAliasSym, isDeferredAliasCondition, withDeferredAlias };
21
+
22
+ //# sourceMappingURL=DeferredAlias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeferredAlias.js","names":[],"sources":["../../../src/queries/find/DeferredAlias.ts"],"sourcesContent":["import type { EntityMetadata } from \"src/EntityMetadata.ts\";\nimport { type PredicateBrand, brandPredicate } from \"src/queries/conditions.ts\";\n// Erased imports keep domain predicates independent of the query parser at module load time.\nimport type { AliasMgmt } from \"src/queries/find/Aliases.ts\";\nimport type { ColumnCondition, RawCondition } from \"src/queries/parsedConditions.ts\";\n\nexport const deferredAliasSym: unique symbol = Symbol(\"joist.deferredAliasCondition\");\n\n/** Resolves a domain alias to this em.find parse's binding. */\nexport type AliasResolver = (handle: AliasMgmt) => {\n meta: EntityMetadata;\n alias: string;\n};\n\n/** A domain condition whose SQL aliases are resolved afresh for each occurrence in em.find. */\nexport interface DeferredAliasCondition<C = ColumnCondition | RawCondition> extends PredicateBrand<\"domain\"> {\n [deferredAliasSym]: (resolve: AliasResolver) => C;\n}\n\n/** Detects conditions that carry a per-parse alias resolver. */\nexport function isDeferredAliasCondition<C>(cond: C): cond is C & DeferredAliasCondition<C> {\n return typeof cond === \"object\" && cond !== null && deferredAliasSym in cond;\n}\n\n/** Tags a condition without changing its enumerable shape; resolution only mutates a fresh copy. */\nexport function withDeferredAlias<C extends object>(\n cond: C,\n resolve: (r: AliasResolver, copy: C) => void,\n): C & DeferredAliasCondition<C> {\n return Object.defineProperty(brandPredicate(cond, \"domain\"), deferredAliasSym, {\n value: (r: AliasResolver) => {\n const copy = { ...cond };\n resolve(r, copy);\n return copy;\n },\n enumerable: false,\n }) as C & DeferredAliasCondition<C>;\n}\n"],"mappings":";;AAMA,MAAa,mBAAkC,OAAO,8BAA8B;;AAcpF,SAAgB,yBAA4B,MAAgD;CAC1F,OAAO,OAAO,SAAS,YAAY,SAAS,QAAQ,oBAAoB;AAC1E;;AAGA,SAAgB,kBACd,MACA,SAC+B;CAC/B,OAAO,OAAO,eAAe,eAAe,MAAM,QAAQ,GAAG,kBAAkB;EAC7E,QAAQ,MAAqB;GAC3B,MAAM,OAAO,EAAE,GAAG,KAAK;GACvB,QAAQ,GAAG,IAAI;GACf,OAAO;EACT;EACA,YAAY;CACd,CAAC;AACH"}
@@ -0,0 +1,27 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_queries_find_scopes = require("./scopes.cjs");
3
+ //#region src/queries/find/EntityFilter.ts
4
+ /** Merges root-scope find settings with caller options, letting caller options win. */
5
+ function mergeFindOptions(where, options) {
6
+ if (!require_queries_find_scopes.isScope(where)) return {
7
+ where,
8
+ options
9
+ };
10
+ const resolved = require_queries_find_scopes.resolveScope(where);
11
+ const scopeOptions = {};
12
+ if (resolved.orderBys.length > 0) scopeOptions.orderBy = resolved.orderBys;
13
+ if (resolved.limit !== void 0) scopeOptions.limit = resolved.limit;
14
+ if (resolved.offset !== void 0) scopeOptions.offset = resolved.offset;
15
+ if (resolved.softDeletes !== void 0) scopeOptions.softDeletes = resolved.softDeletes;
16
+ return {
17
+ where,
18
+ options: {
19
+ ...scopeOptions,
20
+ ...options
21
+ }
22
+ };
23
+ }
24
+ //#endregion
25
+ exports.mergeFindOptions = mergeFindOptions;
26
+
27
+ //# sourceMappingURL=EntityFilter.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityFilter.cjs","names":["isScope","resolveScope"],"sources":["../../../src/queries/find/EntityFilter.ts"],"sourcesContent":["import type { Entity } from \"src/Entity.ts\";\nimport type { FindFilterOptions, IdOf } from \"src/EntityManager.ts\";\nimport type { AndCondition, DomainPredicate, OrCondition, UnbrandedPredicate } from \"src/queries/conditions.ts\";\nimport type { Alias } from \"src/queries/find/Aliases.ts\";\nimport { type Scope, isScope, resolveScope } from \"src/queries/find/scopes.ts\";\nimport type { FieldsOf, FilterOf, OrderOf } from \"src/typeMap.ts\";\n\n/** Combines a `where` filter with optional `orderBy`, `limit`, and `offset` settings. */\nexport type FilterAndSettings<T extends Entity> = {\n // Either a `{ ... }` EntityFilter or a Scope like `Adult.parent`\n where: FindFilter<T>;\n conditions?: ExpressionFilter;\n orderBy?: OrderOf<T> | OrderOf<T>[];\n limit?: number | undefined;\n offset?: number | undefined;\n softDeletes?: \"exclude\" | \"include\";\n allowMultipleLeftJoins?: boolean;\n optimizeJoinsToExists?: boolean;\n};\n\nexport type OrderBy = \"ASC\" | \"DESC\";\n\n/**\n * A filter for an entity of type `T` for `em.find` inline conditions.\n *\n * An entity filter can either filter by \"an exact entity\" (i.e. the book with id 2)\n * or its own set of filters (i.e. all books with a title that starts with \"The\").\n *\n * @typeparam T The entity type, i.e. `Author`\n * @typeparam I The ID type of the entity, i.e. `AuthorId`\n * @typeparam F The filter type for the entity, i.e. `AuthorFilter`\n * @typeparam N Either `null | undefined` if the entity can be null, or `never` if it cannot.\n */\nexport type EntityFilter<T extends Entity, I = IdOf<T>, F = FilterOf<T>, N = never> =\n | T\n | readonly T[]\n | I\n | readonly I[]\n | Scope<T>\n // Note that this is a weak type (all optional keys) but TS still enforces at least one overlap\n | EntityFilterObject<T, I, F, N>\n // Always allow `undefined` for condition pruning\n | undefined\n // But only allow `null` for `nullable` relations\n | N\n | { ne: T | I | N | undefined }\n // Allow setting `true` for `is not null` or `false` for `is null`\n | boolean\n | Alias<T>;\n\n/** A nested object filter, including logical composition at the current entity alias. */\nexport type EntityFilterObject<T extends Entity, I = IdOf<T>, F = FilterOf<T>, N = never> = {\n as?: Alias<T>;\n and?: EntityFilter<T, I, F, N> | readonly EntityFilter<T, I, F, N>[];\n or?: EntityFilter<T, I, F, N> | readonly EntityFilter<T, I, F, N>[];\n} & F;\n\nexport type BooleanFilter<N> = true | false | N;\n\n/**\n * The root `em.find` `where` shape: an `EntityFilterObject` with `I`/`F`/`N` defaulted.\n *\n * Intentionally a thin alias rather than the source of truth: `as`/`and`/`or` are defined once on\n * `EntityFilterObject<T, I, F, N>` so the parameterized nested-relation arm of `EntityFilter` and this\n * root can't drift. That arm needs the `F`/`N` params — GraphQL filter shapes (`F`) and relation\n * nullability (`N`) flow through `and`/`or` recursion — which a `FilterOf<T>`-hardcoded root can't\n * supply, so the shape lives on `EntityFilterObject` and this just specializes it.\n */\nexport type FilterWithAlias<T extends Entity> = EntityFilterObject<T>;\n\n/** Allows `em.find` to accept either a `{ ... }` EntityFilter or a Scope like `Adult.parent` */\nexport type FindFilter<T extends Entity> = FilterWithAlias<T> | Scope<T>;\n\nexport type UniqueFilter<T extends Entity> = {\n [K in keyof FieldsOf<T> & keyof FilterOf<T> as FieldsOf<T>[K] extends { unique: true } ? K : never]?: FilterOf<T>[K];\n};\n\n/**\n * Filters against a specific field's values within `em.find` inline conditions.\n *\n * We always allow `undefined` to support condition pruning, but only conditionally\n * allow `null` if the column is actually nullable.\n */\nexport type ValueFilter<V, N> =\n | V\n | readonly V[]\n | N\n | undefined\n // Both eq and in are redundant with `V` and `V[]` above but are convenient for matching GQL filter APIs\n | { eq: V | N | undefined }\n | { ne: V | N | undefined }\n | { in: readonly (V | N | null)[] | undefined }\n | { nin: readonly (V | N)[] | undefined }\n | { gt: V | undefined }\n | { gte: V | undefined }\n | { lt: V | undefined }\n | { lte: V | undefined }\n | { like: V | undefined }\n | { nlike: V | undefined }\n | { ilike: V | undefined }\n | { nilike: V | undefined }\n | { regex?: V | undefined }\n | { iregex?: V | undefined }\n | { nregex?: V | undefined }\n | { niregex?: V | undefined }\n | { search: V | undefined }\n // should put these in a dedicated ArrayFilter\n | { contains: V | undefined }\n | { overlaps: V | undefined }\n | { containedBy: V | undefined }\n // should put these in a dedicated JsonbFilter\n | { pathExists: string | undefined }\n | { pathIsTrue: string | undefined }\n // this is between\n | { gte: V | undefined; lte: V | undefined }\n | { between: [V, V] | undefined };\n\n/**\n * Filters against complex expressions of filters.\n *\n * This is the user-facing DSL that internally will be converted to `ParsedExpressionFilter.\n */\nexport type ExpressionFilter = AndCondition<ExpressionCondition> | OrCondition<ExpressionCondition>;\n\n/** A domain-alias predicate or nested group for em.find and scopes, not SQL table expressions. */\nexport type ExpressionCondition = ExpressionFilter | DomainPredicate | UnbrandedPredicate;\n\n/** Merges root-scope find settings with caller options, letting caller options win. */\nexport function mergeFindOptions<T extends Entity>(\n where: FindFilter<T>,\n options: FindFilterOptions<T>,\n): { where: FindFilter<T>; options: FindFilterOptions<T> } {\n if (!isScope<T>(where)) return { where, options };\n\n const resolved = resolveScope(where);\n const scopeOptions: FindFilterOptions<T> = {};\n if (resolved.orderBys.length > 0) scopeOptions.orderBy = resolved.orderBys;\n if (resolved.limit !== undefined) scopeOptions.limit = resolved.limit;\n if (resolved.offset !== undefined) scopeOptions.offset = resolved.offset;\n if (resolved.softDeletes !== undefined) scopeOptions.softDeletes = resolved.softDeletes;\n return { where, options: { ...scopeOptions, ...options } };\n}\n"],"mappings":";;;;AAgIA,SAAgB,iBACd,OACA,SACyD;CACzD,IAAI,CAACA,4BAAAA,QAAW,KAAK,GAAG,OAAO;EAAE;EAAO;CAAQ;CAEhD,MAAM,WAAWC,4BAAAA,aAAa,KAAK;CACnC,MAAM,eAAqC,CAAC;CAC5C,IAAI,SAAS,SAAS,SAAS,GAAG,aAAa,UAAU,SAAS;CAClE,IAAI,SAAS,UAAU,KAAA,GAAW,aAAa,QAAQ,SAAS;CAChE,IAAI,SAAS,WAAW,KAAA,GAAW,aAAa,SAAS,SAAS;CAClE,IAAI,SAAS,gBAAgB,KAAA,GAAW,aAAa,cAAc,SAAS;CAC5E,OAAO;EAAE;EAAO,SAAS;GAAE,GAAG;GAAc,GAAG;EAAQ;CAAE;AAC3D"}
@@ -0,0 +1,127 @@
1
+ import { FieldsOf, FilterOf, OrderOf } from "../../typeMap.cjs";
2
+ import { AndCondition, DomainPredicate, OrCondition, UnbrandedPredicate } from "../conditions.cjs";
3
+ import { Alias } from "./Aliases.cjs";
4
+ import { Scope } from "./scopes.cjs";
5
+ import { FindFilterOptions, IdOf } from "../../EntityManager.cjs";
6
+ import { Entity } from "../../Entity.cjs";
7
+ //#region src/queries/find/EntityFilter.d.ts
8
+ /** Combines a `where` filter with optional `orderBy`, `limit`, and `offset` settings. */
9
+ type FilterAndSettings<T extends Entity> = {
10
+ where: FindFilter<T>;
11
+ conditions?: ExpressionFilter;
12
+ orderBy?: OrderOf<T> | OrderOf<T>[];
13
+ limit?: number | undefined;
14
+ offset?: number | undefined;
15
+ softDeletes?: "exclude" | "include";
16
+ allowMultipleLeftJoins?: boolean;
17
+ optimizeJoinsToExists?: boolean;
18
+ };
19
+ type OrderBy = "ASC" | "DESC";
20
+ /**
21
+ * A filter for an entity of type `T` for `em.find` inline conditions.
22
+ *
23
+ * An entity filter can either filter by "an exact entity" (i.e. the book with id 2)
24
+ * or its own set of filters (i.e. all books with a title that starts with "The").
25
+ *
26
+ * @typeparam T The entity type, i.e. `Author`
27
+ * @typeparam I The ID type of the entity, i.e. `AuthorId`
28
+ * @typeparam F The filter type for the entity, i.e. `AuthorFilter`
29
+ * @typeparam N Either `null | undefined` if the entity can be null, or `never` if it cannot.
30
+ */
31
+ type EntityFilter<T extends Entity, I = IdOf<T>, F = FilterOf<T>, N = never> = T | readonly T[] | I | readonly I[] | Scope<T> | EntityFilterObject<T, I, F, N> | undefined | N | {
32
+ ne: T | I | N | undefined;
33
+ } | boolean | Alias<T>;
34
+ /** A nested object filter, including logical composition at the current entity alias. */
35
+ type EntityFilterObject<T extends Entity, I = IdOf<T>, F = FilterOf<T>, N = never> = {
36
+ as?: Alias<T>;
37
+ and?: EntityFilter<T, I, F, N> | readonly EntityFilter<T, I, F, N>[];
38
+ or?: EntityFilter<T, I, F, N> | readonly EntityFilter<T, I, F, N>[];
39
+ } & F;
40
+ type BooleanFilter<N> = true | false | N;
41
+ /**
42
+ * The root `em.find` `where` shape: an `EntityFilterObject` with `I`/`F`/`N` defaulted.
43
+ *
44
+ * Intentionally a thin alias rather than the source of truth: `as`/`and`/`or` are defined once on
45
+ * `EntityFilterObject<T, I, F, N>` so the parameterized nested-relation arm of `EntityFilter` and this
46
+ * root can't drift. That arm needs the `F`/`N` params — GraphQL filter shapes (`F`) and relation
47
+ * nullability (`N`) flow through `and`/`or` recursion — which a `FilterOf<T>`-hardcoded root can't
48
+ * supply, so the shape lives on `EntityFilterObject` and this just specializes it.
49
+ */
50
+ type FilterWithAlias<T extends Entity> = EntityFilterObject<T>;
51
+ /** Allows `em.find` to accept either a `{ ... }` EntityFilter or a Scope like `Adult.parent` */
52
+ type FindFilter<T extends Entity> = FilterWithAlias<T> | Scope<T>;
53
+ type UniqueFilter<T extends Entity> = { [K in keyof FieldsOf<T> & keyof FilterOf<T> as FieldsOf<T>[K] extends {
54
+ unique: true;
55
+ } ? K : never]?: FilterOf<T>[K]; };
56
+ /**
57
+ * Filters against a specific field's values within `em.find` inline conditions.
58
+ *
59
+ * We always allow `undefined` to support condition pruning, but only conditionally
60
+ * allow `null` if the column is actually nullable.
61
+ */
62
+ type ValueFilter<V, N> = V | readonly V[] | N | undefined | {
63
+ eq: V | N | undefined;
64
+ } | {
65
+ ne: V | N | undefined;
66
+ } | {
67
+ in: readonly (V | N | null)[] | undefined;
68
+ } | {
69
+ nin: readonly (V | N)[] | undefined;
70
+ } | {
71
+ gt: V | undefined;
72
+ } | {
73
+ gte: V | undefined;
74
+ } | {
75
+ lt: V | undefined;
76
+ } | {
77
+ lte: V | undefined;
78
+ } | {
79
+ like: V | undefined;
80
+ } | {
81
+ nlike: V | undefined;
82
+ } | {
83
+ ilike: V | undefined;
84
+ } | {
85
+ nilike: V | undefined;
86
+ } | {
87
+ regex?: V | undefined;
88
+ } | {
89
+ iregex?: V | undefined;
90
+ } | {
91
+ nregex?: V | undefined;
92
+ } | {
93
+ niregex?: V | undefined;
94
+ } | {
95
+ search: V | undefined;
96
+ } | {
97
+ contains: V | undefined;
98
+ } | {
99
+ overlaps: V | undefined;
100
+ } | {
101
+ containedBy: V | undefined;
102
+ } | {
103
+ pathExists: string | undefined;
104
+ } | {
105
+ pathIsTrue: string | undefined;
106
+ } | {
107
+ gte: V | undefined;
108
+ lte: V | undefined;
109
+ } | {
110
+ between: [V, V] | undefined;
111
+ };
112
+ /**
113
+ * Filters against complex expressions of filters.
114
+ *
115
+ * This is the user-facing DSL that internally will be converted to `ParsedExpressionFilter.
116
+ */
117
+ type ExpressionFilter = AndCondition<ExpressionCondition> | OrCondition<ExpressionCondition>;
118
+ /** A domain-alias predicate or nested group for em.find and scopes, not SQL table expressions. */
119
+ type ExpressionCondition = ExpressionFilter | DomainPredicate | UnbrandedPredicate;
120
+ /** Merges root-scope find settings with caller options, letting caller options win. */
121
+ declare function mergeFindOptions<T extends Entity>(where: FindFilter<T>, options: FindFilterOptions<T>): {
122
+ where: FindFilter<T>;
123
+ options: FindFilterOptions<T>;
124
+ };
125
+ //#endregion
126
+ export { BooleanFilter, EntityFilter, EntityFilterObject, ExpressionCondition, ExpressionFilter, FilterAndSettings, FilterWithAlias, FindFilter, OrderBy, UniqueFilter, ValueFilter, mergeFindOptions };
127
+ //# sourceMappingURL=EntityFilter.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityFilter.d.cts","names":[],"sources":["../../../src/queries/find/EntityFilter.ts"],"mappings":";;;;;;;;KAQY,kBAAkB,UAAU;EAEtC,OAAO,WAAW;EAClB,aAAa;EACb,UAAU,QAAQ,KAAK,QAAQ;EAC/B;EACA;EACA;EACA;EACA;;KAGU;;;;;;;;;;;;KAaA,aAAa,UAAU,QAAQ,IAAI,KAAK,IAAI,IAAI,SAAS,IAAI,aACrE,aACS,MACT,aACS,MACT,MAAM,KAEN,mBAAmB,GAAG,GAAG,GAAG,iBAI5B;EACE,IAAI,IAAI,IAAI;cAGd,MAAM;;KAGE,mBAAmB,UAAU,QAAQ,IAAI,KAAK,IAAI,IAAI,SAAS,IAAI;EAC7E,KAAK,MAAM;EACX,MAAM,aAAa,GAAG,GAAG,GAAG,cAAc,aAAa,GAAG,GAAG,GAAG;EAChE,KAAK,aAAa,GAAG,GAAG,GAAG,cAAc,aAAa,GAAG,GAAG,GAAG;IAC7D;KAEQ,cAAc,oBAAoB;;;;;;;;;;KAWlC,gBAAgB,UAAU,UAAU,mBAAmB;;KAGvD,WAAW,UAAU,UAAU,gBAAgB,KAAK,MAAM;KAE1D,aAAa,UAAU,aAChC,WAAW,SAAS,WAAW,SAAS,MAAM,SAAS,GAAG;EAAa;IAAiB,aAAa,SAAS,GAAG;;;;;;;KASxG,YAAY,GAAG,KACvB,aACS,MACT;EAGE,IAAI,IAAI;;EACR,IAAI,IAAI;;EACR,cAAc,IAAI;;EAClB,eAAe,IAAI;;EACnB,IAAI;;EACJ,KAAK;;EACL,IAAI;;EACJ,KAAK;;EACL,MAAM;;EACN,OAAO;;EACP,OAAO;;EACP,QAAQ;;EACR,QAAQ;;EACR,SAAS;;EACT,SAAS;;EACT,UAAU;;EACV,QAAQ;;EAER,UAAU;;EACV,UAAU;;EACV,aAAa;;EAEb;;EACA;;EAEA,KAAK;EAAe,KAAK;;EACzB,UAAU,GAAG;;;;;;;KAOP,mBAAmB,aAAa,uBAAuB,YAAY;;KAGnE,sBAAsB,mBAAmB,kBAAkB;;iBAGvD,iBAAiB,UAAU,QACzC,OAAO,WAAW,IAClB,SAAS,kBAAkB;EACxB,OAAO,WAAW;EAAI,SAAS,kBAAkB"}