drizzle-cube 0.8.1 → 0.8.2
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-Bc7mPqcf.cjs +1 -0
- package/dist/adapters/ActivityGridChart.config-Dd2YDeaM.js +2 -0
- package/dist/adapters/AreaChart.config-BqNusnpg.js +2 -0
- package/dist/adapters/AreaChart.config-dI84V34B.cjs +1 -0
- package/dist/adapters/BarChart.config-B9MQjgLJ.cjs +1 -0
- package/dist/adapters/BarChart.config-Cq_qcxBA.js +2 -0
- package/dist/adapters/BoxPlotChart.config-XmtRN2xq.cjs +1 -0
- package/dist/adapters/BoxPlotChart.config-Zc-JGV-W.js +2 -0
- package/dist/adapters/BubbleChart.config-CU_18uxb.js +2 -0
- package/dist/adapters/BubbleChart.config-CbhOzA6-.cjs +1 -0
- package/dist/adapters/CandlestickChart.config-Bwo3uaa-.js +2 -0
- package/dist/adapters/CandlestickChart.config-CmRBlWFv.cjs +1 -0
- package/dist/adapters/DataTable.config-7JNSj6qQ.js +2 -0
- package/dist/adapters/DataTable.config-DNxm1sYk.cjs +1 -0
- package/dist/adapters/DotStripChart.config-B7Dl-T1h.js +2 -0
- package/dist/adapters/DotStripChart.config-Co4g1fpZ.cjs +1 -0
- package/dist/adapters/FunnelChart.config-D1TpuGtL.cjs +1 -0
- package/dist/adapters/FunnelChart.config-vuZScOHQ.js +2 -0
- package/dist/adapters/GaugeChart.config-BMgUHKhC.cjs +1 -0
- package/dist/adapters/GaugeChart.config-zdpFydo6.js +2 -0
- package/dist/adapters/HeatMapChart.config-4XMab1zq.js +2 -0
- package/dist/adapters/HeatMapChart.config-C-Ns6QBq.cjs +1 -0
- package/dist/adapters/KpiDelta.config-BGdqsHcc.js +2 -0
- package/dist/adapters/KpiDelta.config-DuNxrGIi.cjs +1 -0
- package/dist/adapters/KpiNumber.config-CkPWpcSz.js +2 -0
- package/dist/adapters/KpiNumber.config-DMGmuA3i.cjs +1 -0
- package/dist/adapters/KpiText.config-Bvtuv8vE.js +2 -0
- package/dist/adapters/KpiText.config-DOMLO16U.cjs +1 -0
- package/dist/adapters/LineChart.config-CJmTSmZ1.js +2 -0
- package/dist/adapters/LineChart.config-CrkGu0aa.cjs +1 -0
- package/dist/adapters/MarkdownChart.config-BgY5Xc97.cjs +1 -0
- package/dist/adapters/MarkdownChart.config-Cm6G4Yuh.js +2 -0
- package/dist/adapters/MeasureProfileChart.config-BYwDo_ox.cjs +1 -0
- package/dist/adapters/MeasureProfileChart.config-Dt7npubZ.js +2 -0
- package/dist/adapters/PieChart.config-BRbPctBN.cjs +1 -0
- package/dist/adapters/PieChart.config-HZofeody.js +2 -0
- package/dist/adapters/ProportionBarChart.config-B_rTtGZr.cjs +1 -0
- package/dist/adapters/ProportionBarChart.config-ChCSoM0L.js +2 -0
- package/dist/adapters/RadarChart.config-B9OdMEib.js +2 -0
- package/dist/adapters/RadarChart.config-BOgPD2Kz.cjs +1 -0
- package/dist/adapters/RadialBarChart.config-CeP7jEbq.js +2 -0
- package/dist/adapters/RadialBarChart.config-sivA1Jmo.cjs +1 -0
- package/dist/adapters/RecordsTable.config-BInSgo-G.js +2 -0
- package/dist/adapters/RecordsTable.config-CVmxLdjz.cjs +1 -0
- package/dist/adapters/RetentionCombinedChart.config-8ry7gh6X.cjs +1 -0
- package/dist/adapters/RetentionCombinedChart.config-Bxtxnlcf.js +2 -0
- package/dist/adapters/RetentionHeatmap.config-DCtOD8dO.js +2 -0
- package/dist/adapters/RetentionHeatmap.config-i-LgmmIT.cjs +1 -0
- package/dist/adapters/SankeyChart.config-DfpeHfNT.cjs +1 -0
- package/dist/adapters/SankeyChart.config-hfM0ACm1.js +2 -0
- package/dist/adapters/ScatterChart.config-BD2vfOZ6.js +2 -0
- package/dist/adapters/ScatterChart.config-CdpvRueF.cjs +1 -0
- package/dist/adapters/SunburstChart.config-Boyt88L_.cjs +1 -0
- package/dist/adapters/SunburstChart.config-BvrofzMv.js +2 -0
- package/dist/adapters/TreeMapChart.config-DBrqwtqT.js +2 -0
- package/dist/adapters/TreeMapChart.config-KcRLlZAG.cjs +1 -0
- package/dist/adapters/WaterfallChart.config-CuCGaIl5.cjs +1 -0
- package/dist/adapters/{TreeMapChart.config-BJ8HnZU0.cjs → WaterfallChart.config-DZ8H0V2L.js} +2 -1
- package/dist/adapters/{compiler-CBGD_4Et.js → compiler-BFLAXV7W.js} +1 -1
- package/dist/adapters/{compiler-BxZHh0UD.cjs → compiler-DG6dLFQU.cjs} +1 -1
- package/dist/adapters/core/index.cjs +1 -1
- package/dist/adapters/core/index.js +1 -1
- package/dist/adapters/{core-CIGuwGuI.cjs → core-CrJu6vJY.cjs} +1 -1
- package/dist/adapters/{core-DAAnqPyN.js → core-l3KMTu9u.js} +2 -2
- package/dist/adapters/express/index.cjs +1 -1
- package/dist/adapters/express/index.js +5 -5
- package/dist/adapters/fastify/index.cjs +1 -1
- package/dist/adapters/fastify/index.js +5 -5
- package/dist/adapters/{handler-BcYTw6zB.cjs → handler-CRGZ8gd2.cjs} +9 -9
- package/dist/adapters/{handler-eA0VJDHj.js → handler-DESp4wPg.js} +215 -95
- package/dist/adapters/hono/index.cjs +1 -1
- package/dist/adapters/hono/index.js +4 -4
- package/dist/adapters/mcp-tools.cjs +1 -1
- package/dist/adapters/mcp-tools.js +2 -2
- package/dist/adapters/mcp-transport-BqdBHmXL.js +730 -0
- package/dist/adapters/mcp-transport-D8xZJLPD.cjs +42 -0
- package/dist/adapters/nextjs/index.cjs +1 -1
- package/dist/adapters/nextjs/index.js +5 -5
- package/dist/adapters/{openai-CYYjUG_3.js → openai-BJyU4kvE.js} +1 -1
- package/dist/adapters/{openai-Bw1j-OiP.cjs → openai-DH9MtcLA.cjs} +1 -1
- package/dist/adapters/{openai-BZ48ioYp.js → openai-DK_KWiI7.js} +1 -1
- package/dist/adapters/{openai-CLjyL5_J.cjs → openai-GO3M7Hwi.cjs} +1 -1
- package/dist/adapters/{utils-BagURNRb.js → utils-BhlkVCzZ.js} +38 -0
- package/dist/adapters/utils-C1JpSDOX.cjs +128 -0
- package/dist/adapters/utils.cjs +1 -1
- package/dist/adapters/utils.js +1 -1
- package/dist/cjs/client/components/charts/DotStripChart.config.d.ts +15 -0
- package/dist/cjs/client/components/charts/DotStripChart.d.ts +4 -0
- package/dist/cjs/client/components/charts/DotStripChart.helpers.d.ts +91 -0
- package/dist/cjs/client/icons/types.d.ts +1 -0
- package/dist/cjs/client/types.d.ts +6 -1
- package/dist/cli/index.cjs +4 -0
- package/dist/client/charts.js +12 -12
- package/dist/client/chunks/{DashboardEditModal-_ZDMwaGX.js → DashboardEditModal-BliiIHcI.js} +12 -12
- package/dist/client/chunks/DashboardEditModal-BliiIHcI.js.map +1 -0
- package/dist/client/chunks/DotStripChart-ChwsVeRU.js +408 -0
- package/dist/client/chunks/DotStripChart-ChwsVeRU.js.map +1 -0
- package/dist/client/chunks/{ProportionBarChart-qfpAWhIg.js → ProportionBarChart-D-Qt9nkF.js} +3 -3
- package/dist/client/chunks/{ProportionBarChart-qfpAWhIg.js.map → ProportionBarChart-D-Qt9nkF.js.map} +1 -1
- package/dist/client/chunks/{RecordsTable-KmJy94xN.js → RecordsTable-aG-QYXOH.js} +4 -4
- package/dist/client/chunks/{RecordsTable-KmJy94xN.js.map → RecordsTable-aG-QYXOH.js.map} +1 -1
- package/dist/client/chunks/{RetentionCombinedChart-C7X6aj97.js → RetentionCombinedChart-BRZ9w7ah.js} +3 -3
- package/dist/client/chunks/{RetentionCombinedChart-C7X6aj97.js.map → RetentionCombinedChart-BRZ9w7ah.js.map} +1 -1
- package/dist/client/chunks/{RetentionHeatmap-PpRpiqR_.js → RetentionHeatmap-LkTt89pK.js} +2 -2
- package/dist/client/chunks/{RetentionHeatmap-PpRpiqR_.js.map → RetentionHeatmap-LkTt89pK.js.map} +1 -1
- package/dist/client/chunks/{analysis-builder-DaqyOjLX.js → analysis-builder-C0gJ3kDD.js} +9 -9
- package/dist/client/chunks/{analysis-builder-DaqyOjLX.js.map → analysis-builder-C0gJ3kDD.js.map} +1 -1
- package/dist/client/chunks/{analysis-builder-shared-ow9KAHDP.js → analysis-builder-shared-dqcpl_WL.js} +9 -9
- package/dist/client/chunks/{analysis-builder-shared-ow9KAHDP.js.map → analysis-builder-shared-dqcpl_WL.js.map} +1 -1
- package/dist/client/chunks/{chart-activity-grid-DO82rrbW.js → chart-activity-grid-CJzxC18G.js} +40 -2
- package/dist/client/chunks/chart-activity-grid-CJzxC18G.js.map +1 -0
- package/dist/client/chunks/{chart-area-9SBeG0GM.js → chart-area-C66dgy84.js} +2 -2
- package/dist/client/chunks/{chart-area-9SBeG0GM.js.map → chart-area-C66dgy84.js.map} +1 -1
- package/dist/client/chunks/{chart-bar-tfgmLK2D.js → chart-bar-D9kiSOCT.js} +3 -3
- package/dist/client/chunks/{chart-bar-tfgmLK2D.js.map → chart-bar-D9kiSOCT.js.map} +1 -1
- package/dist/client/chunks/{chart-box-plot-BuYW6j6g.js → chart-box-plot-FsLIMisc.js} +2 -2
- package/dist/client/chunks/{chart-box-plot-BuYW6j6g.js.map → chart-box-plot-FsLIMisc.js.map} +1 -1
- package/dist/client/chunks/{chart-bubble-BNmonWqW.js → chart-bubble-BzyvrqKs.js} +2 -2
- package/dist/client/chunks/{chart-bubble-BNmonWqW.js.map → chart-bubble-BzyvrqKs.js.map} +1 -1
- package/dist/client/chunks/{chart-candlestick-BYeWNkKl.js → chart-candlestick-6lD35bLw.js} +2 -2
- package/dist/client/chunks/{chart-candlestick-BYeWNkKl.js.map → chart-candlestick-6lD35bLw.js.map} +1 -1
- package/dist/client/chunks/{chart-data-table-C_oHiK6N.js → chart-data-table-Cou9qOab.js} +248 -120
- package/dist/client/chunks/chart-data-table-Cou9qOab.js.map +1 -0
- package/dist/client/chunks/{chart-funnel-B_CWC3cL.js → chart-funnel-B0775aaT.js} +2 -2
- package/dist/client/chunks/{chart-funnel-B_CWC3cL.js.map → chart-funnel-B0775aaT.js.map} +1 -1
- package/dist/client/chunks/{chart-gauge-D7VxwPnx.js → chart-gauge-pf-2E8w9.js} +3 -3
- package/dist/client/chunks/{chart-gauge-D7VxwPnx.js.map → chart-gauge-pf-2E8w9.js.map} +1 -1
- package/dist/client/chunks/{chart-heat-map-q7Vf_dog.js → chart-heat-map-EzVGe6fl.js} +3 -3
- package/dist/client/chunks/{chart-heat-map-q7Vf_dog.js.map → chart-heat-map-EzVGe6fl.js.map} +1 -1
- package/dist/client/chunks/{chart-kpi-delta-PEuA3iGs.js → chart-kpi-delta-lfskDdx4.js} +3 -3
- package/dist/client/chunks/{chart-kpi-delta-PEuA3iGs.js.map → chart-kpi-delta-lfskDdx4.js.map} +1 -1
- package/dist/client/chunks/{chart-kpi-number-DlxrO6Pq.js → chart-kpi-number-BnsofbTf.js} +5 -5
- package/dist/client/chunks/{chart-kpi-number-DlxrO6Pq.js.map → chart-kpi-number-BnsofbTf.js.map} +1 -1
- package/dist/client/chunks/{chart-kpi-text-Cx6cJu2s.js → chart-kpi-text-U5EdmdkV.js} +3 -3
- package/dist/client/chunks/{chart-kpi-text-Cx6cJu2s.js.map → chart-kpi-text-U5EdmdkV.js.map} +1 -1
- package/dist/client/chunks/{chart-line-pDe25JzB.js → chart-line-IwXqPY80.js} +3 -3
- package/dist/client/chunks/{chart-line-pDe25JzB.js.map → chart-line-IwXqPY80.js.map} +1 -1
- package/dist/client/chunks/{chart-markdown-CRY15yp0.js → chart-markdown-yxN_xBP9.js} +2 -2
- package/dist/client/chunks/{chart-markdown-CRY15yp0.js.map → chart-markdown-yxN_xBP9.js.map} +1 -1
- package/dist/client/chunks/{chart-measure-profile-DyQ-vvuC.js → chart-measure-profile-Bs4vhBJQ.js} +3 -3
- package/dist/client/chunks/{chart-measure-profile-DyQ-vvuC.js.map → chart-measure-profile-Bs4vhBJQ.js.map} +1 -1
- package/dist/client/chunks/{chart-pie-ZrnBycy1.js → chart-pie-LDJfDXfX.js} +3 -3
- package/dist/client/chunks/{chart-pie-ZrnBycy1.js.map → chart-pie-LDJfDXfX.js.map} +1 -1
- package/dist/client/chunks/{chart-radar-BXbnYMUJ.js → chart-radar-BZY6TP9m.js} +3 -3
- package/dist/client/chunks/{chart-radar-BXbnYMUJ.js.map → chart-radar-BZY6TP9m.js.map} +1 -1
- package/dist/client/chunks/{chart-radial-bar-CYxH3ryh.js → chart-radial-bar-aga05X7h.js} +3 -3
- package/dist/client/chunks/{chart-radial-bar-CYxH3ryh.js.map → chart-radial-bar-aga05X7h.js.map} +1 -1
- package/dist/client/chunks/{chart-sankey-C9R_TDDh.js → chart-sankey-MRCoWFd4.js} +2 -2
- package/dist/client/chunks/{chart-sankey-C9R_TDDh.js.map → chart-sankey-MRCoWFd4.js.map} +1 -1
- package/dist/client/chunks/{chart-scatter-DrwRkzzl.js → chart-scatter-DP-nn9hH.js} +3 -3
- package/dist/client/chunks/{chart-scatter-DrwRkzzl.js.map → chart-scatter-DP-nn9hH.js.map} +1 -1
- package/dist/client/chunks/{chart-sunburst-Bs1yqIPp.js → chart-sunburst-DE4EX7zi.js} +3 -3
- package/dist/client/chunks/{chart-sunburst-Bs1yqIPp.js.map → chart-sunburst-DE4EX7zi.js.map} +1 -1
- package/dist/client/chunks/{chart-tree-map-BNjHhhVq.js → chart-tree-map-C3O6uQcP.js} +3 -3
- package/dist/client/chunks/{chart-tree-map-BNjHhhVq.js.map → chart-tree-map-C3O6uQcP.js.map} +1 -1
- package/dist/client/chunks/{chart-waterfall-CyoC0uLT.js → chart-waterfall-DU2Fg_7P.js} +3 -3
- package/dist/client/chunks/{chart-waterfall-CyoC0uLT.js.map → chart-waterfall-DU2Fg_7P.js.map} +1 -1
- package/dist/client/chunks/{charts-core-DCQ7od_L.js → charts-core-DnirPG1F.js} +2 -2
- package/dist/client/chunks/{charts-core-DCQ7od_L.js.map → charts-core-DnirPG1F.js.map} +1 -1
- package/dist/client/chunks/charts-loader-tCSbqT7H.js +87 -0
- package/dist/client/chunks/charts-loader-tCSbqT7H.js.map +1 -0
- package/dist/client/chunks/{nl-NL-CEdoCz6Q.js → nl-NL-B9VnaVAm.js} +39 -1
- package/dist/client/chunks/nl-NL-B9VnaVAm.js.map +1 -0
- package/dist/client/chunks/{schema-visualization-DfXxFBIY.js → schema-visualization-o1zzuMQy.js} +3 -3
- package/dist/client/chunks/{schema-visualization-DfXxFBIY.js.map → schema-visualization-o1zzuMQy.js.map} +1 -1
- package/dist/client/chunks/{useDirtyStateTracking-BFJHiiVK.js → useDirtyStateTracking-DTYbmRBn.js} +4 -4
- package/dist/client/chunks/{useDirtyStateTracking-BFJHiiVK.js.map → useDirtyStateTracking-DTYbmRBn.js.map} +1 -1
- package/dist/client/chunks/{useExplainAI-_C4WQE5I.js → useExplainAI-MuC9jBn-.js} +4 -4
- package/dist/client/chunks/{useExplainAI-_C4WQE5I.js.map → useExplainAI-MuC9jBn-.js.map} +1 -1
- package/dist/client/chunks/{vendor-Gb3lH0cc.js → vendor-XQT9APIq.js} +2 -2
- package/dist/client/chunks/{vendor-Gb3lH0cc.js.map → vendor-XQT9APIq.js.map} +1 -1
- package/dist/client/components/charts/DotStripChart.config.d.ts +15 -0
- package/dist/client/components/charts/DotStripChart.d.ts +4 -0
- package/dist/client/components/charts/DotStripChart.helpers.d.ts +91 -0
- package/dist/client/components.js +1 -1
- package/dist/client/hooks.js +3 -3
- package/dist/client/icons/types.d.ts +1 -0
- package/dist/client/icons.js +1 -1
- package/dist/client/index.js +13 -13
- package/dist/client/providers.js +1 -1
- package/dist/client/schema.js +1 -1
- package/dist/client/styles.css +1 -1
- package/dist/client/types.d.ts +6 -1
- package/dist/client/utils.js +4 -4
- package/dist/client-bundle-stats.html +1 -1
- package/dist/mcp-app/mcp-app.html +99 -99
- package/dist/server/index.cjs +29 -29
- package/dist/server/index.js +312 -154
- package/package.json +1 -1
- package/dist/adapters/ActivityGridChart.config-DXUUgx0N.cjs +0 -1
- package/dist/adapters/ActivityGridChart.config-Dyozu3VW.js +0 -2
- package/dist/adapters/AreaChart.config-Di5odBXp.cjs +0 -1
- package/dist/adapters/AreaChart.config-KEaXP_4K.js +0 -2
- package/dist/adapters/BarChart.config-B-hBHykR.cjs +0 -1
- package/dist/adapters/BarChart.config-C5sqbn0A.js +0 -2
- package/dist/adapters/BoxPlotChart.config-B1R4Br7L.js +0 -2
- package/dist/adapters/BoxPlotChart.config-C82Fhd3c.cjs +0 -1
- package/dist/adapters/BubbleChart.config-CoBxmmfp.js +0 -2
- package/dist/adapters/BubbleChart.config-DfOnNjL-.cjs +0 -1
- package/dist/adapters/CandlestickChart.config-C5ggV_3j.cjs +0 -1
- package/dist/adapters/CandlestickChart.config-ZaJpWVuL.js +0 -2
- package/dist/adapters/DataTable.config-Cx2_ACdY.cjs +0 -1
- package/dist/adapters/DataTable.config-DkAgD-iz.js +0 -2
- package/dist/adapters/FunnelChart.config-CvzcECUB.js +0 -2
- package/dist/adapters/FunnelChart.config-DVH7IFnb.cjs +0 -1
- package/dist/adapters/GaugeChart.config-Csx8rt8o.cjs +0 -1
- package/dist/adapters/GaugeChart.config-DEmrNgMa.js +0 -2
- package/dist/adapters/HeatMapChart.config-BfD_dpP7.js +0 -2
- package/dist/adapters/HeatMapChart.config-D_jlyPJL.cjs +0 -1
- package/dist/adapters/KpiDelta.config-CVBdUL_n.cjs +0 -1
- package/dist/adapters/KpiDelta.config-D4dCXOxl.js +0 -2
- package/dist/adapters/KpiNumber.config-BK5pgIKz.cjs +0 -1
- package/dist/adapters/KpiNumber.config-D6XqjZrm.js +0 -2
- package/dist/adapters/KpiText.config-ChphMwG5.js +0 -2
- package/dist/adapters/KpiText.config-fO1wc6FH.cjs +0 -1
- package/dist/adapters/LineChart.config-CXJrgz1s.js +0 -2
- package/dist/adapters/LineChart.config-Cg_h-SiJ.cjs +0 -1
- package/dist/adapters/MarkdownChart.config-ByPjX-4O.cjs +0 -1
- package/dist/adapters/MarkdownChart.config-Df2yY9AT.js +0 -2
- package/dist/adapters/MeasureProfileChart.config-BBWGIteF.cjs +0 -1
- package/dist/adapters/MeasureProfileChart.config-C9OFbN9Z.js +0 -2
- package/dist/adapters/PieChart.config-C6jJj6xm.js +0 -2
- package/dist/adapters/PieChart.config-CmCw_8eN.cjs +0 -1
- package/dist/adapters/ProportionBarChart.config-B9NEyFEe.js +0 -2
- package/dist/adapters/ProportionBarChart.config-C3GAVPWn.cjs +0 -1
- package/dist/adapters/RadarChart.config-5AMwEqUJ.cjs +0 -1
- package/dist/adapters/RadarChart.config-Ct_b7IM5.js +0 -2
- package/dist/adapters/RadialBarChart.config-Bp-Sl0cm.js +0 -2
- package/dist/adapters/RadialBarChart.config-D14yoexI.cjs +0 -1
- package/dist/adapters/RecordsTable.config-D2-qmG06.cjs +0 -1
- package/dist/adapters/RecordsTable.config-DIwoqZCU.js +0 -2
- package/dist/adapters/RetentionCombinedChart.config-BWHipi5M.cjs +0 -1
- package/dist/adapters/RetentionCombinedChart.config-D40UgTcl.js +0 -2
- package/dist/adapters/RetentionHeatmap.config-GlnSLrjn.js +0 -2
- package/dist/adapters/RetentionHeatmap.config-MlhZf26c.cjs +0 -1
- package/dist/adapters/SankeyChart.config-Bf1_NHiv.js +0 -2
- package/dist/adapters/SankeyChart.config-BoYf6BFE.cjs +0 -1
- package/dist/adapters/ScatterChart.config-CV2rdGJp.js +0 -2
- package/dist/adapters/ScatterChart.config-DywduGF3.cjs +0 -1
- package/dist/adapters/SunburstChart.config-CrqiE1UZ.js +0 -2
- package/dist/adapters/SunburstChart.config-D5tbF_GJ.cjs +0 -1
- package/dist/adapters/TreeMapChart.config-DxgIqIIj.js +0 -2
- package/dist/adapters/WaterfallChart.config-Cns8fLFu.js +0 -2
- package/dist/adapters/WaterfallChart.config-D_kdL9SN.cjs +0 -1
- package/dist/adapters/mcp-transport-BpG44Fvn.js +0 -730
- package/dist/adapters/mcp-transport-CDxZXpc-.cjs +0 -42
- package/dist/adapters/utils-BiKIg2tk.cjs +0 -128
- package/dist/client/chunks/DashboardEditModal-_ZDMwaGX.js.map +0 -1
- package/dist/client/chunks/chart-activity-grid-DO82rrbW.js.map +0 -1
- package/dist/client/chunks/chart-data-table-C_oHiK6N.js.map +0 -1
- package/dist/client/chunks/charts-loader-Bya_zDIA.js +0 -86
- package/dist/client/chunks/charts-loader-Bya_zDIA.js.map +0 -1
- package/dist/client/chunks/nl-NL-CEdoCz6Q.js.map +0 -1
|
@@ -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-C1JpSDOX.cjs"),t=require("../compiler-DG6dLFQU.cjs"),n=require("../mcp-transport-D8xZJLPD.cjs"),r=require("../core-CrJu6vJY.cjs");let i=require("next/server");function a(e,t){let r=new TextEncoder,a=n._(),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)=>{let i=await e.extractSecurityContext(t,n),a=r.s(e=>t.headers.get(e));return r.c(i,a)},cors:e.cors?{...e.cors,allowedHeaders:r.o(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=o(e),n=r.t({semanticLayer:t,onError:e=>{process.env.NODE_ENV!==`test`&&console.error(`Next.js handler error:`,e)},mcp:e.mcp}),i=e.cors?{...e.cors,allowedHeaders:r.o(e.cors.allowedHeaders)}:void 0;return{httpHandler:n,corsHeaders:e=>i?c(e,i):{},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.o(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,baseContext:r}=l(e);return async function(e,i){return t.handleMetaGet(u(e,n(e)),r(e,i))}}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{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(),l=await n(t,o),u=await e.p(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 discover handler error:`,t),i.NextResponse.json(e.i(t instanceof Error?t.message:`Discovery failed`,500),{status:500})}}}function y(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.naturalLanguage)return i.NextResponse.json(e.i(`naturalLanguage field is required`,400),{status:400});let l=await n(t,o),u=await e.d(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 suggest handler error:`,t),i.NextResponse.json(e.i(t instanceof Error?t.message:`Query suggestion failed`,500),{status:500})}}}function b(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.f(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 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.l(t.headers.get(`authorization`)))return i.NextResponse.json({error:`Bearer token required`},{status:401,headers:{"WWW-Authenticate":n.s(c.resourceMetadataUrl)}});if(t.method===`DELETE`||t.method===`GET`){let e=n.C(t.headers.get(`origin`),n.h(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-CRGZ8gd2.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,7 +1,7 @@
|
|
|
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 { C as o, _ as s, h as c, l, s as u, x as d } from "../mcp-transport-
|
|
4
|
-
import { c as f, o as p, r as m, s as h, t as g } from "../core-
|
|
1
|
+
import { d as e, f as t, i as n, m as r, p as i } from "../utils-BhlkVCzZ.js";
|
|
2
|
+
import { t as a } from "../compiler-BFLAXV7W.js";
|
|
3
|
+
import { C as o, _ as s, h as c, l, s as u, x as d } from "../mcp-transport-BqdBHmXL.js";
|
|
4
|
+
import { c as f, o as p, r as m, s as h, t as g } from "../core-l3KMTu9u.js";
|
|
5
5
|
import { NextResponse as _ } from "next/server";
|
|
6
6
|
//#region src/adapters/nextjs/mcp-handler.ts
|
|
7
7
|
function v(e, t) {
|
|
@@ -243,7 +243,7 @@ function I(e) {
|
|
|
243
243
|
return async function(i, a) {
|
|
244
244
|
try {
|
|
245
245
|
if (i.method !== "POST") return _.json({ error: "Method not allowed - use POST" }, { status: 405 });
|
|
246
|
-
let { handleAgentChat: o } = await import("../handler-
|
|
246
|
+
let { handleAgentChat: o } = await import("../handler-DESp4wPg.js"), { message: s, sessionId: c, history: l } = await i.json();
|
|
247
247
|
if (!s || typeof s != "string") return _.json({ error: "message is required and must be a string" }, { status: 400 });
|
|
248
248
|
let u = (n.apiKey || "").trim();
|
|
249
249
|
if (n.allowClientApiKey) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { lt as e, ot as t, st as n } from "./utils-
|
|
1
|
+
import { lt as e, ot as t, st as n } from "./utils-BhlkVCzZ.js";
|
|
2
2
|
//#region node_modules/openai/internal/tslib.mjs
|
|
3
3
|
function r(e, t, n, r, i) {
|
|
4
4
|
if (r === "m") throw TypeError("Private method is not writable");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function*e(e,t){let n=e.index??0;if(e.id&&(t.set(n,{id:e.id,name:e.function?.name||``,arguments:``}),yield{type:`tool_use_start`,id:e.id,name:e.function?.name||``}),e.function?.name&&t.has(n)){let r=t.get(n);r.name||=e.function.name}if(e.function?.arguments){let r=t.get(n);r&&(r.arguments+=e.function.arguments,yield{type:`tool_input_delta`,json:e.function.arguments})}}function*t(e,t){for(let[e,n]of t){let r={};try{n.arguments&&(r=JSON.parse(n.arguments))}catch{}yield{type:`tool_use_end`,id:n.id,input:r},t.delete(e)}yield{type:`message_meta`,stopReason:e}}function*n(n,r){n.usage&&(yield{type:`message_meta`,inputTokens:n.usage.prompt_tokens,outputTokens:n.usage.completion_tokens,stopReason:``});let i=n.choices?.[0];if(!i)return;let a=i.delta;if(a){if(a.content&&(yield{type:`text_delta`,text:a.content}),a.tool_calls)for(let t of a.tool_calls)yield*e(t,r);i.finish_reason&&(yield*t(i.finish_reason,r))}}var r=class{client;apiKey;baseURL;initialized=!1;constructor(e,t){this.apiKey=e,this.baseURL=t?.baseURL}async ensureClient(){if(this.initialized)return;let e;try{let t=await Promise.resolve().then(()=>require("./openai-
|
|
1
|
+
function*e(e,t){let n=e.index??0;if(e.id&&(t.set(n,{id:e.id,name:e.function?.name||``,arguments:``}),yield{type:`tool_use_start`,id:e.id,name:e.function?.name||``}),e.function?.name&&t.has(n)){let r=t.get(n);r.name||=e.function.name}if(e.function?.arguments){let r=t.get(n);r&&(r.arguments+=e.function.arguments,yield{type:`tool_input_delta`,json:e.function.arguments})}}function*t(e,t){for(let[e,n]of t){let r={};try{n.arguments&&(r=JSON.parse(n.arguments))}catch{}yield{type:`tool_use_end`,id:n.id,input:r},t.delete(e)}yield{type:`message_meta`,stopReason:e}}function*n(n,r){n.usage&&(yield{type:`message_meta`,inputTokens:n.usage.prompt_tokens,outputTokens:n.usage.completion_tokens,stopReason:``});let i=n.choices?.[0];if(!i)return;let a=i.delta;if(a){if(a.content&&(yield{type:`text_delta`,text:a.content}),a.tool_calls)for(let t of a.tool_calls)yield*e(t,r);i.finish_reason&&(yield*t(i.finish_reason,r))}}var r=class{client;apiKey;baseURL;initialized=!1;constructor(e,t){this.apiKey=e,this.baseURL=t?.baseURL}async ensureClient(){if(this.initialized)return;let e;try{let t=await Promise.resolve().then(()=>require("./openai-GO3M7Hwi.cjs"));e=t.default||t.OpenAI||t}catch{throw Error(`openai is required for the OpenAI provider. Install it with: npm install openai`)}let t={apiKey:this.apiKey};this.baseURL&&(t.baseURL=this.baseURL),this.client=new e(t),this.initialized=!0}async createStream(e){await this.ensureClient();let{messages:t}=this.formatMessages(e.messages,e.system);return this.client.chat.completions.create({model:e.model,max_completion_tokens:e.maxTokens,tools:this.formatTools(e.tools),messages:t,stream:!0,stream_options:{include_usage:!0}})}async*parseStreamEvents(e){let t=new Map;for await(let r of e)yield*n(r,t)}formatTools(e){return e.map(e=>({type:`function`,function:{name:e.name,description:e.description,parameters:e.parameters}}))}formatMessages(e,t){let n=[{role:`system`,content:t}];for(let t of e)if(t.role===`user`)n.push({role:`user`,content:typeof t.content==`string`?t.content:JSON.stringify(t.content)});else if(t.role===`assistant`){if(typeof t.content==`string`)n.push({role:`assistant`,content:t.content});else{let e=t.content,r=e.filter(e=>e.type===`text`).map(e=>e.text).join(``),i=e.filter(e=>e.type===`tool_use`).map(e=>({id:e.id,type:`function`,function:{name:e.name,arguments:JSON.stringify(e.input||{})}})),a={role:`assistant`};r&&(a.content=r),i.length>0&&(a.tool_calls=i),n.push(a)}}else t.role===`tool`?n.push(t):t.role===`tool_result`&&n.push({role:`user`,content:typeof t.content==`string`?t.content:JSON.stringify(t.content)});return{messages:n}}formatToolResults(e){return e.map(e=>({role:`tool`,tool_call_id:e.toolUseId,content:e.content}))}shouldContinue(e){return e===`tool_calls`}formatError(e){if(!e||!(e instanceof Error))return`Something went wrong. Please try again.`;let t=e.message||``,n=e;return n.status===429?`Too many requests. Please wait a moment and try again.`:n.status===401?`Authentication failed. Please check your API key configuration.`:n.status===503||n.status===502?`The AI service is temporarily unavailable. Please try again in a moment.`:n.status===400?`There was a problem with the request. Please try again.`:t.startsWith(`{`)||t.startsWith(`Error: {`)?`The AI service encountered an error. Please try again.`:t}};exports.OpenAIProvider=r;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=require("./utils-
|
|
1
|
+
const e=require("./utils-C1JpSDOX.cjs");function t(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n}function n(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}var r=function(){let{crypto:e}=globalThis;if(e?.randomUUID)return r=e.randomUUID.bind(e),e.randomUUID();let t=new Uint8Array(1),n=e?()=>e.getRandomValues(t)[0]:()=>Math.random()*255&255;return`10000000-1000-4000-8000-100000000000`.replace(/[018]/g,e=>(+e^n()&15>>e/4).toString(16))};function i(e){return typeof e==`object`&&!!e&&(`name`in e&&e.name===`AbortError`||`message`in e&&String(e.message).includes(`FetchRequestCanceledException`))}var a=e=>{if(e instanceof Error)return e;if(typeof e==`object`&&e){try{if(Object.prototype.toString.call(e)===`[object Error]`){let t=Error(e.message,e.cause?{cause:e.cause}:{});return e.stack&&(t.stack=e.stack),e.cause&&!t.cause&&(t.cause=e.cause),e.name&&(t.name=e.name),t}}catch{}try{return Error(JSON.stringify(e))}catch{}}return Error(e)},o=class extends Error{},s=class e extends o{constructor(t,n,r,i){super(`${e.makeMessage(t,n,r)}`),this.status=t,this.headers=i,this.requestID=i?.get(`x-request-id`),this.error=n;let a=n;this.code=a?.code,this.param=a?.param,this.type=a?.type}static makeMessage(e,t,n){let r=t?.message?typeof t.message==`string`?t.message:JSON.stringify(t.message):t?JSON.stringify(t):n;return e&&r?`${e} ${r}`:e?`${e} status code (no body)`:r||`(no status code or body)`}static generate(t,n,r,i){if(!t||!i)return new l({message:r,cause:a(n)});let o=n?.error;return t===400?new d(t,o,r,i):t===401?new f(t,o,r,i):t===403?new p(t,o,r,i):t===404?new m(t,o,r,i):t===409?new h(t,o,r,i):t===422?new g(t,o,r,i):t===429?new _(t,o,r,i):t>=500?new v(t,o,r,i):new e(t,o,r,i)}},c=class extends s{constructor({message:e}={}){super(void 0,void 0,e||`Request was aborted.`,void 0)}},l=class extends s{constructor({message:e,cause:t}){super(void 0,void 0,e||`Connection error.`,void 0),t&&(this.cause=t)}},u=class extends l{constructor({message:e}={}){super({message:e??`Request timed out.`})}},d=class extends s{},f=class extends s{},p=class extends s{},m=class extends s{},h=class extends s{},g=class extends s{},_=class extends s{},v=class extends s{},y=class extends o{constructor(){super(`Could not parse response content as the length limit was reached`)}},b=class extends o{constructor(){super(`Could not parse response content as the request was rejected by the content filter`)}},x=class extends Error{constructor(e){super(e)}},S=class extends s{constructor(e,t,n){let r=`OAuth2 authentication error`,i;if(t&&typeof t==`object`){let e=t;i=e.error;let n=e.error_description;n&&typeof n==`string`?r=n:i&&(r=i)}super(e,t,r,n),this.error_code=i}},C=class extends o{constructor(e,t,n){super(e),this.provider=t,this.cause=n}},w=/^[a-z][a-z0-9+.-]*:/i,ee=e=>w.test(e),T=e=>(T=Array.isArray,T(e)),te=T;function ne(e){return typeof e==`object`?e??{}:{}}function re(e){if(!e)return!0;for(let t in e)return!1;return!0}function E(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function ie(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var ae=(e,t)=>{if(typeof t!=`number`||!Number.isInteger(t))throw new o(`${e} must be an integer`);if(t<0)throw new o(`${e} must be a positive integer`);return t},oe=e=>{try{return JSON.parse(e)}catch{return}},se=e=>new Promise(t=>setTimeout(t,e));function ce(){if(typeof fetch<`u`)return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new OpenAI({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function le(...e){let t=globalThis.ReadableStream;if(t===void 0)throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new t(...e)}function ue(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():e[Symbol.iterator]();return le({start(){},async pull(e){let{done:n,value:r}=await t.next();n?e.close():e.enqueue(r)},async cancel(){await t.return?.()}})}function de(e){if(e[Symbol.asyncIterator])return e;let t=e.getReader();return{async next(){try{let e=await t.read();return e?.done&&t.releaseLock(),e}catch(e){throw t.releaseLock(),e}},async return(){let e=t.cancel();return t.releaseLock(),await e,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function fe(e){if(typeof e!=`object`||!e)return;if(e[Symbol.asyncIterator]){await e[Symbol.asyncIterator]().return?.();return}let t=e.getReader(),n=t.cancel();t.releaseLock(),await n}var pe;function me(e){let t;return(pe??=(t=new globalThis.TextEncoder,t.encode.bind(t)))(e)}var he;function ge(e){let t;return(he??=(t=new globalThis.TextDecoder,t.decode.bind(t)))(e)}var _e,D,O,k,ve,ye,be,xe=65536,Se=class{constructor(){_e.add(this),D.set(this,void 0),O.set(this,void 0),k.set(this,void 0),ve.set(this,void 0),ye.set(this,void 0),t(this,D,new Uint8Array,`f`),t(this,O,0,`f`),t(this,k,0,`f`),t(this,ve,0,`f`),t(this,ye,!1,`f`)}decode(e){if(e==null)return[];let r;if(r=e instanceof ArrayBuffer?new Uint8Array(e):typeof e==`string`?me(e):e,r.length===0||n(this,ye,`f`)&&(t(this,ye,!1,`f`),r[0]===10&&(r=r.subarray(1)),r.length===0))return[];n(this,_e,`m`,be).call(this,r);let i=[],a;for(;(a=Ce(n(this,D,`f`),n(this,ve,`f`),n(this,k,`f`)))!=null;){let e=ge(n(this,D,`f`).subarray(n(this,O,`f`),a.preceding));i.push(e),t(this,O,a.index,`f`),a.carriage&&(n(this,O,`f`)<n(this,k,`f`)&&n(this,D,`f`)[n(this,O,`f`)]===10?t(this,O,n(this,O,`f`)+1,`f`):n(this,O,`f`)===n(this,k,`f`)&&t(this,ye,!0,`f`)),t(this,ve,n(this,O,`f`),`f`)}if(t(this,ve,n(this,k,`f`),`f`),n(this,O,`f`)===n(this,k,`f`))t(this,O,0,`f`),t(this,k,0,`f`),t(this,ve,0,`f`),n(this,D,`f`).length>xe&&t(this,D,new Uint8Array,`f`);else if(i.length>0&&n(this,D,`f`).length>xe){let e=n(this,k,`f`)-n(this,O,`f`);if(e<=xe||n(this,D,`f`).length>e*4){let r=e<=xe?Math.min(Math.max(e*2,256),xe):e*2,i=new Uint8Array(r);i.set(n(this,D,`f`).subarray(n(this,O,`f`),n(this,k,`f`))),t(this,D,i,`f`),t(this,O,0,`f`),t(this,k,e,`f`),t(this,ve,e,`f`)}}return i}flush(){return t(this,ye,!1,`f`),n(this,O,`f`)===n(this,k,`f`)?[]:this.decode(`
|
|
2
2
|
`)}};D=new WeakMap,O=new WeakMap,k=new WeakMap,ve=new WeakMap,ye=new WeakMap,_e=new WeakSet,be=function(e){if(n(this,k,`f`)+e.length>n(this,D,`f`).length){let r=n(this,k,`f`)-n(this,O,`f`);if(n(this,O,`f`)>=n(this,D,`f`).length/2&&r+e.length<=n(this,D,`f`).length)n(this,D,`f`).copyWithin(0,n(this,O,`f`),n(this,k,`f`));else{let i=Math.max(n(this,D,`f`).length*2,r+e.length,256),a=new Uint8Array(i);a.set(n(this,D,`f`).subarray(n(this,O,`f`),n(this,k,`f`))),t(this,D,a,`f`)}t(this,ve,n(this,ve,`f`)-n(this,O,`f`),`f`),t(this,k,r,`f`),t(this,O,0,`f`)}n(this,D,`f`).set(e,n(this,k,`f`)),t(this,k,n(this,k,`f`)+e.length,`f`)},Se.NEWLINE_CHARS=new Set([`
|
|
3
3
|
`,`\r`]),Se.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function Ce(e,t,n){for(let r=t;r<n;r++){if(e[r]===10)return{preceding:r,index:r+1,carriage:!1};if(e[r]===13)return{preceding:r,index:r+1,carriage:!0}}return null}function we(e){for(let t=0;t<e.length-1;t++){let n=Te(e,t);if(n>0){let r=t+n,i=Te(e,r);if(i>0)return r+i}}return-1}function Te(e,t){return e[t]===10?1:e[t]===13?e[t+1]===10?2:1:0}var Ee={off:0,error:200,warn:300,info:400,debug:500},De=(e,t,n)=>{if(e){if(E(Ee,e))return e;A(n).warn(`${t} was set to ${JSON.stringify(e)}, expected one of ${JSON.stringify(Object.keys(Ee))}`)}};function Oe(){}function ke(e,t,n){return!t||Ee[e]>Ee[n]?Oe:t[e].bind(t)}var Ae={error:Oe,warn:Oe,info:Oe,debug:Oe},je=new WeakMap;function A(e){let t=e.logger,n=e.logLevel??`off`;if(!t)return Ae;let r=je.get(t);if(r&&r[0]===n)return r[1];let i={error:ke(`error`,t,n),warn:ke(`warn`,t,n),info:ke(`info`,t,n),debug:ke(`debug`,t,n)};return je.set(t,[n,i]),i}var Me=new Set([`apikey`,`accesstoken`,`refreshtoken`,`sessiontoken`,`sessionid`,`idtoken`,`authtoken`,`authorization`,`token`,`password`,`clientsecret`,`xamzsecuritytoken`,`xamzsignature`,`xamzcredential`]);function Ne(e){let t=e.toLowerCase().replace(/[-_]/gu,``);return Me.has(t)||Me.has(t.replace(/^x/u,``))}var Pe=new Set([`authorization`,`proxy-authorization`,`api-key`,`x-api-key`,`x-amz-security-token`,`cookie`,`set-cookie`,`x-session-token`,`x-session-id`,`x-auth-token`,`x-id-token`]);function Fe(e){return Pe.has(e.toLowerCase().replace(/_/gu,`-`))||Ne(e)}function Ie(e){let t=new URL(e);t.username=``,t.password=``,t.hash=``;for(let e of t.searchParams.keys())Ne(e)&&t.searchParams.set(e,`***`);return t.href}var Le=e=>{if(e.options){if(e.options={...e.options},delete e.options.headers,e.options.path){let t=e.options.path,n=new URL(Ie(new URL(t,`https://redacted.invalid`).href));e.options.path=n.origin===`https://redacted.invalid`?`${t.startsWith(`/`)?`/`:``}${n.pathname.slice(1)}${n.search}`:n.href}e.options.query&&(e.options.query=Object.fromEntries(Object.entries(e.options.query).map(([e,t])=>[e,Ne(e)?`***`:t])))}return e.url&&=Ie(e.url),e.headers&&=Object.fromEntries((e.headers instanceof Headers?[...e.headers]:Object.entries(e.headers)).map(([e,t])=>[e,Fe(e)?`***`:t])),`retryOfRequestLogID`in e&&(e.retryOfRequestLogID&&(e.retryOf=e.retryOfRequestLogID),delete e.retryOfRequestLogID),e},Re;function ze(){let e=[],t=0;return{get length(){return e.length-t},enqueue(t){e.push(t)},dequeue(){if(t===e.length)return;let n=e[t];return e[t]=void 0,t+=1,t===e.length?(e=[],t=0):t>=1024&&t*2>=e.length&&(e=e.slice(t),t=0),n}}}var Be=class e{constructor(e,n,r){Re.set(this,void 0),this.iterator=e,this.controller=n,t(this,Re,r,`f`)}static fromSSEResponse(t,n,r,a){let c=!1,l=r?A(r):console;async function*u(){if(c)throw new o("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");c=!0;let e=!1,r=!1;try{for await(let e of He(t,n)){if(e.data===`[DONE]`){r=!0;break}if(e.event===null||!e.event.startsWith(`thread.`)){let n;try{n=JSON.parse(e.data)}catch{throw l.error(`Could not parse message into JSON:`),l.error(`From chunk:`),SyntaxError(`Error reading response: malformed server-sent event JSON.`)}if(e.event===`error`)throw new s(void 0,n?.error??n,void 0,t.headers);if(n&&n.error)throw new s(void 0,n.error,void 0,t.headers);yield a?{event:e.event,data:n}:n}else{let t;try{t=JSON.parse(e.data)}catch{throw l.error(`Could not parse message into JSON:`),l.error(`From chunk:`),SyntaxError(`Error reading response: malformed server-sent event JSON.`)}yield{event:e.event,data:t}}}e=!0}catch(e){if(r||i(e)||n.signal.aborted&&e===n.signal.reason)return;throw e}finally{e||n.abort()}}return new e(u,n,r)}static fromReadableStream(t,n,r){let a=!1;async function*s(){let e=new Se,r=t.getReader(),i=!1,a,o=()=>{a??=r.cancel(),a.catch(()=>void 0)};n.signal.addEventListener(`abort`,o,{once:!0});try{if(n.signal.aborted){o();return}for(;;){let{value:t,done:a}=await r.read();if(a){i=!0;break}if(n.signal.aborted)return;for(let r of e.decode(t)){if(n.signal.aborted)return;yield r}}if(n.signal.aborted)return;for(let t of e.flush()){if(n.signal.aborted)return;yield t}}finally{n.signal.removeEventListener(`abort`,o),i||o(),r.releaseLock()}}async function*c(){if(a)throw new o("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");a=!0;let e=!1;try{for await(let t of s())if(!e&&t){let e;try{e=JSON.parse(t)}catch(e){throw e instanceof SyntaxError?SyntaxError(`Error reading response: malformed newline-delimited JSON.`):e}yield e}e=!0}catch(e){if(n.signal.aborted||i(e))return;throw e}finally{e||n.abort()}}return new e(c,n,r)}[(Re=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let t=ze(),r=ze(),i=this.iterator(),a=e=>({next:()=>{if(e.length===0){let e=i.next();t.enqueue(e),r.enqueue(e)}return e.dequeue()}});return[new e(()=>a(t),this.controller,n(this,Re,`f`)),new e(()=>a(r),this.controller,n(this,Re,`f`))]}toReadableStream(){let e;return le({start:async()=>{e=this[Symbol.asyncIterator]()},async pull(t){try{let{value:n,done:r}=await e.next();if(r)return t.close();let i=me(JSON.stringify(n)+`
|
|
4
4
|
`);t.enqueue(i)}catch(e){t.error(e)}},async cancel(){await e.return?.()}})}};function Ve(e,t){let n=typeof e.getReader==`function`?e.getReader():void 0,r=n?{next:()=>n.read(),return:()=>n.cancel()}:de(e)[Symbol.asyncIterator](),a={value:void 0,done:!0},o=!1,s=!1,c,l,u=()=>new Promise(e=>{l=e}),d=()=>{if(s||o)return c;s=!0;try{c=Promise.resolve(r.return?.())}catch(e){c=Promise.reject(e)}return c.catch(()=>void 0),c},f=()=>{queueMicrotask(()=>{l?.(),d()})};return{iterator:{async next(){if(t.aborted)return a;let e=u().then(()=>a);try{let n=await Promise.race([r.next(),e]);return t.aborted?a:n.done?(o=!0,a):{value:n.value,done:!1}}catch(e){if(t.aborted&&(i(e)||e===t.reason))return a;throw e}finally{l=void 0}},async return(){let e=d();if(e&&!t.aborted){let n=u();try{t.aborted||await Promise.race([e,n])}finally{l=void 0}}return a},[Symbol.asyncIterator](){return this}},start(){t.addEventListener(`abort`,f,{once:!0}),t.aborted&&f()},async cleanup(e){let r;try{t.removeEventListener(`abort`,f)}catch(e){r=e}if(!o){let n=d();if(n&&!e&&!t.aborted)try{await n}catch(e){r??=e}}if(n)try{n.releaseLock()}catch(e){r??=e}if(r!==void 0&&!e&&!t.aborted)throw r}}}async function*He(e,t){if(!e.body)throw t.abort(),globalThis.navigator!==void 0&&globalThis.navigator.product===`ReactNative`?new o(`The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api`):new o(`Attempted to iterate over a response with no body`);let n=new Ge,r=new Se,{signal:a}=t,s=Ve(e.body,a),c=!1;try{s.start();for await(let e of We(s.iterator)){if(a.aborted)return;for(let t of r.decode(e)){if(a.aborted)return;let e=n.decode(t);e&&(yield e)}}if(a.aborted)return;for(let e of r.flush()){if(a.aborted)return;let t=n.decode(e);t&&(yield t)}}catch(e){if(c=!0,!a.aborted||!i(e)&&e!==a.reason)throw e}finally{await s.cleanup(c)}}var Ue=3;async function*We(e){let t=new Uint8Array,n=0,r=0,i=0;for await(let a of e){if(a==null)continue;let e;if(e=a instanceof ArrayBuffer?new Uint8Array(a):typeof a==`string`?me(a):a,r+e.length>t.length){let a=r-n;if(n>=t.length/2&&a+e.length<=t.length)t.copyWithin(0,n,r);else{let i=new Uint8Array(Math.max(t.length*2,a+e.length));i.set(t.subarray(n,r)),t=i}i-=n,n=0,r=a}t.set(e,r),r+=e.length;let o;for(;(o=we(t.subarray(i,r)))!==-1;)o+=i,yield t.slice(n,o),n=o,i=n;i=Math.max(n,r-Ue)}r>n&&(yield t.slice(n,r))}var Ge=class{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(e){if(e.endsWith(`\r`)&&(e=e.slice(0,-1)),!e){if(!this.event&&!this.data.length)return null;let e={event:this.event,data:this.data.join(`
|
|
@@ -829,6 +829,9 @@ var We = {
|
|
|
829
829
|
"chart.boxPlot.label": "Box Plot",
|
|
830
830
|
"chart.boxPlot.description": "Show statistical distribution (median, IQR, whiskers) across categories",
|
|
831
831
|
"chart.boxPlot.useCase": "Best for P&L spread per symbol, trade size distribution, latency distribution across platforms",
|
|
832
|
+
"chart.dotStrip.label": "Dot Strip Plot",
|
|
833
|
+
"chart.dotStrip.description": "Show every individual value as a dot, grouped into category bands",
|
|
834
|
+
"chart.dotStrip.useCase": "Best for comparing individuals within a group — spread of output per team, salary per band, latency per endpoint",
|
|
832
835
|
"chart.waterfall.label": "Waterfall Chart",
|
|
833
836
|
"chart.waterfall.description": "Show cumulative effect of sequential positive and negative values",
|
|
834
837
|
"chart.waterfall.useCase": "Best for P&L decomposition, cash flow analysis, budget variance, or any sequential contribution breakdown",
|
|
@@ -941,6 +944,15 @@ var We = {
|
|
|
941
944
|
"chart.heatmap.dropZone.valueField.empty": "Drop one measure here",
|
|
942
945
|
"chart.boxPlot.dropZone.xAxis.empty": "Drop a dimension here",
|
|
943
946
|
"chart.boxPlot.dropZone.yAxis.empty": "Drop 1, 3, or 5 measures here",
|
|
947
|
+
"chart.dotStrip.dropZone.xAxis.label": "Bands (rows)",
|
|
948
|
+
"chart.dotStrip.dropZone.xAxis.description": "Dimension that groups dots into rows, e.g. team, band, region",
|
|
949
|
+
"chart.dotStrip.dropZone.xAxis.empty": "Drop a dimension to band by",
|
|
950
|
+
"chart.dotStrip.dropZone.yAxis.label": "Value (horizontal position)",
|
|
951
|
+
"chart.dotStrip.dropZone.yAxis.description": "Measure that positions each dot along the horizontal axis",
|
|
952
|
+
"chart.dotStrip.dropZone.yAxis.empty": "Drop a measure here",
|
|
953
|
+
"chart.dotStrip.dropZone.series.label": "Dot identity",
|
|
954
|
+
"chart.dotStrip.dropZone.series.description": "Dimension that gives each dot its own row — one dot per value, named in the tooltip",
|
|
955
|
+
"chart.dotStrip.dropZone.series.empty": "Drop a dimension to split into individual dots",
|
|
944
956
|
"chart.waterfall.dropZone.xAxis.empty": "Drop a dimension here",
|
|
945
957
|
"chart.waterfall.dropZone.yAxis.empty": "Drop a measure here",
|
|
946
958
|
"chart.candlestick.dropZone.xAxis.empty": "Drop a time or dimension here",
|
|
@@ -1041,6 +1053,23 @@ var We = {
|
|
|
1041
1053
|
"chart.option.showDataLabels.description": "Display the value at each data point",
|
|
1042
1054
|
"chart.option.showReferenceLineAtZero.label": "Show Zero Reference Line",
|
|
1043
1055
|
"chart.option.showReferenceLineAtZero.description": "Draw a dashed line at Y = 0",
|
|
1056
|
+
"chart.option.showMedianMarker.label": "Show Median Marker",
|
|
1057
|
+
"chart.option.showMedianMarker.description": "Draw a tick at each band's median value",
|
|
1058
|
+
"chart.option.showBandStats.label": "Show Band Statistics",
|
|
1059
|
+
"chart.option.showBandStats.description": "Show the dot count and spread beside each band name",
|
|
1060
|
+
"chart.option.showExtremeLabels.label": "Label Extremes",
|
|
1061
|
+
"chart.option.showExtremeLabels.description": "Name the lowest and highest dot in each band",
|
|
1062
|
+
"chart.option.dotSize.label": "Dot Size",
|
|
1063
|
+
"chart.option.dotSize.description": "Larger dots are easier to see but spread the swarm further",
|
|
1064
|
+
"chart.option.dotSize.small": "Small",
|
|
1065
|
+
"chart.option.dotSize.medium": "Medium",
|
|
1066
|
+
"chart.option.dotSize.large": "Large",
|
|
1067
|
+
"chart.option.bandSort.label": "Band Order",
|
|
1068
|
+
"chart.option.bandSort.description": "How to order the bands from top to bottom",
|
|
1069
|
+
"chart.option.bandSort.none": "Query order",
|
|
1070
|
+
"chart.option.bandSort.valueDesc": "Highest median first",
|
|
1071
|
+
"chart.option.bandSort.valueAsc": "Lowest median first",
|
|
1072
|
+
"chart.option.bandSort.count": "Most dots first",
|
|
1044
1073
|
"chart.option.lineType.label": "Line Interpolation",
|
|
1045
1074
|
"chart.option.lineType.smooth": "Smooth (monotone)",
|
|
1046
1075
|
"chart.option.lineType.linear": "Linear",
|
|
@@ -1531,6 +1560,7 @@ var We = {
|
|
|
1531
1560
|
"chart.runtime.noDataHint.treemap": "No data points to display in treemap chart",
|
|
1532
1561
|
"chart.runtime.noDataHint.bubble": "No data points to display in bubble chart",
|
|
1533
1562
|
"chart.runtime.noDataHint.boxPlot": "No data points to display in box plot chart",
|
|
1563
|
+
"chart.runtime.noDataHint.dotStrip": "No data points to display in dot strip plot",
|
|
1534
1564
|
"chart.runtime.noDataHint.waterfall": "No data points to display in waterfall chart",
|
|
1535
1565
|
"chart.runtime.noDataHint.candlestick": "No data points to display in candlestick chart",
|
|
1536
1566
|
"chart.runtime.noDataHint.gauge": "No data points to display in gauge chart",
|
|
@@ -1553,6 +1583,14 @@ var We = {
|
|
|
1553
1583
|
"chart.runtime.noValidDataHint.pie": "No data points to display in pie chart",
|
|
1554
1584
|
"chart.runtime.noValidDataHint.pieFiltered": "Filtered out {count} data points (zero or invalid values)",
|
|
1555
1585
|
"chart.runtime.noValidDataHint.boxPlot": "Could not compute box plot statistics from the provided data",
|
|
1586
|
+
"chart.runtime.noValidDataHint.dotStrip": "No valid numeric values for the dot strip plot",
|
|
1587
|
+
"chart.runtime.configErrorHint.dotStrip": "Dot strip plot needs a dimension to band by and one measure",
|
|
1588
|
+
"chart.runtime.dotStrip.unlabelledBand": "(no value)",
|
|
1589
|
+
"chart.runtime.dotStrip.count": "n={count}",
|
|
1590
|
+
"chart.runtime.dotStrip.countTruncated": "n={count}+",
|
|
1591
|
+
"chart.runtime.dotStrip.noDataRecorded": "no data recorded",
|
|
1592
|
+
"chart.runtime.dotStrip.spread": "spread {spread}×",
|
|
1593
|
+
"chart.runtime.dotStrip.truncated": "Showing the first {max} bands",
|
|
1556
1594
|
"chart.runtime.noValidDataHint.gauge": "Gauge value is not a valid number",
|
|
1557
1595
|
"chart.runtime.noValidDataHint.kpiText": "All values are null or invalid",
|
|
1558
1596
|
"chart.runtime.configError": "Configuration Error",
|