drizzle-cube 0.5.3 → 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/dist/adapters/express/index.cjs +2 -2
  2. package/dist/adapters/express/index.js +105 -104
  3. package/dist/adapters/fastify/index.cjs +2 -2
  4. package/dist/adapters/fastify/index.js +107 -106
  5. package/dist/adapters/{google-CBfBGU4F.js → google-CT4kgmBf.js} +1 -1
  6. package/dist/adapters/{google-BOAwi9Ib.cjs → google-Dgo9-Kb5.cjs} +1 -1
  7. package/dist/adapters/{handler-Cqf-CqAS.cjs → handler-CNn3q29F.cjs} +13 -13
  8. package/dist/adapters/{handler-BC3nFNxV.js → handler-_TKfigrZ.js} +33 -34
  9. package/dist/adapters/hono/index.cjs +1 -1
  10. package/dist/adapters/hono/index.js +99 -98
  11. package/dist/adapters/{locale-D9VQkLXt.js → locale-BQQrZYhz.js} +1 -1
  12. package/dist/adapters/{locale-BoiA6WiV.cjs → locale-Dl_3R6hP.cjs} +7 -7
  13. package/dist/adapters/mcp-tools.cjs +1 -1
  14. package/dist/adapters/mcp-tools.js +2 -2
  15. package/dist/adapters/mcp-transport-CkyawtUT.cjs +40 -0
  16. package/dist/adapters/mcp-transport-DSbd6M_u.js +586 -0
  17. package/dist/adapters/mcp-transport.d.ts +22 -0
  18. package/dist/adapters/nextjs/index.cjs +1 -1
  19. package/dist/adapters/nextjs/index.js +136 -135
  20. package/dist/adapters/{openai-B4N3KfTG.cjs → openai-BjLV_Wjx.cjs} +1 -1
  21. package/dist/adapters/{openai-BWdm0JvG.js → openai-DQawCWQb.js} +1 -1
  22. package/dist/adapters/{utils-CTYvfZ3I.js → utils-DG8ti3FT.js} +1097 -661
  23. package/dist/adapters/utils-DrWvXf0G.cjs +128 -0
  24. package/dist/adapters/utils.cjs +1 -1
  25. package/dist/adapters/utils.d.ts +46 -4
  26. package/dist/adapters/utils.js +1 -1
  27. package/dist/client/charts.js +12 -12
  28. package/dist/client/chunks/{DashboardEditModal-IU_0dgfC.js → DashboardEditModal-BBcB0E2g.js} +10 -10
  29. package/dist/client/chunks/{DashboardEditModal-IU_0dgfC.js.map → DashboardEditModal-BBcB0E2g.js.map} +1 -1
  30. package/dist/client/chunks/{FieldSearchModal-BCWanpPX.js → FieldSearchModal-CisOov-_.js} +4 -4
  31. package/dist/client/chunks/{FieldSearchModal-BCWanpPX.js.map → FieldSearchModal-CisOov-_.js.map} +1 -1
  32. package/dist/client/chunks/KpiDelta-D09hA_UJ.js +2 -0
  33. package/dist/client/chunks/KpiNumber-B7F9F9fC.js +2 -0
  34. package/dist/client/chunks/KpiText-C3ZXOF8b.js +2 -0
  35. package/dist/client/chunks/{RetentionCombinedChart-CQMBODsK.js → RetentionCombinedChart-DiyZwiPv.js} +3 -3
  36. package/dist/client/chunks/{RetentionCombinedChart-CQMBODsK.js.map → RetentionCombinedChart-DiyZwiPv.js.map} +1 -1
  37. package/dist/client/chunks/{RetentionHeatmap-B_5sewwi.js → RetentionHeatmap-usGF7BCo.js} +2 -2
  38. package/dist/client/chunks/{RetentionHeatmap-B_5sewwi.js.map → RetentionHeatmap-usGF7BCo.js.map} +1 -1
  39. package/dist/client/chunks/SchemaVisualization-DP4k1fPp.js +2 -0
  40. package/dist/client/chunks/SchemaVisualizationLazy-Brqv_PY9.js +2 -0
  41. package/dist/client/chunks/{analysis-builder-Dm6eD_AX.js → analysis-builder-0o1W-k3K.js} +8 -8
  42. package/dist/client/chunks/{analysis-builder-Dm6eD_AX.js.map → analysis-builder-0o1W-k3K.js.map} +1 -1
  43. package/dist/client/chunks/{analysis-builder-shared-DT5bXwCA.js → analysis-builder-shared-Cz4KAlIC.js} +9 -9
  44. package/dist/client/chunks/{analysis-builder-shared-DT5bXwCA.js.map → analysis-builder-shared-Cz4KAlIC.js.map} +1 -1
  45. package/dist/client/chunks/{chart-activity-grid-CWT0gLv4.js → chart-activity-grid-VFFm85hC.js} +18 -3
  46. package/dist/client/chunks/{chart-activity-grid-CWT0gLv4.js.map → chart-activity-grid-VFFm85hC.js.map} +1 -1
  47. package/dist/client/chunks/{chart-area-DDti9Qtp.js → chart-area-CwwIHTmK.js} +2 -2
  48. package/dist/client/chunks/{chart-area-DDti9Qtp.js.map → chart-area-CwwIHTmK.js.map} +1 -1
  49. package/dist/client/chunks/{chart-bar-B3s9qDlh.js → chart-bar-Bmny922L.js} +3 -3
  50. package/dist/client/chunks/{chart-bar-B3s9qDlh.js.map → chart-bar-Bmny922L.js.map} +1 -1
  51. package/dist/client/chunks/{chart-box-plot-o-h9MRX5.js → chart-box-plot-DM7GwtCV.js} +2 -2
  52. package/dist/client/chunks/{chart-box-plot-o-h9MRX5.js.map → chart-box-plot-DM7GwtCV.js.map} +1 -1
  53. package/dist/client/chunks/{chart-bubble-CMDp4Pfm.js → chart-bubble-DJOq4IpT.js} +2 -2
  54. package/dist/client/chunks/{chart-bubble-CMDp4Pfm.js.map → chart-bubble-DJOq4IpT.js.map} +1 -1
  55. package/dist/client/chunks/{chart-candlestick-WyANJ0Ky.js → chart-candlestick-C2nzVCv1.js} +2 -2
  56. package/dist/client/chunks/{chart-candlestick-WyANJ0Ky.js.map → chart-candlestick-C2nzVCv1.js.map} +1 -1
  57. package/dist/client/chunks/{chart-data-table-Qrt6EAno.js → chart-data-table-zZtwLf55.js} +30 -30
  58. package/dist/client/chunks/chart-data-table-zZtwLf55.js.map +1 -0
  59. package/dist/client/chunks/{chart-funnel-C7pgktN5.js → chart-funnel-COTJy8BP.js} +2 -2
  60. package/dist/client/chunks/{chart-funnel-C7pgktN5.js.map → chart-funnel-COTJy8BP.js.map} +1 -1
  61. package/dist/client/chunks/{chart-gauge-D2r2B_AR.js → chart-gauge-C8lIneI0.js} +2 -2
  62. package/dist/client/chunks/{chart-gauge-D2r2B_AR.js.map → chart-gauge-C8lIneI0.js.map} +1 -1
  63. package/dist/client/chunks/{chart-heat-map-Dw2yjwfO.js → chart-heat-map-BJXt3RMt.js} +2 -2
  64. package/dist/client/chunks/{chart-heat-map-Dw2yjwfO.js.map → chart-heat-map-BJXt3RMt.js.map} +1 -1
  65. package/dist/client/chunks/{chart-kpi-delta-CgldZ7zO.js → chart-kpi-delta-DHkNqufb.js} +3 -3
  66. package/dist/client/chunks/{chart-kpi-delta-CgldZ7zO.js.map → chart-kpi-delta-DHkNqufb.js.map} +1 -1
  67. package/dist/client/chunks/{chart-kpi-number-ByfuX1ki.js → chart-kpi-number-BrXw7m-S.js} +5 -5
  68. package/dist/client/chunks/{chart-kpi-number-ByfuX1ki.js.map → chart-kpi-number-BrXw7m-S.js.map} +1 -1
  69. package/dist/client/chunks/{chart-kpi-text-DeNuDraJ.js → chart-kpi-text-D0plngLV.js} +3 -3
  70. package/dist/client/chunks/{chart-kpi-text-DeNuDraJ.js.map → chart-kpi-text-D0plngLV.js.map} +1 -1
  71. package/dist/client/chunks/{chart-line-RdZwtk27.js → chart-line-DKvW32U-.js} +3 -3
  72. package/dist/client/chunks/{chart-line-RdZwtk27.js.map → chart-line-DKvW32U-.js.map} +1 -1
  73. package/dist/client/chunks/{chart-markdown-CiGRZdJj.js → chart-markdown-CJU2hUq3.js} +2 -2
  74. package/dist/client/chunks/{chart-markdown-CiGRZdJj.js.map → chart-markdown-CJU2hUq3.js.map} +1 -1
  75. package/dist/client/chunks/{chart-measure-profile-Ckjw9bX6.js → chart-measure-profile-DNT_tbh4.js} +3 -3
  76. package/dist/client/chunks/{chart-measure-profile-Ckjw9bX6.js.map → chart-measure-profile-DNT_tbh4.js.map} +1 -1
  77. package/dist/client/chunks/{chart-pie-BvY4FY__.js → chart-pie-CzYnncO-.js} +3 -3
  78. package/dist/client/chunks/{chart-pie-BvY4FY__.js.map → chart-pie-CzYnncO-.js.map} +1 -1
  79. package/dist/client/chunks/{chart-radar-DjiiEAmc.js → chart-radar-8iAt3QZl.js} +3 -3
  80. package/dist/client/chunks/{chart-radar-DjiiEAmc.js.map → chart-radar-8iAt3QZl.js.map} +1 -1
  81. package/dist/client/chunks/{chart-radial-bar-lla_JEYu.js → chart-radial-bar-CJbG7RIe.js} +3 -3
  82. package/dist/client/chunks/{chart-radial-bar-lla_JEYu.js.map → chart-radial-bar-CJbG7RIe.js.map} +1 -1
  83. package/dist/client/chunks/{chart-sankey-WwkZAhLy.js → chart-sankey-C-wLBUmb.js} +2 -2
  84. package/dist/client/chunks/{chart-sankey-WwkZAhLy.js.map → chart-sankey-C-wLBUmb.js.map} +1 -1
  85. package/dist/client/chunks/{chart-scatter-DwXnI0rr.js → chart-scatter-NMjD1lbW.js} +3 -3
  86. package/dist/client/chunks/{chart-scatter-DwXnI0rr.js.map → chart-scatter-NMjD1lbW.js.map} +1 -1
  87. package/dist/client/chunks/{chart-sunburst-CIDB_pTl.js → chart-sunburst-HtJ-LJ7n.js} +3 -3
  88. package/dist/client/chunks/{chart-sunburst-CIDB_pTl.js.map → chart-sunburst-HtJ-LJ7n.js.map} +1 -1
  89. package/dist/client/chunks/{chart-tree-map-DJHoA26f.js → chart-tree-map-CetaLMt8.js} +3 -3
  90. package/dist/client/chunks/{chart-tree-map-DJHoA26f.js.map → chart-tree-map-CetaLMt8.js.map} +1 -1
  91. package/dist/client/chunks/{chart-waterfall-Y7c8csO5.js → chart-waterfall-ontNp1Sd.js} +3 -3
  92. package/dist/client/chunks/{chart-waterfall-Y7c8csO5.js.map → chart-waterfall-ontNp1Sd.js.map} +1 -1
  93. package/dist/client/chunks/{charts-core-BXOqaYFn.js → charts-core-B5UXUg6_.js} +2 -2
  94. package/dist/client/chunks/{charts-core-BXOqaYFn.js.map → charts-core-B5UXUg6_.js.map} +1 -1
  95. package/dist/client/chunks/{nl-NL-vCifBijs.js → nl-NL-DDf0OdfW.js} +17 -2
  96. package/dist/client/chunks/{nl-NL-vCifBijs.js.map → nl-NL-DDf0OdfW.js.map} +1 -1
  97. package/dist/client/chunks/{schema-visualization-DWwJukK7.js → schema-visualization-cnB2xZxn.js} +4 -4
  98. package/dist/client/chunks/{schema-visualization-DWwJukK7.js.map → schema-visualization-cnB2xZxn.js.map} +1 -1
  99. package/dist/client/chunks/{useDebounce-DyJVREop.js → useDebounce-BOBSvhHy.js} +4 -4
  100. package/dist/client/chunks/{useDebounce-DyJVREop.js.map → useDebounce-BOBSvhHy.js.map} +1 -1
  101. package/dist/client/chunks/{useExplainAI-CxSkjocM.js → useExplainAI-B_Pi4eXW.js} +4 -4
  102. package/dist/client/chunks/{useExplainAI-CxSkjocM.js.map → useExplainAI-B_Pi4eXW.js.map} +1 -1
  103. package/dist/client/chunks/{utils-BHZdKxua.js → utils-BIuqPQuJ.js} +2 -2
  104. package/dist/client/chunks/{utils-BHZdKxua.js.map → utils-BIuqPQuJ.js.map} +1 -1
  105. package/dist/client/chunks/{vendor-CBD_Olr0.js → vendor-BxLCTfvm.js} +2 -2
  106. package/dist/client/chunks/{vendor-CBD_Olr0.js.map → vendor-BxLCTfvm.js.map} +1 -1
  107. package/dist/client/components.js +3 -3
  108. package/dist/client/hooks.js +3 -3
  109. package/dist/client/icons.js +1 -1
  110. package/dist/client/index.js +14 -14
  111. package/dist/client/providers.js +1 -1
  112. package/dist/client/schema.js +1 -1
  113. package/dist/client/utils.js +5 -5
  114. package/dist/client-bundle-stats.html +1 -1
  115. package/dist/mcp-app/mcp-app.html +23 -23
  116. package/dist/server/index.cjs +134 -133
  117. package/dist/server/index.js +1000 -946
  118. package/package.json +1 -1
  119. package/dist/adapters/mcp-prompts-BUFyQLHQ.js +0 -377
  120. package/dist/adapters/mcp-prompts-B_NvEJT_.cjs +0 -111
  121. package/dist/adapters/mcp-transport-B0mgxRnJ.js +0 -579
  122. package/dist/adapters/mcp-transport-irsahKmD.cjs +0 -39
  123. package/dist/adapters/utils-XPOzzMdY.cjs +0 -17
  124. package/dist/client/chunks/KpiDelta-_igN6cJa.js +0 -2
  125. package/dist/client/chunks/KpiNumber-t5n8PtRU.js +0 -2
  126. package/dist/client/chunks/KpiText-BCZJJ6a0.js +0 -2
  127. package/dist/client/chunks/SchemaVisualization-BUUhlOvG.js +0 -2
  128. package/dist/client/chunks/SchemaVisualizationLazy-CwaPCUL0.js +0 -2
  129. package/dist/client/chunks/chart-data-table-Qrt6EAno.js.map +0 -1
  130. /package/dist/adapters/{anthropic-Cto4Jxqt.cjs → anthropic-BIva8k1r.cjs} +0 -0
  131. /package/dist/adapters/{anthropic-DpEbCVvF.js → anthropic-B_rg0BhK.js} +0 -0
  132. /package/dist/adapters/{dist-BnyV9wfA.cjs → dist-Boc63-1q.cjs} +0 -0
  133. /package/dist/adapters/{dist-DjVh2RFz.js → dist-De5fzUEM.js} +0 -0
  134. /package/dist/adapters/{openai-CoqT_FM5.cjs → openai-Bgri5TJc.cjs} +0 -0
  135. /package/dist/adapters/{openai-D0Nsvc9L.js → openai-CuUGrKaK.js} +0 -0
@@ -1,9 +1,9 @@
1
- import { a as e, f as t, o as n, r, u as i } from "../utils-CTYvfZ3I.js";
2
- import { i as a, n as o, r as s, t as c } from "../locale-D9VQkLXt.js";
3
- import { S as l, _ as u, a as d, b as f, c as p, g as m, h, i as g, l as _, m as v, o as y, r as b, u as x, v as S, x as C, y as w } from "../mcp-transport-B0mgxRnJ.js";
4
- import { Hono as T } from "hono";
1
+ import { a as e, f as t, o as n, r, u as i } from "../utils-DG8ti3FT.js";
2
+ import { i as a, n as o, r as s, t as c } from "../locale-BQQrZYhz.js";
3
+ import { C as l, S as u, _ as d, a as f, b as p, c as m, g as h, h as g, i as _, l as v, m as y, o as b, r as x, u as S, v as C, x as w, y as T } from "../mcp-transport-DSbd6M_u.js";
4
+ import { Hono as E } from "hono";
5
5
  //#region node_modules/hono/dist/middleware/cors/index.js
6
- var E = (e) => {
6
+ var D = (e) => {
7
7
  let t = {
8
8
  origin: "*",
9
9
  allowMethods: [
@@ -43,36 +43,36 @@ var E = (e) => {
43
43
  };
44
44
  //#endregion
45
45
  //#region src/adapters/hono/index.ts
46
- function D(D) {
47
- let { cubes: O, drizzle: k, schema: A, extractSecurityContext: j, engineType: M, cors: N, basePath: P = "/cubejs-api/v1", cache: F, mcp: I = { enabled: !0 }, agent: L } = D;
48
- if (!D.semanticLayer && (!O || O.length === 0)) throw Error("Either semanticLayer or a non-empty cubes array must be provided");
49
- let R = new T(), z = async (e) => s(await j(e), o((t) => e.req.header(t)));
50
- if (N) {
46
+ function O(O) {
47
+ let { cubes: k, drizzle: A, schema: j, extractSecurityContext: M, engineType: N, cors: P, basePath: F = "/cubejs-api/v1", cache: I, mcp: L = { enabled: !0 }, agent: R } = O;
48
+ if (!O.semanticLayer && (!k || k.length === 0)) throw Error("Either semanticLayer or a non-empty cubes array must be provided");
49
+ let z = new E(), B = async (e) => s(await M(e), o((t) => e.req.header(t)));
50
+ if (P) {
51
51
  let e = {
52
- ...N,
53
- allowHeaders: c(N.allowHeaders)
52
+ ...P,
53
+ allowHeaders: c(P.allowHeaders)
54
54
  };
55
- R.use("/*", E(e));
55
+ z.use("/*", D(e));
56
56
  }
57
- let B = D.semanticLayer ?? new a({
58
- drizzle: k,
59
- schema: A,
60
- engineType: M,
61
- cache: F,
62
- rlsSetup: D.rlsSetup
57
+ let V = O.semanticLayer ?? new a({
58
+ drizzle: A,
59
+ schema: j,
60
+ engineType: N,
61
+ cache: I,
62
+ rlsSetup: O.rlsSetup
63
63
  });
64
- if (!D.semanticLayer && O && O.forEach((e) => {
65
- B.registerCube(e);
66
- }), R.post(`${P}/load`, async (e) => {
64
+ if (!O.semanticLayer && k && k.forEach((e) => {
65
+ V.registerCube(e);
66
+ }), z.post(`${F}/load`, async (e) => {
67
67
  try {
68
- let t = await e.req.json(), n = t.query || t, i = await z(e), a = B.validateQuery(n);
68
+ let t = await e.req.json(), n = t.query || t, i = await B(e), a = V.validateQuery(n);
69
69
  if (!a.isValid) return e.json({ error: `Query validation failed: ${a.errors.join(", ")}` }, 400);
70
- let o = e.req.header("x-cache-control") === "no-cache", s = await B.executeMultiCubeQuery(n, i, { skipCache: o });
71
- return e.json(r(n, s, B));
70
+ let o = e.req.header("x-cache-control") === "no-cache", s = await V.executeMultiCubeQuery(n, i, { skipCache: o });
71
+ return e.json(r(n, s, V));
72
72
  } catch (t) {
73
73
  return console.error("Query execution error:", t), e.json({ error: t instanceof Error ? t.message : "Query execution failed" }, 500);
74
74
  }
75
- }), R.get(`${P}/load`, async (e) => {
75
+ }), z.get(`${F}/load`, async (e) => {
76
76
  try {
77
77
  let t = e.req.query("query");
78
78
  if (!t) return e.json({ error: "Query parameter is required" }, 400);
@@ -82,57 +82,57 @@ function D(D) {
82
82
  } catch {
83
83
  return e.json({ error: "Invalid JSON in query parameter" }, 400);
84
84
  }
85
- let i = await z(e), a = B.validateQuery(n);
85
+ let i = await B(e), a = V.validateQuery(n);
86
86
  if (!a.isValid) return e.json({ error: `Query validation failed: ${a.errors.join(", ")}` }, 400);
87
- let o = e.req.header("x-cache-control") === "no-cache", s = await B.executeMultiCubeQuery(n, i, { skipCache: o });
88
- return e.json(r(n, s, B));
87
+ let o = e.req.header("x-cache-control") === "no-cache", s = await V.executeMultiCubeQuery(n, i, { skipCache: o });
88
+ return e.json(r(n, s, V));
89
89
  } catch (t) {
90
90
  return console.error("Query execution error:", t), e.json({ error: t instanceof Error ? t.message : "Query execution failed" }, 500);
91
91
  }
92
- }), R.post(`${P}/batch`, async (e) => {
92
+ }), z.post(`${F}/batch`, async (e) => {
93
93
  try {
94
94
  let { queries: t } = await e.req.json();
95
95
  if (!t || !Array.isArray(t)) return e.json({ error: "Request body must contain a \"queries\" array" }, 400);
96
96
  if (t.length === 0) return e.json({ error: "Queries array cannot be empty" }, 400);
97
- let n = await i(t, await z(e), B, { skipCache: e.req.header("x-cache-control") === "no-cache" });
97
+ let n = await i(t, await B(e), V, { skipCache: e.req.header("x-cache-control") === "no-cache" });
98
98
  return e.json(n);
99
99
  } catch (t) {
100
100
  return console.error("Batch execution error:", t), e.json({ error: t instanceof Error ? t.message : "Batch execution failed" }, 500);
101
101
  }
102
- }), R.get(`${P}/meta`, (t) => {
102
+ }), z.get(`${F}/meta`, (t) => {
103
103
  try {
104
- let n = B.getMetadata();
104
+ let n = V.getMetadata();
105
105
  return t.json(e(n));
106
106
  } catch (e) {
107
107
  return console.error("Metadata error:", e), t.json({ error: e instanceof Error ? e.message : "Failed to fetch metadata" }, 500);
108
108
  }
109
- }), R.post(`${P}/sql`, async (e) => {
109
+ }), z.post(`${F}/sql`, async (e) => {
110
110
  try {
111
- let t = await e.req.json(), r = await z(e), i = B.validateQuery(t);
111
+ let t = await e.req.json(), r = await B(e), i = V.validateQuery(t);
112
112
  if (!i.isValid) return e.json({ error: `Query validation failed: ${i.errors.join(", ")}` }, 400);
113
113
  let a = t.measures?.[0] || t.dimensions?.[0];
114
114
  if (!a) return e.json({ error: "No measures or dimensions specified" }, 400);
115
- let o = a.split(".")[0], s = await B.generateSQL(o, t, r);
115
+ let o = a.split(".")[0], s = await V.generateSQL(o, t, r);
116
116
  return e.json(n(t, s));
117
117
  } catch (t) {
118
118
  return console.error("SQL generation error:", t), e.json({ error: t instanceof Error ? t.message : "SQL generation failed" }, 500);
119
119
  }
120
- }), R.get(`${P}/sql`, async (e) => {
120
+ }), z.get(`${F}/sql`, async (e) => {
121
121
  try {
122
122
  let t = e.req.query("query");
123
123
  if (!t) return e.json({ error: "Query parameter is required" }, 400);
124
- let r = JSON.parse(t), i = await z(e), a = B.validateQuery(r);
124
+ let r = JSON.parse(t), i = await B(e), a = V.validateQuery(r);
125
125
  if (!a.isValid) return e.json({ error: `Query validation failed: ${a.errors.join(", ")}` }, 400);
126
126
  let o = r.measures?.[0] || r.dimensions?.[0];
127
127
  if (!o) return e.json({ error: "No measures or dimensions specified" }, 400);
128
- let s = o.split(".")[0], c = await B.generateSQL(s, r, i);
128
+ let s = o.split(".")[0], c = await V.generateSQL(s, r, i);
129
129
  return e.json(n(r, c));
130
130
  } catch (t) {
131
131
  return console.error("SQL generation error:", t), e.json({ error: t instanceof Error ? t.message : "SQL generation failed" }, 500);
132
132
  }
133
- }), R.post(`${P}/dry-run`, async (e) => {
133
+ }), z.post(`${F}/dry-run`, async (e) => {
134
134
  try {
135
- let n = await e.req.json(), r = await t(n.query || n, await z(e), B);
135
+ let n = await e.req.json(), r = await t(n.query || n, await B(e), V);
136
136
  return e.json(r);
137
137
  } catch (t) {
138
138
  return console.error("Dry-run error:", t), e.json({
@@ -140,14 +140,14 @@ function D(D) {
140
140
  valid: !1
141
141
  }, 400);
142
142
  }
143
- }), R.get(`${P}/dry-run`, async (e) => {
143
+ }), z.get(`${F}/dry-run`, async (e) => {
144
144
  try {
145
145
  let n = e.req.query("query");
146
146
  if (!n) return e.json({
147
147
  error: "Query parameter is required",
148
148
  valid: !1
149
149
  }, 400);
150
- let r = await t(JSON.parse(n), await z(e), B);
150
+ let r = await t(JSON.parse(n), await B(e), V);
151
151
  return e.json(r);
152
152
  } catch (t) {
153
153
  return console.error("Dry-run error:", t), e.json({
@@ -155,34 +155,34 @@ function D(D) {
155
155
  valid: !1
156
156
  }, 400);
157
157
  }
158
- }), R.post(`${P}/explain`, async (e) => {
158
+ }), z.post(`${F}/explain`, async (e) => {
159
159
  try {
160
- let t = await e.req.json(), n = t.query || t, r = t.options || {}, i = await z(e), a = B.validateQuery(n);
160
+ let t = await e.req.json(), n = t.query || t, r = t.options || {}, i = await B(e), a = V.validateQuery(n);
161
161
  if (!a.isValid) return e.json({ error: `Query validation failed: ${a.errors.join(", ")}` }, 400);
162
- let o = await B.explainQuery(n, i, r);
162
+ let o = await V.explainQuery(n, i, r);
163
163
  return e.json(o);
164
164
  } catch (t) {
165
165
  return console.error("Explain error:", t), e.json({ error: t instanceof Error ? t.message : "Explain query failed" }, 500);
166
166
  }
167
- }), L && R.post(`${P}/agent/chat`, async (e) => {
167
+ }), R && z.post(`${F}/agent/chat`, async (e) => {
168
168
  try {
169
- let { handleAgentChat: t } = await import("../handler-BC3nFNxV.js"), { message: n, sessionId: r, history: i } = await e.req.json();
169
+ let { handleAgentChat: t } = await import("../handler-_TKfigrZ.js"), { message: n, sessionId: r, history: i } = await e.req.json();
170
170
  if (!n || typeof n != "string") return e.json({ error: "message is required and must be a string" }, 400);
171
- let a = (L.apiKey || "").trim();
172
- if (L.allowClientApiKey) {
171
+ let a = (R.apiKey || "").trim();
172
+ if (R.allowClientApiKey) {
173
173
  let t = e.req.header("x-agent-api-key");
174
174
  t && (a = t.trim());
175
175
  }
176
176
  if (!a) return e.json({ error: "No API key configured. Set agent.apiKey in server config or send X-Agent-Api-Key header." }, 401);
177
- let o = L.allowClientApiKey ? e.req.header("x-agent-provider") : void 0, s = L.allowClientApiKey ? e.req.header("x-agent-model") : void 0, c = L.allowClientApiKey ? e.req.header("x-agent-provider-endpoint") : void 0, l = await z(e), u = L.buildSystemContext?.(l), d = new TextEncoder(), f = new ReadableStream({ async start(e) {
177
+ let o = R.allowClientApiKey ? e.req.header("x-agent-provider") : void 0, s = R.allowClientApiKey ? e.req.header("x-agent-model") : void 0, c = R.allowClientApiKey ? e.req.header("x-agent-provider-endpoint") : void 0, l = await B(e), u = R.buildSystemContext?.(l), d = new TextEncoder(), f = new ReadableStream({ async start(e) {
178
178
  try {
179
179
  let f = t({
180
180
  message: n,
181
181
  sessionId: r,
182
182
  history: i,
183
- semanticLayer: B,
183
+ semanticLayer: V,
184
184
  securityContext: l,
185
- agentConfig: L,
185
+ agentConfig: R,
186
186
  apiKey: a,
187
187
  systemContext: u,
188
188
  providerOverride: o,
@@ -214,40 +214,41 @@ function D(D) {
214
214
  } catch (t) {
215
215
  return console.error("Agent chat error:", t), e.json({ error: t instanceof Error ? t.message : "Agent chat failed" }, 500);
216
216
  }
217
- }), I.enabled !== !1) {
218
- let e = y(B, I.resources), t = S(I.prompts), n = I.basePath ?? "/mcp";
219
- R.post(`${n}`, async (n) => {
220
- if (I.resourceMetadataUrl && !x(n.req.header("authorization"))) return n.header("WWW-Authenticate", p(I.resourceMetadataUrl)), n.json({ error: "Bearer token required" }, 401);
221
- let r = C(n.req.header("origin"), I.allowedOrigins ? { allowedOrigins: I.allowedOrigins } : {});
222
- if (!r.valid) return n.json(g(null, -32600, r.reason), 403);
223
- let i = n.req.header("accept");
224
- if (!f(i)) return n.json(g(null, -32600, "Accept header must include both application/json and text/event-stream"), 400);
225
- let a = h(n.req.header());
226
- if (!a.ok) return n.json({
217
+ }), L.enabled !== !1) {
218
+ let e = b(V, L.resources), t = T(L.prompts), n = C(L.instructions), r = L.basePath ?? "/mcp";
219
+ z.post(`${r}`, async (r) => {
220
+ if (L.resourceMetadataUrl && !S(r.req.header("authorization"))) return r.header("WWW-Authenticate", m(L.resourceMetadataUrl)), r.json({ error: "Bearer token required" }, 401);
221
+ let i = u(r.req.header("origin"), L.allowedOrigins ? { allowedOrigins: L.allowedOrigins } : {});
222
+ if (!i.valid) return r.json(_(null, -32600, i.reason), 403);
223
+ let a = r.req.header("accept");
224
+ if (!w(a)) return r.json(_(null, -32600, "Accept header must include both application/json and text/event-stream"), 400);
225
+ let o = g(r.req.header());
226
+ if (!o.ok) return r.json({
227
227
  error: "Unsupported MCP protocol version",
228
- supported: a.supported
228
+ supported: o.supported
229
229
  }, 426);
230
- let o = m(await n.req.json().catch(() => null));
231
- if (!o) return n.json(g(null, -32600, "Invalid JSON-RPC 2.0 request"), 400);
232
- let s = l(i), c = o.method === "initialize";
230
+ let s = h(await r.req.json().catch(() => null));
231
+ if (!s) return r.json(_(null, -32600, "Invalid JSON-RPC 2.0 request"), 400);
232
+ let c = l(a), b = s.method === "initialize";
233
233
  try {
234
- let r = await _(o.method, o.params, {
235
- semanticLayer: B,
236
- extractSecurityContext: (e, t) => z(e),
237
- rawRequest: n,
234
+ let i = await v(s.method, s.params, {
235
+ semanticLayer: V,
236
+ extractSecurityContext: (e, t) => B(e),
237
+ rawRequest: r,
238
238
  rawResponse: null,
239
- negotiatedProtocol: a.negotiated,
239
+ negotiatedProtocol: o.negotiated,
240
240
  resources: e,
241
241
  prompts: t,
242
- appEnabled: !!I.app,
243
- appConfig: typeof I.app == "object" ? I.app : void 0,
244
- serverName: I.serverName
242
+ instructions: n,
243
+ appEnabled: !!L.app,
244
+ appConfig: typeof L.app == "object" ? L.app : void 0,
245
+ serverName: L.serverName
245
246
  });
246
- if (v(o)) return n.body(null, 202);
247
- let i = d(o.id ?? null, r), l = c && r && typeof r == "object" && "sessionId" in r ? r.sessionId : void 0, f = {};
248
- if (l && (f[b] = l), s) {
249
- let e = new TextEncoder(), t = u(), n = new ReadableStream({ start(n) {
250
- n.enqueue(e.encode(`id: ${t}\n\n`)), n.enqueue(e.encode(w(i, t))), n.close();
247
+ if (y(s)) return r.body(null, 202);
248
+ let a = f(s.id ?? null, i), l = b && i && typeof i == "object" && "sessionId" in i ? i.sessionId : void 0, u = {};
249
+ if (l && (u[x] = l), c) {
250
+ let e = new TextEncoder(), t = d(), n = new ReadableStream({ start(n) {
251
+ n.enqueue(e.encode(`id: ${t}\n\n`)), n.enqueue(e.encode(p(a, t))), n.close();
251
252
  } });
252
253
  return new Response(n, {
253
254
  status: 200,
@@ -255,18 +256,18 @@ function D(D) {
255
256
  "Content-Type": "text/event-stream",
256
257
  "Cache-Control": "no-cache",
257
258
  Connection: "keep-alive",
258
- ...f
259
+ ...u
259
260
  }
260
261
  });
261
262
  }
262
- return n.json(i, 200, f);
263
+ return r.json(a, 200, u);
263
264
  } catch (e) {
264
- if (v(o)) return console.error("MCP notification processing error:", e), n.body(null, 202);
265
+ if (y(s)) return console.error("MCP notification processing error:", e), r.body(null, 202);
265
266
  console.error("MCP RPC error:", e);
266
- let t = e?.code ?? -32603, r = e?.data, i = e.message || "MCP request failed", a = g(o.id ?? null, t, i, r);
267
- if (s) {
268
- let e = new TextEncoder(), t = u(), n = new ReadableStream({ start(n) {
269
- n.enqueue(e.encode(`id: ${t}\n\n`)), n.enqueue(e.encode(w(a, t))), n.close();
267
+ let t = e?.code ?? -32603, n = e?.data, i = e.message || "MCP request failed", a = _(s.id ?? null, t, i, n);
268
+ if (c) {
269
+ let e = new TextEncoder(), t = d(), n = new ReadableStream({ start(n) {
270
+ n.enqueue(e.encode(`id: ${t}\n\n`)), n.enqueue(e.encode(p(a, t))), n.close();
270
271
  } });
271
272
  return new Response(n, {
272
273
  status: 200,
@@ -277,13 +278,13 @@ function D(D) {
277
278
  }
278
279
  });
279
280
  }
280
- return n.json(a, 200);
281
+ return r.json(a, 200);
281
282
  }
282
- }), R.delete(`${n}`, (e) => I.resourceMetadataUrl && !x(e.req.header("authorization")) ? (e.header("WWW-Authenticate", p(I.resourceMetadataUrl)), e.json({ error: "Bearer token required" }, 401)) : e.json({ error: "Session termination not supported" }, 405)), R.get(`${n}`, (e) => {
283
- if (I.resourceMetadataUrl && !x(e.req.header("authorization"))) return e.header("WWW-Authenticate", p(I.resourceMetadataUrl)), e.json({ error: "Bearer token required" }, 401);
284
- let t = new TextEncoder(), n = u(), r, i = new ReadableStream({
283
+ }), z.delete(`${r}`, (e) => L.resourceMetadataUrl && !S(e.req.header("authorization")) ? (e.header("WWW-Authenticate", m(L.resourceMetadataUrl)), e.json({ error: "Bearer token required" }, 401)) : e.json({ error: "Session termination not supported" }, 405)), z.get(`${r}`, (e) => {
284
+ if (L.resourceMetadataUrl && !S(e.req.header("authorization"))) return e.header("WWW-Authenticate", m(L.resourceMetadataUrl)), e.json({ error: "Bearer token required" }, 401);
285
+ let t = new TextEncoder(), n = d(), r, i = new ReadableStream({
285
286
  start(e) {
286
- e.enqueue(t.encode(w({
287
+ e.enqueue(t.encode(p({
287
288
  jsonrpc: "2.0",
288
289
  method: "mcp/ready",
289
290
  params: { protocol: "streamable-http" }
@@ -305,14 +306,14 @@ function D(D) {
305
306
  });
306
307
  });
307
308
  }
308
- return R;
309
+ return z;
309
310
  }
310
- function O(e, t) {
311
- let n = D(t);
311
+ function k(e, t) {
312
+ let n = O(t);
312
313
  return e.route("/", n), e;
313
314
  }
314
- function k(e) {
315
- return O(new T(), e);
315
+ function A(e) {
316
+ return k(new E(), e);
316
317
  }
317
318
  //#endregion
318
- export { k as createCubeApp, D as createCubeRoutes, O as mountCubeRoutes };
319
+ export { A as createCubeApp, O as createCubeRoutes, k as mountCubeRoutes };
@@ -1,4 +1,4 @@
1
- import { _ as e, s as t } from "./utils-CTYvfZ3I.js";
1
+ import { C as e, s as t } from "./utils-DG8ti3FT.js";
2
2
  //#region node_modules/drizzle-orm/entity.js
3
3
  var n = Symbol.for("drizzle:entityKind");
4
4
  function r(e, t) {