@trilogy-data/trilogy-studio-components 0.1.10 → 0.1.12

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 (113) hide show
  1. package/dist/{ChatCreatorModal-kqIGFHPN.js → ChatCreatorModal-kIXgcJQp.js} +1 -1
  2. package/dist/{Dashboard-BhcB9-ov.js → Dashboard-B-YfrO5u.js} +3 -3
  3. package/dist/{DashboardCreatorInline-Cp8fI1iG.js → DashboardCreatorInline-C6fr4jNo.js} +1 -1
  4. package/dist/{DashboardMobile-nSuC_ygH.js → DashboardMobile-D911XYkl.js} +20 -20
  5. package/dist/{LLMConnectionList-CwfSkiq_.js → LLMConnectionList-DZbu1kGq.js} +884 -856
  6. package/dist/LLMView-C4RQS1B8.js +656 -0
  7. package/dist/Manager-CoKiEZT-.js +4 -0
  8. package/dist/{ResultComponent-CDU0FkOQ.js → ResultComponent-fVgARLAb.js} +6 -6
  9. package/dist/{Sidebar-dZtwrs0v.js → Sidebar-esb9EqnY.js} +289 -268
  10. package/dist/{TutorialPage-kWCo9lD6.js → TutorialPage-DfA2845i.js} +4 -4
  11. package/dist/{WelcomePage-BjLQLYt8.js → WelcomePage-LRJvygaE.js} +1 -1
  12. package/dist/chats/chat.d.ts +11 -1
  13. package/dist/chats/chat.d.ts.map +1 -1
  14. package/dist/chats/publishArtifactsToDashboard.d.ts +21 -0
  15. package/dist/chats/publishArtifactsToDashboard.d.ts.map +1 -0
  16. package/dist/components/editor/Editor.vue.d.ts +1 -2
  17. package/dist/components/editor/Editor.vue.d.ts.map +1 -1
  18. package/dist/components/editor/ResultComponent.vue.d.ts +74 -15
  19. package/dist/components/editor/ResultComponent.vue.d.ts.map +1 -1
  20. package/dist/components/layout/SidebarLayout.vue.d.ts +14 -2
  21. package/dist/components/layout/SidebarLayout.vue.d.ts.map +1 -1
  22. package/dist/components/llm/ArtifactsPane.vue.d.ts +885 -0
  23. package/dist/components/llm/ArtifactsPane.vue.d.ts.map +1 -0
  24. package/dist/components/llm/ChatArtifact.vue.d.ts +37 -1
  25. package/dist/components/llm/ChatArtifact.vue.d.ts.map +1 -1
  26. package/dist/components/llm/LLMChat.vue.d.ts +18 -3
  27. package/dist/components/llm/LLMChat.vue.d.ts.map +1 -1
  28. package/dist/components/llm/LLMChatSplitView.vue.d.ts +858 -702
  29. package/dist/components/llm/LLMChatSplitView.vue.d.ts.map +1 -1
  30. package/dist/components/llm/LLMEditorRefinement.vue.d.ts +74 -15
  31. package/dist/components/llm/LLMEditorRefinement.vue.d.ts.map +1 -1
  32. package/dist/components/model/ModelCard.vue.d.ts +1 -2
  33. package/dist/components/model/ModelCard.vue.d.ts.map +1 -1
  34. package/dist/components/sidebar/ConnectionList.vue.d.ts.map +1 -1
  35. package/dist/components/sidebar/EditorList.vue.d.ts.map +1 -1
  36. package/dist/components/sidebar/LLMConnectionCreator.vue.d.ts.map +1 -1
  37. package/dist/components/sidebar/LLMConnectionList.vue.d.ts +2 -2
  38. package/dist/components/sidebar/LLMConnectionList.vue.d.ts.map +1 -1
  39. package/dist/components/sidebar/LLMConnectionListItem.vue.d.ts.map +1 -1
  40. package/dist/components/sidebar/LLMProviderIcon.vue.d.ts.map +1 -1
  41. package/dist/components/tutorial/TutorialPrompt.vue.d.ts +75 -17
  42. package/dist/components/tutorial/TutorialPrompt.vue.d.ts.map +1 -1
  43. package/dist/composables/useChatWithTools.d.ts.map +1 -1
  44. package/dist/composables/useEditorRefinement.d.ts.map +1 -1
  45. package/dist/composables/useToolLoop.d.ts +0 -2
  46. package/dist/composables/useToolLoop.d.ts.map +1 -1
  47. package/dist/{cssMode-BgTpWprH.js → cssMode-DCSjJlZ5.js} +1 -1
  48. package/dist/dashboards/helpers.d.ts.map +1 -1
  49. package/dist/data/githubStorage.d.ts.map +1 -1
  50. package/dist/data/localStorage.d.ts.map +1 -1
  51. package/dist/editors/results.d.ts.map +1 -1
  52. package/dist/{freemarker2-BCVHBEgI.js → freemarker2-BKjHRYvq.js} +1 -1
  53. package/dist/{handlebars-CvE5drDj.js → handlebars-D_px6u7k.js} +1 -1
  54. package/dist/{html-CZGBnyei.js → html-Bm-h8fTq.js} +1 -1
  55. package/dist/{htmlMode-CzN0D6_N.js → htmlMode-YODzRvjv.js} +1 -1
  56. package/dist/{javascript-D9vXE5ET.js → javascript-DZrwO1Xq.js} +1 -1
  57. package/dist/{jsonMode-CY69B03N.js → jsonMode-_ThxxZQx.js} +1 -1
  58. package/dist/{liquid-D2Izcg9H.js → liquid-I2p3UrJy.js} +1 -1
  59. package/dist/llm/chatAgentPrompt.d.ts +257 -0
  60. package/dist/llm/chatAgentPrompt.d.ts.map +1 -1
  61. package/dist/llm/chatHelpers.d.ts +0 -11
  62. package/dist/llm/chatHelpers.d.ts.map +1 -1
  63. package/dist/llm/chatToolExecutor.d.ts +10 -0
  64. package/dist/llm/chatToolExecutor.d.ts.map +1 -1
  65. package/dist/llm/consts.d.ts +19 -0
  66. package/dist/llm/consts.d.ts.map +1 -1
  67. package/dist/llm/demo.d.ts +37 -0
  68. package/dist/llm/demo.d.ts.map +1 -0
  69. package/dist/llm/editorRefinementToolExecutor.d.ts +4 -0
  70. package/dist/llm/editorRefinementToolExecutor.d.ts.map +1 -1
  71. package/dist/llm/editorRefinementTools.d.ts +40 -0
  72. package/dist/llm/editorRefinementTools.d.ts.map +1 -1
  73. package/dist/llm/index.d.ts +5 -2
  74. package/dist/llm/index.d.ts.map +1 -1
  75. package/dist/llm/openrouter.d.ts +5 -0
  76. package/dist/llm/openrouter.d.ts.map +1 -1
  77. package/dist/llm/toolLoopCore.d.ts +36 -7
  78. package/dist/llm/toolLoopCore.d.ts.map +1 -1
  79. package/dist/llm/utils.d.ts +4 -1
  80. package/dist/llm/utils.d.ts.map +1 -1
  81. package/dist/{main-YvioU1lW.js → main-Bjg9NFbT.js} +38078 -37191
  82. package/dist/main.css +1 -1
  83. package/dist/main.d.ts +5 -1
  84. package/dist/main.d.ts.map +1 -1
  85. package/dist/main.js +27 -22
  86. package/dist/main.umd.cjs +605 -560
  87. package/dist/{mdx-DfvKDyTa.js → mdx-e5VczKhJ.js} +1 -1
  88. package/dist/{python-CmewBYeN.js → python-CUAfebEu.js} +1 -1
  89. package/dist/{razor-C-YsC2u-.js → razor-B95YKGrm.js} +1 -1
  90. package/dist/stores/chatStore.d.ts.map +1 -1
  91. package/dist/stores/editorStore.d.ts.map +1 -1
  92. package/dist/stores/llmStore.d.ts +1 -10
  93. package/dist/stores/llmStore.d.ts.map +1 -1
  94. package/dist/stores/queryExecutionService.d.ts +1 -0
  95. package/dist/stores/queryExecutionService.d.ts.map +1 -1
  96. package/dist/stores/resolver.d.ts +1 -0
  97. package/dist/stores/resolver.d.ts.map +1 -1
  98. package/dist/stores/useScreenNavigation.d.ts.map +1 -1
  99. package/dist/{tsMode-LfgRVGbQ.js → tsMode-BcjYt2WB.js} +1 -1
  100. package/dist/{typescript-ChhJ4j27.js → typescript-Ck_cSGyE.js} +1 -1
  101. package/dist/{useDashboard-vvK-sCbo.js → useDashboard-BnXAbWPO.js} +1 -1
  102. package/dist/utility/markdownRenderer.d.ts.map +1 -1
  103. package/dist/views/LLMView.vue.d.ts +2713 -2140
  104. package/dist/views/LLMView.vue.d.ts.map +1 -1
  105. package/dist/views/ModelView.vue.d.ts +2 -4
  106. package/dist/views/ModelView.vue.d.ts.map +1 -1
  107. package/dist/views/TutorialPage.vue.d.ts +154 -40
  108. package/dist/views/TutorialPage.vue.d.ts.map +1 -1
  109. package/dist/{xml-DM40RTTn.js → xml-Do52fQeS.js} +1 -1
  110. package/dist/{yaml-0wmwSdSU.js → yaml-C8U7HH0M.js} +1 -1
  111. package/package.json +1 -1
  112. package/dist/LLMView-e38fpjum.js +0 -558
  113. package/dist/Manager-CtK5dHJ8.js +0 -4
@@ -1,7 +1,7 @@
1
- import { inject as A, ref as g, onMounted as x, computed as G, resolveComponent as D, createBlock as L, openBlock as r, withCtx as k, createElementBlock as y, Fragment as V, renderList as J, createElementVNode as o, createCommentVNode as S, createVNode as N, normalizeClass as U, toDisplayString as K, createTextVNode as H, defineComponent as X, withDirectives as T, vModelText as P, unref as ie, vModelSelect as te, withModifiers as B, watch as le, normalizeStyle as de, vShow as W } from "vue";
2
- import { S as Y, e as Z, g as q, K as E, a as F, T as Q, L as oe, f as re, u as ne, t as ce, D as ue, h as se, i as ae, j as me, d as ve, k as pe } from "./main-YvioU1lW.js";
3
- import { d as ee, a as be, L as ye, C as he } from "./LLMConnectionList-CwfSkiq_.js";
4
- import { D as fe } from "./DashboardCreatorInline-Cp8fI1iG.js";
1
+ import { inject as A, ref as S, onMounted as x, computed as G, resolveComponent as D, createBlock as L, openBlock as r, withCtx as k, createElementBlock as h, Fragment as V, renderList as J, createElementVNode as o, createCommentVNode as g, createVNode as N, normalizeClass as U, toDisplayString as K, createTextVNode as H, defineComponent as X, withDirectives as T, vModelText as P, unref as ie, vModelSelect as te, withModifiers as _, watch as le, normalizeStyle as de, vShow as W } from "vue";
2
+ import { S as Y, e as Z, g as B, K as E, a as F, T as Q, L as oe, f as re, u as ne, t as ce, D as ue, h as se, i as ae, j as me, d as ve, k as pe } from "./main-Bjg9NFbT.js";
3
+ import { d as ee, a as be, L as he, C as ye } from "./LLMConnectionList-DZbu1kGq.js";
4
+ import { D as fe } from "./DashboardCreatorInline-C6fr4jNo.js";
5
5
  const ge = {
6
6
  name: "DocumentationSidebar",
7
7
  props: {
@@ -14,7 +14,7 @@ const ge = {
14
14
  setup(e) {
15
15
  if (!A("editorStore"))
16
16
  throw new Error("Editor store is not provided!");
17
- const s = q("documentationKey") || "", n = g({});
17
+ const s = B("documentationKey") || "", n = S({});
18
18
  return x(() => {
19
19
  const c = s.split(E)[1];
20
20
  let u = `documentation${E}${c}`;
@@ -66,7 +66,7 @@ function Se(e, t, s, n, v, b) {
66
66
  return r(), L(p, { title: "Documentation" }, {
67
67
  actions: k(() => [...t[0] || (t[0] = [])]),
68
68
  default: k(() => [
69
- (r(!0), y(V, null, J(n.documentationNodes, (c) => (r(), L(d, {
69
+ (r(!0), h(V, null, J(n.documentationNodes, (c) => (r(), L(d, {
70
70
  key: c.id,
71
71
  "item-id": c.id,
72
72
  name: c.name,
@@ -94,69 +94,69 @@ const ke = /* @__PURE__ */ F(ge, [["render", Se], ["__scopeId", "data-v-7d844a72
94
94
  }
95
95
  },
96
96
  setup() {
97
- const e = A("modelStore"), t = A("saveModels"), s = A("editorStore"), n = A("trilogyResolver"), v = ne(), b = g(!1), d = v.activeModelKey.value || q("model") || "", p = d.split(E)[0];
97
+ const e = A("modelStore"), t = A("saveModels"), s = A("editorStore"), n = A("trilogyResolver"), v = ne(), b = S(!1), d = v.activeModelKey.value || B("model") || "", p = d.split(E)[0];
98
98
  let c = "", u = "", a = d.split(E);
99
99
  if (p === "model" ? c = a[1] : (p === "source" || p === "datasource" || p === "concept") && (c = a[1], u = a[2]), !e || !t || !s || !n)
100
100
  throw new Error("Model store is not provided!");
101
101
  let m = {};
102
- Object.values(e.models).forEach((l) => {
103
- let $ = ["model", l.name].join(E);
104
- l.name !== c && (m[$] = !0), l.sources.forEach((w) => {
105
- let _ = ["source", l.name, w.alias].join(E);
106
- (l.name !== c || w.alias !== u) && (m[_] = !0), w.datasources.forEach((R) => {
107
- let I = ["datasource", l.name, w.alias, R.name].join(E);
102
+ Object.values(e.models).forEach((i) => {
103
+ let $ = ["model", i.name].join(E);
104
+ i.name !== c && (m[$] = !0), i.sources.forEach((w) => {
105
+ let q = ["source", i.name, w.alias].join(E);
106
+ (i.name !== c || w.alias !== u) && (m[q] = !0), w.datasources.forEach((R) => {
107
+ let I = ["datasource", i.name, w.alias, R.name].join(E);
108
108
  m[I] = !0;
109
109
  });
110
110
  });
111
111
  });
112
- const f = g(m), j = G(() => {
113
- const l = [];
114
- return Object.values(e.models).sort((w, _) => w.name.localeCompare(_.name)).forEach((w) => {
112
+ const f = S(m), j = G(() => {
113
+ const i = [];
114
+ return Object.values(e.models).sort((w, q) => w.name.localeCompare(q.name)).forEach((w) => {
115
115
  if (w.deleted) return;
116
- let _ = ["model", w.name].join(E);
117
- l.push({
118
- id: _,
116
+ let q = ["model", w.name].join(E);
117
+ i.push({
118
+ id: q,
119
119
  name: w.name,
120
120
  indent: 0,
121
121
  count: w.sources.length,
122
122
  type: "model",
123
123
  concept: null
124
- }), f.value[_] || w.sources.forEach((R) => {
124
+ }), f.value[q] || w.sources.forEach((R) => {
125
125
  let I = ["source", w.name, R.alias].join(E);
126
- l.push({
126
+ i.push({
127
127
  id: I,
128
128
  name: R.alias,
129
129
  indent: 1,
130
130
  count: R.concepts.length,
131
131
  type: "source",
132
132
  concept: null
133
- }), f.value[I] || (R.concepts.forEach((i) => {
134
- l.push({
135
- id: ["concept", w.name, R.alias, i.namespace, i.name].join(
133
+ }), f.value[I] || (R.concepts.forEach((l) => {
134
+ i.push({
135
+ id: ["concept", w.name, R.alias, l.namespace, l.name].join(
136
136
  E
137
137
  ),
138
- name: i.namespace === "local" ? i.name : i.namespace + "." + i.name,
138
+ name: l.namespace === "local" ? l.name : l.namespace + "." + l.name,
139
139
  indent: 2,
140
140
  count: 0,
141
141
  type: "concept",
142
- concept: i
142
+ concept: l
143
143
  });
144
- }), R.datasources.forEach((i) => {
145
- let C = ["datasource", w.name, R.alias, i.name].join(E);
146
- l.push({
144
+ }), R.datasources.forEach((l) => {
145
+ let C = ["datasource", w.name, R.alias, l.name].join(E);
146
+ i.push({
147
147
  id: C,
148
- name: i.name,
148
+ name: l.name,
149
149
  indent: 2,
150
- count: i.concepts.length,
150
+ count: l.concepts.length,
151
151
  type: "datasource",
152
152
  concept: null
153
- }), f.value[C] || i.concepts.forEach((z) => {
154
- l.push({
153
+ }), f.value[C] || l.concepts.forEach((z) => {
154
+ i.push({
155
155
  id: [
156
156
  "concept",
157
157
  w.name,
158
158
  R.alias,
159
- i.name,
159
+ l.name,
160
160
  z.namespace,
161
161
  z.name
162
162
  ].join(E),
@@ -169,32 +169,32 @@ const ke = /* @__PURE__ */ F(ge, [["render", Se], ["__scopeId", "data-v-7d844a72
169
169
  });
170
170
  }));
171
171
  });
172
- }), l;
172
+ }), i;
173
173
  });
174
174
  return {
175
175
  creatorVisible: b,
176
176
  flatList: j,
177
177
  collapsed: f,
178
178
  saveModels: t,
179
- fetchParseResults: (l) => n.resolveModel(
180
- l,
181
- e.models[l].sources.map(($) => ({
179
+ fetchParseResults: (i) => n.resolveModel(
180
+ i,
181
+ e.models[i].sources.map(($) => ({
182
182
  alias: $.alias,
183
183
  contents: (s.editors[$.editor] || { contents: "" }).contents
184
184
  }))
185
185
  ).then(($) => {
186
- e.setModelConfigParseResults(l, $);
186
+ e.setModelConfigParseResults(i, $);
187
187
  }).catch(($) => {
188
- e.setModelParseError(l, $.message), console.error("Failed to fetch parse results:", $);
188
+ e.setModelParseError(i, $.message), console.error("Failed to fetch parse results:", $);
189
189
  }),
190
190
  trilogyIcon: ce,
191
191
  navigationStore: v,
192
- handleClick: (l) => {
193
- const $ = l.lastIndexOf(E), w = $ !== -1 ? l.substring($ + 1) : l;
194
- v.openTab("models", w, l);
192
+ handleClick: (i) => {
193
+ const $ = i.lastIndexOf(E), w = $ !== -1 ? i.substring($ + 1) : i;
194
+ v.openTab("models", w, i);
195
195
  },
196
- handleToggle: (l) => {
197
- f.value[l] = !f.value[l];
196
+ handleToggle: (i) => {
197
+ f.value[i] = !f.value[i];
198
198
  },
199
199
  modelStore: e
200
200
  };
@@ -235,7 +235,7 @@ function Ke(e, t, s, n, v, b) {
235
235
  }, null, 8, ["visible"])
236
236
  ]),
237
237
  default: k(() => [
238
- (r(!0), y(V, null, J(n.flatList, (m) => (r(), L(u, {
238
+ (r(!0), h(V, null, J(n.flatList, (m) => (r(), L(u, {
239
239
  key: m.id,
240
240
  "item-id": m.id,
241
241
  name: m.name,
@@ -247,14 +247,14 @@ function Ke(e, t, s, n, v, b) {
247
247
  onToggle: n.handleToggle
248
248
  }, {
249
249
  icon: k(() => [
250
- m.type === "source" ? (r(), y("img", {
250
+ m.type === "source" ? (r(), h("img", {
251
251
  key: 0,
252
252
  src: n.trilogyIcon,
253
253
  class: "trilogy-icon"
254
- }, null, 8, Me)) : m.type === "concept" ? (r(), y("span", {
254
+ }, null, 8, Me)) : m.type === "concept" ? (r(), h("span", {
255
255
  key: 1,
256
256
  class: U(`purpose-${m.concept.purpose.toLowerCase()}`)
257
- }, K(m.concept.purpose.charAt(0).toUpperCase()), 3)) : m.type === "datasource" ? (r(), y("i", $e)) : S("", !0)
257
+ }, K(m.concept.purpose.charAt(0).toUpperCase()), 3)) : m.type === "datasource" ? (r(), h("i", $e)) : g("", !0)
258
258
  ]),
259
259
  "extra-content": k(() => [
260
260
  o("span", Ie, [
@@ -274,7 +274,7 @@ function Ke(e, t, s, n, v, b) {
274
274
  }, 8, ["action"])
275
275
  ]),
276
276
  _: 2
277
- }, 1024)) : S("", !0),
277
+ }, 1024)) : g("", !0),
278
278
  m.type === "model" ? (r(), L(c, {
279
279
  key: 1,
280
280
  content: "Delete Model",
@@ -287,7 +287,7 @@ function Ke(e, t, s, n, v, b) {
287
287
  }, null, 8, Te)
288
288
  ]),
289
289
  _: 2
290
- }, 1024)) : S("", !0)
290
+ }, 1024)) : g("", !0)
291
291
  ])
292
292
  ]),
293
293
  _: 2
@@ -308,10 +308,10 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
308
308
  }, Pe = { class: "url-input-container" }, Oe = ["disabled"], Re = {
309
309
  key: 0,
310
310
  class: "error-message"
311
- }, _e = {
311
+ }, qe = {
312
312
  key: 1,
313
313
  class: "preview-container"
314
- }, qe = { class: "json-preview" }, Be = { class: "connection-selector" }, Fe = { class: "form-row" }, He = ["value"], Je = {
314
+ }, Be = { class: "json-preview" }, _e = { class: "connection-selector" }, Fe = { class: "form-row" }, He = ["value"], Je = {
315
315
  key: 0,
316
316
  class: "form-row"
317
317
  }, ze = {
@@ -327,34 +327,34 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
327
327
  const s = t, n = A("dashboardStore"), v = A("connectionStore"), b = A("saveDashboards"), d = A("saveAll");
328
328
  if (!n || !v || !b || !d)
329
329
  throw new Error("Required stores not provided");
330
- const p = g(""), c = g(""), u = g(null), a = g(!1), m = g(""), f = g("paste"), j = g(null), h = g({
330
+ const p = S(""), c = S(""), u = S(null), a = S(!1), m = S(""), f = S("paste"), j = S(null), y = S({
331
331
  mdToken: "",
332
332
  projectId: "",
333
333
  username: "",
334
334
  password: "",
335
335
  account: "",
336
336
  sshPrivateKey: ""
337
- }), O = g(!0);
337
+ }), O = S(!0);
338
338
  function M() {
339
339
  if (!c.value) {
340
340
  O.value = !1;
341
341
  return;
342
342
  }
343
- if (c.value === "new-motherduck" && !h.value.mdToken) {
343
+ if (c.value === "new-motherduck" && !y.value.mdToken) {
344
344
  O.value = !1;
345
345
  return;
346
346
  }
347
- if (c.value === "new-bigquery-oauth" && !h.value.projectId) {
347
+ if (c.value === "new-bigquery-oauth" && !y.value.projectId) {
348
348
  O.value = !1;
349
349
  return;
350
350
  }
351
- if (c.value === "new-snowflake" && (!h.value.username || !h.value.account || !h.value.sshPrivateKey)) {
351
+ if (c.value === "new-snowflake" && (!y.value.username || !y.value.account || !y.value.sshPrivateKey)) {
352
352
  O.value = !1;
353
353
  return;
354
354
  }
355
355
  O.value = !0;
356
356
  }
357
- const l = async () => {
357
+ const i = async () => {
358
358
  if (!m.value) {
359
359
  j.value = "Please enter a URL", setTimeout(() => {
360
360
  j.value = null;
@@ -366,8 +366,8 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
366
366
  const I = await fetch(m.value);
367
367
  if (!I.ok)
368
368
  throw new Error(`HTTP error! Status: ${I.status}`);
369
- const i = await I.text();
370
- p.value = i, a.value = !1;
369
+ const l = await I.text();
370
+ p.value = l, a.value = !1;
371
371
  } catch (I) {
372
372
  console.error("Error fetching dashboard:", I), j.value = `Failed to fetch from URL: ${I instanceof Error ? I.message : "Unknown error"}`, a.value = !1, setTimeout(() => {
373
373
  j.value = null;
@@ -377,19 +377,19 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
377
377
  try {
378
378
  const I = ue.fromSerialized(JSON.parse(p.value));
379
379
  I.storage = "local";
380
- let i = c.value;
381
- if (i.startsWith("new-")) {
382
- let C = i.replace("new-", "");
383
- i = `dashboard-${I.name || "imported"}-connection`, v.connections[i] || v.newConnection(i, C, {
384
- mdToken: h.value.mdToken,
385
- projectId: h.value.projectId,
386
- username: h.value.username,
387
- password: h.value.password,
388
- account: h.value.account,
389
- privateKey: h.value.sshPrivateKey
380
+ let l = c.value;
381
+ if (l.startsWith("new-")) {
382
+ let C = l.replace("new-", "");
383
+ l = `dashboard-${I.name || "imported"}-connection`, v.connections[l] || v.newConnection(l, C, {
384
+ mdToken: y.value.mdToken,
385
+ projectId: y.value.projectId,
386
+ username: y.value.username,
387
+ password: y.value.password,
388
+ account: y.value.account,
389
+ privateKey: y.value.sshPrivateKey
390
390
  });
391
391
  }
392
- I.connection = i, I.id = Math.random().toString(36).substring(2, 15), n.addDashboard(I), w.value = !0, p.value = "", m.value = "", h.value = {
392
+ I.connection = l, I.id = Math.random().toString(36).substring(2, 15), n.addDashboard(I), w.value = !0, p.value = "", m.value = "", y.value = {
393
393
  mdToken: "",
394
394
  projectId: "",
395
395
  username: "",
@@ -404,10 +404,10 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
404
404
  u.value = null;
405
405
  }, 3e3);
406
406
  }
407
- }, w = g(!1), _ = g(null), R = (I) => {
408
- _.value && !_.value.contains(I.target) && s("close");
407
+ }, w = S(!1), q = S(null), R = (I) => {
408
+ q.value && !q.value.contains(I.target) && s("close");
409
409
  };
410
- return M(), (I, i) => e.isOpen ? (r(), y("div", {
410
+ return M(), (I, l) => e.isOpen ? (r(), h("div", {
411
411
  key: 0,
412
412
  class: "popup-overlay",
413
413
  onClick: R
@@ -415,13 +415,13 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
415
415
  o("div", {
416
416
  class: "popup-content",
417
417
  ref_key: "popupContent",
418
- ref: _,
418
+ ref: q,
419
419
  "data-testid": "dashboard-import-popup"
420
420
  }, [
421
421
  o("div", Ee, [
422
- i[11] || (i[11] = o("h3", null, "Import Dashboard", -1)),
422
+ l[11] || (l[11] = o("h3", null, "Import Dashboard", -1)),
423
423
  o("button", {
424
- onClick: i[0] || (i[0] = (C) => s("close")),
424
+ onClick: l[0] || (l[0] = (C) => s("close")),
425
425
  class: "close-button",
426
426
  "data-testid": "close-popup-button"
427
427
  }, " ✕ ")
@@ -430,20 +430,20 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
430
430
  o("div", Ae, [
431
431
  o("button", {
432
432
  class: U(["mode-button", { active: f.value === "paste" }]),
433
- onClick: i[1] || (i[1] = (C) => f.value = "paste"),
433
+ onClick: l[1] || (l[1] = (C) => f.value = "paste"),
434
434
  "data-testid": "paste-mode-button"
435
435
  }, " Paste JSON ", 2),
436
436
  o("button", {
437
437
  class: U(["mode-button", { active: f.value === "url" }]),
438
- onClick: i[2] || (i[2] = (C) => f.value = "url"),
438
+ onClick: l[2] || (l[2] = (C) => f.value = "url"),
439
439
  "data-testid": "url-mode-button"
440
440
  }, " From URL ", 2)
441
441
  ]),
442
- f.value === "paste" ? (r(), y("div", Ve, [
443
- i[12] || (i[12] = o("label", { for: "dashboard-json" }, "Paste Dashboard JSON", -1)),
442
+ f.value === "paste" ? (r(), h("div", Ve, [
443
+ l[12] || (l[12] = o("label", { for: "dashboard-json" }, "Paste Dashboard JSON", -1)),
444
444
  T(o("textarea", {
445
445
  id: "dashboard-json",
446
- "onUpdate:modelValue": i[3] || (i[3] = (C) => p.value = C),
446
+ "onUpdate:modelValue": l[3] || (l[3] = (C) => p.value = C),
447
447
  placeholder: "Paste your dashboard JSON here",
448
448
  rows: "16",
449
449
  class: "dashboard-textarea",
@@ -451,15 +451,15 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
451
451
  }, null, 512), [
452
452
  [P, p.value]
453
453
  ]),
454
- u.value ? (r(), y("div", je, K(u.value), 1)) : S("", !0)
455
- ])) : S("", !0),
456
- f.value === "url" ? (r(), y("div", Ue, [
457
- i[14] || (i[14] = o("label", { for: "dashboard-url" }, "Dashboard URL", -1)),
454
+ u.value ? (r(), h("div", je, K(u.value), 1)) : g("", !0)
455
+ ])) : g("", !0),
456
+ f.value === "url" ? (r(), h("div", Ue, [
457
+ l[14] || (l[14] = o("label", { for: "dashboard-url" }, "Dashboard URL", -1)),
458
458
  o("div", Pe, [
459
459
  T(o("input", {
460
460
  type: "text",
461
461
  id: "dashboard-url",
462
- "onUpdate:modelValue": i[4] || (i[4] = (C) => m.value = C),
462
+ "onUpdate:modelValue": l[4] || (l[4] = (C) => m.value = C),
463
463
  placeholder: "https://example.com/dashboard.json",
464
464
  class: "url-input",
465
465
  "data-testid": "dashboard-url-input"
@@ -467,52 +467,52 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
467
467
  [P, m.value]
468
468
  ]),
469
469
  o("button", {
470
- onClick: l,
470
+ onClick: i,
471
471
  class: "fetch-button",
472
472
  disabled: a.value,
473
473
  "data-testid": "fetch-url-button"
474
474
  }, K(a.value ? "Loading..." : "Fetch"), 9, Oe)
475
475
  ]),
476
- j.value ? (r(), y("div", Re, K(j.value), 1)) : S("", !0),
477
- p.value && f.value === "url" ? (r(), y("div", _e, [
478
- i[13] || (i[13] = o("label", null, "Dashboard JSON Preview", -1)),
479
- o("div", qe, [
476
+ j.value ? (r(), h("div", Re, K(j.value), 1)) : g("", !0),
477
+ p.value && f.value === "url" ? (r(), h("div", qe, [
478
+ l[13] || (l[13] = o("label", null, "Dashboard JSON Preview", -1)),
479
+ o("div", Be, [
480
480
  o("pre", null, K(p.value.length > 500 ? p.value.substring(0, 500) + "..." : p.value), 1)
481
481
  ])
482
- ])) : S("", !0)
483
- ])) : S("", !0)
482
+ ])) : g("", !0)
483
+ ])) : g("", !0)
484
484
  ]),
485
- o("div", Be, [
485
+ o("div", _e, [
486
486
  o("div", Fe, [
487
- i[20] || (i[20] = o("label", { for: "connection-select" }, "Assign To Connection", -1)),
487
+ l[20] || (l[20] = o("label", { for: "connection-select" }, "Assign To Connection", -1)),
488
488
  T(o("select", {
489
489
  id: "connection-select",
490
- "onUpdate:modelValue": i[5] || (i[5] = (C) => c.value = C),
490
+ "onUpdate:modelValue": l[5] || (l[5] = (C) => c.value = C),
491
491
  class: "connection-dropdown",
492
492
  "data-testid": "connection-select",
493
493
  onChange: M
494
494
  }, [
495
- i[15] || (i[15] = o("option", {
495
+ l[15] || (l[15] = o("option", {
496
496
  value: "",
497
497
  disabled: ""
498
498
  }, "-- Select Connection --", -1)),
499
- (r(!0), y(V, null, J(ie(v).connections, (C) => (r(), y("option", {
499
+ (r(!0), h(V, null, J(ie(v).connections, (C) => (r(), h("option", {
500
500
  key: C.name,
501
501
  value: C.name
502
502
  }, K(C.name), 9, He))), 128)),
503
- i[16] || (i[16] = o("option", { value: "new-duckdb" }, "New DuckDB", -1)),
504
- i[17] || (i[17] = o("option", { value: "new-motherduck" }, "New MotherDuck", -1)),
505
- i[18] || (i[18] = o("option", { value: "new-bigquery-oauth" }, "New Bigquery Oauth", -1)),
506
- i[19] || (i[19] = o("option", { value: "new-snowflake" }, "New Snowflake", -1))
503
+ l[16] || (l[16] = o("option", { value: "new-duckdb" }, "New DuckDB", -1)),
504
+ l[17] || (l[17] = o("option", { value: "new-motherduck" }, "New MotherDuck", -1)),
505
+ l[18] || (l[18] = o("option", { value: "new-bigquery-oauth" }, "New Bigquery Oauth", -1)),
506
+ l[19] || (l[19] = o("option", { value: "new-snowflake" }, "New Snowflake", -1))
507
507
  ], 544), [
508
508
  [te, c.value]
509
509
  ])
510
510
  ]),
511
- c.value === "new-motherduck" ? (r(), y("div", Je, [
512
- i[21] || (i[21] = o("label", { for: "md-token" }, "MotherDuck Token", -1)),
511
+ c.value === "new-motherduck" ? (r(), h("div", Je, [
512
+ l[21] || (l[21] = o("label", { for: "md-token" }, "MotherDuck Token", -1)),
513
513
  T(o("input", {
514
514
  type: "text",
515
- "onUpdate:modelValue": i[6] || (i[6] = (C) => h.value.mdToken = C),
515
+ "onUpdate:modelValue": l[6] || (l[6] = (C) => y.value.mdToken = C),
516
516
  id: "md-token",
517
517
  placeholder: "MotherDuck Token",
518
518
  class: "connection-input",
@@ -520,17 +520,17 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
520
520
  }, null, 544), [
521
521
  [
522
522
  P,
523
- h.value.mdToken,
523
+ y.value.mdToken,
524
524
  void 0,
525
525
  { trim: !0 }
526
526
  ]
527
527
  ])
528
- ])) : S("", !0),
529
- c.value === "new-bigquery-oauth" ? (r(), y("div", ze, [
530
- i[22] || (i[22] = o("label", { for: "project-id" }, "BigQuery Project ID", -1)),
528
+ ])) : g("", !0),
529
+ c.value === "new-bigquery-oauth" ? (r(), h("div", ze, [
530
+ l[22] || (l[22] = o("label", { for: "project-id" }, "BigQuery Project ID", -1)),
531
531
  T(o("input", {
532
532
  type: "text",
533
- "onUpdate:modelValue": i[7] || (i[7] = (C) => h.value.projectId = C),
533
+ "onUpdate:modelValue": l[7] || (l[7] = (C) => y.value.projectId = C),
534
534
  id: "project-id",
535
535
  placeholder: "Billing Project ID",
536
536
  class: "connection-input",
@@ -538,18 +538,18 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
538
538
  }, null, 544), [
539
539
  [
540
540
  P,
541
- h.value.projectId,
541
+ y.value.projectId,
542
542
  void 0,
543
543
  { trim: !0 }
544
544
  ]
545
545
  ])
546
- ])) : S("", !0),
547
- c.value === "new-snowflake" ? (r(), y(V, { key: 2 }, [
546
+ ])) : g("", !0),
547
+ c.value === "new-snowflake" ? (r(), h(V, { key: 2 }, [
548
548
  o("div", We, [
549
- i[23] || (i[23] = o("label", { for: "snowflake-username" }, "Username", -1)),
549
+ l[23] || (l[23] = o("label", { for: "snowflake-username" }, "Username", -1)),
550
550
  T(o("input", {
551
551
  type: "text",
552
- "onUpdate:modelValue": i[8] || (i[8] = (C) => h.value.username = C),
552
+ "onUpdate:modelValue": l[8] || (l[8] = (C) => y.value.username = C),
553
553
  id: "snowflake-username",
554
554
  placeholder: "Snowflake Username",
555
555
  class: "connection-input",
@@ -557,17 +557,17 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
557
557
  }, null, 544), [
558
558
  [
559
559
  P,
560
- h.value.username,
560
+ y.value.username,
561
561
  void 0,
562
562
  { trim: !0 }
563
563
  ]
564
564
  ])
565
565
  ]),
566
566
  o("div", Ge, [
567
- i[24] || (i[24] = o("label", { for: "snowflake-account" }, "Account", -1)),
567
+ l[24] || (l[24] = o("label", { for: "snowflake-account" }, "Account", -1)),
568
568
  T(o("input", {
569
569
  type: "text",
570
- "onUpdate:modelValue": i[9] || (i[9] = (C) => h.value.account = C),
570
+ "onUpdate:modelValue": l[9] || (l[9] = (C) => y.value.account = C),
571
571
  id: "snowflake-account",
572
572
  placeholder: "Snowflake Account",
573
573
  class: "connection-input",
@@ -575,17 +575,17 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
575
575
  }, null, 544), [
576
576
  [
577
577
  P,
578
- h.value.account,
578
+ y.value.account,
579
579
  void 0,
580
580
  { trim: !0 }
581
581
  ]
582
582
  ])
583
583
  ]),
584
584
  o("div", Qe, [
585
- i[25] || (i[25] = o("label", { for: "snowflake-ssh-private-key" }, "Private Key", -1)),
585
+ l[25] || (l[25] = o("label", { for: "snowflake-ssh-private-key" }, "Private Key", -1)),
586
586
  T(o("input", {
587
587
  type: "text",
588
- "onUpdate:modelValue": i[10] || (i[10] = (C) => h.value.sshPrivateKey = C),
588
+ "onUpdate:modelValue": l[10] || (l[10] = (C) => y.value.sshPrivateKey = C),
589
589
  id: "snowflake-ssh-private-key",
590
590
  placeholder: "Private Key",
591
591
  class: "connection-input",
@@ -593,13 +593,13 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
593
593
  }, null, 544), [
594
594
  [
595
595
  P,
596
- h.value.sshPrivateKey,
596
+ y.value.sshPrivateKey,
597
597
  void 0,
598
598
  { trim: !0 }
599
599
  ]
600
600
  ])
601
601
  ])
602
- ], 64)) : S("", !0)
602
+ ], 64)) : g("", !0)
603
603
  ]),
604
604
  o("div", Xe, [
605
605
  o("button", {
@@ -610,7 +610,7 @@ const Le = /* @__PURE__ */ F(Ce, [["render", Ke], ["__scopeId", "data-v-a71c2207
610
610
  }, K(w.value ? "Imported!" : "Import"), 9, Ye)
611
611
  ])
612
612
  ], 512)
613
- ])) : S("", !0);
613
+ ])) : g("", !0);
614
614
  }
615
615
  }), xe = /* @__PURE__ */ F(Ze, [["__scopeId", "data-v-f89b7efa"]]), et = {
616
616
  name: "DashboardCreatorIcon",
@@ -652,7 +652,7 @@ function tt(e, t, s, n, v, b) {
652
652
  }, {
653
653
  default: k(() => [
654
654
  o("span", {
655
- onClick: t[0] || (t[0] = B((...p) => n.createDashboard && n.createDashboard(...p), ["stop"])),
655
+ onClick: t[0] || (t[0] = _((...p) => n.createDashboard && n.createDashboard(...p), ["stop"])),
656
656
  class: "dashboard-creator-icon"
657
657
  }, [...t[1] || (t[1] = [
658
658
  o("i", { class: "mdi mdi-table-plus" }, null, -1)
@@ -741,18 +741,18 @@ function ct(e, t, s, n, v, b) {
741
741
  o("i", { class: "mdi mdi-view-dashboard node-icon" }, null, -1)
742
742
  ])]),
743
743
  _: 1
744
- })) : S("", !0)
744
+ })) : g("", !0)
745
745
  ]),
746
746
  name: k(() => {
747
747
  var a, m;
748
748
  return [
749
749
  H(K(s.item.label) + " ", 1),
750
- s.item.type === "connection" ? (r(), y("span", st, " (" + K((a = n.connectionInfo) != null && a.model ? (m = n.connectionInfo) == null ? void 0 : m.model : "No Model Set") + ") ", 1)) : S("", !0)
750
+ s.item.type === "connection" ? (r(), h("span", st, " (" + K((a = n.connectionInfo) != null && a.model ? (m = n.connectionInfo) == null ? void 0 : m.model : "No Model Set") + ") ", 1)) : g("", !0)
751
751
  ];
752
752
  }),
753
753
  "extra-content": k(() => [
754
754
  o("div", at, [
755
- s.item.type === "connection" ? (r(), y(V, { key: 0 }, [
755
+ s.item.type === "connection" ? (r(), h(V, { key: 0 }, [
756
756
  o("span", it, [
757
757
  N(p, {
758
758
  connection: s.item.label,
@@ -760,8 +760,8 @@ function ct(e, t, s, n, v, b) {
760
760
  }, null, 8, ["connection"])
761
761
  ]),
762
762
  N(c, { status: n.connectionStatus }, null, 8, ["status"])
763
- ], 64)) : S("", !0),
764
- s.item.type === "dashboard" ? (r(), y(V, { key: 1 }, [
763
+ ], 64)) : g("", !0),
764
+ s.item.type === "dashboard" ? (r(), h(V, { key: 1 }, [
765
765
  N(d, {
766
766
  content: "Clone Dashboard",
767
767
  position: "left"
@@ -769,7 +769,7 @@ function ct(e, t, s, n, v, b) {
769
769
  default: k(() => [
770
770
  o("span", {
771
771
  class: "clone-btn hover-icon",
772
- onClick: t[0] || (t[0] = B((...a) => b.handleClone && b.handleClone(...a), ["stop"])),
772
+ onClick: t[0] || (t[0] = _((...a) => b.handleClone && b.handleClone(...a), ["stop"])),
773
773
  "data-testid": `clone-dashboard-${s.item.label}`
774
774
  }, [...t[4] || (t[4] = [
775
775
  o("i", { class: "mdi mdi-content-copy" }, null, -1)
@@ -784,7 +784,7 @@ function ct(e, t, s, n, v, b) {
784
784
  default: k(() => [
785
785
  o("span", {
786
786
  class: "remove-btn hover-icon",
787
- onClick: t[1] || (t[1] = B((...a) => b.handleDelete && b.handleDelete(...a), ["stop"])),
787
+ onClick: t[1] || (t[1] = _((...a) => b.handleDelete && b.handleDelete(...a), ["stop"])),
788
788
  "data-testid": `delete-dashboard-${s.item.label}`
789
789
  }, [...t[5] || (t[5] = [
790
790
  o("i", { class: "mdi mdi-trash-can-outline" }, null, -1)
@@ -792,11 +792,11 @@ function ct(e, t, s, n, v, b) {
792
792
  ]),
793
793
  _: 1
794
794
  })
795
- ], 64)) : S("", !0)
795
+ ], 64)) : g("", !0)
796
796
  ])
797
797
  ]),
798
798
  _: 1
799
- }, 8, ["item-id", "name", "indent", "is-selected", "is-collapsible", "is-collapsed", "onClick", "onToggle"])) : (r(), y("div", {
799
+ }, 8, ["item-id", "name", "indent", "is-selected", "is-collapsible", "is-collapsed", "onClick", "onToggle"])) : (r(), h("div", {
800
800
  key: 1,
801
801
  "data-testid": `dashboard-list-id-${s.item.key}`,
802
802
  class: "creator-item",
@@ -857,9 +857,9 @@ const vt = {
857
857
  const e = A("dashboardStore"), t = A("connectionStore"), s = A("saveDashboards");
858
858
  if (!e || !t || !s)
859
859
  throw new Error("Dashboard or connection store is not provided!");
860
- const n = g({}), v = g(!1), b = g(!1), d = (u) => {
860
+ const n = S({}), v = S(!1), b = S(!1), d = (u) => {
861
861
  n.value[u] === void 0 && (n.value[u] = !1), n.value[u] = !n.value[u];
862
- }, p = q("dashboard") || "";
862
+ }, p = B("dashboard") || "";
863
863
  x(() => {
864
864
  if (Object.values(e.dashboards).forEach((u) => {
865
865
  let a = `s-${u.storage}`, m = `c-${u.storage}-${u.connection}`;
@@ -911,7 +911,7 @@ const vt = {
911
911
  SidebarList: Z,
912
912
  LoadingButton: oe
913
913
  }
914
- }, pt = { class: "button-container" }, bt = ["data-testid"], yt = { class: "confirmation-dialog" }, ht = { class: "dialog-actions" };
914
+ }, pt = { class: "button-container" }, bt = ["data-testid"], ht = { class: "confirmation-dialog" }, yt = { class: "dialog-actions" };
915
915
  function ft(e, t, s, n, v, b) {
916
916
  const d = D("dashboard-creator-inline"), p = D("dashboard-import-popup"), c = D("dashboard-list-item"), u = D("sidebar-list");
917
917
  return r(), L(u, { title: "Dashboards" }, {
@@ -938,7 +938,7 @@ function ft(e, t, s, n, v, b) {
938
938
  }, null, 8, ["isOpen"])
939
939
  ]),
940
940
  default: k(() => [
941
- (r(!0), y(V, null, J(n.contentList, (a) => (r(), L(c, {
941
+ (r(!0), h(V, null, J(n.contentList, (a) => (r(), L(c, {
942
942
  key: a.key,
943
943
  item: a,
944
944
  "is-active": s.activeDashboardKey === a.id,
@@ -946,15 +946,15 @@ function ft(e, t, s, n, v, b) {
946
946
  onClick: (m) => b.clickAction(a),
947
947
  onDelete: b.showDeleteConfirmation
948
948
  }, null, 8, ["item", "is-active", "is-collapsed", "onClick", "onDelete"]))), 128)),
949
- v.showDeleteConfirmationState ? (r(), y("div", {
949
+ v.showDeleteConfirmationState ? (r(), h("div", {
950
950
  key: 0,
951
951
  class: "confirmation-overlay",
952
- onClick: t[6] || (t[6] = B((...a) => b.cancelDelete && b.cancelDelete(...a), ["self"]))
952
+ onClick: t[6] || (t[6] = _((...a) => b.cancelDelete && b.cancelDelete(...a), ["self"]))
953
953
  }, [
954
- o("div", yt, [
954
+ o("div", ht, [
955
955
  t[7] || (t[7] = o("h3", null, "Confirm Deletion", -1)),
956
956
  t[8] || (t[8] = o("p", null, "Are you sure you want to delete this dashboard? Contents cannot be recovered.", -1)),
957
- o("div", ht, [
957
+ o("div", yt, [
958
958
  o("button", {
959
959
  class: "cancel-btn",
960
960
  "data-testid": "cancel-dashboard-deletion",
@@ -967,7 +967,7 @@ function ft(e, t, s, n, v, b) {
967
967
  }, " Delete ")
968
968
  ])
969
969
  ])
970
- ])) : S("", !0)
970
+ ])) : g("", !0)
971
971
  ]),
972
972
  _: 1
973
973
  });
@@ -1021,21 +1021,21 @@ const gt = /* @__PURE__ */ F(vt, [["render", ft], ["__scopeId", "data-v-311270bc
1021
1021
  onToggle: d
1022
1022
  }, {
1023
1023
  icon: k(() => [
1024
- e.item.type === "root" ? (r(), y("i", St)) : e.item.type === "engine" ? (r(), y("span", kt, [
1024
+ e.item.type === "root" ? (r(), h("i", St)) : e.item.type === "engine" ? (r(), h("span", kt, [
1025
1025
  N(be, {
1026
1026
  "connection-type": e.item.label
1027
1027
  }, null, 8, ["connection-type"])
1028
- ])) : S("", !0)
1028
+ ])) : g("", !0)
1029
1029
  ]),
1030
1030
  "extra-content": k(() => {
1031
1031
  var j;
1032
1032
  return [
1033
- e.item.type === "model" ? (r(), y("span", Ct, [
1034
- (r(!0), y(V, null, J(((j = e.item.model) == null ? void 0 : j.tags) || [], (h) => (r(), y("span", {
1035
- key: h,
1033
+ e.item.type === "model" ? (r(), h("span", Ct, [
1034
+ (r(!0), h(V, null, J(((j = e.item.model) == null ? void 0 : j.tags) || [], (y) => (r(), h("span", {
1035
+ key: y,
1036
1036
  class: "tag"
1037
- }, K(h), 1))), 128))
1038
- ])) : e.item.type === "engine" ? (r(), y("span", Dt)) : e.item.type === "root" ? (r(), y("span", wt, [
1037
+ }, K(y), 1))), 128))
1038
+ ])) : e.item.type === "engine" ? (r(), h("span", Dt)) : e.item.type === "root" ? (r(), h("span", wt, [
1039
1039
  e.item.store && !c(e.item.store) ? (r(), L(Q, {
1040
1040
  key: 0,
1041
1041
  content: "Remove Store",
@@ -1044,21 +1044,21 @@ const gt = /* @__PURE__ */ F(vt, [["render", ft], ["__scopeId", "data-v-311270bc
1044
1044
  default: k(() => [
1045
1045
  o("span", {
1046
1046
  class: "remove-btn hover-icon",
1047
- onClick: f[0] || (f[0] = B((h) => n("delete-store", e.item.store), ["stop"])),
1047
+ onClick: f[0] || (f[0] = _((y) => n("delete-store", e.item.store), ["stop"])),
1048
1048
  "data-testid": `delete-store-${e.item.store.id}`
1049
1049
  }, [...f[1] || (f[1] = [
1050
1050
  o("i", { class: "mdi mdi-trash-can-outline" }, null, -1)
1051
1051
  ])], 8, Mt)
1052
1052
  ]),
1053
1053
  _: 1
1054
- })) : S("", !0),
1054
+ })) : g("", !0),
1055
1055
  e.item.store ? (r(), L(se, {
1056
1056
  key: 1,
1057
1057
  status: u(e.item.store),
1058
1058
  message: a(e.item.store),
1059
1059
  "test-name": e.item.store.id
1060
- }, null, 8, ["status", "message", "test-name"])) : S("", !0)
1061
- ])) : S("", !0)
1060
+ }, null, 8, ["status", "message", "test-name"])) : g("", !0)
1061
+ ])) : g("", !0)
1062
1062
  ];
1063
1063
  }),
1064
1064
  _: 1
@@ -1078,7 +1078,7 @@ const gt = /* @__PURE__ */ F(vt, [["render", ft], ["__scopeId", "data-v-311270bc
1078
1078
  },
1079
1079
  emits: ["close", "add"],
1080
1080
  setup(e, { emit: t }) {
1081
- const s = g("generic"), n = g(""), v = g(""), b = g(""), d = g(""), p = g("main"), c = g(null);
1081
+ const s = S("generic"), n = S(""), v = S(""), b = S(""), d = S(""), p = S("main"), c = S(null);
1082
1082
  return le(
1083
1083
  () => e.show,
1084
1084
  (a) => {
@@ -1135,7 +1135,7 @@ const gt = /* @__PURE__ */ F(vt, [["render", ft], ["__scopeId", "data-v-311270bc
1135
1135
  "data-testid": "add-store-error"
1136
1136
  }, Pt = { class: "dialog-actions" }, Ot = ["disabled"];
1137
1137
  function Rt(e, t, s, n, v, b) {
1138
- return s.show ? (r(), y("div", {
1138
+ return s.show ? (r(), h("div", {
1139
1139
  key: 0,
1140
1140
  class: "confirmation-overlay",
1141
1141
  onClick: t[10] || (t[10] = (d) => e.$emit("close"))
@@ -1143,12 +1143,12 @@ function Rt(e, t, s, n, v, b) {
1143
1143
  o("div", {
1144
1144
  class: "confirmation-dialog",
1145
1145
  "data-testid": "add-store-modal",
1146
- onClick: t[9] || (t[9] = B(() => {
1146
+ onClick: t[9] || (t[9] = _(() => {
1147
1147
  }, ["stop"]))
1148
1148
  }, [
1149
1149
  t[20] || (t[20] = o("h3", null, "Add Model Store", -1)),
1150
1150
  o("form", {
1151
- onSubmit: t[8] || (t[8] = B((...d) => n.handleSubmit && n.handleSubmit(...d), ["prevent"]))
1151
+ onSubmit: t[8] || (t[8] = _((...d) => n.handleSubmit && n.handleSubmit(...d), ["prevent"]))
1152
1152
  }, [
1153
1153
  o("div", Kt, [
1154
1154
  t[12] || (t[12] = o("label", null, [
@@ -1165,7 +1165,7 @@ function Rt(e, t, s, n, v, b) {
1165
1165
  [te, n.storeType]
1166
1166
  ])
1167
1167
  ]),
1168
- n.storeType === "generic" ? (r(), y(V, { key: 0 }, [
1168
+ n.storeType === "generic" ? (r(), h(V, { key: 0 }, [
1169
1169
  o("div", Lt, [
1170
1170
  t[13] || (t[13] = o("label", null, [
1171
1171
  H("Store Name: "),
@@ -1197,8 +1197,8 @@ function Rt(e, t, s, n, v, b) {
1197
1197
  ]),
1198
1198
  t[15] || (t[15] = o("small", null, "URL should serve an index.json file at /index.json", -1))
1199
1199
  ])
1200
- ], 64)) : S("", !0),
1201
- n.storeType === "github" ? (r(), y(V, { key: 1 }, [
1200
+ ], 64)) : g("", !0),
1201
+ n.storeType === "github" ? (r(), h(V, { key: 1 }, [
1202
1202
  o("div", Nt, [
1203
1203
  t[16] || (t[16] = o("label", null, [
1204
1204
  H("Display Name: "),
@@ -1259,8 +1259,8 @@ function Rt(e, t, s, n, v, b) {
1259
1259
  [P, n.branch]
1260
1260
  ])
1261
1261
  ])
1262
- ], 64)) : S("", !0),
1263
- n.error ? (r(), y("div", Ut, K(n.error), 1)) : S("", !0),
1262
+ ], 64)) : g("", !0),
1263
+ n.error ? (r(), h("div", Ut, K(n.error), 1)) : g("", !0),
1264
1264
  o("div", Pt, [
1265
1265
  o("button", {
1266
1266
  type: "button",
@@ -1277,9 +1277,9 @@ function Rt(e, t, s, n, v, b) {
1277
1277
  ])
1278
1278
  ], 32)
1279
1279
  ])
1280
- ])) : S("", !0);
1280
+ ])) : g("", !0);
1281
1281
  }
1282
- const _t = /* @__PURE__ */ F(Tt, [["render", Rt], ["__scopeId", "data-v-9b0c5261"]]), qt = (e = {}, t = [], s = {}) => {
1282
+ const qt = /* @__PURE__ */ F(Tt, [["render", Rt], ["__scopeId", "data-v-9b0c5261"]]), Bt = (e = {}, t = [], s = {}) => {
1283
1283
  const n = [];
1284
1284
  return t.forEach((v) => {
1285
1285
  const b = v.id, d = v.name, p = {
@@ -1322,25 +1322,25 @@ const _t = /* @__PURE__ */ F(Tt, [["render", Rt], ["__scopeId", "data-v-9b0c5261
1322
1322
  });
1323
1323
  }
1324
1324
  }), n;
1325
- }, Bt = X({
1325
+ }, _t = X({
1326
1326
  name: "CommunityModelList",
1327
1327
  setup() {
1328
- const e = ae(), t = ne(), s = g({}), n = t.activeCommunityModelKey.value || "", v = (M) => {
1329
- const l = M.split("+");
1330
- if (l.length > 0 && (s.value[l[0]] = !1, l.length > 1)) {
1331
- const $ = `${l[0]}+${l[1]}`;
1328
+ const e = ae(), t = ne(), s = S({}), n = t.activeCommunityModelKey.value || "", v = (M) => {
1329
+ const i = M.split("+");
1330
+ if (i.length > 0 && (s.value[i[0]] = !1, i.length > 1)) {
1331
+ const $ = `${i[0]}+${i[1]}`;
1332
1332
  s.value[$] = !1;
1333
1333
  }
1334
1334
  };
1335
1335
  for (const M of e.stores)
1336
1336
  s.value[M.id] = !0;
1337
1337
  n ? v(n) : e.stores.length > 0 && (s.value[e.stores[0].id] = !1);
1338
- const b = g(null), d = g(!1), p = g(null), c = async (M) => {
1338
+ const b = S(null), d = S(!1), p = S(null), c = async (M) => {
1339
1339
  b.value = null;
1340
1340
  try {
1341
1341
  await e.addStore(M), e.closeAddStoreModal();
1342
- } catch (l) {
1343
- b.value = l instanceof Error ? l.message : "Failed to add store";
1342
+ } catch (i) {
1343
+ b.value = i instanceof Error ? i.message : "Failed to add store";
1344
1344
  }
1345
1345
  }, u = (M) => {
1346
1346
  p.value = M, d.value = !0;
@@ -1348,13 +1348,13 @@ const _t = /* @__PURE__ */ F(Tt, [["render", Rt], ["__scopeId", "data-v-9b0c5261
1348
1348
  d.value = !1, p.value = null;
1349
1349
  }, m = () => {
1350
1350
  p.value && e.removeStore(p.value.id), d.value = !1, p.value = null;
1351
- }, f = (M, l, $) => {
1352
- t.openTab("community-models", M.name, l), console.log("Selected model:", M.name, "from root:", $);
1353
- }, j = (M, l, $) => {
1354
- t.openTab("community-models", null, l);
1355
- }, h = (M, l, $) => {
1356
- s.value[l] = !s.value[l];
1357
- }, O = G(() => qt(
1351
+ }, f = (M, i, $) => {
1352
+ t.openTab("community-models", M.name, i), console.log("Selected model:", M.name, "from root:", $);
1353
+ }, j = (M, i, $) => {
1354
+ t.openTab("community-models", null, i);
1355
+ }, y = (M, i, $) => {
1356
+ s.value[i] = !s.value[i];
1357
+ }, O = G(() => Bt(
1358
1358
  s.value,
1359
1359
  e.stores,
1360
1360
  e.filesByStore
@@ -1372,7 +1372,7 @@ const _t = /* @__PURE__ */ F(Tt, [["render", Rt], ["__scopeId", "data-v-9b0c5261
1372
1372
  showDeleteConfirmationState: d,
1373
1373
  handleModelSelected: f,
1374
1374
  handleItemClick: j,
1375
- handleItemToggle: h,
1375
+ handleItemToggle: y,
1376
1376
  collapsed: s,
1377
1377
  displayTree: O
1378
1378
  };
@@ -1380,7 +1380,7 @@ const _t = /* @__PURE__ */ F(Tt, [["render", Rt], ["__scopeId", "data-v-9b0c5261
1380
1380
  components: {
1381
1381
  SidebarList: Z,
1382
1382
  CommunityModelListItem: It,
1383
- AddStoreModal: _t
1383
+ AddStoreModal: qt
1384
1384
  }
1385
1385
  }), Ft = { class: "button-container" }, Ht = ["disabled"], Jt = ["disabled"], zt = {
1386
1386
  key: 0,
@@ -1402,8 +1402,8 @@ function Yt(e, t, s, n, v, b) {
1402
1402
  ])
1403
1403
  ]),
1404
1404
  default: k(() => [
1405
- e.communityStore.hasErrors ? (r(), y("div", zt, [
1406
- (r(!0), y(V, null, J(e.communityStore.errorList, (u) => (r(), y("div", {
1405
+ e.communityStore.hasErrors ? (r(), h("div", zt, [
1406
+ (r(!0), h(V, null, J(e.communityStore.errorList, (u) => (r(), h("div", {
1407
1407
  key: u.root,
1408
1408
  class: "error-item"
1409
1409
  }, [
@@ -1413,8 +1413,8 @@ function Yt(e, t, s, n, v, b) {
1413
1413
  class: "clear-error"
1414
1414
  }, "×", 8, Gt)
1415
1415
  ]))), 128))
1416
- ])) : S("", !0),
1417
- (r(!0), y(V, null, J(e.displayTree, (u) => (r(), L(d, {
1416
+ ])) : g("", !0),
1417
+ (r(!0), h(V, null, J(e.displayTree, (u) => (r(), L(d, {
1418
1418
  key: u.key,
1419
1419
  item: u,
1420
1420
  "is-collapsed": e.collapsed[u.key],
@@ -1430,10 +1430,10 @@ function Yt(e, t, s, n, v, b) {
1430
1430
  onClose: t[2] || (t[2] = (u) => e.communityStore.closeAddStoreModal()),
1431
1431
  onAdd: e.handleAddStoreSubmit
1432
1432
  }, null, 8, ["show", "loading", "onAdd"]),
1433
- e.showDeleteConfirmationState ? (r(), y("div", {
1433
+ e.showDeleteConfirmationState ? (r(), h("div", {
1434
1434
  key: 1,
1435
1435
  class: "confirmation-overlay",
1436
- onClick: t[5] || (t[5] = B((...u) => e.cancelDeleteStore && e.cancelDeleteStore(...u), ["self"]))
1436
+ onClick: t[5] || (t[5] = _((...u) => e.cancelDeleteStore && e.cancelDeleteStore(...u), ["self"]))
1437
1437
  }, [
1438
1438
  o("div", Qt, [
1439
1439
  t[6] || (t[6] = o("h3", null, "Confirm Store Removal", -1)),
@@ -1451,41 +1451,41 @@ function Yt(e, t, s, n, v, b) {
1451
1451
  }, " Remove ")
1452
1452
  ])
1453
1453
  ])
1454
- ])) : S("", !0)
1454
+ ])) : g("", !0)
1455
1455
  ]),
1456
1456
  _: 1
1457
1457
  });
1458
1458
  }
1459
- const Zt = /* @__PURE__ */ F(Bt, [["render", Yt], ["__scopeId", "data-v-abc5c56b"]]), xt = X({
1459
+ const Zt = /* @__PURE__ */ F(_t, [["render", Yt], ["__scopeId", "data-v-abc5c56b"]]), xt = X({
1460
1460
  name: "Sidebar",
1461
1461
  props: {
1462
1462
  active: {
1463
1463
  type: String,
1464
- default: q("screen")
1464
+ default: B("screen")
1465
1465
  },
1466
1466
  activeEditor: {
1467
1467
  type: String,
1468
- default: q("editor")
1468
+ default: B("editor")
1469
1469
  },
1470
1470
  activeModelKey: {
1471
1471
  type: String,
1472
- default: q("model")
1472
+ default: B("model")
1473
1473
  },
1474
1474
  activeDocumentationKey: {
1475
1475
  type: String,
1476
- default: q("documentationKey")
1476
+ default: B("documentationKey")
1477
1477
  },
1478
1478
  activeConnectionKey: {
1479
1479
  type: String,
1480
- default: q("connection")
1480
+ default: B("connection")
1481
1481
  },
1482
1482
  activeLLMKey: {
1483
1483
  type: String,
1484
- default: q("llm")
1484
+ default: B("llm")
1485
1485
  },
1486
1486
  activeDashboardKey: {
1487
1487
  type: String,
1488
- default: q("dashboard")
1488
+ default: B("dashboard")
1489
1489
  },
1490
1490
  containerWidth: {
1491
1491
  type: Number,
@@ -1493,7 +1493,7 @@ const Zt = /* @__PURE__ */ F(Bt, [["render", Yt], ["__scopeId", "data-v-abc5c56b
1493
1493
  }
1494
1494
  },
1495
1495
  setup() {
1496
- const e = g(!1), t = g(null);
1496
+ const e = S(!1), t = S(null);
1497
1497
  return {
1498
1498
  isSaving: e,
1499
1499
  previousUnSaved: t
@@ -1561,20 +1561,24 @@ const Zt = /* @__PURE__ */ F(Bt, [["render", Yt], ["__scopeId", "data-v-abc5c56b
1561
1561
  isMobile: s,
1562
1562
  unSaved: v,
1563
1563
  saveAll: n,
1564
- notMobile: !s
1564
+ notMobile: !s,
1565
+ contentCollapsed: !1
1565
1566
  };
1566
1567
  },
1567
1568
  components: {
1568
1569
  EditorList: ve,
1569
- ConnectionList: he,
1570
+ ConnectionList: ye,
1570
1571
  Tooltip: Q,
1571
1572
  TutorialSidebar: ke,
1572
1573
  ModelSidebar: Le,
1573
- LLMConnectionList: ye,
1574
+ LLMConnectionList: he,
1574
1575
  DashboardList: gt,
1575
1576
  CommunityModelList: Zt
1576
1577
  },
1577
1578
  watch: {
1579
+ contentCollapsed(e) {
1580
+ this.$emit("content-collapsed", e);
1581
+ },
1578
1582
  unSaved: {
1579
1583
  handler(e, t) {
1580
1584
  t > 0 && e === 0 && !this.isSaving && this.triggerSaveAnimation(), this.previousUnSaved = e;
@@ -1594,7 +1598,14 @@ const Zt = /* @__PURE__ */ F(Bt, [["render", Yt], ["__scopeId", "data-v-abc5c56b
1594
1598
  }, 500);
1595
1599
  },
1596
1600
  selectItem(e) {
1597
- this.$emit("screen-selected", e);
1601
+ if (this.isMobile) {
1602
+ this.$emit("screen-selected", e);
1603
+ return;
1604
+ }
1605
+ e === this.active ? this.contentCollapsed = !this.contentCollapsed : (this.contentCollapsed = !1, this.$emit("screen-selected", e));
1606
+ },
1607
+ toggleCollapse() {
1608
+ this.contentCollapsed = !this.contentCollapsed;
1598
1609
  },
1599
1610
  editorSelected(e) {
1600
1611
  this.$emit("editor-selected", e);
@@ -1643,121 +1654,131 @@ const Zt = /* @__PURE__ */ F(Bt, [["render", Yt], ["__scopeId", "data-v-abc5c56b
1643
1654
  }), eo = { class: "sidebar-container" }, to = {
1644
1655
  class: "sidebar-icons",
1645
1656
  "data-testid": "sidebar-icons"
1646
- }, oo = { class: "trilogy-icon" }, no = { class: "trilogy-icon-wrapper" }, so = ["src"], ao = ["title"], io = {
1647
- key: 0,
1648
- class: "sidebar-divider"
1649
- }, lo = ["onClick", "data-testid"], ro = ["onClick", "href", "data-testid"], co = ["data-testid"], uo = {
1657
+ }, oo = { class: "trilogy-icon" }, no = { class: "trilogy-icon-wrapper" }, so = ["src"], ao = ["title"], io = ["title"], lo = {
1650
1658
  key: 1,
1651
1659
  class: "sidebar-divider"
1652
- }, mo = ["onClick", "data-testid"], vo = ["onClick", "href", "data-testid"], po = ["data-testid"];
1653
- function bo(e, t, s, n, v, b) {
1654
- var h, O, M;
1660
+ }, ro = ["onClick", "data-testid"], co = ["onClick", "href", "data-testid"], uo = ["data-testid"], mo = {
1661
+ key: 2,
1662
+ class: "sidebar-divider"
1663
+ }, vo = ["onClick", "data-testid"], po = ["onClick", "href", "data-testid"], bo = ["data-testid"];
1664
+ function ho(e, t, s, n, v, b) {
1665
+ var y, O, M;
1655
1666
  const d = D("tooltip"), p = D("EditorList"), c = D("ConnectionList"), u = D("LLMConnectionList"), a = D("ModelSidebar"), m = D("TutorialSidebar"), f = D("DashboardList"), j = D("CommunityModelList");
1656
- return r(), y("div", eo, [
1667
+ return r(), h("div", eo, [
1657
1668
  o("div", to, [
1658
1669
  o("div", oo, [
1659
1670
  o("div", no, [
1660
1671
  N(d, {
1661
- content: e.unSaved ? `Save ${e.unSaved} ${(((h = e.unSaved) == null ? void 0 : h.valueOf()) || 0) > 1 ? "changes" : "change"}` : "All changes saved!"
1672
+ content: e.unSaved ? `Save ${e.unSaved} ${(((y = e.unSaved) == null ? void 0 : y.valueOf()) || 0) > 1 ? "changes" : "change"}` : "All changes saved!"
1662
1673
  }, {
1663
1674
  default: k(() => [
1664
1675
  o("img", {
1665
1676
  class: U(["trilogy-icon", { spinning: e.isSaving }]),
1666
- onClick: t[0] || (t[0] = (...l) => e.handleSave && e.handleSave(...l)),
1677
+ onClick: t[0] || (t[0] = (...i) => e.handleSave && e.handleSave(...i)),
1667
1678
  src: e.trilogyIcon,
1668
1679
  "data-testid": "trilogy-icon"
1669
1680
  }, null, 10, so)
1670
1681
  ]),
1671
1682
  _: 1
1672
1683
  }, 8, ["content"]),
1673
- (((O = e.unSaved) == null ? void 0 : O.valueOf()) || 0) > 0 ? (r(), y("div", {
1684
+ (((O = e.unSaved) == null ? void 0 : O.valueOf()) || 0) > 0 ? (r(), h("div", {
1674
1685
  key: 0,
1675
1686
  class: "unsaved-badge",
1676
1687
  title: `${e.unSaved} unsaved ${(((M = e.unSaved) == null ? void 0 : M.valueOf()) || 0) > 1 ? "changes" : "change"}`
1677
- }, K(e.unSaved), 9, ao)) : S("", !0)
1688
+ }, K(e.unSaved), 9, ao)) : g("", !0)
1678
1689
  ])
1679
1690
  ]),
1680
- t[9] || (t[9] = o("div", { class: "trilogy-icon-padding" }, null, -1)),
1681
- e.isMobile ? S("", !0) : (r(), y("div", io)),
1682
- (r(!0), y(V, null, J(e.sidebarItems, (l, $) => (r(), y("div", {
1683
- key: l.name,
1684
- class: U(["sidebar-icon", { selected: e.active == l.screen, "sidebar-icon-margin": !e.isMobile }]),
1685
- onClick: (w) => e.selectItem(l.screen),
1686
- "data-testid": `sidebar-icon-${l.screen}`
1691
+ t[10] || (t[10] = o("div", { class: "trilogy-icon-padding" }, null, -1)),
1692
+ e.isMobile ? g("", !0) : (r(), h("div", {
1693
+ key: 0,
1694
+ class: "sidebar-collapse-btn",
1695
+ onClick: t[1] || (t[1] = (...i) => e.toggleCollapse && e.toggleCollapse(...i)),
1696
+ title: e.contentCollapsed ? "Expand sidebar" : "Collapse sidebar"
1697
+ }, [
1698
+ o("i", {
1699
+ class: U(e.contentCollapsed ? "mdi mdi-chevron-right" : "mdi mdi-chevron-left")
1700
+ }, null, 2)
1701
+ ], 8, io)),
1702
+ e.isMobile ? g("", !0) : (r(), h("div", lo)),
1703
+ (r(!0), h(V, null, J(e.sidebarItems, (i, $) => (r(), h("div", {
1704
+ key: i.name,
1705
+ class: U(["sidebar-icon", { selected: e.active == i.screen, "sidebar-icon-margin": !e.isMobile }]),
1706
+ onClick: (w) => e.selectItem(i.screen),
1707
+ "data-testid": `sidebar-icon-${i.screen}`
1687
1708
  }, [
1688
- e.isMobile ? (r(), y(V, { key: 1 }, [
1709
+ e.isMobile ? (r(), h(V, { key: 1 }, [
1689
1710
  o("i", {
1690
- class: U(l.icon),
1691
- "data-testid": `sidebar-link-${l.screen}`
1692
- }, null, 10, co),
1693
- o("div", null, K(l.tooltip), 1)
1711
+ class: U(i.icon),
1712
+ "data-testid": `sidebar-link-${i.screen}`
1713
+ }, null, 10, uo),
1714
+ o("div", null, K(i.tooltip), 1)
1694
1715
  ], 64)) : (r(), L(d, {
1695
1716
  key: 0,
1696
- content: l.tooltip
1717
+ content: i.tooltip
1697
1718
  }, {
1698
1719
  default: k(() => [
1699
1720
  o("a", {
1700
- onClick: B((w) => e.selectItem(l.screen), ["prevent"]),
1701
- href: e.getUrl(l.screen),
1721
+ onClick: _((w) => e.selectItem(i.screen), ["prevent", "stop"]),
1722
+ href: e.getUrl(i.screen),
1702
1723
  target: "_blank",
1703
- "data-testid": `sidebar-link-${l.screen}`
1724
+ "data-testid": `sidebar-link-${i.screen}`
1704
1725
  }, [
1705
1726
  o("i", {
1706
- class: U(l.icon)
1727
+ class: U(i.icon)
1707
1728
  }, null, 2)
1708
- ], 8, ro)
1729
+ ], 8, co)
1709
1730
  ]),
1710
1731
  _: 2
1711
1732
  }, 1032, ["content"]))
1712
- ], 10, lo))), 128)),
1713
- e.isMobile ? S("", !0) : (r(), y("div", uo)),
1714
- (r(!0), y(V, null, J(e.sidebarFeatureItems, (l, $) => (r(), y("div", {
1715
- key: l.name,
1716
- class: U(["sidebar-icon", { selected: e.active == l.screen, "sidebar-icon-margin": !e.isMobile }]),
1717
- onClick: (w) => e.selectItem(l.screen),
1718
- "data-testid": `sidebar-icon-${l.screen}`
1733
+ ], 10, ro))), 128)),
1734
+ e.isMobile ? g("", !0) : (r(), h("div", mo)),
1735
+ (r(!0), h(V, null, J(e.sidebarFeatureItems, (i, $) => (r(), h("div", {
1736
+ key: i.name,
1737
+ class: U(["sidebar-icon", { selected: e.active == i.screen, "sidebar-icon-margin": !e.isMobile }]),
1738
+ onClick: (w) => e.selectItem(i.screen),
1739
+ "data-testid": `sidebar-icon-${i.screen}`
1719
1740
  }, [
1720
- e.isMobile ? (r(), y(V, { key: 1 }, [
1741
+ e.isMobile ? (r(), h(V, { key: 1 }, [
1721
1742
  o("i", {
1722
- class: U(l.icon),
1723
- "data-testid": `sidebar-link-${l.screen}`
1724
- }, null, 10, po),
1725
- o("div", null, K(l.tooltip), 1)
1743
+ class: U(i.icon),
1744
+ "data-testid": `sidebar-link-${i.screen}`
1745
+ }, null, 10, bo),
1746
+ o("div", null, K(i.tooltip), 1)
1726
1747
  ], 64)) : (r(), L(d, {
1727
1748
  key: 0,
1728
- content: l.tooltip
1749
+ content: i.tooltip
1729
1750
  }, {
1730
1751
  default: k(() => [
1731
1752
  o("a", {
1732
- onClick: B((w) => e.selectItem(l.screen), ["prevent"]),
1733
- href: e.getUrl(l.screen),
1753
+ onClick: _((w) => e.selectItem(i.screen), ["prevent", "stop"]),
1754
+ href: e.getUrl(i.screen),
1734
1755
  target: "_blank",
1735
- "data-testid": `sidebar-link-${l.screen}`
1756
+ "data-testid": `sidebar-link-${i.screen}`
1736
1757
  }, [
1737
1758
  o("i", {
1738
- class: U(l.icon)
1759
+ class: U(i.icon)
1739
1760
  }, null, 2)
1740
- ], 8, vo)
1761
+ ], 8, po)
1741
1762
  ]),
1742
1763
  _: 2
1743
1764
  }, 1032, ["content"]))
1744
- ], 10, mo))), 128)),
1765
+ ], 10, vo))), 128)),
1745
1766
  o("div", {
1746
1767
  class: U(["sidebar-bottom-icons", { "sidebar-bottom-icons-mobile": e.isMobile }])
1747
1768
  }, [
1748
1769
  o("div", {
1749
1770
  class: U(["sidebar-icon", { selected: e.active == "settings", "sidebar-icon-margin": !e.isMobile }]),
1750
- onClick: t[1] || (t[1] = (l) => e.selectItem("settings")),
1771
+ onClick: t[2] || (t[2] = (i) => e.selectItem("settings")),
1751
1772
  "data-testid": "sidebar-icon-settings"
1752
1773
  }, [
1753
- e.isMobile ? (r(), y(V, { key: 1 }, [
1754
- t[4] || (t[4] = o("i", { class: "mdi mdi-cog-outline" }, null, -1)),
1755
- t[5] || (t[5] = o("div", null, "Settings", -1))
1774
+ e.isMobile ? (r(), h(V, { key: 1 }, [
1775
+ t[5] || (t[5] = o("i", { class: "mdi mdi-cog-outline" }, null, -1)),
1776
+ t[6] || (t[6] = o("div", null, "Settings", -1))
1756
1777
  ], 64)) : (r(), L(d, {
1757
1778
  key: 0,
1758
1779
  content: "Settings"
1759
1780
  }, {
1760
- default: k(() => [...t[3] || (t[3] = [
1781
+ default: k(() => [...t[4] || (t[4] = [
1761
1782
  o("i", { class: "mdi mdi-cog-outline" }, null, -1)
1762
1783
  ])]),
1763
1784
  _: 1
@@ -1766,16 +1787,16 @@ function bo(e, t, s, n, v, b) {
1766
1787
  o("div", {
1767
1788
  class: U(["sidebar-icon", { selected: e.active == "profile", "sidebar-icon-margin": !e.isMobile }]),
1768
1789
  "data-testid": "sidebar-icon-profile",
1769
- onClick: t[2] || (t[2] = (l) => e.selectItem("profile"))
1790
+ onClick: t[3] || (t[3] = (i) => e.selectItem("profile"))
1770
1791
  }, [
1771
- e.isMobile ? (r(), y(V, { key: 1 }, [
1772
- t[7] || (t[7] = o("i", { class: "mdi mdi-account-outline" }, null, -1)),
1773
- t[8] || (t[8] = o("div", null, "Profile", -1))
1792
+ e.isMobile ? (r(), h(V, { key: 1 }, [
1793
+ t[8] || (t[8] = o("i", { class: "mdi mdi-account-outline" }, null, -1)),
1794
+ t[9] || (t[9] = o("div", null, "Profile", -1))
1774
1795
  ], 64)) : (r(), L(d, {
1775
1796
  key: 0,
1776
1797
  content: "Profile"
1777
1798
  }, {
1778
- default: k(() => [...t[6] || (t[6] = [
1799
+ default: k(() => [...t[7] || (t[7] = [
1779
1800
  o("i", { class: "mdi mdi-account-outline" }, null, -1)
1780
1801
  ])]),
1781
1802
  _: 1
@@ -1784,8 +1805,8 @@ function bo(e, t, s, n, v, b) {
1784
1805
  ], 2)
1785
1806
  ]),
1786
1807
  o("div", {
1787
- class: "sidebar-content",
1788
- style: de({ width: e.containerWidth - 40 + "px" })
1808
+ class: U(["sidebar-content", { "sidebar-content-collapsed": e.contentCollapsed && !e.isMobile }]),
1809
+ style: de(e.contentCollapsed && !e.isMobile ? {} : { width: e.containerWidth - 40 + "px" })
1789
1810
  }, [
1790
1811
  T(N(p, {
1791
1812
  activeEditor: e.activeEditor,
@@ -1832,10 +1853,10 @@ function bo(e, t, s, n, v, b) {
1832
1853
  T(N(j, null, null, 512), [
1833
1854
  [W, e.active === "community-models"]
1834
1855
  ])
1835
- ], 4)
1856
+ ], 6)
1836
1857
  ]);
1837
1858
  }
1838
- const So = /* @__PURE__ */ F(xt, [["render", bo], ["__scopeId", "data-v-9b956f89"]]);
1859
+ const ko = /* @__PURE__ */ F(xt, [["render", ho], ["__scopeId", "data-v-1c35bb00"]]);
1839
1860
  export {
1840
- So as default
1861
+ ko as default
1841
1862
  };