@nicia-ai/typegraph 0.49.0 → 0.50.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.
- package/dist/backend/drizzle/indexes.cjs +9 -9
- package/dist/backend/drizzle/indexes.d.cts +1 -1
- package/dist/backend/drizzle/indexes.d.ts +1 -1
- package/dist/backend/drizzle/indexes.js +5 -5
- package/dist/backend/index.cjs +56 -52
- package/dist/backend/index.d.cts +3 -3
- package/dist/backend/index.d.ts +3 -3
- package/dist/backend/index.js +11 -11
- package/dist/backend/postgres/index.cjs +34 -28
- package/dist/backend/postgres/index.d.cts +7 -7
- package/dist/backend/postgres/index.d.ts +7 -7
- package/dist/backend/postgres/index.js +17 -15
- package/dist/backend/postgres/pglite-store.cjs +36 -35
- package/dist/backend/postgres/pglite-store.cjs.map +1 -1
- package/dist/backend/postgres/pglite-store.d.cts +8 -8
- package/dist/backend/postgres/pglite-store.d.ts +8 -8
- package/dist/backend/postgres/pglite-store.js +32 -31
- package/dist/backend/postgres/pglite-store.js.map +1 -1
- package/dist/backend/postgres/pglite.cjs +19 -17
- package/dist/backend/postgres/pglite.d.cts +3 -3
- package/dist/backend/postgres/pglite.d.ts +3 -3
- package/dist/backend/postgres/pglite.js +18 -16
- package/dist/backend/sqlite/index.cjs +31 -25
- package/dist/backend/sqlite/index.d.cts +7 -7
- package/dist/backend/sqlite/index.d.ts +7 -7
- package/dist/backend/sqlite/index.js +15 -13
- package/dist/backend/sqlite/libsql.cjs +22 -20
- package/dist/backend/sqlite/libsql.cjs.map +1 -1
- package/dist/backend/sqlite/libsql.d.cts +3 -3
- package/dist/backend/sqlite/libsql.d.ts +3 -3
- package/dist/backend/sqlite/libsql.js +17 -15
- package/dist/backend/sqlite/libsql.js.map +1 -1
- package/dist/backend/sqlite/local-store.cjs +37 -36
- package/dist/backend/sqlite/local-store.cjs.map +1 -1
- package/dist/backend/sqlite/local-store.d.cts +8 -8
- package/dist/backend/sqlite/local-store.d.ts +8 -8
- package/dist/backend/sqlite/local-store.js +33 -32
- package/dist/backend/sqlite/local-store.js.map +1 -1
- package/dist/backend/sqlite/local.cjs +20 -18
- package/dist/backend/sqlite/local.d.cts +3 -3
- package/dist/backend/sqlite/local.d.ts +3 -3
- package/dist/backend/sqlite/local.js +18 -16
- package/dist/{chunk-LTXQOEIC.js → chunk-2CYI5HRH.js} +248 -203
- package/dist/chunk-2CYI5HRH.js.map +1 -0
- package/dist/{chunk-KF6K7TGH.js → chunk-2GIV5X4P.js} +702 -422
- package/dist/chunk-2GIV5X4P.js.map +1 -0
- package/dist/{chunk-2TYSSBU5.js → chunk-2Q45FAIE.js} +15 -15
- package/dist/{chunk-2TYSSBU5.js.map → chunk-2Q45FAIE.js.map} +1 -1
- package/dist/{chunk-WODMN3Q2.cjs → chunk-45YZXI6X.cjs} +27 -27
- package/dist/{chunk-WODMN3Q2.cjs.map → chunk-45YZXI6X.cjs.map} +1 -1
- package/dist/{chunk-3DMMGT6S.js → chunk-46UGOVRW.js} +3 -3
- package/dist/{chunk-3DMMGT6S.js.map → chunk-46UGOVRW.js.map} +1 -1
- package/dist/{chunk-GLHXM7C4.js → chunk-5LKOVCPP.js} +60 -23
- package/dist/chunk-5LKOVCPP.js.map +1 -0
- package/dist/{chunk-JFRT7S3B.cjs → chunk-5OWHU7Z7.cjs} +261 -459
- package/dist/chunk-5OWHU7Z7.cjs.map +1 -0
- package/dist/{chunk-7SQSZN2J.js → chunk-5PP4KRPV.js} +5 -5
- package/dist/{chunk-7SQSZN2J.js.map → chunk-5PP4KRPV.js.map} +1 -1
- package/dist/chunk-6KQEICJ6.cjs +12 -0
- package/dist/{chunk-MKJ4KXL5.cjs.map → chunk-6KQEICJ6.cjs.map} +1 -1
- package/dist/{chunk-6SWPJEYN.js → chunk-6LEOAIIB.js} +40 -6
- package/dist/chunk-6LEOAIIB.js.map +1 -0
- package/dist/{chunk-DZAICA5J.js → chunk-6NKSE5AU.js} +4 -4
- package/dist/{chunk-DZAICA5J.js.map → chunk-6NKSE5AU.js.map} +1 -1
- package/dist/{chunk-OVI7IXYX.js → chunk-6S3PTHL4.js} +3 -3
- package/dist/{chunk-OVI7IXYX.js.map → chunk-6S3PTHL4.js.map} +1 -1
- package/dist/{chunk-3FPR224C.cjs → chunk-7CCMCMJO.cjs} +102 -102
- package/dist/{chunk-3FPR224C.cjs.map → chunk-7CCMCMJO.cjs.map} +1 -1
- package/dist/{chunk-SHFBB23Q.js → chunk-7OWE7WD6.js} +6 -4
- package/dist/chunk-7OWE7WD6.js.map +1 -0
- package/dist/chunk-7PRMDZIA.cjs +182 -0
- package/dist/chunk-7PRMDZIA.cjs.map +1 -0
- package/dist/{chunk-CHAOFCHV.js → chunk-AH2A74OZ.js} +3 -3
- package/dist/{chunk-CHAOFCHV.js.map → chunk-AH2A74OZ.js.map} +1 -1
- package/dist/{chunk-OORXGFL5.cjs → chunk-BYBDM423.cjs} +48 -48
- package/dist/{chunk-OORXGFL5.cjs.map → chunk-BYBDM423.cjs.map} +1 -1
- package/dist/{chunk-JB6T4GLL.cjs → chunk-C76WFIVZ.cjs} +808 -519
- package/dist/chunk-C76WFIVZ.cjs.map +1 -0
- package/dist/{chunk-3G5W2U2L.cjs → chunk-CS6JTQQ2.cjs} +302 -257
- package/dist/chunk-CS6JTQQ2.cjs.map +1 -0
- package/dist/{chunk-AOSSQDVO.cjs → chunk-CSNOYIB4.cjs} +13 -13
- package/dist/{chunk-AOSSQDVO.cjs.map → chunk-CSNOYIB4.cjs.map} +1 -1
- package/dist/{chunk-HEV35TGT.js → chunk-DI6VC62F.js} +13 -4
- package/dist/chunk-DI6VC62F.js.map +1 -0
- package/dist/{chunk-2QGYQBS2.cjs → chunk-DWUDZ66O.cjs} +10 -10
- package/dist/{chunk-2QGYQBS2.cjs.map → chunk-DWUDZ66O.cjs.map} +1 -1
- package/dist/{chunk-ZDKTPBGV.js → chunk-EDLKIQRI.js} +4 -4
- package/dist/{chunk-ZDKTPBGV.js.map → chunk-EDLKIQRI.js.map} +1 -1
- package/dist/chunk-EH3JZJUM.cjs +567 -0
- package/dist/chunk-EH3JZJUM.cjs.map +1 -0
- package/dist/{chunk-S5TERQVW.js → chunk-FX5ZW6PN.js} +196 -33
- package/dist/chunk-FX5ZW6PN.js.map +1 -0
- package/dist/{chunk-XVWOYKIK.js → chunk-FZHF5UWR.js} +3 -3
- package/dist/{chunk-XVWOYKIK.js.map → chunk-FZHF5UWR.js.map} +1 -1
- package/dist/{chunk-BFUOME67.cjs → chunk-G2TLHH6T.cjs} +20 -11
- package/dist/chunk-G2TLHH6T.cjs.map +1 -0
- package/dist/{chunk-5PRKMB24.cjs → chunk-GHZPZNFC.cjs} +12 -4
- package/dist/chunk-GHZPZNFC.cjs.map +1 -0
- package/dist/{chunk-ZFMCDJGB.js → chunk-GVYVGGPJ.js} +11 -199
- package/dist/chunk-GVYVGGPJ.js.map +1 -0
- package/dist/{chunk-SDBBMD4N.js → chunk-H3XP6BAV.js} +3 -3
- package/dist/{chunk-SDBBMD4N.js.map → chunk-H3XP6BAV.js.map} +1 -1
- package/dist/{chunk-ROR5ZR6A.cjs → chunk-HSEZ7X6Y.cjs} +45 -45
- package/dist/{chunk-ROR5ZR6A.cjs.map → chunk-HSEZ7X6Y.cjs.map} +1 -1
- package/dist/{chunk-LRQKXRXO.cjs → chunk-HY5BNOUN.cjs} +4 -4
- package/dist/{chunk-LRQKXRXO.cjs.map → chunk-HY5BNOUN.cjs.map} +1 -1
- package/dist/chunk-HZUB5CON.js +27 -0
- package/dist/chunk-HZUB5CON.js.map +1 -0
- package/dist/{chunk-MYKHJI2J.js → chunk-I5C6OTKR.js} +3 -3
- package/dist/{chunk-MYKHJI2J.js.map → chunk-I5C6OTKR.js.map} +1 -1
- package/dist/{chunk-3U5ABFDW.cjs → chunk-IHK5KA2Q.cjs} +31 -28
- package/dist/chunk-IHK5KA2Q.cjs.map +1 -0
- package/dist/{chunk-26YKDNUD.cjs → chunk-IPRP6TDL.cjs} +12 -10
- package/dist/chunk-IPRP6TDL.cjs.map +1 -0
- package/dist/{chunk-UGHG7PGX.js → chunk-IRPYOHRC.js} +26 -4
- package/dist/chunk-IRPYOHRC.js.map +1 -0
- package/dist/{chunk-7UOLHNWC.cjs → chunk-ISKCIQF2.cjs} +20 -20
- package/dist/{chunk-7UOLHNWC.cjs.map → chunk-ISKCIQF2.cjs.map} +1 -1
- package/dist/{chunk-7LZJNLA5.js → chunk-JG5XIJDY.js} +57 -31
- package/dist/chunk-JG5XIJDY.js.map +1 -0
- package/dist/{chunk-YYUHLYM2.cjs → chunk-K2XYLVVB.cjs} +134 -133
- package/dist/chunk-K2XYLVVB.cjs.map +1 -0
- package/dist/{chunk-5K2BKEBD.js → chunk-K46SDNQD.js} +10 -4
- package/dist/chunk-K46SDNQD.js.map +1 -0
- package/dist/{chunk-TZEGUG6D.cjs → chunk-K6VKTBST.cjs} +4 -4
- package/dist/{chunk-TZEGUG6D.cjs.map → chunk-K6VKTBST.cjs.map} +1 -1
- package/dist/chunk-KWNWG4RC.cjs +12 -0
- package/dist/{chunk-CICO5GXD.cjs.map → chunk-KWNWG4RC.cjs.map} +1 -1
- package/dist/{chunk-FQPEMEWX.cjs → chunk-LLVOQOWE.cjs} +80 -32
- package/dist/chunk-LLVOQOWE.cjs.map +1 -0
- package/dist/{chunk-TQHGE7UC.cjs → chunk-M5MSP3BI.cjs} +18 -10
- package/dist/chunk-M5MSP3BI.cjs.map +1 -0
- package/dist/{chunk-Z2JCLZFJ.js → chunk-MJPZNEJZ.js} +273 -291
- package/dist/chunk-MJPZNEJZ.js.map +1 -0
- package/dist/{chunk-TUNPBZY3.cjs → chunk-MM3JHVKZ.cjs} +4 -4
- package/dist/{chunk-TUNPBZY3.cjs.map → chunk-MM3JHVKZ.cjs.map} +1 -1
- package/dist/{chunk-BRRP76WO.js → chunk-MX7EKQPM.js} +457 -299
- package/dist/chunk-MX7EKQPM.js.map +1 -0
- package/dist/{chunk-D4QLTJSM.js → chunk-MZ34E2GN.js} +13 -12
- package/dist/chunk-MZ34E2GN.js.map +1 -0
- package/dist/{chunk-EDN4Y4ZG.cjs → chunk-OJHD3LXJ.cjs} +9 -9
- package/dist/{chunk-EDN4Y4ZG.cjs.map → chunk-OJHD3LXJ.cjs.map} +1 -1
- package/dist/{chunk-DO7SAMEK.cjs → chunk-ON47CBE4.cjs} +47 -47
- package/dist/{chunk-DO7SAMEK.cjs.map → chunk-ON47CBE4.cjs.map} +1 -1
- package/dist/{chunk-6LN7FIVU.js → chunk-PALYTHGM.js} +11 -4
- package/dist/chunk-PALYTHGM.js.map +1 -0
- package/dist/{chunk-YVF2EM7B.js → chunk-R7MRFE5P.js} +3 -3
- package/dist/{chunk-YVF2EM7B.js.map → chunk-R7MRFE5P.js.map} +1 -1
- package/dist/{chunk-EZEEWCFJ.cjs → chunk-RDP6ZRSM.cjs} +435 -265
- package/dist/chunk-RDP6ZRSM.cjs.map +1 -0
- package/dist/{chunk-GYEG3ZLZ.cjs → chunk-RJMHU2MG.cjs} +121 -18
- package/dist/chunk-RJMHU2MG.cjs.map +1 -0
- package/dist/chunk-RWUWTJQY.cjs +30 -0
- package/dist/chunk-RWUWTJQY.cjs.map +1 -0
- package/dist/{chunk-JPD2CTC3.js → chunk-S33YQEL7.js} +7 -7
- package/dist/{chunk-JPD2CTC3.js.map → chunk-S33YQEL7.js.map} +1 -1
- package/dist/chunk-S3SDEQMC.js +532 -0
- package/dist/chunk-S3SDEQMC.js.map +1 -0
- package/dist/{chunk-OI2GQ25X.cjs → chunk-SHC7BCG5.cjs} +7 -7
- package/dist/{chunk-OI2GQ25X.cjs.map → chunk-SHC7BCG5.cjs.map} +1 -1
- package/dist/{chunk-L3LQNR34.cjs → chunk-TEC24ZDA.cjs} +161 -161
- package/dist/{chunk-L3LQNR34.cjs.map → chunk-TEC24ZDA.cjs.map} +1 -1
- package/dist/{chunk-HDL2ARHX.cjs → chunk-TP4NJTI3.cjs} +63 -27
- package/dist/chunk-TP4NJTI3.cjs.map +1 -0
- package/dist/{chunk-UMGZDVOA.cjs → chunk-TTCOPKUL.cjs} +124 -124
- package/dist/{chunk-UMGZDVOA.cjs.map → chunk-TTCOPKUL.cjs.map} +1 -1
- package/dist/chunk-TUVD4DFR.cjs +1207 -0
- package/dist/chunk-TUVD4DFR.cjs.map +1 -0
- package/dist/{chunk-UGHQV7MP.cjs → chunk-TYGGUWMS.cjs} +178 -152
- package/dist/chunk-TYGGUWMS.cjs.map +1 -0
- package/dist/{chunk-WIC7DRXW.js → chunk-U3Z7XKAG.js} +7 -7
- package/dist/{chunk-WIC7DRXW.js.map → chunk-U3Z7XKAG.js.map} +1 -1
- package/dist/{chunk-NACVVDWB.js → chunk-U5EL6JUV.js} +10 -10
- package/dist/{chunk-NACVVDWB.js.map → chunk-U5EL6JUV.js.map} +1 -1
- package/dist/{chunk-OMZ37BM2.js → chunk-V76FGHY3.js} +5 -5
- package/dist/{chunk-OMZ37BM2.js.map → chunk-V76FGHY3.js.map} +1 -1
- package/dist/{chunk-6NGW27EO.cjs → chunk-VLBTRXA2.cjs} +10 -10
- package/dist/{chunk-6NGW27EO.cjs.map → chunk-VLBTRXA2.cjs.map} +1 -1
- package/dist/chunk-VTJVMP4I.js +1182 -0
- package/dist/chunk-VTJVMP4I.js.map +1 -0
- package/dist/{chunk-QTD6HX4O.js → chunk-W5SOCUBL.js} +5 -5
- package/dist/{chunk-QTD6HX4O.js.map → chunk-W5SOCUBL.js.map} +1 -1
- package/dist/{chunk-SR725PWF.cjs → chunk-WCLMKNQE.cjs} +1750 -1592
- package/dist/chunk-WCLMKNQE.cjs.map +1 -0
- package/dist/{chunk-2O4PCIZ6.cjs → chunk-WK23PGTP.cjs} +13 -13
- package/dist/{chunk-2O4PCIZ6.cjs.map → chunk-WK23PGTP.cjs.map} +1 -1
- package/dist/{chunk-KKBDXCLQ.js → chunk-WQBAQZHR.js} +4 -4
- package/dist/{chunk-KKBDXCLQ.js.map → chunk-WQBAQZHR.js.map} +1 -1
- package/dist/{chunk-MRDBBHIZ.cjs → chunk-X4GDXBOP.cjs} +2 -2
- package/dist/chunk-X4GDXBOP.cjs.map +1 -0
- package/dist/{chunk-3QNZ5SAJ.cjs → chunk-XMY2SXOH.cjs} +437 -455
- package/dist/chunk-XMY2SXOH.cjs.map +1 -0
- package/dist/{chunk-D5R42W5D.js → chunk-XZW2CTNO.js} +115 -12
- package/dist/chunk-XZW2CTNO.js.map +1 -0
- package/dist/{chunk-NVY5CJFP.js → chunk-Y55DLLEG.js} +9 -6
- package/dist/chunk-Y55DLLEG.js.map +1 -0
- package/dist/chunk-YA36ABIL.js +174 -0
- package/dist/chunk-YA36ABIL.js.map +1 -0
- package/dist/{chunk-ZLONH2UD.js → chunk-YDEJQWOL.js} +2 -2
- package/dist/chunk-YDEJQWOL.js.map +1 -0
- package/dist/{chunk-JONXFAPO.js → chunk-ZAQUKCUC.js} +5 -5
- package/dist/{chunk-JONXFAPO.js.map → chunk-ZAQUKCUC.js.map} +1 -1
- package/dist/{chunk-SIT26LAZ.cjs → chunk-ZBFZGLZE.cjs} +29 -5
- package/dist/chunk-ZBFZGLZE.cjs.map +1 -0
- package/dist/{chunk-P6YLZTRE.js → chunk-ZRJTM7MT.js} +3 -3
- package/dist/{chunk-P6YLZTRE.js.map → chunk-ZRJTM7MT.js.map} +1 -1
- package/dist/core/index.cjs +29 -28
- package/dist/core/index.d.cts +4 -4
- package/dist/core/index.d.ts +4 -4
- package/dist/core/index.js +9 -8
- package/dist/{ddl-D_oW-EVO.d.ts → ddl-B49O7dB_.d.ts} +3 -3
- package/dist/{ddl-BL1NZLMY.d.cts → ddl-DcZG660s.d.cts} +3 -3
- package/dist/graph-extension/index.cjs +21 -20
- package/dist/graph-extension/index.d.cts +4 -4
- package/dist/graph-extension/index.d.ts +4 -4
- package/dist/graph-extension/index.js +5 -4
- package/dist/graph-merge/index.cjs +305 -303
- package/dist/graph-merge/index.cjs.map +1 -1
- package/dist/graph-merge/index.d.cts +9 -9
- package/dist/graph-merge/index.d.ts +9 -9
- package/dist/graph-merge/index.js +29 -27
- package/dist/graph-merge/index.js.map +1 -1
- package/dist/{index-D7d1u2gr.d.ts → index-B0PrmE3K.d.cts} +16 -2
- package/dist/{index-COs_z6nV.d.cts → index-CwcXsL5R.d.ts} +16 -2
- package/dist/index.cjs +223 -222
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +12 -12
- package/dist/index.d.ts +12 -12
- package/dist/index.js +37 -36
- package/dist/index.js.map +1 -1
- package/dist/indexes/index.cjs +13 -13
- package/dist/indexes/index.d.cts +4 -4
- package/dist/indexes/index.d.ts +4 -4
- package/dist/indexes/index.js +6 -6
- package/dist/{ingestion-import-target-dNeL7iAv.d.ts → ingestion-import-target-CI8OWIkM.d.ts} +1 -1
- package/dist/{ingestion-import-target-XPxZYw89.d.cts → ingestion-import-target-DCpfM1PX.d.cts} +1 -1
- package/dist/interchange/index.cjs +55 -54
- package/dist/interchange/index.cjs.map +1 -1
- package/dist/interchange/index.d.cts +19 -8
- package/dist/interchange/index.d.ts +19 -8
- package/dist/interchange/index.js +19 -18
- package/dist/interchange/index.js.map +1 -1
- package/dist/{manager-D9eRT_ns.d.ts → manager-Cfg1ENj1.d.ts} +30 -2
- package/dist/{manager-CYaff3n3.d.cts → manager-D348fa6W.d.cts} +30 -2
- package/dist/{materialize-indexes-DJ3ykH59.d.ts → materialize-indexes-C9GG3O3C.d.ts} +1 -1
- package/dist/{materialize-indexes-DTtAnvfY.d.cts → materialize-indexes-CrSiW_lT.d.cts} +1 -1
- package/dist/{postgres-CcL4bAHS.d.ts → postgres-CH1kkM5J.d.cts} +279 -2
- package/dist/{postgres-DMj39MEu.d.cts → postgres-UStOycLI.d.ts} +279 -2
- package/dist/profiler/index.d.cts +9 -9
- package/dist/profiler/index.d.ts +9 -9
- package/dist/provenance/index.cjs +46 -44
- package/dist/provenance/index.cjs.map +1 -1
- package/dist/provenance/index.d.cts +7 -7
- package/dist/provenance/index.d.ts +7 -7
- package/dist/provenance/index.js +12 -10
- package/dist/provenance/index.js.map +1 -1
- package/dist/{repair-validity-windows-DlUSqwCg.d.ts → repair-validity-windows-BtOEe2pS.d.ts} +2 -2
- package/dist/{repair-validity-windows-BFNZvd_H.d.cts → repair-validity-windows-aWX7VNvv.d.cts} +2 -2
- package/dist/schema/index.cjs +46 -46
- package/dist/schema/index.d.cts +6 -6
- package/dist/schema/index.d.ts +6 -6
- package/dist/schema/index.js +19 -19
- package/dist/{searchable-DHJMh_nj.d.cts → searchable-C8-RrL3l.d.cts} +1 -1
- package/dist/{searchable-bpE1bBfc.d.ts → searchable-z4BiFfHI.d.ts} +1 -1
- package/dist/{sqlite-YppHrNFb.d.cts → sqlite-Cyx9j9o6.d.cts} +309 -2
- package/dist/{sqlite-D7Oz0SQh.d.ts → sqlite-axLw5Lo5.d.ts} +309 -2
- package/dist/{store-bphCSo7z.d.cts → store-CTfQ9taw.d.ts} +102 -13
- package/dist/{store-DRrFCx5x.d.ts → store-DR9J7JVB.d.cts} +102 -13
- package/dist/{temporal-5GqpYCk2.d.cts → temporal-B4Ky4wzh.d.cts} +1 -1
- package/dist/{temporal-CbnLzTmM.d.ts → temporal-CBOrERz5.d.ts} +1 -1
- package/dist/{types-CXAhpW-c.d.cts → types-BE921wRl.d.cts} +1 -1
- package/dist/{types-Bx74kaTt.d.ts → types-BScHXVM7.d.ts} +1 -1
- package/dist/{types-BqFZTQmV.d.cts → types-CWg4dTjj.d.cts} +257 -6
- package/dist/{types-BqFZTQmV.d.ts → types-CWg4dTjj.d.ts} +257 -6
- package/dist/{where-O-k2wgYm.d.ts → where-BWXUPV3C.d.ts} +1 -1
- package/dist/{where-DI_Fqz-X.d.cts → where-CNtx1aLc.d.cts} +1 -1
- package/package.json +3 -2
- package/dist/chunk-26YKDNUD.cjs.map +0 -1
- package/dist/chunk-3G5W2U2L.cjs.map +0 -1
- package/dist/chunk-3KOY4FH3.cjs +0 -934
- package/dist/chunk-3KOY4FH3.cjs.map +0 -1
- package/dist/chunk-3QNZ5SAJ.cjs.map +0 -1
- package/dist/chunk-3U5ABFDW.cjs.map +0 -1
- package/dist/chunk-5K2BKEBD.js.map +0 -1
- package/dist/chunk-5PRKMB24.cjs.map +0 -1
- package/dist/chunk-6LN7FIVU.js.map +0 -1
- package/dist/chunk-6SWPJEYN.js.map +0 -1
- package/dist/chunk-7LZJNLA5.js.map +0 -1
- package/dist/chunk-BFUOME67.cjs.map +0 -1
- package/dist/chunk-BRRP76WO.js.map +0 -1
- package/dist/chunk-CICO5GXD.cjs +0 -12
- package/dist/chunk-D4QLTJSM.js.map +0 -1
- package/dist/chunk-D5R42W5D.js.map +0 -1
- package/dist/chunk-EZEEWCFJ.cjs.map +0 -1
- package/dist/chunk-FA2AFWLP.cjs +0 -167
- package/dist/chunk-FA2AFWLP.cjs.map +0 -1
- package/dist/chunk-FQPEMEWX.cjs.map +0 -1
- package/dist/chunk-GLHXM7C4.js.map +0 -1
- package/dist/chunk-GYEG3ZLZ.cjs.map +0 -1
- package/dist/chunk-HDL2ARHX.cjs.map +0 -1
- package/dist/chunk-HEV35TGT.js.map +0 -1
- package/dist/chunk-I4GAZH5Z.js +0 -913
- package/dist/chunk-I4GAZH5Z.js.map +0 -1
- package/dist/chunk-JB6T4GLL.cjs.map +0 -1
- package/dist/chunk-JBQQ7THH.js +0 -20
- package/dist/chunk-JBQQ7THH.js.map +0 -1
- package/dist/chunk-JFRT7S3B.cjs.map +0 -1
- package/dist/chunk-KF6K7TGH.js.map +0 -1
- package/dist/chunk-LTXQOEIC.js.map +0 -1
- package/dist/chunk-MKJ4KXL5.cjs +0 -12
- package/dist/chunk-MRDBBHIZ.cjs.map +0 -1
- package/dist/chunk-NVY5CJFP.js.map +0 -1
- package/dist/chunk-PWLJ77UV.cjs +0 -23
- package/dist/chunk-PWLJ77UV.cjs.map +0 -1
- package/dist/chunk-S5TERQVW.js.map +0 -1
- package/dist/chunk-SHFBB23Q.js.map +0 -1
- package/dist/chunk-SIT26LAZ.cjs.map +0 -1
- package/dist/chunk-SR725PWF.cjs.map +0 -1
- package/dist/chunk-TQHGE7UC.cjs.map +0 -1
- package/dist/chunk-UGHG7PGX.js.map +0 -1
- package/dist/chunk-UGHQV7MP.cjs.map +0 -1
- package/dist/chunk-YIURNGXI.js +0 -155
- package/dist/chunk-YIURNGXI.js.map +0 -1
- package/dist/chunk-YYUHLYM2.cjs.map +0 -1
- package/dist/chunk-Z2JCLZFJ.js.map +0 -1
- package/dist/chunk-ZFMCDJGB.js.map +0 -1
- package/dist/chunk-ZLONH2UD.js.map +0 -1
package/dist/chunk-3KOY4FH3.cjs
DELETED
|
@@ -1,934 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunkEZEEWCFJ_cjs = require('./chunk-EZEEWCFJ.cjs');
|
|
4
|
-
var chunk5PRKMB24_cjs = require('./chunk-5PRKMB24.cjs');
|
|
5
|
-
var chunkFQPEMEWX_cjs = require('./chunk-FQPEMEWX.cjs');
|
|
6
|
-
var chunkEDN4Y4ZG_cjs = require('./chunk-EDN4Y4ZG.cjs');
|
|
7
|
-
var chunkHAHNRASW_cjs = require('./chunk-HAHNRASW.cjs');
|
|
8
|
-
var chunkMRDBBHIZ_cjs = require('./chunk-MRDBBHIZ.cjs');
|
|
9
|
-
var chunkN66HCGCY_cjs = require('./chunk-N66HCGCY.cjs');
|
|
10
|
-
|
|
11
|
-
// src/store/types.ts
|
|
12
|
-
var AUTO_REFRESH_STATISTICS_ROW_THRESHOLD = 1e3;
|
|
13
|
-
var TRANSACTION_RUNTIME = chunkEDN4Y4ZG_cjs.typeGraphGlobalSymbol(
|
|
14
|
-
"transaction-runtime-v1"
|
|
15
|
-
);
|
|
16
|
-
|
|
17
|
-
// src/store/runtime-port.ts
|
|
18
|
-
var STORE_RUNTIME = chunkEDN4Y4ZG_cjs.typeGraphGlobalSymbol("store-runtime-v1");
|
|
19
|
-
function storeRuntime(store) {
|
|
20
|
-
const runtime = store[STORE_RUNTIME];
|
|
21
|
-
if (runtime === void 0) {
|
|
22
|
-
throw new TypeError(
|
|
23
|
-
"Cannot access this Store's runtime port. The Store may come from an incompatible TypeGraph version."
|
|
24
|
-
);
|
|
25
|
-
}
|
|
26
|
-
return runtime;
|
|
27
|
-
}
|
|
28
|
-
function storeBackend(store) {
|
|
29
|
-
return storeRuntime(store).backend;
|
|
30
|
-
}
|
|
31
|
-
function transactionBackend(transaction) {
|
|
32
|
-
const runtime = transaction[TRANSACTION_RUNTIME];
|
|
33
|
-
if (runtime === void 0) {
|
|
34
|
-
throw new TypeError(
|
|
35
|
-
"Cannot access this transaction's runtime port. The transaction may come from an incompatible TypeGraph version."
|
|
36
|
-
);
|
|
37
|
-
}
|
|
38
|
-
return runtime.backend;
|
|
39
|
-
}
|
|
40
|
-
function transactionNodeOperationHookRunner(transaction) {
|
|
41
|
-
const runtime = transaction[TRANSACTION_RUNTIME];
|
|
42
|
-
if (runtime === void 0) {
|
|
43
|
-
throw new TypeError(
|
|
44
|
-
"Cannot access this transaction's runtime port. The transaction may come from an incompatible TypeGraph version."
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
return runtime.runNodeOperationHooks;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// src/store/embedding-sync.ts
|
|
51
|
-
var embeddingFieldsCache = /* @__PURE__ */ new WeakMap();
|
|
52
|
-
function getEmbeddingFields(schema) {
|
|
53
|
-
const cached = embeddingFieldsCache.get(schema);
|
|
54
|
-
if (cached) return cached;
|
|
55
|
-
const fields = chunkHAHNRASW_cjs.resolveEmbeddingFields(schema);
|
|
56
|
-
embeddingFieldsCache.set(schema, fields);
|
|
57
|
-
return fields;
|
|
58
|
-
}
|
|
59
|
-
async function syncEmbeddings(ctx, schema, props) {
|
|
60
|
-
const { backend } = ctx;
|
|
61
|
-
if (!backend.upsertEmbedding || !backend.deleteEmbedding) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
const embeddingFields = getEmbeddingFields(schema);
|
|
65
|
-
if (embeddingFields.length === 0) {
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
for (const field of embeddingFields) {
|
|
69
|
-
const value = chunkN66HCGCY_cjs.readOwnProperty(props, field.fieldPath);
|
|
70
|
-
if (isValidEmbeddingValue(value)) {
|
|
71
|
-
await backend.upsertEmbedding({
|
|
72
|
-
graphId: ctx.graphId,
|
|
73
|
-
nodeKind: ctx.nodeKind,
|
|
74
|
-
nodeId: ctx.nodeId,
|
|
75
|
-
fieldPath: field.fieldPath,
|
|
76
|
-
embedding: value,
|
|
77
|
-
dimensions: field.dimensions,
|
|
78
|
-
metric: field.metric,
|
|
79
|
-
indexType: field.indexType
|
|
80
|
-
});
|
|
81
|
-
} else if (value === void 0) {
|
|
82
|
-
await backend.deleteEmbedding({
|
|
83
|
-
graphId: ctx.graphId,
|
|
84
|
-
nodeKind: ctx.nodeKind,
|
|
85
|
-
nodeId: ctx.nodeId,
|
|
86
|
-
fieldPath: field.fieldPath,
|
|
87
|
-
dimensions: field.dimensions,
|
|
88
|
-
metric: field.metric,
|
|
89
|
-
indexType: field.indexType
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
async function syncEmbeddingsBatchForKind(args, schema, items) {
|
|
95
|
-
const { graphId, nodeKind, backend } = args;
|
|
96
|
-
if (!backend.upsertEmbedding || !backend.deleteEmbedding) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
const embeddingFields = getEmbeddingFields(schema);
|
|
100
|
-
if (embeddingFields.length === 0) {
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
for (const field of embeddingFields) {
|
|
104
|
-
const rows = [];
|
|
105
|
-
const deletionIds = [];
|
|
106
|
-
for (const item of items) {
|
|
107
|
-
const value = chunkN66HCGCY_cjs.readOwnProperty(item.props, field.fieldPath);
|
|
108
|
-
if (isValidEmbeddingValue(value)) {
|
|
109
|
-
rows.push({ nodeId: item.nodeId, embedding: value });
|
|
110
|
-
} else if (value === void 0) {
|
|
111
|
-
deletionIds.push(item.nodeId);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
if (rows.length > 0) {
|
|
115
|
-
if (backend.upsertEmbeddingBatch === void 0) {
|
|
116
|
-
for (const row of rows) {
|
|
117
|
-
await backend.upsertEmbedding({
|
|
118
|
-
graphId,
|
|
119
|
-
nodeKind,
|
|
120
|
-
nodeId: row.nodeId,
|
|
121
|
-
fieldPath: field.fieldPath,
|
|
122
|
-
embedding: row.embedding,
|
|
123
|
-
dimensions: field.dimensions,
|
|
124
|
-
metric: field.metric,
|
|
125
|
-
indexType: field.indexType
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
} else {
|
|
129
|
-
await backend.upsertEmbeddingBatch({
|
|
130
|
-
graphId,
|
|
131
|
-
nodeKind,
|
|
132
|
-
fieldPath: field.fieldPath,
|
|
133
|
-
dimensions: field.dimensions,
|
|
134
|
-
metric: field.metric,
|
|
135
|
-
indexType: field.indexType,
|
|
136
|
-
rows
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
if (deletionIds.length > 0 && backend.deleteEmbeddingBatch !== void 0) {
|
|
141
|
-
await backend.deleteEmbeddingBatch({
|
|
142
|
-
graphId,
|
|
143
|
-
nodeKind,
|
|
144
|
-
nodeIds: deletionIds,
|
|
145
|
-
fieldPath: field.fieldPath,
|
|
146
|
-
dimensions: field.dimensions,
|
|
147
|
-
metric: field.metric,
|
|
148
|
-
indexType: field.indexType
|
|
149
|
-
});
|
|
150
|
-
} else {
|
|
151
|
-
for (const nodeId of deletionIds) {
|
|
152
|
-
await backend.deleteEmbedding({
|
|
153
|
-
graphId,
|
|
154
|
-
nodeKind,
|
|
155
|
-
nodeId,
|
|
156
|
-
fieldPath: field.fieldPath,
|
|
157
|
-
dimensions: field.dimensions,
|
|
158
|
-
metric: field.metric,
|
|
159
|
-
indexType: field.indexType
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
async function deleteNodeEmbeddings(ctx, schema) {
|
|
166
|
-
const { backend } = ctx;
|
|
167
|
-
if (!backend.deleteEmbedding) {
|
|
168
|
-
return;
|
|
169
|
-
}
|
|
170
|
-
const embeddingFields = getEmbeddingFields(schema);
|
|
171
|
-
if (embeddingFields.length === 0) {
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
for (const field of embeddingFields) {
|
|
175
|
-
await backend.deleteEmbedding({
|
|
176
|
-
graphId: ctx.graphId,
|
|
177
|
-
nodeKind: ctx.nodeKind,
|
|
178
|
-
nodeId: ctx.nodeId,
|
|
179
|
-
fieldPath: field.fieldPath,
|
|
180
|
-
dimensions: field.dimensions,
|
|
181
|
-
metric: field.metric,
|
|
182
|
-
indexType: field.indexType
|
|
183
|
-
});
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
function isValidEmbeddingValue(value) {
|
|
187
|
-
if (!Array.isArray(value)) {
|
|
188
|
-
return false;
|
|
189
|
-
}
|
|
190
|
-
return value.every((n) => typeof n === "number" && Number.isFinite(n));
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
// src/store/fulltext-sync.ts
|
|
194
|
-
var FIELD_SEPARATOR = "\n";
|
|
195
|
-
function resolveCombinedLanguage(fields) {
|
|
196
|
-
return fields[0]?.metadata.language ?? chunkHAHNRASW_cjs.DEFAULT_SEARCHABLE_LANGUAGE;
|
|
197
|
-
}
|
|
198
|
-
function computeFulltextContent(schema, props) {
|
|
199
|
-
const searchableFields = chunkHAHNRASW_cjs.getSearchableFields(schema);
|
|
200
|
-
if (searchableFields.length === 0) return void 0;
|
|
201
|
-
const parts = [];
|
|
202
|
-
for (const field of searchableFields) {
|
|
203
|
-
const value = chunkN66HCGCY_cjs.readOwnProperty(props, field.fieldPath);
|
|
204
|
-
if (typeof value === "string" && value.length > 0) {
|
|
205
|
-
parts.push(value);
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
if (parts.length === 0) return void 0;
|
|
209
|
-
return {
|
|
210
|
-
content: parts.join(FIELD_SEPARATOR),
|
|
211
|
-
language: resolveCombinedLanguage(searchableFields)
|
|
212
|
-
};
|
|
213
|
-
}
|
|
214
|
-
async function syncFulltext(ctx, schema, props) {
|
|
215
|
-
const { backend } = ctx;
|
|
216
|
-
if (!backend.upsertFulltext || !backend.deleteFulltext) {
|
|
217
|
-
return;
|
|
218
|
-
}
|
|
219
|
-
const computed = computeFulltextContent(schema, props);
|
|
220
|
-
if (computed !== void 0) {
|
|
221
|
-
await backend.upsertFulltext({
|
|
222
|
-
graphId: ctx.graphId,
|
|
223
|
-
nodeKind: ctx.nodeKind,
|
|
224
|
-
nodeId: ctx.nodeId,
|
|
225
|
-
content: computed.content,
|
|
226
|
-
language: computed.language
|
|
227
|
-
});
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
if (chunkHAHNRASW_cjs.getSearchableFields(schema).length === 0) return;
|
|
231
|
-
await backend.deleteFulltext({
|
|
232
|
-
graphId: ctx.graphId,
|
|
233
|
-
nodeKind: ctx.nodeKind,
|
|
234
|
-
nodeId: ctx.nodeId
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
async function syncFulltextBatchForKind(args, schema, items) {
|
|
238
|
-
const { graphId, nodeKind, backend } = args;
|
|
239
|
-
if (!backend.upsertFulltext || !backend.deleteFulltext) {
|
|
240
|
-
return;
|
|
241
|
-
}
|
|
242
|
-
const rows = [];
|
|
243
|
-
const emptyContentIds = [];
|
|
244
|
-
const hasSearchableFields = chunkHAHNRASW_cjs.getSearchableFields(schema).length > 0;
|
|
245
|
-
for (const item of items) {
|
|
246
|
-
const computed = computeFulltextContent(schema, item.props);
|
|
247
|
-
if (computed !== void 0) {
|
|
248
|
-
rows.push({
|
|
249
|
-
nodeId: item.nodeId,
|
|
250
|
-
content: computed.content,
|
|
251
|
-
language: computed.language
|
|
252
|
-
});
|
|
253
|
-
} else if (hasSearchableFields) {
|
|
254
|
-
emptyContentIds.push(item.nodeId);
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
if (rows.length > 0) {
|
|
258
|
-
if (backend.upsertFulltextBatch === void 0) {
|
|
259
|
-
for (const row of rows) {
|
|
260
|
-
await backend.upsertFulltext({
|
|
261
|
-
graphId,
|
|
262
|
-
nodeKind,
|
|
263
|
-
nodeId: row.nodeId,
|
|
264
|
-
content: row.content,
|
|
265
|
-
language: row.language
|
|
266
|
-
});
|
|
267
|
-
}
|
|
268
|
-
} else {
|
|
269
|
-
await backend.upsertFulltextBatch({ graphId, nodeKind, rows });
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
if (emptyContentIds.length > 0) {
|
|
273
|
-
if (backend.deleteFulltextBatch === void 0) {
|
|
274
|
-
for (const nodeId of emptyContentIds) {
|
|
275
|
-
await backend.deleteFulltext({ graphId, nodeKind, nodeId });
|
|
276
|
-
}
|
|
277
|
-
} else {
|
|
278
|
-
await backend.deleteFulltextBatch({
|
|
279
|
-
graphId,
|
|
280
|
-
nodeKind,
|
|
281
|
-
nodeIds: emptyContentIds
|
|
282
|
-
});
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
async function deleteNodeFulltext(ctx, schema) {
|
|
287
|
-
const { backend } = ctx;
|
|
288
|
-
if (!backend.deleteFulltext) {
|
|
289
|
-
return;
|
|
290
|
-
}
|
|
291
|
-
if (chunkHAHNRASW_cjs.getSearchableFields(schema).length === 0) {
|
|
292
|
-
return;
|
|
293
|
-
}
|
|
294
|
-
await backend.deleteFulltext({
|
|
295
|
-
graphId: ctx.graphId,
|
|
296
|
-
nodeKind: ctx.nodeKind,
|
|
297
|
-
nodeId: ctx.nodeId
|
|
298
|
-
});
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
// src/store/uniqueness.ts
|
|
302
|
-
function createUniquenessContext(graphId, registry, backend) {
|
|
303
|
-
return { graphId, registry, backend };
|
|
304
|
-
}
|
|
305
|
-
function nodeIdentityKey(reference) {
|
|
306
|
-
return chunkEZEEWCFJ_cjs.encodeTupleKey([reference.kind, reference.id]);
|
|
307
|
-
}
|
|
308
|
-
function proposedUniqueClaims(ctx, upserts) {
|
|
309
|
-
const claims = [];
|
|
310
|
-
const claimsByCheckedKind = /* @__PURE__ */ new Map();
|
|
311
|
-
const claimsByOwnKind = /* @__PURE__ */ new Map();
|
|
312
|
-
const orderedConstraints = [];
|
|
313
|
-
const seenConstraints = /* @__PURE__ */ new Set();
|
|
314
|
-
for (const upsert of upserts) {
|
|
315
|
-
for (const constraint of upsert.constraints) {
|
|
316
|
-
if (seenConstraints.has(constraint)) continue;
|
|
317
|
-
seenConstraints.add(constraint);
|
|
318
|
-
orderedConstraints.push(constraint);
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
for (const constraint of orderedConstraints) {
|
|
322
|
-
for (const upsert of upserts) {
|
|
323
|
-
if (!upsert.constraints.includes(constraint)) continue;
|
|
324
|
-
if (!chunkFQPEMEWX_cjs.checkWherePredicate(constraint, upsert.props)) continue;
|
|
325
|
-
const claim = {
|
|
326
|
-
kind: upsert.kind,
|
|
327
|
-
id: upsert.id,
|
|
328
|
-
constraint,
|
|
329
|
-
key: chunkFQPEMEWX_cjs.computeUniqueKey(
|
|
330
|
-
upsert.props,
|
|
331
|
-
constraint.fields,
|
|
332
|
-
constraint.collation
|
|
333
|
-
),
|
|
334
|
-
kindsToCheck: chunkFQPEMEWX_cjs.getKindsForUniquenessCheck(
|
|
335
|
-
upsert.kind,
|
|
336
|
-
constraint.scope,
|
|
337
|
-
ctx.registry
|
|
338
|
-
)
|
|
339
|
-
};
|
|
340
|
-
const identity = nodeIdentityKey(claim);
|
|
341
|
-
const candidateGroups = [
|
|
342
|
-
claimsByCheckedKind.get(
|
|
343
|
-
chunkEZEEWCFJ_cjs.encodeTupleKey([constraint.name, claim.key, claim.kind])
|
|
344
|
-
) ?? [],
|
|
345
|
-
...claim.kindsToCheck.map(
|
|
346
|
-
(kind) => claimsByOwnKind.get(
|
|
347
|
-
chunkEZEEWCFJ_cjs.encodeTupleKey([constraint.name, claim.key, kind])
|
|
348
|
-
) ?? []
|
|
349
|
-
)
|
|
350
|
-
];
|
|
351
|
-
const collision = candidateGroups.flat().find((existing) => nodeIdentityKey(existing) !== identity);
|
|
352
|
-
if (collision !== void 0) {
|
|
353
|
-
throw new chunkMRDBBHIZ_cjs.UniquenessError({
|
|
354
|
-
constraintName: constraint.name,
|
|
355
|
-
kind: collision.kind,
|
|
356
|
-
existingId: collision.id,
|
|
357
|
-
newId: upsert.id,
|
|
358
|
-
fields: constraint.fields
|
|
359
|
-
});
|
|
360
|
-
}
|
|
361
|
-
claims.push(claim);
|
|
362
|
-
const ownKindKey = chunkEZEEWCFJ_cjs.encodeTupleKey([
|
|
363
|
-
constraint.name,
|
|
364
|
-
claim.key,
|
|
365
|
-
claim.kind
|
|
366
|
-
]);
|
|
367
|
-
const sameKindClaims = claimsByOwnKind.get(ownKindKey);
|
|
368
|
-
if (sameKindClaims === void 0) {
|
|
369
|
-
claimsByOwnKind.set(ownKindKey, [claim]);
|
|
370
|
-
} else {
|
|
371
|
-
sameKindClaims.push(claim);
|
|
372
|
-
}
|
|
373
|
-
for (const kind of claim.kindsToCheck) {
|
|
374
|
-
const checkedKindKey = chunkEZEEWCFJ_cjs.encodeTupleKey([
|
|
375
|
-
constraint.name,
|
|
376
|
-
claim.key,
|
|
377
|
-
kind
|
|
378
|
-
]);
|
|
379
|
-
const sameDomainClaims = claimsByCheckedKind.get(checkedKindKey);
|
|
380
|
-
if (sameDomainClaims === void 0) {
|
|
381
|
-
claimsByCheckedKind.set(checkedKindKey, [claim]);
|
|
382
|
-
} else {
|
|
383
|
-
sameDomainClaims.push(claim);
|
|
384
|
-
}
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
|
-
}
|
|
388
|
-
return claims;
|
|
389
|
-
}
|
|
390
|
-
function groupUniqueClaimsForBatchProbe(claims) {
|
|
391
|
-
const groups = /* @__PURE__ */ new Map();
|
|
392
|
-
for (const claim of claims) {
|
|
393
|
-
for (const nodeKind of claim.kindsToCheck) {
|
|
394
|
-
const groupKey = chunkEZEEWCFJ_cjs.encodeTupleKey([nodeKind, claim.constraint.name]);
|
|
395
|
-
const existing = groups.get(groupKey);
|
|
396
|
-
if (existing === void 0) {
|
|
397
|
-
groups.set(groupKey, {
|
|
398
|
-
nodeKind,
|
|
399
|
-
constraintName: claim.constraint.name,
|
|
400
|
-
claimsByKey: /* @__PURE__ */ new Map([[claim.key, claim]])
|
|
401
|
-
});
|
|
402
|
-
continue;
|
|
403
|
-
}
|
|
404
|
-
existing.claimsByKey.set(claim.key, claim);
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
return [...groups.values()];
|
|
408
|
-
}
|
|
409
|
-
async function validateResolvedNodeUniqueness(ctx, upserts, releases = []) {
|
|
410
|
-
const checkUniqueBatch = ctx.backend.checkUniqueBatch;
|
|
411
|
-
if (checkUniqueBatch === void 0) {
|
|
412
|
-
throw new chunkMRDBBHIZ_cjs.ConfigurationError(
|
|
413
|
-
"Resolved node writes require batched uniqueness probes",
|
|
414
|
-
{ code: "RESOLVED_NODE_UNIQUENESS_UNSUPPORTED" }
|
|
415
|
-
);
|
|
416
|
-
}
|
|
417
|
-
const claims = proposedUniqueClaims(ctx, upserts);
|
|
418
|
-
if (claims.length === 0) return;
|
|
419
|
-
const affectedOwners = new Set(
|
|
420
|
-
[...upserts, ...releases].map((reference) => nodeIdentityKey(reference))
|
|
421
|
-
);
|
|
422
|
-
for (const group of groupUniqueClaimsForBatchProbe(claims)) {
|
|
423
|
-
const existingRows = await checkUniqueBatch({
|
|
424
|
-
graphId: ctx.graphId,
|
|
425
|
-
nodeKind: group.nodeKind,
|
|
426
|
-
constraintName: group.constraintName,
|
|
427
|
-
keys: [...group.claimsByKey.keys()]
|
|
428
|
-
});
|
|
429
|
-
for (const existing of existingRows) {
|
|
430
|
-
if (affectedOwners.has(
|
|
431
|
-
nodeIdentityKey({
|
|
432
|
-
kind: existing.concrete_kind,
|
|
433
|
-
id: existing.node_id
|
|
434
|
-
})
|
|
435
|
-
)) {
|
|
436
|
-
continue;
|
|
437
|
-
}
|
|
438
|
-
const claim = group.claimsByKey.get(existing.key);
|
|
439
|
-
if (claim === void 0) continue;
|
|
440
|
-
throw new chunkMRDBBHIZ_cjs.UniquenessError({
|
|
441
|
-
constraintName: group.constraintName,
|
|
442
|
-
kind: group.nodeKind,
|
|
443
|
-
existingId: existing.node_id,
|
|
444
|
-
newId: claim.id,
|
|
445
|
-
fields: claim.constraint.fields
|
|
446
|
-
});
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
|
-
async function prepareResolvedNodeUniqueness(ctx, upserts, releases) {
|
|
451
|
-
const hardDeleteUniquesByNodeIds = ctx.backend.hardDeleteUniquesByNodeIds;
|
|
452
|
-
if (ctx.backend.checkUniqueBatch === void 0 || ctx.backend.insertUniqueBatch === void 0 || hardDeleteUniquesByNodeIds === void 0) {
|
|
453
|
-
throw new chunkMRDBBHIZ_cjs.ConfigurationError(
|
|
454
|
-
"Resolved node writes require batched uniqueness operations",
|
|
455
|
-
{ code: "RESOLVED_NODE_UNIQUENESS_UNSUPPORTED" }
|
|
456
|
-
);
|
|
457
|
-
}
|
|
458
|
-
await validateResolvedNodeUniqueness(ctx, upserts, releases);
|
|
459
|
-
const idsByKind = /* @__PURE__ */ new Map();
|
|
460
|
-
for (const reference of [...upserts, ...releases]) {
|
|
461
|
-
const ids = idsByKind.get(reference.kind) ?? /* @__PURE__ */ new Set();
|
|
462
|
-
ids.add(reference.id);
|
|
463
|
-
idsByKind.set(reference.kind, ids);
|
|
464
|
-
}
|
|
465
|
-
for (const [concreteKind, nodeIds] of idsByKind) {
|
|
466
|
-
await hardDeleteUniquesByNodeIds({
|
|
467
|
-
graphId: ctx.graphId,
|
|
468
|
-
concreteKind,
|
|
469
|
-
nodeIds: [...nodeIds]
|
|
470
|
-
});
|
|
471
|
-
}
|
|
472
|
-
}
|
|
473
|
-
async function applyResolvedNodeUniqueness(ctx, upserts, releases, apply) {
|
|
474
|
-
await prepareResolvedNodeUniqueness(ctx, upserts, releases);
|
|
475
|
-
const result = await apply();
|
|
476
|
-
await insertUniquenessEntriesBatch(ctx, upserts);
|
|
477
|
-
return result;
|
|
478
|
-
}
|
|
479
|
-
async function probeUniqueKey(ctx, kind, id, constraint, key) {
|
|
480
|
-
const kindsToCheck = chunkFQPEMEWX_cjs.getKindsForUniquenessCheck(
|
|
481
|
-
kind,
|
|
482
|
-
constraint.scope,
|
|
483
|
-
ctx.registry
|
|
484
|
-
);
|
|
485
|
-
let heldByThisNode = false;
|
|
486
|
-
for (const kindToCheck of kindsToCheck) {
|
|
487
|
-
const existing = await ctx.backend.checkUnique({
|
|
488
|
-
graphId: ctx.graphId,
|
|
489
|
-
nodeKind: kindToCheck,
|
|
490
|
-
constraintName: constraint.name,
|
|
491
|
-
key
|
|
492
|
-
});
|
|
493
|
-
if (existing === void 0) continue;
|
|
494
|
-
if (existing.node_id !== id) {
|
|
495
|
-
throw new chunkMRDBBHIZ_cjs.UniquenessError({
|
|
496
|
-
constraintName: constraint.name,
|
|
497
|
-
kind: kindToCheck,
|
|
498
|
-
existingId: existing.node_id,
|
|
499
|
-
newId: id,
|
|
500
|
-
fields: constraint.fields
|
|
501
|
-
});
|
|
502
|
-
}
|
|
503
|
-
if (kindToCheck === kind) heldByThisNode = true;
|
|
504
|
-
}
|
|
505
|
-
return heldByThisNode;
|
|
506
|
-
}
|
|
507
|
-
async function checkUniquenessConstraints(ctx, kind, id, props, constraints) {
|
|
508
|
-
for (const constraint of constraints) {
|
|
509
|
-
if (!chunkFQPEMEWX_cjs.checkWherePredicate(constraint, props)) {
|
|
510
|
-
continue;
|
|
511
|
-
}
|
|
512
|
-
await probeUniqueKey(
|
|
513
|
-
ctx,
|
|
514
|
-
kind,
|
|
515
|
-
id,
|
|
516
|
-
constraint,
|
|
517
|
-
chunkFQPEMEWX_cjs.computeUniqueKey(props, constraint.fields, constraint.collation)
|
|
518
|
-
);
|
|
519
|
-
}
|
|
520
|
-
}
|
|
521
|
-
async function insertUniquenessEntries(ctx, kind, id, props, constraints) {
|
|
522
|
-
for (const constraint of constraints) {
|
|
523
|
-
if (!chunkFQPEMEWX_cjs.checkWherePredicate(constraint, props)) {
|
|
524
|
-
continue;
|
|
525
|
-
}
|
|
526
|
-
const key = chunkFQPEMEWX_cjs.computeUniqueKey(
|
|
527
|
-
props,
|
|
528
|
-
constraint.fields,
|
|
529
|
-
constraint.collation
|
|
530
|
-
);
|
|
531
|
-
await ctx.backend.insertUnique({
|
|
532
|
-
graphId: ctx.graphId,
|
|
533
|
-
nodeKind: kind,
|
|
534
|
-
constraintName: constraint.name,
|
|
535
|
-
key,
|
|
536
|
-
nodeId: id,
|
|
537
|
-
concreteKind: kind
|
|
538
|
-
});
|
|
539
|
-
}
|
|
540
|
-
}
|
|
541
|
-
async function insertUniquenessEntriesBatch(ctx, items) {
|
|
542
|
-
const entries = [];
|
|
543
|
-
for (const item of items) {
|
|
544
|
-
for (const constraint of item.constraints) {
|
|
545
|
-
if (!chunkFQPEMEWX_cjs.checkWherePredicate(constraint, item.props)) {
|
|
546
|
-
continue;
|
|
547
|
-
}
|
|
548
|
-
entries.push({
|
|
549
|
-
graphId: ctx.graphId,
|
|
550
|
-
nodeKind: item.kind,
|
|
551
|
-
constraintName: constraint.name,
|
|
552
|
-
key: chunkFQPEMEWX_cjs.computeUniqueKey(
|
|
553
|
-
item.props,
|
|
554
|
-
constraint.fields,
|
|
555
|
-
constraint.collation
|
|
556
|
-
),
|
|
557
|
-
nodeId: item.id,
|
|
558
|
-
concreteKind: item.kind
|
|
559
|
-
});
|
|
560
|
-
}
|
|
561
|
-
}
|
|
562
|
-
if (entries.length === 0) return;
|
|
563
|
-
if (ctx.backend.insertUniqueBatch !== void 0) {
|
|
564
|
-
await ctx.backend.insertUniqueBatch(entries);
|
|
565
|
-
return;
|
|
566
|
-
}
|
|
567
|
-
for (const entry of entries) {
|
|
568
|
-
await ctx.backend.insertUnique(entry);
|
|
569
|
-
}
|
|
570
|
-
}
|
|
571
|
-
async function deleteUniquenessEntries(ctx, kind, props, constraints) {
|
|
572
|
-
for (const constraint of constraints) {
|
|
573
|
-
if (!chunkFQPEMEWX_cjs.checkWherePredicate(constraint, props)) {
|
|
574
|
-
continue;
|
|
575
|
-
}
|
|
576
|
-
const key = chunkFQPEMEWX_cjs.computeUniqueKey(
|
|
577
|
-
props,
|
|
578
|
-
constraint.fields,
|
|
579
|
-
constraint.collation
|
|
580
|
-
);
|
|
581
|
-
await ctx.backend.deleteUnique({
|
|
582
|
-
graphId: ctx.graphId,
|
|
583
|
-
nodeKind: kind,
|
|
584
|
-
constraintName: constraint.name,
|
|
585
|
-
key
|
|
586
|
-
});
|
|
587
|
-
}
|
|
588
|
-
}
|
|
589
|
-
async function planUniquenessUpdate(ctx, kind, id, oldProps, newProps, constraints) {
|
|
590
|
-
const pending = [];
|
|
591
|
-
for (const constraint of constraints) {
|
|
592
|
-
const oldApplies = chunkFQPEMEWX_cjs.checkWherePredicate(constraint, oldProps);
|
|
593
|
-
const newApplies = chunkFQPEMEWX_cjs.checkWherePredicate(constraint, newProps);
|
|
594
|
-
const oldKey = oldApplies ? chunkFQPEMEWX_cjs.computeUniqueKey(oldProps, constraint.fields, constraint.collation) : void 0;
|
|
595
|
-
const newKey = newApplies ? chunkFQPEMEWX_cjs.computeUniqueKey(newProps, constraint.fields, constraint.collation) : void 0;
|
|
596
|
-
if (!oldApplies && !newApplies) {
|
|
597
|
-
continue;
|
|
598
|
-
}
|
|
599
|
-
if (oldApplies && newApplies && oldKey === newKey) {
|
|
600
|
-
continue;
|
|
601
|
-
}
|
|
602
|
-
const alreadyHeld = newKey === void 0 ? false : await probeUniqueKey(ctx, kind, id, constraint, newKey);
|
|
603
|
-
pending.push({
|
|
604
|
-
constraintName: constraint.name,
|
|
605
|
-
release: oldKey,
|
|
606
|
-
claim: alreadyHeld ? void 0 : newKey
|
|
607
|
-
});
|
|
608
|
-
}
|
|
609
|
-
return pending;
|
|
610
|
-
}
|
|
611
|
-
async function planUniquenessReinsert(ctx, kind, id, props, constraints) {
|
|
612
|
-
const pending = [];
|
|
613
|
-
for (const constraint of constraints) {
|
|
614
|
-
if (!chunkFQPEMEWX_cjs.checkWherePredicate(constraint, props)) continue;
|
|
615
|
-
const key = chunkFQPEMEWX_cjs.computeUniqueKey(
|
|
616
|
-
props,
|
|
617
|
-
constraint.fields,
|
|
618
|
-
constraint.collation
|
|
619
|
-
);
|
|
620
|
-
const alreadyHeld = await probeUniqueKey(ctx, kind, id, constraint, key);
|
|
621
|
-
pending.push({
|
|
622
|
-
constraintName: constraint.name,
|
|
623
|
-
release: void 0,
|
|
624
|
-
claim: alreadyHeld ? void 0 : key
|
|
625
|
-
});
|
|
626
|
-
}
|
|
627
|
-
return pending;
|
|
628
|
-
}
|
|
629
|
-
async function releaseUniqueKeys(ctx, kind, keys) {
|
|
630
|
-
for (const entry of keys) {
|
|
631
|
-
await ctx.backend.deleteUnique({
|
|
632
|
-
graphId: ctx.graphId,
|
|
633
|
-
nodeKind: kind,
|
|
634
|
-
constraintName: entry.constraintName,
|
|
635
|
-
key: entry.key
|
|
636
|
-
});
|
|
637
|
-
}
|
|
638
|
-
}
|
|
639
|
-
async function claimUniqueKeysThen(ctx, kind, id, plan, gatedWrite) {
|
|
640
|
-
const claimed = [];
|
|
641
|
-
try {
|
|
642
|
-
for (const mutation of plan) {
|
|
643
|
-
if (mutation.claim === void 0) continue;
|
|
644
|
-
await ctx.backend.insertUnique({
|
|
645
|
-
graphId: ctx.graphId,
|
|
646
|
-
nodeKind: kind,
|
|
647
|
-
constraintName: mutation.constraintName,
|
|
648
|
-
key: mutation.claim,
|
|
649
|
-
nodeId: id,
|
|
650
|
-
concreteKind: kind
|
|
651
|
-
});
|
|
652
|
-
claimed.push({
|
|
653
|
-
constraintName: mutation.constraintName,
|
|
654
|
-
key: mutation.claim
|
|
655
|
-
});
|
|
656
|
-
}
|
|
657
|
-
return await gatedWrite();
|
|
658
|
-
} catch (error) {
|
|
659
|
-
await releaseUniqueKeys(ctx, kind, claimed);
|
|
660
|
-
throw error;
|
|
661
|
-
}
|
|
662
|
-
}
|
|
663
|
-
async function withUniquenessTransition(ctx, kind, id, plan, gatedWrite) {
|
|
664
|
-
const result = await claimUniqueKeysThen(ctx, kind, id, plan, gatedWrite);
|
|
665
|
-
await releaseUniqueKeys(
|
|
666
|
-
ctx,
|
|
667
|
-
kind,
|
|
668
|
-
plan.flatMap(
|
|
669
|
-
(mutation) => mutation.release === void 0 ? [] : [{ constraintName: mutation.constraintName, key: mutation.release }]
|
|
670
|
-
)
|
|
671
|
-
);
|
|
672
|
-
return result;
|
|
673
|
-
}
|
|
674
|
-
|
|
675
|
-
// src/store/operations/node-write-pipeline.ts
|
|
676
|
-
function createNodeWriteContext(graphId, registry, lock) {
|
|
677
|
-
return { graphId, registry, lock };
|
|
678
|
-
}
|
|
679
|
-
function uniquenessContext(ctx, backend) {
|
|
680
|
-
return createUniquenessContext(ctx.graphId, ctx.registry, backend);
|
|
681
|
-
}
|
|
682
|
-
function nodeSyncContext(ctx, kind, id, backend) {
|
|
683
|
-
return { graphId: ctx.graphId, nodeKind: kind, nodeId: id, backend };
|
|
684
|
-
}
|
|
685
|
-
async function enforceNodeDeleteBehavior(ctx, args, backend, policy) {
|
|
686
|
-
if (policy?.enforceDeleteBehavior === false) return;
|
|
687
|
-
const behavior = args.onDelete ?? "restrict";
|
|
688
|
-
const connectedEdges = await backend.findEdgesConnectedTo({
|
|
689
|
-
graphId: ctx.graphId,
|
|
690
|
-
nodeKind: args.kind,
|
|
691
|
-
nodeId: args.id
|
|
692
|
-
});
|
|
693
|
-
if (connectedEdges.length === 0) return;
|
|
694
|
-
switch (behavior) {
|
|
695
|
-
case "restrict": {
|
|
696
|
-
throw new chunkMRDBBHIZ_cjs.RestrictedDeleteError({
|
|
697
|
-
nodeKind: args.kind,
|
|
698
|
-
nodeId: args.id,
|
|
699
|
-
edgeCount: connectedEdges.length,
|
|
700
|
-
edgeKinds: [...new Set(connectedEdges.map((edge) => edge.kind))]
|
|
701
|
-
});
|
|
702
|
-
}
|
|
703
|
-
case "cascade":
|
|
704
|
-
case "disconnect": {
|
|
705
|
-
const batchDelete = args.mode === "hard" ? backend.hardDeleteEdgesBatch : backend.deleteEdgesBatch;
|
|
706
|
-
if (batchDelete !== void 0) {
|
|
707
|
-
await batchDelete({
|
|
708
|
-
graphId: ctx.graphId,
|
|
709
|
-
ids: connectedEdges.map((edge) => edge.id)
|
|
710
|
-
});
|
|
711
|
-
break;
|
|
712
|
-
}
|
|
713
|
-
for (const edge of connectedEdges) {
|
|
714
|
-
await (args.mode === "hard" ? backend.hardDeleteEdge({ graphId: ctx.graphId, id: edge.id }) : backend.deleteEdge({ graphId: ctx.graphId, id: edge.id }));
|
|
715
|
-
}
|
|
716
|
-
break;
|
|
717
|
-
}
|
|
718
|
-
}
|
|
719
|
-
}
|
|
720
|
-
async function applyNodeInsertSideEffects(ctx, args, backend) {
|
|
721
|
-
await insertUniquenessEntries(
|
|
722
|
-
uniquenessContext(ctx, backend),
|
|
723
|
-
args.kind,
|
|
724
|
-
args.id,
|
|
725
|
-
args.props,
|
|
726
|
-
args.uniqueConstraints
|
|
727
|
-
);
|
|
728
|
-
await Promise.all([
|
|
729
|
-
syncEmbeddings(
|
|
730
|
-
nodeSyncContext(ctx, args.kind, args.id, backend),
|
|
731
|
-
args.schema,
|
|
732
|
-
args.props
|
|
733
|
-
),
|
|
734
|
-
syncFulltext(
|
|
735
|
-
nodeSyncContext(ctx, args.kind, args.id, backend),
|
|
736
|
-
args.schema,
|
|
737
|
-
args.props
|
|
738
|
-
)
|
|
739
|
-
]);
|
|
740
|
-
}
|
|
741
|
-
async function applyNodeInsertSideEffectsBatch(ctx, items, backend) {
|
|
742
|
-
if (items.length === 0) return;
|
|
743
|
-
await insertUniquenessEntriesBatch(
|
|
744
|
-
uniquenessContext(ctx, backend),
|
|
745
|
-
items.map((item) => ({
|
|
746
|
-
kind: item.kind,
|
|
747
|
-
id: item.id,
|
|
748
|
-
props: item.props,
|
|
749
|
-
constraints: item.uniqueConstraints
|
|
750
|
-
}))
|
|
751
|
-
);
|
|
752
|
-
const byKind = /* @__PURE__ */ new Map();
|
|
753
|
-
for (const item of items) {
|
|
754
|
-
const group = byKind.get(item.kind) ?? { schema: item.schema, rows: [] };
|
|
755
|
-
group.rows.push({ nodeId: item.id, props: item.props });
|
|
756
|
-
byKind.set(item.kind, group);
|
|
757
|
-
}
|
|
758
|
-
await Promise.all(
|
|
759
|
-
[...byKind.entries()].flatMap(([kind, group]) => {
|
|
760
|
-
const syncArguments = { graphId: ctx.graphId, nodeKind: kind, backend };
|
|
761
|
-
return [
|
|
762
|
-
syncEmbeddingsBatchForKind(syncArguments, group.schema, group.rows),
|
|
763
|
-
syncFulltextBatchForKind(syncArguments, group.schema, group.rows)
|
|
764
|
-
];
|
|
765
|
-
})
|
|
766
|
-
);
|
|
767
|
-
}
|
|
768
|
-
function parseRowProps(row) {
|
|
769
|
-
return chunk5PRKMB24_cjs.rowPropsToObject(row.props);
|
|
770
|
-
}
|
|
771
|
-
async function planNodeUpdateUniqueness(ctx, args, backend) {
|
|
772
|
-
const { kind, id } = args.existing;
|
|
773
|
-
if (args.existing.deleted_at !== void 0) {
|
|
774
|
-
return planUniquenessReinsert(
|
|
775
|
-
uniquenessContext(ctx, backend),
|
|
776
|
-
kind,
|
|
777
|
-
id,
|
|
778
|
-
args.validatedProps,
|
|
779
|
-
args.uniqueConstraints
|
|
780
|
-
);
|
|
781
|
-
}
|
|
782
|
-
return planUniquenessUpdate(
|
|
783
|
-
uniquenessContext(ctx, backend),
|
|
784
|
-
kind,
|
|
785
|
-
id,
|
|
786
|
-
parseRowProps(args.existing),
|
|
787
|
-
args.validatedProps,
|
|
788
|
-
args.uniqueConstraints
|
|
789
|
-
);
|
|
790
|
-
}
|
|
791
|
-
async function applyNodeUpdate(ctx, args, backend) {
|
|
792
|
-
const { kind, id } = args.existing;
|
|
793
|
-
const plan = await planNodeUpdateUniqueness(
|
|
794
|
-
ctx,
|
|
795
|
-
{
|
|
796
|
-
existing: args.existing,
|
|
797
|
-
validatedProps: args.validatedProps,
|
|
798
|
-
uniqueConstraints: args.uniqueConstraints
|
|
799
|
-
},
|
|
800
|
-
backend
|
|
801
|
-
);
|
|
802
|
-
const updateParams = {
|
|
803
|
-
graphId: ctx.graphId,
|
|
804
|
-
kind,
|
|
805
|
-
id,
|
|
806
|
-
props: args.validatedProps,
|
|
807
|
-
incrementVersion: true
|
|
808
|
-
};
|
|
809
|
-
if (args.validFrom !== void 0) updateParams.validFrom = args.validFrom;
|
|
810
|
-
if (args.expectedValidFrom !== void 0) {
|
|
811
|
-
updateParams.expectedValidFrom = args.expectedValidFrom;
|
|
812
|
-
}
|
|
813
|
-
if (args.clearDeleted) updateParams.clearDeleted = true;
|
|
814
|
-
const row = await withUniquenessTransition(
|
|
815
|
-
uniquenessContext(ctx, backend),
|
|
816
|
-
kind,
|
|
817
|
-
id,
|
|
818
|
-
plan,
|
|
819
|
-
() => backend.updateNode({
|
|
820
|
-
...updateParams,
|
|
821
|
-
...args.clearValidTo === true ? { clearValidTo: true } : args.validTo === void 0 ? {} : { validTo: args.validTo }
|
|
822
|
-
})
|
|
823
|
-
);
|
|
824
|
-
await Promise.all([
|
|
825
|
-
syncEmbeddings(
|
|
826
|
-
nodeSyncContext(ctx, kind, id, backend),
|
|
827
|
-
args.schema,
|
|
828
|
-
args.validatedProps
|
|
829
|
-
),
|
|
830
|
-
syncFulltext(
|
|
831
|
-
nodeSyncContext(ctx, kind, id, backend),
|
|
832
|
-
args.schema,
|
|
833
|
-
args.validatedProps
|
|
834
|
-
)
|
|
835
|
-
]);
|
|
836
|
-
return row;
|
|
837
|
-
}
|
|
838
|
-
async function applyNodeSoftDelete(ctx, args, backend, policy) {
|
|
839
|
-
const { kind, id } = args.existing;
|
|
840
|
-
await enforceNodeDeleteBehavior(
|
|
841
|
-
ctx,
|
|
842
|
-
{ kind, id, mode: "soft", onDelete: args.onDelete },
|
|
843
|
-
backend,
|
|
844
|
-
policy
|
|
845
|
-
);
|
|
846
|
-
await backend.deleteNode({
|
|
847
|
-
graphId: ctx.graphId,
|
|
848
|
-
kind,
|
|
849
|
-
id
|
|
850
|
-
});
|
|
851
|
-
await deleteUniquenessEntries(
|
|
852
|
-
uniquenessContext(ctx, backend),
|
|
853
|
-
kind,
|
|
854
|
-
parseRowProps(args.existing),
|
|
855
|
-
args.uniqueConstraints
|
|
856
|
-
);
|
|
857
|
-
await deleteNodeEmbeddings(
|
|
858
|
-
nodeSyncContext(ctx, kind, id, backend),
|
|
859
|
-
args.schema
|
|
860
|
-
);
|
|
861
|
-
await deleteNodeFulltext(
|
|
862
|
-
nodeSyncContext(ctx, kind, id, backend),
|
|
863
|
-
args.schema
|
|
864
|
-
);
|
|
865
|
-
}
|
|
866
|
-
async function applyNodeHardDelete(ctx, args, backend) {
|
|
867
|
-
await enforceNodeDeleteBehavior(
|
|
868
|
-
ctx,
|
|
869
|
-
{ kind: args.kind, id: args.id, mode: "hard", onDelete: args.onDelete },
|
|
870
|
-
backend
|
|
871
|
-
);
|
|
872
|
-
await backend.hardDeleteNode({
|
|
873
|
-
graphId: ctx.graphId,
|
|
874
|
-
kind: args.kind,
|
|
875
|
-
id: args.id
|
|
876
|
-
});
|
|
877
|
-
await deleteNodeEmbeddings(
|
|
878
|
-
nodeSyncContext(ctx, args.kind, args.id, backend),
|
|
879
|
-
args.schema
|
|
880
|
-
);
|
|
881
|
-
}
|
|
882
|
-
async function applyNodeResurrect(ctx, args, backend) {
|
|
883
|
-
const { kind, id } = args.existing;
|
|
884
|
-
const props = parseRowProps(args.existing);
|
|
885
|
-
const plan = await planUniquenessReinsert(
|
|
886
|
-
uniquenessContext(ctx, backend),
|
|
887
|
-
kind,
|
|
888
|
-
id,
|
|
889
|
-
props,
|
|
890
|
-
args.uniqueConstraints
|
|
891
|
-
);
|
|
892
|
-
const row = await withUniquenessTransition(
|
|
893
|
-
uniquenessContext(ctx, backend),
|
|
894
|
-
kind,
|
|
895
|
-
id,
|
|
896
|
-
plan,
|
|
897
|
-
() => backend.updateNode({
|
|
898
|
-
graphId: ctx.graphId,
|
|
899
|
-
kind,
|
|
900
|
-
id,
|
|
901
|
-
props,
|
|
902
|
-
incrementVersion: true,
|
|
903
|
-
clearDeleted: true
|
|
904
|
-
})
|
|
905
|
-
);
|
|
906
|
-
await Promise.all([
|
|
907
|
-
syncEmbeddings(nodeSyncContext(ctx, kind, id, backend), args.schema, props),
|
|
908
|
-
syncFulltext(nodeSyncContext(ctx, kind, id, backend), args.schema, props)
|
|
909
|
-
]);
|
|
910
|
-
return row;
|
|
911
|
-
}
|
|
912
|
-
|
|
913
|
-
exports.AUTO_REFRESH_STATISTICS_ROW_THRESHOLD = AUTO_REFRESH_STATISTICS_ROW_THRESHOLD;
|
|
914
|
-
exports.STORE_RUNTIME = STORE_RUNTIME;
|
|
915
|
-
exports.TRANSACTION_RUNTIME = TRANSACTION_RUNTIME;
|
|
916
|
-
exports.applyNodeHardDelete = applyNodeHardDelete;
|
|
917
|
-
exports.applyNodeInsertSideEffects = applyNodeInsertSideEffects;
|
|
918
|
-
exports.applyNodeInsertSideEffectsBatch = applyNodeInsertSideEffectsBatch;
|
|
919
|
-
exports.applyNodeResurrect = applyNodeResurrect;
|
|
920
|
-
exports.applyNodeSoftDelete = applyNodeSoftDelete;
|
|
921
|
-
exports.applyNodeUpdate = applyNodeUpdate;
|
|
922
|
-
exports.applyResolvedNodeUniqueness = applyResolvedNodeUniqueness;
|
|
923
|
-
exports.checkUniquenessConstraints = checkUniquenessConstraints;
|
|
924
|
-
exports.computeFulltextContent = computeFulltextContent;
|
|
925
|
-
exports.createNodeWriteContext = createNodeWriteContext;
|
|
926
|
-
exports.createUniquenessContext = createUniquenessContext;
|
|
927
|
-
exports.getEmbeddingFields = getEmbeddingFields;
|
|
928
|
-
exports.storeBackend = storeBackend;
|
|
929
|
-
exports.storeRuntime = storeRuntime;
|
|
930
|
-
exports.transactionBackend = transactionBackend;
|
|
931
|
-
exports.transactionNodeOperationHookRunner = transactionNodeOperationHookRunner;
|
|
932
|
-
exports.validateResolvedNodeUniqueness = validateResolvedNodeUniqueness;
|
|
933
|
-
//# sourceMappingURL=chunk-3KOY4FH3.cjs.map
|
|
934
|
-
//# sourceMappingURL=chunk-3KOY4FH3.cjs.map
|