@trilogy-data/trilogy-studio-components 0.1.24 → 0.1.26

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 (116) hide show
  1. package/README.md +5 -0
  2. package/dist/AssetAutoImporter-CBzvBaOt.js +405 -0
  3. package/dist/ChatCreatorModal-CL-jBnc3.js +218 -0
  4. package/dist/ChatModelSelect-Do-VRUFc.js +40 -0
  5. package/dist/{CommunityModels-CsDDXyIL.js → CommunityModels-Cmro0hV3.js} +101 -70
  6. package/dist/{Dashboard-BJfgRfRy.js → Dashboard-BH9ZwMVJ.js} +8 -8
  7. package/dist/{DashboardCreatorInline-wAlx6oH7.js → DashboardCreatorInline-CDU7kLy3.js} +3 -3
  8. package/dist/{DashboardImportSelector-D6ufVZIk.js → DashboardImportSelector-DQSvu9T-.js} +1 -1
  9. package/dist/{DashboardMobile-DoOyBHN7.js → DashboardMobile-BUPtdN2V.js} +4 -4
  10. package/dist/{Editor-Bs-h7edF.js → Editor-DQsYpkwl.js} +6 -6
  11. package/dist/{GlobalChatPanel-YsDZGxg8.js → GlobalChatPanel-DhnOaige.js} +155 -119
  12. package/dist/{IDE-CLF-KH2r.js → IDE-HLa8vybk.js} +9 -9
  13. package/dist/{JobsView-D1pp2xi5.js → JobsView-B97HBoIE.js} +8 -8
  14. package/dist/{LLMChat-CwM_brSg.js → LLMChat-CxJcPLEG.js} +1 -1
  15. package/dist/{LLMView-BiwCZb3Q.js → LLMView-C1MUf0c2.js} +21 -21
  16. package/dist/{MobileIDE-DrWh_OlB.js → MobileIDE-BpqXoaMR.js} +258 -253
  17. package/dist/{ModelCard-CsW4UwZI.js → ModelCard-BhN25jaV.js} +10 -10
  18. package/dist/{ModelCreator-C2douDis.js → ModelCreator-CCdC7EXt.js} +1 -1
  19. package/dist/{ModelView-D7ENFV2U.js → ModelView-DUDA_PtZ.js} +3 -3
  20. package/dist/{PageLoading-C5WK5i5Y.js → PageLoading-BzniJM0C.js} +622 -619
  21. package/dist/{ResultComponent-1MQlbELb.js → ResultComponent-CAn_r3BL.js} +3 -3
  22. package/dist/{Results-DXIYS4iW.js → Results-BJtlwebY.js} +3 -3
  23. package/dist/{SymbolsPane-BM6dUN-h.js → SymbolsPane-KYSwN9Sv.js} +1 -1
  24. package/dist/{TutorialPage-HXbXCznh.js → TutorialPage-NRcee6Dx.js} +8 -8
  25. package/dist/{VegaLiteChart-CS4h_t-K.js → VegaLiteChart-D1slfOUY.js} +11227 -11195
  26. package/dist/{WelcomePage-CLKvAvk-.js → WelcomePage-D5mU2x1L.js} +1 -1
  27. package/dist/components/AssetAutoImporter.vue.d.ts.map +1 -1
  28. package/dist/components/TipsCTA.vue.d.ts +1 -1
  29. package/dist/components/VegaLiteChart.vue.d.ts.map +1 -1
  30. package/dist/components/chartHelpers.d.ts +9 -1
  31. package/dist/components/chartHelpers.d.ts.map +1 -1
  32. package/dist/components/chartRenderManager.d.ts +4 -1
  33. package/dist/components/chartRenderManager.d.ts.map +1 -1
  34. package/dist/components/community/AddStoreModal.vue.d.ts +1 -1
  35. package/dist/components/community/AddStoreModal.vue.d.ts.map +1 -1
  36. package/dist/components/community/CommunityModelCard.vue.d.ts.map +1 -1
  37. package/dist/components/editor/Editor.vue.d.ts.map +1 -1
  38. package/dist/components/jobs/JobsAddStoreModal.vue.d.ts.map +1 -1
  39. package/dist/components/llm/ChatCreatorModal.vue.d.ts +17 -1
  40. package/dist/components/llm/ChatCreatorModal.vue.d.ts.map +1 -1
  41. package/dist/components/llm/ChatModelSelect.vue.d.ts +13 -0
  42. package/dist/components/llm/ChatModelSelect.vue.d.ts.map +1 -0
  43. package/dist/components/llm/GlobalChatPanel.vue.d.ts.map +1 -1
  44. package/dist/components/sidebar/CommunityModelList.vue.d.ts +33 -50
  45. package/dist/components/sidebar/CommunityModelList.vue.d.ts.map +1 -1
  46. package/dist/components/sidebar/CommunityModelListItem.vue.d.ts.map +1 -1
  47. package/dist/components/sidebar/EditorList.vue.d.ts +32 -49
  48. package/dist/components/sidebar/EditorList.vue.d.ts.map +1 -1
  49. package/dist/components/sidebar/Sidebar.vue.d.ts +65 -99
  50. package/dist/components/sidebar/Sidebar.vue.d.ts.map +1 -1
  51. package/dist/dashboard.js +52 -52
  52. package/dist/{dashboardStore-BzmI4OCV.js → dashboardStore-ppM6nGks.js} +33 -33
  53. package/dist/dashboards/layerSpec.d.ts +38 -4
  54. package/dist/dashboards/layerSpec.d.ts.map +1 -1
  55. package/dist/dashboards/lineAreaSpec.d.ts +8 -80
  56. package/dist/dashboards/lineAreaSpec.d.ts.map +1 -1
  57. package/dist/dashboards/mapSpec.d.ts +1 -0
  58. package/dist/dashboards/mapSpec.d.ts.map +1 -1
  59. package/dist/dashboards/spec.d.ts.map +1 -1
  60. package/dist/data/tutorial/documentation.d.ts.map +1 -1
  61. package/dist/data/tutorial/startupScripts.d.ts +3 -0
  62. package/dist/data/tutorial/startupScripts.d.ts.map +1 -0
  63. package/dist/{demoSetup-vmiMeH4_.js → demoSetup-mwa-RDC6.js} +19 -18
  64. package/dist/{editorRefinementRuntime-hC3u8GMO.js → editorRefinementRuntime-DoP9P5J2.js} +892 -871
  65. package/dist/{editorRefinementToolExecutor-Bomrpmns.js → editorRefinementToolExecutor-CVY3FA7k.js} +392 -267
  66. package/dist/{editorStore-Bj3Qnatp.js → editorStore-BhhmXbi-.js} +230 -183
  67. package/dist/entry.dashboard.d.ts +1 -0
  68. package/dist/entry.dashboard.d.ts.map +1 -1
  69. package/dist/{globalChatRuntime-DXI2KyGn.js → globalChatRuntime-DWZxeS57.js} +13 -13
  70. package/dist/{helpers-CFp2QCvv.js → helpers-BLQAgX3C.js} +17 -16
  71. package/dist/llm/chatAgentPrompt.d.ts.map +1 -1
  72. package/dist/llm/data/constants.d.ts +1 -1
  73. package/dist/llm/data/constants.d.ts.map +1 -1
  74. package/dist/llm/data/trilogySyntax.generated.d.ts +7 -1
  75. package/dist/llm/data/trilogySyntax.generated.d.ts.map +1 -1
  76. package/dist/llm/docsIndex.d.ts.map +1 -1
  77. package/dist/llm/openai.d.ts +2 -1
  78. package/dist/llm/openai.d.ts.map +1 -1
  79. package/dist/{llm-BuEsqH9Q.js → llm-BBOVWb-F.js} +7 -5
  80. package/dist/llm.js +3 -3
  81. package/dist/{llmStore-x5lRrKgx.js → llmStore-DJM2JhzY.js} +2 -2
  82. package/dist/{localStorage-C-ZtI6YA.js → localStorage-D9uyOFEO.js} +14 -14
  83. package/dist/models/helpers.d.ts.map +1 -1
  84. package/dist/monaco.js +1 -1
  85. package/dist/{reconcile-E5LR5p_f.js → reconcile-Dyf4UZmj.js} +1 -1
  86. package/dist/{remoteStoreSync-MwuJpHHt.js → remoteStoreSync-Z-yjlYtI.js} +1 -1
  87. package/dist/remotes/displayHelpers.d.ts.map +1 -1
  88. package/dist/remotes/genericStoreMetadata.d.ts +1 -0
  89. package/dist/remotes/genericStoreMetadata.d.ts.map +1 -1
  90. package/dist/remotes/models.d.ts +37 -5
  91. package/dist/remotes/models.d.ts.map +1 -1
  92. package/dist/remotes/staticStorePresets.d.ts +22 -0
  93. package/dist/remotes/staticStorePresets.d.ts.map +1 -0
  94. package/dist/remotes/storeService.d.ts +25 -4
  95. package/dist/remotes/storeService.d.ts.map +1 -1
  96. package/dist/stores/communityApiStore.d.ts +32 -60
  97. package/dist/stores/communityApiStore.d.ts.map +1 -1
  98. package/dist/stores/connectionStore.d.ts.map +1 -1
  99. package/dist/stores/resolver.d.ts +5 -0
  100. package/dist/stores/resolver.d.ts.map +1 -1
  101. package/dist/stores/urlStore.d.ts +1 -0
  102. package/dist/stores/urlStore.d.ts.map +1 -1
  103. package/dist/{stores-D-gHjj-_.js → stores-BT9hTLny.js} +47 -47
  104. package/dist/stores.js +7 -7
  105. package/dist/trilogy-studio-components.css +1 -1
  106. package/dist/{urlStore-Dgmwx1YI.js → urlStore-52HG6lsX.js} +1 -0
  107. package/dist/{useChatWithTools-BlCJrJT7.js → useChatWithTools-B0HZ_DVh.js} +1 -1
  108. package/dist/{useDashboard-CVlbV17V.js → useDashboard-CdSnPe_6.js} +186 -186
  109. package/dist/{useGlobalChatPanel-CNARTFYu.js → useGlobalChatPanel-D_0luajQ.js} +2 -2
  110. package/dist/views/MobileIDE.vue.d.ts.map +1 -1
  111. package/dist/views/TutorialPage.vue.d.ts +32 -49
  112. package/dist/views/TutorialPage.vue.d.ts.map +1 -1
  113. package/dist/views.js +16 -16
  114. package/package.json +1 -1
  115. package/dist/AssetAutoImporter-BD1P91Hq.js +0 -403
  116. package/dist/ChatCreatorModal-BTqY06B6.js +0 -177
@@ -1,18 +1,18 @@
1
1
  import { o as e } from "./config-DwTONafa.js";
2
2
  import { t } from "./_plugin-vue_export-helper-B3ysoDQm.js";
3
3
  import { r as n, t as r } from "./results-DTgAKr5j.js";
4
- import { Et as i, Ht as a, It as o, Jt as s, Kt as c, Lt as l, Wt as u, Xt as d, Yt as f, en as p, rn as m, tn as h } from "./editorRefinementToolExecutor-Bomrpmns.js";
5
- import { i as g } from "./stores-D-gHjj-_.js";
6
- import { E as _, c as v, d as y, f as b, g as x, h as S, l as C, m as w, p as T, u as ee, x as E, y as te } from "./editorRefinementRuntime-hC3u8GMO.js";
7
- import { r as D, t as O } from "./editorStore-Bj3Qnatp.js";
8
- import { n as ne } from "./llmStore-x5lRrKgx.js";
9
- import { n as re, t as ie } from "./dashboardStore-BzmI4OCV.js";
10
- import { n as ae, t as oe } from "./DashboardImportSelector-D6ufVZIk.js";
4
+ import { Jt as i, Kt as a, Ot as o, Qt as s, Rt as c, Wt as l, Xt as u, Zt as d, an as f, nn as p, rn as m, zt as h } from "./editorRefinementToolExecutor-CVY3FA7k.js";
5
+ import { i as g } from "./stores-BT9hTLny.js";
6
+ import { E as _, c as v, d as y, f as b, g as x, h as S, l as C, m as w, p as T, u as ee, x as E, y as te } from "./editorRefinementRuntime-DoP9P5J2.js";
7
+ import { r as D, t as O } from "./editorStore-BhhmXbi-.js";
8
+ import { n as ne } from "./llmStore-DJM2JhzY.js";
9
+ import { n as re, t as ie } from "./dashboardStore-ppM6nGks.js";
10
+ import { n as ae, t as oe } from "./DashboardImportSelector-DQSvu9T-.js";
11
11
  import { t as k } from "./ModalDialog-D1EOG4rl.js";
12
12
  import { t as A } from "./Tooltip-Dihir4zs.js";
13
13
  import { t as se } from "./LoadingButton-OH3frQuO.js";
14
14
  import { t as ce } from "./ErrorMessage-XMn_08gJ.js";
15
- import { t as le } from "./VegaLiteChart-CS4h_t-K.js";
15
+ import { t as le } from "./VegaLiteChart-D1slfOUY.js";
16
16
  import { t as ue } from "./LoadingView-s1uznGwG.js";
17
17
  import { t as de } from "./DrilldownPane-CBs5ZojS.js";
18
18
  import { t as fe } from "./MarkdownRenderer-BNDuEyG-.js";
@@ -20,7 +20,7 @@ import { t as pe } from "./DataTable-DoRDynP1.js";
20
20
  import { c as me, n as he, o as ge, r as j } from "./editor.api2-ClD5pp8H.js";
21
21
  import "./editor.main-Cl8i7rHY.js";
22
22
  import { t as _e } from "./tokenTheme-DBbeCrCg.js";
23
- import { t as ve } from "./SymbolsPane-BM6dUN-h.js";
23
+ import { t as ve } from "./SymbolsPane-KYSwN9Sv.js";
24
24
  import { n as ye, t as be } from "./useResizableDialog-B0ePSts4.js";
25
25
  import { Fragment as M, Teleport as xe, computed as N, createBlock as P, createCommentVNode as F, createElementBlock as I, createElementVNode as L, createTextVNode as R, createVNode as z, defineComponent as B, inject as V, nextTick as Se, normalizeClass as H, normalizeStyle as Ce, onBeforeUnmount as we, onMounted as Te, onUnmounted as Ee, openBlock as U, ref as W, renderList as G, renderSlot as De, resolveComponent as K, resolveDynamicComponent as Oe, toDisplayString as q, unref as J, vModelRadio as ke, vModelText as Ae, vShow as je, watch as Y, withCtx as X, withDirectives as Z, withKeys as Me, withModifiers as Ne } from "vue";
26
26
  //#region components/dashboard/DashboardSharePopup.vue?vue&type=script&setup=true&lang.ts
@@ -125,39 +125,39 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
125
125
  },
126
126
  emits: ["close", "theme-change"],
127
127
  setup(t, { emit: n }) {
128
- let r = t, i = n, a = e(V("userSettingsStore", null)), o = N(() => r.dashboard?.theme || {}), l = N(() => o.value.preset || "default"), m = N(() => h({
129
- theme: o.value,
130
- mode: a.value
128
+ let r = t, o = n, c = e(V("userSettingsStore", null)), l = N(() => r.dashboard?.theme || {}), f = N(() => l.value.preset || "default"), h = N(() => m({
129
+ theme: l.value,
130
+ mode: c.value
131
131
  }).vars);
132
132
  function g(e) {
133
- return h({
133
+ return m({
134
134
  theme: { preset: e },
135
- mode: a.value
135
+ mode: c.value
136
136
  }).vars;
137
137
  }
138
- let _ = N(() => Object.keys(o.value).length > 0);
138
+ let _ = N(() => Object.keys(l.value).length > 0);
139
139
  function v(e) {
140
- i("theme-change", { preset: e });
140
+ o("theme-change", { preset: e });
141
141
  }
142
142
  function y(e, t) {
143
- i("theme-change", { [e]: t });
143
+ o("theme-change", { [e]: t });
144
144
  }
145
145
  function b(e) {
146
- i("theme-change", { mobileCards: e });
146
+ o("theme-change", { mobileCards: e });
147
147
  }
148
148
  function x() {
149
- i("theme-change", null);
149
+ o("theme-change", null);
150
150
  }
151
151
  let S = W({}), C = W({});
152
- Y([() => r.isOpen, o], ([e]) => {
152
+ Y([() => r.isOpen, l], ([e]) => {
153
153
  if (!e) return;
154
154
  let t = {};
155
- for (let e of d) t[e.key] = o.value[e.key] || "";
155
+ for (let e of s) t[e.key] = l.value[e.key] || "";
156
156
  S.value = t, C.value = {};
157
157
  }, { immediate: !0 });
158
158
  function w(e) {
159
- let t = o.value[e];
160
- return t && /^#[0-9a-f]{6}$/i.test(t) ? t : d.find((t) => t.key === e).placeholder[a.value];
159
+ let t = l.value[e];
160
+ return t && /^#[0-9a-f]{6}$/i.test(t) ? t : s.find((t) => t.key === e).placeholder[c.value];
161
161
  }
162
162
  function T(e) {
163
163
  let t = (S.value[e] || "").trim();
@@ -165,7 +165,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
165
165
  C.value = {
166
166
  ...C.value,
167
167
  [e]: !1
168
- }, o.value[e] && i("theme-change", { [e]: void 0 });
168
+ }, l.value[e] && o("theme-change", { [e]: void 0 });
169
169
  return;
170
170
  }
171
171
  if (!p(t)) {
@@ -178,7 +178,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
178
178
  C.value = {
179
179
  ...C.value,
180
180
  [e]: !1
181
- }, i("theme-change", { [e]: t });
181
+ }, o("theme-change", { [e]: t });
182
182
  }
183
183
  function ee(e, t) {
184
184
  let n = t.target.value;
@@ -188,7 +188,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
188
188
  }, C.value = {
189
189
  ...C.value,
190
190
  [e]: !1
191
- }, i("theme-change", { [e]: n });
191
+ }, o("theme-change", { [e]: n });
192
192
  }
193
193
  function E(e) {
194
194
  S.value = {
@@ -197,15 +197,15 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
197
197
  }, C.value = {
198
198
  ...C.value,
199
199
  [e]: !1
200
- }, i("theme-change", { [e]: void 0 });
200
+ }, o("theme-change", { [e]: void 0 });
201
201
  }
202
- let te = d, D = f, O = u, ne = c, re = s;
202
+ let te = s, D = d, O = a, ne = i, re = u;
203
203
  return (e, n) => (U(), P(k, {
204
204
  show: t.isOpen,
205
205
  title: "Dashboard theme",
206
206
  "max-width": "640px",
207
207
  "test-id": "dashboard-theme-popup",
208
- onClose: n[7] ||= (e) => i("close")
208
+ onClose: n[7] ||= (e) => o("close")
209
209
  }, {
210
210
  footer: X(() => [L("button", {
211
211
  type: "button",
@@ -217,7 +217,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
217
217
  type: "button",
218
218
  class: "btn btn-done",
219
219
  "data-testid": "theme-done-button",
220
- onClick: n[6] ||= (e) => i("close")
220
+ onClick: n[6] ||= (e) => o("close")
221
221
  }, " Done ")]),
222
222
  default: X(() => [L("div", Re, [
223
223
  n[20] ||= L("p", { class: "picker-intro" }, [
@@ -228,9 +228,9 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
228
228
  L("section", ze, [n[9] ||= L("h4", { class: "section-title" }, "Preset", -1), L("div", Be, [(U(!0), I(M, null, G(J(D), (e) => (U(), I("button", {
229
229
  key: e.value,
230
230
  type: "button",
231
- class: H(["preset-card", { selected: l.value === e.value }]),
231
+ class: H(["preset-card", { selected: f.value === e.value }]),
232
232
  "data-testid": `theme-preset-${e.value}`,
233
- "aria-pressed": l.value === e.value,
233
+ "aria-pressed": f.value === e.value,
234
234
  onClick: (t) => v(e.value)
235
235
  }, [
236
236
  L("span", {
@@ -245,52 +245,52 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
245
245
  n[14] ||= L("h4", { class: "section-title" }, "Adjustments", -1),
246
246
  L("div", Ge, [n[10] ||= L("span", { class: "knob-label" }, "Corners", -1), L("div", Ke, [L("button", {
247
247
  type: "button",
248
- class: H(["chip", { selected: !o.value.corners }]),
248
+ class: H(["chip", { selected: !l.value.corners }]),
249
249
  onClick: n[0] ||= (e) => y("corners", void 0)
250
250
  }, " Auto ", 2), (U(!0), I(M, null, G(J(O), (e) => (U(), I("button", {
251
251
  key: e.value,
252
252
  type: "button",
253
- class: H(["chip", { selected: o.value.corners === e.value }]),
253
+ class: H(["chip", { selected: l.value.corners === e.value }]),
254
254
  title: e.hint,
255
255
  onClick: (t) => y("corners", e.value)
256
256
  }, q(e.label), 11, qe))), 128))])]),
257
257
  L("div", Je, [n[11] ||= L("span", { class: "knob-label" }, "Density", -1), L("div", Ye, [L("button", {
258
258
  type: "button",
259
- class: H(["chip", { selected: !o.value.density }]),
259
+ class: H(["chip", { selected: !l.value.density }]),
260
260
  onClick: n[1] ||= (e) => y("density", void 0)
261
261
  }, " Auto ", 2), (U(!0), I(M, null, G(J(ne), (e) => (U(), I("button", {
262
262
  key: e.value,
263
263
  type: "button",
264
- class: H(["chip", { selected: o.value.density === e.value }]),
264
+ class: H(["chip", { selected: l.value.density === e.value }]),
265
265
  title: e.hint,
266
266
  onClick: (t) => y("density", e.value)
267
267
  }, q(e.label), 11, Xe))), 128))])]),
268
268
  L("div", Ze, [n[12] ||= L("span", { class: "knob-label" }, "Elevation", -1), L("div", Qe, [L("button", {
269
269
  type: "button",
270
- class: H(["chip", { selected: !o.value.elevation }]),
270
+ class: H(["chip", { selected: !l.value.elevation }]),
271
271
  onClick: n[2] ||= (e) => y("elevation", void 0)
272
272
  }, " Auto ", 2), (U(!0), I(M, null, G(J(re), (e) => (U(), I("button", {
273
273
  key: e.value,
274
274
  type: "button",
275
- class: H(["chip", { selected: o.value.elevation === e.value }]),
275
+ class: H(["chip", { selected: l.value.elevation === e.value }]),
276
276
  title: e.hint,
277
277
  onClick: (t) => y("elevation", e.value)
278
278
  }, q(e.label), 11, $e))), 128))])]),
279
279
  L("div", et, [n[13] ||= L("span", { class: "knob-label" }, "On mobile", -1), L("div", tt, [
280
280
  L("button", {
281
281
  type: "button",
282
- class: H(["chip", { selected: o.value.mobileCards === void 0 }]),
282
+ class: H(["chip", { selected: l.value.mobileCards === void 0 }]),
283
283
  onClick: n[3] ||= (e) => b(void 0)
284
284
  }, " Auto ", 2),
285
285
  L("button", {
286
286
  type: "button",
287
- class: H(["chip", { selected: o.value.mobileCards === !1 }]),
287
+ class: H(["chip", { selected: l.value.mobileCards === !1 }]),
288
288
  title: "Panels flatten to the page background below 768px.",
289
289
  onClick: n[4] ||= (e) => b(!1)
290
290
  }, " Flatten ", 2),
291
291
  L("button", {
292
292
  type: "button",
293
- class: H(["chip", { selected: o.value.mobileCards === !0 }]),
293
+ class: H(["chip", { selected: l.value.mobileCards === !0 }]),
294
294
  title: "Panels keep their card treatment on narrow screens.",
295
295
  onClick: n[5] ||= (e) => b(!0)
296
296
  }, " Keep cards ", 2)
@@ -308,7 +308,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
308
308
  }, [L("span", at, q(e.label), 1), L("span", ot, q(e.hint), 1)], 8, it), L("div", st, [
309
309
  L("input", {
310
310
  type: "color",
311
- class: H(["color-swatch", { unset: !o.value[e.key] }]),
311
+ class: H(["color-swatch", { unset: !l.value[e.key] }]),
312
312
  value: w(e.key),
313
313
  "aria-label": `${e.label} color`,
314
314
  onInput: (t) => ee(e.key, t)
@@ -327,7 +327,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
327
327
  L("button", {
328
328
  type: "button",
329
329
  class: "color-clear",
330
- disabled: !o.value[e.key],
330
+ disabled: !l.value[e.key],
331
331
  title: "Clear — follow the app theme",
332
332
  "aria-label": "Clear color",
333
333
  onClick: (t) => E(e.key)
@@ -339,7 +339,7 @@ var Pe = { class: "share-popup-body" }, Fe = { class: "json-container" }, Ie = {
339
339
  ]),
340
340
  L("section", dt, [n[19] ||= L("h4", { class: "section-title" }, "Preview", -1), L("div", {
341
341
  class: "live-preview",
342
- style: Ce(m.value)
342
+ style: Ce(h.value)
343
343
  }, [...n[18] ||= [L("div", { class: "preview-card large" }, [L("div", { class: "preview-card-header" }, [L("span", { class: "preview-title-bar" })]), L("div", { class: "preview-body" }, [L("span", { class: "preview-accent" })])], -1), L("div", { class: "preview-card large" }, [L("div", { class: "preview-card-header" }, [L("span", { class: "preview-title-bar" })]), L("div", { class: "preview-body" })], -1)]], 4)])
344
344
  ])]),
345
345
  _: 1
@@ -1075,7 +1075,7 @@ var on = B({
1075
1075
  }
1076
1076
  },
1077
1077
  setup(e, { emit: t }) {
1078
- let n = W(null), r = N(() => e.getItemData(e.itemId, e.dashboardId)), i = N(() => r.value.structured_content.query), o = N(() => r.value.results || null), s = N(() => r.value.name || ""), c = N(() => (r.value.height || 300) - 75), l = N(() => r.value.width || 300), u = N(() => {
1078
+ let n = W(null), r = N(() => e.getItemData(e.itemId, e.dashboardId)), i = N(() => r.value.structured_content.query), a = N(() => r.value.results || null), o = N(() => r.value.name || ""), s = N(() => (r.value.height || 300) - 75), c = N(() => r.value.width || 300), u = N(() => {
1079
1079
  if (r.value.chartConfig) return {
1080
1080
  ...r.value.chartConfig,
1081
1081
  showTitle: !1
@@ -1094,7 +1094,7 @@ var on = B({
1094
1094
  dashboardId: () => e.dashboardId,
1095
1095
  itemId: () => e.itemId,
1096
1096
  query: i,
1097
- results: o,
1097
+ results: a,
1098
1098
  loading: d,
1099
1099
  onRefresh: _,
1100
1100
  getDashboardQueryExecutor: e.getDashboardQueryExecutor,
@@ -1105,17 +1105,17 @@ var on = B({
1105
1105
  });
1106
1106
  return {
1107
1107
  chartContainer: b,
1108
- results: o,
1108
+ results: a,
1109
1109
  ready: x,
1110
1110
  loading: d,
1111
1111
  showLoading: S,
1112
1112
  error: f,
1113
1113
  filters: p,
1114
1114
  query: i,
1115
- chartHeight: c,
1116
- chartWidth: l,
1115
+ chartHeight: s,
1116
+ chartWidth: c,
1117
1117
  chartConfig: u,
1118
- chartTitle: s,
1118
+ chartTitle: o,
1119
1119
  onChartConfigChange: y,
1120
1120
  onRefresh: _,
1121
1121
  handleLocalRefresh: T,
@@ -1134,7 +1134,7 @@ var on = B({
1134
1134
  },
1135
1135
  activeDrilldown: n,
1136
1136
  activateDrilldown: (e) => {
1137
- let t = e.filters, r = Object.keys(t)[0], i = a(e.filters);
1137
+ let t = e.filters, r = Object.keys(t)[0], i = l(e.filters);
1138
1138
  r && (n.value = {
1139
1139
  remove: r,
1140
1140
  filter: i
@@ -3096,7 +3096,7 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3096
3096
  "copy-item"
3097
3097
  ],
3098
3098
  setup(e, { emit: t }) {
3099
- let n = e, r = t, a = W(!1), o = W(""), s = W(!1), c = W(!1), l = W(null), u = W(null), d = W(null), f = W(null), p = W({});
3099
+ let n = e, r = t, i = W(!1), a = W(""), s = W(!1), c = W(!1), l = W(null), u = W(null), d = W(null), f = W(null), p = W({});
3100
3100
  function m(e) {
3101
3101
  return e.replace(/'''/g, "'").replace("local.", "");
3102
3102
  }
@@ -3117,15 +3117,15 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3117
3117
  function _() {
3118
3118
  if (!n.editMode) return;
3119
3119
  let e = n.getItemData(n.item.i, n.dashboardId);
3120
- s.value = !1, c.value = !1, a.value = !0, o.value = e.name, setTimeout(() => {
3120
+ s.value = !1, c.value = !1, i.value = !0, a.value = e.name, setTimeout(() => {
3121
3121
  let e = document.getElementById(`title-input-${n.item.i}`);
3122
3122
  e && e.focus();
3123
3123
  }, 0);
3124
3124
  }
3125
3125
  function v() {
3126
- if (a.value) {
3127
- let e = n.getItemData(n.item.i, n.dashboardId), t = o.value.trim() || e.name;
3128
- n.setItemData(n.item.i, n.dashboardId, { name: t }), a.value = !1;
3126
+ if (i.value) {
3127
+ let e = n.getItemData(n.item.i, n.dashboardId), t = a.value.trim() || e.name;
3128
+ n.setItemData(n.item.i, n.dashboardId, { name: t }), i.value = !1;
3129
3129
  }
3130
3130
  }
3131
3131
  function y() {
@@ -3147,7 +3147,7 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3147
3147
  } });
3148
3148
  }
3149
3149
  function S() {
3150
- a.value = !1;
3150
+ i.value = !1;
3151
3151
  }
3152
3152
  function C() {
3153
3153
  if (O.value) {
@@ -3171,42 +3171,42 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3171
3171
  function te(e) {
3172
3172
  r("remove-filter", n.item.i, e);
3173
3173
  }
3174
- let D = N(() => n.getItemData(n.item.i, n.dashboardId)), O = N(() => D.value.type === i.SECTION_HEADER), ne = N(() => D.value.type === i.FREEFORM), re = N(() => {
3174
+ let D = N(() => n.getItemData(n.item.i, n.dashboardId)), O = N(() => D.value.type === o.SECTION_HEADER), ne = N(() => D.value.type === o.FREEFORM), re = N(() => {
3175
3175
  switch (D.value.type) {
3176
- case i.CHART: return ln;
3177
- case i.TABLE: return gn;
3178
- case i.FILTER: return Nn;
3179
- case i.SECTION_HEADER: return null;
3180
- case i.MEMO: return Kn;
3181
- case i.CLAIM: return tr;
3182
- case i.APPENDIX_HEADER: return or;
3183
- case i.FREEFORM: return Vr;
3184
- case i.MARKDOWN:
3176
+ case o.CHART: return ln;
3177
+ case o.TABLE: return gn;
3178
+ case o.FILTER: return Nn;
3179
+ case o.SECTION_HEADER: return null;
3180
+ case o.MEMO: return Kn;
3181
+ case o.CLAIM: return tr;
3182
+ case o.APPENDIX_HEADER: return or;
3183
+ case o.FREEFORM: return Vr;
3184
+ case o.MARKDOWN:
3185
3185
  default: return fn;
3186
3186
  }
3187
3187
  }), ie = N(() => {
3188
3188
  switch (D.value.type) {
3189
- case i.CHART: return "Chart Name";
3190
- case i.TABLE: return "Table Name";
3191
- case i.FILTER: return "Filter Name";
3192
- case i.SECTION_HEADER: return "Section Header";
3193
- case i.MEMO: return "Executive Memo";
3194
- case i.CLAIM: return "Claim";
3195
- case i.APPENDIX_HEADER: return "Appendix";
3196
- case i.FREEFORM: return "Widget Name";
3197
- case i.MARKDOWN:
3189
+ case o.CHART: return "Chart Name";
3190
+ case o.TABLE: return "Table Name";
3191
+ case o.FILTER: return "Filter Name";
3192
+ case o.SECTION_HEADER: return "Section Header";
3193
+ case o.MEMO: return "Executive Memo";
3194
+ case o.CLAIM: return "Claim";
3195
+ case o.APPENDIX_HEADER: return "Appendix";
3196
+ case o.FREEFORM: return "Widget Name";
3197
+ case o.MARKDOWN:
3198
3198
  default: return "Note Name";
3199
3199
  }
3200
3200
  }), oe = [
3201
- i.CHART,
3202
- i.TABLE,
3203
- i.MARKDOWN,
3204
- i.FREEFORM
3201
+ o.CHART,
3202
+ o.TABLE,
3203
+ o.MARKDOWN,
3204
+ o.FREEFORM
3205
3205
  ], k = [
3206
- i.CHART,
3207
- i.TABLE,
3208
- i.FILTER,
3209
- i.FREEFORM
3206
+ o.CHART,
3207
+ o.TABLE,
3208
+ o.FILTER,
3209
+ o.FREEFORM
3210
3210
  ], se = N(() => oe.includes(D.value.type)), ce = N(() => k.includes(D.value.type)), le = N(() => D.value.filters ? D.value.filters.length : 0), ue = N(() => (D.value.filters || []).slice(0, 2)), de = N(() => Math.max(0, le.value - ue.value.length)), fe = N(() => {
3211
3211
  let e = D.value.filters || [];
3212
3212
  return ["global", "cross"].map((t) => ({
@@ -3257,7 +3257,7 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3257
3257
  level: 3
3258
3258
  };
3259
3259
  }
3260
- let ge = N(() => he(D.value.name, ie.value)), j = N(() => ge.value.text), _e = N(() => `item-title-level-${ge.value.level}`), ve = N(() => s.value && !a.value && !c.value);
3260
+ let ge = N(() => he(D.value.name, ie.value)), j = N(() => ge.value.text), _e = N(() => `item-title-level-${ge.value.level}`), ve = N(() => s.value && !i.value && !c.value);
3261
3261
  function ye() {
3262
3262
  ve.value && (c.value = !0, s.value = !1);
3263
3263
  }
@@ -3273,7 +3273,7 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3273
3273
  }), (t, r) => (U(), I(M, null, [L("div", {
3274
3274
  class: H(["grid-item-content", {
3275
3275
  "grid-item-chart-style": ce.value,
3276
- "grid-item-markdown-style": D.value.type === J(i).MARKDOWN,
3276
+ "grid-item-markdown-style": D.value.type === J(o).MARKDOWN,
3277
3277
  "grid-item-section-header-style": O.value,
3278
3278
  "grid-item-edit-style": e.editMode
3279
3279
  }]),
@@ -3339,16 +3339,16 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3339
3339
  x2: "21",
3340
3340
  y2: "18"
3341
3341
  })
3342
- ], -1)]])) : F("", !0), L("div", Yr, [a.value ? Z((U(), I("input", {
3342
+ ], -1)]])) : F("", !0), L("div", Yr, [i.value ? Z((U(), I("input", {
3343
3343
  key: 1,
3344
3344
  id: `title-input-${e.item.i}`,
3345
- "onUpdate:modelValue": r[0] ||= (e) => o.value = e,
3345
+ "onUpdate:modelValue": r[0] ||= (e) => a.value = e,
3346
3346
  onBlur: v,
3347
3347
  onKeyup: [Me(v, ["enter"]), Me(S, ["esc"])],
3348
3348
  class: "title-input",
3349
3349
  type: "text",
3350
3350
  placeholder: ie.value
3351
- }, null, 40, $r)), [[Ae, o.value]]) : (U(), I("div", {
3351
+ }, null, 40, $r)), [[Ae, a.value]]) : (U(), I("div", {
3352
3352
  key: 0,
3353
3353
  class: H(["item-title editable-title", [_e.value, { "item-title-static": !e.editMode }]]),
3354
3354
  title: j.value,
@@ -3397,16 +3397,16 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3397
3397
  "aria-expanded": f.value === e.type,
3398
3398
  onClick: Ne((t) => me(t, e.type), ["stop"])
3399
3399
  }, q(e.type) + ":" + q(e.filters.length), 9, di))), 128))])])) : F("", !0)])])),
3400
- L("div", { class: H(["content-area", { "section-header-content": O.value }]) }, [O.value ? (U(), I(M, { key: 0 }, [a.value ? Z((U(), I("input", {
3400
+ L("div", { class: H(["content-area", { "section-header-content": O.value }]) }, [O.value ? (U(), I(M, { key: 0 }, [i.value ? Z((U(), I("input", {
3401
3401
  key: 1,
3402
3402
  id: `title-input-${e.item.i}`,
3403
- "onUpdate:modelValue": r[1] ||= (e) => o.value = e,
3403
+ "onUpdate:modelValue": r[1] ||= (e) => a.value = e,
3404
3404
  onBlur: v,
3405
3405
  onKeyup: [Me(v, ["enter"]), Me(S, ["esc"])],
3406
3406
  class: "title-input section-header-input no-drag",
3407
3407
  type: "text",
3408
3408
  placeholder: ie.value
3409
- }, null, 40, mi)), [[Ae, o.value]]) : (U(), I("div", {
3409
+ }, null, 40, mi)), [[Ae, a.value]]) : (U(), I("div", {
3410
3410
  key: 0,
3411
3411
  class: H(["section-header-display no-drag", [_e.value, { "section-header-editable": e.editMode }]]),
3412
3412
  title: j.value,
@@ -3506,72 +3506,72 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3506
3506
  props: { show: { type: Boolean } },
3507
3507
  emits: ["add", "close"],
3508
3508
  setup(e, { emit: t }) {
3509
- let n = t, r = W(i.CHART), a = [
3509
+ let n = t, r = W(o.CHART), i = [
3510
3510
  {
3511
- value: i.CHART,
3511
+ value: o.CHART,
3512
3512
  label: "Chart",
3513
3513
  description: "Visualize trends, comparisons, and distributions.",
3514
3514
  icon: "mdi-chart-bar",
3515
3515
  testId: "dashboard-add-item-type-chart"
3516
3516
  },
3517
3517
  {
3518
- value: i.TABLE,
3518
+ value: o.TABLE,
3519
3519
  label: "Table",
3520
3520
  description: "Show detailed rows and values in a grid.",
3521
3521
  icon: "mdi-table-large",
3522
3522
  testId: "dashboard-add-item-type-table"
3523
3523
  },
3524
3524
  {
3525
- value: i.MARKDOWN,
3525
+ value: o.MARKDOWN,
3526
3526
  label: "Markdown",
3527
3527
  description: "Add notes, headings, or narrative context.",
3528
3528
  icon: "mdi-text-box-outline",
3529
3529
  testId: "dashboard-add-item-type-markdown"
3530
3530
  },
3531
3531
  {
3532
- value: i.FILTER,
3532
+ value: o.FILTER,
3533
3533
  label: "Filter",
3534
3534
  description: "Let viewers narrow the dashboard interactively.",
3535
3535
  icon: "mdi-filter-variant",
3536
3536
  testId: "dashboard-add-item-type-filter"
3537
3537
  },
3538
3538
  {
3539
- value: i.FREEFORM,
3539
+ value: o.FREEFORM,
3540
3540
  label: "Custom Widget",
3541
3541
  description: "Hand-authored HTML rendered in a sandboxed frame, wired to a query.",
3542
3542
  icon: "mdi-code-braces",
3543
3543
  testId: "dashboard-add-item-type-freeform"
3544
3544
  },
3545
3545
  {
3546
- value: i.SECTION_HEADER,
3546
+ value: o.SECTION_HEADER,
3547
3547
  label: "Section Header",
3548
3548
  description: "Break the dashboard into labeled sections.",
3549
3549
  icon: "mdi-format-title",
3550
3550
  testId: "dashboard-add-item-type-section-header"
3551
3551
  },
3552
3552
  {
3553
- value: i.MEMO,
3553
+ value: o.MEMO,
3554
3554
  label: "Executive Memo",
3555
3555
  description: "Headline, verdict, magnitude, cause, action, confidence — at the top of a report.",
3556
3556
  icon: "mdi-file-document-edit-outline",
3557
3557
  testId: "dashboard-add-item-type-memo"
3558
3558
  },
3559
3559
  {
3560
- value: i.CLAIM,
3560
+ value: o.CLAIM,
3561
3561
  label: "Claim Section",
3562
3562
  description: "A single claim with caveat and drilldown — pair with a chart for evidence.",
3563
3563
  icon: "mdi-comment-quote-outline",
3564
3564
  testId: "dashboard-add-item-type-claim"
3565
3565
  },
3566
3566
  {
3567
- value: i.APPENDIX_HEADER,
3567
+ value: o.APPENDIX_HEADER,
3568
3568
  label: "Appendix Header",
3569
3569
  description: "Divider that introduces the auditability section at the bottom of a report.",
3570
3570
  icon: "mdi-bookshelf",
3571
3571
  testId: "dashboard-add-item-type-appendix"
3572
3572
  }
3573
3573
  ];
3574
- function o() {
3574
+ function a() {
3575
3575
  n("add", r.value);
3576
3576
  }
3577
3577
  function s() {
@@ -3588,11 +3588,11 @@ var Vr = /*#__PURE__*/ t(Pr, [["render", Br], ["__scopeId", "data-v-da53ca6d"]])
3588
3588
  class: "cancel-button",
3589
3589
  onClick: s
3590
3590
  }, "Cancel"), L("button", {
3591
- onClick: o,
3591
+ onClick: a,
3592
3592
  class: "add-button",
3593
3593
  "data-testid": "dashboard-add-item-confirm"
3594
3594
  }, " Add Item ")]),
3595
- default: X(() => [L("div", Di, [n[1] ||= L("p", { class: "add-item-description" }, "Choose the kind of block you want to add to the dashboard.", -1), L("div", Oi, [(U(), I(M, null, G(a, (e) => L("label", {
3595
+ default: X(() => [L("div", Di, [n[1] ||= L("p", { class: "add-item-description" }, "Choose the kind of block you want to add to the dashboard.", -1), L("div", Oi, [(U(), I(M, null, G(i, (e) => L("label", {
3596
3596
  key: e.value,
3597
3597
  class: H(["item-option", { selected: r.value === e.value }]),
3598
3598
  "data-testid": `${e.testId}-option`
@@ -3727,7 +3727,7 @@ var Q = null, Vi = B({
3727
3727
  isMobile: V("isMobile"),
3728
3728
  llmConnectionStore: V("llmConnectionStore"),
3729
3729
  analyticsStore: V("analyticsStore"),
3730
- userSettingsStore: m()
3730
+ userSettingsStore: f()
3731
3731
  };
3732
3732
  },
3733
3733
  created() {
@@ -4458,9 +4458,9 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4458
4458
  "start-chat-with-prompt"
4459
4459
  ],
4460
4460
  setup(e, { emit: t }) {
4461
- let n = V("dashboardStore"), r = V("llmConnectionStore"), a = V("saveDashboards");
4462
- if (!n || !r || !a) throw Error("DashboardStore or LLMConnectionStore not provided");
4463
- let o = e, s = N(() => r.activeConnection), c = t, l = W(""), u = W(""), d = W(null), f = $ / 4, p = [
4461
+ let n = V("dashboardStore"), r = V("llmConnectionStore"), i = V("saveDashboards");
4462
+ if (!n || !r || !i) throw Error("DashboardStore or LLMConnectionStore not provided");
4463
+ let a = e, s = N(() => r.activeConnection), c = t, l = W(""), u = W(""), d = W(null), f = $ / 4, p = [
4464
4464
  {
4465
4465
  id: "summary",
4466
4466
  name: "Summary Dashboard",
@@ -4473,7 +4473,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4473
4473
  y: 0,
4474
4474
  w: $,
4475
4475
  h: 3,
4476
- type: i.MARKDOWN
4476
+ type: o.MARKDOWN
4477
4477
  },
4478
4478
  {
4479
4479
  i: "kpi1",
@@ -4481,7 +4481,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4481
4481
  y: 3,
4482
4482
  w: $ / 4,
4483
4483
  h: 4,
4484
- type: i.CHART
4484
+ type: o.CHART
4485
4485
  },
4486
4486
  {
4487
4487
  i: "kpi2",
@@ -4489,7 +4489,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4489
4489
  y: 3,
4490
4490
  w: $ / 4,
4491
4491
  h: 4,
4492
- type: i.CHART
4492
+ type: o.CHART
4493
4493
  },
4494
4494
  {
4495
4495
  i: "kpi3",
@@ -4497,7 +4497,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4497
4497
  y: 3,
4498
4498
  w: $ / 4,
4499
4499
  h: 4,
4500
- type: i.CHART
4500
+ type: o.CHART
4501
4501
  },
4502
4502
  {
4503
4503
  i: "kpi4",
@@ -4505,7 +4505,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4505
4505
  y: 3,
4506
4506
  w: $ / 4,
4507
4507
  h: 4,
4508
- type: i.CHART
4508
+ type: o.CHART
4509
4509
  },
4510
4510
  {
4511
4511
  i: "trend",
@@ -4513,7 +4513,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4513
4513
  y: 7,
4514
4514
  w: $ / 2,
4515
4515
  h: 8,
4516
- type: i.CHART
4516
+ type: o.CHART
4517
4517
  },
4518
4518
  {
4519
4519
  i: "breakdown",
@@ -4521,7 +4521,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4521
4521
  y: 7,
4522
4522
  w: $ / 2,
4523
4523
  h: 8,
4524
- type: i.CHART
4524
+ type: o.CHART
4525
4525
  }
4526
4526
  ]
4527
4527
  },
@@ -4537,7 +4537,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4537
4537
  y: 0,
4538
4538
  w: $,
4539
4539
  h: 3,
4540
- type: i.MARKDOWN
4540
+ type: o.MARKDOWN
4541
4541
  },
4542
4542
  {
4543
4543
  i: "overview",
@@ -4545,7 +4545,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4545
4545
  y: 3,
4546
4546
  w: $,
4547
4547
  h: 5,
4548
- type: i.CHART
4548
+ type: o.CHART
4549
4549
  },
4550
4550
  {
4551
4551
  i: "detail1",
@@ -4553,7 +4553,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4553
4553
  y: 8,
4554
4554
  w: $ / 2,
4555
4555
  h: 8,
4556
- type: i.CHART
4556
+ type: o.CHART
4557
4557
  },
4558
4558
  {
4559
4559
  i: "detail2",
@@ -4561,7 +4561,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4561
4561
  y: 10,
4562
4562
  w: $ / 2,
4563
4563
  h: 8,
4564
- type: i.CHART
4564
+ type: o.CHART
4565
4565
  },
4566
4566
  {
4567
4567
  i: "datatable",
@@ -4569,7 +4569,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4569
4569
  y: 20,
4570
4570
  w: $,
4571
4571
  h: 8,
4572
- type: i.TABLE
4572
+ type: o.TABLE
4573
4573
  }
4574
4574
  ]
4575
4575
  },
@@ -4585,7 +4585,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4585
4585
  y: 0,
4586
4586
  w: $,
4587
4587
  h: 3,
4588
- type: i.MARKDOWN
4588
+ type: o.MARKDOWN
4589
4589
  },
4590
4590
  {
4591
4591
  i: "compare1",
@@ -4593,7 +4593,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4593
4593
  y: 3,
4594
4594
  w: $ / 2,
4595
4595
  h: 6,
4596
- type: i.CHART
4596
+ type: o.CHART
4597
4597
  },
4598
4598
  {
4599
4599
  i: "compare2",
@@ -4601,7 +4601,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4601
4601
  y: 3,
4602
4602
  w: $ / 2,
4603
4603
  h: 6,
4604
- type: i.CHART
4604
+ type: o.CHART
4605
4605
  },
4606
4606
  {
4607
4607
  i: "compare3",
@@ -4609,7 +4609,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4609
4609
  y: 9,
4610
4610
  w: $ / 2,
4611
4611
  h: 6,
4612
- type: i.CHART
4612
+ type: o.CHART
4613
4613
  },
4614
4614
  {
4615
4615
  i: "compare4",
@@ -4617,7 +4617,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4617
4617
  y: 9,
4618
4618
  w: $ / 2,
4619
4619
  h: 6,
4620
- type: i.CHART
4620
+ type: o.CHART
4621
4621
  },
4622
4622
  {
4623
4623
  i: "summary",
@@ -4625,7 +4625,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4625
4625
  y: 15,
4626
4626
  w: $,
4627
4627
  h: 5,
4628
- type: i.MARKDOWN
4628
+ type: o.MARKDOWN
4629
4629
  }
4630
4630
  ]
4631
4631
  },
@@ -4641,7 +4641,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4641
4641
  y: 0,
4642
4642
  w: $,
4643
4643
  h: 3,
4644
- type: i.MARKDOWN
4644
+ type: o.MARKDOWN
4645
4645
  },
4646
4646
  {
4647
4647
  i: "maintrend",
@@ -4649,7 +4649,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4649
4649
  y: 3,
4650
4650
  w: $,
4651
4651
  h: 8,
4652
- type: i.CHART
4652
+ type: o.CHART
4653
4653
  },
4654
4654
  {
4655
4655
  i: "breakdown1",
@@ -4657,7 +4657,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4657
4657
  y: 11,
4658
4658
  w: $ / 3,
4659
4659
  h: 6,
4660
- type: i.CHART
4660
+ type: o.CHART
4661
4661
  },
4662
4662
  {
4663
4663
  i: "breakdown2",
@@ -4665,7 +4665,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4665
4665
  y: 11,
4666
4666
  w: $ / 3,
4667
4667
  h: 6,
4668
- type: i.CHART
4668
+ type: o.CHART
4669
4669
  },
4670
4670
  {
4671
4671
  i: "breakdown3",
@@ -4673,7 +4673,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4673
4673
  y: 11,
4674
4674
  w: $ / 3,
4675
4675
  h: 6,
4676
- type: i.CHART
4676
+ type: o.CHART
4677
4677
  },
4678
4678
  {
4679
4679
  i: "forecast",
@@ -4681,7 +4681,7 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4681
4681
  y: 17,
4682
4682
  w: $,
4683
4683
  h: 6,
4684
- type: i.CHART
4684
+ type: o.CHART
4685
4685
  }
4686
4686
  ]
4687
4687
  }
@@ -4689,13 +4689,13 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4689
4689
  function m(e) {
4690
4690
  d.value = e;
4691
4691
  let t = p.find((t) => t.id === e);
4692
- if (t && o.dashboardId) {
4693
- for (let e of t.layout) n.addItemToDashboard(o.dashboardId, e.type, e.x, e.y, e.w, e.h);
4692
+ if (t && a.dashboardId) {
4693
+ for (let e of t.layout) n.addItemToDashboard(a.dashboardId, e.type, e.x, e.y, e.w, e.h);
4694
4694
  c("template-selected", e);
4695
4695
  }
4696
4696
  }
4697
4697
  function h() {
4698
- o.dashboardId && l.value && (n.updateDashboardDescription(o.dashboardId, l.value), c("description-updated", l.value));
4698
+ a.dashboardId && l.value && (n.updateDashboardDescription(a.dashboardId, l.value), c("description-updated", l.value));
4699
4699
  }
4700
4700
  function g() {
4701
4701
  let e = u.value.trim();
@@ -4747,13 +4747,13 @@ var ra = /*#__PURE__*/ t(Vi, [["render", na], ["__scopeId", "data-v-79e13368"]])
4747
4747
  //#endregion
4748
4748
  //#region components/dashboard/useDashboard.ts
4749
4749
  function La(e, t, n, r) {
4750
- let a = re(), s = O(), c = D(), u = r || V("queryExecutionService"), { setActiveDashboard: d } = g();
4751
- if (!u) throw Error("QueryExecutionService not provided");
4752
- let f = W(""), p = W(""), m = W(""), h = W(null), _ = W(null), b = W(!1), x = W(!1), S = W(!1), w = W(!1), T = W([]), E = N(() => t.maxWidth || "100vw"), ne = N(() => e.value ? e.value.layout : []), ae = N(() => e.value ? [...e.value.layout].sort((e, t) => (e.y + e.y + e.h) / 2 - (t.y + t.y + t.h) / 2) : []), oe = N(() => e.value ? e.value.connectionId ? e.value.connectionId : c.connectionByName(e.value.connection)?.id || e.value.connection : ""), k = N(() => t.viewMode ? !1 : e.value ? e.value.state === "editing" : !1), A = N(() => e.value ? ee(e.value, s) : []);
4750
+ let i = re(), a = O(), s = D(), l = r || V("queryExecutionService"), { setActiveDashboard: u } = g();
4751
+ if (!l) throw Error("QueryExecutionService not provided");
4752
+ let d = W(""), f = W(""), p = W(""), m = W(null), _ = W(null), b = W(!1), x = W(!1), S = W(!1), w = W(!1), T = W([]), E = N(() => t.maxWidth || "100vw"), ne = N(() => e.value ? e.value.layout : []), ae = N(() => e.value ? [...e.value.layout].sort((e, t) => (e.y + e.y + e.h) / 2 - (t.y + t.y + t.h) / 2) : []), oe = N(() => e.value ? e.value.connectionId ? e.value.connectionId : s.connectionByName(e.value.connection)?.id || e.value.connection : ""), k = N(() => t.viewMode ? !1 : e.value ? e.value.state === "editing" : !1), A = N(() => e.value ? ee(e.value, a) : []);
4753
4753
  function se(e) {
4754
4754
  if (!e?.id) return;
4755
- e.state === "fullscreen" && n.fullScreen(!0), a.setActiveDashboard(e.id), m.value = "", f.value = "", p.value = "", T.value = [], e.filter && (f.value = e.filter, p.value = e.filter);
4756
- let t = R(e.id), r = Object.keys(e.gridItems).filter((t) => e.gridItems[t].type !== i.SECTION_HEADER && !e.gridItems[t].results);
4755
+ e.state === "fullscreen" && n.fullScreen(!0), i.setActiveDashboard(e.id), p.value = "", d.value = "", f.value = "", T.value = [], e.filter && (d.value = e.filter, f.value = e.filter);
4756
+ let t = R(e.id), r = Object.keys(e.gridItems).filter((t) => e.gridItems[t].type !== o.SECTION_HEADER && !e.gridItems[t].results);
4757
4757
  t?.runBatch(r), de();
4758
4758
  }
4759
4759
  Y(() => e.value?.id, (t, n) => {
@@ -4765,40 +4765,40 @@ function La(e, t, n, r) {
4765
4765
  }), i = t.isMobile ? ".mobile-container" : ".grid-container", a = document.querySelector(i);
4766
4766
  a && r.observe(a);
4767
4767
  }), we(() => {
4768
- h.value !== null && clearTimeout(h.value);
4768
+ m.value !== null && clearTimeout(m.value);
4769
4769
  });
4770
4770
  async function ce() {
4771
4771
  if (e.value && e.value.id) {
4772
- f.value = "", p.value = "", m.value = "";
4773
- let t = a.removeAllFilters(e.value.id);
4774
- await a.getQueryExecutor(e.value.id)?.runBatch(t);
4772
+ d.value = "", f.value = "", p.value = "";
4773
+ let t = i.removeAllFilters(e.value.id);
4774
+ await i.getQueryExecutor(e.value.id)?.runBatch(t);
4775
4775
  }
4776
4776
  }
4777
4777
  async function le(t) {
4778
4778
  if (!t || ie(t) === "") {
4779
- if (m.value = "", e.value && e.value.id) {
4780
- let n = a.updateDashboardFilter(e.value.id, ie(t));
4781
- await a.getQueryExecutor(e.value.id)?.runBatch(n);
4779
+ if (p.value = "", e.value && e.value.id) {
4780
+ let n = i.updateDashboardFilter(e.value.id, ie(t));
4781
+ await i.getQueryExecutor(e.value.id)?.runBatch(n);
4782
4782
  }
4783
4783
  return;
4784
4784
  }
4785
- e.value && e.value.id && (f.value = t, await u?.generateQuery(e.value.connectionId || e.value.connection, {
4785
+ e.value && e.value.id && (d.value = t, await l?.generateQuery(e.value.connectionId || e.value.connection, {
4786
4786
  text: "select 1 as test;",
4787
4787
  editorType: "trilogy",
4788
4788
  extraFilters: [t],
4789
4789
  imports: e.value.imports,
4790
4790
  extraContent: A.value
4791
4791
  }).then(() => {
4792
- if (m.value = "", e.value && e.value.id) {
4793
- let n = a.updateDashboardFilter(e.value.id, t);
4794
- a.getQueryExecutor(e.value.id)?.runBatch(n);
4792
+ if (p.value = "", e.value && e.value.id) {
4793
+ let n = i.updateDashboardFilter(e.value.id, t);
4794
+ i.getQueryExecutor(e.value.id)?.runBatch(n);
4795
4795
  }
4796
- }).catch((e) => (m.value = e.message, !1)));
4796
+ }).catch((e) => (p.value = e.message, !1)));
4797
4797
  }
4798
4798
  let ue = async (t) => {
4799
4799
  let n = t.replace(/^\s*where\s+/i, "");
4800
4800
  if (e.value && e.value.id) {
4801
- let t = await u?.executeQuery(e.value.connectionId || e.value.connection, {
4801
+ let t = await l?.executeQuery(e.value.connectionId || e.value.connection, {
4802
4802
  text: "select 1 as test;",
4803
4803
  editorType: "trilogy",
4804
4804
  imports: e.value.imports,
@@ -4811,45 +4811,45 @@ function La(e, t, n, r) {
4811
4811
  } else throw Error("Dashboard not found");
4812
4812
  };
4813
4813
  async function de() {
4814
- if (e.value && e.value.id && u) {
4815
- let t = await a.populateCompletion(e.value.id, u, s);
4816
- t && (T.value = t), m.value = "";
4814
+ if (e.value && e.value.id && l) {
4815
+ let t = await i.populateCompletion(e.value.id, l, a);
4816
+ t && (T.value = t), p.value = "";
4817
4817
  }
4818
4818
  }
4819
4819
  async function fe(t) {
4820
- e.value && e.value.id && (a.updateDashboardImports(e.value.id, t), await de());
4820
+ e.value && e.value.id && (i.updateDashboardImports(e.value.id, t), await de());
4821
4821
  }
4822
4822
  let pe = (t) => {
4823
- e.value && (a.setState(e.value.id, t), Se(() => {
4823
+ e.value && (i.setState(e.value.id, t), Se(() => {
4824
4824
  n.triggerResize();
4825
4825
  }));
4826
4826
  }, me = (t) => {
4827
- e.value && e.value.id && a.updateDashboardLayout(e.value.id, t);
4827
+ e.value && e.value.id && i.updateDashboardLayout(e.value.id, t);
4828
4828
  };
4829
4829
  function he() {
4830
4830
  w.value = !0;
4831
4831
  }
4832
- function ge(t = i.CHART) {
4832
+ function ge(t = o.CHART) {
4833
4833
  if (!e.value || !e.value.id) return;
4834
- let r = t === i.SECTION_HEADER ? a.addItemToDashboard(e.value.id, t, 0, 0, 20, 1) : a.addItemToDashboard(e.value.id, t);
4834
+ let r = t === o.SECTION_HEADER ? i.addItemToDashboard(e.value.id, t, 0, 0, 20, 1) : i.addItemToDashboard(e.value.id, t);
4835
4835
  w.value = !1, Se(() => {
4836
4836
  n.dimensionsUpdate(r);
4837
4837
  });
4838
4838
  }
4839
4839
  function j(t) {
4840
- !e.value || !e.value.id || a.updateDashboardTitle(e.value.id, t);
4840
+ !e.value || !e.value.id || i.updateDashboardTitle(e.value.id, t);
4841
4841
  }
4842
4842
  function _e(t) {
4843
- !e.value || !e.value.id || a.setDashboardTheme(e.value.id, t);
4843
+ !e.value || !e.value.id || i.setDashboardTheme(e.value.id, t);
4844
4844
  }
4845
4845
  function ve() {
4846
- !e.value || !e.value.id || a.clearDashboardItems(e.value.id);
4846
+ !e.value || !e.value.id || i.clearDashboardItems(e.value.id);
4847
4847
  }
4848
4848
  function ye(t) {
4849
- !e.value || !e.value.id || a.removeItemFromDashboard(e.value.id, t);
4849
+ !e.value || !e.value.id || i.removeItemFromDashboard(e.value.id, t);
4850
4850
  }
4851
4851
  function be(t) {
4852
- !e.value || !e.value.id || a.copyItemInDashboard(e.value.id, t);
4852
+ !e.value || !e.value.id || i.copyItemInDashboard(e.value.id, t);
4853
4853
  }
4854
4854
  function M() {
4855
4855
  w.value = !1;
@@ -4857,7 +4857,7 @@ function La(e, t, n, r) {
4857
4857
  function xe(t) {
4858
4858
  if (_.value = t, !e.value || !e.value.id) return;
4859
4859
  let n = e.value.gridItems[t.i];
4860
- n && (n.type === i.CHART ? b.value = !0 : n.type === i.MARKDOWN ? x.value = !0 : n.type === i.TABLE || n.type === i.FILTER ? b.value = !0 : n.type === i.FREEFORM ? S.value = !0 : n.type === i.SECTION_HEADER && (_.value = null));
4860
+ n && (n.type === o.CHART ? b.value = !0 : n.type === o.MARKDOWN ? x.value = !0 : n.type === o.TABLE || n.type === o.FILTER ? b.value = !0 : n.type === o.FREEFORM ? S.value = !0 : n.type === o.SECTION_HEADER && (_.value = null));
4861
4861
  }
4862
4862
  function P(t) {
4863
4863
  if (!e.value || !e.value.id || !_.value) return;
@@ -4879,55 +4879,55 @@ function La(e, t, n, r) {
4879
4879
  console.warn("Dashboard ID mismatch. Cannot set item data. Given:", n, "Expected:", e.value.id);
4880
4880
  return;
4881
4881
  }
4882
- v(a, e.value.id, t, r), r.content && R(e.value.id)?.runSingle(t);
4882
+ v(i, e.value.id, t, r), r.content && R(e.value.id)?.runSingle(t);
4883
4883
  }
4884
4884
  }
4885
4885
  function R(t) {
4886
4886
  if (!e.value || !e.value.id) throw Error("Dashboard not found or not initialized");
4887
- if (!u) throw Error("Query execution service not found");
4888
- let n = a.dashboards[t], r = te(n, c), i = a.getOrCreateQueryExecutor(t, {
4889
- queryExecutionService: u,
4887
+ if (!l) throw Error("Query execution service not found");
4888
+ let n = i.dashboards[t], r = te(n, s), a = i.getOrCreateQueryExecutor(t, {
4889
+ queryExecutionService: l,
4890
4890
  connectionName: r,
4891
4891
  dashboardId: t,
4892
- getDashboardData: (e) => a.dashboards[e],
4892
+ getDashboardData: (e) => i.dashboards[e],
4893
4893
  getItemData: I,
4894
4894
  setItemData: L
4895
4895
  });
4896
- return i || console.warn("No query executor found for dashboard:", e.value.id), i;
4896
+ return a || console.warn("No query executor found for dashboard:", e.value.id), a;
4897
4897
  }
4898
4898
  function z(t) {
4899
4899
  let n = t.target.value;
4900
- e.value && e.value.id && (a.updateDashboardConnection(e.value.id, n), a.getQueryExecutor(e.value.id)?.setConnection(n));
4900
+ e.value && e.value.id && (i.updateDashboardConnection(e.value.id, n), i.getQueryExecutor(e.value.id)?.setConnection(n));
4901
4901
  }
4902
4902
  function B(t) {
4903
4903
  if (e.value) {
4904
4904
  if (t) {
4905
- let r = a.getQueryExecutor(e.value.id)?.runSingle(t);
4905
+ let r = i.getQueryExecutor(e.value.id)?.runSingle(t);
4906
4906
  return n.dimensionsUpdate(t), r ?? void 0;
4907
4907
  }
4908
- a.getQueryExecutor(e.value.id)?.runBatch(Object.keys(e.value.gridItems));
4908
+ i.getQueryExecutor(e.value.id)?.runBatch(Object.keys(e.value.gridItems));
4909
4909
  }
4910
4910
  }
4911
4911
  function H(t) {
4912
4912
  if (!e.value || !e.value.id) return;
4913
- let n = o(T.value), r = l(t.filters, n);
4913
+ let n = c(T.value), r = h(t.filters, n);
4914
4914
  if (!r || Object.keys(r).length === 0) {
4915
4915
  console.log("No valid filters to apply from cross-filter event, given ", t.filters, n);
4916
4916
  return;
4917
4917
  }
4918
- let i = a.updateItemCrossFilters(e.value.id, t.source, r, t.chart, t.append ? "append" : "add");
4919
- a.getQueryExecutor(e.value.id)?.runBatch(i);
4918
+ let a = i.updateItemCrossFilters(e.value.id, t.source, r, t.chart, t.append ? "append" : "add");
4919
+ i.getQueryExecutor(e.value.id)?.runBatch(a);
4920
4920
  }
4921
4921
  function Ce(t, n) {
4922
- !e.value || !e.value.id || (a.removeItemCrossFilter(e.value.id, t, n), a.getQueryExecutor(e.value.id)?.runSingle(t));
4922
+ !e.value || !e.value.id || (i.removeItemCrossFilter(e.value.id, t, n), i.getQueryExecutor(e.value.id)?.runSingle(t));
4923
4923
  }
4924
4924
  function Ee(t) {
4925
4925
  if (!e.value || !e.value.id) return;
4926
- let n = a.removeItemCrossFilterSource(e.value.id, t);
4927
- a.getQueryExecutor(e.value.id)?.runBatch(n);
4926
+ let n = i.removeItemCrossFilterSource(e.value.id, t);
4927
+ i.getQueryExecutor(e.value.id)?.runBatch(n);
4928
4928
  }
4929
4929
  function U(e) {
4930
- d(e);
4930
+ u(e);
4931
4931
  }
4932
4932
  return {
4933
4933
  dashboard: e,
@@ -4935,8 +4935,8 @@ function La(e, t, n, r) {
4935
4935
  sortedLayout: ae,
4936
4936
  editMode: k,
4937
4937
  selectedConnection: oe,
4938
- filter: f,
4939
- filterError: m,
4938
+ filter: d,
4939
+ filterError: p,
4940
4940
  globalCompletion: T,
4941
4941
  showAddItemModal: w,
4942
4942
  showQueryEditor: b,