drizzle-cube 0.6.3 → 0.6.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/adapters/ActivityGridChart.config-Bvi50jl_.cjs +1 -0
- package/dist/adapters/ActivityGridChart.config-BwswifOD.js +2 -0
- package/dist/adapters/AreaChart.config-Cehf1Kjo.cjs +1 -0
- package/dist/adapters/AreaChart.config-DC-gnmli.js +2 -0
- package/dist/adapters/BarChart.config-BY53r96T.cjs +1 -0
- package/dist/adapters/BarChart.config-DJN5Oqmw.js +2 -0
- package/dist/adapters/BoxPlotChart.config-9hLT3yMs.js +2 -0
- package/dist/adapters/BoxPlotChart.config-D9P4PMTf.cjs +1 -0
- package/dist/adapters/BubbleChart.config-CEVSsy7u.js +2 -0
- package/dist/adapters/BubbleChart.config-Cji0z0Tb.cjs +1 -0
- package/dist/adapters/CandlestickChart.config-DPv76FmM.cjs +1 -0
- package/dist/adapters/CandlestickChart.config-tcHTorLu.js +2 -0
- package/dist/adapters/DataTable.config-D4txBrlQ.cjs +1 -0
- package/dist/adapters/DataTable.config-DrObkanI.js +2 -0
- package/dist/adapters/FunnelChart.config-BFYSkibE.js +2 -0
- package/dist/adapters/FunnelChart.config-BTSFeha-.cjs +1 -0
- package/dist/adapters/GaugeChart.config-BFz6NZfT.js +2 -0
- package/dist/adapters/GaugeChart.config-DJKD6oh8.cjs +1 -0
- package/dist/adapters/HeatMapChart.config-C3EZl9Sy.cjs +1 -0
- package/dist/adapters/HeatMapChart.config-jUCb5NAE.js +2 -0
- package/dist/adapters/KpiDelta.config-DhuealNk.js +2 -0
- package/dist/adapters/KpiDelta.config-m6FEIeWo.cjs +1 -0
- package/dist/adapters/KpiNumber.config-Cmd7eHmg.cjs +1 -0
- package/dist/adapters/KpiNumber.config-KQdKrkK-.js +2 -0
- package/dist/adapters/KpiText.config-D_pU4jH3.cjs +1 -0
- package/dist/adapters/KpiText.config-V8SvhllA.js +2 -0
- package/dist/adapters/LineChart.config-BuWM0TJx.js +2 -0
- package/dist/adapters/LineChart.config-CsxJ3f5A.cjs +1 -0
- package/dist/adapters/MarkdownChart.config-CJdjenj7.cjs +1 -0
- package/dist/adapters/MarkdownChart.config-oCWrAuom.js +2 -0
- package/dist/adapters/MeasureProfileChart.config-DBLnhtOk.cjs +1 -0
- package/dist/adapters/MeasureProfileChart.config-DWg0jzxA.js +2 -0
- package/dist/adapters/PieChart.config-D3qI6nbM.cjs +1 -0
- package/dist/adapters/PieChart.config-R2rcul2D.js +2 -0
- package/dist/adapters/RadarChart.config-BlK8QuDi.js +2 -0
- package/dist/adapters/RadarChart.config-fH3ce10I.cjs +1 -0
- package/dist/adapters/RadialBarChart.config-CqCnb27I.js +2 -0
- package/dist/adapters/RadialBarChart.config-DQQHJOCs.cjs +1 -0
- package/dist/adapters/RetentionCombinedChart.config-BFJ8i-kp.js +2 -0
- package/dist/adapters/RetentionCombinedChart.config-B_Wd_YjX.cjs +1 -0
- package/dist/adapters/RetentionHeatmap.config-BLqu9-Ft.js +2 -0
- package/dist/adapters/RetentionHeatmap.config-MvOPw_Dd.cjs +1 -0
- package/dist/adapters/SankeyChart.config-C_4u9Xiq.js +2 -0
- package/dist/adapters/SankeyChart.config-EH6wsjPr.cjs +1 -0
- package/dist/adapters/ScatterChart.config-D-MlQ7mP.js +2 -0
- package/dist/adapters/ScatterChart.config-DmwiEBN-.cjs +1 -0
- package/dist/adapters/SunburstChart.config-BRr_as_L.js +2 -0
- package/dist/adapters/SunburstChart.config-CptDj8e4.cjs +1 -0
- package/dist/adapters/TreeMapChart.config-D5wX2xaT.cjs +1 -0
- package/dist/adapters/TreeMapChart.config-Dyhwpwq3.js +2 -0
- package/dist/adapters/WaterfallChart.config-B_LGJIov.js +2 -0
- package/dist/adapters/WaterfallChart.config-Q4Fv196W.cjs +1 -0
- package/dist/adapters/compiler-D0v5KJhv.cjs +166 -0
- package/dist/adapters/{compiler-LKTN9PTt.js → compiler-ZruQ85ff.js} +247 -238
- package/dist/adapters/core/index.cjs +1 -1
- package/dist/adapters/core/index.js +1 -1
- package/dist/adapters/{core-F1pCQPde.cjs → core-CVqTwOR3.cjs} +1 -1
- package/dist/adapters/{core-Bbchr0ui.js → core-DoSUiMmv.js} +60 -60
- package/dist/adapters/express/index.cjs +2 -2
- package/dist/adapters/express/index.js +80 -75
- package/dist/adapters/fastify/index.cjs +2 -2
- package/dist/adapters/fastify/index.js +63 -58
- package/dist/adapters/{handler-DRZb2ip6.cjs → handler-DyIyrFFp.cjs} +3 -3
- package/dist/adapters/{handler-u8FyzPBT.js → handler-j74EJDdo.js} +28 -28
- package/dist/adapters/hono/index.cjs +2 -2
- package/dist/adapters/hono/index.js +57 -52
- package/dist/adapters/mcp-tools.cjs +1 -1
- package/dist/adapters/mcp-tools.js +2 -2
- package/dist/adapters/mcp-transport-BuU5CrKL.cjs +40 -0
- package/dist/adapters/mcp-transport-l8DhKzR5.js +601 -0
- package/dist/adapters/mcp-transport.d.ts +21 -3
- package/dist/adapters/nextjs/index.cjs +1 -1
- package/dist/adapters/nextjs/index.d.ts +10 -0
- package/dist/adapters/nextjs/index.js +114 -105
- package/dist/{server/openai-CmMzrs1Y.js → adapters/openai-BCSKRcbD.js} +10 -10
- package/dist/{server/openai-DhzGY9R4.js → adapters/openai-BjR3ohaS.js} +1 -1
- package/dist/{server/openai-B4kAJTSD.cjs → adapters/openai-ClVVLjNl.cjs} +2 -2
- package/dist/adapters/{openai-Cdf2wWZA.cjs → openai-CsVXOcJZ.cjs} +1 -1
- package/dist/adapters/utils-CBR-9AMD.cjs +128 -0
- package/dist/adapters/{utils-BPWZsX7k.js → utils-U7gV5wQL.js} +789 -788
- package/dist/adapters/utils.cjs +1 -1
- package/dist/adapters/utils.d.ts +16 -4
- package/dist/adapters/utils.js +1 -1
- package/dist/cjs/adapters/mcp-transport.d.ts +21 -3
- package/dist/cjs/adapters/nextjs/index.d.ts +10 -0
- package/dist/cjs/adapters/utils.d.ts +16 -4
- package/dist/cjs/client/components/AnalysisBuilder/utils/filterUtils.d.ts +4 -10
- package/dist/cjs/client/components/shared/utils.d.ts +2 -1
- package/dist/cjs/client/shared/filters/filterOperations.d.ts +95 -0
- package/dist/cjs/client/shared/filters/index.d.ts +10 -0
- package/dist/cjs/client/shared/filters/operators.d.ts +23 -0
- package/dist/cjs/client/shared/index.d.ts +3 -2
- package/dist/cjs/client/shared/types.d.ts +3 -10
- package/dist/cjs/client/shared/utils.d.ts +1 -59
- package/dist/cjs/client/utils/filterUtils.d.ts +2 -9
- package/dist/cjs/server/executors/sqlite-executor.d.ts +8 -2
- package/dist/cjs/server/logical-plan/logical-plan-builder.d.ts +0 -5
- package/dist/cjs/server/logical-plan/schema-builder.d.ts +19 -0
- package/dist/client/charts.js +13 -13
- package/dist/client/chunks/ConfirmModal-D6eLc9NO.js +3283 -0
- package/dist/client/chunks/ConfirmModal-D6eLc9NO.js.map +1 -0
- package/dist/client/chunks/{DashboardEditModal-CWurUU2B.js → DashboardEditModal-DFQSxR_C.js} +1157 -4011
- package/dist/client/chunks/DashboardEditModal-DFQSxR_C.js.map +1 -0
- package/dist/client/chunks/{RetentionCombinedChart-BgbDhsPz.js → RetentionCombinedChart-DY7wKLs5.js} +3 -3
- package/dist/client/chunks/{RetentionCombinedChart-BgbDhsPz.js.map → RetentionCombinedChart-DY7wKLs5.js.map} +1 -1
- package/dist/client/chunks/{RetentionHeatmap-DjXZaTPq.js → RetentionHeatmap-iNCG-dLd.js} +2 -2
- package/dist/client/chunks/{RetentionHeatmap-DjXZaTPq.js.map → RetentionHeatmap-iNCG-dLd.js.map} +1 -1
- package/dist/client/chunks/{analysis-builder-Uj_Fxv0-.js → analysis-builder-CBZ7lOC-.js} +323 -323
- package/dist/client/chunks/{analysis-builder-Uj_Fxv0-.js.map → analysis-builder-CBZ7lOC-.js.map} +1 -1
- package/dist/client/chunks/{analysis-builder-shared-AdAYIfj_.js → analysis-builder-shared-8alCn-zw.js} +989 -1064
- package/dist/client/chunks/analysis-builder-shared-8alCn-zw.js.map +1 -0
- package/dist/client/chunks/{chart-activity-grid-DX0SJbxs.js → chart-activity-grid-DDqFVWoa.js} +5 -2
- package/dist/client/chunks/{chart-activity-grid-DX0SJbxs.js.map → chart-activity-grid-DDqFVWoa.js.map} +1 -1
- package/dist/client/chunks/{chart-area-of01_62R.js → chart-area-BHxPNsmc.js} +2 -2
- package/dist/client/chunks/{chart-area-of01_62R.js.map → chart-area-BHxPNsmc.js.map} +1 -1
- package/dist/client/chunks/{chart-bar-BqelQE_I.js → chart-bar-DAO3PPcE.js} +3 -3
- package/dist/client/chunks/{chart-bar-BqelQE_I.js.map → chart-bar-DAO3PPcE.js.map} +1 -1
- package/dist/client/chunks/{chart-box-plot-kkBixZ27.js → chart-box-plot-CUpFyQQk.js} +2 -2
- package/dist/client/chunks/{chart-box-plot-kkBixZ27.js.map → chart-box-plot-CUpFyQQk.js.map} +1 -1
- package/dist/client/chunks/{chart-bubble-B2he1--4.js → chart-bubble-DvP_6_n9.js} +2 -2
- package/dist/client/chunks/{chart-bubble-B2he1--4.js.map → chart-bubble-DvP_6_n9.js.map} +1 -1
- package/dist/client/chunks/{chart-candlestick-DZp19Tzh.js → chart-candlestick-Dx8ZCMzl.js} +2 -2
- package/dist/client/chunks/{chart-candlestick-DZp19Tzh.js.map → chart-candlestick-Dx8ZCMzl.js.map} +1 -1
- package/dist/client/chunks/{chart-data-table-D4g5_jfF.js → chart-data-table-BP6DMdom.js} +32 -16
- package/dist/client/chunks/chart-data-table-BP6DMdom.js.map +1 -0
- package/dist/client/chunks/{chart-funnel-CToKSBaL.js → chart-funnel-xeVGBy-p.js} +2 -2
- package/dist/client/chunks/{chart-funnel-CToKSBaL.js.map → chart-funnel-xeVGBy-p.js.map} +1 -1
- package/dist/client/chunks/{chart-gauge-DTVezSk7.js → chart-gauge-DXQ4r3cb.js} +3 -3
- package/dist/client/chunks/{chart-gauge-DTVezSk7.js.map → chart-gauge-DXQ4r3cb.js.map} +1 -1
- package/dist/client/chunks/{chart-heat-map-DTuUl0BR.js → chart-heat-map-Pnk6rhqQ.js} +3 -3
- package/dist/client/chunks/{chart-heat-map-DTuUl0BR.js.map → chart-heat-map-Pnk6rhqQ.js.map} +1 -1
- package/dist/client/chunks/{chart-kpi-delta-BvWOt8-D.js → chart-kpi-delta-nXQnRRBr.js} +3 -3
- package/dist/client/chunks/{chart-kpi-delta-BvWOt8-D.js.map → chart-kpi-delta-nXQnRRBr.js.map} +1 -1
- package/dist/client/chunks/{chart-kpi-number-xgZmMiQY.js → chart-kpi-number-m8UGJfBr.js} +5 -5
- package/dist/client/chunks/{chart-kpi-number-xgZmMiQY.js.map → chart-kpi-number-m8UGJfBr.js.map} +1 -1
- package/dist/client/chunks/{chart-kpi-text-ZO3eFi7t.js → chart-kpi-text-CurpqmaD.js} +7 -4
- package/dist/client/chunks/{chart-kpi-text-ZO3eFi7t.js.map → chart-kpi-text-CurpqmaD.js.map} +1 -1
- package/dist/client/chunks/{chart-line-DKgrQA6c.js → chart-line-sJK-cJc0.js} +3 -3
- package/dist/client/chunks/{chart-line-DKgrQA6c.js.map → chart-line-sJK-cJc0.js.map} +1 -1
- package/dist/client/chunks/{chart-markdown-CV75S_zL.js → chart-markdown-BVrqqygz.js} +1263 -1192
- package/dist/client/chunks/chart-markdown-BVrqqygz.js.map +1 -0
- package/dist/client/chunks/{chart-measure-profile-Ket8fJyf.js → chart-measure-profile-k9_QDQbB.js} +3 -3
- package/dist/client/chunks/{chart-measure-profile-Ket8fJyf.js.map → chart-measure-profile-k9_QDQbB.js.map} +1 -1
- package/dist/client/chunks/{chart-pie-ByieAX5H.js → chart-pie-BDaaYt7a.js} +3 -3
- package/dist/client/chunks/{chart-pie-ByieAX5H.js.map → chart-pie-BDaaYt7a.js.map} +1 -1
- package/dist/client/chunks/{chart-radar-CiSwHWp4.js → chart-radar-Bz07PIVe.js} +3 -3
- package/dist/client/chunks/{chart-radar-CiSwHWp4.js.map → chart-radar-Bz07PIVe.js.map} +1 -1
- package/dist/client/chunks/{chart-radial-bar-BF6Mhl6f.js → chart-radial-bar-DpyxKQMj.js} +3 -3
- package/dist/client/chunks/{chart-radial-bar-BF6Mhl6f.js.map → chart-radial-bar-DpyxKQMj.js.map} +1 -1
- package/dist/client/chunks/{chart-sankey-DjrvKw6K.js → chart-sankey-BAeNbI-p.js} +2 -2
- package/dist/client/chunks/{chart-sankey-DjrvKw6K.js.map → chart-sankey-BAeNbI-p.js.map} +1 -1
- package/dist/client/chunks/{chart-scatter-Dd9WFqnS.js → chart-scatter-CRhGLCcy.js} +3 -3
- package/dist/client/chunks/{chart-scatter-Dd9WFqnS.js.map → chart-scatter-CRhGLCcy.js.map} +1 -1
- package/dist/client/chunks/{chart-sunburst-leGpuDj7.js → chart-sunburst-D3wV5OrK.js} +3 -3
- package/dist/client/chunks/{chart-sunburst-leGpuDj7.js.map → chart-sunburst-D3wV5OrK.js.map} +1 -1
- package/dist/client/chunks/{chart-tree-map-Ceq5sLZA.js → chart-tree-map-iI3ewOKY.js} +3 -3
- package/dist/client/chunks/{chart-tree-map-Ceq5sLZA.js.map → chart-tree-map-iI3ewOKY.js.map} +1 -1
- package/dist/client/chunks/{chart-waterfall-DyvQReN5.js → chart-waterfall-BrrYTZfs.js} +3 -3
- package/dist/client/chunks/{chart-waterfall-DyvQReN5.js.map → chart-waterfall-BrrYTZfs.js.map} +1 -1
- package/dist/client/chunks/{charts-core-DaXSt1Dd.js → charts-core-Cs-UIsQa.js} +2 -2
- package/dist/client/chunks/{charts-core-DaXSt1Dd.js.map → charts-core-Cs-UIsQa.js.map} +1 -1
- package/dist/client/chunks/charts-loader-DAJbAD7a.js +84 -0
- package/dist/client/chunks/{charts-loader-B0DOQMFH.js.map → charts-loader-DAJbAD7a.js.map} +1 -1
- package/dist/client/chunks/core-D7vPfUIe.js.map +1 -1
- package/dist/client/chunks/{dist-zPWyTBdU.js → dist-BwQr11Fz.js} +251 -252
- package/dist/client/chunks/{dist-zPWyTBdU.js.map → dist-BwQr11Fz.js.map} +1 -1
- package/dist/client/chunks/{exceljs.min-CIqBqwTW.js → exceljs.min-Dey-qIFL.js} +16 -16
- package/dist/client/chunks/{exceljs.min-CIqBqwTW.js.map → exceljs.min-Dey-qIFL.js.map} +1 -1
- package/dist/client/chunks/javascript-DFnKaHmQ.js.map +1 -1
- package/dist/client/chunks/retention-ChW9jYdy.js.map +1 -1
- package/dist/client/chunks/{schema-visualization-DJPTktM6.js → schema-visualization-BGT_cNon.js} +12 -12
- package/dist/client/chunks/{schema-visualization-DJPTktM6.js.map → schema-visualization-BGT_cNon.js.map} +1 -1
- package/dist/client/chunks/sql-CmVzGP4w.js.map +1 -1
- package/dist/client/chunks/syntaxHighlighting-Bq2Bj9Xt.js +30 -0
- package/dist/client/chunks/syntaxHighlighting-Bq2Bj9Xt.js.map +1 -0
- package/dist/client/chunks/{useDirtyStateTracking-BY_IIG1n.js → useDebounce-7suCFq9v.js} +250 -653
- package/dist/client/chunks/useDebounce-7suCFq9v.js.map +1 -0
- package/dist/client/chunks/useDirtyStateTracking-D2OiqKoQ.js +66 -0
- package/dist/client/chunks/useDirtyStateTracking-D2OiqKoQ.js.map +1 -0
- package/dist/client/chunks/{useExplainAI-PjMBmj2p.js → useExplainAI-CEf04DPE.js} +14 -14
- package/dist/client/chunks/{useExplainAI-PjMBmj2p.js.map → useExplainAI-CEf04DPE.js.map} +1 -1
- package/dist/client/chunks/useNotebookLayout-Ck3Z3uzg.js.map +1 -1
- package/dist/client/chunks/utils-DjLiJKS_.js +104 -0
- package/dist/client/chunks/utils-DjLiJKS_.js.map +1 -0
- package/dist/client/chunks/{vendor-D4jADu8t.js → vendor-DFAQ4Ucl.js} +5 -3
- package/dist/client/chunks/{vendor-D4jADu8t.js.map → vendor-DFAQ4Ucl.js.map} +1 -1
- package/dist/client/components/AnalysisBuilder/utils/filterUtils.d.ts +4 -10
- package/dist/client/components/shared/utils.d.ts +2 -1
- package/dist/client/components.js +4 -3
- package/dist/client/hooks.js +5 -4
- package/dist/client/icons.js +1 -1
- package/dist/client/index.js +34 -30
- package/dist/client/index.js.map +1 -1
- package/dist/client/providers.js +1 -1
- package/dist/client/schema.js +1 -1
- package/dist/client/shared/filters/filterOperations.d.ts +95 -0
- package/dist/client/shared/filters/index.d.ts +10 -0
- package/dist/client/shared/filters/operators.d.ts +23 -0
- package/dist/client/shared/index.d.ts +3 -2
- package/dist/client/shared/types.d.ts +3 -10
- package/dist/client/shared/utils.d.ts +1 -59
- package/dist/client/styles.css +1 -1
- package/dist/client/utils/filterUtils.d.ts +2 -9
- package/dist/client/utils.js +32 -6
- package/dist/client/utils.js.map +1 -0
- package/dist/client-bundle-stats.html +1 -1
- package/dist/mcp-app/mcp-app.html +145 -50
- package/dist/server/executors/sqlite-executor.d.ts +8 -2
- package/dist/server/index.cjs +34 -34
- package/dist/server/index.js +1557 -1547
- package/dist/server/logical-plan/logical-plan-builder.d.ts +0 -5
- package/dist/server/logical-plan/schema-builder.d.ts +19 -0
- package/dist/{adapters/openai-CmMzrs1Y.js → server/openai-BCSKRcbD.js} +10 -10
- package/dist/{adapters/openai-DhzGY9R4.js → server/openai-BjR3ohaS.js} +1 -1
- package/dist/{adapters/openai-B4kAJTSD.cjs → server/openai-ClVVLjNl.cjs} +2 -2
- package/dist/server/{openai-Cdf2wWZA.cjs → openai-CsVXOcJZ.cjs} +1 -1
- package/package.json +11 -7
- package/dist/adapters/ActivityGridChart.config-BtECymia.cjs +0 -1
- package/dist/adapters/ActivityGridChart.config-CTd5HYjI.js +0 -2
- package/dist/adapters/AreaChart.config-1B8iQnfn.js +0 -2
- package/dist/adapters/AreaChart.config-hnncyQL4.cjs +0 -1
- package/dist/adapters/BarChart.config-C-QCf1rL.cjs +0 -1
- package/dist/adapters/BarChart.config-CFelK1qP.js +0 -2
- package/dist/adapters/BoxPlotChart.config-CD9WEPyF.js +0 -2
- package/dist/adapters/BoxPlotChart.config-DEbLA0BX.cjs +0 -1
- package/dist/adapters/BubbleChart.config-B_M4hzzV.js +0 -2
- package/dist/adapters/BubbleChart.config-dRZZlAke.cjs +0 -1
- package/dist/adapters/CandlestickChart.config-Dsil2Fop.cjs +0 -1
- package/dist/adapters/CandlestickChart.config-fuhyFvob.js +0 -2
- package/dist/adapters/DataTable.config-q2gqBi6t.cjs +0 -1
- package/dist/adapters/DataTable.config-wIQnHX5R.js +0 -2
- package/dist/adapters/FunnelChart.config-Dz710ssx.js +0 -2
- package/dist/adapters/FunnelChart.config-YNP9CeS-.cjs +0 -1
- package/dist/adapters/GaugeChart.config-BG9FcMCn.cjs +0 -1
- package/dist/adapters/GaugeChart.config-CgwniXkd.js +0 -2
- package/dist/adapters/HeatMapChart.config-1zSMXXoN.cjs +0 -1
- package/dist/adapters/HeatMapChart.config-YVEWx6s5.js +0 -2
- package/dist/adapters/KpiDelta.config-BWvYXuFp.cjs +0 -1
- package/dist/adapters/KpiDelta.config-C_dYM64q.js +0 -2
- package/dist/adapters/KpiNumber.config-CXg6toZG.js +0 -2
- package/dist/adapters/KpiNumber.config-CZmV-yU1.cjs +0 -1
- package/dist/adapters/KpiText.config-BY-SJvAF.js +0 -2
- package/dist/adapters/KpiText.config-GSIxy0CE.cjs +0 -1
- package/dist/adapters/LineChart.config-CJtF8SOu.js +0 -2
- package/dist/adapters/LineChart.config-d0y60gw9.cjs +0 -1
- package/dist/adapters/MarkdownChart.config-B6w0spya.cjs +0 -1
- package/dist/adapters/MarkdownChart.config-BuIQcWOn.js +0 -2
- package/dist/adapters/MeasureProfileChart.config-Bo2n5Ae5.cjs +0 -1
- package/dist/adapters/MeasureProfileChart.config-C5d34lsc.js +0 -2
- package/dist/adapters/PieChart.config-CDxfXCIt.cjs +0 -1
- package/dist/adapters/PieChart.config-CuZxQc5m.js +0 -2
- package/dist/adapters/RadarChart.config-DpdVWyh5.cjs +0 -1
- package/dist/adapters/RadarChart.config-KrxwaaGu.js +0 -2
- package/dist/adapters/RadialBarChart.config-DpRZd0FW.js +0 -2
- package/dist/adapters/RadialBarChart.config-faIY4jpE.cjs +0 -1
- package/dist/adapters/RetentionCombinedChart.config-CUnScqnS.cjs +0 -1
- package/dist/adapters/RetentionCombinedChart.config-Dd8FuawP.js +0 -2
- package/dist/adapters/RetentionHeatmap.config-CPd6GeoQ.js +0 -2
- package/dist/adapters/RetentionHeatmap.config-CPlHbLom.cjs +0 -1
- package/dist/adapters/SankeyChart.config-DbIUqi-H.cjs +0 -1
- package/dist/adapters/SankeyChart.config-kzAnW0C7.js +0 -2
- package/dist/adapters/ScatterChart.config-4Okvn27v.js +0 -2
- package/dist/adapters/ScatterChart.config-4f9nNw3e.cjs +0 -1
- package/dist/adapters/SunburstChart.config-BsUQkIM_.js +0 -2
- package/dist/adapters/SunburstChart.config-lvnYkWs7.cjs +0 -1
- package/dist/adapters/TreeMapChart.config-S0qsgAFW.js +0 -2
- package/dist/adapters/TreeMapChart.config-jbwKsTYt.cjs +0 -1
- package/dist/adapters/WaterfallChart.config-CDQ74-pS.cjs +0 -1
- package/dist/adapters/WaterfallChart.config-XdtH-O5g.js +0 -2
- package/dist/adapters/compiler-ChGO4ZLU.cjs +0 -166
- package/dist/adapters/mcp-transport-Bw_zqky2.js +0 -591
- package/dist/adapters/mcp-transport-CNIPoe1i.cjs +0 -40
- package/dist/adapters/utils-_whV4fXL.cjs +0 -128
- package/dist/client/chunks/DashboardEditModal-CWurUU2B.js.map +0 -1
- package/dist/client/chunks/analysis-builder-shared-AdAYIfj_.js.map +0 -1
- package/dist/client/chunks/chart-data-table-D4g5_jfF.js.map +0 -1
- package/dist/client/chunks/chart-markdown-CV75S_zL.js.map +0 -1
- package/dist/client/chunks/charts-loader-B0DOQMFH.js +0 -84
- package/dist/client/chunks/useDirtyStateTracking-BY_IIG1n.js.map +0 -1
- package/dist/client/chunks/utils-Cq-j5E5I.js +0 -155
- package/dist/client/chunks/utils-Cq-j5E5I.js.map +0 -1
|
@@ -82,12 +82,16 @@ export declare const MCP_PROTOCOL_VERSION_HEADER = "mcp-protocol-version";
|
|
|
82
82
|
export declare function validateAcceptHeader(accept: string | null | undefined): boolean;
|
|
83
83
|
export interface OriginValidationOptions {
|
|
84
84
|
/**
|
|
85
|
-
* List of allowed origins (e.g., ['http://localhost:3000', 'https://myapp.com'])
|
|
86
|
-
* If not provided,
|
|
85
|
+
* List of allowed origins (e.g., ['http://localhost:3000', 'https://myapp.com']).
|
|
86
|
+
* If not provided, the default policy admits loopback origins (localhost / 127.x /
|
|
87
|
+
* [::1]) plus non-browser clients that send no Origin header; any other browser
|
|
88
|
+
* Origin is rejected. Include the wildcard `'*'` to allow ALL origins (permissive
|
|
89
|
+
* mode — discouraged; prefer listing exact origins or enabling auth).
|
|
87
90
|
*/
|
|
88
91
|
allowedOrigins?: string[];
|
|
89
92
|
/**
|
|
90
|
-
* If true, allows requests without an Origin header (non-browser
|
|
93
|
+
* If true, allows requests without an Origin header (non-browser / server-to-server
|
|
94
|
+
* clients such as the Claude MCP connector, curl, Postman).
|
|
91
95
|
* @default true
|
|
92
96
|
*/
|
|
93
97
|
allowMissingOrigin?: boolean;
|
|
@@ -97,6 +101,11 @@ export interface OriginValidationOptions {
|
|
|
97
101
|
* Servers MUST validate Origin to prevent DNS rebinding attacks.
|
|
98
102
|
* If Origin is present and invalid, MUST respond with 403 Forbidden.
|
|
99
103
|
*
|
|
104
|
+
* Default policy (no `allowedOrigins`): admit loopback origins and requests with no
|
|
105
|
+
* Origin header (non-browser / server-to-server clients); reject every other browser
|
|
106
|
+
* Origin. Configure `allowedOrigins` to expose a browser front-end, or include `'*'`
|
|
107
|
+
* to restore fully-permissive behavior.
|
|
108
|
+
*
|
|
100
109
|
* @returns { valid: true } if allowed, or { valid: false, reason: string } if blocked
|
|
101
110
|
*/
|
|
102
111
|
export declare function validateOriginHeader(origin: string | null | undefined, options?: OriginValidationOptions): {
|
|
@@ -105,6 +114,15 @@ export declare function validateOriginHeader(origin: string | null | undefined,
|
|
|
105
114
|
valid: false;
|
|
106
115
|
reason: string;
|
|
107
116
|
};
|
|
117
|
+
/**
|
|
118
|
+
* Build {@link OriginValidationOptions} from an MCP config, forwarding the
|
|
119
|
+
* configured allowlist (if any) so `validateOriginHeader` applies the same policy
|
|
120
|
+
* for POST, GET, and DELETE `/mcp` across every adapter. When `allowedOrigins` is
|
|
121
|
+
* absent, the loopback-only default policy applies.
|
|
122
|
+
*/
|
|
123
|
+
export declare function originOptionsFromMcp(mcp: {
|
|
124
|
+
allowedOrigins?: string[];
|
|
125
|
+
}): OriginValidationOptions;
|
|
108
126
|
/**
|
|
109
127
|
* Extract a Bearer token from an Authorization header.
|
|
110
128
|
* Returns the token string if present and well-formed, or null otherwise.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../utils-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../utils-CBR-9AMD.cjs"),t=require("../compiler-D0v5KJhv.cjs"),n=require("../mcp-transport-BuU5CrKL.cjs"),r=require("../core-CVqTwOR3.cjs");let i=require("next/server");function a(e,t){let r=new TextEncoder,a=n.v(),o=new ReadableStream({start(e){e.enqueue(r.encode(n.x({jsonrpc:`2.0`,method:`mcp/ready`,params:{protocol:`streamable-http`}},a,15e3)))}}),s=new Headers({"Content-Type":`text/event-stream`,"Cache-Control":`no-cache`,Connection:`keep-alive`});return t(e,s),new i.NextResponse(o,{status:200,headers:s})}function o(e){if(e.semanticLayer)return e.semanticLayer;let{cubes:n,drizzle:r,schema:i,engineType:a,cache:o,rlsSetup:s}=e;if(!n||n.length===0)throw Error(`At least one cube must be provided in the cubes array`);let c=new t.t({drizzle:r,schema:i,engineType:a,cache:o,rlsSetup:s});return n.forEach(e=>{c.registerCube(e)}),c}function s(e){return{extractSecurityContext:async(t,n)=>r.o(await e.extractSecurityContext(t,n),r.a(e=>t.headers.get(e))),cors:e.cors?{...e.cors,allowedHeaders:r.i(e.cors.allowedHeaders)}:void 0}}function c(e,t){let n=e.headers.get(`origin`),r={};return t.origin&&(typeof t.origin==`string`?r[`Access-Control-Allow-Origin`]=t.origin:Array.isArray(t.origin)?n&&t.origin.includes(n)&&(r[`Access-Control-Allow-Origin`]=n):typeof t.origin==`function`&&n&&t.origin(n)&&(r[`Access-Control-Allow-Origin`]=n)),t.methods&&(r[`Access-Control-Allow-Methods`]=t.methods.join(`, `)),t.allowedHeaders&&(r[`Access-Control-Allow-Headers`]=t.allowedHeaders.join(`, `)),t.credentials&&(r[`Access-Control-Allow-Credentials`]=`true`),r}function l(e){let t=r.t({semanticLayer:o(e),onError:e=>{process.env.NODE_ENV!==`test`&&console.error(`Next.js handler error:`,e)},mcp:e.mcp}),n=e.cors?{...e.cors,allowedHeaders:r.i(e.cors.allowedHeaders)}:void 0;return{httpHandler:t,corsHeaders:e=>n?c(e,n):{},baseContext:(t,n)=>()=>e.extractSecurityContext(t,n)}}function u(e,t){let n={};return{getHeader:t=>e.headers.get(t)??void 0,getBody:async()=>{try{return await e.json()}catch{return null}},getQueryParam:t=>e.nextUrl.searchParams.get(t)??void 0,send:(e,r)=>i.NextResponse.json(r,{status:e,headers:{...t,...n}}),setHeader:(e,t)=>{n[e]=t},sendEmpty:e=>new i.NextResponse(null,{status:e,headers:{...t,...n}}),sendSse:(e,r)=>new i.NextResponse(r,{status:e,headers:{"Content-Type":`text/event-stream`,"Cache-Control":`no-cache`,Connection:`keep-alive`,...t,...n}})}}function d(e){return async function(t){let n=c(t,{...e,allowedHeaders:r.i(e.allowedHeaders)});return new Response(null,{status:200,headers:n})}}function f(t){let{httpHandler:n,corsHeaders:r,baseContext:a}=l(t);return async function(t,o){let s=u(t,r(t));return t.method===`POST`?n.handleLoadPost(s,a(t,o)):t.method===`GET`?n.handleLoadGet(s,a(t,o)):i.NextResponse.json(e.i(`Method not allowed`,405),{status:405})}}function p(e){let{httpHandler:t,corsHeaders:n}=l(e);return async function(e,r){return t.handleMetaGet(u(e,n(e)))}}function m(t){let{httpHandler:n,corsHeaders:r,baseContext:a}=l(t);return async function(t,o){let s=u(t,r(t));return t.method===`POST`?n.handleSqlPost(s,a(t,o)):t.method===`GET`?n.handleSqlGet(s,a(t,o)):i.NextResponse.json(e.i(`Method not allowed`,405),{status:405})}}function h(e){let{httpHandler:t,corsHeaders:n,baseContext:r}=l(e);return async function(e,a){let o=u(e,n(e));return e.method===`POST`?t.handleDryRunPost(o,r(e,a)):e.method===`GET`?t.handleDryRunGet(o,r(e,a)):i.NextResponse.json({error:`Method not allowed`,valid:!1},{status:405})}}function g(t){let{httpHandler:n,corsHeaders:r,baseContext:a}=l(t);return async function(t,o){return t.method===`POST`?n.handleBatchPost(u(t,r(t)),a(t,o)):i.NextResponse.json(e.i(`Method not allowed - use POST`,405),{status:405})}}function _(e){let{httpHandler:t,corsHeaders:n,baseContext:r}=l(e);return async function(e,a){return e.method===`POST`?t.handleExplainPost(u(e,n(e)),r(e,a)):i.NextResponse.json({error:`Method not allowed`},{status:405})}}function v(t){let{cors:n}=s(t),r=o(t);return async function(t,a){try{if(t.method!==`POST`)return i.NextResponse.json(e.i(`Method not allowed - use POST`,405),{status:405});let a=await t.json(),o=await e.p(r,a);return i.NextResponse.json(o,{headers:n?c(t,n):{}})}catch(t){return process.env.NODE_ENV!==`test`&&console.error(`Next.js discover handler error:`,t),i.NextResponse.json(e.i(t instanceof Error?t.message:`Discovery failed`,500),{status:500})}}}function y(t){let{cors:n}=s(t),r=o(t);return async function(t,a){try{if(t.method!==`POST`)return i.NextResponse.json(e.i(`Method not allowed - use POST`,405),{status:405});let a=await t.json();if(!a.naturalLanguage)return i.NextResponse.json(e.i(`naturalLanguage field is required`,400),{status:400});let o=await e.d(r,a);return i.NextResponse.json(o,{headers:n?c(t,n):{}})}catch(t){return process.env.NODE_ENV!==`test`&&console.error(`Next.js suggest handler error:`,t),i.NextResponse.json(e.i(t instanceof Error?t.message:`Query suggestion failed`,500),{status:500})}}}function b(t){let{cors:n}=s(t),r=o(t);return async function(t,a){try{if(t.method!==`POST`)return i.NextResponse.json(e.i(`Method not allowed - use POST`,405),{status:405});let a=await t.json();if(!a.query)return i.NextResponse.json(e.i(`query field is required`,400),{status:400});let o=await e.f(r,a);return i.NextResponse.json(o,{headers:n?c(t,n):{}})}catch(t){return process.env.NODE_ENV!==`test`&&console.error(`Next.js validate handler error:`,t),i.NextResponse.json(e.i(t instanceof Error?t.message:`Query validation failed`,500),{status:500})}}}function x(t){let{extractSecurityContext:n,cors:r}=s(t),a=o(t);return async function(t,o){try{if(t.method!==`POST`)return i.NextResponse.json(e.i(`Method not allowed - use POST`,405),{status:405});let s=await t.json();if(!s.query)return i.NextResponse.json(e.i(`query field is required`,400),{status:400});let l=await n(t,o),u=await e.m(a,l,s);return i.NextResponse.json(u,{headers:r?c(t,r):{}})}catch(t){return process.env.NODE_ENV!==`test`&&console.error(`Next.js MCP load handler error:`,t),i.NextResponse.json(e.i(t instanceof Error?t.message:`Query execution failed`,500),{status:500})}}}function S(t){let{httpHandler:r,corsHeaders:o,baseContext:s}=l(t),{mcp:c={enabled:!0}}=t,d=(e,t)=>{Object.entries(o(e)).forEach(([e,n])=>t.set(e,n))};return async function(t,l){if(c.resourceMetadataUrl&&!n.u(t.headers.get(`authorization`)))return i.NextResponse.json({error:`Bearer token required`},{status:401,headers:{"WWW-Authenticate":n.c(c.resourceMetadataUrl)}});if(t.method===`DELETE`||t.method===`GET`){let e=n.C(t.headers.get(`origin`),n.g(c));if(!e.valid)return i.NextResponse.json({error:e.reason},{status:403})}return t.method===`DELETE`?i.NextResponse.json({error:`Session termination not supported`},{status:405}):t.method===`GET`?a(t,d):t.method===`POST`?r.handleMcpPost(u(t,o(t)),s(t,l)):i.NextResponse.json(e.i(`Method not allowed - use POST`,405),{status:405})}}function C(e){let{cors:t}=s(e),{agent:n}=e;if(!n)throw Error(`agent config is required for createAgentChatHandler`);let a=o(e);return async function(o,s){try{if(o.method!==`POST`)return i.NextResponse.json({error:`Method not allowed - use POST`},{status:405});let{handleAgentChat:l}=await Promise.resolve().then(()=>require("../handler-DyIyrFFp.cjs")),{message:u,sessionId:d,history:f}=await o.json();if(!u||typeof u!=`string`)return i.NextResponse.json({error:`message is required and must be a string`},{status:400});let p=(n.apiKey||``).trim();if(n.allowClientApiKey){let e=o.headers.get(`x-agent-api-key`);e&&(p=e.trim())}if(!p)return i.NextResponse.json({error:`No API key configured. Set agent.apiKey in server config or send X-Agent-Api-Key header.`},{status:401});let m=n.allowClientApiKey&&o.headers.get(`x-agent-provider`)||void 0,h=n.allowClientApiKey&&o.headers.get(`x-agent-model`)||void 0,g=n.allowClientApiKey&&o.headers.get(`x-agent-provider-endpoint`)||void 0,_=r.r(await e.extractSecurityContext(o,s),e=>o.headers.get(e)??void 0),v=n.buildSystemContext?.(_),y=new TextEncoder,b=new ReadableStream({async start(e){try{let t=l({message:u,sessionId:d,history:f,semanticLayer:a,securityContext:_,agentConfig:n,apiKey:p,systemContext:v,providerOverride:m,modelOverride:h,baseURLOverride:g});for await(let n of t){let t=`data: ${JSON.stringify(n)}\n\n`;e.enqueue(y.encode(t))}}catch(t){let n={type:`error`,data:{message:t instanceof Error?t.message:`Stream failed`}};e.enqueue(y.encode(`data: ${JSON.stringify(n)}\n\n`))}finally{e.close()}}}),x=new Headers({"Content-Type":`text/event-stream`,"Cache-Control":`no-cache`,Connection:`keep-alive`});if(t){let e=c(o,t);Object.entries(e).forEach(([e,t])=>x.set(e,t))}return new Response(b,{status:200,headers:x})}catch(e){return process.env.NODE_ENV!==`test`&&console.error(`Next.js agent chat handler error:`,e),i.NextResponse.json({error:e instanceof Error?e.message:`Agent chat failed`},{status:500})}}}function w(e){let{mcp:t={enabled:!0}}=e,n=o(e),r={...e,semanticLayer:n},i={load:f(r),meta:p(r),sql:m(r),dryRun:h(r),batch:g(r),explain:_(r)};return t.enabled!==!1&&(i.mcpRpc=S(r)),e.agent&&(i.agentChat=C(r)),i}exports.createAgentChatHandler=C,exports.createBatchHandler=g,exports.createCubeHandlers=w,exports.createDiscoverHandler=v,exports.createDryRunHandler=h,exports.createExplainHandler=_,exports.createLoadHandler=f,exports.createMcpLoadHandler=x,exports.createMcpRpcHandler=S,exports.createMetaHandler=p,exports.createOptionsHandler=d,exports.createSqlHandler=m,exports.createSuggestHandler=y,exports.createValidateHandler=b;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NextRequest } from 'next/server';
|
|
2
2
|
import { SemanticQuery, SecurityContext, DatabaseExecutor, DrizzleDatabase, Cube, CacheConfig, RLSSetupFn } from '../../server/index.js';
|
|
3
3
|
import { AgentConfig } from '../../server/agent/types.js';
|
|
4
|
+
import { SemanticLayerCompiler } from '../../server/compiler.js';
|
|
4
5
|
import { PostgresJsDatabase } from 'drizzle-orm/postgres-js';
|
|
5
6
|
import { MySql2Database } from 'drizzle-orm/mysql2';
|
|
6
7
|
import { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
|
|
@@ -100,6 +101,15 @@ export interface NextAdapterOptions {
|
|
|
100
101
|
* to configure RLS (e.g., set JWT claims and switch Postgres roles), then runs the query.
|
|
101
102
|
*/
|
|
102
103
|
rlsSetup?: RLSSetupFn;
|
|
104
|
+
/**
|
|
105
|
+
* Pre-built semantic layer to reuse across handlers.
|
|
106
|
+
* When provided, the adapter reuses this compiler instead of constructing a
|
|
107
|
+
* new one (and skips cube registration — register cubes on it yourself).
|
|
108
|
+
* `createCubeHandlers` sets this internally so every handler it returns shares
|
|
109
|
+
* one compiler, keeping metadata/result caches consistent. Mirrors the Hono
|
|
110
|
+
* adapter's `semanticLayer` option.
|
|
111
|
+
*/
|
|
112
|
+
semanticLayer?: SemanticLayerCompiler;
|
|
103
113
|
}
|
|
104
114
|
export interface RouteContext {
|
|
105
115
|
params?: Record<string, string | string[]>;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { d as e, f as t, i as n, m as r, p as i } from "../utils-
|
|
2
|
-
import { t as a } from "../compiler-
|
|
3
|
-
import {
|
|
4
|
-
import { a as
|
|
5
|
-
import { NextResponse as
|
|
1
|
+
import { d as e, f as t, i as n, m as r, p as i } from "../utils-U7gV5wQL.js";
|
|
2
|
+
import { t as a } from "../compiler-ZruQ85ff.js";
|
|
3
|
+
import { C as o, c as s, g as c, u as l, v as u, x as d } from "../mcp-transport-l8DhKzR5.js";
|
|
4
|
+
import { a as f, i as p, o as m, r as h, t as g } from "../core-DoSUiMmv.js";
|
|
5
|
+
import { NextResponse as _ } from "next/server";
|
|
6
6
|
//#region src/adapters/nextjs/mcp-handler.ts
|
|
7
|
-
function
|
|
8
|
-
let n = new TextEncoder(), r =
|
|
9
|
-
e.enqueue(n.encode(
|
|
7
|
+
function v(e, t) {
|
|
8
|
+
let n = new TextEncoder(), r = u(), i = new ReadableStream({ start(e) {
|
|
9
|
+
e.enqueue(n.encode(d({
|
|
10
10
|
jsonrpc: "2.0",
|
|
11
11
|
method: "mcp/ready",
|
|
12
12
|
params: { protocol: "streamable-http" }
|
|
@@ -16,14 +16,15 @@ function g(e, t) {
|
|
|
16
16
|
"Cache-Control": "no-cache",
|
|
17
17
|
Connection: "keep-alive"
|
|
18
18
|
});
|
|
19
|
-
return t(e, a), new
|
|
19
|
+
return t(e, a), new _(i, {
|
|
20
20
|
status: 200,
|
|
21
21
|
headers: a
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
//#endregion
|
|
25
25
|
//#region src/adapters/nextjs/index.ts
|
|
26
|
-
function
|
|
26
|
+
function y(e) {
|
|
27
|
+
if (e.semanticLayer) return e.semanticLayer;
|
|
27
28
|
let { cubes: t, drizzle: n, schema: r, engineType: i, cache: o, rlsSetup: s } = e;
|
|
28
29
|
if (!t || t.length === 0) throw Error("At least one cube must be provided in the cubes array");
|
|
29
30
|
let c = new a({
|
|
@@ -37,37 +38,37 @@ function _(e) {
|
|
|
37
38
|
c.registerCube(e);
|
|
38
39
|
}), c;
|
|
39
40
|
}
|
|
40
|
-
function
|
|
41
|
+
function b(e) {
|
|
41
42
|
return {
|
|
42
|
-
extractSecurityContext: async (t, n) =>
|
|
43
|
+
extractSecurityContext: async (t, n) => m(await e.extractSecurityContext(t, n), f((e) => t.headers.get(e))),
|
|
43
44
|
cors: e.cors ? {
|
|
44
45
|
...e.cors,
|
|
45
|
-
allowedHeaders:
|
|
46
|
+
allowedHeaders: p(e.cors.allowedHeaders)
|
|
46
47
|
} : void 0
|
|
47
48
|
};
|
|
48
49
|
}
|
|
49
|
-
function
|
|
50
|
+
function x(e, t) {
|
|
50
51
|
let n = e.headers.get("origin"), r = {};
|
|
51
52
|
return t.origin && (typeof t.origin == "string" ? r["Access-Control-Allow-Origin"] = t.origin : Array.isArray(t.origin) ? n && t.origin.includes(n) && (r["Access-Control-Allow-Origin"] = n) : typeof t.origin == "function" && n && t.origin(n) && (r["Access-Control-Allow-Origin"] = n)), t.methods && (r["Access-Control-Allow-Methods"] = t.methods.join(", ")), t.allowedHeaders && (r["Access-Control-Allow-Headers"] = t.allowedHeaders.join(", ")), t.credentials && (r["Access-Control-Allow-Credentials"] = "true"), r;
|
|
52
53
|
}
|
|
53
|
-
function
|
|
54
|
-
let t =
|
|
55
|
-
semanticLayer:
|
|
54
|
+
function S(e) {
|
|
55
|
+
let t = g({
|
|
56
|
+
semanticLayer: y(e),
|
|
56
57
|
onError: (e) => {
|
|
57
58
|
process.env.NODE_ENV !== "test" && console.error("Next.js handler error:", e);
|
|
58
59
|
},
|
|
59
60
|
mcp: e.mcp
|
|
60
61
|
}), n = e.cors ? {
|
|
61
62
|
...e.cors,
|
|
62
|
-
allowedHeaders:
|
|
63
|
+
allowedHeaders: p(e.cors.allowedHeaders)
|
|
63
64
|
} : void 0;
|
|
64
65
|
return {
|
|
65
66
|
httpHandler: t,
|
|
66
|
-
corsHeaders: (e) => n ?
|
|
67
|
+
corsHeaders: (e) => n ? x(e, n) : {},
|
|
67
68
|
baseContext: (t, n) => () => e.extractSecurityContext(t, n)
|
|
68
69
|
};
|
|
69
70
|
}
|
|
70
|
-
function
|
|
71
|
+
function C(e, t) {
|
|
71
72
|
let n = {};
|
|
72
73
|
return {
|
|
73
74
|
getHeader: (t) => e.headers.get(t) ?? void 0,
|
|
@@ -79,7 +80,7 @@ function x(e, t) {
|
|
|
79
80
|
}
|
|
80
81
|
},
|
|
81
82
|
getQueryParam: (t) => e.nextUrl.searchParams.get(t) ?? void 0,
|
|
82
|
-
send: (e, r) =>
|
|
83
|
+
send: (e, r) => _.json(r, {
|
|
83
84
|
status: e,
|
|
84
85
|
headers: {
|
|
85
86
|
...t,
|
|
@@ -89,14 +90,14 @@ function x(e, t) {
|
|
|
89
90
|
setHeader: (e, t) => {
|
|
90
91
|
n[e] = t;
|
|
91
92
|
},
|
|
92
|
-
sendEmpty: (e) => new
|
|
93
|
+
sendEmpty: (e) => new _(null, {
|
|
93
94
|
status: e,
|
|
94
95
|
headers: {
|
|
95
96
|
...t,
|
|
96
97
|
...n
|
|
97
98
|
}
|
|
98
99
|
}),
|
|
99
|
-
sendSse: (e, r) => new
|
|
100
|
+
sendSse: (e, r) => new _(r, {
|
|
100
101
|
status: e,
|
|
101
102
|
headers: {
|
|
102
103
|
"Content-Type": "text/event-stream",
|
|
@@ -108,11 +109,11 @@ function x(e, t) {
|
|
|
108
109
|
})
|
|
109
110
|
};
|
|
110
111
|
}
|
|
111
|
-
function
|
|
112
|
+
function w(e) {
|
|
112
113
|
return async function(t) {
|
|
113
|
-
let n =
|
|
114
|
+
let n = x(t, {
|
|
114
115
|
...e,
|
|
115
|
-
allowedHeaders:
|
|
116
|
+
allowedHeaders: p(e.allowedHeaders)
|
|
116
117
|
});
|
|
117
118
|
return new Response(null, {
|
|
118
119
|
status: 200,
|
|
@@ -120,142 +121,147 @@ function S(e) {
|
|
|
120
121
|
});
|
|
121
122
|
};
|
|
122
123
|
}
|
|
123
|
-
function
|
|
124
|
-
let { httpHandler: t, corsHeaders: r, baseContext: i } =
|
|
124
|
+
function T(e) {
|
|
125
|
+
let { httpHandler: t, corsHeaders: r, baseContext: i } = S(e);
|
|
125
126
|
return async function(e, a) {
|
|
126
|
-
let o =
|
|
127
|
-
return e.method === "POST" ? t.handleLoadPost(o, i(e, a)) : e.method === "GET" ? t.handleLoadGet(o, i(e, a)) :
|
|
127
|
+
let o = C(e, r(e));
|
|
128
|
+
return e.method === "POST" ? t.handleLoadPost(o, i(e, a)) : e.method === "GET" ? t.handleLoadGet(o, i(e, a)) : _.json(n("Method not allowed", 405), { status: 405 });
|
|
128
129
|
};
|
|
129
130
|
}
|
|
130
|
-
function
|
|
131
|
-
let { httpHandler: t, corsHeaders: n } =
|
|
131
|
+
function E(e) {
|
|
132
|
+
let { httpHandler: t, corsHeaders: n } = S(e);
|
|
132
133
|
return async function(e, r) {
|
|
133
|
-
return t.handleMetaGet(
|
|
134
|
+
return t.handleMetaGet(C(e, n(e)));
|
|
134
135
|
};
|
|
135
136
|
}
|
|
136
|
-
function
|
|
137
|
-
let { httpHandler: t, corsHeaders: r, baseContext: i } =
|
|
137
|
+
function D(e) {
|
|
138
|
+
let { httpHandler: t, corsHeaders: r, baseContext: i } = S(e);
|
|
138
139
|
return async function(e, a) {
|
|
139
|
-
let o =
|
|
140
|
-
return e.method === "POST" ? t.handleSqlPost(o, i(e, a)) : e.method === "GET" ? t.handleSqlGet(o, i(e, a)) :
|
|
140
|
+
let o = C(e, r(e));
|
|
141
|
+
return e.method === "POST" ? t.handleSqlPost(o, i(e, a)) : e.method === "GET" ? t.handleSqlGet(o, i(e, a)) : _.json(n("Method not allowed", 405), { status: 405 });
|
|
141
142
|
};
|
|
142
143
|
}
|
|
143
|
-
function
|
|
144
|
-
let { httpHandler: t, corsHeaders: n, baseContext: r } =
|
|
144
|
+
function O(e) {
|
|
145
|
+
let { httpHandler: t, corsHeaders: n, baseContext: r } = S(e);
|
|
145
146
|
return async function(e, i) {
|
|
146
|
-
let a =
|
|
147
|
-
return e.method === "POST" ? t.handleDryRunPost(a, r(e, i)) : e.method === "GET" ? t.handleDryRunGet(a, r(e, i)) :
|
|
147
|
+
let a = C(e, n(e));
|
|
148
|
+
return e.method === "POST" ? t.handleDryRunPost(a, r(e, i)) : e.method === "GET" ? t.handleDryRunGet(a, r(e, i)) : _.json({
|
|
148
149
|
error: "Method not allowed",
|
|
149
150
|
valid: !1
|
|
150
151
|
}, { status: 405 });
|
|
151
152
|
};
|
|
152
153
|
}
|
|
153
|
-
function
|
|
154
|
-
let { httpHandler: t, corsHeaders: r, baseContext: i } =
|
|
154
|
+
function k(e) {
|
|
155
|
+
let { httpHandler: t, corsHeaders: r, baseContext: i } = S(e);
|
|
155
156
|
return async function(e, a) {
|
|
156
|
-
return e.method === "POST" ? t.handleBatchPost(
|
|
157
|
+
return e.method === "POST" ? t.handleBatchPost(C(e, r(e)), i(e, a)) : _.json(n("Method not allowed - use POST", 405), { status: 405 });
|
|
157
158
|
};
|
|
158
159
|
}
|
|
159
|
-
function
|
|
160
|
-
let { httpHandler: t, corsHeaders: n, baseContext: r } =
|
|
160
|
+
function A(e) {
|
|
161
|
+
let { httpHandler: t, corsHeaders: n, baseContext: r } = S(e);
|
|
161
162
|
return async function(e, i) {
|
|
162
|
-
return e.method === "POST" ? t.handleExplainPost(
|
|
163
|
+
return e.method === "POST" ? t.handleExplainPost(C(e, n(e)), r(e, i)) : _.json({ error: "Method not allowed" }, { status: 405 });
|
|
163
164
|
};
|
|
164
165
|
}
|
|
165
|
-
function
|
|
166
|
-
let { cors: t } =
|
|
166
|
+
function j(e) {
|
|
167
|
+
let { cors: t } = b(e), r = y(e);
|
|
167
168
|
return async function(e, a) {
|
|
168
169
|
try {
|
|
169
|
-
if (e.method !== "POST") return
|
|
170
|
-
let a = await
|
|
171
|
-
return
|
|
170
|
+
if (e.method !== "POST") return _.json(n("Method not allowed - use POST", 405), { status: 405 });
|
|
171
|
+
let a = await e.json(), o = await i(r, a);
|
|
172
|
+
return _.json(o, { headers: t ? x(e, t) : {} });
|
|
172
173
|
} catch (e) {
|
|
173
|
-
return process.env.NODE_ENV !== "test" && console.error("Next.js discover handler error:", e),
|
|
174
|
+
return process.env.NODE_ENV !== "test" && console.error("Next.js discover handler error:", e), _.json(n(e instanceof Error ? e.message : "Discovery failed", 500), { status: 500 });
|
|
174
175
|
}
|
|
175
176
|
};
|
|
176
177
|
}
|
|
177
|
-
function
|
|
178
|
-
let { cors: r } =
|
|
178
|
+
function M(t) {
|
|
179
|
+
let { cors: r } = b(t), i = y(t);
|
|
179
180
|
return async function(t, a) {
|
|
180
181
|
try {
|
|
181
|
-
if (t.method !== "POST") return
|
|
182
|
+
if (t.method !== "POST") return _.json(n("Method not allowed - use POST", 405), { status: 405 });
|
|
182
183
|
let a = await t.json();
|
|
183
|
-
if (!a.naturalLanguage) return
|
|
184
|
+
if (!a.naturalLanguage) return _.json(n("naturalLanguage field is required", 400), { status: 400 });
|
|
184
185
|
let o = await e(i, a);
|
|
185
|
-
return
|
|
186
|
+
return _.json(o, { headers: r ? x(t, r) : {} });
|
|
186
187
|
} catch (e) {
|
|
187
|
-
return process.env.NODE_ENV !== "test" && console.error("Next.js suggest handler error:", e),
|
|
188
|
+
return process.env.NODE_ENV !== "test" && console.error("Next.js suggest handler error:", e), _.json(n(e instanceof Error ? e.message : "Query suggestion failed", 500), { status: 500 });
|
|
188
189
|
}
|
|
189
190
|
};
|
|
190
191
|
}
|
|
191
|
-
function
|
|
192
|
-
let { cors: r } =
|
|
192
|
+
function N(e) {
|
|
193
|
+
let { cors: r } = b(e), i = y(e);
|
|
193
194
|
return async function(e, a) {
|
|
194
195
|
try {
|
|
195
|
-
if (e.method !== "POST") return
|
|
196
|
+
if (e.method !== "POST") return _.json(n("Method not allowed - use POST", 405), { status: 405 });
|
|
196
197
|
let a = await e.json();
|
|
197
|
-
if (!a.query) return
|
|
198
|
+
if (!a.query) return _.json(n("query field is required", 400), { status: 400 });
|
|
198
199
|
let o = await t(i, a);
|
|
199
|
-
return
|
|
200
|
+
return _.json(o, { headers: r ? x(e, r) : {} });
|
|
200
201
|
} catch (e) {
|
|
201
|
-
return process.env.NODE_ENV !== "test" && console.error("Next.js validate handler error:", e),
|
|
202
|
+
return process.env.NODE_ENV !== "test" && console.error("Next.js validate handler error:", e), _.json(n(e instanceof Error ? e.message : "Query validation failed", 500), { status: 500 });
|
|
202
203
|
}
|
|
203
204
|
};
|
|
204
205
|
}
|
|
205
|
-
function
|
|
206
|
-
let { extractSecurityContext: t, cors: i } =
|
|
206
|
+
function P(e) {
|
|
207
|
+
let { extractSecurityContext: t, cors: i } = b(e), a = y(e);
|
|
207
208
|
return async function(e, o) {
|
|
208
209
|
try {
|
|
209
|
-
if (e.method !== "POST") return
|
|
210
|
+
if (e.method !== "POST") return _.json(n("Method not allowed - use POST", 405), { status: 405 });
|
|
210
211
|
let s = await e.json();
|
|
211
|
-
if (!s.query) return
|
|
212
|
-
let c = await
|
|
213
|
-
return
|
|
212
|
+
if (!s.query) return _.json(n("query field is required", 400), { status: 400 });
|
|
213
|
+
let c = await t(e, o), l = await r(a, c, s);
|
|
214
|
+
return _.json(l, { headers: i ? x(e, i) : {} });
|
|
214
215
|
} catch (e) {
|
|
215
|
-
return process.env.NODE_ENV !== "test" && console.error("Next.js MCP load handler error:", e),
|
|
216
|
+
return process.env.NODE_ENV !== "test" && console.error("Next.js MCP load handler error:", e), _.json(n(e instanceof Error ? e.message : "Query execution failed", 500), { status: 500 });
|
|
216
217
|
}
|
|
217
218
|
};
|
|
218
219
|
}
|
|
219
|
-
function
|
|
220
|
-
let { httpHandler: t, corsHeaders: r, baseContext: i } =
|
|
220
|
+
function F(e) {
|
|
221
|
+
let { httpHandler: t, corsHeaders: r, baseContext: i } = S(e), { mcp: a = { enabled: !0 } } = e, u = (e, t) => {
|
|
221
222
|
Object.entries(r(e)).forEach(([e, n]) => t.set(e, n));
|
|
222
223
|
};
|
|
223
|
-
return async function(e,
|
|
224
|
-
|
|
224
|
+
return async function(e, d) {
|
|
225
|
+
if (a.resourceMetadataUrl && !l(e.headers.get("authorization"))) return _.json({ error: "Bearer token required" }, {
|
|
225
226
|
status: 401,
|
|
226
|
-
headers: { "WWW-Authenticate":
|
|
227
|
-
})
|
|
227
|
+
headers: { "WWW-Authenticate": s(a.resourceMetadataUrl) }
|
|
228
|
+
});
|
|
229
|
+
if (e.method === "DELETE" || e.method === "GET") {
|
|
230
|
+
let t = o(e.headers.get("origin"), c(a));
|
|
231
|
+
if (!t.valid) return _.json({ error: t.reason }, { status: 403 });
|
|
232
|
+
}
|
|
233
|
+
return e.method === "DELETE" ? _.json({ error: "Session termination not supported" }, { status: 405 }) : e.method === "GET" ? v(e, u) : e.method === "POST" ? t.handleMcpPost(C(e, r(e)), i(e, d)) : _.json(n("Method not allowed - use POST", 405), { status: 405 });
|
|
228
234
|
};
|
|
229
235
|
}
|
|
230
|
-
function
|
|
231
|
-
let { cors: t } =
|
|
236
|
+
function I(e) {
|
|
237
|
+
let { cors: t } = b(e), { agent: n } = e;
|
|
232
238
|
if (!n) throw Error("agent config is required for createAgentChatHandler");
|
|
233
|
-
let r =
|
|
239
|
+
let r = y(e);
|
|
234
240
|
return async function(i, a) {
|
|
235
241
|
try {
|
|
236
|
-
if (i.method !== "POST") return
|
|
237
|
-
let { handleAgentChat: o } = await import("../handler-
|
|
238
|
-
if (!s || typeof s != "string") return
|
|
242
|
+
if (i.method !== "POST") return _.json({ error: "Method not allowed - use POST" }, { status: 405 });
|
|
243
|
+
let { handleAgentChat: o } = await import("../handler-j74EJDdo.js"), { message: s, sessionId: c, history: l } = await i.json();
|
|
244
|
+
if (!s || typeof s != "string") return _.json({ error: "message is required and must be a string" }, { status: 400 });
|
|
239
245
|
let u = (n.apiKey || "").trim();
|
|
240
246
|
if (n.allowClientApiKey) {
|
|
241
247
|
let e = i.headers.get("x-agent-api-key");
|
|
242
248
|
e && (u = e.trim());
|
|
243
249
|
}
|
|
244
|
-
if (!u) return
|
|
245
|
-
let d = n.allowClientApiKey && i.headers.get("x-agent-provider") || void 0, f = n.allowClientApiKey && i.headers.get("x-agent-model") || void 0,
|
|
250
|
+
if (!u) return _.json({ error: "No API key configured. Set agent.apiKey in server config or send X-Agent-Api-Key header." }, { status: 401 });
|
|
251
|
+
let d = n.allowClientApiKey && i.headers.get("x-agent-provider") || void 0, f = n.allowClientApiKey && i.headers.get("x-agent-model") || void 0, p = n.allowClientApiKey && i.headers.get("x-agent-provider-endpoint") || void 0, m = h(await e.extractSecurityContext(i, a), (e) => i.headers.get(e) ?? void 0), g = n.buildSystemContext?.(m), v = new TextEncoder(), y = new ReadableStream({ async start(e) {
|
|
246
252
|
try {
|
|
247
253
|
let t = o({
|
|
248
254
|
message: s,
|
|
249
255
|
sessionId: c,
|
|
250
256
|
history: l,
|
|
251
257
|
semanticLayer: r,
|
|
252
|
-
securityContext:
|
|
258
|
+
securityContext: m,
|
|
253
259
|
agentConfig: n,
|
|
254
260
|
apiKey: u,
|
|
255
|
-
systemContext:
|
|
261
|
+
systemContext: g,
|
|
256
262
|
providerOverride: d,
|
|
257
263
|
modelOverride: f,
|
|
258
|
-
baseURLOverride:
|
|
264
|
+
baseURLOverride: p
|
|
259
265
|
});
|
|
260
266
|
for await (let n of t) {
|
|
261
267
|
let t = `data: ${JSON.stringify(n)}\n\n`;
|
|
@@ -270,34 +276,37 @@ function P(e) {
|
|
|
270
276
|
} finally {
|
|
271
277
|
e.close();
|
|
272
278
|
}
|
|
273
|
-
} }),
|
|
279
|
+
} }), b = new Headers({
|
|
274
280
|
"Content-Type": "text/event-stream",
|
|
275
281
|
"Cache-Control": "no-cache",
|
|
276
282
|
Connection: "keep-alive"
|
|
277
283
|
});
|
|
278
284
|
if (t) {
|
|
279
|
-
let e =
|
|
280
|
-
Object.entries(e).forEach(([e, t]) =>
|
|
285
|
+
let e = x(i, t);
|
|
286
|
+
Object.entries(e).forEach(([e, t]) => b.set(e, t));
|
|
281
287
|
}
|
|
282
|
-
return new Response(
|
|
288
|
+
return new Response(y, {
|
|
283
289
|
status: 200,
|
|
284
|
-
headers:
|
|
290
|
+
headers: b
|
|
285
291
|
});
|
|
286
292
|
} catch (e) {
|
|
287
|
-
return process.env.NODE_ENV !== "test" && console.error("Next.js agent chat handler error:", e),
|
|
293
|
+
return process.env.NODE_ENV !== "test" && console.error("Next.js agent chat handler error:", e), _.json({ error: e instanceof Error ? e.message : "Agent chat failed" }, { status: 500 });
|
|
288
294
|
}
|
|
289
295
|
};
|
|
290
296
|
}
|
|
291
|
-
function
|
|
292
|
-
let { mcp: t = { enabled: !0 } } = e, n = {
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
297
|
+
function L(e) {
|
|
298
|
+
let { mcp: t = { enabled: !0 } } = e, n = y(e), r = {
|
|
299
|
+
...e,
|
|
300
|
+
semanticLayer: n
|
|
301
|
+
}, i = {
|
|
302
|
+
load: T(r),
|
|
303
|
+
meta: E(r),
|
|
304
|
+
sql: D(r),
|
|
305
|
+
dryRun: O(r),
|
|
306
|
+
batch: k(r),
|
|
307
|
+
explain: A(r)
|
|
299
308
|
};
|
|
300
|
-
return t.enabled !== !1 && (
|
|
309
|
+
return t.enabled !== !1 && (i.mcpRpc = F(r)), e.agent && (i.agentChat = I(r)), i;
|
|
301
310
|
}
|
|
302
311
|
//#endregion
|
|
303
|
-
export {
|
|
312
|
+
export { I as createAgentChatHandler, k as createBatchHandler, L as createCubeHandlers, j as createDiscoverHandler, O as createDryRunHandler, A as createExplainHandler, T as createLoadHandler, P as createMcpLoadHandler, F as createMcpRpcHandler, E as createMetaHandler, w as createOptionsHandler, D as createSqlHandler, M as createSuggestHandler, N as createValidateHandler };
|
|
@@ -15,7 +15,7 @@ function t(e, t, n, r) {
|
|
|
15
15
|
var n = function() {
|
|
16
16
|
let { crypto: e } = globalThis;
|
|
17
17
|
if (e?.randomUUID) return n = e.randomUUID.bind(e), e.randomUUID();
|
|
18
|
-
let t = new Uint8Array(1), r = e ? () => e.getRandomValues(t)[0] : () => Math.random() * 255 & 255;
|
|
18
|
+
let t = /* @__PURE__ */ new Uint8Array(1), r = e ? () => e.getRandomValues(t)[0] : () => Math.random() * 255 & 255;
|
|
19
19
|
return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, (e) => (e ^ r() & 15 >> e / 4).toString(16));
|
|
20
20
|
};
|
|
21
21
|
//#endregion
|
|
@@ -481,7 +481,7 @@ function qe(e) {
|
|
|
481
481
|
//#region node_modules/openai/internal/decoders/line.mjs
|
|
482
482
|
var T, E, Je = class {
|
|
483
483
|
constructor() {
|
|
484
|
-
T.set(this, void 0), E.set(this, void 0), e(this, T, new Uint8Array(), "f"), e(this, E, null, "f");
|
|
484
|
+
T.set(this, void 0), E.set(this, void 0), e(this, T, /* @__PURE__ */ new Uint8Array(), "f"), e(this, E, null, "f");
|
|
485
485
|
}
|
|
486
486
|
decode(n) {
|
|
487
487
|
if (n == null) return [];
|
|
@@ -506,7 +506,7 @@ var T, E, Je = class {
|
|
|
506
506
|
return t(this, T, "f").length ? this.decode("\n") : [];
|
|
507
507
|
}
|
|
508
508
|
};
|
|
509
|
-
T = /* @__PURE__ */ new WeakMap(), E = /* @__PURE__ */ new WeakMap(), Je.NEWLINE_CHARS = new Set(["\n", "\r"]), Je.NEWLINE_REGEXP = /\r\n|[\n\r]/g;
|
|
509
|
+
T = /* @__PURE__ */ new WeakMap(), E = /* @__PURE__ */ new WeakMap(), Je.NEWLINE_CHARS = /* @__PURE__ */ new Set(["\n", "\r"]), Je.NEWLINE_REGEXP = /\r\n|[\n\r]/g;
|
|
510
510
|
function Ye(e, t) {
|
|
511
511
|
for (let n = t ?? 0; n < e.length; n++) {
|
|
512
512
|
if (e[n] === 10) return {
|
|
@@ -689,7 +689,7 @@ async function* ot(e, t) {
|
|
|
689
689
|
}
|
|
690
690
|
}
|
|
691
691
|
async function* st(e) {
|
|
692
|
-
let t = new Uint8Array();
|
|
692
|
+
let t = /* @__PURE__ */ new Uint8Array();
|
|
693
693
|
for await (let n of e) {
|
|
694
694
|
if (n == null) continue;
|
|
695
695
|
let e = n instanceof ArrayBuffer ? new Uint8Array(n) : typeof n == "string" ? Ge(n) : n, r = new Uint8Array(t.length + e.length);
|
|
@@ -837,7 +837,7 @@ var mt, ht = class {
|
|
|
837
837
|
return this.data ?? [];
|
|
838
838
|
}
|
|
839
839
|
hasNextPage() {
|
|
840
|
-
return this.has_more
|
|
840
|
+
return this.has_more !== !1 && super.hasNextPage();
|
|
841
841
|
}
|
|
842
842
|
nextPageRequestOptions() {
|
|
843
843
|
let e = this.getPaginatedItems(), t = e[e.length - 1]?.id;
|
|
@@ -857,7 +857,7 @@ var mt, ht = class {
|
|
|
857
857
|
return this.data ?? [];
|
|
858
858
|
}
|
|
859
859
|
hasNextPage() {
|
|
860
|
-
return this.has_more
|
|
860
|
+
return this.has_more !== !1 && super.hasNextPage();
|
|
861
861
|
}
|
|
862
862
|
nextPageRequestOptions() {
|
|
863
863
|
let e = this.last_id;
|
|
@@ -877,7 +877,7 @@ var mt, ht = class {
|
|
|
877
877
|
return this.data ?? [];
|
|
878
878
|
}
|
|
879
879
|
hasNextPage() {
|
|
880
|
-
return this.has_more
|
|
880
|
+
return this.has_more !== !1 && super.hasNextPage();
|
|
881
881
|
}
|
|
882
882
|
nextPageRequestOptions() {
|
|
883
883
|
let e = this.next;
|
|
@@ -1466,7 +1466,7 @@ var On = (e, t) => {
|
|
|
1466
1466
|
throw new En(`${e} at position ${r}`);
|
|
1467
1467
|
}, o = () => (d(), r >= n && i("Unexpected end of input"), e[r] === "\"" ? s() : e[r] === "{" ? c() : e[r] === "[" ? l() : e.substring(r, r + 4) === "null" || L.NULL & t && n - r < 4 && "null".startsWith(e.substring(r)) ? (r += 4, null) : e.substring(r, r + 4) === "true" || L.BOOL & t && n - r < 4 && "true".startsWith(e.substring(r)) ? (r += 4, !0) : e.substring(r, r + 5) === "false" || L.BOOL & t && n - r < 5 && "false".startsWith(e.substring(r)) ? (r += 5, !1) : e.substring(r, r + 8) === "Infinity" || L.INFINITY & t && n - r < 8 && "Infinity".startsWith(e.substring(r)) ? (r += 8, Infinity) : e.substring(r, r + 9) === "-Infinity" || L.MINUS_INFINITY & t && 1 < n - r && n - r < 9 && "-Infinity".startsWith(e.substring(r)) ? (r += 9, -Infinity) : e.substring(r, r + 3) === "NaN" || L.NAN & t && n - r < 3 && "NaN".startsWith(e.substring(r)) ? (r += 3, NaN) : u()), s = () => {
|
|
1468
1468
|
let o = r, s = !1;
|
|
1469
|
-
for (r++; r < n && (e[r] !== "\"" || s && e[r - 1] === "\\");) s = e[r] === "\\"
|
|
1469
|
+
for (r++; r < n && (e[r] !== "\"" || s && e[r - 1] === "\\");) s = e[r] === "\\" && !s, r++;
|
|
1470
1470
|
if (e.charAt(r) == "\"") try {
|
|
1471
1471
|
return JSON.parse(e.substring(o, ++r - Number(s)));
|
|
1472
1472
|
} catch (e) {
|
|
@@ -3924,7 +3924,7 @@ var di = class extends N {
|
|
|
3924
3924
|
});
|
|
3925
3925
|
}
|
|
3926
3926
|
async waitForProcessing(e, { pollInterval: t = 5e3, maxWait: n = 1800 * 1e3 } = {}) {
|
|
3927
|
-
let r = new Set([
|
|
3927
|
+
let r = /* @__PURE__ */ new Set([
|
|
3928
3928
|
"processed",
|
|
3929
3929
|
"error",
|
|
3930
3930
|
"deleted"
|
|
@@ -5375,7 +5375,7 @@ var ga = class extends $ {
|
|
|
5375
5375
|
};
|
|
5376
5376
|
return n.bearerAuth && typeof this._options.apiKey == "string" ? U([{ "api-key": this.apiKey }]) : super.authHeaders(e, n);
|
|
5377
5377
|
}
|
|
5378
|
-
}, _a = new Set([
|
|
5378
|
+
}, _a = /* @__PURE__ */ new Set([
|
|
5379
5379
|
"/completions",
|
|
5380
5380
|
"/chat/completions",
|
|
5381
5381
|
"/embeddings",
|