@nicia-ai/typegraph 0.34.0 → 0.36.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 (287) hide show
  1. package/dist/backend/postgres/index.cjs +29 -29
  2. package/dist/backend/postgres/index.d.cts +39 -7
  3. package/dist/backend/postgres/index.d.ts +39 -7
  4. package/dist/backend/postgres/index.js +16 -16
  5. package/dist/backend/postgres/pglite.cjs +21 -21
  6. package/dist/backend/postgres/pglite.d.cts +4 -4
  7. package/dist/backend/postgres/pglite.d.ts +4 -4
  8. package/dist/backend/postgres/pglite.js +16 -16
  9. package/dist/backend/sqlite/index.cjs +25 -26
  10. package/dist/backend/sqlite/index.d.cts +8 -8
  11. package/dist/backend/sqlite/index.d.ts +8 -8
  12. package/dist/backend/sqlite/index.js +13 -14
  13. package/dist/backend/sqlite/libsql.cjs +19 -19
  14. package/dist/backend/sqlite/libsql.d.cts +4 -4
  15. package/dist/backend/sqlite/libsql.d.ts +4 -4
  16. package/dist/backend/sqlite/libsql.js +15 -15
  17. package/dist/backend/sqlite/local.cjs +101 -21
  18. package/dist/backend/sqlite/local.cjs.map +1 -1
  19. package/dist/backend/sqlite/local.d.cts +95 -5
  20. package/dist/backend/sqlite/local.d.ts +95 -5
  21. package/dist/backend/sqlite/local.js +95 -16
  22. package/dist/backend/sqlite/local.js.map +1 -1
  23. package/dist/{chunk-T6SPUYLX.cjs → chunk-2THZ3TQI.cjs} +116 -10
  24. package/dist/chunk-2THZ3TQI.cjs.map +1 -0
  25. package/dist/{chunk-UJLOZYKT.cjs → chunk-456Z2U7Y.cjs} +441 -115
  26. package/dist/chunk-456Z2U7Y.cjs.map +1 -0
  27. package/dist/chunk-4BCU6VFZ.cjs +100 -0
  28. package/dist/chunk-4BCU6VFZ.cjs.map +1 -0
  29. package/dist/chunk-4BMPGT35.cjs +12 -0
  30. package/dist/{chunk-HMFK4BXR.cjs.map → chunk-4BMPGT35.cjs.map} +1 -1
  31. package/dist/chunk-4CAXEB2F.cjs +1366 -0
  32. package/dist/chunk-4CAXEB2F.cjs.map +1 -0
  33. package/dist/{chunk-RY2VIWAM.js → chunk-4GX2JJXS.js} +355 -32
  34. package/dist/chunk-4GX2JJXS.js.map +1 -0
  35. package/dist/{chunk-GQANNXXT.cjs → chunk-5A6FNS6N.cjs} +75 -20
  36. package/dist/chunk-5A6FNS6N.cjs.map +1 -0
  37. package/dist/{chunk-3Z6TW3CT.cjs → chunk-5AQIKK56.cjs} +65 -25
  38. package/dist/chunk-5AQIKK56.cjs.map +1 -0
  39. package/dist/{chunk-WLRIWYHQ.js → chunk-5DIPR3L3.js} +2145 -1937
  40. package/dist/chunk-5DIPR3L3.js.map +1 -0
  41. package/dist/{chunk-BVTWD66D.js → chunk-5SEGFTZX.js} +3 -3
  42. package/dist/{chunk-BVTWD66D.js.map → chunk-5SEGFTZX.js.map} +1 -1
  43. package/dist/{chunk-A7SZZFAG.js → chunk-5VTR2F2K.js} +452 -109
  44. package/dist/chunk-5VTR2F2K.js.map +1 -0
  45. package/dist/{chunk-JJRCLAUN.cjs → chunk-5W4L6DLF.cjs} +116 -10
  46. package/dist/chunk-5W4L6DLF.cjs.map +1 -0
  47. package/dist/{chunk-6GNSY7AV.js → chunk-6FR2MMS6.js} +7 -7
  48. package/dist/chunk-6FR2MMS6.js.map +1 -0
  49. package/dist/{chunk-3BRVBQQD.cjs → chunk-7BQLPXK6.cjs} +2648 -2440
  50. package/dist/chunk-7BQLPXK6.cjs.map +1 -0
  51. package/dist/chunk-7YSP4V4R.cjs +69 -0
  52. package/dist/chunk-7YSP4V4R.cjs.map +1 -0
  53. package/dist/chunk-A42GCBGX.cjs +28 -0
  54. package/dist/chunk-A42GCBGX.cjs.map +1 -0
  55. package/dist/{chunk-ZV5N4DBG.js → chunk-BJVEU3ZL.js} +300 -58
  56. package/dist/chunk-BJVEU3ZL.js.map +1 -0
  57. package/dist/chunk-BYPOGQWK.js +25 -0
  58. package/dist/chunk-BYPOGQWK.js.map +1 -0
  59. package/dist/chunk-CUHM5CWJ.cjs +12 -0
  60. package/dist/chunk-CUHM5CWJ.cjs.map +1 -0
  61. package/dist/{chunk-2JXB3NYJ.cjs → chunk-D7ZEOS56.cjs} +25 -32
  62. package/dist/chunk-D7ZEOS56.cjs.map +1 -0
  63. package/dist/chunk-DFVLCOP6.js +10 -0
  64. package/dist/chunk-DFVLCOP6.js.map +1 -0
  65. package/dist/{chunk-JIEJCTDS.cjs → chunk-DIK74MXX.cjs} +37 -4
  66. package/dist/chunk-DIK74MXX.cjs.map +1 -0
  67. package/dist/chunk-DN5VP4JC.js +1343 -0
  68. package/dist/chunk-DN5VP4JC.js.map +1 -0
  69. package/dist/chunk-EOLERH7Y.cjs +40 -0
  70. package/dist/chunk-EOLERH7Y.cjs.map +1 -0
  71. package/dist/{chunk-TGJE22RM.cjs → chunk-FACJJWGF.cjs} +24 -6
  72. package/dist/chunk-FACJJWGF.cjs.map +1 -0
  73. package/dist/{chunk-WVC2Q2FD.cjs → chunk-FN35DLCN.cjs} +31 -9
  74. package/dist/chunk-FN35DLCN.cjs.map +1 -0
  75. package/dist/{chunk-KUTNI6SI.js → chunk-FPIZFYHE.js} +10 -18
  76. package/dist/chunk-FPIZFYHE.js.map +1 -0
  77. package/dist/{chunk-VCGO4V26.js → chunk-FRV5Q5IO.js} +64 -9
  78. package/dist/chunk-FRV5Q5IO.js.map +1 -0
  79. package/dist/{chunk-K5P5OZXS.js → chunk-G6Q5UM7U.js} +2 -2
  80. package/dist/{chunk-K5P5OZXS.js.map → chunk-G6Q5UM7U.js.map} +1 -1
  81. package/dist/{chunk-JQGIPGVL.cjs → chunk-H7YNSMA7.cjs} +43 -2
  82. package/dist/chunk-H7YNSMA7.cjs.map +1 -0
  83. package/dist/chunk-HW3LW7DH.cjs +1271 -0
  84. package/dist/chunk-HW3LW7DH.cjs.map +1 -0
  85. package/dist/{chunk-V3QNTB7Z.js → chunk-IU46OHVW.js} +194 -114
  86. package/dist/chunk-IU46OHVW.js.map +1 -0
  87. package/dist/{chunk-HK5SATYM.cjs → chunk-J3LEGNQB.cjs} +16 -109
  88. package/dist/chunk-J3LEGNQB.cjs.map +1 -0
  89. package/dist/{chunk-ZP5WHI4C.cjs → chunk-JFMEONLG.cjs} +358 -116
  90. package/dist/chunk-JFMEONLG.cjs.map +1 -0
  91. package/dist/{chunk-2MRAX3UE.js → chunk-JFUPDJXD.js} +47 -4
  92. package/dist/chunk-JFUPDJXD.js.map +1 -0
  93. package/dist/{chunk-Z5XBMDXU.js → chunk-KBGQIPRQ.js} +42 -3
  94. package/dist/chunk-KBGQIPRQ.js.map +1 -0
  95. package/dist/{chunk-K2TGS3EN.js → chunk-M75SUBFG.js} +138 -89
  96. package/dist/chunk-M75SUBFG.js.map +1 -0
  97. package/dist/chunk-OHMP6N2J.js +47 -0
  98. package/dist/chunk-OHMP6N2J.js.map +1 -0
  99. package/dist/{chunk-4DIBPQNJ.js → chunk-OR5ZA5WP.js} +135 -25
  100. package/dist/chunk-OR5ZA5WP.js.map +1 -0
  101. package/dist/{chunk-6HVOHZHS.cjs → chunk-PWGX5DF5.cjs} +213 -168
  102. package/dist/chunk-PWGX5DF5.cjs.map +1 -0
  103. package/dist/chunk-PZKNKG5M.js +1252 -0
  104. package/dist/chunk-PZKNKG5M.js.map +1 -0
  105. package/dist/{chunk-DEQFL35G.js → chunk-Q5TEXCTB.js} +61 -7
  106. package/dist/chunk-Q5TEXCTB.js.map +1 -0
  107. package/dist/{chunk-QV245VMN.js → chunk-RAXU3RMB.js} +100 -6
  108. package/dist/chunk-RAXU3RMB.js.map +1 -0
  109. package/dist/{chunk-RHZWOJVA.cjs → chunk-RSSQKPSZ.cjs} +52 -4
  110. package/dist/chunk-RSSQKPSZ.cjs.map +1 -0
  111. package/dist/{chunk-G6SOJEDI.cjs → chunk-S55OV6PW.cjs} +15 -15
  112. package/dist/chunk-S55OV6PW.cjs.map +1 -0
  113. package/dist/chunk-S5F7ZLP2.js +94 -0
  114. package/dist/chunk-S5F7ZLP2.js.map +1 -0
  115. package/dist/{chunk-3E7SNSIA.cjs → chunk-SJDMVITW.cjs} +4 -4
  116. package/dist/{chunk-3E7SNSIA.cjs.map → chunk-SJDMVITW.cjs.map} +1 -1
  117. package/dist/{chunk-CHXTTSC6.js → chunk-SKCOUWAX.js} +104 -5
  118. package/dist/chunk-SKCOUWAX.js.map +1 -0
  119. package/dist/{chunk-XLUNB2TZ.js → chunk-SNXVDZAJ.js} +3 -3
  120. package/dist/{chunk-XLUNB2TZ.js.map → chunk-SNXVDZAJ.js.map} +1 -1
  121. package/dist/{chunk-ZURTTSCM.js → chunk-SXGE7ITL.js} +6 -94
  122. package/dist/chunk-SXGE7ITL.js.map +1 -0
  123. package/dist/{chunk-RBV7YCQD.js → chunk-T2WUSPDA.js} +49 -9
  124. package/dist/chunk-T2WUSPDA.js.map +1 -0
  125. package/dist/{chunk-KGC4LY5T.cjs → chunk-TCOCYN2P.cjs} +75 -21
  126. package/dist/chunk-TCOCYN2P.cjs.map +1 -0
  127. package/dist/{chunk-FLRCVI2G.cjs → chunk-TDXIBCGY.cjs} +2 -2
  128. package/dist/{chunk-FLRCVI2G.cjs.map → chunk-TDXIBCGY.cjs.map} +1 -1
  129. package/dist/{chunk-ZY4GXIVN.cjs → chunk-TEDRJXOG.cjs} +5 -5
  130. package/dist/{chunk-ZY4GXIVN.cjs.map → chunk-TEDRJXOG.cjs.map} +1 -1
  131. package/dist/{chunk-WL2SG7ZV.cjs → chunk-UMDVATGY.cjs} +6 -6
  132. package/dist/{chunk-WL2SG7ZV.cjs.map → chunk-UMDVATGY.cjs.map} +1 -1
  133. package/dist/chunk-UT3S4SEN.js +31 -0
  134. package/dist/chunk-UT3S4SEN.js.map +1 -0
  135. package/dist/{chunk-RRKQAKD6.cjs → chunk-UUT7UN2N.cjs} +149 -39
  136. package/dist/chunk-UUT7UN2N.cjs.map +1 -0
  137. package/dist/{chunk-SHLY4MCM.js → chunk-UZV3AZKF.js} +21 -3
  138. package/dist/chunk-UZV3AZKF.js.map +1 -0
  139. package/dist/{chunk-CYX2JTDG.js → chunk-VHMPG6UL.js} +29 -7
  140. package/dist/chunk-VHMPG6UL.js.map +1 -0
  141. package/dist/{chunk-LANHCOXB.js → chunk-VQEXF5D4.js} +485 -83
  142. package/dist/chunk-VQEXF5D4.js.map +1 -0
  143. package/dist/{chunk-K34OPSJK.js → chunk-W63OVYY4.js} +3 -3
  144. package/dist/{chunk-K34OPSJK.js.map → chunk-W63OVYY4.js.map} +1 -1
  145. package/dist/{chunk-TQOYM4LN.js → chunk-WI7ISNQF.js} +35 -5
  146. package/dist/chunk-WI7ISNQF.js.map +1 -0
  147. package/dist/{chunk-UNNPKQUG.cjs → chunk-X4JBT642.cjs} +246 -155
  148. package/dist/chunk-X4JBT642.cjs.map +1 -0
  149. package/dist/chunk-ZAMFOJ5P.cjs +1176 -0
  150. package/dist/chunk-ZAMFOJ5P.cjs.map +1 -0
  151. package/dist/{chunk-T46GR2VY.js → chunk-ZIGXMKQQ.js} +3 -3
  152. package/dist/{chunk-T46GR2VY.js.map → chunk-ZIGXMKQQ.js.map} +1 -1
  153. package/dist/{chunk-5IQIX7LU.cjs → chunk-ZUNQ5BEP.cjs} +518 -172
  154. package/dist/chunk-ZUNQ5BEP.cjs.map +1 -0
  155. package/dist/{ddl-BrmPg61z.d.ts → ddl-C2rZ-Aen.d.ts} +4 -4
  156. package/dist/{ddl-j1-sH6lE.d.cts → ddl-CZz7a0E8.d.cts} +4 -4
  157. package/dist/{extension-types-YGFJPrzK.d.cts → extension-types-ixRpJVUp.d.cts} +24 -1
  158. package/dist/{extension-types-YGFJPrzK.d.ts → extension-types-ixRpJVUp.d.ts} +24 -1
  159. package/dist/{types-DkNnF-7K.d.cts → fulltext-strategy-B57yvC5Q.d.ts} +2562 -2133
  160. package/dist/{types-D1Sqeyxy.d.ts → fulltext-strategy-CDkSSYhq.d.cts} +2562 -2133
  161. package/dist/graph-extension/index.cjs +20 -19
  162. package/dist/graph-extension/index.d.cts +4 -4
  163. package/dist/graph-extension/index.d.ts +4 -4
  164. package/dist/graph-extension/index.js +5 -4
  165. package/dist/graph-merge/index.cjs +255 -164
  166. package/dist/graph-merge/index.cjs.map +1 -1
  167. package/dist/graph-merge/index.d.cts +63 -33
  168. package/dist/graph-merge/index.d.ts +63 -33
  169. package/dist/graph-merge/index.js +135 -44
  170. package/dist/graph-merge/index.js.map +1 -1
  171. package/dist/{index-DGX6D9j1.d.ts → index-BFvdmBPV.d.ts} +301 -93
  172. package/dist/{index-SEvUHDA6.d.cts → index-BLtQWKRj.d.cts} +301 -93
  173. package/dist/index.cjs +216 -188
  174. package/dist/index.d.cts +11 -11
  175. package/dist/index.d.ts +11 -11
  176. package/dist/index.js +33 -33
  177. package/dist/indexes/index.cjs +19 -20
  178. package/dist/indexes/index.d.cts +5 -5
  179. package/dist/indexes/index.d.ts +5 -5
  180. package/dist/indexes/index.js +10 -11
  181. package/dist/interchange/index.cjs +48 -26
  182. package/dist/interchange/index.d.cts +126 -12
  183. package/dist/interchange/index.d.ts +126 -12
  184. package/dist/interchange/index.js +15 -13
  185. package/dist/{manager-ms9cKdc6.d.cts → manager-DwQi8eV0.d.cts} +9 -2
  186. package/dist/{manager-BZUeN_BU.d.ts → manager-ejUCB52T.d.ts} +9 -2
  187. package/dist/{materialize-indexes-D20xNluI.d.cts → materialize-indexes-B4e9360H.d.cts} +20 -4
  188. package/dist/{materialize-indexes-CAkIYFV-.d.ts → materialize-indexes-te9TPMMJ.d.ts} +20 -4
  189. package/dist/{postgres-BhpxGMC5.d.cts → postgres-CfEqsRMp.d.cts} +152 -1
  190. package/dist/{postgres-CWHLwNl1.d.ts → postgres-DQ5R6rzV.d.ts} +152 -1
  191. package/dist/profiler/index.cjs +11 -11
  192. package/dist/profiler/index.d.cts +7 -7
  193. package/dist/profiler/index.d.ts +7 -7
  194. package/dist/profiler/index.js +4 -4
  195. package/dist/provenance/index.cjs +40 -41
  196. package/dist/provenance/index.cjs.map +1 -1
  197. package/dist/provenance/index.d.cts +5 -5
  198. package/dist/provenance/index.d.ts +5 -5
  199. package/dist/provenance/index.js +11 -12
  200. package/dist/provenance/index.js.map +1 -1
  201. package/dist/schema/index.cjs +53 -40
  202. package/dist/schema/index.cjs.map +1 -1
  203. package/dist/schema/index.d.cts +57 -57
  204. package/dist/schema/index.d.ts +57 -57
  205. package/dist/schema/index.js +28 -15
  206. package/dist/schema/index.js.map +1 -1
  207. package/dist/{sqlite-XrDxNaa7.d.cts → sqlite-D7zBinNR.d.cts} +92 -1
  208. package/dist/{sqlite-CGu5SLsw.d.ts → sqlite-DvQndLky.d.ts} +92 -1
  209. package/dist/{store-view-D09po4H6.d.cts → store-view-9KDOpZzF.d.cts} +643 -58
  210. package/dist/{store-view-BlgnhEYf.d.ts → store-view-DplHC3Nt.d.ts} +643 -58
  211. package/dist/{types-DiE1AO7p.d.cts → types-Bv9DcS_E.d.cts} +2 -2
  212. package/dist/{types-B1TbZJYS.d.ts → types-CoxuV7EJ.d.ts} +2 -2
  213. package/dist/{where-DKjuofPr.d.cts → where-7RKFOsXt.d.ts} +2 -2
  214. package/dist/{where-DrUIIWHb.d.ts → where-DdMIXOtH.d.cts} +2 -2
  215. package/package.json +14 -13
  216. package/dist/chunk-2EBMPJBO.js +0 -16
  217. package/dist/chunk-2EBMPJBO.js.map +0 -1
  218. package/dist/chunk-2JXB3NYJ.cjs.map +0 -1
  219. package/dist/chunk-2MRAX3UE.js.map +0 -1
  220. package/dist/chunk-3BRVBQQD.cjs.map +0 -1
  221. package/dist/chunk-3EUKJEQ3.js +0 -77
  222. package/dist/chunk-3EUKJEQ3.js.map +0 -1
  223. package/dist/chunk-3Z6TW3CT.cjs.map +0 -1
  224. package/dist/chunk-4DIBPQNJ.js.map +0 -1
  225. package/dist/chunk-4S2FXGBJ.js +0 -9
  226. package/dist/chunk-4S2FXGBJ.js.map +0 -1
  227. package/dist/chunk-5IQIX7LU.cjs.map +0 -1
  228. package/dist/chunk-6GNSY7AV.js.map +0 -1
  229. package/dist/chunk-6HVOHZHS.cjs.map +0 -1
  230. package/dist/chunk-6SCVW4AS.js +0 -20
  231. package/dist/chunk-6SCVW4AS.js.map +0 -1
  232. package/dist/chunk-A7SZZFAG.js.map +0 -1
  233. package/dist/chunk-CHXTTSC6.js.map +0 -1
  234. package/dist/chunk-CYX2JTDG.js.map +0 -1
  235. package/dist/chunk-DEQFL35G.js.map +0 -1
  236. package/dist/chunk-G6SOJEDI.cjs.map +0 -1
  237. package/dist/chunk-GQANNXXT.cjs.map +0 -1
  238. package/dist/chunk-GZCNZ7QW.js +0 -24
  239. package/dist/chunk-GZCNZ7QW.js.map +0 -1
  240. package/dist/chunk-HK5SATYM.cjs.map +0 -1
  241. package/dist/chunk-HMFK4BXR.cjs +0 -12
  242. package/dist/chunk-HTGDWIDE.cjs +0 -89
  243. package/dist/chunk-HTGDWIDE.cjs.map +0 -1
  244. package/dist/chunk-JIEJCTDS.cjs.map +0 -1
  245. package/dist/chunk-JJRCLAUN.cjs.map +0 -1
  246. package/dist/chunk-JQGIPGVL.cjs.map +0 -1
  247. package/dist/chunk-K2TGS3EN.js.map +0 -1
  248. package/dist/chunk-KGC4LY5T.cjs.map +0 -1
  249. package/dist/chunk-KNHYNQQ3.cjs +0 -663
  250. package/dist/chunk-KNHYNQQ3.cjs.map +0 -1
  251. package/dist/chunk-KUTNI6SI.js.map +0 -1
  252. package/dist/chunk-LANHCOXB.js.map +0 -1
  253. package/dist/chunk-N6WTUSBV.cjs +0 -23
  254. package/dist/chunk-N6WTUSBV.cjs.map +0 -1
  255. package/dist/chunk-NAUA4PW5.cjs +0 -28
  256. package/dist/chunk-NAUA4PW5.cjs.map +0 -1
  257. package/dist/chunk-QV245VMN.js.map +0 -1
  258. package/dist/chunk-RBV7YCQD.js.map +0 -1
  259. package/dist/chunk-RHZWOJVA.cjs.map +0 -1
  260. package/dist/chunk-RRKQAKD6.cjs.map +0 -1
  261. package/dist/chunk-RY2VIWAM.js.map +0 -1
  262. package/dist/chunk-SHLY4MCM.js.map +0 -1
  263. package/dist/chunk-T2DWPQNE.js +0 -649
  264. package/dist/chunk-T2DWPQNE.js.map +0 -1
  265. package/dist/chunk-T6SPUYLX.cjs.map +0 -1
  266. package/dist/chunk-TGJE22RM.cjs.map +0 -1
  267. package/dist/chunk-TOTPVGOG.cjs +0 -774
  268. package/dist/chunk-TOTPVGOG.cjs.map +0 -1
  269. package/dist/chunk-TQOYM4LN.js.map +0 -1
  270. package/dist/chunk-UJLOZYKT.cjs.map +0 -1
  271. package/dist/chunk-UNNPKQUG.cjs.map +0 -1
  272. package/dist/chunk-V3QNTB7Z.js.map +0 -1
  273. package/dist/chunk-VCGO4V26.js.map +0 -1
  274. package/dist/chunk-WLRIWYHQ.js.map +0 -1
  275. package/dist/chunk-WVC2Q2FD.cjs.map +0 -1
  276. package/dist/chunk-XXVEULWX.js +0 -39
  277. package/dist/chunk-XXVEULWX.js.map +0 -1
  278. package/dist/chunk-YAZE7QZR.cjs +0 -32
  279. package/dist/chunk-YAZE7QZR.cjs.map +0 -1
  280. package/dist/chunk-YC6PWTHY.cjs +0 -44
  281. package/dist/chunk-YC6PWTHY.cjs.map +0 -1
  282. package/dist/chunk-Z5HBYM7U.cjs +0 -11
  283. package/dist/chunk-Z5HBYM7U.cjs.map +0 -1
  284. package/dist/chunk-Z5XBMDXU.js.map +0 -1
  285. package/dist/chunk-ZP5WHI4C.cjs.map +0 -1
  286. package/dist/chunk-ZURTTSCM.js.map +0 -1
  287. package/dist/chunk-ZV5N4DBG.js.map +0 -1
@@ -1,11 +1,101 @@
1
1
  'use strict';
2
2
 
3
- var chunkJIEJCTDS_cjs = require('./chunk-JIEJCTDS.cjs');
3
+ var chunkX4JBT642_cjs = require('./chunk-X4JBT642.cjs');
4
+ var chunkDIK74MXX_cjs = require('./chunk-DIK74MXX.cjs');
5
+ var chunkTDXIBCGY_cjs = require('./chunk-TDXIBCGY.cjs');
6
+ var drizzleOrm = require('drizzle-orm');
7
+
8
+ var NODE_COLUMNS = [
9
+ "id",
10
+ "kind",
11
+ "props",
12
+ "version",
13
+ "valid_from",
14
+ "valid_to",
15
+ "created_at",
16
+ "updated_at",
17
+ "deleted_at"
18
+ ];
19
+ var EDGE_COLUMNS = [
20
+ "id",
21
+ "kind",
22
+ "from_id",
23
+ "to_id",
24
+ "props",
25
+ "valid_from",
26
+ "valid_to",
27
+ "created_at",
28
+ "updated_at",
29
+ "deleted_at"
30
+ ];
31
+ var EMPTY_REQUIRED_COLUMNS = /* @__PURE__ */ new Set();
32
+ function quoteIdentifier(identifier) {
33
+ return drizzleOrm.sql.raw(`"${identifier.replaceAll('"', '""')}"`);
34
+ }
35
+ function shouldProjectColumn(requiredColumns, column, alwaysRequiredColumns) {
36
+ if (alwaysRequiredColumns?.has(column)) return true;
37
+ if (requiredColumns === void 0) return true;
38
+ return requiredColumns.has(column);
39
+ }
40
+ function addRequiredColumn(requiredColumnsByAlias, alias, column) {
41
+ const existing = requiredColumnsByAlias.get(alias);
42
+ if (existing) {
43
+ existing.add(column);
44
+ return;
45
+ }
46
+ requiredColumnsByAlias.set(alias, /* @__PURE__ */ new Set([column]));
47
+ }
48
+ function markFieldRefAsRequired(requiredColumnsByAlias, field) {
49
+ const column = field.path[0];
50
+ if (column === void 0) return;
51
+ addRequiredColumn(requiredColumnsByAlias, field.alias, column);
52
+ }
53
+ function mapSelectiveSystemFieldToColumn(field) {
54
+ if (field === "fromId") return "from_id";
55
+ if (field === "toId") return "to_id";
56
+ if (field.startsWith("meta.")) {
57
+ return field.slice(5).replaceAll(/([A-Z])/g, "_$1").toLowerCase();
58
+ }
59
+ return field;
60
+ }
61
+ function markSelectiveFieldAsRequired(requiredColumnsByAlias, field) {
62
+ if (field.isSystemField) {
63
+ addRequiredColumn(
64
+ requiredColumnsByAlias,
65
+ field.alias,
66
+ mapSelectiveSystemFieldToColumn(field.field)
67
+ );
68
+ return;
69
+ }
70
+ addRequiredColumn(requiredColumnsByAlias, field.alias, "props");
71
+ }
72
+ function getTopLevelPropsFieldName(field) {
73
+ const pointer = chunkX4JBT642_cjs.getFieldPointer(field);
74
+ if (pointer === void 0) return void 0;
75
+ const segments = chunkTDXIBCGY_cjs.parseJsonPointer(pointer);
76
+ return segments.length === 1 ? segments[0] : void 0;
77
+ }
78
+ function findSelectivePropsFieldForFieldRef(selectiveFields, field) {
79
+ if (selectiveFields === void 0 || selectiveFields.length === 0) {
80
+ return void 0;
81
+ }
82
+ const propsFieldName = getTopLevelPropsFieldName(field);
83
+ if (propsFieldName === void 0) return void 0;
84
+ return selectiveFields.find(
85
+ (selectiveField) => !selectiveField.isSystemField && selectiveField.alias === field.alias && selectiveField.field === propsFieldName
86
+ );
87
+ }
88
+ function isIdFieldRef(field) {
89
+ return field.path.length === 1 && field.path[0] === "id" && field.jsonPointer === void 0;
90
+ }
91
+ function isAggregateExpr(source) {
92
+ return "__type" in source && source.__type === "aggregate";
93
+ }
4
94
 
5
95
  // src/backend/drizzle/row-mappers.ts
6
96
  function requireTimestamp(value, field) {
7
97
  if (value === void 0) {
8
- throw new chunkJIEJCTDS_cjs.DatabaseOperationError(
98
+ throw new chunkDIK74MXX_cjs.DatabaseOperationError(
9
99
  `Expected non-null ${field} timestamp`,
10
100
  { operation: "select", entity: "row" }
11
101
  );
@@ -14,7 +104,7 @@ function requireTimestamp(value, field) {
14
104
  }
15
105
  function asString(value, field) {
16
106
  if (typeof value !== "string") {
17
- throw new chunkJIEJCTDS_cjs.DatabaseOperationError(
107
+ throw new chunkDIK74MXX_cjs.DatabaseOperationError(
18
108
  `Expected ${field} to be string, got ${typeof value}`,
19
109
  { operation: "select", entity: "row" }
20
110
  );
@@ -23,7 +113,7 @@ function asString(value, field) {
23
113
  }
24
114
  function asNumber(value, field) {
25
115
  if (typeof value !== "number") {
26
- throw new chunkJIEJCTDS_cjs.DatabaseOperationError(
116
+ throw new chunkDIK74MXX_cjs.DatabaseOperationError(
27
117
  `Expected ${field} to be number, got ${typeof value}`,
28
118
  { operation: "select", entity: "row" }
29
119
  );
@@ -58,13 +148,17 @@ function coerceNumericScore(value) {
58
148
  return parsed;
59
149
  }
60
150
  function normalizeJsonColumn(value) {
61
- return typeof value === "string" ? value : JSON.stringify(value ?? {});
151
+ if (typeof value === "string") return value;
152
+ if (value !== null && typeof value === "object") {
153
+ return value;
154
+ }
155
+ return JSON.stringify(value ?? {});
62
156
  }
63
157
  var SQLITE_ROW_MAPPER_CONFIG = {
64
158
  formatTimestamp: (value) => {
65
159
  if (value === null || value === void 0) return;
66
160
  if (typeof value !== "string") {
67
- throw new chunkJIEJCTDS_cjs.DatabaseOperationError(
161
+ throw new chunkDIK74MXX_cjs.DatabaseOperationError(
68
162
  `Expected timestamp to be string, got ${typeof value}`,
69
163
  { operation: "select", entity: "row" }
70
164
  );
@@ -73,7 +167,7 @@ var SQLITE_ROW_MAPPER_CONFIG = {
73
167
  },
74
168
  normalizeJson: (value) => {
75
169
  if (typeof value !== "string") {
76
- throw new chunkJIEJCTDS_cjs.DatabaseOperationError(
170
+ throw new chunkDIK74MXX_cjs.DatabaseOperationError(
77
171
  `Expected JSON column to be string, got ${typeof value}`,
78
172
  { operation: "select", entity: "row" }
79
173
  );
@@ -135,21 +229,33 @@ function createSchemaVersionRowMapper(config) {
135
229
  graph_id: asString(row.graph_id, "graph_id"),
136
230
  version: asNumber(row.version, "version"),
137
231
  schema_hash: asString(row.schema_hash, "schema_hash"),
138
- schema_doc: config.normalizeJson(row.schema_doc),
232
+ schema_doc: chunkX4JBT642_cjs.rowPropsToJsonText(config.normalizeJson(row.schema_doc)),
139
233
  created_at: requireTimestamp(config.formatTimestamp(row.created_at), "created_at"),
140
234
  is_active: isActive
141
235
  };
142
236
  };
143
237
  }
144
238
 
239
+ exports.EDGE_COLUMNS = EDGE_COLUMNS;
240
+ exports.EMPTY_REQUIRED_COLUMNS = EMPTY_REQUIRED_COLUMNS;
241
+ exports.NODE_COLUMNS = NODE_COLUMNS;
145
242
  exports.POSTGRES_ROW_MAPPER_CONFIG = POSTGRES_ROW_MAPPER_CONFIG;
146
243
  exports.SQLITE_ROW_MAPPER_CONFIG = SQLITE_ROW_MAPPER_CONFIG;
244
+ exports.addRequiredColumn = addRequiredColumn;
147
245
  exports.coerceNumericScore = coerceNumericScore;
148
246
  exports.createEdgeRowMapper = createEdgeRowMapper;
149
247
  exports.createNodeRowMapper = createNodeRowMapper;
150
248
  exports.createSchemaVersionRowMapper = createSchemaVersionRowMapper;
151
249
  exports.createUniqueRowMapper = createUniqueRowMapper;
250
+ exports.findSelectivePropsFieldForFieldRef = findSelectivePropsFieldForFieldRef;
152
251
  exports.formatPostgresTimestamp = formatPostgresTimestamp;
252
+ exports.isAggregateExpr = isAggregateExpr;
253
+ exports.isIdFieldRef = isIdFieldRef;
254
+ exports.mapSelectiveSystemFieldToColumn = mapSelectiveSystemFieldToColumn;
255
+ exports.markFieldRefAsRequired = markFieldRefAsRequired;
256
+ exports.markSelectiveFieldAsRequired = markSelectiveFieldAsRequired;
153
257
  exports.nowIso = nowIso;
154
- //# sourceMappingURL=chunk-JJRCLAUN.cjs.map
155
- //# sourceMappingURL=chunk-JJRCLAUN.cjs.map
258
+ exports.quoteIdentifier = quoteIdentifier;
259
+ exports.shouldProjectColumn = shouldProjectColumn;
260
+ //# sourceMappingURL=chunk-5W4L6DLF.cjs.map
261
+ //# sourceMappingURL=chunk-5W4L6DLF.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/query/compiler/utils.ts","../src/backend/drizzle/row-mappers.ts"],"names":["sql","getFieldPointer","parseJsonPointer","DatabaseOperationError","rowPropsToJsonText"],"mappings":"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","file":"chunk-5W4L6DLF.cjs","sourcesContent":["/**\n * Shared Compiler Utilities\n *\n * Functions and constants shared between the standard and recursive compilers.\n */\nimport { type SQL, sql } from \"drizzle-orm\";\n\nimport { type AggregateExpr, type FieldRef, type SelectiveField } from \"../ast\";\nimport { parseJsonPointer } from \"../json-pointer\";\nimport { getFieldPointer } from \"./predicates\";\n\n// ============================================================\n// Constants\n// ============================================================\n\nexport const NODE_COLUMNS = [\n \"id\",\n \"kind\",\n \"props\",\n \"version\",\n \"valid_from\",\n \"valid_to\",\n \"created_at\",\n \"updated_at\",\n \"deleted_at\",\n] as const;\n\nexport const EDGE_COLUMNS = [\n \"id\",\n \"kind\",\n \"from_id\",\n \"to_id\",\n \"props\",\n \"valid_from\",\n \"valid_to\",\n \"created_at\",\n \"updated_at\",\n \"deleted_at\",\n] as const;\n\nexport type RequiredColumnsByAlias = ReadonlyMap<string, ReadonlySet<string>>;\nexport const EMPTY_REQUIRED_COLUMNS = new Set<string>();\n\n// ============================================================\n// SQL Helpers\n// ============================================================\n\nexport function quoteIdentifier(identifier: string): SQL {\n return sql.raw(`\"${identifier.replaceAll('\"', '\"\"')}\"`);\n}\n\n// ============================================================\n// Column Projection\n// ============================================================\n\n/**\n * Determines whether a column should be included in the projection.\n *\n * @param requiredColumns - Set of columns required by the query, or undefined to include all.\n * @param column - The column name to check.\n * @param alwaysRequiredColumns - Optional set of columns that are always projected\n * (e.g. join keys in recursive CTEs). Pass only from recursive compiler callers.\n */\nexport function shouldProjectColumn(\n requiredColumns: ReadonlySet<string> | undefined,\n column: string,\n alwaysRequiredColumns?: ReadonlySet<string>,\n): boolean {\n if (alwaysRequiredColumns?.has(column)) return true;\n if (requiredColumns === undefined) return true;\n return requiredColumns.has(column);\n}\n\n// ============================================================\n// Required Column Tracking\n// ============================================================\n\nexport function addRequiredColumn(\n requiredColumnsByAlias: Map<string, Set<string>>,\n alias: string,\n column: string,\n): void {\n const existing = requiredColumnsByAlias.get(alias);\n if (existing) {\n existing.add(column);\n return;\n }\n requiredColumnsByAlias.set(alias, new Set([column]));\n}\n\nexport function markFieldRefAsRequired(\n requiredColumnsByAlias: Map<string, Set<string>>,\n field: FieldRef,\n): void {\n const column = field.path[0];\n if (column === undefined) return;\n addRequiredColumn(requiredColumnsByAlias, field.alias, column);\n}\n\nexport function mapSelectiveSystemFieldToColumn(field: string): string {\n if (field === \"fromId\") return \"from_id\";\n if (field === \"toId\") return \"to_id\";\n if (field.startsWith(\"meta.\")) {\n return field\n .slice(5)\n .replaceAll(/([A-Z])/g, \"_$1\")\n .toLowerCase();\n }\n return field;\n}\n\nexport function markSelectiveFieldAsRequired(\n requiredColumnsByAlias: Map<string, Set<string>>,\n field: SelectiveField,\n): void {\n if (field.isSystemField) {\n addRequiredColumn(\n requiredColumnsByAlias,\n field.alias,\n mapSelectiveSystemFieldToColumn(field.field),\n );\n return;\n }\n addRequiredColumn(requiredColumnsByAlias, field.alias, \"props\");\n}\n\nfunction getTopLevelPropsFieldName(field: FieldRef): string | undefined {\n const pointer = getFieldPointer(field);\n if (pointer === undefined) return undefined;\n\n const segments = parseJsonPointer(pointer);\n return segments.length === 1 ? segments[0] : undefined;\n}\n\nexport function findSelectivePropsFieldForFieldRef(\n selectiveFields: readonly SelectiveField[] | undefined,\n field: FieldRef,\n): SelectiveField | undefined {\n if (selectiveFields === undefined || selectiveFields.length === 0) {\n return undefined;\n }\n\n const propsFieldName = getTopLevelPropsFieldName(field);\n if (propsFieldName === undefined) return undefined;\n\n return selectiveFields.find(\n (selectiveField) =>\n !selectiveField.isSystemField &&\n selectiveField.alias === field.alias &&\n selectiveField.field === propsFieldName,\n );\n}\n\n// ============================================================\n// AST Type Guards\n// ============================================================\n\nexport function isIdFieldRef(field: FieldRef): boolean {\n return (\n field.path.length === 1 &&\n field.path[0] === \"id\" &&\n field.jsonPointer === undefined\n );\n}\n\nexport function isAggregateExpr(\n source: FieldRef | AggregateExpr,\n): source is AggregateExpr {\n return \"__type\" in source && source.__type === \"aggregate\";\n}\n","/**\n * Shared row-mapping utilities for Drizzle backend adapters.\n */\n\nimport { DatabaseOperationError } from \"../../errors\";\nimport { type EdgeRow, type NodeRow, rowPropsToJsonText, type SchemaVersionRow, type UniqueRow } from \"../types\";\n\nfunction requireTimestamp(value: string | undefined, field: string): string {\n if (value === undefined) {\n throw new DatabaseOperationError(\n `Expected non-null ${field} timestamp`,\n { operation: \"select\", entity: \"row\" },\n );\n }\n return value;\n}\n\nfunction asString(value: unknown, field: string): string {\n if (typeof value !== \"string\") {\n throw new DatabaseOperationError(\n `Expected ${field} to be string, got ${typeof value}`,\n { operation: \"select\", entity: \"row\" },\n );\n }\n return value;\n}\n\nfunction asNumber(value: unknown, field: string): number {\n if (typeof value !== \"number\") {\n throw new DatabaseOperationError(\n `Expected ${field} to be number, got ${typeof value}`,\n { operation: \"select\", entity: \"row\" },\n );\n }\n return value;\n}\n\nexport function nowIso(): string {\n return new Date().toISOString();\n}\n\nfunction nullToUndefined<T>(value: T | null): T | undefined {\n return value ?? undefined;\n}\n\n/**\n * Formats a PostgreSQL timestamp value to ISO string.\n * PostgreSQL returns Date objects or timestamp strings that need normalization.\n */\nexport function formatPostgresTimestamp(value: unknown): string | undefined {\n if (value === null || value === undefined) return undefined;\n if (value instanceof Date) return value.toISOString();\n if (typeof value === \"string\") {\n if (value.includes(\"T\")) return value;\n const date = new Date(value);\n if (!Number.isNaN(date.getTime())) return date.toISOString();\n return value;\n }\n return undefined;\n}\n\n/**\n * Coerce a fulltext relevance score to `number` at the backend\n * boundary. Postgres returns `numeric` as a string to preserve\n * precision; a custom `FulltextStrategy` on either dialect could\n * likewise yield a string. Shared so both backends enforce the same\n * `FulltextSearchResult.score: number` contract and reject garbage\n * loudly instead of propagating `NaN`.\n */\nexport function coerceNumericScore(value: number | string): number {\n if (typeof value === \"number\") return value;\n const parsed = Number.parseFloat(value);\n if (Number.isNaN(parsed)) {\n throw new TypeError(\n `Backend returned non-numeric fulltext score: ${JSON.stringify(value)}`,\n );\n }\n return parsed;\n}\n\n/**\n * Normalizes a JSON column that may be returned as a parsed object (JSONB)\n * or string. PostgreSQL drivers hand jsonb back already parsed — keep the\n * object instead of re-stringifying it, so the read path pays zero JSON\n * work per row (consumers normalize via rowPropsToObject /\n * rowPropsToJsonText at the point of use). SQLite text passes through.\n */\nfunction normalizeJsonColumn(value: unknown): string | Record<string, unknown> {\n if (typeof value === \"string\") return value;\n if (value !== null && typeof value === \"object\") {\n return value as Record<string, unknown>;\n }\n return JSON.stringify(value ?? {});\n}\n\n/**\n * Dialect-specific configuration for row mappers.\n *\n * Row mapper factories accept this config to produce dialect-appropriate\n * mappers. The `formatTimestamp` and `normalizeJson` functions handle\n * the differences between how SQLite and PostgreSQL return timestamps\n * and JSON columns.\n */\ntype DialectRowMapperConfig = Readonly<{\n formatTimestamp: (value: unknown) => string | undefined;\n normalizeJson: (value: unknown) => string | Record<string, unknown>;\n}>;\n\n/**\n * SQLite row mapper config.\n * Timestamps are stored as ISO strings; JSON is stored as TEXT.\n */\nexport const SQLITE_ROW_MAPPER_CONFIG: DialectRowMapperConfig = {\n formatTimestamp: (value) => {\n if (value === null || value === undefined) return;\n if (typeof value !== \"string\") {\n throw new DatabaseOperationError(\n `Expected timestamp to be string, got ${typeof value}`,\n { operation: \"select\", entity: \"row\" },\n );\n }\n return value;\n },\n normalizeJson: (value) => {\n if (typeof value !== \"string\") {\n throw new DatabaseOperationError(\n `Expected JSON column to be string, got ${typeof value}`,\n { operation: \"select\", entity: \"row\" },\n );\n }\n return value;\n },\n};\n\n/**\n * PostgreSQL row mapper config.\n * Timestamps may be Date objects or PG-format strings; JSONB is parsed objects.\n */\nexport const POSTGRES_ROW_MAPPER_CONFIG: DialectRowMapperConfig = {\n formatTimestamp: formatPostgresTimestamp,\n normalizeJson: normalizeJsonColumn,\n};\n\n// Trust boundary: Drizzle raw SQL returns Record<string, unknown> rows.\n// The field access patterns below are intentional unsafe casts at the\n// database driver boundary where we know the column shapes.\n\nexport function createNodeRowMapper(\n config: DialectRowMapperConfig,\n): (row: Record<string, unknown>) => NodeRow {\n return (row) => ({\n graph_id: asString(row.graph_id, \"graph_id\"),\n kind: asString(row.kind, \"kind\"),\n id: asString(row.id, \"id\"),\n props: config.normalizeJson(row.props),\n version: asNumber(row.version, \"version\"),\n valid_from: nullToUndefined(config.formatTimestamp(row.valid_from)),\n valid_to: nullToUndefined(config.formatTimestamp(row.valid_to)),\n created_at: requireTimestamp(config.formatTimestamp(row.created_at), \"created_at\"),\n updated_at: requireTimestamp(config.formatTimestamp(row.updated_at), \"updated_at\"),\n deleted_at: nullToUndefined(config.formatTimestamp(row.deleted_at)),\n });\n}\n\nexport function createEdgeRowMapper(\n config: DialectRowMapperConfig,\n): (row: Record<string, unknown>) => EdgeRow {\n return (row) => ({\n graph_id: asString(row.graph_id, \"graph_id\"),\n id: asString(row.id, \"id\"),\n kind: asString(row.kind, \"kind\"),\n from_kind: asString(row.from_kind, \"from_kind\"),\n from_id: asString(row.from_id, \"from_id\"),\n to_kind: asString(row.to_kind, \"to_kind\"),\n to_id: asString(row.to_id, \"to_id\"),\n props: config.normalizeJson(row.props),\n valid_from: nullToUndefined(config.formatTimestamp(row.valid_from)),\n valid_to: nullToUndefined(config.formatTimestamp(row.valid_to)),\n created_at: requireTimestamp(config.formatTimestamp(row.created_at), \"created_at\"),\n updated_at: requireTimestamp(config.formatTimestamp(row.updated_at), \"updated_at\"),\n deleted_at: nullToUndefined(config.formatTimestamp(row.deleted_at)),\n });\n}\n\nexport function createUniqueRowMapper(\n config: DialectRowMapperConfig,\n): (row: Record<string, unknown>) => UniqueRow {\n return (row) => ({\n graph_id: asString(row.graph_id, \"graph_id\"),\n node_kind: asString(row.node_kind, \"node_kind\"),\n constraint_name: asString(row.constraint_name, \"constraint_name\"),\n key: asString(row.key, \"key\"),\n node_id: asString(row.node_id, \"node_id\"),\n concrete_kind: asString(row.concrete_kind, \"concrete_kind\"),\n deleted_at: nullToUndefined(config.formatTimestamp(row.deleted_at)),\n });\n}\n\nexport function createSchemaVersionRowMapper(\n config: DialectRowMapperConfig,\n): (row: Record<string, unknown>) => SchemaVersionRow {\n return (row) => {\n const isActiveValue = row.is_active;\n const isActive =\n isActiveValue === true || isActiveValue === 1 || isActiveValue === \"1\";\n\n return {\n graph_id: asString(row.graph_id, \"graph_id\"),\n version: asNumber(row.version, \"version\"),\n schema_hash: asString(row.schema_hash, \"schema_hash\"),\n schema_doc: rowPropsToJsonText(config.normalizeJson(row.schema_doc)),\n created_at: requireTimestamp(config.formatTimestamp(row.created_at), \"created_at\"),\n is_active: isActive,\n };\n };\n}\n"]}
@@ -1,11 +1,11 @@
1
- import { compileNodeIndexKeys, compileIndexWhere, compileEdgeIndexKeys } from './chunk-KUTNI6SI.js';
1
+ import { compileNodeIndexKeys, compileIndexWhere, compileEdgeIndexKeys } from './chunk-FPIZFYHE.js';
2
2
  import { sql } from 'drizzle-orm';
3
3
  import { uniqueIndex, index } from 'drizzle-orm/pg-core';
4
4
  import { uniqueIndex as uniqueIndex$1, index as index$1 } from 'drizzle-orm/sqlite-core';
5
5
 
6
6
  function buildPostgresNodeIndexBuilders(table, indexes) {
7
7
  const nodeIndexes = indexes.filter(
8
- (index) => index.entity === "node"
8
+ (index) => index.entity === "node" && index.method === void 0
9
9
  );
10
10
  return nodeIndexes.map((index$1) => {
11
11
  const propsColumn = sql`${table.props}`;
@@ -32,7 +32,7 @@ function buildPostgresNodeIndexBuilders(table, indexes) {
32
32
  }
33
33
  function buildPostgresEdgeIndexBuilders(table, indexes) {
34
34
  const edgeIndexes = indexes.filter(
35
- (index) => index.entity === "edge"
35
+ (index) => index.entity === "edge" && index.method === void 0
36
36
  );
37
37
  return edgeIndexes.map((index$1) => {
38
38
  const propsColumn = sql`${table.props}`;
@@ -139,7 +139,7 @@ function getPostgresEdgeSystemColumn(table, column) {
139
139
  }
140
140
  function buildSqliteNodeIndexBuilders(table, indexes) {
141
141
  const nodeIndexes = indexes.filter(
142
- (index) => index.entity === "node"
142
+ (index) => index.entity === "node" && index.method === void 0
143
143
  );
144
144
  return nodeIndexes.map((index) => {
145
145
  const propsColumn = sql`${table.props}`;
@@ -166,7 +166,7 @@ function buildSqliteNodeIndexBuilders(table, indexes) {
166
166
  }
167
167
  function buildSqliteEdgeIndexBuilders(table, indexes) {
168
168
  const edgeIndexes = indexes.filter(
169
- (index) => index.entity === "edge"
169
+ (index) => index.entity === "edge" && index.method === void 0
170
170
  );
171
171
  return edgeIndexes.map((index) => {
172
172
  const propsColumn = sql`${table.props}`;
@@ -278,5 +278,5 @@ function assertNonEmpty(values, label) {
278
278
  }
279
279
 
280
280
  export { buildPostgresEdgeIndexBuilders, buildPostgresNodeIndexBuilders, buildSqliteEdgeIndexBuilders, buildSqliteNodeIndexBuilders };
281
- //# sourceMappingURL=chunk-6GNSY7AV.js.map
282
- //# sourceMappingURL=chunk-6GNSY7AV.js.map
281
+ //# sourceMappingURL=chunk-6FR2MMS6.js.map
282
+ //# sourceMappingURL=chunk-6FR2MMS6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/indexes/drizzle.ts"],"names":["index","pgUniqueIndex","pgIndex","sqliteUniqueIndex","sqliteIndex"],"mappings":"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","file":"chunk-6FR2MMS6.js","sourcesContent":["import { type SQL, sql, type SQLWrapper } from \"drizzle-orm\";\nimport {\n index as pgIndex,\n type IndexBuilder as PgIndexBuilder,\n uniqueIndex as pgUniqueIndex,\n} from \"drizzle-orm/pg-core\";\nimport {\n index as sqliteIndex,\n type IndexBuilder as SqliteIndexBuilder,\n uniqueIndex as sqliteUniqueIndex,\n} from \"drizzle-orm/sqlite-core\";\n\nimport {\n compileEdgeIndexKeys,\n compileIndexWhere,\n compileNodeIndexKeys,\n type IndexCompilationContext,\n} from \"./compiler\";\nimport {\n type EdgeIndexDeclaration,\n type IndexDeclaration,\n type NodeIndexDeclaration,\n type SystemColumnName,\n} from \"./types\";\n\n// ============================================================\n// PostgreSQL (Drizzle Schema)\n// ============================================================\n\nexport function buildPostgresNodeIndexBuilders(\n table: NodeIndexTable,\n indexes: readonly IndexDeclaration[],\n): readonly PgIndexBuilder[] {\n // GIN-family declarations (method: \"gin\" / \"trigram\") are\n // materialize-only — like pgvector ANN indexes, they are a pure\n // materialization concern and never ride the Drizzle table extras.\n const nodeIndexes = indexes.filter(\n (index): index is NodeIndexDeclaration =>\n index.entity === \"node\" && index.method === undefined,\n );\n\n return nodeIndexes.map((index) => {\n const propsColumn = sql`${table.props}`;\n const systemColumn = (column: SystemColumnName): SQL =>\n sql`${getPostgresNodeSystemColumn(table, column)}`;\n\n const { keys } = compileNodeIndexKeys(\n index,\n \"postgres\",\n propsColumn,\n systemColumn,\n );\n assertNonEmpty(keys, `node index \"${index.name}\"`);\n\n const base = index.unique ? pgUniqueIndex(index.name) : pgIndex(index.name);\n\n const builder = base.on(...keys);\n\n if (index.where) {\n const ctx: IndexCompilationContext = {\n dialect: \"postgres\",\n propsColumn,\n systemColumn,\n };\n builder.where(compileIndexWhere(ctx, index.where));\n }\n\n return builder;\n });\n}\n\nexport function buildPostgresEdgeIndexBuilders(\n table: EdgeIndexTable,\n indexes: readonly IndexDeclaration[],\n): readonly PgIndexBuilder[] {\n const edgeIndexes = indexes.filter(\n (index): index is EdgeIndexDeclaration =>\n index.entity === \"edge\" && index.method === undefined,\n );\n\n return edgeIndexes.map((index) => {\n const propsColumn = sql`${table.props}`;\n const systemColumn = (column: SystemColumnName): SQL =>\n sql`${getPostgresEdgeSystemColumn(table, column)}`;\n\n const { keys } = compileEdgeIndexKeys(\n index,\n \"postgres\",\n propsColumn,\n systemColumn,\n );\n assertNonEmpty(keys, `edge index \"${index.name}\"`);\n\n const base = index.unique ? pgUniqueIndex(index.name) : pgIndex(index.name);\n\n const builder = base.on(...keys);\n\n if (index.where) {\n const ctx: IndexCompilationContext = {\n dialect: \"postgres\",\n propsColumn,\n systemColumn,\n };\n builder.where(compileIndexWhere(ctx, index.where));\n }\n\n return builder;\n });\n}\n\nfunction getPostgresNodeSystemColumn(\n table: NodeIndexTable,\n column: SystemColumnName,\n): SQLWrapper {\n switch (column) {\n case \"graph_id\": {\n return table.graphId;\n }\n case \"kind\": {\n return table.kind;\n }\n case \"id\": {\n return table.id;\n }\n case \"from_kind\":\n case \"from_id\":\n case \"to_kind\":\n case \"to_id\": {\n throw new Error(`Unsupported node system column for indexes: ${column}`);\n }\n case \"deleted_at\": {\n return table.deletedAt;\n }\n case \"valid_from\": {\n return table.validFrom;\n }\n case \"valid_to\": {\n return table.validTo;\n }\n case \"created_at\": {\n return table.createdAt;\n }\n case \"updated_at\": {\n return table.updatedAt;\n }\n case \"version\": {\n return table.version;\n }\n }\n}\n\nfunction getPostgresEdgeSystemColumn(\n table: EdgeIndexTable,\n column: SystemColumnName,\n): SQLWrapper {\n switch (column) {\n case \"graph_id\": {\n return table.graphId;\n }\n case \"kind\": {\n return table.kind;\n }\n case \"id\": {\n return table.id;\n }\n case \"from_kind\": {\n return table.fromKind;\n }\n case \"from_id\": {\n return table.fromId;\n }\n case \"to_kind\": {\n return table.toKind;\n }\n case \"to_id\": {\n return table.toId;\n }\n case \"deleted_at\": {\n return table.deletedAt;\n }\n case \"valid_from\": {\n return table.validFrom;\n }\n case \"valid_to\": {\n return table.validTo;\n }\n case \"created_at\": {\n return table.createdAt;\n }\n case \"updated_at\": {\n return table.updatedAt;\n }\n case \"version\": {\n throw new Error(`Unsupported edge system column for indexes: ${column}`);\n }\n }\n}\n\n// ============================================================\n// SQLite (Drizzle Schema)\n// ============================================================\n\nexport function buildSqliteNodeIndexBuilders(\n table: NodeIndexTable,\n indexes: readonly IndexDeclaration[],\n): readonly SqliteIndexBuilder[] {\n // GIN-family declarations (method: \"gin\" / \"trigram\") are\n // materialize-only — like pgvector ANN indexes, they are a pure\n // materialization concern and never ride the Drizzle table extras.\n const nodeIndexes = indexes.filter(\n (index): index is NodeIndexDeclaration =>\n index.entity === \"node\" && index.method === undefined,\n );\n\n return nodeIndexes.map((index) => {\n const propsColumn = sql`${table.props}`;\n const systemColumn = (column: SystemColumnName): SQL =>\n sql`${getSqliteNodeSystemColumn(table, column)}`;\n\n const { keys } = compileNodeIndexKeys(\n index,\n \"sqlite\",\n propsColumn,\n systemColumn,\n );\n assertNonEmpty(keys, `node index \"${index.name}\"`);\n\n const base =\n index.unique ? sqliteUniqueIndex(index.name) : sqliteIndex(index.name);\n\n const builder = base.on(...keys);\n\n if (index.where) {\n const ctx: IndexCompilationContext = {\n dialect: \"sqlite\",\n propsColumn,\n systemColumn,\n };\n builder.where(compileIndexWhere(ctx, index.where));\n }\n\n return builder;\n });\n}\n\nexport function buildSqliteEdgeIndexBuilders(\n table: EdgeIndexTable,\n indexes: readonly IndexDeclaration[],\n): readonly SqliteIndexBuilder[] {\n const edgeIndexes = indexes.filter(\n (index): index is EdgeIndexDeclaration =>\n index.entity === \"edge\" && index.method === undefined,\n );\n\n return edgeIndexes.map((index) => {\n const propsColumn = sql`${table.props}`;\n const systemColumn = (column: SystemColumnName): SQL =>\n sql`${getSqliteEdgeSystemColumn(table, column)}`;\n\n const { keys } = compileEdgeIndexKeys(\n index,\n \"sqlite\",\n propsColumn,\n systemColumn,\n );\n assertNonEmpty(keys, `edge index \"${index.name}\"`);\n\n const base =\n index.unique ? sqliteUniqueIndex(index.name) : sqliteIndex(index.name);\n\n const builder = base.on(...keys);\n\n if (index.where) {\n const ctx: IndexCompilationContext = {\n dialect: \"sqlite\",\n propsColumn,\n systemColumn,\n };\n builder.where(compileIndexWhere(ctx, index.where));\n }\n\n return builder;\n });\n}\n\nfunction getSqliteNodeSystemColumn(\n table: NodeIndexTable,\n column: SystemColumnName,\n): SQLWrapper {\n switch (column) {\n case \"graph_id\": {\n return table.graphId;\n }\n case \"kind\": {\n return table.kind;\n }\n case \"id\": {\n return table.id;\n }\n case \"from_kind\":\n case \"from_id\":\n case \"to_kind\":\n case \"to_id\": {\n throw new Error(`Unsupported node system column for indexes: ${column}`);\n }\n case \"deleted_at\": {\n return table.deletedAt;\n }\n case \"valid_from\": {\n return table.validFrom;\n }\n case \"valid_to\": {\n return table.validTo;\n }\n case \"created_at\": {\n return table.createdAt;\n }\n case \"updated_at\": {\n return table.updatedAt;\n }\n case \"version\": {\n return table.version;\n }\n }\n}\n\nfunction getSqliteEdgeSystemColumn(\n table: EdgeIndexTable,\n column: SystemColumnName,\n): SQLWrapper {\n switch (column) {\n case \"graph_id\": {\n return table.graphId;\n }\n case \"kind\": {\n return table.kind;\n }\n case \"id\": {\n return table.id;\n }\n case \"from_kind\": {\n return table.fromKind;\n }\n case \"from_id\": {\n return table.fromId;\n }\n case \"to_kind\": {\n return table.toKind;\n }\n case \"to_id\": {\n return table.toId;\n }\n case \"deleted_at\": {\n return table.deletedAt;\n }\n case \"valid_from\": {\n return table.validFrom;\n }\n case \"valid_to\": {\n return table.validTo;\n }\n case \"created_at\": {\n return table.createdAt;\n }\n case \"updated_at\": {\n return table.updatedAt;\n }\n case \"version\": {\n throw new Error(`Unsupported edge system column for indexes: ${column}`);\n }\n }\n}\n\n// ============================================================\n// Minimal table shapes (shared between dialect schemas)\n// ============================================================\n\ntype NodeIndexTable = Readonly<{\n graphId: SQLWrapper;\n kind: SQLWrapper;\n id: SQLWrapper;\n props: SQLWrapper;\n version: SQLWrapper;\n validFrom: SQLWrapper;\n validTo: SQLWrapper;\n createdAt: SQLWrapper;\n updatedAt: SQLWrapper;\n deletedAt: SQLWrapper;\n}>;\n\ntype EdgeIndexTable = Readonly<{\n graphId: SQLWrapper;\n id: SQLWrapper;\n kind: SQLWrapper;\n fromKind: SQLWrapper;\n fromId: SQLWrapper;\n toKind: SQLWrapper;\n toId: SQLWrapper;\n props: SQLWrapper;\n validFrom: SQLWrapper;\n validTo: SQLWrapper;\n createdAt: SQLWrapper;\n updatedAt: SQLWrapper;\n deletedAt: SQLWrapper;\n}>;\n\nfunction assertNonEmpty(\n values: readonly SQL[],\n label: string,\n): asserts values is readonly [SQL, ...SQL[]] {\n if (values.length === 0) {\n throw new Error(`Index must have at least one key (${label})`);\n }\n}\n"]}