@mastra/server 1.80.0-alpha.3 → 1.80.0-alpha.5
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/_types/@internal_core/dist/storage/index.d.ts +0 -12
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/request-context/index.d.ts +0 -2
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/routes/index.d.ts +0 -2
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/types/index.d.ts +0 -2
- package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +65 -13
- package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-v6/dist/index.d.ts +110 -35
- package/dist/{a2a-BKtK_s5o.cjs → a2a-BaRqCOUl.cjs} +14 -22
- package/dist/{a2a-BKtK_s5o.cjs.map → a2a-BaRqCOUl.cjs.map} +1 -1
- package/dist/{a2a-CBl-c-lm.cjs → a2a-BsBYrosr.cjs} +2 -3
- package/dist/{a2a-CBl-c-lm.cjs.map → a2a-BsBYrosr.cjs.map} +1 -1
- package/dist/{a2a-BS0gTQk3.js → a2a-C3ClP3C2.js} +2 -3
- package/dist/{a2a-BS0gTQk3.js.map → a2a-C3ClP3C2.js.map} +1 -1
- package/dist/{a2a-DKGBctKT.js → a2a-CApzjeDH.js} +13 -21
- package/dist/{a2a-DKGBctKT.js.map → a2a-CApzjeDH.js.map} +1 -1
- package/dist/{agent-builder-DDYdQvlQ.cjs → agent-builder-9-GSvpgR.cjs} +3 -4
- package/dist/{agent-builder-DDYdQvlQ.cjs.map → agent-builder-9-GSvpgR.cjs.map} +1 -1
- package/dist/{agent-builder-B8kc4OBs.js → agent-builder-Cr-52Ulb.js} +3 -4
- package/dist/{agent-builder-B8kc4OBs.js.map → agent-builder-Cr-52Ulb.js.map} +1 -1
- package/dist/{agent-builder-C-U5USc5.js → agent-builder-Cv6X2dKZ.js} +12 -13
- package/dist/{agent-builder-C-U5USc5.js.map → agent-builder-Cv6X2dKZ.js.map} +1 -1
- package/dist/{agent-builder-us2nwcWc.cjs → agent-builder-DExL1jAO.cjs} +12 -13
- package/dist/{agent-builder-us2nwcWc.cjs.map → agent-builder-DExL1jAO.cjs.map} +1 -1
- package/dist/{agent-versions-CzXJWn1T.cjs → agent-versions-De5bRBaa.cjs} +5 -6
- package/dist/{agent-versions-CzXJWn1T.cjs.map → agent-versions-De5bRBaa.cjs.map} +1 -1
- package/dist/{agent-versions-W600H1ME.js → agent-versions-Pa-ABszp.js} +5 -6
- package/dist/{agent-versions-W600H1ME.js.map → agent-versions-Pa-ABszp.js.map} +1 -1
- package/dist/{agents-D1-fgNeb.js → agents-A-ahR0eQ.js} +5 -6
- package/dist/{agents-D1-fgNeb.js.map → agents-A-ahR0eQ.js.map} +1 -1
- package/dist/{agents-AyHEkc2F.cjs → agents-BBaFtyAt.cjs} +20 -21
- package/dist/agents-BBaFtyAt.cjs.map +1 -0
- package/dist/{agents-BYE5Dmfk.js → agents-CGS0tE4p.js} +19 -20
- package/dist/agents-CGS0tE4p.js.map +1 -0
- package/dist/{agents-B1EiIdRs.cjs → agents-vFpMvK3w.cjs} +5 -6
- package/dist/{agents-B1EiIdRs.cjs.map → agents-vFpMvK3w.cjs.map} +1 -1
- package/dist/{api-schema-manifest-A066IsPX.js → api-schema-manifest-BCIpcado.js} +4 -5
- package/dist/{api-schema-manifest-A066IsPX.js.map → api-schema-manifest-BCIpcado.js.map} +1 -1
- package/dist/{api-schema-manifest-BaF6TE9d.cjs → api-schema-manifest-BRItYYlN.cjs} +5 -6
- package/dist/{api-schema-manifest-BaF6TE9d.cjs.map → api-schema-manifest-BRItYYlN.cjs.map} +1 -1
- package/dist/{auth-B8fQdEg-.cjs → auth-CM5AgF9l.cjs} +2 -3
- package/dist/{auth-B8fQdEg-.cjs.map → auth-CM5AgF9l.cjs.map} +1 -1
- package/dist/{auth-CZFXpwba.js → auth-CjT_a76k.js} +2 -3
- package/dist/{auth-CZFXpwba.js.map → auth-CjT_a76k.js.map} +1 -1
- package/dist/{background-tasks-B3VAKTJh.cjs → background-tasks-BMp9Q6SB.cjs} +7 -9
- package/dist/{background-tasks-B3VAKTJh.cjs.map → background-tasks-BMp9Q6SB.cjs.map} +1 -1
- package/dist/{background-tasks-Du2zYOPl.js → background-tasks-DIpPsqVy.js} +7 -9
- package/dist/{background-tasks-Du2zYOPl.js.map → background-tasks-DIpPsqVy.js.map} +1 -1
- package/dist/{builder-registry-DLdu9bWH.js → builder-registry-CtGv0Gj6.js} +7 -9
- package/dist/{builder-registry-DLdu9bWH.js.map → builder-registry-CtGv0Gj6.js.map} +1 -1
- package/dist/{builder-registry-DaFAaMTf.cjs → builder-registry-DWusXgse.cjs} +7 -9
- package/dist/{builder-registry-DaFAaMTf.cjs.map → builder-registry-DWusXgse.cjs.map} +1 -1
- package/dist/{channels-BnVRmnzK.cjs → channels-EqvuQQbv.cjs} +6 -8
- package/dist/{channels-BnVRmnzK.cjs.map → channels-EqvuQQbv.cjs.map} +1 -1
- package/dist/{channels-Db-4pXVZ.js → channels-LNR2QIkc.js} +6 -8
- package/dist/{channels-Db-4pXVZ.js.map → channels-LNR2QIkc.js.map} +1 -1
- package/dist/{common-DhKNoXGp.cjs → common-DVZqSEhZ.cjs} +2 -3
- package/dist/{common-DhKNoXGp.cjs.map → common-DVZqSEhZ.cjs.map} +1 -1
- package/dist/{common-Y30XtCyr.js → common-xUmaFUop.js} +2 -3
- package/dist/{common-Y30XtCyr.js.map → common-xUmaFUop.js.map} +1 -1
- package/dist/{constants-e7aaPCLj.cjs → constants-Co1XjPjd.cjs} +2 -3
- package/dist/{constants-e7aaPCLj.cjs.map → constants-Co1XjPjd.cjs.map} +1 -1
- package/dist/{constants-DazK_RZj.js → constants-ohUUT3Vg.js} +2 -3
- package/dist/{constants-DazK_RZj.js.map → constants-ohUUT3Vg.js.map} +1 -1
- package/dist/{conversations-D-ew5IXn.js → conversations-B-s9MWRb.js} +8 -9
- package/dist/{conversations-D-ew5IXn.js.map → conversations-B-s9MWRb.js.map} +1 -1
- package/dist/{conversations-DasqEDCF.cjs → conversations-BPQNrv5g.cjs} +5 -6
- package/dist/{conversations-DasqEDCF.cjs.map → conversations-BPQNrv5g.cjs.map} +1 -1
- package/dist/{conversations-DzuWI3w-.cjs → conversations-DLuMXWot.cjs} +8 -9
- package/dist/{conversations-DzuWI3w-.cjs.map → conversations-DLuMXWot.cjs.map} +1 -1
- package/dist/{conversations-BzBHVFYe.js → conversations-nNko6-H4.js} +4 -5
- package/dist/{conversations-BzBHVFYe.js.map → conversations-nNko6-H4.js.map} +1 -1
- package/dist/{datasets-Cgtczd13.cjs → datasets-BP2O5CSR.cjs} +3 -4
- package/dist/{datasets-Cgtczd13.cjs.map → datasets-BP2O5CSR.cjs.map} +1 -1
- package/dist/{datasets-FRp69Mwv.js → datasets-hLmYapTk.js} +3 -4
- package/dist/{datasets-FRp69Mwv.js.map → datasets-hLmYapTk.js.map} +1 -1
- package/dist/{default-options-C7tykjLq.cjs → default-options-DRN81WEQ.cjs} +2 -3
- package/dist/{default-options-C7tykjLq.cjs.map → default-options-DRN81WEQ.cjs.map} +1 -1
- package/dist/{default-options-oSlrqpuP.js → default-options-Dir6CKnE.js} +2 -3
- package/dist/{default-options-oSlrqpuP.js.map → default-options-Dir6CKnE.js.map} +1 -1
- package/dist/{dist-lT2rqyY9.cjs → dist-36GZrEvk.cjs} +4 -5
- package/dist/{dist-lT2rqyY9.cjs.map → dist-36GZrEvk.cjs.map} +1 -1
- package/dist/{dist-CeTLA-e5.cjs → dist-BZGewCGq.cjs} +6 -10
- package/dist/{dist-CeTLA-e5.cjs.map → dist-BZGewCGq.cjs.map} +1 -1
- package/dist/{dist-Bo3GdQwf.cjs → dist-Bal15xNO.cjs} +5 -7
- package/dist/{dist-Bo3GdQwf.cjs.map → dist-Bal15xNO.cjs.map} +1 -1
- package/dist/dist-C-L2kyKZ.js +1 -0
- package/dist/{dist-DjkPkAzV.js → dist-CNjm6d2Q.js} +5 -8
- package/dist/{dist-DjkPkAzV.js.map → dist-CNjm6d2Q.js.map} +1 -1
- package/dist/{dist-DLld1qjf.js → dist-CVoi_Dov.js} +3 -4
- package/dist/{dist-DLld1qjf.js.map → dist-CVoi_Dov.js.map} +1 -1
- package/dist/{dist-CukR8zi9.cjs → dist-Clj7hRKz.cjs} +1554 -725
- package/dist/dist-Clj7hRKz.cjs.map +1 -0
- package/dist/{dist-DsrJXwic.cjs → dist-D02J6PZG.cjs} +4 -5
- package/dist/{dist-DsrJXwic.cjs.map → dist-D02J6PZG.cjs.map} +1 -1
- package/dist/dist-D6oS7RF1.cjs +3 -0
- package/dist/{dist-CREG82cy.js → dist-DC9qnRcv.js} +3 -4
- package/dist/{dist-CREG82cy.js.map → dist-DC9qnRcv.js.map} +1 -1
- package/dist/{dist-BIrQLUV9.js → dist-Dc0g0QSi.js} +4 -6
- package/dist/{dist-BIrQLUV9.js.map → dist-Dc0g0QSi.js.map} +1 -1
- package/dist/{dist-BBOnrL_A.js → dist-Dwfkbwzg.js} +3 -4
- package/dist/{dist-BBOnrL_A.js.map → dist-Dwfkbwzg.js.map} +1 -1
- package/dist/{dist-5TAg2f91.js → dist-PlsLrwz8.js} +1549 -719
- package/dist/dist-PlsLrwz8.js.map +1 -0
- package/dist/{dist-B9ery9Zw.cjs → dist-lG-fYW7-.cjs} +4 -5
- package/dist/{dist-B9ery9Zw.cjs.map → dist-lG-fYW7-.cjs.map} +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-server-custom-adapters.md +53 -1
- package/dist/docs/references/docs-server-custom-api-routes.md +2 -0
- package/dist/{dynamic-workflows-HwPX3mcf.cjs → dynamic-workflows-CpCkqM1g.cjs} +6 -8
- package/dist/{dynamic-workflows-HwPX3mcf.cjs.map → dynamic-workflows-CpCkqM1g.cjs.map} +1 -1
- package/dist/{dynamic-workflows-CTUO0SFu.js → dynamic-workflows-DDauBnDt.js} +6 -8
- package/dist/{dynamic-workflows-CTUO0SFu.js.map → dynamic-workflows-DDauBnDt.js.map} +1 -1
- package/dist/{editor-builder-BSBHrTzY.cjs → editor-builder-8li-nXor.cjs} +3 -4
- package/dist/{editor-builder-BSBHrTzY.cjs.map → editor-builder-8li-nXor.cjs.map} +1 -1
- package/dist/{editor-builder-DCrTMwA4.js → editor-builder-BCZy1ZH1.js} +3 -4
- package/dist/{editor-builder-DCrTMwA4.js.map → editor-builder-BCZy1ZH1.js.map} +1 -1
- package/dist/{editor-builder-Bibw1X4q.cjs → editor-builder-DFqbiatl.cjs} +7 -9
- package/dist/{editor-builder-Bibw1X4q.cjs.map → editor-builder-DFqbiatl.cjs.map} +1 -1
- package/dist/{editor-builder-Dq03QZzH.js → editor-builder-qPFmAnZz.js} +7 -9
- package/dist/{editor-builder-Dq03QZzH.js.map → editor-builder-qPFmAnZz.js.map} +1 -1
- package/dist/{favorites-DWDyKxts.js → favorites-8aieznq3.js} +2 -3
- package/dist/{favorites-DWDyKxts.js.map → favorites-8aieznq3.js.map} +1 -1
- package/dist/{favorites-D1-AzGsK.cjs → favorites-D0CoxxQn.cjs} +2 -3
- package/dist/{favorites-D1-AzGsK.cjs.map → favorites-D0CoxxQn.cjs.map} +1 -1
- package/dist/{helpers-CewFtCva.cjs → helpers-CE1fJdLM.cjs} +6 -9
- package/dist/{helpers-CewFtCva.cjs.map → helpers-CE1fJdLM.cjs.map} +1 -1
- package/dist/{helpers-CxSa9O3X.js → helpers-CMCXsowL.js} +6 -9
- package/dist/{helpers-CxSa9O3X.js.map → helpers-CMCXsowL.js.map} +1 -1
- package/dist/{http-exception-CKDHupKw.cjs → http-exception-Co3MbFUf.cjs} +2 -3
- package/dist/{http-exception-CKDHupKw.cjs.map → http-exception-Co3MbFUf.cjs.map} +1 -1
- package/dist/{http-exception-CyfxZB6W.js → http-exception-CzaWkxMl.js} +2 -3
- package/dist/{http-exception-CyfxZB6W.js.map → http-exception-CzaWkxMl.js.map} +1 -1
- package/dist/index.cjs +2 -3
- package/dist/index.js +1 -2
- package/dist/{logs-CY8AGOCO.cjs → logs-CC6IycDY.cjs} +3 -4
- package/dist/{logs-CY8AGOCO.cjs.map → logs-CC6IycDY.cjs.map} +1 -1
- package/dist/{logs-CxfPk-iL.js → logs-DIBh_xCk.js} +7 -8
- package/dist/{logs-CxfPk-iL.js.map → logs-DIBh_xCk.js.map} +1 -1
- package/dist/{logs-Bd_xpsYw.js → logs-DpyTCDyt.js} +3 -4
- package/dist/{logs-Bd_xpsYw.js.map → logs-DpyTCDyt.js.map} +1 -1
- package/dist/{logs-CiSw7r0s.cjs → logs-NNur5jkf.cjs} +7 -8
- package/dist/{logs-CiSw7r0s.cjs.map → logs-NNur5jkf.cjs.map} +1 -1
- package/dist/{mcp-ziWVk7Ol.cjs → mcp-4iUBgZ7s.cjs} +3 -4
- package/dist/{mcp-ziWVk7Ol.cjs.map → mcp-4iUBgZ7s.cjs.map} +1 -1
- package/dist/{mcp-CWDfSu7w.js → mcp-CnV25lv0.js} +6 -7
- package/dist/{mcp-CWDfSu7w.js.map → mcp-CnV25lv0.js.map} +1 -1
- package/dist/{mcp-CWGJRqkC.cjs → mcp-DegWUDeB.cjs} +6 -7
- package/dist/{mcp-CWGJRqkC.cjs.map → mcp-DegWUDeB.cjs.map} +1 -1
- package/dist/{mcp-Drqt0GqD.js → mcp-DgdKiptb.js} +3 -4
- package/dist/{mcp-Drqt0GqD.js.map → mcp-DgdKiptb.js.map} +1 -1
- package/dist/{mcp-client-versions-DxBkzcYH.js → mcp-client-versions-B471u-DI.js} +3 -4
- package/dist/{mcp-client-versions-DxBkzcYH.js.map → mcp-client-versions-B471u-DI.js.map} +1 -1
- package/dist/{mcp-client-versions-Cq97zXiK.cjs → mcp-client-versions-HRTe5cRT.cjs} +3 -4
- package/dist/{mcp-client-versions-Cq97zXiK.cjs.map → mcp-client-versions-HRTe5cRT.cjs.map} +1 -1
- package/dist/{memory-CizEIbl1.cjs → memory-BnPGDrdg.cjs} +4 -5
- package/dist/{memory-CizEIbl1.cjs.map → memory-BnPGDrdg.cjs.map} +1 -1
- package/dist/{memory-B58Q2LgU.js → memory-CZ2ELVP0.js} +4 -5
- package/dist/{memory-B58Q2LgU.js.map → memory-CZ2ELVP0.js.map} +1 -1
- package/dist/{memory-BHtTSzvJ.js → memory-DeZ1je-b.js} +10 -12
- package/dist/memory-DeZ1je-b.js.map +1 -0
- package/dist/{memory-CwwkVDh1.cjs → memory-Pj9P9vsl.cjs} +10 -12
- package/dist/memory-Pj9P9vsl.cjs.map +1 -0
- package/dist/{message-history-_kbQlA4r.js → message-history-BBVH-ORZ.js} +2 -3
- package/dist/{message-history-_kbQlA4r.js.map → message-history-BBVH-ORZ.js.map} +1 -1
- package/dist/{message-history-CkUYxSaS.cjs → message-history-CtELj716.cjs} +2 -3
- package/dist/{message-history-CkUYxSaS.cjs.map → message-history-CtELj716.cjs.map} +1 -1
- package/dist/{observability-Dz9jvMJ3.js → observability-65rZOqJk.js} +6 -7
- package/dist/{observability-Dz9jvMJ3.js.map → observability-65rZOqJk.js.map} +1 -1
- package/dist/{observability-C2BZQ2jU.cjs → observability-CFKSxaff.cjs} +6 -7
- package/dist/{observability-C2BZQ2jU.cjs.map → observability-CFKSxaff.cjs.map} +1 -1
- package/dist/{observability-new-endpoints-3DlTYf34.js → observability-new-endpoints-B6MRJ5Rb.js} +8 -11
- package/dist/observability-new-endpoints-B6MRJ5Rb.js.map +1 -0
- package/dist/{observability-new-endpoints-Drr7q2Dj.cjs → observability-new-endpoints-CDeHfFNP.cjs} +9 -12
- package/dist/observability-new-endpoints-CDeHfFNP.cjs.map +1 -0
- package/dist/{plans-DZAJG1Et.cjs → plans-Dtt4D4-Y.cjs} +8 -9
- package/dist/{plans-DZAJG1Et.cjs.map → plans-Dtt4D4-Y.cjs.map} +1 -1
- package/dist/{plans-CKbStbWl.js → plans-YK-iaKqj.js} +8 -9
- package/dist/{plans-CKbStbWl.js.map → plans-YK-iaKqj.js.map} +1 -1
- package/dist/{probe-image-size-l1uuhbob.cjs → probe-image-size-C0psF6WM.cjs} +69 -120
- package/dist/probe-image-size-C0psF6WM.cjs.map +1 -0
- package/dist/{probe-image-size-DBmo2MAe.js → probe-image-size-CpV7slsd.js} +69 -120
- package/dist/probe-image-size-CpV7slsd.js.map +1 -0
- package/dist/{processor-providers-DHvTA9AL.cjs → processor-providers-CRrcV9ra.cjs} +2 -3
- package/dist/{processor-providers-DHvTA9AL.cjs.map → processor-providers-CRrcV9ra.cjs.map} +1 -1
- package/dist/{processor-providers-DBhZC6-4.js → processor-providers-WHdDe4aA.js} +2 -3
- package/dist/{processor-providers-DBhZC6-4.js.map → processor-providers-WHdDe4aA.js.map} +1 -1
- package/dist/{processors-80HWq8nr.cjs → processors-BEut-2a-.cjs} +2 -3
- package/dist/{processors-80HWq8nr.cjs.map → processors-BEut-2a-.cjs.map} +1 -1
- package/dist/{processors-33IULT8X.js → processors-IhyRC0xH.js} +2 -3
- package/dist/{processors-33IULT8X.js.map → processors-IhyRC0xH.js.map} +1 -1
- package/dist/{prompt-block-versions-Cl3Lh4H-.cjs → prompt-block-versions-BUPyaY8g.cjs} +4 -5
- package/dist/{prompt-block-versions-Cl3Lh4H-.cjs.map → prompt-block-versions-BUPyaY8g.cjs.map} +1 -1
- package/dist/{prompt-block-versions-cfq_e1Zi.js → prompt-block-versions-D1gjBkQx.js} +4 -5
- package/dist/{prompt-block-versions-cfq_e1Zi.js.map → prompt-block-versions-D1gjBkQx.js.map} +1 -1
- package/dist/{responses-CfcIc53b.cjs → responses-CTiwnWeF.cjs} +3 -4
- package/dist/{responses-CfcIc53b.cjs.map → responses-CTiwnWeF.cjs.map} +1 -1
- package/dist/{responses-jiVC-1lx.js → responses-CaixIxi0.js} +8 -9
- package/dist/{responses-jiVC-1lx.js.map → responses-CaixIxi0.js.map} +1 -1
- package/dist/{responses-DJNJgCTg.js → responses-D-fsDRLd.js} +2 -3
- package/dist/{responses-DJNJgCTg.js.map → responses-D-fsDRLd.js.map} +1 -1
- package/dist/{responses-BubMB79l.cjs → responses-Did1x3VK.cjs} +8 -9
- package/dist/{responses-BubMB79l.cjs.map → responses-Did1x3VK.cjs.map} +1 -1
- package/dist/{rolldown-runtime-BwC_XMyb.cjs → rolldown-runtime-10nMEhjP.cjs} +1 -2
- package/dist/{rolldown-runtime-D3Hj5m0v.js → rolldown-runtime-CQI-hT2b.js} +1 -2
- package/dist/{route-builder-CjkWxv4E.js → route-builder-BxPrwNog.js} +6 -10
- package/dist/route-builder-BxPrwNog.js.map +1 -0
- package/dist/{route-builder-B2Qhhd7C.cjs → route-builder-CvARmqnA.cjs} +8 -12
- package/dist/route-builder-CvARmqnA.cjs.map +1 -0
- package/dist/{routes-DKV9oxFW.js → routes-C434Lhz9.js} +59 -92
- package/dist/{routes-DKV9oxFW.js.map → routes-C434Lhz9.js.map} +1 -1
- package/dist/{routes-jXksmX9G.cjs → routes-CtGp_lBn.cjs} +4 -7
- package/dist/routes-CtGp_lBn.cjs.map +1 -0
- package/dist/{routes-CKfXiwRc.js → routes-MRZFTKei.js} +4 -7
- package/dist/routes-MRZFTKei.js.map +1 -0
- package/dist/{routes-D6bDACPd.cjs → routes-rU9Sku0f.cjs} +59 -92
- package/dist/{routes-D6bDACPd.cjs.map → routes-rU9Sku0f.cjs.map} +1 -1
- package/dist/{rule-group-C5eydl98.js → rule-group-4pWeG61q.js} +2 -3
- package/dist/{rule-group-C5eydl98.js.map → rule-group-4pWeG61q.js.map} +1 -1
- package/dist/{rule-group-Hyn4rN52.cjs → rule-group-CIacr-Zz.cjs} +2 -3
- package/dist/{rule-group-Hyn4rN52.cjs.map → rule-group-CIacr-Zz.cjs.map} +1 -1
- package/dist/{schedules-GokZKBYg.cjs → schedules-CL4IU7kS.cjs} +6 -8
- package/dist/{schedules-GokZKBYg.cjs.map → schedules-CL4IU7kS.cjs.map} +1 -1
- package/dist/{schedules-_3zPKyqm.js → schedules-CQPodXrR.js} +6 -8
- package/dist/{schedules-_3zPKyqm.js.map → schedules-CQPodXrR.js.map} +1 -1
- package/dist/{schema-CzbEIyhE-BsMcj9Ws.js → schema-Bf12g7KC-DBc4NSds.js} +104 -35
- package/dist/schema-Bf12g7KC-DBc4NSds.js.map +1 -0
- package/dist/{schema-CzbEIyhE-20gGIWkz.cjs → schema-Bf12g7KC-plP4Ir6h.cjs} +105 -36
- package/dist/schema-Bf12g7KC-plP4Ir6h.cjs.map +1 -0
- package/dist/{scorer-versions-CX8RM9a6.js → scorer-versions-DIqKt2kn.js} +4 -5
- package/dist/{scorer-versions-CX8RM9a6.js.map → scorer-versions-DIqKt2kn.js.map} +1 -1
- package/dist/{scorer-versions-DeCS12ym.cjs → scorer-versions-r7C61gWf.cjs} +4 -5
- package/dist/{scorer-versions-DeCS12ym.cjs.map → scorer-versions-r7C61gWf.cjs.map} +1 -1
- package/dist/{scores-CetVKM4g.cjs → scores-Bu70OP1U.cjs} +3 -4
- package/dist/{scores-CetVKM4g.cjs.map → scores-Bu70OP1U.cjs.map} +1 -1
- package/dist/{scores-BWTo-_L5.js → scores-DHnw31S7.js} +8 -9
- package/dist/{scores-BWTo-_L5.js.map → scores-DHnw31S7.js.map} +1 -1
- package/dist/{scores-BbqFfKcy.js → scores-DZ1hftoG.js} +3 -4
- package/dist/{scores-BbqFfKcy.js.map → scores-DZ1hftoG.js.map} +1 -1
- package/dist/{scores-C8XPZcwt.cjs → scores-K78lAAwd.cjs} +8 -9
- package/dist/{scores-C8XPZcwt.cjs.map → scores-K78lAAwd.cjs.map} +1 -1
- package/dist/server/a2a/store.cjs +2 -3
- package/dist/server/a2a/store.js +1 -2
- package/dist/server/auth/index.cjs +3 -3
- package/dist/server/auth/index.js +2 -2
- package/dist/server/browser-stream/index.cjs +3 -5
- package/dist/server/browser-stream/index.cjs.map +1 -1
- package/dist/server/browser-stream/index.js +2 -4
- package/dist/server/browser-stream/index.js.map +1 -1
- package/dist/server/handlers/a2a.cjs +2 -2
- package/dist/server/handlers/a2a.js +1 -1
- package/dist/server/handlers/agent-builder.cjs +2 -2
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-controller.cjs +20 -18
- package/dist/server/handlers/agent-controller.cjs.map +1 -1
- package/dist/server/handlers/agent-controller.d.ts +2 -0
- package/dist/server/handlers/agent-controller.d.ts.map +1 -1
- package/dist/server/handlers/agent-controller.js +19 -17
- package/dist/server/handlers/agent-controller.js.map +1 -1
- package/dist/server/handlers/agent-versions.cjs +7 -8
- package/dist/server/handlers/agent-versions.js +6 -7
- package/dist/server/handlers/agents.cjs +2 -2
- package/dist/server/handlers/agents.d.ts.map +1 -1
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/auth.cjs +7 -8
- package/dist/server/handlers/auth.js +6 -7
- package/dist/server/handlers/author-enrichment.cjs +2 -3
- package/dist/server/handlers/author-enrichment.js +1 -2
- package/dist/server/handlers/authorship.cjs +4 -5
- package/dist/server/handlers/authorship.js +3 -4
- package/dist/server/handlers/background-tasks.cjs +2 -2
- package/dist/server/handlers/background-tasks.js +1 -1
- package/dist/server/handlers/builder-registry.cjs +2 -2
- package/dist/server/handlers/builder-registry.js +1 -1
- package/dist/server/handlers/channels.cjs +2 -2
- package/dist/server/handlers/channels.js +1 -1
- package/dist/server/handlers/conversations.cjs +2 -2
- package/dist/server/handlers/conversations.js +1 -1
- package/dist/server/handlers/datasets.cjs +7 -8
- package/dist/server/handlers/datasets.js +6 -7
- package/dist/server/handlers/dynamic-workflows.cjs +2 -2
- package/dist/server/handlers/dynamic-workflows.js +1 -1
- package/dist/server/handlers/editor-builder.cjs +2 -2
- package/dist/server/handlers/editor-builder.js +1 -1
- package/dist/server/handlers/error.cjs +3 -4
- package/dist/server/handlers/error.js +2 -3
- package/dist/server/handlers/favorites-enrichment.cjs +3 -4
- package/dist/server/handlers/favorites-enrichment.js +2 -3
- package/dist/server/handlers/gateway-memory-client.cjs +2 -3
- package/dist/server/handlers/gateway-memory-client.js +1 -2
- package/dist/server/handlers/logs.cjs +2 -2
- package/dist/server/handlers/logs.js +1 -1
- package/dist/server/handlers/mcp-client-versions.cjs +6 -7
- package/dist/server/handlers/mcp-client-versions.js +5 -6
- package/dist/server/handlers/mcp.cjs +2 -2
- package/dist/server/handlers/mcp.js +1 -1
- package/dist/server/handlers/memory.cjs +2 -2
- package/dist/server/handlers/memory.d.ts.map +1 -1
- package/dist/server/handlers/memory.js +1 -1
- package/dist/server/handlers/observability-list-query-schemas.cjs +2 -3
- package/dist/server/handlers/observability-list-query-schemas.js +1 -2
- package/dist/server/handlers/observability-new-endpoints.cjs +2 -2
- package/dist/server/handlers/observability-new-endpoints.d.ts +2 -10
- package/dist/server/handlers/observability-new-endpoints.d.ts.map +1 -1
- package/dist/server/handlers/observability-new-endpoints.js +1 -1
- package/dist/server/handlers/observability-shared.cjs +4 -5
- package/dist/server/handlers/observability-shared.js +3 -4
- package/dist/server/handlers/observability-storage-schemas.cjs +2 -3
- package/dist/server/handlers/observability-storage-schemas.js +1 -2
- package/dist/server/handlers/observability.cjs +3 -3
- package/dist/server/handlers/observability.js +2 -2
- package/dist/server/handlers/plans.cjs +2 -2
- package/dist/server/handlers/plans.js +1 -1
- package/dist/server/handlers/processor-providers.cjs +5 -6
- package/dist/server/handlers/processor-providers.js +4 -5
- package/dist/server/handlers/processors.cjs +5 -6
- package/dist/server/handlers/processors.js +4 -5
- package/dist/server/handlers/prompt-block-versions.cjs +6 -7
- package/dist/server/handlers/prompt-block-versions.js +5 -6
- package/dist/server/handlers/responses.adapter.cjs +2 -3
- package/dist/server/handlers/responses.adapter.js +1 -2
- package/dist/server/handlers/responses.cjs +2 -2
- package/dist/server/handlers/responses.js +1 -1
- package/dist/server/handlers/responses.storage.cjs +4 -5
- package/dist/server/handlers/responses.storage.js +3 -4
- package/dist/server/handlers/schedules-workflows-shim.cjs +2 -3
- package/dist/server/handlers/schedules-workflows-shim.js +1 -2
- package/dist/server/handlers/schedules.cjs +2 -2
- package/dist/server/handlers/schedules.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +6 -7
- package/dist/server/handlers/scorer-versions.js +5 -6
- package/dist/server/handlers/scores.cjs +2 -2
- package/dist/server/handlers/scores.js +1 -1
- package/dist/server/handlers/skills-sh-shared.cjs +3 -4
- package/dist/server/handlers/skills-sh-shared.js +2 -3
- package/dist/server/handlers/stored-agent-favorites.cjs +8 -9
- package/dist/server/handlers/stored-agent-favorites.js +7 -8
- package/dist/server/handlers/stored-agents.cjs +8 -9
- package/dist/server/handlers/stored-agents.js +7 -8
- package/dist/server/handlers/stored-mcp-clients.cjs +7 -8
- package/dist/server/handlers/stored-mcp-clients.js +6 -7
- package/dist/server/handlers/stored-prompt-blocks.cjs +7 -8
- package/dist/server/handlers/stored-prompt-blocks.js +6 -7
- package/dist/server/handlers/stored-scorers.cjs +7 -8
- package/dist/server/handlers/stored-scorers.js +6 -7
- package/dist/server/handlers/stored-skill-favorites.cjs +8 -9
- package/dist/server/handlers/stored-skill-favorites.js +7 -8
- package/dist/server/handlers/stored-skills.cjs +7 -8
- package/dist/server/handlers/stored-skills.js +6 -7
- package/dist/server/handlers/stored-workspaces.cjs +6 -7
- package/dist/server/handlers/stored-workspaces.js +5 -6
- package/dist/server/handlers/system.cjs +5 -6
- package/dist/server/handlers/system.js +4 -5
- package/dist/server/handlers/test-utils.cjs +2 -3
- package/dist/server/handlers/test-utils.js +1 -2
- package/dist/server/handlers/tool-providers.cjs +6 -7
- package/dist/server/handlers/tool-providers.js +5 -6
- package/dist/server/handlers/tool-schema-overrides.cjs +2 -3
- package/dist/server/handlers/tool-schema-overrides.js +1 -2
- package/dist/server/handlers/tools.cjs +2 -2
- package/dist/server/handlers/tools.js +1 -1
- package/dist/server/handlers/utils.cjs +3 -2
- package/dist/server/handlers/utils.d.ts +17 -2
- package/dist/server/handlers/utils.d.ts.map +1 -1
- package/dist/server/handlers/utils.js +1 -1
- package/dist/server/handlers/validate-agent-instructions.cjs +4 -5
- package/dist/server/handlers/validate-agent-instructions.js +3 -4
- package/dist/server/handlers/validate-avatar.cjs +3 -4
- package/dist/server/handlers/validate-avatar.js +2 -3
- package/dist/server/handlers/vector.cjs +2 -2
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/version-helpers.cjs +2 -3
- package/dist/server/handlers/version-helpers.js +1 -2
- package/dist/server/handlers/voice.cjs +2 -2
- package/dist/server/handlers/voice.js +1 -1
- package/dist/server/handlers/workflow-builder.cjs +2 -2
- package/dist/server/handlers/workflow-builder.js +1 -1
- package/dist/server/handlers/workflows.cjs +2 -2
- package/dist/server/handlers/workflows.d.ts.map +1 -1
- package/dist/server/handlers/workflows.js +1 -1
- package/dist/server/handlers/workspace.cjs +2 -2
- package/dist/server/handlers/workspace.js +1 -1
- package/dist/server/handlers.cjs +18 -18
- package/dist/server/handlers.js +17 -17
- package/dist/server/schemas/index.cjs +35 -35
- package/dist/server/schemas/index.js +34 -34
- package/dist/server/server-adapter/index.cjs +14 -21
- package/dist/server/server-adapter/index.cjs.map +1 -1
- package/dist/server/server-adapter/index.js +13 -20
- package/dist/server/server-adapter/index.js.map +1 -1
- package/dist/server/server-adapter/routes/observability.d.ts +1 -5
- package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
- package/dist/{stored-agents-BtaEzKfr.js → stored-agents-BpxMmhtz.js} +9 -11
- package/dist/{stored-agents-BtaEzKfr.js.map → stored-agents-BpxMmhtz.js.map} +1 -1
- package/dist/{stored-agents-BTL-o6aM.cjs → stored-agents-CDlh3CQQ.cjs} +9 -11
- package/dist/{stored-agents-BTL-o6aM.cjs.map → stored-agents-CDlh3CQQ.cjs.map} +1 -1
- package/dist/{stored-mcp-clients-D7bNkmTM.cjs → stored-mcp-clients-BA7OSGZ_.cjs} +3 -4
- package/dist/{stored-mcp-clients-D7bNkmTM.cjs.map → stored-mcp-clients-BA7OSGZ_.cjs.map} +1 -1
- package/dist/{stored-mcp-clients-DMR6NvCp.js → stored-mcp-clients-DtLv0Tly.js} +3 -4
- package/dist/{stored-mcp-clients-DMR6NvCp.js.map → stored-mcp-clients-DtLv0Tly.js.map} +1 -1
- package/dist/{stored-prompt-blocks-BjHxMCuC.cjs → stored-prompt-blocks-Cqi0vnTE.cjs} +4 -5
- package/dist/{stored-prompt-blocks-BjHxMCuC.cjs.map → stored-prompt-blocks-Cqi0vnTE.cjs.map} +1 -1
- package/dist/{stored-prompt-blocks-C7qmiWSB.js → stored-prompt-blocks-Z_BuhsUq.js} +4 -5
- package/dist/{stored-prompt-blocks-C7qmiWSB.js.map → stored-prompt-blocks-Z_BuhsUq.js.map} +1 -1
- package/dist/{stored-scorers-BSxh7JZX.js → stored-scorers-BdJadnUS.js} +4 -5
- package/dist/{stored-scorers-BSxh7JZX.js.map → stored-scorers-BdJadnUS.js.map} +1 -1
- package/dist/{stored-scorers-I8L1-bAI.cjs → stored-scorers-D1zYUEXg.cjs} +4 -5
- package/dist/{stored-scorers-I8L1-bAI.cjs.map → stored-scorers-D1zYUEXg.cjs.map} +1 -1
- package/dist/{stored-skills-DzW8hLnI.js → stored-skills-D8Q1NmsH.js} +3 -4
- package/dist/{stored-skills-DzW8hLnI.js.map → stored-skills-D8Q1NmsH.js.map} +1 -1
- package/dist/{stored-skills-C1e8kf2k.cjs → stored-skills-DppdzQY0.cjs} +3 -4
- package/dist/{stored-skills-C1e8kf2k.cjs.map → stored-skills-DppdzQY0.cjs.map} +1 -1
- package/dist/{stored-workspaces-DSfChCJ0.cjs → stored-workspaces-BOwJwkec.cjs} +3 -4
- package/dist/{stored-workspaces-DSfChCJ0.cjs.map → stored-workspaces-BOwJwkec.cjs.map} +1 -1
- package/dist/{stored-workspaces-AkC68rSw.js → stored-workspaces-CYXLBJy5.js} +3 -4
- package/dist/{stored-workspaces-AkC68rSw.js.map → stored-workspaces-CYXLBJy5.js.map} +1 -1
- package/dist/{system-sSSmmt7I.js → system-B8L_G4oo.js} +2 -3
- package/dist/{system-sSSmmt7I.js.map → system-B8L_G4oo.js.map} +1 -1
- package/dist/{system-B_Sod-Le.cjs → system-DGfJlOxK.cjs} +2 -3
- package/dist/{system-B_Sod-Le.cjs.map → system-DGfJlOxK.cjs.map} +1 -1
- package/dist/{tool-providers-DFQkhO4R.cjs → tool-providers-BVwRJTtB.cjs} +2 -3
- package/dist/{tool-providers-DFQkhO4R.cjs.map → tool-providers-BVwRJTtB.cjs.map} +1 -1
- package/dist/{tool-providers-CIESXi7M.js → tool-providers-Cq3vFqgE.js} +2 -3
- package/dist/{tool-providers-CIESXi7M.js.map → tool-providers-Cq3vFqgE.js.map} +1 -1
- package/dist/{tools-Ci71xxGP.cjs → tools-CeVJwkPP.cjs} +13 -14
- package/dist/tools-CeVJwkPP.cjs.map +1 -0
- package/dist/{tools--oMljfqq.js → tools-hd_ZCJkE.js} +12 -13
- package/dist/tools-hd_ZCJkE.js.map +1 -0
- package/dist/{utils-dDLIDg8O.cjs → utils-BbYUI6Yn.cjs} +37 -14
- package/dist/utils-BbYUI6Yn.cjs.map +1 -0
- package/dist/{utils-CF76qzZR.cjs → utils-BnH77wPf.cjs} +107 -81
- package/dist/utils-BnH77wPf.cjs.map +1 -0
- package/dist/{utils-BBJlS81s.js → utils-DHxjw4Tn.js} +31 -14
- package/dist/utils-DHxjw4Tn.js.map +1 -0
- package/dist/{utils-aoLN3Wfi.js → utils-YEuwVEc2.js} +104 -78
- package/dist/utils-YEuwVEc2.js.map +1 -0
- package/dist/{vector-TWv4t-4g.js → vector-Deod39jt.js} +6 -7
- package/dist/{vector-TWv4t-4g.js.map → vector-Deod39jt.js.map} +1 -1
- package/dist/{vector-BKDD1kwc.cjs → vector-IxK1t4Cb.cjs} +6 -7
- package/dist/{vector-BKDD1kwc.cjs.map → vector-IxK1t4Cb.cjs.map} +1 -1
- package/dist/{vectors-LFI1jch0.cjs → vectors-CqV387sY.cjs} +3 -4
- package/dist/{vectors-LFI1jch0.cjs.map → vectors-CqV387sY.cjs.map} +1 -1
- package/dist/{vectors-CJtupgIF.js → vectors-CvHLWqjC.js} +3 -4
- package/dist/{vectors-CJtupgIF.js.map → vectors-CvHLWqjC.js.map} +1 -1
- package/dist/{version-common-DrzXq7Ct.cjs → version-common-B2n_ML_w.cjs} +3 -4
- package/dist/{version-common-DrzXq7Ct.cjs.map → version-common-B2n_ML_w.cjs.map} +1 -1
- package/dist/{version-common-4xFzvCS5.js → version-common-Di2U8VWH.js} +3 -4
- package/dist/{version-common-4xFzvCS5.js.map → version-common-Di2U8VWH.js.map} +1 -1
- package/dist/{voice-BnGwlZ75.cjs → voice-CBbxcsCM.cjs} +4 -5
- package/dist/{voice-BnGwlZ75.cjs.map → voice-CBbxcsCM.cjs.map} +1 -1
- package/dist/{voice-DjG8tBAD.js → voice-CzFWhWPJ.js} +4 -5
- package/dist/{voice-DjG8tBAD.js.map → voice-CzFWhWPJ.js.map} +1 -1
- package/dist/{workflow-builder-Dguv4rc0.cjs → workflow-builder-B33pXjdu.cjs} +8 -10
- package/dist/{workflow-builder-Dguv4rc0.cjs.map → workflow-builder-B33pXjdu.cjs.map} +1 -1
- package/dist/{workflow-builder-BoI-XXsT.js → workflow-builder-D4Po74yJ.js} +8 -10
- package/dist/{workflow-builder-BoI-XXsT.js.map → workflow-builder-D4Po74yJ.js.map} +1 -1
- package/dist/{workflows-Dcx4Ib0t.js → workflows-C9BMJV_C.js} +3 -4
- package/dist/{workflows-Dcx4Ib0t.js.map → workflows-C9BMJV_C.js.map} +1 -1
- package/dist/{workflows-5AytZqK_.cjs → workflows-CiP6r_nw.cjs} +35 -36
- package/dist/workflows-CiP6r_nw.cjs.map +1 -0
- package/dist/{workflows-C8rDpHyY.cjs → workflows-SYBpQupF.cjs} +3 -4
- package/dist/{workflows-C8rDpHyY.cjs.map → workflows-SYBpQupF.cjs.map} +1 -1
- package/dist/{workflows-D7Oq5On9.js → workflows-tk1Ixg8M.js} +35 -36
- package/dist/workflows-tk1Ixg8M.js.map +1 -0
- package/dist/{workspace-BVHXoKmP.js → workspace-C9dE6D1U.js} +6 -7
- package/dist/{workspace-BVHXoKmP.js.map → workspace-C9dE6D1U.js.map} +1 -1
- package/dist/{workspace-d25MZ9dj.cjs → workspace-CyH_iu8w.cjs} +6 -7
- package/dist/{workspace-d25MZ9dj.cjs.map → workspace-CyH_iu8w.cjs.map} +1 -1
- package/dist/{workspace-BJYV2lkt.cjs → workspace-KeHGZvNV.cjs} +2 -3
- package/dist/{workspace-BJYV2lkt.cjs.map → workspace-KeHGZvNV.cjs.map} +1 -1
- package/dist/{workspace-4dBGFdV2.js → workspace-muaSMxVS.js} +2 -3
- package/dist/{workspace-4dBGFdV2.js.map → workspace-muaSMxVS.js.map} +1 -1
- package/package.json +10 -10
- package/dist/agents-AyHEkc2F.cjs.map +0 -1
- package/dist/agents-BYE5Dmfk.js.map +0 -1
- package/dist/dist-5TAg2f91.js.map +0 -1
- package/dist/dist-C9Jwt1f0.cjs +0 -3
- package/dist/dist-CukR8zi9.cjs.map +0 -1
- package/dist/dist-Dgae8Imb.js +0 -1
- package/dist/memory-BHtTSzvJ.js.map +0 -1
- package/dist/memory-CwwkVDh1.cjs.map +0 -1
- package/dist/observability-new-endpoints-3DlTYf34.js.map +0 -1
- package/dist/observability-new-endpoints-Drr7q2Dj.cjs.map +0 -1
- package/dist/probe-image-size-DBmo2MAe.js.map +0 -1
- package/dist/probe-image-size-l1uuhbob.cjs.map +0 -1
- package/dist/route-builder-B2Qhhd7C.cjs.map +0 -1
- package/dist/route-builder-CjkWxv4E.js.map +0 -1
- package/dist/routes-CKfXiwRc.js.map +0 -1
- package/dist/routes-jXksmX9G.cjs.map +0 -1
- package/dist/schema-CzbEIyhE-20gGIWkz.cjs.map +0 -1
- package/dist/schema-CzbEIyhE-BsMcj9Ws.js.map +0 -1
- package/dist/tools--oMljfqq.js.map +0 -1
- package/dist/tools-Ci71xxGP.cjs.map +0 -1
- package/dist/utils-BBJlS81s.js.map +0 -1
- package/dist/utils-CF76qzZR.cjs.map +0 -1
- package/dist/utils-aoLN3Wfi.js.map +0 -1
- package/dist/utils-dDLIDg8O.cjs.map +0 -1
- package/dist/workflows-5AytZqK_.cjs.map +0 -1
- package/dist/workflows-D7Oq5On9.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-YEuwVEc2.js","names":["isPlainObject","isPlainObject","isPlainObject"],"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/double-indexed-kv.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/registry.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/class-registry.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/util.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/custom-transformer-registry.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/is.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/pathstringifier.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/transformer.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/accessDeep.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/plainer.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/copy-anything/4.1.5/dedefcf2f03e98e70d41bceb3c3897b84814fa553b00ef4acbcec74c4b246876/node_modules/copy-anything/dist/index.js","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/index.js","../src/server/utils.ts"],"sourcesContent":["export class DoubleIndexedKV {\n constructor() {\n this.keyToValue = new Map();\n this.valueToKey = new Map();\n }\n set(key, value) {\n this.keyToValue.set(key, value);\n this.valueToKey.set(value, key);\n }\n getByKey(key) {\n return this.keyToValue.get(key);\n }\n getByValue(value) {\n return this.valueToKey.get(value);\n }\n clear() {\n this.keyToValue.clear();\n this.valueToKey.clear();\n }\n}\n//# sourceMappingURL=double-indexed-kv.js.map","import { DoubleIndexedKV } from './double-indexed-kv.js';\nexport class Registry {\n constructor(generateIdentifier) {\n this.generateIdentifier = generateIdentifier;\n this.kv = new DoubleIndexedKV();\n }\n register(value, identifier) {\n if (this.kv.getByValue(value)) {\n return;\n }\n if (!identifier) {\n identifier = this.generateIdentifier(value);\n }\n this.kv.set(identifier, value);\n }\n clear() {\n this.kv.clear();\n }\n getIdentifier(value) {\n return this.kv.getByValue(value);\n }\n getValue(identifier) {\n return this.kv.getByKey(identifier);\n }\n}\n//# sourceMappingURL=registry.js.map","import { Registry } from './registry.js';\nexport class ClassRegistry extends Registry {\n constructor() {\n super(c => c.name);\n this.classToAllowedProps = new Map();\n }\n register(value, options) {\n if (typeof options === 'object') {\n if (options.allowProps) {\n this.classToAllowedProps.set(value, options.allowProps);\n }\n super.register(value, options.identifier);\n }\n else {\n super.register(value, options);\n }\n }\n getAllowedProps(value) {\n return this.classToAllowedProps.get(value);\n }\n}\n//# sourceMappingURL=class-registry.js.map","function valuesOfObj(record) {\n if ('values' in Object) {\n // eslint-disable-next-line es5/no-es6-methods\n return Object.values(record);\n }\n const values = [];\n // eslint-disable-next-line no-restricted-syntax\n for (const key in record) {\n if (record.hasOwnProperty(key)) {\n values.push(record[key]);\n }\n }\n return values;\n}\nexport function find(record, predicate) {\n const values = valuesOfObj(record);\n if ('find' in values) {\n // eslint-disable-next-line es5/no-es6-methods\n return values.find(predicate);\n }\n const valuesNotNever = values;\n for (let i = 0; i < valuesNotNever.length; i++) {\n const value = valuesNotNever[i];\n if (predicate(value)) {\n return value;\n }\n }\n return undefined;\n}\nexport function forEach(record, run) {\n Object.entries(record).forEach(([key, value]) => run(value, key));\n}\nexport function includes(arr, value) {\n return arr.indexOf(value) !== -1;\n}\nexport function findArr(record, predicate) {\n for (let i = 0; i < record.length; i++) {\n const value = record[i];\n if (predicate(value)) {\n return value;\n }\n }\n return undefined;\n}\n//# sourceMappingURL=util.js.map","import { find } from './util.js';\nexport class CustomTransformerRegistry {\n constructor() {\n this.transfomers = {};\n }\n register(transformer) {\n this.transfomers[transformer.name] = transformer;\n }\n findApplicable(v) {\n return find(this.transfomers, transformer => transformer.isApplicable(v));\n }\n findByName(name) {\n return this.transfomers[name];\n }\n}\n//# sourceMappingURL=custom-transformer-registry.js.map","const getType = (payload) => Object.prototype.toString.call(payload).slice(8, -1);\nexport const isUndefined = (payload) => typeof payload === 'undefined';\nexport const isNull = (payload) => payload === null;\nexport const isPlainObject = (payload) => {\n if (typeof payload !== 'object' || payload === null)\n return false;\n if (payload === Object.prototype)\n return false;\n if (Object.getPrototypeOf(payload) === null)\n return true;\n return Object.getPrototypeOf(payload) === Object.prototype;\n};\nexport const isEmptyObject = (payload) => isPlainObject(payload) && Object.keys(payload).length === 0;\nexport const isArray = (payload) => Array.isArray(payload);\nexport const isString = (payload) => typeof payload === 'string';\nexport const isNumber = (payload) => typeof payload === 'number' && !isNaN(payload);\nexport const isBoolean = (payload) => typeof payload === 'boolean';\nexport const isRegExp = (payload) => payload instanceof RegExp;\nexport const isMap = (payload) => payload instanceof Map;\nexport const isSet = (payload) => payload instanceof Set;\nexport const isSymbol = (payload) => getType(payload) === 'Symbol';\nexport const isDate = (payload) => payload instanceof Date && !isNaN(payload.valueOf());\nexport const isError = (payload) => payload instanceof Error;\nexport const isNaNValue = (payload) => typeof payload === 'number' && isNaN(payload);\nexport const isPrimitive = (payload) => isBoolean(payload) ||\n isNull(payload) ||\n isUndefined(payload) ||\n isNumber(payload) ||\n isString(payload) ||\n isSymbol(payload);\nexport const isBigint = (payload) => typeof payload === 'bigint';\nexport const isInfinite = (payload) => payload === Infinity || payload === -Infinity;\nexport const isTypedArray = (payload) => ArrayBuffer.isView(payload) && !(payload instanceof DataView);\nexport const isURL = (payload) => payload instanceof URL;\n//# sourceMappingURL=is.js.map","export const escapeKey = (key) => key.replace(/\\\\/g, '\\\\\\\\').replace(/\\./g, '\\\\.');\nexport const stringifyPath = (path) => path\n .map(String)\n .map(escapeKey)\n .join('.');\nexport const parsePath = (string, legacyPaths) => {\n const result = [];\n let segment = '';\n for (let i = 0; i < string.length; i++) {\n let char = string.charAt(i);\n if (!legacyPaths && char === '\\\\') {\n const escaped = string.charAt(i + 1);\n if (escaped === '\\\\') {\n segment += '\\\\';\n i++;\n continue;\n }\n else if (escaped !== '.') {\n throw Error('invalid path');\n }\n }\n const isEscapedDot = char === '\\\\' && string.charAt(i + 1) === '.';\n if (isEscapedDot) {\n segment += '.';\n i++;\n continue;\n }\n const isEndOfSegment = char === '.';\n if (isEndOfSegment) {\n result.push(segment);\n segment = '';\n continue;\n }\n segment += char;\n }\n const lastSegment = segment;\n result.push(lastSegment);\n return result;\n};\n//# sourceMappingURL=pathstringifier.js.map","import { isBigint, isDate, isInfinite, isMap, isNaNValue, isRegExp, isSet, isUndefined, isSymbol, isArray, isError, isTypedArray, isURL, } from './is.js';\nimport { findArr } from './util.js';\nfunction simpleTransformation(isApplicable, annotation, transform, untransform) {\n return {\n isApplicable,\n annotation,\n transform,\n untransform,\n };\n}\nconst simpleRules = [\n simpleTransformation(isUndefined, 'undefined', () => null, () => undefined),\n simpleTransformation(isBigint, 'bigint', v => v.toString(), v => {\n if (typeof BigInt !== 'undefined') {\n return BigInt(v);\n }\n console.error('Please add a BigInt polyfill.');\n return v;\n }),\n simpleTransformation(isDate, 'Date', v => v.toISOString(), v => new Date(v)),\n simpleTransformation(isError, 'Error', (v, superJson) => {\n const baseError = {\n name: v.name,\n message: v.message,\n };\n if ('cause' in v) {\n baseError.cause = v.cause;\n }\n superJson.allowedErrorProps.forEach(prop => {\n baseError[prop] = v[prop];\n });\n return baseError;\n }, (v, superJson) => {\n const e = new Error(v.message, { cause: v.cause });\n e.name = v.name;\n e.stack = v.stack;\n superJson.allowedErrorProps.forEach(prop => {\n e[prop] = v[prop];\n });\n return e;\n }),\n simpleTransformation(isRegExp, 'regexp', v => '' + v, regex => {\n const body = regex.slice(1, regex.lastIndexOf('/'));\n const flags = regex.slice(regex.lastIndexOf('/') + 1);\n return new RegExp(body, flags);\n }),\n simpleTransformation(isSet, 'set', \n // (sets only exist in es6+)\n // eslint-disable-next-line es5/no-es6-methods\n v => [...v.values()], v => new Set(v)),\n simpleTransformation(isMap, 'map', v => [...v.entries()], v => new Map(v)),\n simpleTransformation((v) => isNaNValue(v) || isInfinite(v), 'number', v => {\n if (isNaNValue(v)) {\n return 'NaN';\n }\n if (v > 0) {\n return 'Infinity';\n }\n else {\n return '-Infinity';\n }\n }, Number),\n simpleTransformation((v) => v === 0 && 1 / v === -Infinity, 'number', () => {\n return '-0';\n }, Number),\n simpleTransformation(isURL, 'URL', v => v.toString(), v => new URL(v)),\n];\nfunction compositeTransformation(isApplicable, annotation, transform, untransform) {\n return {\n isApplicable,\n annotation,\n transform,\n untransform,\n };\n}\nconst symbolRule = compositeTransformation((s, superJson) => {\n if (isSymbol(s)) {\n const isRegistered = !!superJson.symbolRegistry.getIdentifier(s);\n return isRegistered;\n }\n return false;\n}, (s, superJson) => {\n const identifier = superJson.symbolRegistry.getIdentifier(s);\n return ['symbol', identifier];\n}, v => v.description, (_, a, superJson) => {\n const value = superJson.symbolRegistry.getValue(a[1]);\n if (!value) {\n throw new Error('Trying to deserialize unknown symbol');\n }\n return value;\n});\nconst constructorToName = [\n Int8Array,\n Uint8Array,\n Int16Array,\n Uint16Array,\n Int32Array,\n Uint32Array,\n Float32Array,\n Float64Array,\n Uint8ClampedArray,\n].reduce((obj, ctor) => {\n obj[ctor.name] = ctor;\n return obj;\n}, {});\nconst typedArrayRule = compositeTransformation(isTypedArray, v => ['typed-array', v.constructor.name], v => [...v], (v, a) => {\n const ctor = constructorToName[a[1]];\n if (!ctor) {\n throw new Error('Trying to deserialize unknown typed array');\n }\n return new ctor(v);\n});\nexport function isInstanceOfRegisteredClass(potentialClass, superJson) {\n if (potentialClass?.constructor) {\n const isRegistered = !!superJson.classRegistry.getIdentifier(potentialClass.constructor);\n return isRegistered;\n }\n return false;\n}\nconst classRule = compositeTransformation(isInstanceOfRegisteredClass, (clazz, superJson) => {\n const identifier = superJson.classRegistry.getIdentifier(clazz.constructor);\n return ['class', identifier];\n}, (clazz, superJson) => {\n const allowedProps = superJson.classRegistry.getAllowedProps(clazz.constructor);\n if (!allowedProps) {\n return { ...clazz };\n }\n const result = {};\n allowedProps.forEach(prop => {\n result[prop] = clazz[prop];\n });\n return result;\n}, (v, a, superJson) => {\n const clazz = superJson.classRegistry.getValue(a[1]);\n if (!clazz) {\n throw new Error(`Trying to deserialize unknown class '${a[1]}' - check https://github.com/blitz-js/superjson/issues/116#issuecomment-773996564`);\n }\n return Object.assign(Object.create(clazz.prototype), v);\n});\nconst customRule = compositeTransformation((value, superJson) => {\n return !!superJson.customTransformerRegistry.findApplicable(value);\n}, (value, superJson) => {\n const transformer = superJson.customTransformerRegistry.findApplicable(value);\n return ['custom', transformer.name];\n}, (value, superJson) => {\n const transformer = superJson.customTransformerRegistry.findApplicable(value);\n return transformer.serialize(value);\n}, (v, a, superJson) => {\n const transformer = superJson.customTransformerRegistry.findByName(a[1]);\n if (!transformer) {\n throw new Error('Trying to deserialize unknown custom value');\n }\n return transformer.deserialize(v);\n});\nconst compositeRules = [classRule, symbolRule, customRule, typedArrayRule];\nexport const transformValue = (value, superJson) => {\n const applicableCompositeRule = findArr(compositeRules, rule => rule.isApplicable(value, superJson));\n if (applicableCompositeRule) {\n return {\n value: applicableCompositeRule.transform(value, superJson),\n type: applicableCompositeRule.annotation(value, superJson),\n };\n }\n const applicableSimpleRule = findArr(simpleRules, rule => rule.isApplicable(value, superJson));\n if (applicableSimpleRule) {\n return {\n value: applicableSimpleRule.transform(value, superJson),\n type: applicableSimpleRule.annotation,\n };\n }\n return undefined;\n};\nconst simpleRulesByAnnotation = {};\nsimpleRules.forEach(rule => {\n simpleRulesByAnnotation[rule.annotation] = rule;\n});\nexport const untransformValue = (json, type, superJson) => {\n if (isArray(type)) {\n switch (type[0]) {\n case 'symbol':\n return symbolRule.untransform(json, type, superJson);\n case 'class':\n return classRule.untransform(json, type, superJson);\n case 'custom':\n return customRule.untransform(json, type, superJson);\n case 'typed-array':\n return typedArrayRule.untransform(json, type, superJson);\n default:\n throw new Error('Unknown transformation: ' + type);\n }\n }\n else {\n const transformation = simpleRulesByAnnotation[type];\n if (!transformation) {\n throw new Error('Unknown transformation: ' + type);\n }\n return transformation.untransform(json, superJson);\n }\n};\n//# sourceMappingURL=transformer.js.map","import { isMap, isArray, isPlainObject, isSet } from './is.js';\nimport { includes } from './util.js';\nconst getNthKey = (value, n) => {\n if (n > value.size)\n throw new Error('index out of bounds');\n const keys = value.keys();\n while (n > 0) {\n keys.next();\n n--;\n }\n return keys.next().value;\n};\nfunction validatePath(path) {\n if (includes(path, '__proto__')) {\n throw new Error('__proto__ is not allowed as a property');\n }\n if (includes(path, 'prototype')) {\n throw new Error('prototype is not allowed as a property');\n }\n if (includes(path, 'constructor')) {\n throw new Error('constructor is not allowed as a property');\n }\n}\nexport const getDeep = (object, path) => {\n validatePath(path);\n for (let i = 0; i < path.length; i++) {\n const key = path[i];\n if (isSet(object)) {\n object = getNthKey(object, +key);\n }\n else if (isMap(object)) {\n const row = +key;\n const type = +path[++i] === 0 ? 'key' : 'value';\n const keyOfRow = getNthKey(object, row);\n switch (type) {\n case 'key':\n object = keyOfRow;\n break;\n case 'value':\n object = object.get(keyOfRow);\n break;\n }\n }\n else {\n object = object[key];\n }\n }\n return object;\n};\nexport const setDeep = (object, path, mapper) => {\n validatePath(path);\n if (path.length === 0) {\n return mapper(object);\n }\n let parent = object;\n for (let i = 0; i < path.length - 1; i++) {\n const key = path[i];\n if (isArray(parent)) {\n const index = +key;\n parent = parent[index];\n }\n else if (isPlainObject(parent)) {\n parent = parent[key];\n }\n else if (isSet(parent)) {\n const row = +key;\n parent = getNthKey(parent, row);\n }\n else if (isMap(parent)) {\n const isEnd = i === path.length - 2;\n if (isEnd) {\n break;\n }\n const row = +key;\n const type = +path[++i] === 0 ? 'key' : 'value';\n const keyOfRow = getNthKey(parent, row);\n switch (type) {\n case 'key':\n parent = keyOfRow;\n break;\n case 'value':\n parent = parent.get(keyOfRow);\n break;\n }\n }\n }\n const lastKey = path[path.length - 1];\n if (isArray(parent)) {\n parent[+lastKey] = mapper(parent[+lastKey]);\n }\n else if (isPlainObject(parent)) {\n parent[lastKey] = mapper(parent[lastKey]);\n }\n if (isSet(parent)) {\n const oldValue = getNthKey(parent, +lastKey);\n const newValue = mapper(oldValue);\n if (oldValue !== newValue) {\n parent.delete(oldValue);\n parent.add(newValue);\n }\n }\n if (isMap(parent)) {\n const row = +path[path.length - 2];\n const keyToRow = getNthKey(parent, row);\n const type = +lastKey === 0 ? 'key' : 'value';\n switch (type) {\n case 'key': {\n const newKey = mapper(keyToRow);\n parent.set(newKey, parent.get(keyToRow));\n if (newKey !== keyToRow) {\n parent.delete(keyToRow);\n }\n break;\n }\n case 'value': {\n parent.set(keyToRow, mapper(parent.get(keyToRow)));\n break;\n }\n }\n }\n return object;\n};\n//# sourceMappingURL=accessDeep.js.map","import { isArray, isEmptyObject, isError, isMap, isPlainObject, isPrimitive, isSet, } from './is.js';\nimport { escapeKey, stringifyPath } from './pathstringifier.js';\nimport { isInstanceOfRegisteredClass, transformValue, untransformValue, } from './transformer.js';\nimport { includes, forEach } from './util.js';\nimport { parsePath } from './pathstringifier.js';\nimport { getDeep, setDeep } from './accessDeep.js';\nconst enableLegacyPaths = (version) => version < 1;\nfunction traverse(tree, walker, version, origin = []) {\n if (!tree) {\n return;\n }\n const legacyPaths = enableLegacyPaths(version);\n if (!isArray(tree)) {\n forEach(tree, (subtree, key) => traverse(subtree, walker, version, [\n ...origin,\n ...parsePath(key, legacyPaths),\n ]));\n return;\n }\n const [nodeValue, children] = tree;\n if (children) {\n forEach(children, (child, key) => {\n traverse(child, walker, version, [\n ...origin,\n ...parsePath(key, legacyPaths),\n ]);\n });\n }\n walker(nodeValue, origin);\n}\nexport function applyValueAnnotations(plain, annotations, version, superJson) {\n traverse(annotations, (type, path) => {\n plain = setDeep(plain, path, v => untransformValue(v, type, superJson));\n }, version);\n return plain;\n}\nexport function applyReferentialEqualityAnnotations(plain, annotations, version) {\n const legacyPaths = enableLegacyPaths(version);\n function apply(identicalPaths, path) {\n const object = getDeep(plain, parsePath(path, legacyPaths));\n identicalPaths\n .map(path => parsePath(path, legacyPaths))\n .forEach(identicalObjectPath => {\n plain = setDeep(plain, identicalObjectPath, () => object);\n });\n }\n if (isArray(annotations)) {\n const [root, other] = annotations;\n root.forEach(identicalPath => {\n plain = setDeep(plain, parsePath(identicalPath, legacyPaths), () => plain);\n });\n if (other) {\n forEach(other, apply);\n }\n }\n else {\n forEach(annotations, apply);\n }\n return plain;\n}\nconst isDeep = (object, superJson) => isPlainObject(object) ||\n isArray(object) ||\n isMap(object) ||\n isSet(object) ||\n isError(object) ||\n isInstanceOfRegisteredClass(object, superJson);\nfunction addIdentity(object, path, identities) {\n const existingSet = identities.get(object);\n if (existingSet) {\n existingSet.push(path);\n }\n else {\n identities.set(object, [path]);\n }\n}\nexport function generateReferentialEqualityAnnotations(identitites, dedupe) {\n const result = {};\n let rootEqualityPaths = undefined;\n identitites.forEach(paths => {\n if (paths.length <= 1) {\n return;\n }\n // if we're not deduping, all of these objects continue existing.\n // putting the shortest path first makes it easier to parse for humans\n // if we're deduping though, only the first entry will still exist, so we can't do this optimisation.\n if (!dedupe) {\n paths = paths\n .map(path => path.map(String))\n .sort((a, b) => a.length - b.length);\n }\n const [representativePath, ...identicalPaths] = paths;\n if (representativePath.length === 0) {\n rootEqualityPaths = identicalPaths.map(stringifyPath);\n }\n else {\n result[stringifyPath(representativePath)] = identicalPaths.map(stringifyPath);\n }\n });\n if (rootEqualityPaths) {\n if (isEmptyObject(result)) {\n return [rootEqualityPaths];\n }\n else {\n return [rootEqualityPaths, result];\n }\n }\n else {\n return isEmptyObject(result) ? undefined : result;\n }\n}\nexport const walker = (object, identities, superJson, dedupe, path = [], objectsInThisPath = [], seenObjects = new Map()) => {\n const primitive = isPrimitive(object);\n if (!primitive) {\n addIdentity(object, path, identities);\n const seen = seenObjects.get(object);\n if (seen) {\n // short-circuit result if we've seen this object before\n return dedupe\n ? {\n transformedValue: null,\n }\n : seen;\n }\n }\n if (!isDeep(object, superJson)) {\n const transformed = transformValue(object, superJson);\n const result = transformed\n ? {\n transformedValue: transformed.value,\n annotations: [transformed.type],\n }\n : {\n transformedValue: object,\n };\n if (!primitive) {\n seenObjects.set(object, result);\n }\n return result;\n }\n if (includes(objectsInThisPath, object)) {\n // prevent circular references\n return {\n transformedValue: null,\n };\n }\n const transformationResult = transformValue(object, superJson);\n const transformed = transformationResult?.value ?? object;\n const transformedValue = isArray(transformed) ? [] : {};\n const innerAnnotations = {};\n forEach(transformed, (value, index) => {\n if (index === '__proto__' ||\n index === 'constructor' ||\n index === 'prototype') {\n throw new Error(`Detected property ${index}. This is a prototype pollution risk, please remove it from your object.`);\n }\n const recursiveResult = walker(value, identities, superJson, dedupe, [...path, index], [...objectsInThisPath, object], seenObjects);\n transformedValue[index] = recursiveResult.transformedValue;\n if (isArray(recursiveResult.annotations)) {\n innerAnnotations[escapeKey(index)] = recursiveResult.annotations;\n }\n else if (isPlainObject(recursiveResult.annotations)) {\n forEach(recursiveResult.annotations, (tree, key) => {\n innerAnnotations[escapeKey(index) + '.' + key] = tree;\n });\n }\n });\n const result = isEmptyObject(innerAnnotations)\n ? {\n transformedValue,\n annotations: !!transformationResult\n ? [transformationResult.type]\n : undefined,\n }\n : {\n transformedValue,\n annotations: !!transformationResult\n ? [transformationResult.type, innerAnnotations]\n : innerAnnotations,\n };\n if (!primitive) {\n seenObjects.set(object, result);\n }\n return result;\n};\n//# sourceMappingURL=plainer.js.map","/**\n * Assigns a prop the copy is keeping, preserving whether it was enumerable. Callers decide\n * _whether_ to keep a non-enumerable prop before getting here, so by this point the answer is\n * always yes.\n */\nfunction assignProp(carry, key, newVal, originalObject) {\n if (Object.prototype.propertyIsEnumerable.call(originalObject, key)) {\n carry[key] = newVal;\n return;\n }\n Object.defineProperty(carry, key, {\n value: newVal,\n enumerable: false,\n writable: true,\n configurable: true,\n });\n}\n/**\n * Whether `value` is an object literal, as opposed to a class instance, a built-in like `Date`, an\n * `arguments` object, or an object with a null prototype.\n *\n * The prototype check comes first because it is cheap and rejects almost everything; the tag check\n * is only reached by values that are about to be cloned anyway.\n */\nfunction isPlainObject(value) {\n return (Object.getPrototypeOf(value) === Object.prototype &&\n Object.prototype.toString.call(value) === '[object Object]');\n}\n/**\n * Returns the clone that `value` should be replaced with, and queues it to be filled in later.\n * Anything that isn't an array or a plain object is returned untouched.\n *\n * Reusing the clone already registered in `clones` is what makes circular and shared references\n * work: the placeholder is registered before its contents exist, so a reference back to an ancestor\n * resolves to it rather than walking forever.\n */\nfunction cloneRef(value, clones, sources, dests) {\n if (typeof value !== 'object' || value === null)\n return value;\n const array = Array.isArray(value);\n if (!array && !isPlainObject(value))\n return value;\n const existing = clones.get(value);\n if (existing !== undefined)\n return existing;\n const clone = array ? new Array(value.length) : {};\n clones.set(value, clone);\n sources.push(value);\n dests.push(clone);\n return clone;\n}\n/**\n * Copy (clone) an object and all its props recursively to get rid of any prop referenced of the\n * original object. Arrays and the objects inside them are cloned as well.\n *\n * Nesting depth is limited only by available memory, and circular references are reproduced in the\n * copy rather than followed forever. Two props pointing at the same object still point at one\n * shared copy afterwards.\n *\n * @param target Target can be anything\n * @param [options={}] See type {@link Options} for more details.\n *\n * - `{ props: ['key1'] }` will only copy the `key1` property. When using this you will need to cast\n * the return type manually (in order to keep the TS implementation in here simple I didn't\n * built a complex auto resolved type for those few cases people want to use this option)\n * - `{ nonenumerable: true }` will copy all non-enumerable properties. Default is `{}`\n *\n * @returns The target with replaced values\n */\nexport function copy(target, options = {}) {\n if (typeof target !== 'object' || target === null)\n return target;\n const clones = new Map();\n // An explicit work list rather than recursion, so nesting depth is bounded by the heap instead\n // of the call stack. Deeply nested input used to throw a RangeError here.\n const sources = [];\n const dests = [];\n const result = cloneRef(target, clones, sources, dests);\n const onlyProps = Array.isArray(options.props) ? options.props : undefined;\n const nonenumerable = options.nonenumerable === true;\n while (sources.length) {\n const source = sources.pop();\n const dest = dests.pop();\n if (Array.isArray(source)) {\n for (let i = 0; i < source.length; i++) {\n if (i in source)\n dest[i] = cloneRef(source[i], clones, sources, dests);\n }\n continue;\n }\n if (nonenumerable) {\n for (const key of Object.getOwnPropertyNames(source)) {\n // Skip __proto__ properties to prevent prototype pollution\n if (key === '__proto__')\n continue;\n if (onlyProps && !onlyProps.includes(key))\n continue;\n const newVal = cloneRef(source[key], clones, sources, dests);\n assignProp(dest, key, newVal, source);\n }\n }\n else {\n // `for in` skips non-enumerable keys and allocates no key array, which is why it beats\n // getOwnPropertyNames here. The own check is needed because it also walks the prototype.\n for (const key in source) {\n if (!Object.prototype.hasOwnProperty.call(source, key))\n continue;\n // Skip __proto__ properties to prevent prototype pollution\n if (key === '__proto__')\n continue;\n if (onlyProps && !onlyProps.includes(key))\n continue;\n dest[key] = cloneRef(source[key], clones, sources, dests);\n }\n }\n for (const key of Object.getOwnPropertySymbols(source)) {\n if (onlyProps && !onlyProps.includes(key))\n continue;\n if (!nonenumerable && !Object.prototype.propertyIsEnumerable.call(source, key))\n continue;\n const newVal = cloneRef(source[key], clones, sources, dests);\n assignProp(dest, key, newVal, source);\n }\n }\n return result;\n}\n","import { ClassRegistry } from './class-registry.js';\nimport { Registry } from './registry.js';\nimport { CustomTransformerRegistry, } from './custom-transformer-registry.js';\nimport { applyReferentialEqualityAnnotations, applyValueAnnotations, generateReferentialEqualityAnnotations, walker, } from './plainer.js';\nimport { copy } from 'copy-anything';\nclass SuperJSON {\n /**\n * @param dedupeReferentialEqualities If true, SuperJSON will make sure only one instance of referentially equal objects are serialized and the rest are replaced with `null`.\n */\n constructor({ dedupe = false, } = {}) {\n this.classRegistry = new ClassRegistry();\n this.symbolRegistry = new Registry(s => s.description ?? '');\n this.customTransformerRegistry = new CustomTransformerRegistry();\n this.allowedErrorProps = [];\n this.dedupe = dedupe;\n }\n serialize(object) {\n const identities = new Map();\n const output = walker(object, identities, this, this.dedupe);\n const res = {\n json: output.transformedValue,\n };\n if (output.annotations) {\n res.meta = {\n ...res.meta,\n values: output.annotations,\n };\n }\n const equalityAnnotations = generateReferentialEqualityAnnotations(identities, this.dedupe);\n if (equalityAnnotations) {\n res.meta = {\n ...res.meta,\n referentialEqualities: equalityAnnotations,\n };\n }\n if (res.meta)\n res.meta.v = 1;\n return res;\n }\n deserialize(payload, options) {\n const { json, meta } = payload;\n let result = options?.inPlace ? json : copy(json);\n if (meta?.values) {\n result = applyValueAnnotations(result, meta.values, meta.v ?? 0, this);\n }\n if (meta?.referentialEqualities) {\n result = applyReferentialEqualityAnnotations(result, meta.referentialEqualities, meta.v ?? 0);\n }\n return result;\n }\n stringify(object) {\n return JSON.stringify(this.serialize(object));\n }\n parse(string) {\n return this.deserialize(JSON.parse(string), { inPlace: true });\n }\n registerClass(v, options) {\n this.classRegistry.register(v, options);\n }\n registerSymbol(v, identifier) {\n this.symbolRegistry.register(v, identifier);\n }\n registerCustom(transformer, name) {\n this.customTransformerRegistry.register({\n name,\n ...transformer,\n });\n }\n allowErrorProps(...props) {\n this.allowedErrorProps.push(...props);\n }\n}\nSuperJSON.defaultInstance = new SuperJSON();\nSuperJSON.serialize = SuperJSON.defaultInstance.serialize.bind(SuperJSON.defaultInstance);\nSuperJSON.deserialize = SuperJSON.defaultInstance.deserialize.bind(SuperJSON.defaultInstance);\nSuperJSON.stringify = SuperJSON.defaultInstance.stringify.bind(SuperJSON.defaultInstance);\nSuperJSON.parse = SuperJSON.defaultInstance.parse.bind(SuperJSON.defaultInstance);\nSuperJSON.registerClass = SuperJSON.defaultInstance.registerClass.bind(SuperJSON.defaultInstance);\nSuperJSON.registerSymbol = SuperJSON.defaultInstance.registerSymbol.bind(SuperJSON.defaultInstance);\nSuperJSON.registerCustom = SuperJSON.defaultInstance.registerCustom.bind(SuperJSON.defaultInstance);\nSuperJSON.allowErrorProps = SuperJSON.defaultInstance.allowErrorProps.bind(SuperJSON.defaultInstance);\nexport default SuperJSON;\nexport { SuperJSON };\nexport const serialize = SuperJSON.serialize;\nexport const deserialize = SuperJSON.deserialize;\nexport const stringify = SuperJSON.stringify;\nexport const parse = SuperJSON.parse;\nexport const registerClass = SuperJSON.registerClass;\nexport const registerCustom = SuperJSON.registerCustom;\nexport const registerSymbol = SuperJSON.registerSymbol;\nexport const allowErrorProps = SuperJSON.allowErrorProps;\n//# sourceMappingURL=index.js.map","import type { Mastra } from '@mastra/core';\nimport type { RequestContext } from '@mastra/core/di';\nimport type { SystemMessage } from '@mastra/core/llm';\nimport type { StepWithComponent, Workflow, WorkflowInfo } from '@mastra/core/workflows';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\n\nimport { stringify } from 'superjson';\nimport { MASTRA_RESOURCE_ID_KEY } from './constants';\nimport { HTTPException } from './http-exception';\n\n/**\n * Convert any PublicSchema to a JSON Schema.\n * Uses toStandardSchema to handle all schema types (Zod v4, AI SDK Schema, JSON Schema).\n */\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) return undefined;\n\n // Convert any PublicSchema to StandardSchemaWithJSON, then extract JSON Schema\n const standardSchema = toStandardSchema(schema);\n return standardSchemaToJSONSchema(standardSchema);\n}\n\n/**\n * Normalizes a route path to ensure consistent formatting.\n * - Removes leading/trailing whitespace\n * - Validates no path traversal (..), query strings (?), or fragments (#)\n * - Collapses multiple consecutive slashes\n * - Removes trailing slashes\n * - Ensures leading slash (unless empty)\n *\n * @param path - The route path to normalize\n * @returns The normalized path (empty string for root paths)\n * @throws Error if path contains invalid characters\n */\nexport function normalizeRoutePath(path: string): string {\n let normalized = path.trim();\n if (normalized.includes('..') || normalized.includes('?') || normalized.includes('#')) {\n throw new Error(`Invalid route path: \"${path}\". Path cannot contain '..', '?', or '#'`);\n }\n normalized = normalized.replace(/\\/+/g, '/');\n if (normalized === '/' || normalized === '') {\n return '';\n }\n if (normalized.endsWith('/')) {\n normalized = normalized.slice(0, -1);\n }\n if (!normalized.startsWith('/')) {\n normalized = `/${normalized}`;\n }\n return normalized;\n}\n\nconst DEFAULT_STORED_RESOURCE_SCOPE_METADATA_KEY = 'mastra.resourceId';\n\nexport type StoredResourceScope = {\n metadataKey: string;\n value: string;\n};\n\nexport type StoredResourceLike = {\n metadata?: Record<string, unknown> | null;\n};\n\nexport async function getStoredResourceScope(\n mastra: Pick<Mastra, 'getServer'>,\n requestContext: RequestContext | undefined,\n): Promise<StoredResourceScope | undefined> {\n const scopeConfig = mastra?.getServer?.()?.storedResources?.scope;\n if (!scopeConfig) {\n return undefined;\n }\n\n const options = scopeConfig === true ? {} : scopeConfig;\n const metadataKey = options.metadataKey ?? DEFAULT_STORED_RESOURCE_SCOPE_METADATA_KEY;\n const user = requestContext?.get('user');\n const resolved = options.resolve\n ? await options.resolve({ requestContext, user })\n : (requestContext?.get(MASTRA_RESOURCE_ID_KEY) as string | undefined);\n\n if (!resolved) {\n if (options.requireScope === false) {\n return undefined;\n }\n throw new HTTPException(403, { message: 'Stored resource scope is required' });\n }\n\n return { metadataKey, value: resolved };\n}\n\nexport function scopeStoredResourceMetadata(\n metadata: Record<string, unknown> | undefined,\n scope: StoredResourceScope | undefined,\n): Record<string, unknown> | undefined {\n if (!scope) {\n return metadata;\n }\n\n return {\n ...(metadata ?? {}),\n [scope.metadataKey]: scope.value,\n };\n}\n\nexport function assertStoredResourceScope(\n resource: StoredResourceLike | null | undefined,\n scope: StoredResourceScope | undefined,\n): void {\n if (!resource || !scope) {\n return;\n }\n\n if (resource.metadata?.[scope.metadataKey] !== scope.value) {\n throw new HTTPException(404, { message: 'Stored resource not found' });\n }\n}\n\n/**\n * Check if a schema looks like a processor step schema.\n * Processor step schemas are discriminated unions on 'phase' with specific values.\n */\nfunction looksLikeProcessorStepSchema(schema: PublicSchema<unknown> | undefined): boolean {\n if (!schema) return false;\n\n try {\n const jsonSchema = standardSchemaToJSONSchema(toStandardSchema(schema)) as Record<string, unknown> | undefined;\n if (!jsonSchema) return false;\n\n // Check for discriminated union pattern: anyOf/oneOf with phase discriminator\n const variants = (jsonSchema.anyOf || jsonSchema.oneOf) as Array<Record<string, unknown>> | undefined;\n if (!variants || !Array.isArray(variants)) return false;\n\n // Check if all variants have a 'phase' property with processor phase values\n const processorPhases = new Set(['input', 'inputStep', 'outputStream', 'outputResult', 'outputStep', 'toolResult']);\n\n for (const variant of variants) {\n const properties = variant.properties as Record<string, unknown> | undefined;\n if (!properties?.phase) return false;\n\n const phaseSchema = properties.phase as Record<string, unknown>;\n const phaseConst = phaseSchema?.const as string | undefined;\n const phaseEnum = Array.isArray(phaseSchema?.enum) ? (phaseSchema.enum as string[]) : [];\n const phaseValues = phaseConst ? [phaseConst] : phaseEnum;\n\n if (!phaseValues.length || phaseValues.some(phase => !processorPhases.has(phase))) {\n return false;\n }\n }\n\n return variants.length > 0;\n } catch {\n return false;\n }\n}\n\nfunction getSteps(steps: Record<string, StepWithComponent>, path?: string) {\n return Object.entries(steps).reduce<any>((acc, [key, step]) => {\n const fullKey = path ? `${path}.${key}` : key;\n acc[fullKey] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(schemaToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(schemaToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(schemaToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(schemaToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(schemaToJsonSchema(step.stateSchema)) : undefined,\n isWorkflow: step.component === 'WORKFLOW',\n component: step.component,\n metadata: step.metadata,\n };\n\n if (step.component === 'WORKFLOW' && step.steps) {\n const nestedSteps = getSteps(step.steps, fullKey) || {};\n acc = { ...acc, ...nestedSteps };\n }\n\n return acc;\n }, {});\n}\n\nexport function getWorkflowInfo(workflow: Workflow, partial: boolean = false): WorkflowInfo {\n if (partial) {\n // Return minimal info in partial mode\n return {\n name: workflow.name,\n description: workflow.description,\n metadata: workflow.metadata,\n stepCount: Object.keys(workflow.steps).length,\n stepGraph: workflow.serializedStepGraph,\n options: workflow.options,\n steps: {},\n allSteps: {},\n inputSchema: undefined,\n outputSchema: undefined,\n stateSchema: undefined,\n requestContextSchema: undefined,\n origin: workflow.origin,\n } as WorkflowInfo;\n }\n\n return {\n name: workflow.name,\n description: workflow.description,\n metadata: workflow.metadata,\n origin: workflow.origin,\n steps: Object.entries(workflow.steps).reduce<any>((acc, [key, step]) => {\n acc[key] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(schemaToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(schemaToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(schemaToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(schemaToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(schemaToJsonSchema(step.stateSchema)) : undefined,\n requestContextSchema: step.requestContextSchema\n ? stringify(schemaToJsonSchema(step.requestContextSchema))\n : undefined,\n component: step.component,\n metadata: step.metadata,\n };\n return acc;\n }, {}),\n allSteps: getSteps(workflow.steps) || {},\n stepGraph: workflow.serializedStepGraph,\n inputSchema: workflow.inputSchema ? stringify(schemaToJsonSchema(workflow.inputSchema)) : undefined,\n outputSchema: workflow.outputSchema ? stringify(schemaToJsonSchema(workflow.outputSchema)) : undefined,\n stateSchema: workflow.stateSchema ? stringify(schemaToJsonSchema(workflow.stateSchema)) : undefined,\n requestContextSchema: workflow.requestContextSchema\n ? stringify(schemaToJsonSchema(workflow.requestContextSchema))\n : undefined,\n options: workflow.options,\n isProcessorWorkflow: workflow.type === 'processor' || looksLikeProcessorStepSchema(workflow.inputSchema),\n };\n}\n\n/**\n * Workflow Registry for temporarily registering additional workflows\n * that are not part of the user's Mastra instance (e.g., internal template workflows)\n */\nexport class WorkflowRegistry {\n private static additionalWorkflows: Record<string, Workflow> = {};\n\n /**\n * Register a workflow temporarily\n */\n static registerTemporaryWorkflow(id: string, workflow: Workflow): void {\n this.additionalWorkflows[id] = workflow;\n }\n\n /**\n * Register all workflows from map\n */\n static registerTemporaryWorkflows(\n workflows: Record<string, Workflow>,\n mastra?: Mastra<any, any, any, any, any, any, any, any, any>,\n ): void {\n for (const [id, workflow] of Object.entries(workflows)) {\n // Register Mastra instance with the workflow if provided\n if (mastra) {\n workflow.__registerMastra(mastra);\n workflow.__registerPrimitives({\n logger: mastra.getLogger(),\n storage: mastra.getStorage(),\n agents: mastra.listAgents(),\n tts: mastra.getTTS(),\n vectors: mastra.listVectors(),\n });\n }\n this.additionalWorkflows[id] = workflow;\n }\n }\n\n /**\n * Get a workflow by ID from the registry (returns undefined if not found)\n */\n static getWorkflow(workflowId: string): Workflow | undefined {\n return this.additionalWorkflows[workflowId];\n }\n\n /**\n * Get all workflows from the registry\n */\n static getAllWorkflows(): Record<string, Workflow> {\n return { ...this.additionalWorkflows };\n }\n\n /**\n * Clean up a temporary workflow\n */\n static cleanupTemporaryWorkflow(workflowId: string): void {\n delete this.additionalWorkflows[workflowId];\n }\n /**\n * Clean up all registered workflows\n */\n static cleanup(): void {\n // Clear all workflows (since we register all agent-builder workflows each time)\n this.additionalWorkflows = {};\n }\n\n /**\n * Check if a workflow ID is a valid agent-builder workflow\n */\n static isAgentBuilderWorkflow(workflowId: string): boolean {\n return workflowId in this.additionalWorkflows;\n }\n\n /**\n * Get all registered temporary workflow IDs (for debugging)\n */\n static getRegisteredWorkflowIds(): string[] {\n return Object.keys(this.additionalWorkflows);\n }\n}\n\n/**\n * Converts a string to a URL-friendly slug.\n * Lowercases, replaces non-alphanumeric characters with hyphens,\n * collapses consecutive hyphens, and trims leading/trailing hyphens.\n */\nexport function toSlug(input: string): string {\n return input\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '');\n}\n\nexport function convertInstructionsToString(message: SystemMessage): string {\n if (!message) {\n return '';\n }\n\n if (typeof message === 'string') {\n return message;\n }\n\n if (Array.isArray(message)) {\n return message\n .map(m => {\n if (typeof m === 'string') {\n return m;\n }\n // Safely extract content from message objects\n return typeof m.content === 'string' ? m.content : '';\n })\n .filter(content => content) // Remove empty strings\n .join('\\n');\n }\n\n // Handle single message object - safely extract content\n return typeof message.content === 'string' ? message.content : '';\n}\n"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11],"mappings":";;;;AAAA,IAAa,kBAAb,MAA6B;CACzB,cAAc;EACV,KAAK,6BAAa,IAAI,IAAI;EAC1B,KAAK,6BAAa,IAAI,IAAI;CAC9B;CACA,IAAI,KAAK,OAAO;EACZ,KAAK,WAAW,IAAI,KAAK,KAAK;EAC9B,KAAK,WAAW,IAAI,OAAO,GAAG;CAClC;CACA,SAAS,KAAK;EACV,OAAO,KAAK,WAAW,IAAI,GAAG;CAClC;CACA,WAAW,OAAO;EACd,OAAO,KAAK,WAAW,IAAI,KAAK;CACpC;CACA,QAAQ;EACJ,KAAK,WAAW,MAAM;EACtB,KAAK,WAAW,MAAM;CAC1B;AACJ;;AClBA,IAAa,WAAb,MAAsB;CAClB,YAAY,oBAAoB;EAC5B,KAAK,qBAAqB;EAC1B,KAAK,KAAK,IAAI,gBAAgB;CAClC;CACA,SAAS,OAAO,YAAY;EACxB,IAAI,KAAK,GAAG,WAAW,KAAK,GACxB;EAEJ,IAAI,CAAC,YACD,aAAa,KAAK,mBAAmB,KAAK;EAE9C,KAAK,GAAG,IAAI,YAAY,KAAK;CACjC;CACA,QAAQ;EACJ,KAAK,GAAG,MAAM;CAClB;CACA,cAAc,OAAO;EACjB,OAAO,KAAK,GAAG,WAAW,KAAK;CACnC;CACA,SAAS,YAAY;EACjB,OAAO,KAAK,GAAG,SAAS,UAAU;CACtC;AACJ;;ACvBA,IAAa,gBAAb,cAAmC,SAAS;CACxC,cAAc;EACV,OAAM,MAAK,EAAE,IAAI;EACjB,KAAK,sCAAsB,IAAI,IAAI;CACvC;CACA,SAAS,OAAO,SAAS;EACrB,IAAI,OAAO,YAAY,UAAU;GAC7B,IAAI,QAAQ,YACR,KAAK,oBAAoB,IAAI,OAAO,QAAQ,UAAU;GAE1D,MAAM,SAAS,OAAO,QAAQ,UAAU;EAC5C,OAEI,MAAM,SAAS,OAAO,OAAO;CAErC;CACA,gBAAgB,OAAO;EACnB,OAAO,KAAK,oBAAoB,IAAI,KAAK;CAC7C;AACJ;;ACpBA,SAAS,YAAY,QAAQ;CACzB,IAAI,YAAY,QAEZ,OAAO,OAAO,OAAO,MAAM;CAE/B,MAAM,SAAS,CAAC;CAEhB,KAAK,MAAM,OAAO,QACd,IAAI,OAAO,eAAe,GAAG,GACzB,OAAO,KAAK,OAAO,IAAI;CAG/B,OAAO;AACX;AACA,SAAgB,KAAK,QAAQ,WAAW;CACpC,MAAM,SAAS,YAAY,MAAM;CACjC,IAAI,UAAU,QAEV,OAAO,OAAO,KAAK,SAAS;CAEhC,MAAM,iBAAiB;CACvB,KAAK,IAAI,IAAI,GAAG,IAAI,eAAe,QAAQ,KAAK;EAC5C,MAAM,QAAQ,eAAe;EAC7B,IAAI,UAAU,KAAK,GACf,OAAO;CAEf;AAEJ;AACA,SAAgB,QAAQ,QAAQ,KAAK;CACjC,OAAO,QAAQ,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,WAAW,IAAI,OAAO,GAAG,CAAC;AACpE;AACA,SAAgB,SAAS,KAAK,OAAO;CACjC,OAAO,IAAI,QAAQ,KAAK,MAAM;AAClC;AACA,SAAgB,QAAQ,QAAQ,WAAW;CACvC,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;EACpC,MAAM,QAAQ,OAAO;EACrB,IAAI,UAAU,KAAK,GACf,OAAO;CAEf;AAEJ;;AC1CA,IAAa,4BAAb,MAAuC;CACnC,cAAc;EACV,KAAK,cAAc,CAAC;CACxB;CACA,SAAS,aAAa;EAClB,KAAK,YAAY,YAAY,QAAQ;CACzC;CACA,eAAe,GAAG;EACd,OAAO,KAAK,KAAK,cAAa,gBAAe,YAAY,aAAa,CAAC,CAAC;CAC5E;CACA,WAAW,MAAM;EACb,OAAO,KAAK,YAAY;CAC5B;AACJ;;ACdA,MAAM,WAAW,YAAY,OAAO,UAAU,SAAS,KAAK,OAAO,CAAC,CAAC,MAAM,GAAG,EAAE;AAChF,MAAa,eAAe,YAAY,OAAO,YAAY;AAC3D,MAAa,UAAU,YAAY,YAAY;AAC/C,MAAaA,mBAAiB,YAAY;CACtC,IAAI,OAAO,YAAY,YAAY,YAAY,MAC3C,OAAO;CACX,IAAI,YAAY,OAAO,WACnB,OAAO;CACX,IAAI,OAAO,eAAe,OAAO,MAAM,MACnC,OAAO;CACX,OAAO,OAAO,eAAe,OAAO,MAAM,OAAO;AACrD;AACA,MAAa,iBAAiB,YAAYA,gBAAc,OAAO,KAAK,OAAO,KAAK,OAAO,CAAC,CAAC,WAAW;AACpG,MAAa,WAAW,YAAY,MAAM,QAAQ,OAAO;AACzD,MAAa,YAAY,YAAY,OAAO,YAAY;AACxD,MAAa,YAAY,YAAY,OAAO,YAAY,YAAY,CAAC,MAAM,OAAO;AAClF,MAAa,aAAa,YAAY,OAAO,YAAY;AACzD,MAAa,YAAY,YAAY,mBAAmB;AACxD,MAAa,SAAS,YAAY,mBAAmB;AACrD,MAAa,SAAS,YAAY,mBAAmB;AACrD,MAAa,YAAY,YAAY,QAAQ,OAAO,MAAM;AAC1D,MAAa,UAAU,YAAY,mBAAmB,QAAQ,CAAC,MAAM,QAAQ,QAAQ,CAAC;AACtF,MAAa,WAAW,YAAY,mBAAmB;AACvD,MAAa,cAAc,YAAY,OAAO,YAAY,YAAY,MAAM,OAAO;AACnF,MAAa,eAAe,YAAY,UAAU,OAAO,KACrD,OAAO,OAAO,KACd,YAAY,OAAO,KACnB,SAAS,OAAO,KAChB,SAAS,OAAO,KAChB,SAAS,OAAO;AACpB,MAAa,YAAY,YAAY,OAAO,YAAY;AACxD,MAAa,cAAc,YAAY,YAAY,YAAY,YAAY;AAC3E,MAAa,gBAAgB,YAAY,YAAY,OAAO,OAAO,KAAK,EAAE,mBAAmB;AAC7F,MAAa,SAAS,YAAY,mBAAmB;;ACjCrD,MAAa,aAAa,QAAQ,IAAI,QAAQ,OAAO,MAAM,CAAC,CAAC,QAAQ,OAAO,KAAK;AACjF,MAAa,iBAAiB,SAAS,KAClC,IAAI,MAAM,CAAC,CACX,IAAI,SAAS,CAAC,CACd,KAAK,GAAG;AACb,MAAa,aAAa,QAAQ,gBAAgB;CAC9C,MAAM,SAAS,CAAC;CAChB,IAAI,UAAU;CACd,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;EACpC,IAAI,OAAO,OAAO,OAAO,CAAC;EAC1B,IAAI,CAAC,eAAe,SAAS,MAAM;GAC/B,MAAM,UAAU,OAAO,OAAO,IAAI,CAAC;GACnC,IAAI,YAAY,MAAM;IAClB,WAAW;IACX;IACA;GACJ,OACK,IAAI,YAAY,KACjB,MAAM,MAAM,cAAc;EAElC;EAEA,IADqB,SAAS,QAAQ,OAAO,OAAO,IAAI,CAAC,MAAM,KAC7C;GACd,WAAW;GACX;GACA;EACJ;EAEA,IADuB,SAAS,KACZ;GAChB,OAAO,KAAK,OAAO;GACnB,UAAU;GACV;EACJ;EACA,WAAW;CACf;CACA,MAAM,cAAc;CACpB,OAAO,KAAK,WAAW;CACvB,OAAO;AACX;;ACpCA,SAAS,qBAAqB,cAAc,YAAY,WAAW,aAAa;CAC5E,OAAO;EACH;EACA;EACA;EACA;CACJ;AACJ;AACA,MAAM,cAAc;CAChB,qBAAqB,aAAa,mBAAmB,YAAY,KAAA,CAAS;CAC1E,qBAAqB,UAAU,WAAU,MAAK,EAAE,SAAS,IAAG,MAAK;EAC7D,IAAI,OAAO,WAAW,aAClB,OAAO,OAAO,CAAC;EAEnB,QAAQ,MAAM,+BAA+B;EAC7C,OAAO;CACX,CAAC;CACD,qBAAqB,QAAQ,SAAQ,MAAK,EAAE,YAAY,IAAG,MAAK,IAAI,KAAK,CAAC,CAAC;CAC3E,qBAAqB,SAAS,UAAU,GAAG,cAAc;EACrD,MAAM,YAAY;GACd,MAAM,EAAE;GACR,SAAS,EAAE;EACf;EACA,IAAI,WAAW,GACX,UAAU,QAAQ,EAAE;EAExB,UAAU,kBAAkB,SAAQ,SAAQ;GACxC,UAAU,QAAQ,EAAE;EACxB,CAAC;EACD,OAAO;CACX,IAAI,GAAG,cAAc;EACjB,MAAM,IAAI,IAAI,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC;EACjD,EAAE,OAAO,EAAE;EACX,EAAE,QAAQ,EAAE;EACZ,UAAU,kBAAkB,SAAQ,SAAQ;GACxC,EAAE,QAAQ,EAAE;EAChB,CAAC;EACD,OAAO;CACX,CAAC;CACD,qBAAqB,UAAU,WAAU,MAAK,KAAK,IAAG,UAAS;EAC3D,MAAM,OAAO,MAAM,MAAM,GAAG,MAAM,YAAY,GAAG,CAAC;EAClD,MAAM,QAAQ,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC;EACpD,OAAO,IAAI,OAAO,MAAM,KAAK;CACjC,CAAC;CACD,qBAAqB,OAAO,QAG5B,MAAK,CAAC,GAAG,EAAE,OAAO,CAAC,IAAG,MAAK,IAAI,IAAI,CAAC,CAAC;CACrC,qBAAqB,OAAO,QAAO,MAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAG,MAAK,IAAI,IAAI,CAAC,CAAC;CACzE,sBAAsB,MAAM,WAAW,CAAC,KAAK,WAAW,CAAC,GAAG,WAAU,MAAK;EACvE,IAAI,WAAW,CAAC,GACZ,OAAO;EAEX,IAAI,IAAI,GACJ,OAAO;OAGP,OAAO;CAEf,GAAG,MAAM;CACT,sBAAsB,MAAM,MAAM,KAAK,IAAI,MAAM,WAAW,gBAAgB;EACxE,OAAO;CACX,GAAG,MAAM;CACT,qBAAqB,OAAO,QAAO,MAAK,EAAE,SAAS,IAAG,MAAK,IAAI,IAAI,CAAC,CAAC;AACzE;AACA,SAAS,wBAAwB,cAAc,YAAY,WAAW,aAAa;CAC/E,OAAO;EACH;EACA;EACA;EACA;CACJ;AACJ;AACA,MAAM,aAAa,yBAAyB,GAAG,cAAc;CACzD,IAAI,SAAS,CAAC,GAEV,OAAO,CADe,CAAC,UAAU,eAAe,cAAc,CAAC;CAGnE,OAAO;AACX,IAAI,GAAG,cAAc;CAEjB,OAAO,CAAC,UADW,UAAU,eAAe,cAAc,CAC/B,CAAC;AAChC,IAAG,MAAK,EAAE,cAAc,GAAG,GAAG,cAAc;CACxC,MAAM,QAAQ,UAAU,eAAe,SAAS,EAAE,EAAE;CACpD,IAAI,CAAC,OACD,MAAM,IAAI,MAAM,sCAAsC;CAE1D,OAAO;AACX,CAAC;AACD,MAAM,oBAAoB;CACtB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACJ,CAAC,CAAC,QAAQ,KAAK,SAAS;CACpB,IAAI,KAAK,QAAQ;CACjB,OAAO;AACX,GAAG,CAAC,CAAC;AACL,MAAM,iBAAiB,wBAAwB,eAAc,MAAK,CAAC,eAAe,EAAE,YAAY,IAAI,IAAG,MAAK,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM;CAC1H,MAAM,OAAO,kBAAkB,EAAE;CACjC,IAAI,CAAC,MACD,MAAM,IAAI,MAAM,2CAA2C;CAE/D,OAAO,IAAI,KAAK,CAAC;AACrB,CAAC;AACD,SAAgB,4BAA4B,gBAAgB,WAAW;CACnE,IAAI,gBAAgB,aAEhB,OAAO,CADe,CAAC,UAAU,cAAc,cAAc,eAAe,WAAW;CAG3F,OAAO;AACX;AACA,MAAM,YAAY,wBAAwB,8BAA8B,OAAO,cAAc;CAEzF,OAAO,CAAC,SADW,UAAU,cAAc,cAAc,MAAM,WACrC,CAAC;AAC/B,IAAI,OAAO,cAAc;CACrB,MAAM,eAAe,UAAU,cAAc,gBAAgB,MAAM,WAAW;CAC9E,IAAI,CAAC,cACD,OAAO,EAAE,GAAG,MAAM;CAEtB,MAAM,SAAS,CAAC;CAChB,aAAa,SAAQ,SAAQ;EACzB,OAAO,QAAQ,MAAM;CACzB,CAAC;CACD,OAAO;AACX,IAAI,GAAG,GAAG,cAAc;CACpB,MAAM,QAAQ,UAAU,cAAc,SAAS,EAAE,EAAE;CACnD,IAAI,CAAC,OACD,MAAM,IAAI,MAAM,wCAAwC,EAAE,GAAG,kFAAkF;CAEnJ,OAAO,OAAO,OAAO,OAAO,OAAO,MAAM,SAAS,GAAG,CAAC;AAC1D,CAAC;AACD,MAAM,aAAa,yBAAyB,OAAO,cAAc;CAC7D,OAAO,CAAC,CAAC,UAAU,0BAA0B,eAAe,KAAK;AACrE,IAAI,OAAO,cAAc;CAErB,OAAO,CAAC,UADY,UAAU,0BAA0B,eAAe,KAC3C,CAAC,CAAC,IAAI;AACtC,IAAI,OAAO,cAAc;CAErB,OADoB,UAAU,0BAA0B,eAAe,KACtD,CAAC,CAAC,UAAU,KAAK;AACtC,IAAI,GAAG,GAAG,cAAc;CACpB,MAAM,cAAc,UAAU,0BAA0B,WAAW,EAAE,EAAE;CACvE,IAAI,CAAC,aACD,MAAM,IAAI,MAAM,4CAA4C;CAEhE,OAAO,YAAY,YAAY,CAAC;AACpC,CAAC;AACD,MAAM,iBAAiB;CAAC;CAAW;CAAY;CAAY;AAAc;AACzE,MAAa,kBAAkB,OAAO,cAAc;CAChD,MAAM,0BAA0B,QAAQ,iBAAgB,SAAQ,KAAK,aAAa,OAAO,SAAS,CAAC;CACnG,IAAI,yBACA,OAAO;EACH,OAAO,wBAAwB,UAAU,OAAO,SAAS;EACzD,MAAM,wBAAwB,WAAW,OAAO,SAAS;CAC7D;CAEJ,MAAM,uBAAuB,QAAQ,cAAa,SAAQ,KAAK,aAAa,OAAO,SAAS,CAAC;CAC7F,IAAI,sBACA,OAAO;EACH,OAAO,qBAAqB,UAAU,OAAO,SAAS;EACtD,MAAM,qBAAqB;CAC/B;AAGR;AACA,MAAM,0BAA0B,CAAC;AACjC,YAAY,SAAQ,SAAQ;CACxB,wBAAwB,KAAK,cAAc;AAC/C,CAAC;AACD,MAAa,oBAAoB,MAAM,MAAM,cAAc;CACvD,IAAI,QAAQ,IAAI,GACZ,QAAQ,KAAK,IAAb;EACI,KAAK,UACD,OAAO,WAAW,YAAY,MAAM,MAAM,SAAS;EACvD,KAAK,SACD,OAAO,UAAU,YAAY,MAAM,MAAM,SAAS;EACtD,KAAK,UACD,OAAO,WAAW,YAAY,MAAM,MAAM,SAAS;EACvD,KAAK,eACD,OAAO,eAAe,YAAY,MAAM,MAAM,SAAS;EAC3D,SACI,MAAM,IAAI,MAAM,6BAA6B,IAAI;CACzD;MAEC;EACD,MAAM,iBAAiB,wBAAwB;EAC/C,IAAI,CAAC,gBACD,MAAM,IAAI,MAAM,6BAA6B,IAAI;EAErD,OAAO,eAAe,YAAY,MAAM,SAAS;CACrD;AACJ;;ACpMA,MAAM,aAAa,OAAO,MAAM;CAC5B,IAAI,IAAI,MAAM,MACV,MAAM,IAAI,MAAM,qBAAqB;CACzC,MAAM,OAAO,MAAM,KAAK;CACxB,OAAO,IAAI,GAAG;EACV,KAAK,KAAK;EACV;CACJ;CACA,OAAO,KAAK,KAAK,CAAC,CAAC;AACvB;AACA,SAAS,aAAa,MAAM;CACxB,IAAI,SAAS,MAAM,WAAW,GAC1B,MAAM,IAAI,MAAM,wCAAwC;CAE5D,IAAI,SAAS,MAAM,WAAW,GAC1B,MAAM,IAAI,MAAM,wCAAwC;CAE5D,IAAI,SAAS,MAAM,aAAa,GAC5B,MAAM,IAAI,MAAM,0CAA0C;AAElE;AACA,MAAa,WAAW,QAAQ,SAAS;CACrC,aAAa,IAAI;CACjB,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;EAClC,MAAM,MAAM,KAAK;EACjB,IAAI,MAAM,MAAM,GACZ,SAAS,UAAU,QAAQ,CAAC,GAAG;OAE9B,IAAI,MAAM,MAAM,GAAG;GACpB,MAAM,MAAM,CAAC;GACb,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ;GACxC,MAAM,WAAW,UAAU,QAAQ,GAAG;GACtC,QAAQ,MAAR;IACI,KAAK;KACD,SAAS;KACT;IACJ,KAAK,SACD,SAAS,OAAO,IAAI,QAAQ;GAEpC;EACJ,OAEI,SAAS,OAAO;CAExB;CACA,OAAO;AACX;AACA,MAAa,WAAW,QAAQ,MAAM,WAAW;CAC7C,aAAa,IAAI;CACjB,IAAI,KAAK,WAAW,GAChB,OAAO,OAAO,MAAM;CAExB,IAAI,SAAS;CACb,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,SAAS,GAAG,KAAK;EACtC,MAAM,MAAM,KAAK;EACjB,IAAI,QAAQ,MAAM,GAAG;GACjB,MAAM,QAAQ,CAAC;GACf,SAAS,OAAO;EACpB,OACK,IAAIC,gBAAc,MAAM,GACzB,SAAS,OAAO;OAEf,IAAI,MAAM,MAAM,GAAG;GACpB,MAAM,MAAM,CAAC;GACb,SAAS,UAAU,QAAQ,GAAG;EAClC,OACK,IAAI,MAAM,MAAM,GAAG;GAEpB,IADc,MAAM,KAAK,SAAS,GAE9B;GAEJ,MAAM,MAAM,CAAC;GACb,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ;GACxC,MAAM,WAAW,UAAU,QAAQ,GAAG;GACtC,QAAQ,MAAR;IACI,KAAK;KACD,SAAS;KACT;IACJ,KAAK,SACD,SAAS,OAAO,IAAI,QAAQ;GAEpC;EACJ;CACJ;CACA,MAAM,UAAU,KAAK,KAAK,SAAS;CACnC,IAAI,QAAQ,MAAM,GACd,OAAO,CAAC,WAAW,OAAO,OAAO,CAAC,QAAQ;MAEzC,IAAIA,gBAAc,MAAM,GACzB,OAAO,WAAW,OAAO,OAAO,QAAQ;CAE5C,IAAI,MAAM,MAAM,GAAG;EACf,MAAM,WAAW,UAAU,QAAQ,CAAC,OAAO;EAC3C,MAAM,WAAW,OAAO,QAAQ;EAChC,IAAI,aAAa,UAAU;GACvB,OAAO,OAAO,QAAQ;GACtB,OAAO,IAAI,QAAQ;EACvB;CACJ;CACA,IAAI,MAAM,MAAM,GAAG;EACf,MAAM,MAAM,CAAC,KAAK,KAAK,SAAS;EAChC,MAAM,WAAW,UAAU,QAAQ,GAAG;EAEtC,QADa,CAAC,YAAY,IAAI,QAAQ,SACtC;GACI,KAAK,OAAO;IACR,MAAM,SAAS,OAAO,QAAQ;IAC9B,OAAO,IAAI,QAAQ,OAAO,IAAI,QAAQ,CAAC;IACvC,IAAI,WAAW,UACX,OAAO,OAAO,QAAQ;IAE1B;GACJ;GACA,KAAK,SACD,OAAO,IAAI,UAAU,OAAO,OAAO,IAAI,QAAQ,CAAC,CAAC;EAGzD;CACJ;CACA,OAAO;AACX;;ACnHA,MAAM,qBAAqB,YAAY,UAAU;AACjD,SAAS,SAAS,MAAM,QAAQ,SAAS,SAAS,CAAC,GAAG;CAClD,IAAI,CAAC,MACD;CAEJ,MAAM,cAAc,kBAAkB,OAAO;CAC7C,IAAI,CAAC,QAAQ,IAAI,GAAG;EAChB,QAAQ,OAAO,SAAS,QAAQ,SAAS,SAAS,QAAQ,SAAS,CAC/D,GAAG,QACH,GAAG,UAAU,KAAK,WAAW,CACjC,CAAC,CAAC;EACF;CACJ;CACA,MAAM,CAAC,WAAW,YAAY;CAC9B,IAAI,UACA,QAAQ,WAAW,OAAO,QAAQ;EAC9B,SAAS,OAAO,QAAQ,SAAS,CAC7B,GAAG,QACH,GAAG,UAAU,KAAK,WAAW,CACjC,CAAC;CACL,CAAC;CAEL,OAAO,WAAW,MAAM;AAC5B;AACA,SAAgB,sBAAsB,OAAO,aAAa,SAAS,WAAW;CAC1E,SAAS,cAAc,MAAM,SAAS;EAClC,QAAQ,QAAQ,OAAO,OAAM,MAAK,iBAAiB,GAAG,MAAM,SAAS,CAAC;CAC1E,GAAG,OAAO;CACV,OAAO;AACX;AACA,SAAgB,oCAAoC,OAAO,aAAa,SAAS;CAC7E,MAAM,cAAc,kBAAkB,OAAO;CAC7C,SAAS,MAAM,gBAAgB,MAAM;EACjC,MAAM,SAAS,QAAQ,OAAO,UAAU,MAAM,WAAW,CAAC;EAC1D,eACK,KAAI,SAAQ,UAAU,MAAM,WAAW,CAAC,CAAC,CACzC,SAAQ,wBAAuB;GAChC,QAAQ,QAAQ,OAAO,2BAA2B,MAAM;EAC5D,CAAC;CACL;CACA,IAAI,QAAQ,WAAW,GAAG;EACtB,MAAM,CAAC,MAAM,SAAS;EACtB,KAAK,SAAQ,kBAAiB;GAC1B,QAAQ,QAAQ,OAAO,UAAU,eAAe,WAAW,SAAS,KAAK;EAC7E,CAAC;EACD,IAAI,OACA,QAAQ,OAAO,KAAK;CAE5B,OAEI,QAAQ,aAAa,KAAK;CAE9B,OAAO;AACX;AACA,MAAM,UAAU,QAAQ,cAAcC,gBAAc,MAAM,KACtD,QAAQ,MAAM,KACd,MAAM,MAAM,KACZ,MAAM,MAAM,KACZ,QAAQ,MAAM,KACd,4BAA4B,QAAQ,SAAS;AACjD,SAAS,YAAY,QAAQ,MAAM,YAAY;CAC3C,MAAM,cAAc,WAAW,IAAI,MAAM;CACzC,IAAI,aACA,YAAY,KAAK,IAAI;MAGrB,WAAW,IAAI,QAAQ,CAAC,IAAI,CAAC;AAErC;AACA,SAAgB,uCAAuC,aAAa,QAAQ;CACxE,MAAM,SAAS,CAAC;CAChB,IAAI,oBAAoB,KAAA;CACxB,YAAY,SAAQ,UAAS;EACzB,IAAI,MAAM,UAAU,GAChB;EAKJ,IAAI,CAAC,QACD,QAAQ,MACH,KAAI,SAAQ,KAAK,IAAI,MAAM,CAAC,CAAC,CAC7B,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM;EAE3C,MAAM,CAAC,oBAAoB,GAAG,kBAAkB;EAChD,IAAI,mBAAmB,WAAW,GAC9B,oBAAoB,eAAe,IAAI,aAAa;OAGpD,OAAO,cAAc,kBAAkB,KAAK,eAAe,IAAI,aAAa;CAEpF,CAAC;CACD,IAAI,mBAAmB;EACnB,IAAI,cAAc,MAAM,GACpB,OAAO,CAAC,iBAAiB;OAGzB,OAAO,CAAC,mBAAmB,MAAM;CAEzC,OAEI,OAAO,cAAc,MAAM,IAAI,KAAA,IAAY;AAEnD;AACA,MAAa,UAAU,QAAQ,YAAY,WAAW,QAAQ,OAAO,CAAC,GAAG,oBAAoB,CAAC,GAAG,8BAAc,IAAI,IAAI,MAAM;CACzH,MAAM,YAAY,YAAY,MAAM;CACpC,IAAI,CAAC,WAAW;EACZ,YAAY,QAAQ,MAAM,UAAU;EACpC,MAAM,OAAO,YAAY,IAAI,MAAM;EACnC,IAAI,MAEA,OAAO,SACD,EACE,kBAAkB,KACtB,IACE;CAEd;CACA,IAAI,CAAC,OAAO,QAAQ,SAAS,GAAG;EAC5B,MAAM,cAAc,eAAe,QAAQ,SAAS;EACpD,MAAM,SAAS,cACT;GACE,kBAAkB,YAAY;GAC9B,aAAa,CAAC,YAAY,IAAI;EAClC,IACE,EACE,kBAAkB,OACtB;EACJ,IAAI,CAAC,WACD,YAAY,IAAI,QAAQ,MAAM;EAElC,OAAO;CACX;CACA,IAAI,SAAS,mBAAmB,MAAM,GAElC,OAAO,EACH,kBAAkB,KACtB;CAEJ,MAAM,uBAAuB,eAAe,QAAQ,SAAS;CAC7D,MAAM,cAAc,sBAAsB,SAAS;CACnD,MAAM,mBAAmB,QAAQ,WAAW,IAAI,CAAC,IAAI,CAAC;CACtD,MAAM,mBAAmB,CAAC;CAC1B,QAAQ,cAAc,OAAO,UAAU;EACnC,IAAI,UAAU,eACV,UAAU,iBACV,UAAU,aACV,MAAM,IAAI,MAAM,qBAAqB,MAAM,yEAAyE;EAExH,MAAM,kBAAkB,OAAO,OAAO,YAAY,WAAW,QAAQ,CAAC,GAAG,MAAM,KAAK,GAAG,CAAC,GAAG,mBAAmB,MAAM,GAAG,WAAW;EAClI,iBAAiB,SAAS,gBAAgB;EAC1C,IAAI,QAAQ,gBAAgB,WAAW,GACnC,iBAAiB,UAAU,KAAK,KAAK,gBAAgB;OAEpD,IAAIA,gBAAc,gBAAgB,WAAW,GAC9C,QAAQ,gBAAgB,cAAc,MAAM,QAAQ;GAChD,iBAAiB,UAAU,KAAK,IAAI,MAAM,OAAO;EACrD,CAAC;CAET,CAAC;CACD,MAAM,SAAS,cAAc,gBAAgB,IACvC;EACE;EACA,aAAa,CAAC,CAAC,uBACT,CAAC,qBAAqB,IAAI,IAC1B,KAAA;CACV,IACE;EACE;EACA,aAAa,CAAC,CAAC,uBACT,CAAC,qBAAqB,MAAM,gBAAgB,IAC5C;CACV;CACJ,IAAI,CAAC,WACD,YAAY,IAAI,QAAQ,MAAM;CAElC,OAAO;AACX;;;;;;;AClLA,SAAS,WAAW,OAAO,KAAK,QAAQ,gBAAgB;CACpD,IAAI,OAAO,UAAU,qBAAqB,KAAK,gBAAgB,GAAG,GAAG;EACjE,MAAM,OAAO;EACb;CACJ;CACA,OAAO,eAAe,OAAO,KAAK;EAC9B,OAAO;EACP,YAAY;EACZ,UAAU;EACV,cAAc;CAClB,CAAC;AACL;;;;;;;;AAQA,SAAS,cAAc,OAAO;CAC1B,OAAQ,OAAO,eAAe,KAAK,MAAM,OAAO,aAC5C,OAAO,UAAU,SAAS,KAAK,KAAK,MAAM;AAClD;;;;;;;;;AASA,SAAS,SAAS,OAAO,QAAQ,SAAS,OAAO;CAC7C,IAAI,OAAO,UAAU,YAAY,UAAU,MACvC,OAAO;CACX,MAAM,QAAQ,MAAM,QAAQ,KAAK;CACjC,IAAI,CAAC,SAAS,CAAC,cAAc,KAAK,GAC9B,OAAO;CACX,MAAM,WAAW,OAAO,IAAI,KAAK;CACjC,IAAI,aAAa,KAAA,GACb,OAAO;CACX,MAAM,QAAQ,QAAQ,IAAI,MAAM,MAAM,MAAM,IAAI,CAAC;CACjD,OAAO,IAAI,OAAO,KAAK;CACvB,QAAQ,KAAK,KAAK;CAClB,MAAM,KAAK,KAAK;CAChB,OAAO;AACX;;;;;;;;;;;;;;;;;;;AAmBA,SAAgB,KAAK,QAAQ,UAAU,CAAC,GAAG;CACvC,IAAI,OAAO,WAAW,YAAY,WAAW,MACzC,OAAO;CACX,MAAM,yBAAS,IAAI,IAAI;CAGvB,MAAM,UAAU,CAAC;CACjB,MAAM,QAAQ,CAAC;CACf,MAAM,SAAS,SAAS,QAAQ,QAAQ,SAAS,KAAK;CACtD,MAAM,YAAY,MAAM,QAAQ,QAAQ,KAAK,IAAI,QAAQ,QAAQ,KAAA;CACjE,MAAM,gBAAgB,QAAQ,kBAAkB;CAChD,OAAO,QAAQ,QAAQ;EACnB,MAAM,SAAS,QAAQ,IAAI;EAC3B,MAAM,OAAO,MAAM,IAAI;EACvB,IAAI,MAAM,QAAQ,MAAM,GAAG;GACvB,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAC/B,IAAI,KAAK,QACL,KAAK,KAAK,SAAS,OAAO,IAAI,QAAQ,SAAS,KAAK;GAE5D;EACJ;EACA,IAAI,eACA,KAAK,MAAM,OAAO,OAAO,oBAAoB,MAAM,GAAG;GAElD,IAAI,QAAQ,aACR;GACJ,IAAI,aAAa,CAAC,UAAU,SAAS,GAAG,GACpC;GAEJ,WAAW,MAAM,KADF,SAAS,OAAO,MAAM,QAAQ,SAAS,KAC3B,GAAG,MAAM;EACxC;OAKA,KAAK,MAAM,OAAO,QAAQ;GACtB,IAAI,CAAC,OAAO,UAAU,eAAe,KAAK,QAAQ,GAAG,GACjD;GAEJ,IAAI,QAAQ,aACR;GACJ,IAAI,aAAa,CAAC,UAAU,SAAS,GAAG,GACpC;GACJ,KAAK,OAAO,SAAS,OAAO,MAAM,QAAQ,SAAS,KAAK;EAC5D;EAEJ,KAAK,MAAM,OAAO,OAAO,sBAAsB,MAAM,GAAG;GACpD,IAAI,aAAa,CAAC,UAAU,SAAS,GAAG,GACpC;GACJ,IAAI,CAAC,iBAAiB,CAAC,OAAO,UAAU,qBAAqB,KAAK,QAAQ,GAAG,GACzE;GAEJ,WAAW,MAAM,KADF,SAAS,OAAO,MAAM,QAAQ,SAAS,KAC3B,GAAG,MAAM;EACxC;CACJ;CACA,OAAO;AACX;;ACxHA,IAAM,YAAN,MAAgB;;;;CAIZ,YAAY,EAAE,SAAS,UAAW,CAAC,GAAG;EAClC,KAAK,gBAAgB,IAAI,cAAc;EACvC,KAAK,iBAAiB,IAAI,UAAS,MAAK,EAAE,eAAe,EAAE;EAC3D,KAAK,4BAA4B,IAAI,0BAA0B;EAC/D,KAAK,oBAAoB,CAAC;EAC1B,KAAK,SAAS;CAClB;CACA,UAAU,QAAQ;EACd,MAAM,6BAAa,IAAI,IAAI;EAC3B,MAAM,SAAS,OAAO,QAAQ,YAAY,MAAM,KAAK,MAAM;EAC3D,MAAM,MAAM,EACR,MAAM,OAAO,iBACjB;EACA,IAAI,OAAO,aACP,IAAI,OAAO;GACP,GAAG,IAAI;GACP,QAAQ,OAAO;EACnB;EAEJ,MAAM,sBAAsB,uCAAuC,YAAY,KAAK,MAAM;EAC1F,IAAI,qBACA,IAAI,OAAO;GACP,GAAG,IAAI;GACP,uBAAuB;EAC3B;EAEJ,IAAI,IAAI,MACJ,IAAI,KAAK,IAAI;EACjB,OAAO;CACX;CACA,YAAY,SAAS,SAAS;EAC1B,MAAM,EAAE,MAAM,SAAS;EACvB,IAAI,SAAS,SAAS,UAAU,OAAO,KAAK,IAAI;EAChD,IAAI,MAAM,QACN,SAAS,sBAAsB,QAAQ,KAAK,QAAQ,KAAK,KAAK,GAAG,IAAI;EAEzE,IAAI,MAAM,uBACN,SAAS,oCAAoC,QAAQ,KAAK,uBAAuB,KAAK,KAAK,CAAC;EAEhG,OAAO;CACX;CACA,UAAU,QAAQ;EACd,OAAO,KAAK,UAAU,KAAK,UAAU,MAAM,CAAC;CAChD;CACA,MAAM,QAAQ;EACV,OAAO,KAAK,YAAY,KAAK,MAAM,MAAM,GAAG,EAAE,SAAS,KAAK,CAAC;CACjE;CACA,cAAc,GAAG,SAAS;EACtB,KAAK,cAAc,SAAS,GAAG,OAAO;CAC1C;CACA,eAAe,GAAG,YAAY;EAC1B,KAAK,eAAe,SAAS,GAAG,UAAU;CAC9C;CACA,eAAe,aAAa,MAAM;EAC9B,KAAK,0BAA0B,SAAS;GACpC;GACA,GAAG;EACP,CAAC;CACL;CACA,gBAAgB,GAAG,OAAO;EACtB,KAAK,kBAAkB,KAAK,GAAG,KAAK;CACxC;AACJ;AACA,UAAU,kBAAkB,IAAI,UAAU;AAC1C,UAAU,YAAY,UAAU,gBAAgB,UAAU,KAAK,UAAU,eAAe;AACxF,UAAU,cAAc,UAAU,gBAAgB,YAAY,KAAK,UAAU,eAAe;AAC5F,UAAU,YAAY,UAAU,gBAAgB,UAAU,KAAK,UAAU,eAAe;AACxF,UAAU,QAAQ,UAAU,gBAAgB,MAAM,KAAK,UAAU,eAAe;AAChF,UAAU,gBAAgB,UAAU,gBAAgB,cAAc,KAAK,UAAU,eAAe;AAChG,UAAU,iBAAiB,UAAU,gBAAgB,eAAe,KAAK,UAAU,eAAe;AAClG,UAAU,iBAAiB,UAAU,gBAAgB,eAAe,KAAK,UAAU,eAAe;AAClG,UAAU,kBAAkB,UAAU,gBAAgB,gBAAgB,KAAK,UAAU,eAAe;AAG3E,UAAU;AACR,UAAU;AACrC,MAAa,YAAY,UAAU;AACd,UAAU;AACF,UAAU;AACT,UAAU;AACV,UAAU;AACT,UAAU;;;;;;AC3EzC,SAAS,mBAAmB,QAA2C;CACrE,IAAI,CAAC,QAAQ,OAAO,KAAA;CAGpB,MAAM,iBAAiB,iBAAiB,MAAM;CAC9C,OAAO,2BAA2B,cAAc;AAClD;;;;;;;;;;;;;AAcA,SAAgB,mBAAmB,MAAsB;CACvD,IAAI,aAAa,KAAK,KAAK;CAC3B,IAAI,WAAW,SAAS,IAAI,KAAK,WAAW,SAAS,GAAG,KAAK,WAAW,SAAS,GAAG,GAClF,MAAM,IAAI,MAAM,wBAAwB,KAAK,yCAAyC;CAExF,aAAa,WAAW,QAAQ,QAAQ,GAAG;CAC3C,IAAI,eAAe,OAAO,eAAe,IACvC,OAAO;CAET,IAAI,WAAW,SAAS,GAAG,GACzB,aAAa,WAAW,MAAM,GAAG,EAAE;CAErC,IAAI,CAAC,WAAW,WAAW,GAAG,GAC5B,aAAa,IAAI;CAEnB,OAAO;AACT;AAEA,MAAM,6CAA6C;AAWnD,eAAsB,uBACpB,QACA,gBAC0C;CAC1C,MAAM,cAAc,QAAQ,YAAY,CAAC,EAAE,iBAAiB;CAC5D,IAAI,CAAC,aACH;CAGF,MAAM,UAAU,gBAAgB,OAAO,CAAC,IAAI;CAC5C,MAAM,cAAc,QAAQ,eAAe;CAC3C,MAAM,OAAO,gBAAgB,IAAI,MAAM;CACvC,MAAM,WAAW,QAAQ,UACrB,MAAM,QAAQ,QAAQ;EAAE;EAAgB;CAAK,CAAC,IAC7C,gBAAgB,IAAI,sBAAsB;CAE/C,IAAI,CAAC,UAAU;EACb,IAAI,QAAQ,iBAAiB,OAC3B;EAEF,MAAM,IAAI,cAAc,KAAK,EAAE,SAAS,oCAAoC,CAAC;CAC/E;CAEA,OAAO;EAAE;EAAa,OAAO;CAAS;AACxC;AAEA,SAAgB,4BACd,UACA,OACqC;CACrC,IAAI,CAAC,OACH,OAAO;CAGT,OAAO;EACL,GAAI,YAAY,CAAC;GAChB,MAAM,cAAc,MAAM;CAC7B;AACF;AAEA,SAAgB,0BACd,UACA,OACM;CACN,IAAI,CAAC,YAAY,CAAC,OAChB;CAGF,IAAI,SAAS,WAAW,MAAM,iBAAiB,MAAM,OACnD,MAAM,IAAI,cAAc,KAAK,EAAE,SAAS,4BAA4B,CAAC;AAEzE;;;;;AAMA,SAAS,6BAA6B,QAAoD;CACxF,IAAI,CAAC,QAAQ,OAAO;CAEpB,IAAI;EACF,MAAM,aAAa,2BAA2B,iBAAiB,MAAM,CAAC;EACtE,IAAI,CAAC,YAAY,OAAO;EAGxB,MAAM,WAAY,WAAW,SAAS,WAAW;EACjD,IAAI,CAAC,YAAY,CAAC,MAAM,QAAQ,QAAQ,GAAG,OAAO;EAGlD,MAAM,kCAAkB,IAAI,IAAI;GAAC;GAAS;GAAa;GAAgB;GAAgB;GAAc;EAAY,CAAC;EAElH,KAAK,MAAM,WAAW,UAAU;GAC9B,MAAM,aAAa,QAAQ;GAC3B,IAAI,CAAC,YAAY,OAAO,OAAO;GAE/B,MAAM,cAAc,WAAW;GAC/B,MAAM,aAAa,aAAa;GAChC,MAAM,YAAY,MAAM,QAAQ,aAAa,IAAI,IAAK,YAAY,OAAoB,CAAC;GACvF,MAAM,cAAc,aAAa,CAAC,UAAU,IAAI;GAEhD,IAAI,CAAC,YAAY,UAAU,YAAY,MAAK,UAAS,CAAC,gBAAgB,IAAI,KAAK,CAAC,GAC9E,OAAO;EAEX;EAEA,OAAO,SAAS,SAAS;CAC3B,QAAQ;EACN,OAAO;CACT;AACF;AAEA,SAAS,SAAS,OAA0C,MAAe;CACzE,OAAO,OAAO,QAAQ,KAAK,CAAC,CAAC,QAAa,KAAK,CAAC,KAAK,UAAU;EAC7D,MAAM,UAAU,OAAO,GAAG,KAAK,GAAG,QAAQ;EAC1C,IAAI,WAAW;GACb,IAAI,KAAK;GACT,aAAa,KAAK;GAClB,aAAa,KAAK,cAAc,UAAU,mBAAmB,KAAK,WAAW,CAAC,IAAI,KAAA;GAClF,cAAc,KAAK,eAAe,UAAU,mBAAmB,KAAK,YAAY,CAAC,IAAI,KAAA;GACrF,cAAc,KAAK,eAAe,UAAU,mBAAmB,KAAK,YAAY,CAAC,IAAI,KAAA;GACrF,eAAe,KAAK,gBAAgB,UAAU,mBAAmB,KAAK,aAAa,CAAC,IAAI,KAAA;GACxF,aAAa,KAAK,cAAc,UAAU,mBAAmB,KAAK,WAAW,CAAC,IAAI,KAAA;GAClF,YAAY,KAAK,cAAc;GAC/B,WAAW,KAAK;GAChB,UAAU,KAAK;EACjB;EAEA,IAAI,KAAK,cAAc,cAAc,KAAK,OAAO;GAC/C,MAAM,cAAc,SAAS,KAAK,OAAO,OAAO,KAAK,CAAC;GACtD,MAAM;IAAE,GAAG;IAAK,GAAG;GAAY;EACjC;EAEA,OAAO;CACT,GAAG,CAAC,CAAC;AACP;AAEA,SAAgB,gBAAgB,UAAoB,UAAmB,OAAqB;CAC1F,IAAI,SAEF,OAAO;EACL,MAAM,SAAS;EACf,aAAa,SAAS;EACtB,UAAU,SAAS;EACnB,WAAW,OAAO,KAAK,SAAS,KAAK,CAAC,CAAC;EACvC,WAAW,SAAS;EACpB,SAAS,SAAS;EAClB,OAAO,CAAC;EACR,UAAU,CAAC;EACX,aAAa,KAAA;EACb,cAAc,KAAA;EACd,aAAa,KAAA;EACb,sBAAsB,KAAA;EACtB,QAAQ,SAAS;CACnB;CAGF,OAAO;EACL,MAAM,SAAS;EACf,aAAa,SAAS;EACtB,UAAU,SAAS;EACnB,QAAQ,SAAS;EACjB,OAAO,OAAO,QAAQ,SAAS,KAAK,CAAC,CAAC,QAAa,KAAK,CAAC,KAAK,UAAU;GACtE,IAAI,OAAO;IACT,IAAI,KAAK;IACT,aAAa,KAAK;IAClB,aAAa,KAAK,cAAc,UAAU,mBAAmB,KAAK,WAAW,CAAC,IAAI,KAAA;IAClF,cAAc,KAAK,eAAe,UAAU,mBAAmB,KAAK,YAAY,CAAC,IAAI,KAAA;IACrF,cAAc,KAAK,eAAe,UAAU,mBAAmB,KAAK,YAAY,CAAC,IAAI,KAAA;IACrF,eAAe,KAAK,gBAAgB,UAAU,mBAAmB,KAAK,aAAa,CAAC,IAAI,KAAA;IACxF,aAAa,KAAK,cAAc,UAAU,mBAAmB,KAAK,WAAW,CAAC,IAAI,KAAA;IAClF,sBAAsB,KAAK,uBACvB,UAAU,mBAAmB,KAAK,oBAAoB,CAAC,IACvD,KAAA;IACJ,WAAW,KAAK;IAChB,UAAU,KAAK;GACjB;GACA,OAAO;EACT,GAAG,CAAC,CAAC;EACL,UAAU,SAAS,SAAS,KAAK,KAAK,CAAC;EACvC,WAAW,SAAS;EACpB,aAAa,SAAS,cAAc,UAAU,mBAAmB,SAAS,WAAW,CAAC,IAAI,KAAA;EAC1F,cAAc,SAAS,eAAe,UAAU,mBAAmB,SAAS,YAAY,CAAC,IAAI,KAAA;EAC7F,aAAa,SAAS,cAAc,UAAU,mBAAmB,SAAS,WAAW,CAAC,IAAI,KAAA;EAC1F,sBAAsB,SAAS,uBAC3B,UAAU,mBAAmB,SAAS,oBAAoB,CAAC,IAC3D,KAAA;EACJ,SAAS,SAAS;EAClB,qBAAqB,SAAS,SAAS,eAAe,6BAA6B,SAAS,WAAW;CACzG;AACF;;;;;AAMA,IAAa,mBAAb,MAA8B;CAC5B,OAAe,sBAAgD,CAAC;;;;CAKhE,OAAO,0BAA0B,IAAY,UAA0B;EACrE,KAAK,oBAAoB,MAAM;CACjC;;;;CAKA,OAAO,2BACL,WACA,QACM;EACN,KAAK,MAAM,CAAC,IAAI,aAAa,OAAO,QAAQ,SAAS,GAAG;GAEtD,IAAI,QAAQ;IACV,SAAS,iBAAiB,MAAM;IAChC,SAAS,qBAAqB;KAC5B,QAAQ,OAAO,UAAU;KACzB,SAAS,OAAO,WAAW;KAC3B,QAAQ,OAAO,WAAW;KAC1B,KAAK,OAAO,OAAO;KACnB,SAAS,OAAO,YAAY;IAC9B,CAAC;GACH;GACA,KAAK,oBAAoB,MAAM;EACjC;CACF;;;;CAKA,OAAO,YAAY,YAA0C;EAC3D,OAAO,KAAK,oBAAoB;CAClC;;;;CAKA,OAAO,kBAA4C;EACjD,OAAO,EAAE,GAAG,KAAK,oBAAoB;CACvC;;;;CAKA,OAAO,yBAAyB,YAA0B;EACxD,OAAO,KAAK,oBAAoB;CAClC;;;;CAIA,OAAO,UAAgB;EAErB,KAAK,sBAAsB,CAAC;CAC9B;;;;CAKA,OAAO,uBAAuB,YAA6B;EACzD,OAAO,cAAc,KAAK;CAC5B;;;;CAKA,OAAO,2BAAqC;EAC1C,OAAO,OAAO,KAAK,KAAK,mBAAmB;CAC7C;AACF;;;;;;AAOA,SAAgB,OAAO,OAAuB;CAC5C,OAAO,MACJ,YAAY,CAAC,CACb,QAAQ,eAAe,GAAG,CAAC,CAC3B,QAAQ,YAAY,EAAE;AAC3B;AAEA,SAAgB,4BAA4B,SAAgC;CAC1E,IAAI,CAAC,SACH,OAAO;CAGT,IAAI,OAAO,YAAY,UACrB,OAAO;CAGT,IAAI,MAAM,QAAQ,OAAO,GACvB,OAAO,QACJ,KAAI,MAAK;EACR,IAAI,OAAO,MAAM,UACf,OAAO;EAGT,OAAO,OAAO,EAAE,YAAY,WAAW,EAAE,UAAU;CACrD,CAAC,CAAC,CACD,QAAO,YAAW,OAAO,CAAC,CAC1B,KAAK,IAAI;CAId,OAAO,OAAO,QAAQ,YAAY,WAAW,QAAQ,UAAU;AACjE"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { r as __exportAll } from "./rolldown-runtime-
|
|
2
|
-
import { t as HTTPException } from "./http-exception-
|
|
3
|
-
import { n as createRoute } from "./route-builder-
|
|
1
|
+
import { r as __exportAll } from "./rolldown-runtime-CQI-hT2b.js";
|
|
2
|
+
import { t as HTTPException } from "./http-exception-CzaWkxMl.js";
|
|
3
|
+
import { n as createRoute } from "./route-builder-BxPrwNog.js";
|
|
4
4
|
import { handleError } from "./server/handlers/error.js";
|
|
5
|
-
import { a as listEmbeddersResponseSchema, c as queryVectorsBodySchema, d as upsertVectorsResponseSchema, f as vectorIndexPathParams, i as describeIndexResponseSchema, l as queryVectorsResponseSchema, n as createIndexResponseSchema, o as listIndexesResponseSchema, p as vectorNamePathParams, r as deleteIndexResponseSchema, s as listVectorsResponseSchema, t as createIndexBodySchema, u as upsertVectorsBodySchema } from "./vectors-
|
|
5
|
+
import { a as listEmbeddersResponseSchema, c as queryVectorsBodySchema, d as upsertVectorsResponseSchema, f as vectorIndexPathParams, i as describeIndexResponseSchema, l as queryVectorsResponseSchema, n as createIndexResponseSchema, o as listIndexesResponseSchema, p as vectorNamePathParams, r as deleteIndexResponseSchema, s as listVectorsResponseSchema, t as createIndexBodySchema, u as upsertVectorsBodySchema } from "./vectors-CvHLWqjC.js";
|
|
6
6
|
import { EMBEDDING_MODELS } from "@mastra/core/llm";
|
|
7
|
-
|
|
7
|
+
// src/server/handlers/vector.ts
|
|
8
8
|
var vector_exports = /* @__PURE__ */ __exportAll({
|
|
9
9
|
CREATE_INDEX_ROUTE: () => CREATE_INDEX_ROUTE,
|
|
10
10
|
DELETE_INDEX_ROUTE: () => DELETE_INDEX_ROUTE,
|
|
@@ -308,7 +308,6 @@ const LIST_EMBEDDERS_ROUTE = createRoute({
|
|
|
308
308
|
}
|
|
309
309
|
}
|
|
310
310
|
});
|
|
311
|
-
//#endregion
|
|
312
311
|
export { LIST_INDEXES_ROUTE as a, UPSERT_VECTORS_ROUTE as c, describeIndex as d, listIndexes as f, vector_exports as g, upsertVectors as h, LIST_EMBEDDERS_ROUTE as i, createIndex as l, queryVectors as m, DELETE_INDEX_ROUTE as n, LIST_VECTORS_ROUTE as o, listVectorStores as p, DESCRIBE_INDEX_ROUTE as r, QUERY_VECTORS_ROUTE as s, CREATE_INDEX_ROUTE as t, deleteIndex as u };
|
|
313
312
|
|
|
314
|
-
//# sourceMappingURL=vector-
|
|
313
|
+
//# sourceMappingURL=vector-Deod39jt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector-TWv4t-4g.js","names":[],"sources":["../src/server/handlers/vector.ts"],"sourcesContent":["import { EMBEDDING_MODELS } from '@mastra/core/llm';\nimport type { MastraVector, QueryResult, IndexStats, VectorFilter } from '@mastra/core/vector';\nimport { HTTPException } from '../http-exception';\nimport {\n vectorNamePathParams,\n vectorIndexPathParams,\n upsertVectorsBodySchema,\n upsertVectorsResponseSchema,\n createIndexBodySchema,\n createIndexResponseSchema,\n queryVectorsBodySchema,\n queryVectorsResponseSchema,\n listIndexesResponseSchema,\n describeIndexResponseSchema,\n deleteIndexResponseSchema,\n listVectorsResponseSchema,\n listEmbeddersResponseSchema,\n} from '../schemas/vectors';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\n\nimport { handleError } from './error';\n\ninterface VectorContext extends Context {\n vectorName?: string;\n}\n\ninterface UpsertRequest {\n indexName: string;\n vectors: number[][];\n metadata?: Record<string, any>[];\n ids?: string[];\n}\n\ninterface CreateIndexRequest {\n indexName: string;\n dimension: number;\n metric?: 'cosine' | 'euclidean' | 'dotproduct';\n}\n\ninterface QueryRequest {\n indexName: string;\n queryVector: number[];\n topK?: number;\n filter?: Record<string, any>;\n includeVector?: boolean;\n}\n\nfunction getVector(mastra: Context['mastra'], vectorName?: string): MastraVector {\n if (!vectorName) {\n throw new HTTPException(400, { message: 'Vector name is required' });\n }\n\n const vector = mastra.getVector(vectorName);\n if (!vector) {\n throw new HTTPException(404, { message: `Vector store ${vectorName} not found` });\n }\n\n return vector;\n}\n\n// Upsert vectors\nexport async function upsertVectors({\n mastra,\n vectorName,\n indexName,\n vectors,\n metadata,\n ids,\n}: VectorContext & UpsertRequest) {\n try {\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n}\n\n// Create index\nexport async function createIndex({\n mastra,\n vectorName,\n indexName,\n dimension,\n metric,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & CreateIndexRequest) {\n try {\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n}\n\n// Query vectors\nexport async function queryVectors({\n mastra,\n vectorName,\n indexName,\n queryVector,\n topK,\n filter,\n includeVector,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & QueryRequest) {\n try {\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, { message: 'Invalid request query. indexName and queryVector array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({ indexName, queryVector, topK, filter, includeVector });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n}\n\n// List indexes\nexport async function listIndexes({ mastra, vectorName }: Pick<VectorContext, 'mastra' | 'vectorName'>) {\n try {\n const vector = getVector(mastra, vectorName);\n\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n}\n\n// Describe index\nexport async function describeIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n}\n\n// Delete index\nexport async function deleteIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n}\n\n// List available vector stores\nexport async function listVectorStores({ mastra }: Pick<VectorContext, 'mastra'>) {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n name,\n id: vector.id || name, // Use the key as fallback when vector has no id property\n type: vector.constructor.name,\n // Add any other metadata that might be useful\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const UPSERT_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/upsert',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: upsertVectorsBodySchema,\n responseSchema: upsertVectorsResponseSchema,\n summary: 'Upsert vectors',\n description: 'Inserts or updates vectors in the specified index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, vectors, metadata, ids } = params;\n\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n },\n});\n\nexport const CREATE_INDEX_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/create-index',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: createIndexBodySchema,\n responseSchema: createIndexResponseSchema,\n summary: 'Create index',\n description: 'Creates a new vector index with the specified dimension and metric',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, dimension, metric } = params;\n\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n },\n});\n\nexport const QUERY_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/query',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: queryVectorsBodySchema,\n responseSchema: queryVectorsResponseSchema,\n summary: 'Query vectors',\n description: 'Performs a similarity search on the vector index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, queryVector, topK, filter, includeVector } = params;\n\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, {\n message: 'Invalid request query. indexName and queryVector array are required.',\n });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({\n indexName,\n queryVector,\n topK,\n // Body schema is intentionally permissive; the store validates the filter shape.\n filter: filter as VectorFilter,\n includeVector,\n });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n },\n});\n\nexport const LIST_INDEXES_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n responseSchema: listIndexesResponseSchema,\n summary: 'List indexes',\n description: 'Returns a list of all indexes in the vector store',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName }) => {\n try {\n const vector = getVector(mastra, vectorName);\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n },\n});\n\nexport const DESCRIBE_INDEX_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: describeIndexResponseSchema,\n summary: 'Describe index',\n description: 'Returns statistics and metadata for a specific index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName: indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n },\n});\n\nexport const DELETE_INDEX_ROUTE = createRoute({\n method: 'DELETE',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: deleteIndexResponseSchema,\n summary: 'Delete index',\n description: 'Deletes a vector index and all its data',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName: indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n },\n});\n\nexport const LIST_VECTORS_ROUTE = createRoute({\n method: 'GET',\n path: '/vectors',\n responseType: 'json',\n responseSchema: listVectorsResponseSchema,\n summary: 'List vector stores',\n description: 'Returns a list of all configured vector stores',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra }) => {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n id: vector.id || name, // Use the key as the ID since vectors might not have their own id property\n name,\n type: vector.constructor.name,\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n },\n});\n\nexport const LIST_EMBEDDERS_ROUTE = createRoute({\n method: 'GET',\n path: '/embedders',\n responseType: 'json',\n responseSchema: listEmbeddersResponseSchema,\n summary: 'List available embedder models',\n description: 'Returns a list of all available embedding models',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async () => {\n try {\n const embeddersList = EMBEDDING_MODELS.map(model => ({\n id: `${model.provider}/${model.id}`,\n provider: model.provider,\n name: model.id,\n description: model.description || '',\n dimensions: model.dimensions,\n maxInputTokens: model.maxInputTokens,\n }));\n\n return { embedders: embeddersList };\n } catch (error) {\n return handleError(error, 'Error listing embedders');\n }\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vector-Deod39jt.js","names":[],"sources":["../src/server/handlers/vector.ts"],"sourcesContent":["import { EMBEDDING_MODELS } from '@mastra/core/llm';\nimport type { MastraVector, QueryResult, IndexStats, VectorFilter } from '@mastra/core/vector';\nimport { HTTPException } from '../http-exception';\nimport {\n vectorNamePathParams,\n vectorIndexPathParams,\n upsertVectorsBodySchema,\n upsertVectorsResponseSchema,\n createIndexBodySchema,\n createIndexResponseSchema,\n queryVectorsBodySchema,\n queryVectorsResponseSchema,\n listIndexesResponseSchema,\n describeIndexResponseSchema,\n deleteIndexResponseSchema,\n listVectorsResponseSchema,\n listEmbeddersResponseSchema,\n} from '../schemas/vectors';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\n\nimport { handleError } from './error';\n\ninterface VectorContext extends Context {\n vectorName?: string;\n}\n\ninterface UpsertRequest {\n indexName: string;\n vectors: number[][];\n metadata?: Record<string, any>[];\n ids?: string[];\n}\n\ninterface CreateIndexRequest {\n indexName: string;\n dimension: number;\n metric?: 'cosine' | 'euclidean' | 'dotproduct';\n}\n\ninterface QueryRequest {\n indexName: string;\n queryVector: number[];\n topK?: number;\n filter?: Record<string, any>;\n includeVector?: boolean;\n}\n\nfunction getVector(mastra: Context['mastra'], vectorName?: string): MastraVector {\n if (!vectorName) {\n throw new HTTPException(400, { message: 'Vector name is required' });\n }\n\n const vector = mastra.getVector(vectorName);\n if (!vector) {\n throw new HTTPException(404, { message: `Vector store ${vectorName} not found` });\n }\n\n return vector;\n}\n\n// Upsert vectors\nexport async function upsertVectors({\n mastra,\n vectorName,\n indexName,\n vectors,\n metadata,\n ids,\n}: VectorContext & UpsertRequest) {\n try {\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n}\n\n// Create index\nexport async function createIndex({\n mastra,\n vectorName,\n indexName,\n dimension,\n metric,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & CreateIndexRequest) {\n try {\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n}\n\n// Query vectors\nexport async function queryVectors({\n mastra,\n vectorName,\n indexName,\n queryVector,\n topK,\n filter,\n includeVector,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & QueryRequest) {\n try {\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, { message: 'Invalid request query. indexName and queryVector array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({ indexName, queryVector, topK, filter, includeVector });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n}\n\n// List indexes\nexport async function listIndexes({ mastra, vectorName }: Pick<VectorContext, 'mastra' | 'vectorName'>) {\n try {\n const vector = getVector(mastra, vectorName);\n\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n}\n\n// Describe index\nexport async function describeIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n}\n\n// Delete index\nexport async function deleteIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n}\n\n// List available vector stores\nexport async function listVectorStores({ mastra }: Pick<VectorContext, 'mastra'>) {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n name,\n id: vector.id || name, // Use the key as fallback when vector has no id property\n type: vector.constructor.name,\n // Add any other metadata that might be useful\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const UPSERT_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/upsert',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: upsertVectorsBodySchema,\n responseSchema: upsertVectorsResponseSchema,\n summary: 'Upsert vectors',\n description: 'Inserts or updates vectors in the specified index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, vectors, metadata, ids } = params;\n\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n },\n});\n\nexport const CREATE_INDEX_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/create-index',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: createIndexBodySchema,\n responseSchema: createIndexResponseSchema,\n summary: 'Create index',\n description: 'Creates a new vector index with the specified dimension and metric',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, dimension, metric } = params;\n\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n },\n});\n\nexport const QUERY_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/query',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: queryVectorsBodySchema,\n responseSchema: queryVectorsResponseSchema,\n summary: 'Query vectors',\n description: 'Performs a similarity search on the vector index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, queryVector, topK, filter, includeVector } = params;\n\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, {\n message: 'Invalid request query. indexName and queryVector array are required.',\n });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({\n indexName,\n queryVector,\n topK,\n // Body schema is intentionally permissive; the store validates the filter shape.\n filter: filter as VectorFilter,\n includeVector,\n });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n },\n});\n\nexport const LIST_INDEXES_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n responseSchema: listIndexesResponseSchema,\n summary: 'List indexes',\n description: 'Returns a list of all indexes in the vector store',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName }) => {\n try {\n const vector = getVector(mastra, vectorName);\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n },\n});\n\nexport const DESCRIBE_INDEX_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: describeIndexResponseSchema,\n summary: 'Describe index',\n description: 'Returns statistics and metadata for a specific index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName: indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n },\n});\n\nexport const DELETE_INDEX_ROUTE = createRoute({\n method: 'DELETE',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: deleteIndexResponseSchema,\n summary: 'Delete index',\n description: 'Deletes a vector index and all its data',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName: indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n },\n});\n\nexport const LIST_VECTORS_ROUTE = createRoute({\n method: 'GET',\n path: '/vectors',\n responseType: 'json',\n responseSchema: listVectorsResponseSchema,\n summary: 'List vector stores',\n description: 'Returns a list of all configured vector stores',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra }) => {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n id: vector.id || name, // Use the key as the ID since vectors might not have their own id property\n name,\n type: vector.constructor.name,\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n },\n});\n\nexport const LIST_EMBEDDERS_ROUTE = createRoute({\n method: 'GET',\n path: '/embedders',\n responseType: 'json',\n responseSchema: listEmbeddersResponseSchema,\n summary: 'List available embedder models',\n description: 'Returns a list of all available embedding models',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async () => {\n try {\n const embeddersList = EMBEDDING_MODELS.map(model => ({\n id: `${model.provider}/${model.id}`,\n provider: model.provider,\n name: model.id,\n description: model.description || '',\n dimensions: model.dimensions,\n maxInputTokens: model.maxInputTokens,\n }));\n\n return { embedders: embeddersList };\n } catch (error) {\n return handleError(error, 'Error listing embedders');\n }\n },\n});\n"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
const require_rolldown_runtime = require("./rolldown-runtime-
|
|
2
|
-
const require_http_exception = require("./http-exception-
|
|
3
|
-
const require_route_builder = require("./route-builder-
|
|
1
|
+
const require_rolldown_runtime = require("./rolldown-runtime-10nMEhjP.cjs");
|
|
2
|
+
const require_http_exception = require("./http-exception-Co3MbFUf.cjs");
|
|
3
|
+
const require_route_builder = require("./route-builder-CvARmqnA.cjs");
|
|
4
4
|
const require_server_handlers_error = require("./server/handlers/error.cjs");
|
|
5
|
-
const require_vectors = require("./vectors-
|
|
5
|
+
const require_vectors = require("./vectors-CqV387sY.cjs");
|
|
6
6
|
let _mastra_core_llm = require("@mastra/core/llm");
|
|
7
|
-
|
|
7
|
+
// src/server/handlers/vector.ts
|
|
8
8
|
var vector_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll({
|
|
9
9
|
CREATE_INDEX_ROUTE: () => CREATE_INDEX_ROUTE,
|
|
10
10
|
DELETE_INDEX_ROUTE: () => DELETE_INDEX_ROUTE,
|
|
@@ -308,7 +308,6 @@ const LIST_EMBEDDERS_ROUTE = require_route_builder.createRoute({
|
|
|
308
308
|
}
|
|
309
309
|
}
|
|
310
310
|
});
|
|
311
|
-
//#endregion
|
|
312
311
|
Object.defineProperty(exports, "CREATE_INDEX_ROUTE", {
|
|
313
312
|
enumerable: true,
|
|
314
313
|
get: function() {
|
|
@@ -406,4 +405,4 @@ Object.defineProperty(exports, "vector_exports", {
|
|
|
406
405
|
}
|
|
407
406
|
});
|
|
408
407
|
|
|
409
|
-
//# sourceMappingURL=vector-
|
|
408
|
+
//# sourceMappingURL=vector-IxK1t4Cb.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector-BKDD1kwc.cjs","names":["HTTPException","handleError","createRoute","vectorNamePathParams","upsertVectorsBodySchema","upsertVectorsResponseSchema","createIndexBodySchema","createIndexResponseSchema","queryVectorsBodySchema","queryVectorsResponseSchema","listIndexesResponseSchema","vectorIndexPathParams","describeIndexResponseSchema","deleteIndexResponseSchema","listVectorsResponseSchema","listEmbeddersResponseSchema","EMBEDDING_MODELS"],"sources":["../src/server/handlers/vector.ts"],"sourcesContent":["import { EMBEDDING_MODELS } from '@mastra/core/llm';\nimport type { MastraVector, QueryResult, IndexStats, VectorFilter } from '@mastra/core/vector';\nimport { HTTPException } from '../http-exception';\nimport {\n vectorNamePathParams,\n vectorIndexPathParams,\n upsertVectorsBodySchema,\n upsertVectorsResponseSchema,\n createIndexBodySchema,\n createIndexResponseSchema,\n queryVectorsBodySchema,\n queryVectorsResponseSchema,\n listIndexesResponseSchema,\n describeIndexResponseSchema,\n deleteIndexResponseSchema,\n listVectorsResponseSchema,\n listEmbeddersResponseSchema,\n} from '../schemas/vectors';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\n\nimport { handleError } from './error';\n\ninterface VectorContext extends Context {\n vectorName?: string;\n}\n\ninterface UpsertRequest {\n indexName: string;\n vectors: number[][];\n metadata?: Record<string, any>[];\n ids?: string[];\n}\n\ninterface CreateIndexRequest {\n indexName: string;\n dimension: number;\n metric?: 'cosine' | 'euclidean' | 'dotproduct';\n}\n\ninterface QueryRequest {\n indexName: string;\n queryVector: number[];\n topK?: number;\n filter?: Record<string, any>;\n includeVector?: boolean;\n}\n\nfunction getVector(mastra: Context['mastra'], vectorName?: string): MastraVector {\n if (!vectorName) {\n throw new HTTPException(400, { message: 'Vector name is required' });\n }\n\n const vector = mastra.getVector(vectorName);\n if (!vector) {\n throw new HTTPException(404, { message: `Vector store ${vectorName} not found` });\n }\n\n return vector;\n}\n\n// Upsert vectors\nexport async function upsertVectors({\n mastra,\n vectorName,\n indexName,\n vectors,\n metadata,\n ids,\n}: VectorContext & UpsertRequest) {\n try {\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n}\n\n// Create index\nexport async function createIndex({\n mastra,\n vectorName,\n indexName,\n dimension,\n metric,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & CreateIndexRequest) {\n try {\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n}\n\n// Query vectors\nexport async function queryVectors({\n mastra,\n vectorName,\n indexName,\n queryVector,\n topK,\n filter,\n includeVector,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & QueryRequest) {\n try {\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, { message: 'Invalid request query. indexName and queryVector array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({ indexName, queryVector, topK, filter, includeVector });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n}\n\n// List indexes\nexport async function listIndexes({ mastra, vectorName }: Pick<VectorContext, 'mastra' | 'vectorName'>) {\n try {\n const vector = getVector(mastra, vectorName);\n\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n}\n\n// Describe index\nexport async function describeIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n}\n\n// Delete index\nexport async function deleteIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n}\n\n// List available vector stores\nexport async function listVectorStores({ mastra }: Pick<VectorContext, 'mastra'>) {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n name,\n id: vector.id || name, // Use the key as fallback when vector has no id property\n type: vector.constructor.name,\n // Add any other metadata that might be useful\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const UPSERT_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/upsert',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: upsertVectorsBodySchema,\n responseSchema: upsertVectorsResponseSchema,\n summary: 'Upsert vectors',\n description: 'Inserts or updates vectors in the specified index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, vectors, metadata, ids } = params;\n\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n },\n});\n\nexport const CREATE_INDEX_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/create-index',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: createIndexBodySchema,\n responseSchema: createIndexResponseSchema,\n summary: 'Create index',\n description: 'Creates a new vector index with the specified dimension and metric',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, dimension, metric } = params;\n\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n },\n});\n\nexport const QUERY_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/query',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: queryVectorsBodySchema,\n responseSchema: queryVectorsResponseSchema,\n summary: 'Query vectors',\n description: 'Performs a similarity search on the vector index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, queryVector, topK, filter, includeVector } = params;\n\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, {\n message: 'Invalid request query. indexName and queryVector array are required.',\n });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({\n indexName,\n queryVector,\n topK,\n // Body schema is intentionally permissive; the store validates the filter shape.\n filter: filter as VectorFilter,\n includeVector,\n });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n },\n});\n\nexport const LIST_INDEXES_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n responseSchema: listIndexesResponseSchema,\n summary: 'List indexes',\n description: 'Returns a list of all indexes in the vector store',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName }) => {\n try {\n const vector = getVector(mastra, vectorName);\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n },\n});\n\nexport const DESCRIBE_INDEX_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: describeIndexResponseSchema,\n summary: 'Describe index',\n description: 'Returns statistics and metadata for a specific index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName: indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n },\n});\n\nexport const DELETE_INDEX_ROUTE = createRoute({\n method: 'DELETE',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: deleteIndexResponseSchema,\n summary: 'Delete index',\n description: 'Deletes a vector index and all its data',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName: indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n },\n});\n\nexport const LIST_VECTORS_ROUTE = createRoute({\n method: 'GET',\n path: '/vectors',\n responseType: 'json',\n responseSchema: listVectorsResponseSchema,\n summary: 'List vector stores',\n description: 'Returns a list of all configured vector stores',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra }) => {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n id: vector.id || name, // Use the key as the ID since vectors might not have their own id property\n name,\n type: vector.constructor.name,\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n },\n});\n\nexport const LIST_EMBEDDERS_ROUTE = createRoute({\n method: 'GET',\n path: '/embedders',\n responseType: 'json',\n responseSchema: listEmbeddersResponseSchema,\n summary: 'List available embedder models',\n description: 'Returns a list of all available embedding models',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async () => {\n try {\n const embeddersList = EMBEDDING_MODELS.map(model => ({\n id: `${model.provider}/${model.id}`,\n provider: model.provider,\n name: model.id,\n description: model.description || '',\n dimensions: model.dimensions,\n maxInputTokens: model.maxInputTokens,\n }));\n\n return { embedders: embeddersList };\n } catch (error) {\n return handleError(error, 'Error listing embedders');\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAgDA,SAAS,UAAU,QAA2B,YAAmC;CAC/E,IAAI,CAAC,YACH,MAAM,IAAIA,uBAAAA,cAAc,KAAK,EAAE,SAAS,0BAA0B,CAAC;CAGrE,MAAM,SAAS,OAAO,UAAU,UAAU;CAC1C,IAAI,CAAC,QACH,MAAM,IAAIA,uBAAAA,cAAc,KAAK,EAAE,SAAS,gBAAgB,WAAW,YAAY,CAAC;CAGlF,OAAO;AACT;AAGA,eAAsB,cAAc,EAClC,QACA,YACA,WACA,SACA,UACA,OACgC;CAChC,IAAI;EACF,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,QAAQ,OAAO,GAClD,MAAM,IAAIA,uBAAAA,cAAc,KAAK,EAAE,SAAS,mEAAmE,CAAC;EAK9G,OAAO,EAAE,KAAK,MAFC,UAAU,QAAQ,UACP,CAAC,CAAC,OAAO;GAAE;GAAW;GAAS;GAAU;EAAI,CAAC,EACnD;CACvB,SAAS,OAAO;EACd,OAAOC,8BAAAA,YAAY,OAAO,yBAAyB;CACrD;AACF;AAGA,eAAsB,YAAY,EAChC,QACA,YACA,WACA,WACA,UACoE;CACpE,IAAI;EACF,IAAI,CAAC,aAAa,OAAO,cAAc,YAAY,aAAa,GAC9D,MAAM,IAAID,uBAAAA,cAAc,KAAK,EAC3B,SAAS,+EACX,CAAC;EAGH,IAAI,UAAU,CAAC;GAAC;GAAU;GAAa;EAAY,CAAC,CAAC,SAAS,MAAM,GAClE,MAAM,IAAIA,uBAAAA,cAAc,KAAK,EAAE,SAAS,gEAAgE,CAAC;EAI3G,MADe,UAAU,QAAQ,UACtB,CAAC,CAAC,YAAY;GAAE;GAAW;GAAW;EAAO,CAAC;EACzD,OAAO,EAAE,SAAS,KAAK;CACzB,SAAS,OAAO;EACd,OAAOC,8BAAAA,YAAY,OAAO,sBAAsB;CAClD;AACF;AAGA,eAAsB,aAAa,EACjC,QACA,YACA,WACA,aACA,MACA,QACA,iBAC8D;CAC9D,IAAI;EACF,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,QAAQ,WAAW,GAC1D,MAAM,IAAID,uBAAAA,cAAc,KAAK,EAAE,SAAS,uEAAuE,CAAC;EAKlH,OAAO,MAFQ,UAAU,QAAQ,UACS,CAAC,CAAC,MAAM;GAAE;GAAW;GAAa;GAAM;GAAQ;EAAc,CAAC;CAE3G,SAAS,OAAO;EACd,OAAOC,8BAAAA,YAAY,OAAO,wBAAwB;CACpD;AACF;AAGA,eAAsB,YAAY,EAAE,QAAQ,cAA4D;CACtG,IAAI;EAIF,QAAO,MAHQ,UAAU,QAAQ,UAEN,CAAC,CAAC,YAAY,EAAA,CAC1B,OAAO,OAAO;CAC/B,SAAS,OAAO;EACd,OAAOA,8BAAAA,YAAY,OAAO,uBAAuB;CACnD;AACF;AAGA,eAAsB,cAAc,EAClC,QACA,YACA,aACwE;CACxE,IAAI;EACF,IAAI,CAAC,WACH,MAAM,IAAID,uBAAAA,cAAc,KAAK,EAAE,SAAS,yBAAyB,CAAC;EAIpE,MAAM,QAAoB,MADX,UAAU,QAAQ,UACI,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC;EAElE,OAAO;GACL,WAAW,MAAM;GACjB,OAAO,MAAM;GACb,QAAQ,MAAM,QAAQ,YAAY;EACpC;CACF,SAAS,OAAO;EACd,OAAOC,8BAAAA,YAAY,OAAO,wBAAwB;CACpD;AACF;AAGA,eAAsB,YAAY,EAChC,QACA,YACA,aACwE;CACxE,IAAI;EACF,IAAI,CAAC,WACH,MAAM,IAAID,uBAAAA,cAAc,KAAK,EAAE,SAAS,yBAAyB,CAAC;EAIpE,MADe,UAAU,QAAQ,UACtB,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC;EACtC,OAAO,EAAE,SAAS,KAAK;CACzB,SAAS,OAAO;EACd,OAAOC,8BAAAA,YAAY,OAAO,sBAAsB;CAClD;AACF;AAGA,eAAsB,iBAAiB,EAAE,UAAyC;CAChF,IAAI;EACF,MAAM,UAAU,OAAO,YAAY;EACnC,IAAI,CAAC,SACH,OAAO,EAAE,SAAS,CAAC,EAAE;EAWvB,OAAO,EAAE,SAPU,OAAO,QAAQ,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,aAAa;GAClE;GACA,IAAI,OAAO,MAAM;GACjB,MAAM,OAAO,YAAY;EAE3B,EAE2B,EAAE;CAC/B,SAAS,OAAO;EACd,OAAOA,8BAAAA,YAAY,OAAO,6BAA6B;CACzD;AACF;AAMA,MAAa,uBAAuBC,sBAAAA,YAAY;CAC9C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,iBAAiBC,gBAAAA;CACjB,YAAYC,gBAAAA;CACZ,gBAAgBC,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,QAAQ,YAAY,GAAG,aAAa;EACpD,IAAI;GACF,MAAM,EAAE,WAAW,SAAS,UAAU,QAAQ;GAE9C,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,QAAQ,OAAO,GAClD,MAAM,IAAIL,uBAAAA,cAAc,KAAK,EAAE,SAAS,mEAAmE,CAAC;GAK9G,OAAO,EAAE,KAAK,MAFC,UAAU,QAAQ,UACP,CAAC,CAAC,OAAO;IAAE;IAAW;IAAS;IAAU;GAAI,CAAC,EACnD;EACvB,SAAS,OAAO;GACd,OAAOC,8BAAAA,YAAY,OAAO,yBAAyB;EACrD;CACF;AACF,CAAC;AAED,MAAa,qBAAqBC,sBAAAA,YAAY;CAC5C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,iBAAiBC,gBAAAA;CACjB,YAAYG,gBAAAA;CACZ,gBAAgBC,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,QAAQ,YAAY,GAAG,aAAa;EACpD,IAAI;GACF,MAAM,EAAE,WAAW,WAAW,WAAW;GAEzC,IAAI,CAAC,aAAa,OAAO,cAAc,YAAY,aAAa,GAC9D,MAAM,IAAIP,uBAAAA,cAAc,KAAK,EAC3B,SAAS,+EACX,CAAC;GAGH,IAAI,UAAU,CAAC;IAAC;IAAU;IAAa;GAAY,CAAC,CAAC,SAAS,MAAM,GAClE,MAAM,IAAIA,uBAAAA,cAAc,KAAK,EAAE,SAAS,gEAAgE,CAAC;GAI3G,MADe,UAAU,QAAQ,UACtB,CAAC,CAAC,YAAY;IAAE;IAAW;IAAW;GAAO,CAAC;GACzD,OAAO,EAAE,SAAS,KAAK;EACzB,SAAS,OAAO;GACd,OAAOC,8BAAAA,YAAY,OAAO,sBAAsB;EAClD;CACF;AACF,CAAC;AAED,MAAa,sBAAsBC,sBAAAA,YAAY;CAC7C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,iBAAiBC,gBAAAA;CACjB,YAAYK,gBAAAA;CACZ,gBAAgBC,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,QAAQ,YAAY,GAAG,aAAa;EACpD,IAAI;GACF,MAAM,EAAE,WAAW,aAAa,MAAM,QAAQ,kBAAkB;GAEhE,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,QAAQ,WAAW,GAC1D,MAAM,IAAIT,uBAAAA,cAAc,KAAK,EAC3B,SAAS,uEACX,CAAC;GAYH,OAAO,MATQ,UAAU,QAAQ,UACS,CAAC,CAAC,MAAM;IAChD;IACA;IACA;IAEQ;IACR;GACF,CAAC;EAEH,SAAS,OAAO;GACd,OAAOC,8BAAAA,YAAY,OAAO,wBAAwB;EACpD;CACF;AACF,CAAC;AAED,MAAa,qBAAqBC,sBAAAA,YAAY;CAC5C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,iBAAiBC,gBAAAA;CACjB,gBAAgBO,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,QAAQ,iBAAiB;EACzC,IAAI;GAGF,QAAO,MAFQ,UAAU,QAAQ,UACN,CAAC,CAAC,YAAY,EAAA,CAC1B,OAAO,OAAO;EAC/B,SAAS,OAAO;GACd,OAAOT,8BAAAA,YAAY,OAAO,uBAAuB;EACnD;CACF;AACF,CAAC;AAED,MAAa,uBAAuBC,sBAAAA,YAAY;CAC9C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,iBAAiBS,gBAAAA;CACjB,gBAAgBC,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,QAAQ,YAAY,gBAAgB;EACpD,IAAI;GACF,IAAI,CAAC,WACH,MAAM,IAAIZ,uBAAAA,cAAc,KAAK,EAAE,SAAS,yBAAyB,CAAC;GAIpE,MAAM,QAAoB,MADX,UAAU,QAAQ,UACI,CAAC,CAAC,cAAc,EAAa,UAAU,CAAC;GAE7E,OAAO;IACL,WAAW,MAAM;IACjB,OAAO,MAAM;IACb,QAAQ,MAAM,QAAQ,YAAY;GACpC;EACF,SAAS,OAAO;GACd,OAAOC,8BAAAA,YAAY,OAAO,wBAAwB;EACpD;CACF;AACF,CAAC;AAED,MAAa,qBAAqBC,sBAAAA,YAAY;CAC5C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,iBAAiBS,gBAAAA;CACjB,gBAAgBE,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,QAAQ,YAAY,gBAAgB;EACpD,IAAI;GACF,IAAI,CAAC,WACH,MAAM,IAAIb,uBAAAA,cAAc,KAAK,EAAE,SAAS,yBAAyB,CAAC;GAIpE,MADe,UAAU,QAAQ,UACtB,CAAC,CAAC,YAAY,EAAa,UAAU,CAAC;GACjD,OAAO,EAAE,SAAS,KAAK;EACzB,SAAS,OAAO;GACd,OAAOC,8BAAAA,YAAY,OAAO,sBAAsB;EAClD;CACF;AACF,CAAC;AAED,MAAa,qBAAqBC,sBAAAA,YAAY;CAC5C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,gBAAgBY,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,OAAO,EAAE,aAAa;EAC7B,IAAI;GACF,MAAM,UAAU,OAAO,YAAY;GACnC,IAAI,CAAC,SACH,OAAO,EAAE,SAAS,CAAC,EAAE;GAUvB,OAAO,EAAE,SANU,OAAO,QAAQ,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,aAAa;IAClE,IAAI,OAAO,MAAM;IACjB;IACA,MAAM,OAAO,YAAY;GAC3B,EAE2B,EAAE;EAC/B,SAAS,OAAO;GACd,OAAOb,8BAAAA,YAAY,OAAO,6BAA6B;EACzD;CACF;AACF,CAAC;AAED,MAAa,uBAAuBC,sBAAAA,YAAY;CAC9C,QAAQ;CACR,MAAM;CACN,cAAc;CACd,gBAAgBa,gBAAAA;CAChB,SAAS;CACT,aAAa;CACb,MAAM,CAAC,SAAS;CAChB,cAAc;CACd,SAAS,YAAY;EACnB,IAAI;GAUF,OAAO,EAAE,WATaC,iBAAAA,iBAAiB,KAAI,WAAU;IACnD,IAAI,GAAG,MAAM,SAAS,GAAG,MAAM;IAC/B,UAAU,MAAM;IAChB,MAAM,MAAM;IACZ,aAAa,MAAM,eAAe;IAClC,YAAY,MAAM;IAClB,gBAAgB,MAAM;GACxB,EAEgC,EAAE;EACpC,SAAS,OAAO;GACd,OAAOf,8BAAAA,YAAY,OAAO,yBAAyB;EACrD;CACF;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"vector-IxK1t4Cb.cjs","names":["HTTPException","handleError","createRoute","vectorNamePathParams","upsertVectorsBodySchema","upsertVectorsResponseSchema","createIndexBodySchema","createIndexResponseSchema","queryVectorsBodySchema","queryVectorsResponseSchema","listIndexesResponseSchema","vectorIndexPathParams","describeIndexResponseSchema","deleteIndexResponseSchema","listVectorsResponseSchema","listEmbeddersResponseSchema","EMBEDDING_MODELS"],"sources":["../src/server/handlers/vector.ts"],"sourcesContent":["import { EMBEDDING_MODELS } from '@mastra/core/llm';\nimport type { MastraVector, QueryResult, IndexStats, VectorFilter } from '@mastra/core/vector';\nimport { HTTPException } from '../http-exception';\nimport {\n vectorNamePathParams,\n vectorIndexPathParams,\n upsertVectorsBodySchema,\n upsertVectorsResponseSchema,\n createIndexBodySchema,\n createIndexResponseSchema,\n queryVectorsBodySchema,\n queryVectorsResponseSchema,\n listIndexesResponseSchema,\n describeIndexResponseSchema,\n deleteIndexResponseSchema,\n listVectorsResponseSchema,\n listEmbeddersResponseSchema,\n} from '../schemas/vectors';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\n\nimport { handleError } from './error';\n\ninterface VectorContext extends Context {\n vectorName?: string;\n}\n\ninterface UpsertRequest {\n indexName: string;\n vectors: number[][];\n metadata?: Record<string, any>[];\n ids?: string[];\n}\n\ninterface CreateIndexRequest {\n indexName: string;\n dimension: number;\n metric?: 'cosine' | 'euclidean' | 'dotproduct';\n}\n\ninterface QueryRequest {\n indexName: string;\n queryVector: number[];\n topK?: number;\n filter?: Record<string, any>;\n includeVector?: boolean;\n}\n\nfunction getVector(mastra: Context['mastra'], vectorName?: string): MastraVector {\n if (!vectorName) {\n throw new HTTPException(400, { message: 'Vector name is required' });\n }\n\n const vector = mastra.getVector(vectorName);\n if (!vector) {\n throw new HTTPException(404, { message: `Vector store ${vectorName} not found` });\n }\n\n return vector;\n}\n\n// Upsert vectors\nexport async function upsertVectors({\n mastra,\n vectorName,\n indexName,\n vectors,\n metadata,\n ids,\n}: VectorContext & UpsertRequest) {\n try {\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n}\n\n// Create index\nexport async function createIndex({\n mastra,\n vectorName,\n indexName,\n dimension,\n metric,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & CreateIndexRequest) {\n try {\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n}\n\n// Query vectors\nexport async function queryVectors({\n mastra,\n vectorName,\n indexName,\n queryVector,\n topK,\n filter,\n includeVector,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & QueryRequest) {\n try {\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, { message: 'Invalid request query. indexName and queryVector array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({ indexName, queryVector, topK, filter, includeVector });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n}\n\n// List indexes\nexport async function listIndexes({ mastra, vectorName }: Pick<VectorContext, 'mastra' | 'vectorName'>) {\n try {\n const vector = getVector(mastra, vectorName);\n\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n}\n\n// Describe index\nexport async function describeIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n}\n\n// Delete index\nexport async function deleteIndex({\n mastra,\n vectorName,\n indexName,\n}: Pick<VectorContext, 'mastra' | 'vectorName'> & { indexName?: string }) {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n}\n\n// List available vector stores\nexport async function listVectorStores({ mastra }: Pick<VectorContext, 'mastra'>) {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n name,\n id: vector.id || name, // Use the key as fallback when vector has no id property\n type: vector.constructor.name,\n // Add any other metadata that might be useful\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const UPSERT_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/upsert',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: upsertVectorsBodySchema,\n responseSchema: upsertVectorsResponseSchema,\n summary: 'Upsert vectors',\n description: 'Inserts or updates vectors in the specified index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, vectors, metadata, ids } = params;\n\n if (!indexName || !vectors || !Array.isArray(vectors)) {\n throw new HTTPException(400, { message: 'Invalid request index. indexName and vectors array are required.' });\n }\n\n const vector = getVector(mastra, vectorName);\n const result = await vector.upsert({ indexName, vectors, metadata, ids });\n return { ids: result };\n } catch (error) {\n return handleError(error, 'Error upserting vectors');\n }\n },\n});\n\nexport const CREATE_INDEX_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/create-index',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: createIndexBodySchema,\n responseSchema: createIndexResponseSchema,\n summary: 'Create index',\n description: 'Creates a new vector index with the specified dimension and metric',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, dimension, metric } = params;\n\n if (!indexName || typeof dimension !== 'number' || dimension <= 0) {\n throw new HTTPException(400, {\n message: 'Invalid request index, indexName and positive dimension number are required.',\n });\n }\n\n if (metric && !['cosine', 'euclidean', 'dotproduct'].includes(metric)) {\n throw new HTTPException(400, { message: 'Invalid metric. Must be one of: cosine, euclidean, dotproduct' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.createIndex({ indexName, dimension, metric });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error creating index');\n }\n },\n});\n\nexport const QUERY_VECTORS_ROUTE = createRoute({\n method: 'POST',\n path: '/vector/:vectorName/query',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n bodySchema: queryVectorsBodySchema,\n responseSchema: queryVectorsResponseSchema,\n summary: 'Query vectors',\n description: 'Performs a similarity search on the vector index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, ...params }) => {\n try {\n const { indexName, queryVector, topK, filter, includeVector } = params;\n\n if (!indexName || !queryVector || !Array.isArray(queryVector)) {\n throw new HTTPException(400, {\n message: 'Invalid request query. indexName and queryVector array are required.',\n });\n }\n\n const vector = getVector(mastra, vectorName);\n const results: QueryResult[] = await vector.query({\n indexName,\n queryVector,\n topK,\n // Body schema is intentionally permissive; the store validates the filter shape.\n filter: filter as VectorFilter,\n includeVector,\n });\n return results;\n } catch (error) {\n return handleError(error, 'Error querying vectors');\n }\n },\n});\n\nexport const LIST_INDEXES_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes',\n responseType: 'json',\n pathParamSchema: vectorNamePathParams,\n responseSchema: listIndexesResponseSchema,\n summary: 'List indexes',\n description: 'Returns a list of all indexes in the vector store',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName }) => {\n try {\n const vector = getVector(mastra, vectorName);\n const indexes = await vector.listIndexes();\n return indexes.filter(Boolean);\n } catch (error) {\n return handleError(error, 'Error listing indexes');\n }\n },\n});\n\nexport const DESCRIBE_INDEX_ROUTE = createRoute({\n method: 'GET',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: describeIndexResponseSchema,\n summary: 'Describe index',\n description: 'Returns statistics and metadata for a specific index',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n const stats: IndexStats = await vector.describeIndex({ indexName: indexName });\n\n return {\n dimension: stats.dimension,\n count: stats.count,\n metric: stats.metric?.toLowerCase(),\n };\n } catch (error) {\n return handleError(error, 'Error describing index');\n }\n },\n});\n\nexport const DELETE_INDEX_ROUTE = createRoute({\n method: 'DELETE',\n path: '/vector/:vectorName/indexes/:indexName',\n responseType: 'json',\n pathParamSchema: vectorIndexPathParams,\n responseSchema: deleteIndexResponseSchema,\n summary: 'Delete index',\n description: 'Deletes a vector index and all its data',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra, vectorName, indexName }) => {\n try {\n if (!indexName) {\n throw new HTTPException(400, { message: 'Index name is required' });\n }\n\n const vector = getVector(mastra, vectorName);\n await vector.deleteIndex({ indexName: indexName });\n return { success: true };\n } catch (error) {\n return handleError(error, 'Error deleting index');\n }\n },\n});\n\nexport const LIST_VECTORS_ROUTE = createRoute({\n method: 'GET',\n path: '/vectors',\n responseType: 'json',\n responseSchema: listVectorsResponseSchema,\n summary: 'List vector stores',\n description: 'Returns a list of all configured vector stores',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async ({ mastra }) => {\n try {\n const vectors = mastra.listVectors();\n if (!vectors) {\n return { vectors: [] };\n }\n\n // Convert to array and extract metadata\n const vectorList = Object.entries(vectors).map(([name, vector]) => ({\n id: vector.id || name, // Use the key as the ID since vectors might not have their own id property\n name,\n type: vector.constructor.name,\n }));\n\n return { vectors: vectorList };\n } catch (error) {\n return handleError(error, 'Error listing vector stores');\n }\n },\n});\n\nexport const LIST_EMBEDDERS_ROUTE = createRoute({\n method: 'GET',\n path: '/embedders',\n responseType: 'json',\n responseSchema: listEmbeddersResponseSchema,\n summary: 'List available embedder models',\n description: 'Returns a list of all available embedding models',\n tags: ['Vectors'],\n requiresAuth: true,\n handler: async () => {\n try {\n const embeddersList = EMBEDDING_MODELS.map(model => ({\n id: `${model.provider}/${model.id}`,\n provider: model.provider,\n name: model.id,\n description: model.description || '',\n dimensions: model.dimensions,\n maxInputTokens: model.maxInputTokens,\n }));\n\n return { embedders: embeddersList };\n } catch (error) {\n return handleError(error, 'Error listing embedders');\n }\n },\n});\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
const require_common = require("./common-
|
|
1
|
+
const require_common = require("./common-DVZqSEhZ.cjs");
|
|
2
2
|
let zod_v4 = require("zod/v4");
|
|
3
|
-
|
|
3
|
+
// src/server/schemas/vectors.ts
|
|
4
4
|
const vectorNamePathParams = zod_v4.z.object({ vectorName: zod_v4.z.string().describe("Name of the vector store") });
|
|
5
5
|
const vectorIndexPathParams = vectorNamePathParams.extend({ indexName: zod_v4.z.string().describe("Name of the index") });
|
|
6
6
|
const indexBodyBaseSchema = zod_v4.z.object({ indexName: zod_v4.z.string() });
|
|
@@ -47,7 +47,6 @@ const listEmbeddersResponseSchema = zod_v4.z.object({ embedders: zod_v4.z.array(
|
|
|
47
47
|
dimensions: zod_v4.z.number(),
|
|
48
48
|
maxInputTokens: zod_v4.z.number()
|
|
49
49
|
})) });
|
|
50
|
-
//#endregion
|
|
51
50
|
Object.defineProperty(exports, "createIndexBodySchema", {
|
|
52
51
|
enumerable: true,
|
|
53
52
|
get: function() {
|
|
@@ -127,4 +126,4 @@ Object.defineProperty(exports, "vectorNamePathParams", {
|
|
|
127
126
|
}
|
|
128
127
|
});
|
|
129
128
|
|
|
130
|
-
//# sourceMappingURL=vectors-
|
|
129
|
+
//# sourceMappingURL=vectors-CqV387sY.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vectors-
|
|
1
|
+
{"version":3,"file":"vectors-CqV387sY.cjs","names":["z","successResponseSchema"],"sources":["../src/server/schemas/vectors.ts"],"sourcesContent":["import { z } from 'zod/v4';\nimport { successResponseSchema } from './common';\n\n// Path parameter schemas\nexport const vectorNamePathParams = z.object({\n vectorName: z.string().describe('Name of the vector store'),\n});\n\nexport const vectorIndexPathParams = vectorNamePathParams.extend({\n indexName: z.string().describe('Name of the index'),\n});\n\n// Body schemas\n// Base schema for operations that require an index name\nconst indexBodyBaseSchema = z.object({\n indexName: z.string(),\n});\n\nexport const upsertVectorsBodySchema = indexBodyBaseSchema.extend({\n vectors: z.array(z.array(z.number())),\n metadata: z.array(z.record(z.string(), z.unknown())).optional(),\n ids: z.array(z.string()).optional(),\n});\n\nexport const createIndexBodySchema = indexBodyBaseSchema.extend({\n dimension: z.number(),\n metric: z.enum(['cosine', 'euclidean', 'dotproduct']).optional(),\n});\n\nexport const queryVectorsBodySchema = indexBodyBaseSchema.extend({\n queryVector: z.array(z.number()),\n topK: z.number().optional(),\n filter: z.record(z.string(), z.unknown()).optional(),\n includeVector: z.boolean().optional(),\n});\n\n// Response schemas\nexport const upsertVectorsResponseSchema = z.object({\n ids: z.array(z.string()),\n});\n\nexport const createIndexResponseSchema = successResponseSchema;\n\nexport const queryVectorsResponseSchema = z.array(z.unknown()); // QueryResult[]\n\nexport const listIndexesResponseSchema = z.array(z.string());\n\nexport const describeIndexResponseSchema = z.object({\n dimension: z.number(),\n count: z.number(),\n metric: z.string().optional(),\n});\n\nexport const deleteIndexResponseSchema = successResponseSchema;\n\nexport const listVectorsResponseSchema = z.object({\n vectors: z.array(\n z.object({\n id: z.string(),\n name: z.string(),\n type: z.string(),\n description: z.string().optional(),\n }),\n ),\n});\n\nexport const listEmbeddersResponseSchema = z.object({\n embedders: z.array(\n z.object({\n id: z.string(),\n provider: z.string(),\n name: z.string(),\n description: z.string(),\n dimensions: z.number(),\n maxInputTokens: z.number(),\n }),\n ),\n});\n"],"mappings":";;;AAIA,MAAa,uBAAuBA,OAAAA,EAAE,OAAO,EAC3C,YAAYA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B,EAC5D,CAAC;AAED,MAAa,wBAAwB,qBAAqB,OAAO,EAC/D,WAAWA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mBAAmB,EACpD,CAAC;AAID,MAAM,sBAAsBA,OAAAA,EAAE,OAAO,EACnC,WAAWA,OAAAA,EAAE,OAAO,EACtB,CAAC;AAED,MAAa,0BAA0B,oBAAoB,OAAO;CAChE,SAASA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,OAAO,CAAC,CAAC;CACpC,UAAUA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,OAAOA,OAAAA,EAAE,OAAO,GAAGA,OAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;CAC9D,KAAKA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS;AACpC,CAAC;AAED,MAAa,wBAAwB,oBAAoB,OAAO;CAC9D,WAAWA,OAAAA,EAAE,OAAO;CACpB,QAAQA,OAAAA,EAAE,KAAK;EAAC;EAAU;EAAa;CAAY,CAAC,CAAC,CAAC,SAAS;AACjE,CAAC;AAED,MAAa,yBAAyB,oBAAoB,OAAO;CAC/D,aAAaA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,OAAO,CAAC;CAC/B,MAAMA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,QAAQA,OAAAA,EAAE,OAAOA,OAAAA,EAAE,OAAO,GAAGA,OAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS;CACnD,eAAeA,OAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS;AACtC,CAAC;AAGD,MAAa,8BAA8BA,OAAAA,EAAE,OAAO,EAClD,KAAKA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,OAAO,CAAC,EACzB,CAAC;AAED,MAAa,4BAA4BC,eAAAA;AAEzC,MAAa,6BAA6BD,OAAAA,EAAE,MAAMA,OAAAA,EAAE,QAAQ,CAAC;AAE7D,MAAa,4BAA4BA,OAAAA,EAAE,MAAMA,OAAAA,EAAE,OAAO,CAAC;AAE3D,MAAa,8BAA8BA,OAAAA,EAAE,OAAO;CAClD,WAAWA,OAAAA,EAAE,OAAO;CACpB,OAAOA,OAAAA,EAAE,OAAO;CAChB,QAAQA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AAC9B,CAAC;AAED,MAAa,4BAA4BC,eAAAA;AAEzC,MAAa,4BAA4BD,OAAAA,EAAE,OAAO,EAChD,SAASA,OAAAA,EAAE,MACTA,OAAAA,EAAE,OAAO;CACP,IAAIA,OAAAA,EAAE,OAAO;CACb,MAAMA,OAAAA,EAAE,OAAO;CACf,MAAMA,OAAAA,EAAE,OAAO;CACf,aAAaA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AACnC,CAAC,CACH,EACF,CAAC;AAED,MAAa,8BAA8BA,OAAAA,EAAE,OAAO,EAClD,WAAWA,OAAAA,EAAE,MACXA,OAAAA,EAAE,OAAO;CACP,IAAIA,OAAAA,EAAE,OAAO;CACb,UAAUA,OAAAA,EAAE,OAAO;CACnB,MAAMA,OAAAA,EAAE,OAAO;CACf,aAAaA,OAAAA,EAAE,OAAO;CACtB,YAAYA,OAAAA,EAAE,OAAO;CACrB,gBAAgBA,OAAAA,EAAE,OAAO;AAC3B,CAAC,CACH,EACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { f as successResponseSchema } from "./common-
|
|
1
|
+
import { f as successResponseSchema } from "./common-xUmaFUop.js";
|
|
2
2
|
import { z } from "zod/v4";
|
|
3
|
-
|
|
3
|
+
// src/server/schemas/vectors.ts
|
|
4
4
|
const vectorNamePathParams = z.object({ vectorName: z.string().describe("Name of the vector store") });
|
|
5
5
|
const vectorIndexPathParams = vectorNamePathParams.extend({ indexName: z.string().describe("Name of the index") });
|
|
6
6
|
const indexBodyBaseSchema = z.object({ indexName: z.string() });
|
|
@@ -47,7 +47,6 @@ const listEmbeddersResponseSchema = z.object({ embedders: z.array(z.object({
|
|
|
47
47
|
dimensions: z.number(),
|
|
48
48
|
maxInputTokens: z.number()
|
|
49
49
|
})) });
|
|
50
|
-
//#endregion
|
|
51
50
|
export { listEmbeddersResponseSchema as a, queryVectorsBodySchema as c, upsertVectorsResponseSchema as d, vectorIndexPathParams as f, describeIndexResponseSchema as i, queryVectorsResponseSchema as l, createIndexResponseSchema as n, listIndexesResponseSchema as o, vectorNamePathParams as p, deleteIndexResponseSchema as r, listVectorsResponseSchema as s, createIndexBodySchema as t, upsertVectorsBodySchema as u };
|
|
52
51
|
|
|
53
|
-
//# sourceMappingURL=vectors-
|
|
52
|
+
//# sourceMappingURL=vectors-CvHLWqjC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vectors-
|
|
1
|
+
{"version":3,"file":"vectors-CvHLWqjC.js","names":[],"sources":["../src/server/schemas/vectors.ts"],"sourcesContent":["import { z } from 'zod/v4';\nimport { successResponseSchema } from './common';\n\n// Path parameter schemas\nexport const vectorNamePathParams = z.object({\n vectorName: z.string().describe('Name of the vector store'),\n});\n\nexport const vectorIndexPathParams = vectorNamePathParams.extend({\n indexName: z.string().describe('Name of the index'),\n});\n\n// Body schemas\n// Base schema for operations that require an index name\nconst indexBodyBaseSchema = z.object({\n indexName: z.string(),\n});\n\nexport const upsertVectorsBodySchema = indexBodyBaseSchema.extend({\n vectors: z.array(z.array(z.number())),\n metadata: z.array(z.record(z.string(), z.unknown())).optional(),\n ids: z.array(z.string()).optional(),\n});\n\nexport const createIndexBodySchema = indexBodyBaseSchema.extend({\n dimension: z.number(),\n metric: z.enum(['cosine', 'euclidean', 'dotproduct']).optional(),\n});\n\nexport const queryVectorsBodySchema = indexBodyBaseSchema.extend({\n queryVector: z.array(z.number()),\n topK: z.number().optional(),\n filter: z.record(z.string(), z.unknown()).optional(),\n includeVector: z.boolean().optional(),\n});\n\n// Response schemas\nexport const upsertVectorsResponseSchema = z.object({\n ids: z.array(z.string()),\n});\n\nexport const createIndexResponseSchema = successResponseSchema;\n\nexport const queryVectorsResponseSchema = z.array(z.unknown()); // QueryResult[]\n\nexport const listIndexesResponseSchema = z.array(z.string());\n\nexport const describeIndexResponseSchema = z.object({\n dimension: z.number(),\n count: z.number(),\n metric: z.string().optional(),\n});\n\nexport const deleteIndexResponseSchema = successResponseSchema;\n\nexport const listVectorsResponseSchema = z.object({\n vectors: z.array(\n z.object({\n id: z.string(),\n name: z.string(),\n type: z.string(),\n description: z.string().optional(),\n }),\n ),\n});\n\nexport const listEmbeddersResponseSchema = z.object({\n embedders: z.array(\n z.object({\n id: z.string(),\n provider: z.string(),\n name: z.string(),\n description: z.string(),\n dimensions: z.number(),\n maxInputTokens: z.number(),\n }),\n ),\n});\n"],"mappings":";;;AAIA,MAAa,uBAAuB,EAAE,OAAO,EAC3C,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B,EAC5D,CAAC;AAED,MAAa,wBAAwB,qBAAqB,OAAO,EAC/D,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,mBAAmB,EACpD,CAAC;AAID,MAAM,sBAAsB,EAAE,OAAO,EACnC,WAAW,EAAE,OAAO,EACtB,CAAC;AAED,MAAa,0BAA0B,oBAAoB,OAAO;CAChE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;CAC9D,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS;AACpC,CAAC;AAED,MAAa,wBAAwB,oBAAoB,OAAO;CAC9D,WAAW,EAAE,OAAO;CACpB,QAAQ,EAAE,KAAK;EAAC;EAAU;EAAa;CAAY,CAAC,CAAC,CAAC,SAAS;AACjE,CAAC;AAED,MAAa,yBAAyB,oBAAoB,OAAO;CAC/D,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC;CAC/B,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS;CACnD,eAAe,EAAE,QAAQ,CAAC,CAAC,SAAS;AACtC,CAAC;AAGD,MAAa,8BAA8B,EAAE,OAAO,EAClD,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EACzB,CAAC;AAED,MAAa,4BAA4B;AAEzC,MAAa,6BAA6B,EAAE,MAAM,EAAE,QAAQ,CAAC;AAE7D,MAAa,4BAA4B,EAAE,MAAM,EAAE,OAAO,CAAC;AAE3D,MAAa,8BAA8B,EAAE,OAAO;CAClD,WAAW,EAAE,OAAO;CACpB,OAAO,EAAE,OAAO;CAChB,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS;AAC9B,CAAC;AAED,MAAa,4BAA4B;AAEzC,MAAa,4BAA4B,EAAE,OAAO,EAChD,SAAS,EAAE,MACT,EAAE,OAAO;CACP,IAAI,EAAE,OAAO;CACb,MAAM,EAAE,OAAO;CACf,MAAM,EAAE,OAAO;CACf,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS;AACnC,CAAC,CACH,EACF,CAAC;AAED,MAAa,8BAA8B,EAAE,OAAO,EAClD,WAAW,EAAE,MACX,EAAE,OAAO;CACP,IAAI,EAAE,OAAO;CACb,UAAU,EAAE,OAAO;CACnB,MAAM,EAAE,OAAO;CACf,aAAa,EAAE,OAAO;CACtB,YAAY,EAAE,OAAO;CACrB,gBAAgB,EAAE,OAAO;AAC3B,CAAC,CACH,EACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
const require_common = require("./common-
|
|
1
|
+
const require_common = require("./common-DVZqSEhZ.cjs");
|
|
2
2
|
let zod_v4 = require("zod/v4");
|
|
3
|
-
|
|
3
|
+
// src/server/schemas/version-common.ts
|
|
4
4
|
/**
|
|
5
5
|
* Version order by configuration (shared)
|
|
6
6
|
*/
|
|
@@ -62,7 +62,6 @@ function createCompareVersionsResponseSchema(versionSchema) {
|
|
|
62
62
|
toVersion: versionSchema.describe("The target version")
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
|
-
//#endregion
|
|
66
65
|
Object.defineProperty(exports, "activateVersionResponseSchema", {
|
|
67
66
|
enumerable: true,
|
|
68
67
|
get: function() {
|
|
@@ -118,4 +117,4 @@ Object.defineProperty(exports, "versionOrderBySchema", {
|
|
|
118
117
|
}
|
|
119
118
|
});
|
|
120
119
|
|
|
121
|
-
//# sourceMappingURL=version-common-
|
|
120
|
+
//# sourceMappingURL=version-common-B2n_ML_w.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version-common-
|
|
1
|
+
{"version":3,"file":"version-common-B2n_ML_w.cjs","names":["z","createPagePaginationSchema","paginationInfoSchema"],"sources":["../src/server/schemas/version-common.ts"],"sourcesContent":["import { z } from 'zod/v4';\nimport { paginationInfoSchema, createPagePaginationSchema } from './common';\n\n// ============================================================================\n// Query Parameter Schemas (shared across all version endpoints)\n// ============================================================================\n\n/**\n * Version order by configuration (shared)\n */\nexport const versionOrderBySchema = z.object({\n field: z.enum(['versionNumber', 'createdAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n});\n\n/**\n * List versions query params (shared)\n */\nexport const listVersionsQuerySchema = createPagePaginationSchema(20).extend({\n orderBy: versionOrderBySchema.optional(),\n});\n\n/**\n * Compare versions query params (shared)\n */\nexport const compareVersionsQuerySchema = z.object({\n from: z.string().describe('Version ID (UUID) to compare from'),\n to: z.string().describe('Version ID (UUID) to compare to'),\n});\n\n// ============================================================================\n// Body Parameter Schemas (shared)\n// ============================================================================\n\n/**\n * Create version body (shared)\n */\nexport const createVersionBodySchema = z.object({\n changeMessage: z.string().max(500).optional().describe('Optional message describing the changes'),\n});\n\n// ============================================================================\n// Response Schemas (shared)\n// ============================================================================\n\n/**\n * Activate version response (shared)\n */\nexport const activateVersionResponseSchema = z.object({\n success: z.boolean(),\n message: z.string(),\n activeVersionId: z.string(),\n});\n\n/**\n * Delete version response (shared)\n */\nexport const deleteVersionResponseSchema = z.object({\n success: z.boolean(),\n message: z.string(),\n});\n\n/**\n * Single diff entry for version comparison (shared)\n */\nexport const versionDiffEntrySchema = z.object({\n field: z.string().describe('The field path that changed'),\n previousValue: z.unknown().describe('The value in the \"from\" version'),\n currentValue: z.unknown().describe('The value in the \"to\" version'),\n});\n\n/**\n * Helper to create a list versions response schema for a domain-specific version schema.\n */\nexport function createListVersionsResponseSchema<T extends z.ZodTypeAny>(versionSchema: T) {\n return paginationInfoSchema.extend({\n versions: z.array(versionSchema),\n });\n}\n\n/**\n * Helper to create a compare versions response schema for a domain-specific version schema.\n */\nexport function createCompareVersionsResponseSchema<T extends z.ZodTypeAny>(versionSchema: T) {\n return z.object({\n diffs: z.array(versionDiffEntrySchema).describe('List of differences between versions'),\n fromVersion: versionSchema.describe('The source version'),\n toVersion: versionSchema.describe('The target version'),\n });\n}\n"],"mappings":";;;;;;AAUA,MAAa,uBAAuBA,OAAAA,EAAE,OAAO;CAC3C,OAAOA,OAAAA,EAAE,KAAK,CAAC,iBAAiB,WAAW,CAAC,CAAC,CAAC,SAAS;CACvD,WAAWA,OAAAA,EAAE,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,SAAS;AAC9C,CAAC;;;;AAKD,MAAa,0BAA0BC,eAAAA,2BAA2B,EAAE,CAAC,CAAC,OAAO,EAC3E,SAAS,qBAAqB,SAAS,EACzC,CAAC;;;;AAKD,MAAa,6BAA6BD,OAAAA,EAAE,OAAO;CACjD,MAAMA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mCAAmC;CAC7D,IAAIA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC;AAC3D,CAAC;;;;AASD,MAAa,0BAA0BA,OAAAA,EAAE,OAAO,EAC9C,eAAeA,OAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,yCAAyC,EAClG,CAAC;;;;AASD,MAAa,gCAAgCA,OAAAA,EAAE,OAAO;CACpD,SAASA,OAAAA,EAAE,QAAQ;CACnB,SAASA,OAAAA,EAAE,OAAO;CAClB,iBAAiBA,OAAAA,EAAE,OAAO;AAC5B,CAAC;;;;AAKD,MAAa,8BAA8BA,OAAAA,EAAE,OAAO;CAClD,SAASA,OAAAA,EAAE,QAAQ;CACnB,SAASA,OAAAA,EAAE,OAAO;AACpB,CAAC;;;;AAKD,MAAa,yBAAyBA,OAAAA,EAAE,OAAO;CAC7C,OAAOA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B;CACxD,eAAeA,OAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mCAAiC;CACrE,cAAcA,OAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,iCAA+B;AACpE,CAAC;;;;AAKD,SAAgB,iCAAyD,eAAkB;CACzF,OAAOE,eAAAA,qBAAqB,OAAO,EACjC,UAAUF,OAAAA,EAAE,MAAM,aAAa,EACjC,CAAC;AACH;;;;AAKA,SAAgB,oCAA4D,eAAkB;CAC5F,OAAOA,OAAAA,EAAE,OAAO;EACd,OAAOA,OAAAA,EAAE,MAAM,sBAAsB,CAAC,CAAC,SAAS,sCAAsC;EACtF,aAAa,cAAc,SAAS,oBAAoB;EACxD,WAAW,cAAc,SAAS,oBAAoB;CACxD,CAAC;AACH"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { i as createPagePaginationSchema, s as paginationInfoSchema } from "./common-
|
|
1
|
+
import { i as createPagePaginationSchema, s as paginationInfoSchema } from "./common-xUmaFUop.js";
|
|
2
2
|
import { z } from "zod/v4";
|
|
3
|
-
|
|
3
|
+
// src/server/schemas/version-common.ts
|
|
4
4
|
/**
|
|
5
5
|
* Version order by configuration (shared)
|
|
6
6
|
*/
|
|
@@ -62,7 +62,6 @@ function createCompareVersionsResponseSchema(versionSchema) {
|
|
|
62
62
|
toVersion: versionSchema.describe("The target version")
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
|
-
//#endregion
|
|
66
65
|
export { createVersionBodySchema as a, versionDiffEntrySchema as c, createListVersionsResponseSchema as i, versionOrderBySchema as l, compareVersionsQuerySchema as n, deleteVersionResponseSchema as o, createCompareVersionsResponseSchema as r, listVersionsQuerySchema as s, activateVersionResponseSchema as t };
|
|
67
66
|
|
|
68
|
-
//# sourceMappingURL=version-common-
|
|
67
|
+
//# sourceMappingURL=version-common-Di2U8VWH.js.map
|