studiograph 1.3.48-next.70 → 1.3.48-next.71

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 (50) hide show
  1. package/dist/server/yjs-manager.d.ts +16 -0
  2. package/dist/server/yjs-manager.js +61 -0
  3. package/dist/server/yjs-manager.js.map +1 -1
  4. package/dist/web/_app/immutable/chunks/{BeWIUnUi.js → 65m6PIpa.js} +1 -1
  5. package/dist/web/_app/immutable/chunks/{DXdnDlyC.js → 9goCdhdY.js} +1 -1
  6. package/dist/web/_app/immutable/chunks/{BU7t5ia_.js → BCb4DW-d.js} +1 -1
  7. package/dist/web/_app/immutable/chunks/{Cv5Hj3YU.js → BJtqPLP5.js} +1 -1
  8. package/dist/web/_app/immutable/chunks/{OWjCOHik.js → BLCTxobU.js} +1 -1
  9. package/dist/web/_app/immutable/chunks/{DJISVnci.js → Bcv5zM1V.js} +1 -1
  10. package/dist/web/_app/immutable/chunks/{sxDNE3MZ2.js → BoElAr8s2.js} +2 -2
  11. package/dist/web/_app/immutable/chunks/C99Bty6-.js +1 -0
  12. package/dist/web/_app/immutable/chunks/CGWca4QC.js +1 -0
  13. package/dist/web/_app/immutable/chunks/{B_VnBNlr.js → CShPVqpx.js} +1 -1
  14. package/dist/web/_app/immutable/chunks/{CTtZAPVR.js → CU2cdpGt.js} +1 -1
  15. package/dist/web/_app/immutable/chunks/{Coixlqoq.js → CWySm6mN.js} +2 -2
  16. package/dist/web/_app/immutable/chunks/{BiNERN9e2.js → CX0QbXWB2.js} +1 -1
  17. package/dist/web/_app/immutable/chunks/{oVL-aj_U.js → Cs0sIohr.js} +1 -1
  18. package/dist/web/_app/immutable/chunks/{Co13Ndr8.js → Ct3ejINp.js} +1 -1
  19. package/dist/web/_app/immutable/chunks/{i5cRunNe.js → CvkSSg1_.js} +1 -1
  20. package/dist/web/_app/immutable/chunks/{BHW5jniX2.js → D2WAVtip2.js} +1 -1
  21. package/dist/web/_app/immutable/chunks/{DZLcvEbC.js → DHSa2BQk.js} +4 -4
  22. package/dist/web/_app/immutable/chunks/{DmVlLzFv.js → DJnljLsI.js} +1 -1
  23. package/dist/web/_app/immutable/chunks/{CL6DpRrD.js → DdgELRG0.js} +1 -1
  24. package/dist/web/_app/immutable/chunks/{CnU7fTcN.js → DfWEuw2V.js} +1 -1
  25. package/dist/web/_app/immutable/chunks/{M6u8oHdF.js → DtYtRWtq.js} +1 -1
  26. package/dist/web/_app/immutable/chunks/{DuRnRwDt2.js → Fo_vbG9l2.js} +1 -1
  27. package/dist/web/_app/immutable/chunks/{DIGLeEh5.js → eUQpz9aE.js} +1 -1
  28. package/dist/web/_app/immutable/chunks/{Bclyxjub.js → knmiFnFp.js} +1 -1
  29. package/dist/web/_app/immutable/entry/{app.5b6-a76y.js → app.DwyPzi5d.js} +2 -2
  30. package/dist/web/_app/immutable/entry/start.DcL819Ch.js +1 -0
  31. package/dist/web/_app/immutable/nodes/{0.C4fOstvw.js → 0.DUrHssin.js} +2 -2
  32. package/dist/web/_app/immutable/nodes/{1.CrmLyrct.js → 1.EBhuCtof.js} +1 -1
  33. package/dist/web/_app/immutable/nodes/{10.BOJtfPxD.js → 10.Y1SLtKOd.js} +1 -1
  34. package/dist/web/_app/immutable/nodes/{11.PfagH3UB.js → 11.sZB3Z4ZO.js} +1 -1
  35. package/dist/web/_app/immutable/nodes/{12.CAotobWg.js → 12.DXg1cOm3.js} +1 -1
  36. package/dist/web/_app/immutable/nodes/{13.PxKueByG.js → 13.DEUcXDPn.js} +1 -1
  37. package/dist/web/_app/immutable/nodes/{2.OwOCicdf.js → 2.BnlHhZS-.js} +4 -4
  38. package/dist/web/_app/immutable/nodes/{3.OOKbt4mR.js → 3.5XIQAd8g.js} +1 -1
  39. package/dist/web/_app/immutable/nodes/{4.C_6O9adI.js → 4.DqojhbKY.js} +3 -3
  40. package/dist/web/_app/immutable/nodes/{5.sbv6lG7c.js → 5.DJ-rzWc9.js} +1 -1
  41. package/dist/web/_app/immutable/nodes/{6.Bh3XbOSa.js → 6.MANBwo59.js} +1 -1
  42. package/dist/web/_app/immutable/nodes/{7.DHpksbSw.js → 7.DnBlYwt-.js} +1 -1
  43. package/dist/web/_app/immutable/nodes/{8.DeghLj6r.js → 8.Bl66lg-n.js} +1 -1
  44. package/dist/web/_app/immutable/nodes/{9.BQ5uhUtW.js → 9.B4fmIwKw.js} +1 -1
  45. package/dist/web/_app/version.json +1 -1
  46. package/dist/web/index.html +13 -13
  47. package/package.json +1 -1
  48. package/dist/web/_app/immutable/chunks/B5ryOn5p.js +0 -1
  49. package/dist/web/_app/immutable/chunks/C0nP7w-L.js +0 -1
  50. package/dist/web/_app/immutable/entry/start.DJrcrIXK.js +0 -1
@@ -36,6 +36,22 @@ export declare class YjsManager {
36
36
  * independent insertions of the same bytes, and both survive the merge.
37
37
  */
38
38
  private getOrCreate;
39
+ /**
40
+ * Send a JSON `doc_ready` notice to every connected client of `docName`,
41
+ * carrying the authoritative ytext length the client should match before
42
+ * unlocking its editor. This is the seed-success heartbeat the client
43
+ * uses to confirm its local apply actually landed — without it, a frame
44
+ * that arrived but failed to decode (e.g. Safari/WebKit fragmentation
45
+ * issue) would silently leave the editor unlocked on an empty Y.Doc and
46
+ * the next keystroke + autosave would overwrite the disk file.
47
+ */
48
+ private broadcastDocReady;
49
+ /**
50
+ * Send `doc_ready` to a single client. Used in addClient when the entry
51
+ * is already seeded — the new joiner needs the heartbeat to unlock its
52
+ * editor without waiting for the next state transition.
53
+ */
54
+ private sendDocReadyToClient;
39
55
  /**
40
56
  * If the Y.Doc is still empty (no client sync has populated it), load
41
57
  * content from disk and mark the entry as seeded. Broadcast the seeded
@@ -81,6 +81,45 @@ export class YjsManager {
81
81
  this.docs.set(docName, entry);
82
82
  return entry;
83
83
  }
84
+ /**
85
+ * Send a JSON `doc_ready` notice to every connected client of `docName`,
86
+ * carrying the authoritative ytext length the client should match before
87
+ * unlocking its editor. This is the seed-success heartbeat the client
88
+ * uses to confirm its local apply actually landed — without it, a frame
89
+ * that arrived but failed to decode (e.g. Safari/WebKit fragmentation
90
+ * issue) would silently leave the editor unlocked on an empty Y.Doc and
91
+ * the next keystroke + autosave would overwrite the disk file.
92
+ */
93
+ broadcastDocReady(docName) {
94
+ const entry = this.docs.get(docName);
95
+ if (!entry)
96
+ return;
97
+ const expectedLength = entry.ydoc.getText('content').length;
98
+ const msg = JSON.stringify({ type: 'doc_ready', docName, expectedLength });
99
+ for (const client of entry.clients) {
100
+ if (client.readyState !== 1)
101
+ continue;
102
+ try {
103
+ client.send(msg);
104
+ }
105
+ catch { /* non-fatal */ }
106
+ }
107
+ }
108
+ /**
109
+ * Send `doc_ready` to a single client. Used in addClient when the entry
110
+ * is already seeded — the new joiner needs the heartbeat to unlock its
111
+ * editor without waiting for the next state transition.
112
+ */
113
+ sendDocReadyToClient(docName, ws) {
114
+ const entry = this.docs.get(docName);
115
+ if (!entry || ws.readyState !== 1)
116
+ return;
117
+ const expectedLength = entry.ydoc.getText('content').length;
118
+ try {
119
+ ws.send(JSON.stringify({ type: 'doc_ready', docName, expectedLength }));
120
+ }
121
+ catch { /* non-fatal */ }
122
+ }
84
123
  /**
85
124
  * If the Y.Doc is still empty (no client sync has populated it), load
86
125
  * content from disk and mark the entry as seeded. Broadcast the seeded
@@ -97,6 +136,7 @@ export class YjsManager {
97
136
  if (ytext.length > 0) {
98
137
  // A client sync populated the doc during the wait — nothing to do.
99
138
  entry.seeded = true;
139
+ this.broadcastDocReady(docName);
100
140
  return;
101
141
  }
102
142
  const parsed = this.parseDocName(docName);
@@ -115,6 +155,7 @@ export class YjsManager {
115
155
  }
116
156
  if (diskContent.length === 0) {
117
157
  entry.seeded = true;
158
+ this.broadcastDocReady(docName);
118
159
  return;
119
160
  }
120
161
  entry.ydoc.transact(() => {
@@ -132,6 +173,11 @@ export class YjsManager {
132
173
  continue;
133
174
  this.sendToClient(client, docName, MSG_SYNC, payload);
134
175
  }
176
+ // Heartbeat: tell clients the authoritative length so they only unlock
177
+ // their editor if their local apply matches. Without this, a client that
178
+ // received the broadcast but failed to decode it (Safari fragmentation
179
+ // bug) would unlock on an empty Y.Doc and overwrite disk on next save.
180
+ this.broadcastDocReady(docName);
135
181
  }
136
182
  /**
137
183
  * Add a client to a document. Sends initial sync state to the client.
@@ -175,6 +221,14 @@ export class YjsManager {
175
221
  const update = awarenessProtocol.encodeAwarenessUpdate(entry.awareness, clients);
176
222
  this.sendToClient(ws, docName, MSG_AWARENESS, update);
177
223
  }
224
+ // If we're joining an already-seeded doc (a peer is already editing),
225
+ // the new client needs the doc_ready heartbeat right away so it can
226
+ // unlock once the sync-step-2 we just sent lands locally. Without this,
227
+ // a late joiner would stay readonly forever waiting for a transition
228
+ // that already happened.
229
+ if (entry.seeded) {
230
+ this.sendDocReadyToClient(docName, ws);
231
+ }
178
232
  // Deferred disk seed. If the client has its own state (reconnect
179
233
  // after server restart), their sync-step-2 will populate the Y.Doc
180
234
  // before this timer fires and maybeSeedFromDisk becomes a no-op. If
@@ -289,6 +343,9 @@ export class YjsManager {
289
343
  clearTimeout(entry.seedTimer);
290
344
  entry.seedTimer = undefined;
291
345
  }
346
+ // Tell every client (including the sender) the new authoritative
347
+ // length so their editors can unlock on a verified seed.
348
+ this.broadcastDocReady(docName);
292
349
  }
293
350
  // If the sync produced a response, send it back to the sender
294
351
  if (encoding.length(encoder) > 0) {
@@ -402,6 +459,10 @@ export class YjsManager {
402
459
  if (diskContent.length > 0)
403
460
  ytext.insert(0, diskContent);
404
461
  }, 'server-sync-disk');
462
+ // Refresh clients' expected-length heartbeat so editors that were
463
+ // locked due to a previous failed seed can unlock once they receive
464
+ // the broadcast update.
465
+ this.broadcastDocReady(docName);
405
466
  }
406
467
  /**
407
468
  * Destroy all Y.Docs (server shutdown).
@@ -1 +1 @@
1
- {"version":3,"file":"yjs-manager.js","sourceRoot":"","sources":["../../src/server/yjs-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yjs-manager.js","sourceRoot":"","sources":["../../src/server/yjs-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- import{$ as e,A as t,B as n,F as r,G as i,H as a,L as o,Mt as s,N as c,Q as l,R as u,Rt as d,U as f,W as p,X as m,Y as h,_ as g,_t as _,a as v,at as y,ct as ee,d as b,dt as x,ft as te,gt as S,h as C,it as w,j as T,jt as E,k as ne,o as D,ot as O,pt as k,rt as A,u as j,ut as M,v as re,x as ie,xt as N,yt as P,z as F,zt as I}from"./DV-Vb89U.js";import"./t62M88qj.js";import{r as L}from"./CTFOXiYo.js";import{t as R}from"./DXdnDlyC.js";import{t as z}from"./CTtZAPVR.js";import"./CIgq6kOW.js";import{t as ae}from"./DJnMBCXJ2.js";import{t as oe}from"./CKPqZArH2.js";import{t as se}from"./CPzlB_o22.js";import{t as ce}from"./D5VdX2NC.js";import{t as B}from"./D00taIEV.js";import"./CSWuNPeq.js";import{n as le,t as ue}from"./r4OgPVQH.js";import{n as de,r as V,t as fe}from"./DPXpm86N.js";import{t as pe}from"./BMP3eBt2.js";import{t as me}from"./Cnec3S_f.js";import{t as he}from"./BHZnNKnO.js";import{t as ge}from"./Map9Pi83.js";import{t as _e}from"./DnnlU7By.js";import{t as ve}from"./BZHVPKHl.js";import{agentOverlay as H}from"./D9JB6yk7.js";var U=n(`<title> </title>`),W=n(`<svg><!><path d="M13 21 26.17 21 23.59 23.59 25 25 30 20 25 15 23.59 16.41 26.17 19 13 19 13 21z"></path><path d="M22,14V10a1,1,0,0,0-.29-.71l-7-7A1,1,0,0,0,14,2H4A2,2,0,0,0,2,4V28a2,2,0,0,0,2,2H20a2,2,0,0,0,2-2V26H20v2H4V4h8v6a2,2,0,0,0,2,2h6v2Zm-8-4V4.41L19.59,10Z"></path></svg>`);function ye(e,t){let n=v(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),i=v(n,[`size`,`title`]);s(t,!1);let a=S(),l=S(),u=D(t,`size`,8,16),f=D(t,`title`,8,void 0);A(()=>(h(n),h(f())),()=>{_(a,n[`aria-label`]||n[`aria-labelledby`]||f())}),A(()=>(m(a),h(n)),()=>{_(l,{"aria-hidden":m(a)?void 0:!0,role:m(a)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),w(),j();var p=W();C(p,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:u(),height:u(),...m(l),...i}));var g=x(p),ee=e=>{var t=U(),n=x(t,!0);I(t),y(()=>r(n,f())),o(e,t)};c(g,e=>{f()&&e(ee)}),d(2),I(p),o(e,p),E()}var G=n(`<title> </title>`),K=n(`<svg><!><path d="M18 10H20V12H18z"></path><path d="M12 10H14V12H12z"></path><path d="M26,20H21V18h1a2.0023,2.0023,0,0,0,2-2V12h2V10H24V8a2.0023,2.0023,0,0,0-2-2H20V2H18V6H14V2H12V6H10A2.0023,2.0023,0,0,0,8,8v2H6v2H8v4a2.0023,2.0023,0,0,0,2,2h1v2H6a2.0023,2.0023,0,0,0-2,2v8H6V22H26v8h2V22A2.0023,2.0023,0,0,0,26,20ZM10,8H22v8H10Zm3,10h6v2H13Z"></path></svg>`);function q(e,t){let n=v(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),i=v(n,[`size`,`title`]);s(t,!1);let a=S(),l=S(),u=D(t,`size`,8,16),f=D(t,`title`,8,void 0);A(()=>(h(n),h(f())),()=>{_(a,n[`aria-label`]||n[`aria-labelledby`]||f())}),A(()=>(m(a),h(n)),()=>{_(l,{"aria-hidden":m(a)?void 0:!0,role:m(a)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),w(),j();var p=K();C(p,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:u(),height:u(),...m(l),...i}));var g=x(p),ee=e=>{var t=G(),n=x(t,!0);I(t),y(()=>r(n,f())),o(e,t)};c(g,e=>{f()&&e(ee)}),d(3),I(p),o(e,p),E()}var be=F(`<div class="empty-state svelte-2kfnqv"><div class="seed-prompts svelte-2kfnqv"></div></div>`),xe=F(`<div class="user-bubble svelte-2kfnqv"> </div>`),Se=F(`<span class="tool-call svelte-2kfnqv"> </span>`),Ce=F(`<div class="tool-calls svelte-2kfnqv"></div>`),we=F(`<div class="agent-text prose svelte-2kfnqv"></div>`),Te=F(`<div class="agent-text prose svelte-2kfnqv"></div>`),Ee=F(`<span class="streaming-dot svelte-2kfnqv"></span>`),De=F(`<div class="msg-actions svelte-2kfnqv"><button class="copy-btn svelte-2kfnqv" title="Copy"><!></button> <button class="copy-btn svelte-2kfnqv" title="Export as Markdown"><!></button></div>`),Oe=F(`<div class="agent-content svelte-2kfnqv"><!> <!></div>`),ke=F(`<div class="message-group svelte-2kfnqv"><!></div>`),Ae=F(`<div class="follow-up-prompts svelte-2kfnqv"></div>`),je=F(`<!> <!>`,1),Me=F(`<div class="agent-panel svelte-2kfnqv"><div class="agent-header svelte-2kfnqv"><button class="agent-header-btn svelte-2kfnqv" aria-label="New session" title="New session"><!></button> <div class="agent-session-nav svelte-2kfnqv"><button class="agent-header-btn svelte-2kfnqv" aria-label="Previous session" title="Previous session"><!></button> <span class="agent-session-label svelte-2kfnqv"> </span> <button class="agent-header-btn svelte-2kfnqv" aria-label="Next session" title="Next session"><!></button></div> <button class="agent-header-btn svelte-2kfnqv" aria-label="Close" title="Close"><!></button></div> <div class="agent-messages svelte-2kfnqv"><!></div> <div class="scroll-to-bottom-wrapper svelte-2kfnqv"><button aria-label="Scroll to latest"><!></button></div> <div class="agent-input-area svelte-2kfnqv"><div class="context-chip svelte-2kfnqv"> </div> <div class="text-input svelte-2kfnqv"><textarea class="input-field svelte-2kfnqv" rows="1"></textarea> <!></div></div></div>`),J=F(`<div class="agent-overlay-root svelte-2kfnqv"><button><!></button> <!></div>`);function Ne(n,f){s(f,!0);let h=N(()=>H.open),v=P(null),S=P(!0),C=P(void 0),w=P(void 0),D=P(void 0),A=new WeakSet,j=N(()=>z.draftInput);function F(e){z.draftInput=e}let U=N(()=>(z.messages.length,z.activeSessionId,z.getSessions())),W=N(()=>m(U).findIndex(e=>e.active)),G=N(()=>m(W)>=0&&m(W)<m(U).length-1),K=N(()=>m(W)>0),Ne=N(()=>z.messages.length>0);function Pe(e){if(!e)return`New chat`;let t=new Date(e),n=new Date,r=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime(),i=Math.round((r(n)-r(t))/(1440*60*1e3)),a=t.toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`});return i===0?`Today, ${a}`:i===1?`Yesterday, ${a}`:i<7?t.toLocaleDateString(void 0,{weekday:`long`})+`, ${a}`:t.toLocaleDateString(void 0,{month:`short`,day:`numeric`})+`, ${a}`}let Fe=N(()=>m(W)<0||m(U).length===0?`New chat`:Pe(m(U)[m(W)].updatedAt));function Ie(){if(!m(G))return;let e=m(U)[m(W)+1];e&&z.loadSession(e.id)}function Le(){if(!m(K))return;let e=m(U)[m(W)-1];e&&z.loadSession(e.id)}function Re(){z.newSession(),l().then(()=>m(D)?.focus())}let ze=N(()=>{if(R.selectedId&&R.selectedRepo){let e=L.repos.find(e=>e.name===R.selectedRepo);return`${e?.displayName??R.selectedRepo}${e?.personal?` (personal)`:``} / ${le(R.selectedId)?.title??ue(R.selectedId)}`}if(R.selectedRepo){let e=L.repos.find(e=>e.name===R.selectedRepo);return`${e?.displayName??R.selectedRepo}${e?.personal?` (personal)`:``}`}return`Workspace`}),Be={connector_list:[`Listing connectors`,`Listing connectors`],connector_call:[`Calling connector`,`Calling connectors`],create_entity:[`Creating entry`,`Creating entries`],get_entity:[`Reading entry`,`Reading entries`],update_entity:[`Updating entry`,`Updating entries`],delete_entity:[`Deleting entry`,`Deleting entries`],rename_entity:[`Renaming entry`,`Renaming entries`],move_entity:[`Moving entry`,`Moving entries`],transfer_entity:[`Transferring entry`,`Transferring entries`],import_file:[`Importing file`,`Importing files`],search_entities:[`Searching entries`,`Searching entries`],list_entities:[`Listing entries`,`Listing entries`],get_related:[`Finding related entries`,`Finding related entries`],get_backlinks:[`Finding backlinks`,`Finding backlinks`],validate_wikilinks:[`Validating links`,`Validating links`],get_workspace_summary:[`Reading workspace`,`Reading workspace`],list_repos:[`Listing folders`,`Listing folders`],create_folder:[`Creating folder`,`Creating folders`],create_subfolder:[`Creating subfolder`,`Creating subfolders`],rename_folder:[`Renaming folder`,`Renaming folders`],delete_folder:[`Deleting folder`,`Deleting folders`],list_folders:[`Listing folders`,`Listing folders`],query_dataset:[`Querying dataset`,`Querying datasets`],append_rows:[`Appending rows`,`Appending rows`],get_entity_schema:[`Reading schema`,`Reading schemas`],lint_entities:[`Checking entries`,`Checking entries`],find_orphans:[`Finding orphans`,`Finding orphans`],highlight_entities:[`Highlighting entries`,`Highlighting entries`],sync_folder:[`Syncing folder`,`Syncing folders`],sync_workspace:[`Syncing workspace`,`Syncing workspace`],sync_refresh:[`Refreshing from source`,`Refreshing from source`],sync_status:[`Checking sync status`,`Checking sync status`],sync_list_sources:[`Listing sources`,`Listing sources`],sync_setup_source:[`Setting up source`,`Setting up sources`],sync_remove_source:[`Removing source`,`Removing sources`],sync_inspect_connector:[`Inspecting connector`,`Inspecting connectors`],sync_sample_data:[`Sampling data`,`Sampling data`],workspace_commit:[`Committing changes`,`Committing changes`],workspace_reset:[`Resetting workspace`,`Resetting workspace`],workspace_reindex:[`Reindexing`,`Reindexing`],workspace_status:[`Checking status`,`Checking status`],workspace_review:[`Reviewing changes`,`Reviewing changes`],workspace_push:[`Pushing changes`,`Pushing changes`],workspace_pull:[`Pulling changes`,`Pulling changes`],permission_list_users:[`Listing users`,`Listing users`],permission_create_user:[`Creating user`,`Creating users`],permission_delete_user:[`Deleting user`,`Deleting users`],permission_grant_access:[`Granting access`,`Granting access`],permission_revoke_access:[`Revoking access`,`Revoking access`],permission_list_folder_access:[`Listing access`,`Listing access`],read_file:[`Reading file`,`Reading files`],list_directory:[`Listing directory`,`Listing directories`],write_file:[`Writing file`,`Writing files`],load_skill:[`Loading skill`,`Loading skills`],app_install:[`Installing app`,`Installing apps`],app_list:[`Listing apps`,`Listing apps`],deploy_railway:[`Deploying`,`Deploying`],redeploy_railway:[`Redeploying`,`Redeploying`],mark_onboarded:[`Completing onboarding`,`Completing onboarding`],update_workspace_about:[`Updating workspace description`,`Updating workspace description`],reset_conversation:[`Resetting conversation`,`Resetting conversation`]};function Ve(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return[...t.entries()].map(([e,t])=>{let n=Be[e];if(n)return{label:t>1?n[1]:n[0],count:t};let r=e.replace(/_/g,` `);return{label:r.charAt(0).toUpperCase()+r.slice(1),count:t}})}function He(e,t){navigator.clipboard.writeText(t),_(v,e,!0),setTimeout(()=>{m(v)===e&&_(v,null)},2e3)}function Ue(e){let t=new Blob([e],{type:`text/markdown`}),n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=`response.md`,r.click(),URL.revokeObjectURL(n)}let We=N(()=>L.totalEntities<5?[`Interview me about my organization`,`Tell me about your organization`,`What can Studiograph do?`]:[`I have context to add`,`What should I focus on today?`,`Summarize recent activity`,`Help me think through something`]),Ge=N(()=>{let e=z.messages;if(e.length===0||z.streaming)return[];let t=e[e.length-1];return t.role===`agent`?t.suggestions?.length?t.suggestions:R.selectedId?[`Tell me more about this ${R.selectedType??`entry`}`,`What entries are related?`,`I have updates`]:L.totalEntities<10?[`Let's keep building the graph`,`What should I add next?`]:[`Tell me more about that`,`I have context to add`]:[]});O(()=>{m(h)&&z.markSeen()});function Y(){m(w)&&_(S,m(w).scrollHeight-m(w).scrollTop-m(w).clientHeight<40)}function X(e=!1){m(w)&&(e?m(w).scrollTo({top:m(w).scrollHeight,behavior:`smooth`}):m(w).scrollTop=m(w).scrollHeight)}async function Ke(){let e=m(j).trim();!e||z.streaming||(F(``),_(S,!0),z.send(e),await l(),X())}function qe(e){e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),Ke())}function Je(e){_(S,!0),z.send(e),l().then(()=>X())}function Z(){H.toggle()}function Ye(){H.hide()}O(()=>{m(h)&&l().then(()=>{m(D)?.focus(),X()})});function Xe(e){if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`j`){e.preventDefault(),Z();return}e.key===`Escape`&&m(h)&&m(C)?.contains(document.activeElement)&&(e.preventDefault(),Ye())}O(()=>{m(h);let e=m(w);!e||!m(h)||A.has(e)||(A.add(e),l().then(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{e.scrollTop=e.scrollHeight,Y()})})}))}),O(()=>{z.messages.length,m(w),l().then(()=>Y())}),O(()=>{let e=m(w);if(!e)return;let t=new ResizeObserver(()=>Y());return t.observe(e),()=>t.disconnect()}),O(()=>{z.scrollTick,e(()=>m(S))&&X()}),O(()=>{z.forceScroll,_(S,!0),X()}),O(()=>{if(!m(h)||typeof window>`u`||!window.visualViewport)return;let e=window.visualViewport,t=()=>{if(!m(C))return;let t=Math.max(0,window.innerHeight-e.height-e.offsetTop);m(C).style.setProperty(`--keyboard-offset`,`${t}px`)};return e.addEventListener(`resize`,t),e.addEventListener(`scroll`,t),t(),()=>{e.removeEventListener(`resize`,t),e.removeEventListener(`scroll`,t),m(C)?.style.removeProperty(`--keyboard-offset`)}});var Q=J();i(`keydown`,M,Xe);var $=x(Q);q(x($),{size:24}),I($);var Ze=k($,2),Qe=e=>{var n=Me(),s=x(n),l=x(s);se(x(l),{size:14}),I(l);var f=k(l,2),h=x(f);he(x(h),{size:16}),I(h);var E=k(h,2),O=x(E,!0);I(E);var A=k(E,2);oe(x(A),{size:16}),I(A),I(f);var M=k(f,2);ae(x(M),{size:16}),I(M),I(s);var P=k(s,2),L=x(P),le=e=>{var n=be(),i=x(n);t(i,21,()=>m(We),T,(e,t)=>{B(e,{variant:`outline`,class:`seed-prompt`,onclick:()=>Je(m(t)),children:(e,n)=>{d();var i=a();y(e=>r(i,e),[()=>V(m(t))]),o(e,i)},$$slots:{default:!0}})}),I(i),I(n),o(e,n)},ue=e=>{var n=je(),i=te(n);t(i,17,()=>z.messages,T,(e,n,i)=>{var a=ke(),s=x(a),l=e=>{var t=xe(),i=x(t,!0);I(t),y(()=>r(i,m(n).content)),o(e,t)},d=e=>{var a=Oe(),s=x(a),l=e=>{var i=u();t(te(i),17,()=>m(n).segments,T,(e,n)=>{var i=u(),a=te(i),s=e=>{var i=Ce();t(i,21,()=>Ve(m(n).names),T,(e,t)=>{let n=()=>m(t).label;var i=Se(),a=x(i,!0);I(i),y(()=>r(a,n())),o(e,i)}),I(i),o(e,i)},l=e=>{var t=we();ne(t,()=>V(ve.parse(de(fe(m(n).content)))),!0),I(t),o(e,t)};c(a,e=>{m(n).type===`tools`?e(s):m(n).type===`text`&&m(n).content&&e(l,1)}),o(e,i)}),o(e,i)},d=e=>{var t=Te();ne(t,()=>V(ve.parse(de(fe(m(n).content)))),!0),I(t),o(e,t)};c(s,e=>{m(n).segments&&m(n).segments.length>0?e(l):m(n).content&&e(d,1)});var f=k(s,2),h=e=>{o(e,Ee())},g=e=>{var t=De(),r=x(t),a=x(r),s=e=>{ce(e,{size:12})},l=e=>{_e(e,{size:12})};c(a,e=>{m(v)===i?e(s):e(l,-1)}),I(r);var u=k(r,2);ye(x(u),{size:12}),I(u),I(t),p(`click`,r,()=>He(i,m(n).content)),p(`click`,u,()=>Ue(m(n).content)),o(e,t)};c(f,e=>{m(n).streaming?e(h):m(n).content&&e(g,1)}),I(a),o(e,a)};c(s,e=>{m(n).role===`user`?e(l):e(d,-1)}),I(a),o(e,a)});var s=k(i,2),l=e=>{var n=Ae();t(n,21,()=>m(Ge),T,(e,t)=>{B(e,{variant:`outline`,class:`seed-prompt`,onclick:()=>Je(m(t)),children:(e,n)=>{d();var i=a();y(e=>r(i,e),[()=>V(m(t))]),o(e,i)},$$slots:{default:!0}})}),I(n),o(e,n)};c(s,e=>{m(Ge).length>0&&e(l)}),o(e,n)};c(L,e=>{z.messages.length===0?e(le):e(ue,-1)}),I(P),b(P,e=>_(w,e),()=>m(w));var H=k(P,2),U=x(H);let W;ge(x(U),{size:16}),I(U),I(H);var q=k(H,2),J=x(q),Pe=x(J,!0);I(J);var Be=k(J,2),Z=x(Be);ee(Z),b(Z,e=>_(D,e),()=>m(D));var Xe=k(Z,2),Q=e=>{B(e,{variant:`ghost`,size:`icon`,class:`stop-btn send-btn`,onclick:()=>z.stop(),"aria-label":`Stop`,children:(e,t)=>{pe(e,{size:16})},$$slots:{default:!0}})},$=e=>{{let t=N(()=>m(j).trim()?`send-active`:``);B(e,{variant:`ghost`,size:`icon`,get class(){return`send-btn ${m(t)??``}`},onclick:Ke,"aria-label":`Send`,children:(e,t)=>{me(e,{size:14})},$$slots:{default:!0}})}};c(Xe,e=>{z.streaming?e(Q):e($,-1)}),I(Be),I(q),I(n),b(n,e=>_(C,e),()=>m(C)),y(()=>{l.disabled=!m(Ne),h.disabled=!m(G),r(O,m(Fe)),A.disabled=!m(K),g(H,`aria-hidden`,m(S)),W=ie(U,1,`scroll-to-bottom svelte-2kfnqv`,null,W,{"is-hidden":m(S)}),g(U,`tabindex`,m(S)?-1:0),r(Pe,m(ze)),g(Z,`placeholder`,R.selectedId?`Ask about this entry...`:`Ask about your workspace...`),re(Z,m(j))}),p(`click`,l,Re),p(`click`,h,Ie),p(`click`,A,Le),p(`click`,M,Ye),i(`scroll`,P,Y),p(`click`,U,()=>X(!0)),p(`input`,Z,e=>F(e.target.value)),p(`keydown`,Z,qe),o(e,n)};c(Ze,e=>{m(h)&&e(Qe)}),I(Q),y(()=>{ie($,1,`agent-fab ${m(h)?`is-open`:``} ${z.hasUnread&&!m(h)?`has-unread`:``} ${z.streaming?`is-streaming`:``}`,`svelte-2kfnqv`),g($,`aria-label`,m(h)?`Close agent (⌘J)`:`Open agent (⌘J)`),g($,`aria-pressed`,m(h)),g($,`title`,m(h)?`Close agent (⌘J)`:`Open agent (⌘J)`)}),p(`click`,$,Z),o(n,Q),E()}f([`click`,`input`,`keydown`]);export{Ne as default};
1
+ import{$ as e,A as t,B as n,F as r,G as i,H as a,L as o,Mt as s,N as c,Q as l,R as u,Rt as d,U as f,W as p,X as m,Y as h,_ as g,_t as _,a as v,at as y,ct as ee,d as b,dt as x,ft as te,gt as S,h as C,it as w,j as T,jt as E,k as ne,o as D,ot as O,pt as k,rt as A,u as j,ut as M,v as re,x as ie,xt as N,yt as P,z as F,zt as I}from"./DV-Vb89U.js";import"./t62M88qj.js";import{r as L}from"./CTFOXiYo.js";import{t as R}from"./9goCdhdY.js";import{t as z}from"./CU2cdpGt.js";import"./CIgq6kOW.js";import{t as ae}from"./DJnMBCXJ2.js";import{t as oe}from"./CKPqZArH2.js";import{t as se}from"./CPzlB_o22.js";import{t as ce}from"./D5VdX2NC.js";import{t as B}from"./D00taIEV.js";import"./CSWuNPeq.js";import{n as le,t as ue}from"./r4OgPVQH.js";import{n as de,r as V,t as fe}from"./DPXpm86N.js";import{t as pe}from"./BMP3eBt2.js";import{t as me}from"./Cnec3S_f.js";import{t as he}from"./BHZnNKnO.js";import{t as ge}from"./Map9Pi83.js";import{t as _e}from"./DnnlU7By.js";import{t as ve}from"./BZHVPKHl.js";import{agentOverlay as H}from"./D9JB6yk7.js";var U=n(`<title> </title>`),W=n(`<svg><!><path d="M13 21 26.17 21 23.59 23.59 25 25 30 20 25 15 23.59 16.41 26.17 19 13 19 13 21z"></path><path d="M22,14V10a1,1,0,0,0-.29-.71l-7-7A1,1,0,0,0,14,2H4A2,2,0,0,0,2,4V28a2,2,0,0,0,2,2H20a2,2,0,0,0,2-2V26H20v2H4V4h8v6a2,2,0,0,0,2,2h6v2Zm-8-4V4.41L19.59,10Z"></path></svg>`);function ye(e,t){let n=v(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),i=v(n,[`size`,`title`]);s(t,!1);let a=S(),l=S(),u=D(t,`size`,8,16),f=D(t,`title`,8,void 0);A(()=>(h(n),h(f())),()=>{_(a,n[`aria-label`]||n[`aria-labelledby`]||f())}),A(()=>(m(a),h(n)),()=>{_(l,{"aria-hidden":m(a)?void 0:!0,role:m(a)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),w(),j();var p=W();C(p,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:u(),height:u(),...m(l),...i}));var g=x(p),ee=e=>{var t=U(),n=x(t,!0);I(t),y(()=>r(n,f())),o(e,t)};c(g,e=>{f()&&e(ee)}),d(2),I(p),o(e,p),E()}var G=n(`<title> </title>`),K=n(`<svg><!><path d="M18 10H20V12H18z"></path><path d="M12 10H14V12H12z"></path><path d="M26,20H21V18h1a2.0023,2.0023,0,0,0,2-2V12h2V10H24V8a2.0023,2.0023,0,0,0-2-2H20V2H18V6H14V2H12V6H10A2.0023,2.0023,0,0,0,8,8v2H6v2H8v4a2.0023,2.0023,0,0,0,2,2h1v2H6a2.0023,2.0023,0,0,0-2,2v8H6V22H26v8h2V22A2.0023,2.0023,0,0,0,26,20ZM10,8H22v8H10Zm3,10h6v2H13Z"></path></svg>`);function q(e,t){let n=v(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),i=v(n,[`size`,`title`]);s(t,!1);let a=S(),l=S(),u=D(t,`size`,8,16),f=D(t,`title`,8,void 0);A(()=>(h(n),h(f())),()=>{_(a,n[`aria-label`]||n[`aria-labelledby`]||f())}),A(()=>(m(a),h(n)),()=>{_(l,{"aria-hidden":m(a)?void 0:!0,role:m(a)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),w(),j();var p=K();C(p,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:u(),height:u(),...m(l),...i}));var g=x(p),ee=e=>{var t=G(),n=x(t,!0);I(t),y(()=>r(n,f())),o(e,t)};c(g,e=>{f()&&e(ee)}),d(3),I(p),o(e,p),E()}var be=F(`<div class="empty-state svelte-2kfnqv"><div class="seed-prompts svelte-2kfnqv"></div></div>`),xe=F(`<div class="user-bubble svelte-2kfnqv"> </div>`),Se=F(`<span class="tool-call svelte-2kfnqv"> </span>`),Ce=F(`<div class="tool-calls svelte-2kfnqv"></div>`),we=F(`<div class="agent-text prose svelte-2kfnqv"></div>`),Te=F(`<div class="agent-text prose svelte-2kfnqv"></div>`),Ee=F(`<span class="streaming-dot svelte-2kfnqv"></span>`),De=F(`<div class="msg-actions svelte-2kfnqv"><button class="copy-btn svelte-2kfnqv" title="Copy"><!></button> <button class="copy-btn svelte-2kfnqv" title="Export as Markdown"><!></button></div>`),Oe=F(`<div class="agent-content svelte-2kfnqv"><!> <!></div>`),ke=F(`<div class="message-group svelte-2kfnqv"><!></div>`),Ae=F(`<div class="follow-up-prompts svelte-2kfnqv"></div>`),je=F(`<!> <!>`,1),Me=F(`<div class="agent-panel svelte-2kfnqv"><div class="agent-header svelte-2kfnqv"><button class="agent-header-btn svelte-2kfnqv" aria-label="New session" title="New session"><!></button> <div class="agent-session-nav svelte-2kfnqv"><button class="agent-header-btn svelte-2kfnqv" aria-label="Previous session" title="Previous session"><!></button> <span class="agent-session-label svelte-2kfnqv"> </span> <button class="agent-header-btn svelte-2kfnqv" aria-label="Next session" title="Next session"><!></button></div> <button class="agent-header-btn svelte-2kfnqv" aria-label="Close" title="Close"><!></button></div> <div class="agent-messages svelte-2kfnqv"><!></div> <div class="scroll-to-bottom-wrapper svelte-2kfnqv"><button aria-label="Scroll to latest"><!></button></div> <div class="agent-input-area svelte-2kfnqv"><div class="context-chip svelte-2kfnqv"> </div> <div class="text-input svelte-2kfnqv"><textarea class="input-field svelte-2kfnqv" rows="1"></textarea> <!></div></div></div>`),J=F(`<div class="agent-overlay-root svelte-2kfnqv"><button><!></button> <!></div>`);function Ne(n,f){s(f,!0);let h=N(()=>H.open),v=P(null),S=P(!0),C=P(void 0),w=P(void 0),D=P(void 0),A=new WeakSet,j=N(()=>z.draftInput);function F(e){z.draftInput=e}let U=N(()=>(z.messages.length,z.activeSessionId,z.getSessions())),W=N(()=>m(U).findIndex(e=>e.active)),G=N(()=>m(W)>=0&&m(W)<m(U).length-1),K=N(()=>m(W)>0),Ne=N(()=>z.messages.length>0);function Pe(e){if(!e)return`New chat`;let t=new Date(e),n=new Date,r=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime(),i=Math.round((r(n)-r(t))/(1440*60*1e3)),a=t.toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`});return i===0?`Today, ${a}`:i===1?`Yesterday, ${a}`:i<7?t.toLocaleDateString(void 0,{weekday:`long`})+`, ${a}`:t.toLocaleDateString(void 0,{month:`short`,day:`numeric`})+`, ${a}`}let Fe=N(()=>m(W)<0||m(U).length===0?`New chat`:Pe(m(U)[m(W)].updatedAt));function Ie(){if(!m(G))return;let e=m(U)[m(W)+1];e&&z.loadSession(e.id)}function Le(){if(!m(K))return;let e=m(U)[m(W)-1];e&&z.loadSession(e.id)}function Re(){z.newSession(),l().then(()=>m(D)?.focus())}let ze=N(()=>{if(R.selectedId&&R.selectedRepo){let e=L.repos.find(e=>e.name===R.selectedRepo);return`${e?.displayName??R.selectedRepo}${e?.personal?` (personal)`:``} / ${le(R.selectedId)?.title??ue(R.selectedId)}`}if(R.selectedRepo){let e=L.repos.find(e=>e.name===R.selectedRepo);return`${e?.displayName??R.selectedRepo}${e?.personal?` (personal)`:``}`}return`Workspace`}),Be={connector_list:[`Listing connectors`,`Listing connectors`],connector_call:[`Calling connector`,`Calling connectors`],create_entity:[`Creating entry`,`Creating entries`],get_entity:[`Reading entry`,`Reading entries`],update_entity:[`Updating entry`,`Updating entries`],delete_entity:[`Deleting entry`,`Deleting entries`],rename_entity:[`Renaming entry`,`Renaming entries`],move_entity:[`Moving entry`,`Moving entries`],transfer_entity:[`Transferring entry`,`Transferring entries`],import_file:[`Importing file`,`Importing files`],search_entities:[`Searching entries`,`Searching entries`],list_entities:[`Listing entries`,`Listing entries`],get_related:[`Finding related entries`,`Finding related entries`],get_backlinks:[`Finding backlinks`,`Finding backlinks`],validate_wikilinks:[`Validating links`,`Validating links`],get_workspace_summary:[`Reading workspace`,`Reading workspace`],list_repos:[`Listing folders`,`Listing folders`],create_folder:[`Creating folder`,`Creating folders`],create_subfolder:[`Creating subfolder`,`Creating subfolders`],rename_folder:[`Renaming folder`,`Renaming folders`],delete_folder:[`Deleting folder`,`Deleting folders`],list_folders:[`Listing folders`,`Listing folders`],query_dataset:[`Querying dataset`,`Querying datasets`],append_rows:[`Appending rows`,`Appending rows`],get_entity_schema:[`Reading schema`,`Reading schemas`],lint_entities:[`Checking entries`,`Checking entries`],find_orphans:[`Finding orphans`,`Finding orphans`],highlight_entities:[`Highlighting entries`,`Highlighting entries`],sync_folder:[`Syncing folder`,`Syncing folders`],sync_workspace:[`Syncing workspace`,`Syncing workspace`],sync_refresh:[`Refreshing from source`,`Refreshing from source`],sync_status:[`Checking sync status`,`Checking sync status`],sync_list_sources:[`Listing sources`,`Listing sources`],sync_setup_source:[`Setting up source`,`Setting up sources`],sync_remove_source:[`Removing source`,`Removing sources`],sync_inspect_connector:[`Inspecting connector`,`Inspecting connectors`],sync_sample_data:[`Sampling data`,`Sampling data`],workspace_commit:[`Committing changes`,`Committing changes`],workspace_reset:[`Resetting workspace`,`Resetting workspace`],workspace_reindex:[`Reindexing`,`Reindexing`],workspace_status:[`Checking status`,`Checking status`],workspace_review:[`Reviewing changes`,`Reviewing changes`],workspace_push:[`Pushing changes`,`Pushing changes`],workspace_pull:[`Pulling changes`,`Pulling changes`],permission_list_users:[`Listing users`,`Listing users`],permission_create_user:[`Creating user`,`Creating users`],permission_delete_user:[`Deleting user`,`Deleting users`],permission_grant_access:[`Granting access`,`Granting access`],permission_revoke_access:[`Revoking access`,`Revoking access`],permission_list_folder_access:[`Listing access`,`Listing access`],read_file:[`Reading file`,`Reading files`],list_directory:[`Listing directory`,`Listing directories`],write_file:[`Writing file`,`Writing files`],load_skill:[`Loading skill`,`Loading skills`],app_install:[`Installing app`,`Installing apps`],app_list:[`Listing apps`,`Listing apps`],deploy_railway:[`Deploying`,`Deploying`],redeploy_railway:[`Redeploying`,`Redeploying`],mark_onboarded:[`Completing onboarding`,`Completing onboarding`],update_workspace_about:[`Updating workspace description`,`Updating workspace description`],reset_conversation:[`Resetting conversation`,`Resetting conversation`]};function Ve(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return[...t.entries()].map(([e,t])=>{let n=Be[e];if(n)return{label:t>1?n[1]:n[0],count:t};let r=e.replace(/_/g,` `);return{label:r.charAt(0).toUpperCase()+r.slice(1),count:t}})}function He(e,t){navigator.clipboard.writeText(t),_(v,e,!0),setTimeout(()=>{m(v)===e&&_(v,null)},2e3)}function Ue(e){let t=new Blob([e],{type:`text/markdown`}),n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=`response.md`,r.click(),URL.revokeObjectURL(n)}let We=N(()=>L.totalEntities<5?[`Interview me about my organization`,`Tell me about your organization`,`What can Studiograph do?`]:[`I have context to add`,`What should I focus on today?`,`Summarize recent activity`,`Help me think through something`]),Ge=N(()=>{let e=z.messages;if(e.length===0||z.streaming)return[];let t=e[e.length-1];return t.role===`agent`?t.suggestions?.length?t.suggestions:R.selectedId?[`Tell me more about this ${R.selectedType??`entry`}`,`What entries are related?`,`I have updates`]:L.totalEntities<10?[`Let's keep building the graph`,`What should I add next?`]:[`Tell me more about that`,`I have context to add`]:[]});O(()=>{m(h)&&z.markSeen()});function Y(){m(w)&&_(S,m(w).scrollHeight-m(w).scrollTop-m(w).clientHeight<40)}function X(e=!1){m(w)&&(e?m(w).scrollTo({top:m(w).scrollHeight,behavior:`smooth`}):m(w).scrollTop=m(w).scrollHeight)}async function Ke(){let e=m(j).trim();!e||z.streaming||(F(``),_(S,!0),z.send(e),await l(),X())}function qe(e){e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),Ke())}function Je(e){_(S,!0),z.send(e),l().then(()=>X())}function Z(){H.toggle()}function Ye(){H.hide()}O(()=>{m(h)&&l().then(()=>{m(D)?.focus(),X()})});function Xe(e){if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`j`){e.preventDefault(),Z();return}e.key===`Escape`&&m(h)&&m(C)?.contains(document.activeElement)&&(e.preventDefault(),Ye())}O(()=>{m(h);let e=m(w);!e||!m(h)||A.has(e)||(A.add(e),l().then(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{e.scrollTop=e.scrollHeight,Y()})})}))}),O(()=>{z.messages.length,m(w),l().then(()=>Y())}),O(()=>{let e=m(w);if(!e)return;let t=new ResizeObserver(()=>Y());return t.observe(e),()=>t.disconnect()}),O(()=>{z.scrollTick,e(()=>m(S))&&X()}),O(()=>{z.forceScroll,_(S,!0),X()}),O(()=>{if(!m(h)||typeof window>`u`||!window.visualViewport)return;let e=window.visualViewport,t=()=>{if(!m(C))return;let t=Math.max(0,window.innerHeight-e.height-e.offsetTop);m(C).style.setProperty(`--keyboard-offset`,`${t}px`)};return e.addEventListener(`resize`,t),e.addEventListener(`scroll`,t),t(),()=>{e.removeEventListener(`resize`,t),e.removeEventListener(`scroll`,t),m(C)?.style.removeProperty(`--keyboard-offset`)}});var Q=J();i(`keydown`,M,Xe);var $=x(Q);q(x($),{size:24}),I($);var Ze=k($,2),Qe=e=>{var n=Me(),s=x(n),l=x(s);se(x(l),{size:14}),I(l);var f=k(l,2),h=x(f);he(x(h),{size:16}),I(h);var E=k(h,2),O=x(E,!0);I(E);var A=k(E,2);oe(x(A),{size:16}),I(A),I(f);var M=k(f,2);ae(x(M),{size:16}),I(M),I(s);var P=k(s,2),L=x(P),le=e=>{var n=be(),i=x(n);t(i,21,()=>m(We),T,(e,t)=>{B(e,{variant:`outline`,class:`seed-prompt`,onclick:()=>Je(m(t)),children:(e,n)=>{d();var i=a();y(e=>r(i,e),[()=>V(m(t))]),o(e,i)},$$slots:{default:!0}})}),I(i),I(n),o(e,n)},ue=e=>{var n=je(),i=te(n);t(i,17,()=>z.messages,T,(e,n,i)=>{var a=ke(),s=x(a),l=e=>{var t=xe(),i=x(t,!0);I(t),y(()=>r(i,m(n).content)),o(e,t)},d=e=>{var a=Oe(),s=x(a),l=e=>{var i=u();t(te(i),17,()=>m(n).segments,T,(e,n)=>{var i=u(),a=te(i),s=e=>{var i=Ce();t(i,21,()=>Ve(m(n).names),T,(e,t)=>{let n=()=>m(t).label;var i=Se(),a=x(i,!0);I(i),y(()=>r(a,n())),o(e,i)}),I(i),o(e,i)},l=e=>{var t=we();ne(t,()=>V(ve.parse(de(fe(m(n).content)))),!0),I(t),o(e,t)};c(a,e=>{m(n).type===`tools`?e(s):m(n).type===`text`&&m(n).content&&e(l,1)}),o(e,i)}),o(e,i)},d=e=>{var t=Te();ne(t,()=>V(ve.parse(de(fe(m(n).content)))),!0),I(t),o(e,t)};c(s,e=>{m(n).segments&&m(n).segments.length>0?e(l):m(n).content&&e(d,1)});var f=k(s,2),h=e=>{o(e,Ee())},g=e=>{var t=De(),r=x(t),a=x(r),s=e=>{ce(e,{size:12})},l=e=>{_e(e,{size:12})};c(a,e=>{m(v)===i?e(s):e(l,-1)}),I(r);var u=k(r,2);ye(x(u),{size:12}),I(u),I(t),p(`click`,r,()=>He(i,m(n).content)),p(`click`,u,()=>Ue(m(n).content)),o(e,t)};c(f,e=>{m(n).streaming?e(h):m(n).content&&e(g,1)}),I(a),o(e,a)};c(s,e=>{m(n).role===`user`?e(l):e(d,-1)}),I(a),o(e,a)});var s=k(i,2),l=e=>{var n=Ae();t(n,21,()=>m(Ge),T,(e,t)=>{B(e,{variant:`outline`,class:`seed-prompt`,onclick:()=>Je(m(t)),children:(e,n)=>{d();var i=a();y(e=>r(i,e),[()=>V(m(t))]),o(e,i)},$$slots:{default:!0}})}),I(n),o(e,n)};c(s,e=>{m(Ge).length>0&&e(l)}),o(e,n)};c(L,e=>{z.messages.length===0?e(le):e(ue,-1)}),I(P),b(P,e=>_(w,e),()=>m(w));var H=k(P,2),U=x(H);let W;ge(x(U),{size:16}),I(U),I(H);var q=k(H,2),J=x(q),Pe=x(J,!0);I(J);var Be=k(J,2),Z=x(Be);ee(Z),b(Z,e=>_(D,e),()=>m(D));var Xe=k(Z,2),Q=e=>{B(e,{variant:`ghost`,size:`icon`,class:`stop-btn send-btn`,onclick:()=>z.stop(),"aria-label":`Stop`,children:(e,t)=>{pe(e,{size:16})},$$slots:{default:!0}})},$=e=>{{let t=N(()=>m(j).trim()?`send-active`:``);B(e,{variant:`ghost`,size:`icon`,get class(){return`send-btn ${m(t)??``}`},onclick:Ke,"aria-label":`Send`,children:(e,t)=>{me(e,{size:14})},$$slots:{default:!0}})}};c(Xe,e=>{z.streaming?e(Q):e($,-1)}),I(Be),I(q),I(n),b(n,e=>_(C,e),()=>m(C)),y(()=>{l.disabled=!m(Ne),h.disabled=!m(G),r(O,m(Fe)),A.disabled=!m(K),g(H,`aria-hidden`,m(S)),W=ie(U,1,`scroll-to-bottom svelte-2kfnqv`,null,W,{"is-hidden":m(S)}),g(U,`tabindex`,m(S)?-1:0),r(Pe,m(ze)),g(Z,`placeholder`,R.selectedId?`Ask about this entry...`:`Ask about your workspace...`),re(Z,m(j))}),p(`click`,l,Re),p(`click`,h,Ie),p(`click`,A,Le),p(`click`,M,Ye),i(`scroll`,P,Y),p(`click`,U,()=>X(!0)),p(`input`,Z,e=>F(e.target.value)),p(`keydown`,Z,qe),o(e,n)};c(Ze,e=>{m(h)&&e(Qe)}),I(Q),y(()=>{ie($,1,`agent-fab ${m(h)?`is-open`:``} ${z.hasUnread&&!m(h)?`has-unread`:``} ${z.streaming?`is-streaming`:``}`,`svelte-2kfnqv`),g($,`aria-label`,m(h)?`Close agent (⌘J)`:`Open agent (⌘J)`),g($,`aria-pressed`,m(h)),g($,`title`,m(h)?`Close agent (⌘J)`:`Open agent (⌘J)`)}),p(`click`,$,Z),o(n,Q),E()}f([`click`,`input`,`keydown`]);export{Ne as default};
@@ -1 +1 @@
1
- import{X as e,_t as t,yt as n}from"./DV-Vb89U.js";import{r}from"./CL6DpRrD.js";import"./B5ryOn5p.js";import{b as i}from"./-jdP5JqO.js";function a(){let a=n(null),o=n(null),s=n(null),c=n(null),l=n(null),u=n(`entity`),d=n(null),f=n(null),p=n(null),m=n(`team`),h=n(`studiograph`),g=n(!1),_=n(!1);function v(t,n){e(a)&&(e(a)!==t||e(s)!==n)&&i(e(a)).catch(()=>{})}function y(e,n,r,i){v(e,r),t(a,e,!0),t(o,n,!0),t(s,r,!0),t(c,i??null,!0),t(l,null)}function b(n,r=``){e(a)&&e(a)!==n&&i(e(a)).catch(()=>{}),t(a,n,!0),t(o,null),t(s,null),t(c,null),t(l,r,!0)}function x(){t(u,`entity`)}function S(){t(u,`graph`)}function C(e){t(u,`view`),t(d,e,!0)}function w(e,n,r){t(p,e??`profile`,!0),n&&t(m,n,!0),r&&t(h,r,!0)}function T(){t(p,null),typeof window<`u`&&window.location.pathname.startsWith(`/settings`)&&r(`/`)}function E(n,r,i){e(s)===i&&e(a)===n?(t(a,null),t(o,null),t(s,null)):(t(a,n,!0),t(o,r,!0),t(s,i,!0)),t(c,null),t(l,null)}function D(){e(a)&&i(e(a)).catch(()=>{}),t(a,null),t(o,null),t(s,null),t(c,null),t(l,null)}return{get selectedRepo(){return e(a)},get selectedType(){return e(o)},get selectedId(){return e(s)},get selectedSubPath(){return e(c)},get selectedFolderPath(){return e(l)},get activeView(){return e(u)},get entityPath(){return e(a)&&e(o)&&e(s)?`/${e(a)}/${e(o)}/${e(s)}`:null},get hoveredEntityId(){return e(f)},set hoveredEntityId(e){t(f,e,!0)},get settingsPanel(){return e(p)},set settingsPanel(e){t(p,e,!0)},get workspaceTab(){return e(m)},set workspaceTab(e){t(m,e,!0)},get integrationsTab(){return e(h)},set integrationsTab(e){t(h,e,!0)},get hideSidebar(){return e(g)},set hideSidebar(e){t(g,e,!0)},get mobileSidebarOpen(){return e(_)},set mobileSidebarOpen(e){t(_,e,!0)},select:y,selectRepo:b,deselect:D,selectOnGraph:E,showEntity:x,showGraph:S,get activeViewId(){return e(d)},showView:C,showSettings:w,closeSettings:T}}var o=a();export{o as t};
1
+ import{X as e,_t as t,yt as n}from"./DV-Vb89U.js";import{r}from"./DdgELRG0.js";import"./CGWca4QC.js";import{b as i}from"./-jdP5JqO.js";function a(){let a=n(null),o=n(null),s=n(null),c=n(null),l=n(null),u=n(`entity`),d=n(null),f=n(null),p=n(null),m=n(`team`),h=n(`studiograph`),g=n(!1),_=n(!1);function v(t,n){e(a)&&(e(a)!==t||e(s)!==n)&&i(e(a)).catch(()=>{})}function y(e,n,r,i){v(e,r),t(a,e,!0),t(o,n,!0),t(s,r,!0),t(c,i??null,!0),t(l,null)}function b(n,r=``){e(a)&&e(a)!==n&&i(e(a)).catch(()=>{}),t(a,n,!0),t(o,null),t(s,null),t(c,null),t(l,r,!0)}function x(){t(u,`entity`)}function S(){t(u,`graph`)}function C(e){t(u,`view`),t(d,e,!0)}function w(e,n,r){t(p,e??`profile`,!0),n&&t(m,n,!0),r&&t(h,r,!0)}function T(){t(p,null),typeof window<`u`&&window.location.pathname.startsWith(`/settings`)&&r(`/`)}function E(n,r,i){e(s)===i&&e(a)===n?(t(a,null),t(o,null),t(s,null)):(t(a,n,!0),t(o,r,!0),t(s,i,!0)),t(c,null),t(l,null)}function D(){e(a)&&i(e(a)).catch(()=>{}),t(a,null),t(o,null),t(s,null),t(c,null),t(l,null)}return{get selectedRepo(){return e(a)},get selectedType(){return e(o)},get selectedId(){return e(s)},get selectedSubPath(){return e(c)},get selectedFolderPath(){return e(l)},get activeView(){return e(u)},get entityPath(){return e(a)&&e(o)&&e(s)?`/${e(a)}/${e(o)}/${e(s)}`:null},get hoveredEntityId(){return e(f)},set hoveredEntityId(e){t(f,e,!0)},get settingsPanel(){return e(p)},set settingsPanel(e){t(p,e,!0)},get workspaceTab(){return e(m)},set workspaceTab(e){t(m,e,!0)},get integrationsTab(){return e(h)},set integrationsTab(e){t(h,e,!0)},get hideSidebar(){return e(g)},set hideSidebar(e){t(g,e,!0)},get mobileSidebarOpen(){return e(_)},set mobileSidebarOpen(e){t(_,e,!0)},select:y,selectRepo:b,deselect:D,selectOnGraph:E,showEntity:x,showGraph:S,get activeViewId(){return e(d)},showView:C,showSettings:w,closeSettings:T}}var o=a();export{o as t};
@@ -1 +1 @@
1
- import{L as e,Mt as t,U as n,W as r,X as i,_t as a,at as o,bt as s,jt as c,mt as l,x as u,yt as d,z as f}from"./DV-Vb89U.js";import"./t62M88qj.js";import{t as p}from"./Ttel-lK0.js";import{t as m}from"./SJL_oyD4.js";import{t as h}from"./CnU7fTcN.js";function g(){let e=d(null);return{get folder(){return i(e)},open(t){a(e,t,!0)},close(){a(e,null)}}}var _=g(),ee=f(`<div></div>`);function v(n,s){t(s,!0);let l=d(!1),f=0;function p(e){e.preventDefault(),a(l,!0),f=e.clientX,document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,window.addEventListener(`mousemove`,m),window.addEventListener(`mouseup`,h)}function m(e){let t=s.side===`right`?e.clientX-f:f-e.clientX;f=e.clientX,s.onresize(t)}function h(){a(l,!1),document.body.style.cursor=``,document.body.style.userSelect=``,window.removeEventListener(`mousemove`,m),window.removeEventListener(`mouseup`,h)}var g=ee();let _;o(()=>_=u(g,1,`resize-handle svelte-tfh9g9`,null,_,{left:s.side===`left`,right:s.side===`right`,active:i(l)})),r(`mousedown`,g,p),r(`dblclick`,g,function(...e){s.ondblclick?.apply(this,e)}),e(n,g),c()}n([`mousedown`,`dblclick`]);async function y(e,t){let n=new URLSearchParams;t?.before&&n.set(`before`,String(t.before)),t?.limit&&n.set(`limit`,String(t.limit));let r=n.toString(),{messages:i}=await p(`/api/messages/${encodeURIComponent(e)}${r?`?${r}`:``}`);return i}async function te(e,t,n){let r={content:t};n!=null&&(r.replyToMessageId=n);let{message:i}=await p(`/api/messages/${encodeURIComponent(e)}`,{method:`POST`,body:JSON.stringify(r)});return i}async function b(e,t){await p(`/api/messages/${encodeURIComponent(e)}/read`,{method:`POST`,body:JSON.stringify({messageId:t})})}async function x(){return p(`/api/messages/unread`)}async function S(e){let t=new URLSearchParams;e?.before&&t.set(`before`,String(e.before)),e?.limit&&t.set(`limit`,String(e.limit));let n=t.toString(),{messages:r}=await p(`/api/messages/workspace${n?`?${n}`:``}`);return r}async function C(e,t){let n={content:e};t!=null&&(n.replyToMessageId=t);let{message:r}=await p(`/api/messages/workspace`,{method:`POST`,body:JSON.stringify(n)});return r}async function w(e){await p(`/api/messages/workspace/read`,{method:`POST`,body:JSON.stringify({messageId:e})})}async function T(e,t,n,r){return p(`/api/messages/${encodeURIComponent(e)}/capture`,{method:`POST`,body:JSON.stringify({entityType:t,entityId:n,messageId:r})})}async function E(e){let{scope:t,folder:n,repo:r,entityType:i,entityId:a,messageId:o}=e;return p(t===`workspace`?`/api/messages/workspace/undo-capture`:`/api/messages/${encodeURIComponent(n)}/undo-capture`,{method:`POST`,body:JSON.stringify(t===`workspace`?{repo:r,entityType:i,entityId:a,messageId:o}:{entityType:i,entityId:a,messageId:o})})}var D=new Map,O=d(0),k=[],A=!1,j=d(0),M=d(0),N=d(!1),P=null,F=new Map,I=d(l({})),L=d(l(new Set)),R=new Map,z=12e4;function B(e){i(O);let t=D.get(e);return t?[...t].reverse():[]}async function V(e){let t=await y(e,{limit:50});D.set(e,t),F.set(e,t.length===50),s(O)}async function H(e){let t=D.get(e);if(!t||t.length===0)return!1;let n=t[t.length-1],r=await y(e,{before:n.id,limit:50});return r.length>0?(t.push(...r),F.set(e,r.length===50),s(O)):F.set(e,!1),r.length>0}async function U(e,t,n){let r=await te(e,t,n),i=D.get(e);return i?i.some(e=>e.id===r.id)||i.unshift(r):D.set(e,[r]),s(O),r}function W(e,t){let n=D.get(e);n&&(n.some(e=>e.id===t.id)||(n.unshift(t),s(O))),t.role===`agent`&&J(e,!1);let r=m.user?.id??-1;t.userId!==r&&a(I,{...i(I),[e]:(i(I)[e]??0)+1},!0)}async function G(e){let t=D.get(e);if(!t||t.length===0)return;let n=t[0].id;if(await b(e,n),i(I)[e]){let{[e]:t,...n}=i(I);a(I,n,!0)}}async function K(){let{unread:e,workspace:t}=await x();a(I,e,!0),a(M,t,!0)}function q(e){return F.get(e)??!1}function J(e,t){let n=R.get(e);n&&(clearTimeout(n),R.delete(e));let r=new Set(i(L));if(t){r.add(e);let t=setTimeout(()=>{R.delete(e);let t=new Set(i(L));t.delete(e),a(L,t,!0)},z);R.set(e,t)}else r.delete(e);a(L,r,!0)}function Y(e){return i(L),i(L).has(e)}function X(){return i(j),[...k].reverse()}async function Z(){let e=await S({limit:50});k=e,A=e.length===50,s(j)}async function ne(){if(k.length===0)return!1;let e=k[k.length-1],t=await S({before:e.id,limit:50});return t.length>0?(k.push(...t),A=t.length===50,s(j)):A=!1,t.length>0}async function re(e,t){let n=await C(e,t);return k.some(e=>e.id===n.id)||(k.unshift(n),s(j)),n}function Q(e){k.some(t=>t.id===e.id)||(k.unshift(e),s(j)),e.role===`agent`&&$(!1);let t=m.user?.id??-1;e.userId!==t&&a(M,i(M)+1)}async function ie(){if(k.length===0)return;let e=k[0].id;await w(e),a(M,0)}function ae(){return A}function $(e){P&&=(clearTimeout(P),null),a(N,e,!0),e&&(P=setTimeout(()=>{a(N,!1),P=null},z))}h.setMessagesHandler(e=>{W(e.repo,e.message)}),h.setMessageUpdateHandler(e=>{let t=D.get(e.repo);if(!t)return;let n=t.findIndex(t=>t.id===e.messageId);n!==-1&&(t[n]={...t[n],content:e.content},s(O))}),h.setAgentThinkingHandler(e=>{J(e.repo,e.thinking)}),h.setWorkspaceMessagesHandler(e=>{Q(e.message)}),h.setWorkspaceMessageUpdateHandler(e=>{let t=k.findIndex(t=>t.id===e.messageId);t!==-1&&(k[t]={...k[t],content:e.content},s(j))}),h.setWorkspaceAgentThinkingHandler(e=>{$(e.thinking)}),h.addConnectHandler(()=>{K()});var oe={getMessages:B,loadMessages:V,loadMore:H,send:U,receiveMessage:W,markAsRead:G,refreshUnread:K,canLoadMore:q,isThinking:Y,get unreadCounts(){return i(I)},getWorkspaceMessages:X,loadWorkspaceMessages:Z,loadMoreWorkspace:ne,sendWorkspace:re,markWorkspaceAsRead:ie,canLoadMoreWorkspace:ae,get workspaceUnread(){return i(M)},get workspaceThinking(){return i(N)}};async function se(e){return p(`/api/notifications${e?.unreadOnly?`?unreadOnly=true`:``}`)}async function ce(e){await p(`/api/notifications/${e}/read`,{method:`POST`})}async function le(){await p(`/api/notifications/read-all`,{method:`POST`})}async function ue(){let{users:e}=await p(`/api/users`);return e}export{oe as a,v as c,ce as i,_ as l,se as n,T as o,le as r,E as s,ue as t};
1
+ import{L as e,Mt as t,U as n,W as r,X as i,_t as a,at as o,bt as s,jt as c,mt as l,x as u,yt as d,z as f}from"./DV-Vb89U.js";import"./t62M88qj.js";import{t as p}from"./Ttel-lK0.js";import{t as m}from"./SJL_oyD4.js";import{t as h}from"./DfWEuw2V.js";function g(){let e=d(null);return{get folder(){return i(e)},open(t){a(e,t,!0)},close(){a(e,null)}}}var _=g(),ee=f(`<div></div>`);function v(n,s){t(s,!0);let l=d(!1),f=0;function p(e){e.preventDefault(),a(l,!0),f=e.clientX,document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,window.addEventListener(`mousemove`,m),window.addEventListener(`mouseup`,h)}function m(e){let t=s.side===`right`?e.clientX-f:f-e.clientX;f=e.clientX,s.onresize(t)}function h(){a(l,!1),document.body.style.cursor=``,document.body.style.userSelect=``,window.removeEventListener(`mousemove`,m),window.removeEventListener(`mouseup`,h)}var g=ee();let _;o(()=>_=u(g,1,`resize-handle svelte-tfh9g9`,null,_,{left:s.side===`left`,right:s.side===`right`,active:i(l)})),r(`mousedown`,g,p),r(`dblclick`,g,function(...e){s.ondblclick?.apply(this,e)}),e(n,g),c()}n([`mousedown`,`dblclick`]);async function y(e,t){let n=new URLSearchParams;t?.before&&n.set(`before`,String(t.before)),t?.limit&&n.set(`limit`,String(t.limit));let r=n.toString(),{messages:i}=await p(`/api/messages/${encodeURIComponent(e)}${r?`?${r}`:``}`);return i}async function te(e,t,n){let r={content:t};n!=null&&(r.replyToMessageId=n);let{message:i}=await p(`/api/messages/${encodeURIComponent(e)}`,{method:`POST`,body:JSON.stringify(r)});return i}async function b(e,t){await p(`/api/messages/${encodeURIComponent(e)}/read`,{method:`POST`,body:JSON.stringify({messageId:t})})}async function x(){return p(`/api/messages/unread`)}async function S(e){let t=new URLSearchParams;e?.before&&t.set(`before`,String(e.before)),e?.limit&&t.set(`limit`,String(e.limit));let n=t.toString(),{messages:r}=await p(`/api/messages/workspace${n?`?${n}`:``}`);return r}async function C(e,t){let n={content:e};t!=null&&(n.replyToMessageId=t);let{message:r}=await p(`/api/messages/workspace`,{method:`POST`,body:JSON.stringify(n)});return r}async function w(e){await p(`/api/messages/workspace/read`,{method:`POST`,body:JSON.stringify({messageId:e})})}async function T(e,t,n,r){return p(`/api/messages/${encodeURIComponent(e)}/capture`,{method:`POST`,body:JSON.stringify({entityType:t,entityId:n,messageId:r})})}async function E(e){let{scope:t,folder:n,repo:r,entityType:i,entityId:a,messageId:o}=e;return p(t===`workspace`?`/api/messages/workspace/undo-capture`:`/api/messages/${encodeURIComponent(n)}/undo-capture`,{method:`POST`,body:JSON.stringify(t===`workspace`?{repo:r,entityType:i,entityId:a,messageId:o}:{entityType:i,entityId:a,messageId:o})})}var D=new Map,O=d(0),k=[],A=!1,j=d(0),M=d(0),N=d(!1),P=null,F=new Map,I=d(l({})),L=d(l(new Set)),R=new Map,z=12e4;function B(e){i(O);let t=D.get(e);return t?[...t].reverse():[]}async function V(e){let t=await y(e,{limit:50});D.set(e,t),F.set(e,t.length===50),s(O)}async function H(e){let t=D.get(e);if(!t||t.length===0)return!1;let n=t[t.length-1],r=await y(e,{before:n.id,limit:50});return r.length>0?(t.push(...r),F.set(e,r.length===50),s(O)):F.set(e,!1),r.length>0}async function U(e,t,n){let r=await te(e,t,n),i=D.get(e);return i?i.some(e=>e.id===r.id)||i.unshift(r):D.set(e,[r]),s(O),r}function W(e,t){let n=D.get(e);n&&(n.some(e=>e.id===t.id)||(n.unshift(t),s(O))),t.role===`agent`&&J(e,!1);let r=m.user?.id??-1;t.userId!==r&&a(I,{...i(I),[e]:(i(I)[e]??0)+1},!0)}async function G(e){let t=D.get(e);if(!t||t.length===0)return;let n=t[0].id;if(await b(e,n),i(I)[e]){let{[e]:t,...n}=i(I);a(I,n,!0)}}async function K(){let{unread:e,workspace:t}=await x();a(I,e,!0),a(M,t,!0)}function q(e){return F.get(e)??!1}function J(e,t){let n=R.get(e);n&&(clearTimeout(n),R.delete(e));let r=new Set(i(L));if(t){r.add(e);let t=setTimeout(()=>{R.delete(e);let t=new Set(i(L));t.delete(e),a(L,t,!0)},z);R.set(e,t)}else r.delete(e);a(L,r,!0)}function Y(e){return i(L),i(L).has(e)}function X(){return i(j),[...k].reverse()}async function Z(){let e=await S({limit:50});k=e,A=e.length===50,s(j)}async function ne(){if(k.length===0)return!1;let e=k[k.length-1],t=await S({before:e.id,limit:50});return t.length>0?(k.push(...t),A=t.length===50,s(j)):A=!1,t.length>0}async function re(e,t){let n=await C(e,t);return k.some(e=>e.id===n.id)||(k.unshift(n),s(j)),n}function Q(e){k.some(t=>t.id===e.id)||(k.unshift(e),s(j)),e.role===`agent`&&$(!1);let t=m.user?.id??-1;e.userId!==t&&a(M,i(M)+1)}async function ie(){if(k.length===0)return;let e=k[0].id;await w(e),a(M,0)}function ae(){return A}function $(e){P&&=(clearTimeout(P),null),a(N,e,!0),e&&(P=setTimeout(()=>{a(N,!1),P=null},z))}h.setMessagesHandler(e=>{W(e.repo,e.message)}),h.setMessageUpdateHandler(e=>{let t=D.get(e.repo);if(!t)return;let n=t.findIndex(t=>t.id===e.messageId);n!==-1&&(t[n]={...t[n],content:e.content},s(O))}),h.setAgentThinkingHandler(e=>{J(e.repo,e.thinking)}),h.setWorkspaceMessagesHandler(e=>{Q(e.message)}),h.setWorkspaceMessageUpdateHandler(e=>{let t=k.findIndex(t=>t.id===e.messageId);t!==-1&&(k[t]={...k[t],content:e.content},s(j))}),h.setWorkspaceAgentThinkingHandler(e=>{$(e.thinking)}),h.addConnectHandler(()=>{K()});var oe={getMessages:B,loadMessages:V,loadMore:H,send:U,receiveMessage:W,markAsRead:G,refreshUnread:K,canLoadMore:q,isThinking:Y,get unreadCounts(){return i(I)},getWorkspaceMessages:X,loadWorkspaceMessages:Z,loadMoreWorkspace:ne,sendWorkspace:re,markWorkspaceAsRead:ie,canLoadMoreWorkspace:ae,get workspaceUnread(){return i(M)},get workspaceThinking(){return i(N)}};async function se(e){return p(`/api/notifications${e?.unreadOnly?`?unreadOnly=true`:``}`)}async function ce(e){await p(`/api/notifications/${e}/read`,{method:`POST`})}async function le(){await p(`/api/notifications/read-all`,{method:`POST`})}async function ue(){let{users:e}=await p(`/api/users`);return e}export{oe as a,v as c,ce as i,_ as l,se as n,T as o,le as r,E as s,ue as t};
@@ -1 +1 @@
1
- import{X as e,_t as t,bt as n,yt as r}from"./DV-Vb89U.js";import{r as i}from"./CL6DpRrD.js";import"./B5ryOn5p.js";import{t as a}from"./Ttel-lK0.js";import{i as o}from"./-jdP5JqO.js";import{r as s}from"./CTFOXiYo.js";import{t as c}from"./uqxmB78b.js";import{r as l}from"./BAH0sc_p.js";var u=r(`idle`),d=r(!1),f=r(null),p=r(null),m=r(null),h=r(``),g=r(null),_=r(0),v=null,y=r(19877),b={get state(){return e(u)},get isElectron(){return e(d)},get activeEntityId(){return e(f)},get activeRepo(){return e(p)},get meetingTitle(){return e(h)},get platform(){return e(g)},get elapsedSeconds(){return e(_)},get recordingStartTime(){return e(m)},handleElectronReady(e){t(d,!0),e?.port&&t(y,e.port,!0)},async handleRecordingStarted(r){if(t(d,!0),e(u)!==`idle`)return;let a=r.repo||await O()||s.repos[0]?.name||null;if(!a){l.error(`No folder configured. Set one in Connectors → Meeting Capture.`);return}t(h,r.meetingTitle||``,!0),t(g,r.platform||null,!0),t(p,a,!0),t(m,new Date,!0),t(u,`recording`),t(_,0),v=setInterval(()=>{n(_)},1e3);let y=T(e(h)||`Meeting`,e(m));try{let n=e(m).toISOString();await o(a,`meeting`,y,{entity_type:`meeting`,entity_id:y,name:e(h)||`Meeting ${E(e(m))}`,date:c(e(m)),created_at:n,updated_at:n,created_by:`desktop`,updated_by:`desktop`,attendees:(r.attendees||[]).filter(e=>!e.isSelf).map(e=>`[[${w(e.name)}]]`),tags:[`auto-transcribed`,r.platform].filter(Boolean)},``),t(f,y,!0),i(`/${a}/meeting/${y}`),S({type:`sg:entity-created`,repo:a,entityType:`meeting`,entityId:y},`*`)}catch(e){console.error(`[Meeting] Failed to create entity:`,e),t(u,`idle`),C()}},handleRecordingStopped(t){e(u)!==`recording`&&e(u)!==`stopping`||x()},startRecording(){e(d)&&S({type:`sg:start-recording`},`*`)},stopRecording(){e(u)===`recording`&&x()},reset(){t(u,`idle`),t(f,null),t(p,null),t(m,null),t(h,``),t(g,null),t(_,0),C()}};function x(){t(u,`stopping`),C();let n=D();fetch(`http://127.0.0.1:${e(y)}/stop`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({entityId:e(f),memo:n})}).catch(()=>{}),t(u,`idle`),l(`Processing meeting notes…`,{description:`Your notes will be ready in a moment.`,duration:5e3})}function S(e,t){let{type:n,...r}=e;window.sgBridge?.send(n,r)}function C(){v&&=(clearInterval(v),null)}function w(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``)}function T(e,t){let n=c(t),r=t.toTimeString().slice(0,5).replace(`:`,``);return`${n}-${w(e||`meeting`)}-${r}`}function E(e){return e.toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`})}function D(){let e=document.querySelector(`.cm-content`);if(e)return e.textContent||``;let t=document.querySelector(`.entity-editor textarea`);return t?t.value:``}async function O(){try{let e=await a(`/api/preferences/settings`);if(e.default_meeting_folder)return e.default_meeting_folder}catch{}return null}export{b as t};
1
+ import{X as e,_t as t,bt as n,yt as r}from"./DV-Vb89U.js";import{r as i}from"./DdgELRG0.js";import"./CGWca4QC.js";import{t as a}from"./Ttel-lK0.js";import{i as o}from"./-jdP5JqO.js";import{r as s}from"./CTFOXiYo.js";import{t as c}from"./uqxmB78b.js";import{r as l}from"./BAH0sc_p.js";var u=r(`idle`),d=r(!1),f=r(null),p=r(null),m=r(null),h=r(``),g=r(null),_=r(0),v=null,y=r(19877),b={get state(){return e(u)},get isElectron(){return e(d)},get activeEntityId(){return e(f)},get activeRepo(){return e(p)},get meetingTitle(){return e(h)},get platform(){return e(g)},get elapsedSeconds(){return e(_)},get recordingStartTime(){return e(m)},handleElectronReady(e){t(d,!0),e?.port&&t(y,e.port,!0)},async handleRecordingStarted(r){if(t(d,!0),e(u)!==`idle`)return;let a=r.repo||await O()||s.repos[0]?.name||null;if(!a){l.error(`No folder configured. Set one in Connectors → Meeting Capture.`);return}t(h,r.meetingTitle||``,!0),t(g,r.platform||null,!0),t(p,a,!0),t(m,new Date,!0),t(u,`recording`),t(_,0),v=setInterval(()=>{n(_)},1e3);let y=T(e(h)||`Meeting`,e(m));try{let n=e(m).toISOString();await o(a,`meeting`,y,{entity_type:`meeting`,entity_id:y,name:e(h)||`Meeting ${E(e(m))}`,date:c(e(m)),created_at:n,updated_at:n,created_by:`desktop`,updated_by:`desktop`,attendees:(r.attendees||[]).filter(e=>!e.isSelf).map(e=>`[[${w(e.name)}]]`),tags:[`auto-transcribed`,r.platform].filter(Boolean)},``),t(f,y,!0),i(`/${a}/meeting/${y}`),S({type:`sg:entity-created`,repo:a,entityType:`meeting`,entityId:y},`*`)}catch(e){console.error(`[Meeting] Failed to create entity:`,e),t(u,`idle`),C()}},handleRecordingStopped(t){e(u)!==`recording`&&e(u)!==`stopping`||x()},startRecording(){e(d)&&S({type:`sg:start-recording`},`*`)},stopRecording(){e(u)===`recording`&&x()},reset(){t(u,`idle`),t(f,null),t(p,null),t(m,null),t(h,``),t(g,null),t(_,0),C()}};function x(){t(u,`stopping`),C();let n=D();fetch(`http://127.0.0.1:${e(y)}/stop`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({entityId:e(f),memo:n})}).catch(()=>{}),t(u,`idle`),l(`Processing meeting notes…`,{description:`Your notes will be ready in a moment.`,duration:5e3})}function S(e,t){let{type:n,...r}=e;window.sgBridge?.send(n,r)}function C(){v&&=(clearInterval(v),null)}function w(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``)}function T(e,t){let n=c(t),r=t.toTimeString().slice(0,5).replace(`:`,``);return`${n}-${w(e||`meeting`)}-${r}`}function E(e){return e.toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`})}function D(){let e=document.querySelector(`.cm-content`);if(e)return e.textContent||``;let t=document.querySelector(`.entity-editor textarea`);return t?t.value:``}async function O(){try{let e=await a(`/api/preferences/settings`);if(e.default_meeting_folder)return e.default_meeting_folder}catch{}return null}export{b as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./BAH0sc_p.js","./BNTlsKDJ.js","./DV-Vb89U.js","./D4lmk7Te.js","./t62M88qj.js","./CIgq6kOW.js","../assets/dist.DDCWxn3B.css"])))=>i.map(i=>d[i]);
2
- import{$ as e,A as t,B as n,Ct as r,D as i,F as a,G as o,H as s,L as c,Mt as l,N as u,Nt as d,O as f,R as p,Rt as m,U as h,V as g,Vt as _,W as v,X as y,Y as b,_ as x,_t as S,a as C,at as w,b as T,c as E,ct as D,d as O,dt as k,f as A,ft as j,g as M,gt as N,h as P,it as F,j as ee,jt as I,kt as te,mt as L,n as R,o as z,ot as B,pt as V,r as ne,rt as re,s as H,u as U,wt as ie,x as ae,xt as W,y as oe,yt as G,z as K,zt as q}from"./DV-Vb89U.js";import{r as se}from"./CL6DpRrD.js";import{t as ce}from"./C-OaypFN.js";import"./t62M88qj.js";import"./B5ryOn5p.js";import{n as le}from"./oVL-aj_U.js";import{t as J}from"./Ttel-lK0.js";import{S as ue,a as de,c as fe,h as pe}from"./-jdP5JqO.js";import{r as Y}from"./CTFOXiYo.js";import{t as me}from"./DXdnDlyC.js";import{a as he,c as ge,d as _e,f as ve,i as ye,l as be,o as xe,r as Se,s as Ce,t as X,u as we}from"./SJL_oyD4.js";import"./CIgq6kOW.js";import{t as Te}from"./e9oCENPh.js";import{t as Ee}from"./BsUsP_Dh.js";import{t as De}from"./EOYVcps5.js";import{i as Oe,n as ke,r as Ae,t as je,u as Me}from"./BDCOho_G.js";import{t as Ne}from"./DJnMBCXJ2.js";import{t as Pe}from"./CKPqZArH2.js";import{t as Fe}from"./BiNERN9e2.js";import{t as Ie}from"./B8x2G5Je2.js";import{t as Le}from"./DgUMuJWf2.js";import{i as Re,n as ze,r as Be,t as Ve}from"./C7o6G8Ak2.js";import{t as He}from"./D0Hmei3J2.js";import{a as Ue,i as We,n as Ge,r as Ke,t as qe}from"./CXYTfe_P2.js";import{$ as Je,A as Ye,Ct as Z,at as Xe,ct as Ze,et as Qe,it as $e,k as et,nt as tt,rt as nt,tt as rt,vt as it,yt as at}from"./DXeZwJCC2.js";import{t as ot}from"./ChPgixWE.js";import{a as st,c as ct,n as lt,o as ut,r as dt,s as ft,t as pt}from"./C2UI_KQ1.js";import{n as mt,o as ht,r as gt,s as _t,t as vt}from"./_VOdw24P.js";import{n as yt}from"./CUyyAHze.js";import{t as bt}from"./D5VdX2NC.js";import{t as xt}from"./CN1mT6wT.js";import{t as Q}from"./D00taIEV.js";import{t as St}from"./CLBsX7ax.js";import"./CSWuNPeq.js";import{t as Ct}from"./DaHlYzta.js";import{t as wt}from"./De2dHdFN.js";import{n as Tt,t as Et}from"./DgmiIA_n.js";import{t as Dt}from"./DGdxbQG5.js";import"./DDzRa0WU.js";import{t as Ot}from"./DnnlU7By.js";import{n as kt,r as At,t as jt}from"./B-bHt83e.js";import{t as Mt}from"./DmVlLzFv.js";var Nt=nt({component:`separator`,parts:[`root`]}),Pt=class e{static create(t){return new e(t)}opts;attachment;constructor(e){this.opts=e,this.attachment=Ze(e.ref)}#e=W(()=>({id:this.opts.id.current,role:this.opts.decorative.current?`none`:`separator`,"aria-orientation":this.opts.orientation.current,"aria-hidden":rt(this.opts.decorative.current),"data-orientation":this.opts.orientation.current,[Nt.root]:``,...this.attachment}));get props(){return y(this.#e)}set props(e){S(this.#e,e)}},Ft=K(`<div><!></div>`);function It(e,t){let n=g();l(t,!0);let r=z(t,`id`,19,()=>et(n)),i=z(t,`ref`,15,null),a=z(t,`decorative`,3,!1),o=z(t,`orientation`,3,`horizontal`),s=H(t,[`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`child`,`children`,`decorative`,`orientation`]),d=Pt.create({ref:Z(()=>i(),e=>i(e)),id:Z(()=>r()),decorative:Z(()=>a()),orientation:Z(()=>o())}),m=W(()=>at(s,d.props));var h=p(),v=j(h),b=e=>{var n=p();f(j(n),()=>t.child,()=>({props:y(m)})),c(e,n)},x=e=>{var n=Ft();P(n,()=>({...y(m)})),f(k(n),()=>t.children??_),q(n),c(e,n)};u(v,e=>{t.child?e(b):e(x,-1)}),c(e,h),I()}var Lt=nt({component:`switch`,parts:[`root`,`thumb`]}),Rt=new it(`Switch.Root`),zt=class e{static create(t){return Rt.set(new e(t))}opts;attachment;constructor(e){this.opts=e,this.attachment=Ze(e.ref),this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this)}#e(){this.opts.checked.current=!this.opts.checked.current}onkeydown(e){!(e.key===`Enter`||e.key===` `)||this.opts.disabled.current||(e.preventDefault(),this.#e())}onclick(e){this.opts.disabled.current||this.#e()}#t=W(()=>({"data-disabled":Je(this.opts.disabled.current),"data-state":Xe(this.opts.checked.current),"data-required":Je(this.opts.required.current)}));get sharedProps(){return y(this.#t)}set sharedProps(e){S(this.#t,e)}#n=W(()=>({checked:this.opts.checked.current}));get snippetProps(){return y(this.#n)}set snippetProps(e){S(this.#n,e)}#r=W(()=>({...this.sharedProps,id:this.opts.id.current,role:`switch`,disabled:tt(this.opts.disabled.current),"aria-checked":$e(this.opts.checked.current,!1),"aria-required":Qe(this.opts.required.current),[Lt.root]:``,onclick:this.onclick,onkeydown:this.onkeydown,...this.attachment}));get props(){return y(this.#r)}set props(e){S(this.#r,e)}},Bt=class e{static create(){return new e(Rt.get())}root;#e=W(()=>this.root.opts.name.current!==void 0);get shouldRender(){return y(this.#e)}set shouldRender(e){S(this.#e,e)}constructor(e){this.root=e}#t=W(()=>({type:`checkbox`,name:this.root.opts.name.current,value:this.root.opts.value.current,checked:this.root.opts.checked.current,disabled:this.root.opts.disabled.current,required:this.root.opts.required.current}));get props(){return y(this.#t)}set props(e){S(this.#t,e)}},Vt=class e{static create(t){return new e(t,Rt.get())}opts;root;attachment;constructor(e,t){this.opts=e,this.root=t,this.attachment=Ze(e.ref)}#e=W(()=>({checked:this.root.opts.checked.current}));get snippetProps(){return y(this.#e)}set snippetProps(e){S(this.#e,e)}#t=W(()=>({...this.root.sharedProps,id:this.opts.id.current,[Lt.thumb]:``,...this.attachment}));get props(){return y(this.#t)}set props(e){S(this.#t,e)}};function Ht(e,t){l(t,!1);let n=Bt.create();U();var r=p(),i=j(r),a=e=>{ot(e,E(()=>n.props))};u(i,e=>{n.shouldRender&&e(a)}),c(e,r),I()}var Ut=K(`<button><!></button>`),Wt=K(`<!> <!>`,1);function Gt(e,t){let n=g();l(t,!0);let r=z(t,`ref`,15,null),i=z(t,`id`,19,()=>et(n)),a=z(t,`disabled`,3,!1),o=z(t,`required`,3,!1),s=z(t,`checked`,15,!1),d=z(t,`value`,3,`on`),m=z(t,`name`,3,void 0),h=z(t,`type`,3,`button`),v=z(t,`onCheckedChange`,3,Ye),b=H(t,[`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`id`,`disabled`,`required`,`checked`,`value`,`name`,`type`,`onCheckedChange`]),x=zt.create({checked:Z(()=>s(),e=>{s(e),v()?.(e)}),disabled:Z(()=>a()??!1),required:Z(()=>o()),value:Z(()=>d()),name:Z(()=>m()),id:Z(()=>i()),ref:Z(()=>r(),e=>r(e))}),S=W(()=>at(b,x.props,{type:h()}));var C=Wt(),w=j(C),T=e=>{var n=p(),r=j(n);{let e=W(()=>({props:y(S),...x.snippetProps}));f(r,()=>t.child,()=>y(e))}c(e,n)},E=e=>{var n=Ut();P(n,()=>({...y(S)})),f(k(n),()=>t.children??_,()=>x.snippetProps),q(n),c(e,n)};u(w,e=>{t.child?e(T):e(E,-1)}),Ht(V(w,2),{}),c(e,C),I()}var Kt=K(`<span><!></span>`);function qt(e,t){let n=g();l(t,!0);let r=z(t,`ref`,15,null),i=z(t,`id`,19,()=>et(n)),a=H(t,[`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`id`]),o=Vt.create({id:Z(()=>i()),ref:Z(()=>r(),e=>r(e))}),s=W(()=>at(a,o.props));var d=p(),m=j(d),h=e=>{var n=p(),r=j(n);{let e=W(()=>({props:y(s),...o.snippetProps}));f(r,()=>t.child,()=>y(e))}c(e,n)},v=e=>{var n=Kt();P(n,()=>({...y(s)})),f(k(n),()=>t.children??_,()=>o.snippetProps),q(n),c(e,n)};u(m,e=>{t.child?e(h):e(v,-1)}),c(e,d),I()}var Jt=n(`<title> </title>`),Yt=n(`<svg><!><path d="M6,30H18a2.0023,2.0023,0,0,0,2-2V25H18v3H6V4H18V7h2V4a2.0023,2.0023,0,0,0-2-2H6A2.0023,2.0023,0,0,0,4,4V28A2.0023,2.0023,0,0,0,6,30Z"></path><path d="M20.586 20.586 24.172 17 10 17 10 15 24.172 15 20.586 11.414 22 10 28 16 22 22 20.586 20.586z"></path></svg>`);function Xt(e,t){let n=C(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),r=C(n,[`size`,`title`]);l(t,!1);let i=N(),o=N(),s=z(t,`size`,8,16),d=z(t,`title`,8,void 0);re(()=>(b(n),b(d())),()=>{S(i,n[`aria-label`]||n[`aria-labelledby`]||d())}),re(()=>(y(i),b(n)),()=>{S(o,{"aria-hidden":y(i)?void 0:!0,role:y(i)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),F(),U();var f=Yt();P(f,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:s(),height:s(),...y(o),...r}));var p=k(f),h=e=>{var t=Jt(),n=k(t,!0);q(t),w(()=>a(n,d())),c(e,t)};u(p,e=>{d()&&e(h)}),m(2),q(f),c(e,f),I()}var Zt=K(`<!> <span class="nav-item-label">Profile</span> <!>`,1),Qt=K(`<!> <span class="nav-item-label">MCP Access</span> <!>`,1),$t=K(`<!> <span class="nav-item-label">External Connectors</span> <!>`,1),en=K(`<!> <span class="nav-item-label">Manage Team</span> <!>`,1),tn=K(`<!> <span class="nav-item-label">Manage Folders</span> <!>`,1),nn=K(`<!> <span class="nav-item-label">Manage Organization</span> <!>`,1),rn=K(`<!> <!> <!> <!> <!>`,1),an=K(`<!> <span class="nav-item-label">Sign out</span>`,1),on=K(`<div class="settings-subheader svelte-18v9r9v">Settings</div> <nav class="settings-nav svelte-18v9r9v" aria-label="Settings"><!> <!></nav> <!>`,1);function sn(e,t){l(t,!0);let n=()=>ie(le,`$page`,i),[i,a]=r(),o=W(()=>n().params.tab),s=W(()=>!X.authEnabled||X.user?.role===`owner`);function d(e){y(o)!==e&&se(`/settings/${e}`)}async function f(){await X.logout(),window.location.href=`/login`}var p=on(),h=V(j(p),2),g=k(h);{let e=W(()=>y(o)===`profile`?`active`:``);Q(g,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`profile`),children:(e,t)=>{var n=Zt(),r=j(n);Ke(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var _=V(g,2),v=e=>{var t=rn(),n=j(t);{let e=W(()=>y(o)===`mcp`?`active`:``);Q(n,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`mcp`),children:(e,t)=>{var n=Qt(),r=j(n);Ge(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var r=V(n,2);{let e=W(()=>y(o)===`external`?`active`:``);Q(r,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`external`),children:(e,t)=>{var n=$t(),r=j(n);Ve(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var i=V(r,2);{let e=W(()=>y(o)===`team`?`active`:``);Q(i,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`team`),children:(e,t)=>{var n=en(),r=j(n);We(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var a=V(i,2);{let e=W(()=>y(o)===`folders`?`active`:``);Q(a,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`folders`),children:(e,t)=>{var n=tn(),r=j(n);xt(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var s=V(a,2);{let e=W(()=>y(o)===`organization`?`active`:``);Q(s,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`organization`),children:(e,t)=>{var n=nn(),r=j(n);qe(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}c(e,t)};u(_,e=>{y(s)&&e(v)}),q(h);var b=V(h,2),x=e=>{Q(e,{variant:`ghost`,class:`nav-item sign-out-item`,onclick:f,children:(e,t)=>{var n=an();Xt(j(n),{size:15}),m(2),c(e,n)},$$slots:{default:!0}})};u(b,e=>{X.authEnabled&&X.user&&e(x)}),c(e,p),I(),a()}var cn=K(`<label><!></label>`);function $(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=H(t,[`$$slots`,`$$events`,`$$legacy`,`class`,`ref`,`children`]);var i=cn();P(i,e=>({class:e,...r}),[()=>yt(`text-xs font-medium text-[var(--color-text-secondary)]`,t.class)]),f(k(i),()=>t.children??_),q(i),O(i,e=>n(e),()=>n()),c(e,i),I()}function ln(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=z(t,`data-slot`,3,`separator`),a=H(t,[`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`data-slot`]);var o=p(),s=j(o);{let e=W(()=>yt(`bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:min-h-full data-[orientation=vertical]:w-px`,t.class));i(s,()=>It,(t,i)=>{i(t,E({get"data-slot"(){return r()},get class(){return y(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)}}))})}c(e,o),I()}function un(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=z(t,`checked`,15,!1),a=H(t,[`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`checked`]);var o=p(),s=j(o);{let e=W(()=>`sg-switch `+(t.class??``));i(s,()=>Gt,(t,o)=>{o(t,E({get class(){return y(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)},get checked(){return r()},set checked(e){r(e)},children:(e,t)=>{var n=p();i(j(n),()=>qt,(e,t)=>{t(e,{class:`sg-switch-thumb`})}),c(e,n)},$$slots:{default:!0}}))})}c(e,o),I()}var dn=K(`<button></button>`),fn=K(`<!> `,1),pn=K(`<div class="error-msg svelte-1j14vpz"> </div>`),mn=K(`<div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Member Details</div> <div class="fields svelte-1j14vpz"><div class="field svelte-1j14vpz"><!> <!></div> <div class="field svelte-1j14vpz"><!> <!></div> <div class="field svelte-1j14vpz"><!> <div class="password-wrapper svelte-1j14vpz"><!> <button class="pw-toggle svelte-1j14vpz"><!></button></div></div></div> <!></div>`),hn=K(`<!> <div class="profile-sections svelte-1j14vpz"><div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Accent Color</div> <div class="color-grid svelte-1j14vpz"></div></div> <!> <div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Appearance</div> <label class="toggle-row svelte-1j14vpz"><!> <span class="toggle-title svelte-1j14vpz">Dark mode</span></label></div> <!> <div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Home</div> <label class="toggle-row svelte-1j14vpz"><!> <span class="toggle-title svelte-1j14vpz">Show quick actions</span></label></div> <!> <div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Your Data</div> <p class="section-help svelte-1j14vpz">Download a zip of your accessible folders, including full git history. Your data is yours — Studiograph is local-first.</p> <div><!></div></div> <!> <!></div>`,1),gn=K(`<!> Saved`,1),_n=K(`<!> <!>`,1);function vn(e,n){l(n,!0);let r=te(`theme`),o=G(!1);async function d(e){S(o,!0);try{await Te.saveAccentColor(e),Y.applyAccentColor(e)}catch(e){console.error(`Failed to save accent color:`,e)}finally{S(o,!1)}}let f=W(()=>!Ee.hideHomeStarters);async function h(e){try{await Ee.setHideHomeStarters(!e)}catch(e){let{toast:t}=await ce(async()=>{let{toast:e}=await import(`./BAH0sc_p.js`).then(e=>e.t);return{toast:e}},__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url);t.error(e?.message??`Could not update preference`)}}let g=G(!1);async function _(){if(!y(g)){S(g,!0);try{let e=document.createElement(`a`);e.href=`/api/workspace/export`,e.download=``,document.body.appendChild(e),e.click(),document.body.removeChild(e)}finally{setTimeout(()=>{S(g,!1)},1500)}}}let b=G(L(X.user?.displayName||``)),C=G(L(X.user?.email||``)),E=G(``),D=G(!1),O=G(!1),A=G(``),M=G(!1);B(()=>{n.open&&X.user&&(S(b,X.user.displayName||``,!0),S(C,X.user.email||``,!0),S(E,``),S(D,!1),S(A,``),S(M,!1))});let N=W(()=>X.user?y(b)!==(X.user.displayName||``)||y(C)!==(X.user.email||``)||y(E).length>0:!1);async function P(){S(O,!0),S(A,``),S(M,!1);try{let e={};y(b)!==(X.user?.displayName||``)&&(e.displayName=y(b)),y(C)!==(X.user?.email||``)&&(e.email=y(C)),y(E)&&(e.newPassword=y(E)),await ve(e),await X.checkAuth(),S(E,``),S(M,!0),setTimeout(()=>{S(M,!1)},2e3)}catch(e){S(A,e.message||`Failed to save`,!0)}finally{S(O,!1)}}var F=_n(),R=j(F);i(R,()=>dt,(e,n)=>{n(e,{class:`settings-body dialog-body-lg`,children:(e,n)=>{var l=hn(),p=j(l);i(p,()=>st,(e,t)=>{t(e,{children:(e,t)=>{m(),c(e,s(`Profile`))},$$slots:{default:!0}})});var O=V(p,2),M=k(O),N=V(k(M),2);t(N,21,()=>Ie,ee,(e,t)=>{var n=dn();let r,i;w(()=>{r=ae(n,1,`color-swatch svelte-1j14vpz`,null,r,{active:Te.accentColor===y(t).color}),x(n,`title`,y(t).name),n.disabled=y(o),i=T(n,``,i,{background:y(t).color,"--swatch-color":y(t).color})}),v(`click`,n,()=>d(y(t).color)),c(e,n)}),q(N),q(M);var P=V(M,2);ln(P,{});var F=V(P,2),I=V(k(F),2),te=k(I);{let e=W(()=>r.current===`dark`);un(te,{get checked(){return y(e)},onCheckedChange:()=>r.toggle()})}m(2),q(I),q(F);var L=V(F,2);ln(L,{});var R=V(L,2),z=V(k(R),2);un(k(z),{get checked(){return y(f)},onCheckedChange:h}),m(2),q(z),q(R);var B=V(R,2);ln(B,{});var ne=V(B,2),re=V(k(ne),4);Q(k(re),{variant:`outline`,onclick:_,get disabled(){return y(g)},children:(e,t)=>{var n=fn(),r=j(n);Ue(r,{size:14});var i=V(r);w(()=>a(i,` ${y(g)?`Preparing…`:`Export Workspace`}`)),c(e,n)},$$slots:{default:!0}}),q(re),q(ne);var H=V(ne,2);ln(H,{});var U=V(H,2),ie=e=>{var t=mn(),n=V(k(t),2),r=k(n),i=k(r);$(i,{for:`profile-name`,children:(e,t)=>{m(),c(e,s(`Name`))},$$slots:{default:!0}}),St(V(i,2),{id:`profile-name`,placeholder:`Your name`,get value(){return y(b)},set value(e){S(b,e,!0)}}),q(r);var o=V(r,2),l=k(o);$(l,{for:`profile-email`,children:(e,t)=>{m(),c(e,s(`Email`))},$$slots:{default:!0}}),St(V(l,2),{id:`profile-email`,type:`email`,placeholder:`you@example.com`,get value(){return y(C)},set value(e){S(C,e,!0)}}),q(o);var d=V(o,2),f=k(d);$(f,{for:`profile-pw`,children:(e,t)=>{m(),c(e,s(`New Password`))},$$slots:{default:!0}});var p=V(f,2),h=k(p);{let e=W(()=>y(D)?`text`:`password`);St(h,{id:`profile-pw`,get type(){return y(e)},placeholder:`Leave blank to keep current`,autocomplete:`new-password`,get value(){return y(E)},set value(e){S(E,e,!0)}})}var g=V(h,2),_=k(g),x=e=>{Be(e,{size:15})},T=e=>{Re(e,{size:15})};u(_,e=>{y(D)?e(x):e(T,-1)}),q(g),q(p),q(d),q(n);var O=V(n,2),j=e=>{var t=pn(),n=k(t,!0);q(t),w(()=>a(n,y(A))),c(e,t)};u(O,e=>{y(A)&&e(j)}),q(t),v(`click`,g,()=>{S(D,!y(D))}),c(e,t)};u(U,e=>{X.user&&e(ie)}),q(O),c(e,l)},$$slots:{default:!0}})});var z=V(R,2),ne=e=>{var t=p();i(j(t),()=>lt,(e,t)=>{t(e,{children:(e,t)=>{{let t=W(()=>y(O)||!y(N));Q(e,{variant:`accent`,onclick:P,get disabled(){return y(t)},children:(e,t)=>{var n=p(),r=j(n),i=e=>{var t=gn();bt(j(t),{size:14}),m(),c(e,t)},o=e=>{var t=s();w(()=>a(t,y(O)?`Saving...`:`Save Changes`)),c(e,t)};u(r,e=>{y(M)?e(i):e(o,-1)}),c(e,n)},$$slots:{default:!0}})}},$$slots:{default:!0}})}),c(e,t)};u(z,e=>{X.user&&e(ne)}),c(e,F),I()}h([`click`]);var yn=K(`<textarea></textarea>`);function bn(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=z(t,`value`,15),i=H(t,[`$$slots`,`$$events`,`$$legacy`,`class`,`ref`,`value`]);var a=yn();D(a),P(a,e=>({class:e,...i}),[()=>yt(`w-full rounded-md border border-[var(--color-border)] bg-[var(--color-bg)] px-2.5 py-2 text-base text-[var(--color-text-primary)] font-[inherit] leading-relaxed outline-none transition-colors placeholder:text-[var(--color-text-tertiary)] hover:border-[var(--color-text-tertiary)] focus:border-[var(--color-accent,#f04e4e)] disabled:cursor-not-allowed disabled:opacity-50`,t.class)]),O(a,e=>n(e),()=>n()),A(a,r),c(e,a),I()}function xn(){return J(`/api/connectors`)}function Sn(e,t){return J(`/api/connectors/import`,{method:`POST`,body:JSON.stringify({json:e,name:t})})}function Cn(e){return J(`/api/connectors/${encodeURIComponent(e)}/config`)}function wn(e,t){return J(`/api/connectors/${encodeURIComponent(e)}/config`,{method:`POST`,body:JSON.stringify({...t,name:e})})}function Tn(e){return J(`/api/connectors/${encodeURIComponent(e)}/config`,{method:`DELETE`})}function En(e){return J(`/api/connectors/${encodeURIComponent(e)}/oauth/connect`,{method:`POST`})}function Dn(e){return J(`/api/connectors/${encodeURIComponent(e)}/oauth/status`)}function On(e){return J(`/api/connectors/${encodeURIComponent(e)}/oauth/disconnect`,{method:`POST`})}var kn=n(`<title> </title>`),An=n(`<svg><!><path d="M21,2a8.9977,8.9977,0,0,0-8.6119,11.6118L2,24v6H8L18.3881,19.6118A9,9,0,1,0,21,2Zm0,16a7.0125,7.0125,0,0,1-2.0322-.3022L17.821,17.35l-.8472.8472-3.1811,3.1812L12.4141,20,11,21.4141l1.3787,1.3786-1.5859,1.586L9.4141,23,8,24.4141l1.3787,1.3786L7.1716,28H4V24.8284l9.8023-9.8023.8472-.8474-.3473-1.1467A7,7,0,1,1,21,18Z"></path><circle cx="22" cy="10" r="2"></circle></svg>`);function jn(e,t){let n=C(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),r=C(n,[`size`,`title`]);l(t,!1);let i=N(),o=N(),s=z(t,`size`,8,16),d=z(t,`title`,8,void 0);re(()=>(b(n),b(d())),()=>{S(i,n[`aria-label`]||n[`aria-labelledby`]||d())}),re(()=>(y(i),b(n)),()=>{S(o,{"aria-hidden":y(i)?void 0:!0,role:y(i)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),F(),U();var f=An();P(f,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:s(),height:s(),...y(o),...r}));var p=k(f),h=e=>{var t=kn(),n=k(t,!0);q(t),w(()=>a(n,d())),c(e,t)};u(p,e=>{d()&&e(h)}),m(2),q(f),c(e,f),I()}var Mn=K(`<p class="loading-text svelte-67gzoi">Loading settings...</p>`),Nn=K(`<option> </option>`),Pn=K(`<p class="error-text svelte-67gzoi"> </p>`),Fn=K(`<!> Saved`,1),In=K(`<div class="setting-group svelte-67gzoi"><!> <!> <p class="setting-help svelte-67gzoi">Used for real-time speech-to-text. Get a key at <a href="https://console.deepgram.com" target="_blank" rel="noopener" class="svelte-67gzoi">console.deepgram.com</a></p></div> <div class="setting-group svelte-67gzoi"><!> <select id="default-folder" class="select-input svelte-67gzoi"><option>Select a folder...</option><!></select> <p class="setting-help svelte-67gzoi">Meetings will be saved to this folder by default.</p></div> <!> <div class="save-row svelte-67gzoi"><!></div>`,1),Ln=K(`<div class="meeting-settings svelte-67gzoi"><h2 class="panel-title svelte-67gzoi">Meeting Capture</h2> <p class="panel-description svelte-67gzoi">Configure meeting transcription for the Studiograph desktop app.
2
+ import{$ as e,A as t,B as n,Ct as r,D as i,F as a,G as o,H as s,L as c,Mt as l,N as u,Nt as d,O as f,R as p,Rt as m,U as h,V as g,Vt as _,W as v,X as y,Y as b,_ as x,_t as S,a as C,at as w,b as T,c as E,ct as D,d as O,dt as k,f as A,ft as j,g as M,gt as N,h as P,it as F,j as ee,jt as I,kt as te,mt as L,n as R,o as z,ot as B,pt as V,r as ne,rt as re,s as H,u as U,wt as ie,x as ae,xt as W,y as oe,yt as G,z as K,zt as q}from"./DV-Vb89U.js";import{r as se}from"./DdgELRG0.js";import{t as ce}from"./C-OaypFN.js";import"./t62M88qj.js";import"./CGWca4QC.js";import{n as le}from"./Cs0sIohr.js";import{t as J}from"./Ttel-lK0.js";import{S as ue,a as de,c as fe,h as pe}from"./-jdP5JqO.js";import{r as Y}from"./CTFOXiYo.js";import{t as me}from"./9goCdhdY.js";import{a as he,c as ge,d as _e,f as ve,i as ye,l as be,o as xe,r as Se,s as Ce,t as X,u as we}from"./SJL_oyD4.js";import"./CIgq6kOW.js";import{t as Te}from"./e9oCENPh.js";import{t as Ee}from"./BsUsP_Dh.js";import{t as De}from"./EOYVcps5.js";import{i as Oe,n as ke,r as Ae,t as je,u as Me}from"./BDCOho_G.js";import{t as Ne}from"./DJnMBCXJ2.js";import{t as Pe}from"./CKPqZArH2.js";import{t as Fe}from"./CX0QbXWB2.js";import{t as Ie}from"./B8x2G5Je2.js";import{t as Le}from"./DgUMuJWf2.js";import{i as Re,n as ze,r as Be,t as Ve}from"./C7o6G8Ak2.js";import{t as He}from"./D0Hmei3J2.js";import{a as Ue,i as We,n as Ge,r as Ke,t as qe}from"./CXYTfe_P2.js";import{$ as Je,A as Ye,Ct as Z,at as Xe,ct as Ze,et as Qe,it as $e,k as et,nt as tt,rt as nt,tt as rt,vt as it,yt as at}from"./DXeZwJCC2.js";import{t as ot}from"./ChPgixWE.js";import{a as st,c as ct,n as lt,o as ut,r as dt,s as ft,t as pt}from"./C2UI_KQ1.js";import{n as mt,o as ht,r as gt,s as _t,t as vt}from"./_VOdw24P.js";import{n as yt}from"./CUyyAHze.js";import{t as bt}from"./D5VdX2NC.js";import{t as xt}from"./CN1mT6wT.js";import{t as Q}from"./D00taIEV.js";import{t as St}from"./CLBsX7ax.js";import"./CSWuNPeq.js";import{t as Ct}from"./DaHlYzta.js";import{t as wt}from"./De2dHdFN.js";import{n as Tt,t as Et}from"./DgmiIA_n.js";import{t as Dt}from"./DGdxbQG5.js";import"./DDzRa0WU.js";import{t as Ot}from"./DnnlU7By.js";import{n as kt,r as At,t as jt}from"./B-bHt83e.js";import{t as Mt}from"./DJnljLsI.js";var Nt=nt({component:`separator`,parts:[`root`]}),Pt=class e{static create(t){return new e(t)}opts;attachment;constructor(e){this.opts=e,this.attachment=Ze(e.ref)}#e=W(()=>({id:this.opts.id.current,role:this.opts.decorative.current?`none`:`separator`,"aria-orientation":this.opts.orientation.current,"aria-hidden":rt(this.opts.decorative.current),"data-orientation":this.opts.orientation.current,[Nt.root]:``,...this.attachment}));get props(){return y(this.#e)}set props(e){S(this.#e,e)}},Ft=K(`<div><!></div>`);function It(e,t){let n=g();l(t,!0);let r=z(t,`id`,19,()=>et(n)),i=z(t,`ref`,15,null),a=z(t,`decorative`,3,!1),o=z(t,`orientation`,3,`horizontal`),s=H(t,[`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`child`,`children`,`decorative`,`orientation`]),d=Pt.create({ref:Z(()=>i(),e=>i(e)),id:Z(()=>r()),decorative:Z(()=>a()),orientation:Z(()=>o())}),m=W(()=>at(s,d.props));var h=p(),v=j(h),b=e=>{var n=p();f(j(n),()=>t.child,()=>({props:y(m)})),c(e,n)},x=e=>{var n=Ft();P(n,()=>({...y(m)})),f(k(n),()=>t.children??_),q(n),c(e,n)};u(v,e=>{t.child?e(b):e(x,-1)}),c(e,h),I()}var Lt=nt({component:`switch`,parts:[`root`,`thumb`]}),Rt=new it(`Switch.Root`),zt=class e{static create(t){return Rt.set(new e(t))}opts;attachment;constructor(e){this.opts=e,this.attachment=Ze(e.ref),this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this)}#e(){this.opts.checked.current=!this.opts.checked.current}onkeydown(e){!(e.key===`Enter`||e.key===` `)||this.opts.disabled.current||(e.preventDefault(),this.#e())}onclick(e){this.opts.disabled.current||this.#e()}#t=W(()=>({"data-disabled":Je(this.opts.disabled.current),"data-state":Xe(this.opts.checked.current),"data-required":Je(this.opts.required.current)}));get sharedProps(){return y(this.#t)}set sharedProps(e){S(this.#t,e)}#n=W(()=>({checked:this.opts.checked.current}));get snippetProps(){return y(this.#n)}set snippetProps(e){S(this.#n,e)}#r=W(()=>({...this.sharedProps,id:this.opts.id.current,role:`switch`,disabled:tt(this.opts.disabled.current),"aria-checked":$e(this.opts.checked.current,!1),"aria-required":Qe(this.opts.required.current),[Lt.root]:``,onclick:this.onclick,onkeydown:this.onkeydown,...this.attachment}));get props(){return y(this.#r)}set props(e){S(this.#r,e)}},Bt=class e{static create(){return new e(Rt.get())}root;#e=W(()=>this.root.opts.name.current!==void 0);get shouldRender(){return y(this.#e)}set shouldRender(e){S(this.#e,e)}constructor(e){this.root=e}#t=W(()=>({type:`checkbox`,name:this.root.opts.name.current,value:this.root.opts.value.current,checked:this.root.opts.checked.current,disabled:this.root.opts.disabled.current,required:this.root.opts.required.current}));get props(){return y(this.#t)}set props(e){S(this.#t,e)}},Vt=class e{static create(t){return new e(t,Rt.get())}opts;root;attachment;constructor(e,t){this.opts=e,this.root=t,this.attachment=Ze(e.ref)}#e=W(()=>({checked:this.root.opts.checked.current}));get snippetProps(){return y(this.#e)}set snippetProps(e){S(this.#e,e)}#t=W(()=>({...this.root.sharedProps,id:this.opts.id.current,[Lt.thumb]:``,...this.attachment}));get props(){return y(this.#t)}set props(e){S(this.#t,e)}};function Ht(e,t){l(t,!1);let n=Bt.create();U();var r=p(),i=j(r),a=e=>{ot(e,E(()=>n.props))};u(i,e=>{n.shouldRender&&e(a)}),c(e,r),I()}var Ut=K(`<button><!></button>`),Wt=K(`<!> <!>`,1);function Gt(e,t){let n=g();l(t,!0);let r=z(t,`ref`,15,null),i=z(t,`id`,19,()=>et(n)),a=z(t,`disabled`,3,!1),o=z(t,`required`,3,!1),s=z(t,`checked`,15,!1),d=z(t,`value`,3,`on`),m=z(t,`name`,3,void 0),h=z(t,`type`,3,`button`),v=z(t,`onCheckedChange`,3,Ye),b=H(t,[`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`id`,`disabled`,`required`,`checked`,`value`,`name`,`type`,`onCheckedChange`]),x=zt.create({checked:Z(()=>s(),e=>{s(e),v()?.(e)}),disabled:Z(()=>a()??!1),required:Z(()=>o()),value:Z(()=>d()),name:Z(()=>m()),id:Z(()=>i()),ref:Z(()=>r(),e=>r(e))}),S=W(()=>at(b,x.props,{type:h()}));var C=Wt(),w=j(C),T=e=>{var n=p(),r=j(n);{let e=W(()=>({props:y(S),...x.snippetProps}));f(r,()=>t.child,()=>y(e))}c(e,n)},E=e=>{var n=Ut();P(n,()=>({...y(S)})),f(k(n),()=>t.children??_,()=>x.snippetProps),q(n),c(e,n)};u(w,e=>{t.child?e(T):e(E,-1)}),Ht(V(w,2),{}),c(e,C),I()}var Kt=K(`<span><!></span>`);function qt(e,t){let n=g();l(t,!0);let r=z(t,`ref`,15,null),i=z(t,`id`,19,()=>et(n)),a=H(t,[`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`id`]),o=Vt.create({id:Z(()=>i()),ref:Z(()=>r(),e=>r(e))}),s=W(()=>at(a,o.props));var d=p(),m=j(d),h=e=>{var n=p(),r=j(n);{let e=W(()=>({props:y(s),...o.snippetProps}));f(r,()=>t.child,()=>y(e))}c(e,n)},v=e=>{var n=Kt();P(n,()=>({...y(s)})),f(k(n),()=>t.children??_,()=>o.snippetProps),q(n),c(e,n)};u(m,e=>{t.child?e(h):e(v,-1)}),c(e,d),I()}var Jt=n(`<title> </title>`),Yt=n(`<svg><!><path d="M6,30H18a2.0023,2.0023,0,0,0,2-2V25H18v3H6V4H18V7h2V4a2.0023,2.0023,0,0,0-2-2H6A2.0023,2.0023,0,0,0,4,4V28A2.0023,2.0023,0,0,0,6,30Z"></path><path d="M20.586 20.586 24.172 17 10 17 10 15 24.172 15 20.586 11.414 22 10 28 16 22 22 20.586 20.586z"></path></svg>`);function Xt(e,t){let n=C(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),r=C(n,[`size`,`title`]);l(t,!1);let i=N(),o=N(),s=z(t,`size`,8,16),d=z(t,`title`,8,void 0);re(()=>(b(n),b(d())),()=>{S(i,n[`aria-label`]||n[`aria-labelledby`]||d())}),re(()=>(y(i),b(n)),()=>{S(o,{"aria-hidden":y(i)?void 0:!0,role:y(i)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),F(),U();var f=Yt();P(f,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:s(),height:s(),...y(o),...r}));var p=k(f),h=e=>{var t=Jt(),n=k(t,!0);q(t),w(()=>a(n,d())),c(e,t)};u(p,e=>{d()&&e(h)}),m(2),q(f),c(e,f),I()}var Zt=K(`<!> <span class="nav-item-label">Profile</span> <!>`,1),Qt=K(`<!> <span class="nav-item-label">MCP Access</span> <!>`,1),$t=K(`<!> <span class="nav-item-label">External Connectors</span> <!>`,1),en=K(`<!> <span class="nav-item-label">Manage Team</span> <!>`,1),tn=K(`<!> <span class="nav-item-label">Manage Folders</span> <!>`,1),nn=K(`<!> <span class="nav-item-label">Manage Organization</span> <!>`,1),rn=K(`<!> <!> <!> <!> <!>`,1),an=K(`<!> <span class="nav-item-label">Sign out</span>`,1),on=K(`<div class="settings-subheader svelte-18v9r9v">Settings</div> <nav class="settings-nav svelte-18v9r9v" aria-label="Settings"><!> <!></nav> <!>`,1);function sn(e,t){l(t,!0);let n=()=>ie(le,`$page`,i),[i,a]=r(),o=W(()=>n().params.tab),s=W(()=>!X.authEnabled||X.user?.role===`owner`);function d(e){y(o)!==e&&se(`/settings/${e}`)}async function f(){await X.logout(),window.location.href=`/login`}var p=on(),h=V(j(p),2),g=k(h);{let e=W(()=>y(o)===`profile`?`active`:``);Q(g,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`profile`),children:(e,t)=>{var n=Zt(),r=j(n);Ke(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var _=V(g,2),v=e=>{var t=rn(),n=j(t);{let e=W(()=>y(o)===`mcp`?`active`:``);Q(n,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`mcp`),children:(e,t)=>{var n=Qt(),r=j(n);Ge(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var r=V(n,2);{let e=W(()=>y(o)===`external`?`active`:``);Q(r,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`external`),children:(e,t)=>{var n=$t(),r=j(n);Ve(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var i=V(r,2);{let e=W(()=>y(o)===`team`?`active`:``);Q(i,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`team`),children:(e,t)=>{var n=en(),r=j(n);We(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var a=V(i,2);{let e=W(()=>y(o)===`folders`?`active`:``);Q(a,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`folders`),children:(e,t)=>{var n=tn(),r=j(n);xt(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}var s=V(a,2);{let e=W(()=>y(o)===`organization`?`active`:``);Q(s,{variant:`ghost`,get class(){return`nav-item ${y(e)??``}`},onclick:()=>d(`organization`),children:(e,t)=>{var n=nn(),r=j(n);qe(r,{size:15}),Pe(V(r,4),{size:16,class:`nav-item-chevron`}),c(e,n)},$$slots:{default:!0}})}c(e,t)};u(_,e=>{y(s)&&e(v)}),q(h);var b=V(h,2),x=e=>{Q(e,{variant:`ghost`,class:`nav-item sign-out-item`,onclick:f,children:(e,t)=>{var n=an();Xt(j(n),{size:15}),m(2),c(e,n)},$$slots:{default:!0}})};u(b,e=>{X.authEnabled&&X.user&&e(x)}),c(e,p),I(),a()}var cn=K(`<label><!></label>`);function $(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=H(t,[`$$slots`,`$$events`,`$$legacy`,`class`,`ref`,`children`]);var i=cn();P(i,e=>({class:e,...r}),[()=>yt(`text-xs font-medium text-[var(--color-text-secondary)]`,t.class)]),f(k(i),()=>t.children??_),q(i),O(i,e=>n(e),()=>n()),c(e,i),I()}function ln(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=z(t,`data-slot`,3,`separator`),a=H(t,[`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`data-slot`]);var o=p(),s=j(o);{let e=W(()=>yt(`bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:min-h-full data-[orientation=vertical]:w-px`,t.class));i(s,()=>It,(t,i)=>{i(t,E({get"data-slot"(){return r()},get class(){return y(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)}}))})}c(e,o),I()}function un(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=z(t,`checked`,15,!1),a=H(t,[`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`checked`]);var o=p(),s=j(o);{let e=W(()=>`sg-switch `+(t.class??``));i(s,()=>Gt,(t,o)=>{o(t,E({get class(){return y(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)},get checked(){return r()},set checked(e){r(e)},children:(e,t)=>{var n=p();i(j(n),()=>qt,(e,t)=>{t(e,{class:`sg-switch-thumb`})}),c(e,n)},$$slots:{default:!0}}))})}c(e,o),I()}var dn=K(`<button></button>`),fn=K(`<!> `,1),pn=K(`<div class="error-msg svelte-1j14vpz"> </div>`),mn=K(`<div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Member Details</div> <div class="fields svelte-1j14vpz"><div class="field svelte-1j14vpz"><!> <!></div> <div class="field svelte-1j14vpz"><!> <!></div> <div class="field svelte-1j14vpz"><!> <div class="password-wrapper svelte-1j14vpz"><!> <button class="pw-toggle svelte-1j14vpz"><!></button></div></div></div> <!></div>`),hn=K(`<!> <div class="profile-sections svelte-1j14vpz"><div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Accent Color</div> <div class="color-grid svelte-1j14vpz"></div></div> <!> <div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Appearance</div> <label class="toggle-row svelte-1j14vpz"><!> <span class="toggle-title svelte-1j14vpz">Dark mode</span></label></div> <!> <div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Home</div> <label class="toggle-row svelte-1j14vpz"><!> <span class="toggle-title svelte-1j14vpz">Show quick actions</span></label></div> <!> <div class="section svelte-1j14vpz"><div class="section-label svelte-1j14vpz">Your Data</div> <p class="section-help svelte-1j14vpz">Download a zip of your accessible folders, including full git history. Your data is yours — Studiograph is local-first.</p> <div><!></div></div> <!> <!></div>`,1),gn=K(`<!> Saved`,1),_n=K(`<!> <!>`,1);function vn(e,n){l(n,!0);let r=te(`theme`),o=G(!1);async function d(e){S(o,!0);try{await Te.saveAccentColor(e),Y.applyAccentColor(e)}catch(e){console.error(`Failed to save accent color:`,e)}finally{S(o,!1)}}let f=W(()=>!Ee.hideHomeStarters);async function h(e){try{await Ee.setHideHomeStarters(!e)}catch(e){let{toast:t}=await ce(async()=>{let{toast:e}=await import(`./BAH0sc_p.js`).then(e=>e.t);return{toast:e}},__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url);t.error(e?.message??`Could not update preference`)}}let g=G(!1);async function _(){if(!y(g)){S(g,!0);try{let e=document.createElement(`a`);e.href=`/api/workspace/export`,e.download=``,document.body.appendChild(e),e.click(),document.body.removeChild(e)}finally{setTimeout(()=>{S(g,!1)},1500)}}}let b=G(L(X.user?.displayName||``)),C=G(L(X.user?.email||``)),E=G(``),D=G(!1),O=G(!1),A=G(``),M=G(!1);B(()=>{n.open&&X.user&&(S(b,X.user.displayName||``,!0),S(C,X.user.email||``,!0),S(E,``),S(D,!1),S(A,``),S(M,!1))});let N=W(()=>X.user?y(b)!==(X.user.displayName||``)||y(C)!==(X.user.email||``)||y(E).length>0:!1);async function P(){S(O,!0),S(A,``),S(M,!1);try{let e={};y(b)!==(X.user?.displayName||``)&&(e.displayName=y(b)),y(C)!==(X.user?.email||``)&&(e.email=y(C)),y(E)&&(e.newPassword=y(E)),await ve(e),await X.checkAuth(),S(E,``),S(M,!0),setTimeout(()=>{S(M,!1)},2e3)}catch(e){S(A,e.message||`Failed to save`,!0)}finally{S(O,!1)}}var F=_n(),R=j(F);i(R,()=>dt,(e,n)=>{n(e,{class:`settings-body dialog-body-lg`,children:(e,n)=>{var l=hn(),p=j(l);i(p,()=>st,(e,t)=>{t(e,{children:(e,t)=>{m(),c(e,s(`Profile`))},$$slots:{default:!0}})});var O=V(p,2),M=k(O),N=V(k(M),2);t(N,21,()=>Ie,ee,(e,t)=>{var n=dn();let r,i;w(()=>{r=ae(n,1,`color-swatch svelte-1j14vpz`,null,r,{active:Te.accentColor===y(t).color}),x(n,`title`,y(t).name),n.disabled=y(o),i=T(n,``,i,{background:y(t).color,"--swatch-color":y(t).color})}),v(`click`,n,()=>d(y(t).color)),c(e,n)}),q(N),q(M);var P=V(M,2);ln(P,{});var F=V(P,2),I=V(k(F),2),te=k(I);{let e=W(()=>r.current===`dark`);un(te,{get checked(){return y(e)},onCheckedChange:()=>r.toggle()})}m(2),q(I),q(F);var L=V(F,2);ln(L,{});var R=V(L,2),z=V(k(R),2);un(k(z),{get checked(){return y(f)},onCheckedChange:h}),m(2),q(z),q(R);var B=V(R,2);ln(B,{});var ne=V(B,2),re=V(k(ne),4);Q(k(re),{variant:`outline`,onclick:_,get disabled(){return y(g)},children:(e,t)=>{var n=fn(),r=j(n);Ue(r,{size:14});var i=V(r);w(()=>a(i,` ${y(g)?`Preparing…`:`Export Workspace`}`)),c(e,n)},$$slots:{default:!0}}),q(re),q(ne);var H=V(ne,2);ln(H,{});var U=V(H,2),ie=e=>{var t=mn(),n=V(k(t),2),r=k(n),i=k(r);$(i,{for:`profile-name`,children:(e,t)=>{m(),c(e,s(`Name`))},$$slots:{default:!0}}),St(V(i,2),{id:`profile-name`,placeholder:`Your name`,get value(){return y(b)},set value(e){S(b,e,!0)}}),q(r);var o=V(r,2),l=k(o);$(l,{for:`profile-email`,children:(e,t)=>{m(),c(e,s(`Email`))},$$slots:{default:!0}}),St(V(l,2),{id:`profile-email`,type:`email`,placeholder:`you@example.com`,get value(){return y(C)},set value(e){S(C,e,!0)}}),q(o);var d=V(o,2),f=k(d);$(f,{for:`profile-pw`,children:(e,t)=>{m(),c(e,s(`New Password`))},$$slots:{default:!0}});var p=V(f,2),h=k(p);{let e=W(()=>y(D)?`text`:`password`);St(h,{id:`profile-pw`,get type(){return y(e)},placeholder:`Leave blank to keep current`,autocomplete:`new-password`,get value(){return y(E)},set value(e){S(E,e,!0)}})}var g=V(h,2),_=k(g),x=e=>{Be(e,{size:15})},T=e=>{Re(e,{size:15})};u(_,e=>{y(D)?e(x):e(T,-1)}),q(g),q(p),q(d),q(n);var O=V(n,2),j=e=>{var t=pn(),n=k(t,!0);q(t),w(()=>a(n,y(A))),c(e,t)};u(O,e=>{y(A)&&e(j)}),q(t),v(`click`,g,()=>{S(D,!y(D))}),c(e,t)};u(U,e=>{X.user&&e(ie)}),q(O),c(e,l)},$$slots:{default:!0}})});var z=V(R,2),ne=e=>{var t=p();i(j(t),()=>lt,(e,t)=>{t(e,{children:(e,t)=>{{let t=W(()=>y(O)||!y(N));Q(e,{variant:`accent`,onclick:P,get disabled(){return y(t)},children:(e,t)=>{var n=p(),r=j(n),i=e=>{var t=gn();bt(j(t),{size:14}),m(),c(e,t)},o=e=>{var t=s();w(()=>a(t,y(O)?`Saving...`:`Save Changes`)),c(e,t)};u(r,e=>{y(M)?e(i):e(o,-1)}),c(e,n)},$$slots:{default:!0}})}},$$slots:{default:!0}})}),c(e,t)};u(z,e=>{X.user&&e(ne)}),c(e,F),I()}h([`click`]);var yn=K(`<textarea></textarea>`);function bn(e,t){l(t,!0);let n=z(t,`ref`,15,null),r=z(t,`value`,15),i=H(t,[`$$slots`,`$$events`,`$$legacy`,`class`,`ref`,`value`]);var a=yn();D(a),P(a,e=>({class:e,...i}),[()=>yt(`w-full rounded-md border border-[var(--color-border)] bg-[var(--color-bg)] px-2.5 py-2 text-base text-[var(--color-text-primary)] font-[inherit] leading-relaxed outline-none transition-colors placeholder:text-[var(--color-text-tertiary)] hover:border-[var(--color-text-tertiary)] focus:border-[var(--color-accent,#f04e4e)] disabled:cursor-not-allowed disabled:opacity-50`,t.class)]),O(a,e=>n(e),()=>n()),A(a,r),c(e,a),I()}function xn(){return J(`/api/connectors`)}function Sn(e,t){return J(`/api/connectors/import`,{method:`POST`,body:JSON.stringify({json:e,name:t})})}function Cn(e){return J(`/api/connectors/${encodeURIComponent(e)}/config`)}function wn(e,t){return J(`/api/connectors/${encodeURIComponent(e)}/config`,{method:`POST`,body:JSON.stringify({...t,name:e})})}function Tn(e){return J(`/api/connectors/${encodeURIComponent(e)}/config`,{method:`DELETE`})}function En(e){return J(`/api/connectors/${encodeURIComponent(e)}/oauth/connect`,{method:`POST`})}function Dn(e){return J(`/api/connectors/${encodeURIComponent(e)}/oauth/status`)}function On(e){return J(`/api/connectors/${encodeURIComponent(e)}/oauth/disconnect`,{method:`POST`})}var kn=n(`<title> </title>`),An=n(`<svg><!><path d="M21,2a8.9977,8.9977,0,0,0-8.6119,11.6118L2,24v6H8L18.3881,19.6118A9,9,0,1,0,21,2Zm0,16a7.0125,7.0125,0,0,1-2.0322-.3022L17.821,17.35l-.8472.8472-3.1811,3.1812L12.4141,20,11,21.4141l1.3787,1.3786-1.5859,1.586L9.4141,23,8,24.4141l1.3787,1.3786L7.1716,28H4V24.8284l9.8023-9.8023.8472-.8474-.3473-1.1467A7,7,0,1,1,21,18Z"></path><circle cx="22" cy="10" r="2"></circle></svg>`);function jn(e,t){let n=C(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),r=C(n,[`size`,`title`]);l(t,!1);let i=N(),o=N(),s=z(t,`size`,8,16),d=z(t,`title`,8,void 0);re(()=>(b(n),b(d())),()=>{S(i,n[`aria-label`]||n[`aria-labelledby`]||d())}),re(()=>(y(i),b(n)),()=>{S(o,{"aria-hidden":y(i)?void 0:!0,role:y(i)?`img`:void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),F(),U();var f=An();P(f,()=>({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,fill:`currentColor`,preserveAspectRatio:`xMidYMid meet`,width:s(),height:s(),...y(o),...r}));var p=k(f),h=e=>{var t=kn(),n=k(t,!0);q(t),w(()=>a(n,d())),c(e,t)};u(p,e=>{d()&&e(h)}),m(2),q(f),c(e,f),I()}var Mn=K(`<p class="loading-text svelte-67gzoi">Loading settings...</p>`),Nn=K(`<option> </option>`),Pn=K(`<p class="error-text svelte-67gzoi"> </p>`),Fn=K(`<!> Saved`,1),In=K(`<div class="setting-group svelte-67gzoi"><!> <!> <p class="setting-help svelte-67gzoi">Used for real-time speech-to-text. Get a key at <a href="https://console.deepgram.com" target="_blank" rel="noopener" class="svelte-67gzoi">console.deepgram.com</a></p></div> <div class="setting-group svelte-67gzoi"><!> <select id="default-folder" class="select-input svelte-67gzoi"><option>Select a folder...</option><!></select> <p class="setting-help svelte-67gzoi">Meetings will be saved to this folder by default.</p></div> <!> <div class="save-row svelte-67gzoi"><!></div>`,1),Ln=K(`<div class="meeting-settings svelte-67gzoi"><h2 class="panel-title svelte-67gzoi">Meeting Capture</h2> <p class="panel-description svelte-67gzoi">Configure meeting transcription for the Studiograph desktop app.
3
3
  Record meetings, generate AI meeting notes, and save them to your workspace.</p> <!></div>`);function Rn(e,n){l(n,!0);let r=G(``),i=G(``),o=G(!1),d=G(!1),f=G(!0),h=G(``);B(()=>{g()});async function g(){S(f,!0);try{let e=await J(`/api/preferences/settings`);S(r,e.deepgram_api_key||``,!0),S(i,e.default_meeting_folder||``,!0)}catch{}S(f,!1)}async function _(){S(o,!0),S(h,``);try{await J(`/api/preferences/settings`,{method:`PATCH`,body:JSON.stringify({deepgram_api_key:y(r),default_meeting_folder:y(i)})}),S(d,!0),setTimeout(()=>{S(d,!1)},2e3)}catch(e){S(h,e.message||`Failed to save`,!0)}S(o,!1)}var v=Ln(),b=V(k(v),4),x=e=>{c(e,Mn())},C=e=>{var n=In(),l=j(n),f=k(l);$(f,{for:`deepgram-key`,children:(e,t)=>{m(),c(e,s(`Deepgram API Key`))},$$slots:{default:!0}}),St(V(f,2),{id:`deepgram-key`,type:`password`,placeholder:`dg_...`,get value(){return y(r)},set value(e){S(r,e,!0)}}),m(2),q(l);var g=V(l,2),v=k(g);$(v,{for:`default-folder`,children:(e,t)=>{m(),c(e,s(`Default Folder`))},$$slots:{default:!0}});var b=V(v,2),x=k(b);x.value=x.__value=``,t(V(x),17,()=>Y.repos,ee,(e,t)=>{var n=Nn(),r=k(n,!0);q(n);var i={};w(()=>{a(r,y(t).displayName||y(t).name),i!==(i=y(t).name)&&(n.value=(n.__value=y(t).name)??``)}),c(e,n)}),q(b),m(2),q(g);var C=V(g,2),T=e=>{var t=Pn(),n=k(t,!0);q(t),w(()=>a(n,y(h))),c(e,t)};u(C,e=>{y(h)&&e(T)});var E=V(C,2),D=k(E);{let e=W(()=>y(d)?`outline`:`default`);Q(D,{get variant(){return y(e)},onclick:_,get disabled(){return y(o)},children:(e,t)=>{var n=p(),r=j(n),i=e=>{var t=Fn();bt(j(t),{size:14}),m(),c(e,t)},l=e=>{var t=s();w(()=>a(t,y(o)?`Saving...`:`Save Settings`)),c(e,t)};u(r,e=>{y(d)?e(i):e(l,-1)}),c(e,n)},$$slots:{default:!0}})}q(E),oe(b,()=>y(i),e=>S(i,e)),c(e,n)};u(b,e=>{y(f)?e(x):e(C,-1)}),q(v),c(e,v),I()}var zn=K(`<p class="hint svelte-bgrptr">Loading configuration...</p>`),Bn=K(`<!> <div class="security-body svelte-bgrptr"><!> <div class="mint-field svelte-bgrptr"><!> <div class="value-copy-row mono svelte-bgrptr"><span class="value-copy-text svelte-bgrptr"> </span> <button class="copy-inline svelte-bgrptr" title="Copy token"><!></button></div></div> <div class="mint-field svelte-bgrptr"><div class="mint-field-label-row svelte-bgrptr"><!> <button class="copy-inline svelte-bgrptr" title="Copy JSON config"><!></button></div> <pre class="config-block svelte-bgrptr"> </pre></div></div>`,1),Vn=K(`<section class="security-section svelte-bgrptr"><div class="section-label svelte-bgrptr">Your new token</div> <!></section>`),Hn=K(`<p class="lost-config-hint svelte-bgrptr">The raw token is only shown once. <button class="inline-link svelte-bgrptr">Create a new token</button> to get a fresh client config.</p>`),Un=K(`<div class="danger-actions svelte-bgrptr"><!> <!></div>`),Wn=K(`<!> <div class="danger-body svelte-bgrptr"><!></div> <!>`,1),Gn=K(`<div class="user-detail-header svelte-bgrptr"><span class="token-icon-lg svelte-bgrptr"><!></span> <div class="user-detail-name svelte-bgrptr"> </div></div> <div class="user-detail-field svelte-bgrptr"><!> <div class="static-value svelte-bgrptr"> </div></div> <div class="user-detail-field svelte-bgrptr"><!> <div class="static-value svelte-bgrptr"> </div></div> <div class="user-detail-field svelte-bgrptr"><!> <div class="value-copy-row mono svelte-bgrptr"><span class="value-copy-text svelte-bgrptr"> </span> <button class="copy-inline svelte-bgrptr" title="Copy URL"><!></button></div></div> <!> <section class="danger-zone svelte-bgrptr"><div class="danger-label svelte-bgrptr">Danger Zone</div> <!></section>`,1),Kn=K(`<div class="error-msg svelte-bgrptr"> </div>`),qn=K(`<form class="add-form svelte-bgrptr"><div class="add-form-header svelte-bgrptr"><span class="add-form-title svelte-bgrptr">New Token</span> <button type="button" class="add-form-close svelte-bgrptr" aria-label="Cancel"><!></button></div> <div class="field svelte-bgrptr"><!> <!></div> <!> <div class="form-actions svelte-bgrptr"><!></div></form>`),Jn=K(`<button class="add-btn svelte-bgrptr"><!> New Token</button>`),Yn=K(`<button class="card card-row token-card svelte-bgrptr"><span class="token-icon svelte-bgrptr"><!></span> <span class="card-title svelte-bgrptr"> </span> <span class="folder-chevron svelte-bgrptr"><!></span></button>`),Xn=K(`<div class="member-list svelte-bgrptr"></div>`),Zn=K(`<h2 class="panel-title svelte-bgrptr">MCP Access</h2> <p class="panel-lede svelte-bgrptr">Connect Claude Code, Cursor, or another MCP client to this
4
4
  workspace. Each gets its own token, scoped to your folder access.</p> <!> <!>`,1),Qn=K(`<p class="hint svelte-bgrptr">Loading connectors...</p>`),$n=K(`<div class="error-msg svelte-bgrptr"> </div>`),er=K(`<div class="danger-actions svelte-bgrptr"><!> <!></div>`),tr=K(`<!> <div class="danger-body svelte-bgrptr"><!></div> <!>`,1),nr=K(`<div class="user-detail-header svelte-bgrptr"><span class="token-icon-lg svelte-bgrptr"><!></span> <div class="user-detail-name svelte-bgrptr"> </div></div> <div class="user-detail-field svelte-bgrptr"><!> <div class="value-copy-row mono svelte-bgrptr"><span class="value-copy-text svelte-bgrptr"> </span> <button class="copy-inline svelte-bgrptr" title="Copy URL"><!></button></div></div> <form class="user-detail-field svelte-bgrptr"><div class="mint-field-label-row svelte-bgrptr"><!> <!></div> <!> <!></form> <section class="danger-zone svelte-bgrptr"><div class="danger-label svelte-bgrptr">Danger Zone</div> <!></section>`,1),rr=K(`<div class="error-msg svelte-bgrptr"> </div>`),ir=K(`<form class="add-form svelte-bgrptr"><div class="add-form-header svelte-bgrptr"><span class="add-form-title svelte-bgrptr">Add External Connector</span> <button type="button" class="add-form-close svelte-bgrptr" aria-label="Cancel"><!></button></div> <div class="field svelte-bgrptr"><!> <!></div> <div class="field svelte-bgrptr"><!> <!></div> <!> <div class="form-actions svelte-bgrptr"><!></div></form>`),ar=K(`<button class="add-btn svelte-bgrptr"><!> Add External Connector</button>`),or=K(`<button class="connected-label svelte-bgrptr"><!> Connected</button>`),sr=K(`<span class="connected-label svelte-bgrptr"><!> Connected</span>`),cr=K(`<div class="card card-row token-card svelte-bgrptr" role="button" tabindex="0"><span class="token-icon svelte-bgrptr"><!></span> <span class="card-title svelte-bgrptr"> </span> <!> <span class="folder-chevron svelte-bgrptr"><!></span></div>`),lr=K(`<button class="connected-label svelte-bgrptr"><!> Connected</button>`),ur=K(`<span class="connected-label svelte-bgrptr"><!> Connected</span>`),dr=K(`<div class="card card-row token-card member-card-static svelte-bgrptr"><span class="token-icon svelte-bgrptr"><!></span> <span class="card-title svelte-bgrptr"> </span> <!></div>`),fr=K(`<div class="member-list svelte-bgrptr"></div>`),pr=K(`<h2 class="panel-title svelte-bgrptr">External Connectors</h2> <p class="panel-lede svelte-bgrptr">Connect an external MCP server. Each signs in with your account, so
5
5
  the agent acts under your name.</p> <!> <!>`,1);function mr(e,n){l(n,!0);let r=W(()=>X.user?.role===`owner`||!X.authEnabled),d=W(()=>me.integrationsTab),f=G(!1),h=G(``),g=G(``),_=G(L([])),b=G(null),x=G(null),C=G(!1),T=G(``),E=G(``),D=G(!1),O=G(!1),A=G(!1),M=G(!1),N=G(!1),P=G(!1),F=W(()=>y(b)===null?null:y(_).find(e=>e.id===y(b))??null),z=G(L([])),re=G(!1),H=G(!1),U=G(!1),ie=G(``),ae=G(``),oe=G(!1),K=G(``),se=G(null),le=null,J=G(null),ue=W(()=>y(J)===null?null:y(z).find(e=>e.name===y(J))??null),de=G(``),fe=G(``),Y=W(()=>y(de)!==y(fe)),he=G(!1),ge=G(``),_e=G(!1),ve=G(!1),ye=G(!1);B(()=>{n.open&&!y(f)&&be(),n.open&&!y(re)&&ze()}),R(()=>{le&&clearInterval(le)}),ne(()=>{let e=e=>{let t=e.detail?.tab;(t===`meeting-capture`||t===`external`||t===`studiograph`)&&(me.integrationsTab=t)};return window.addEventListener(`sg:set-settings-tab`,e),()=>window.removeEventListener(`sg:set-settings-tab`,e)});async function be(){if(!y(f))try{let e=await pe();S(g,JSON.stringify(e.config,null,2),!0),S(h,e.url||e.config?.mcpServers?.studiograph?.url||``,!0);let{tokens:t}=await xe();S(_,t,!0),S(f,!0)}catch{}}function Ce(e,t){navigator.clipboard.writeText(e),t===`token`?(S(O,!0),setTimeout(()=>{S(O,!1)},2e3)):t===`config`?(S(A,!0),setTimeout(()=>{S(A,!1)},2e3)):(S(M,!0),setTimeout(()=>{S(M,!1)},2e3))}let Te=W(()=>y(x)?y(g).replace(`<your-token-here>`,y(x).token):y(g));function Ee(){S(b,null),S(x,null),S(C,!1),S(T,``),S(E,``),S(N,!1),S(O,!1),S(A,!1),S(M,!1)}function Oe(e){S(b,e,!0),S(x,null),S(N,!1)}function ke(){S(C,!0),S(T,``),S(E,``)}function Ae(){S(C,!1),S(T,``),S(E,``)}async function je(){let e=y(T).trim();if(!e){S(E,`Give this token a name (e.g. "Claude Desktop").`);return}S(D,!0),S(E,``);try{let t=await Se(e),{tokens:n}=await xe();S(_,n,!0),S(x,{id:t.id,name:t.name,token:t.token},!0),S(b,t.id,!0),S(C,!1),S(T,``)}catch(e){S(E,e?.message??`Failed to create token`,!0)}finally{S(D,!1)}}async function Me(){if(y(b)!==null){S(P,!0);try{await we(y(b));let{tokens:e}=await xe();S(_,e,!0),Ee()}catch{}finally{S(P,!1)}}}function Fe(e){if(!e)return`never`;let t=new Date(e.replace(` `,`T`)+(e.includes(`Z`)?``:`Z`));if(isNaN(t.getTime()))return e;let n=Date.now()-t.getTime(),r=Math.max(0,Math.floor(n/1e3));if(r<60)return`just now`;let i=Math.floor(r/60);if(i<60)return`${i}m ago`;let a=Math.floor(i/60);if(a<24)return`${a}h ago`;let o=Math.floor(a/24);return o<7?`${o}d ago`:t.toLocaleDateString(void 0,{month:`short`,day:`numeric`,year:`numeric`})}function Ie(e){if(!e)return``;let t=new Date(e.replace(` `,`T`)+(e.includes(`Z`)?``:`Z`));return isNaN(t.getTime())?e:t.toLocaleDateString(void 0,{month:`short`,day:`numeric`,year:`numeric`})}function Re(e){return e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}async function ze(){S(H,!0);try{S(z,(await xn()).connectors,!0)}catch{}finally{S(H,!1),S(re,!0)}}async function Be(){if(y(ie).trim()){S(oe,!0),S(K,``);try{await Sn(y(ie).trim(),y(ae).trim()),S(ie,``),S(ae,``),S(U,!1),S(z,(await xn()).connectors,!0)}catch(e){S(K,e.message||`Failed to import connector`,!0)}finally{S(oe,!1)}}}async function Ve(e){S(se,e,!0);try{let t=await En(e);if(t.connected){S(se,null),S(z,(await xn()).connectors,!0);return}if(t.authorizationUrl){let n=t.authorizationUrl;setTimeout(()=>window.open(n,`_blank`),0),le=setInterval(async()=>{try{(await Dn(e)).connected&&(le&&clearInterval(le),le=null,S(se,null),S(z,(await xn()).connectors,!0))}catch{}},2e3)}}catch(t){S(se,null),ce(async()=>{let{toast:e}=await import(`./BAH0sc_p.js`).then(e=>e.t);return{toast:e}},__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url).then(({toast:n})=>{let r=t.message||`Connection failed`,i=r.includes(`403`)?`${e} rejected the connection (403 Forbidden).`:r.includes(`OAuth`)?r.split(`:`).slice(0,2).join(`:`):r;n.error(i)})}}async function He(e){try{await On(e),S(z,(await xn()).connectors,!0)}catch{}}function Ue(){S(J,null),S(de,``),S(fe,``),S(ge,``),S(_e,!1),S(ve,!1),S(U,!1),S(ie,``),S(ae,``),S(K,``)}async function We(e){S(J,e,!0),S(de,``),S(fe,``),S(ge,``),S(ve,!1);try{let t=await Cn(e);if(t.config){let{name:e,requiresOAuth:n,description:r,...i}=t.config,a=JSON.stringify(i,null,2);S(de,a,!0),S(fe,a,!0)}}catch{}}async function Ke(){if(!(!y(J)||!y(de).trim())){S(he,!0),S(ge,``);try{let e=JSON.parse(y(de));await wn(y(J),e),S(z,(await xn()).connectors,!0),S(fe,y(de),!0)}catch(e){S(ge,e instanceof SyntaxError?`Invalid JSON — check the config and try again.`:e?.message||`Failed to save`,!0)}finally{S(he,!1)}}}async function qe(){if(y(J)){S(ye,!0);try{await Tn(y(J)),S(z,(await xn()).connectors,!0),Ue()}catch{}finally{S(ye,!1)}}}function Je(e){navigator.clipboard.writeText(e),S(_e,!0),setTimeout(()=>{S(_e,!1)},2e3)}B(()=>{!De.meetingCapture&&y(d)===`meeting-capture`&&(me.integrationsTab=`studiograph`)});let Ye=null;B(()=>{let e=y(d);Ye!==null&&Ye!==e&&(Ee(),Ue()),Ye=e});let Z=te(`settings-detail`);B(()=>{Z&&(Z.open=y(b)!==null||y(ue)!==null,Z.close=()=>{Ee(),Ue()})});var Xe=p();i(j(Xe),()=>dt,(e,n)=>{n(e,{class:`settings-body`,children:(e,n)=>{var i=p(),l=j(i),g=e=>{var n=p(),r=j(n),i=e=>{c(e,zn())},l=e=>{let t=W(()=>y(F)),n=W(()=>y(x)&&y(x).id===y(t).id?y(x):null);var r=Gn(),i=j(r),o=k(i);jn(k(o),{size:22}),q(o);var l=V(o,2),d=k(l,!0);q(l),q(i);var f=V(i,2),p=k(f);$(p,{children:(e,t)=>{m(),c(e,s(`Created`))},$$slots:{default:!0}});var g=V(p,2),_=k(g,!0);q(g),q(f);var b=V(f,2),T=k(b);$(T,{children:(e,t)=>{m(),c(e,s(`Last used`))},$$slots:{default:!0}});var E=V(T,2),D=k(E,!0);q(E),q(b);var ee=V(b,2),I=k(ee);$(I,{children:(e,t)=>{m(),c(e,s(`Endpoint URL`))},$$slots:{default:!0}});var te=V(I,2),L=k(te),R=k(L,!0);q(L);var z=V(L,2),B=k(z),ne=e=>{bt(e,{size:14})},re=e=>{Ot(e,{size:14})};u(B,e=>{y(M)?e(ne):e(re,-1)}),q(z),q(te),q(ee);var H=V(ee,2),U=e=>{var t=Vn();Tt(V(k(t),2),{variant:`info`,class:`security-alert mint-alert`,children:(e,t)=>{var r=Bn(),i=j(r);bt(i,{size:16});var o=V(i,2),l=k(o);Et(l,{children:(e,t)=>{m(),c(e,s(`Copy the token and client config now. They won’t be shown again.`))},$$slots:{default:!0}});var d=V(l,2),f=k(d);$(f,{children:(e,t)=>{m(),c(e,s(`API token`))},$$slots:{default:!0}});var p=V(f,2),h=k(p),g=k(h,!0);q(h);var _=V(h,2),b=k(_),x=e=>{bt(e,{size:14})},S=e=>{Ot(e,{size:14})};u(b,e=>{y(O)?e(x):e(S,-1)}),q(_),q(p),q(d);var C=V(d,2),T=k(C),E=k(T);$(E,{children:(e,t)=>{m(),c(e,s(`Client config`))},$$slots:{default:!0}});var D=V(E,2),M=k(D),N=e=>{bt(e,{size:14})},P=e=>{Ot(e,{size:14})};u(M,e=>{y(A)?e(N):e(P,-1)}),q(D),q(T);var F=V(T,2),ee=k(F,!0);q(F),q(C),q(o),w(()=>{a(g,y(n).token),a(ee,y(Te))}),v(`click`,_,()=>Ce(y(n).token,`token`)),v(`click`,D,()=>Ce(y(Te),`config`)),c(e,r)},$$slots:{default:!0}}),q(t),c(e,t)},ie=e=>{var t=Hn(),n=V(k(t));m(),q(t),v(`click`,n,()=>{Ee(),S(C,!0)}),c(e,t)};u(H,e=>{y(n)?e(U):e(ie,-1)});var ae=V(H,2);Tt(V(k(ae),2),{variant:`destructive`,class:`danger-alert`,children:(e,n)=>{var r=Wn(),i=j(r);wt(i,{size:16});var o=V(i,2);Et(k(o),{children:(e,n)=>{m();var r=s();w(()=>a(r,`Revoke ${y(t).name??``}? Any client using it will immediately stop working.`)),c(e,r)},$$slots:{default:!0}}),q(o);var l=V(o,2),d=e=>{var t=Un(),n=k(t);Q(n,{variant:`ghost`,class:`danger-cancel`,onclick:()=>{S(N,!1)},get disabled(){return y(P)},children:(e,t)=>{m(),c(e,s(`Cancel`))},$$slots:{default:!0}}),Q(V(n,2),{variant:`accent`,onclick:Me,get disabled(){return y(P)},children:(e,t)=>{m();var n=s();w(()=>a(n,y(P)?`Revoking...`:`Revoke`)),c(e,n)},$$slots:{default:!0}}),q(t),c(e,t)},f=e=>{Q(e,{variant:`accent`,onclick:()=>{S(N,!0)},children:(e,t)=>{m(),c(e,s(`Revoke Token`))},$$slots:{default:!0}})};u(l,e=>{y(N)?e(d):e(f,-1)}),c(e,r)},$$slots:{default:!0}}),q(ae),w((e,n)=>{a(d,y(t).name),a(_,e),a(D,n),a(R,y(h))},[()=>Ie(y(t).created_at),()=>y(t).last_used_at?Fe(y(t).last_used_at):`Never`]),v(`click`,z,()=>Ce(y(h),`url`)),c(e,r)},d=e=>{var n=Zn(),r=V(j(n),4),i=e=>{var t=qn(),n=k(t),r=V(k(n),2);Ne(k(r),{size:16}),q(r),q(n);var i=V(n,2),l=k(i);$(l,{for:`token-name`,children:(e,t)=>{m(),c(e,s(`Token name`))},$$slots:{default:!0}}),St(V(l,2),{id:`token-name`,placeholder:`Claude Desktop`,get disabled(){return y(D)},autofocus:!0,get value(){return y(T)},set value(e){S(T,e,!0)}}),q(i);var d=V(i,2),f=e=>{var t=Kn(),n=k(t,!0);q(t),w(()=>a(n,y(E))),c(e,t)};u(d,e=>{y(E)&&e(f)});var p=V(d,2),h=k(p);{let e=W(()=>y(D)||!y(T).trim());Q(h,{variant:`accent`,type:`submit`,get disabled(){return y(e)},children:(e,t)=>{m();var n=s();w(()=>a(n,y(D)?`Creating...`:`Create Token`)),c(e,n)},$$slots:{default:!0}})}q(p),q(t),w(()=>r.disabled=y(D)),o(`submit`,t,e=>{e.preventDefault(),je()}),v(`click`,r,Ae),c(e,t)},l=e=>{var t=Jn();Le(k(t),{size:16}),m(),q(t),v(`click`,t,ke),c(e,t)};u(r,e=>{y(C)?e(i):e(l,-1)});var d=V(r,2),f=e=>{var n=Xn();t(n,21,()=>y(_),ee,(e,t)=>{var n=Yn(),r=k(n);jn(k(r),{size:16}),q(r);var i=V(r,2),o=k(i,!0);q(i);var s=V(i,2);Pe(k(s),{size:16}),q(s),q(n),w(()=>a(o,y(t).name)),v(`click`,n,()=>Oe(y(t).id)),c(e,n)}),q(n),c(e,n)};u(d,e=>{y(_).length>0&&e(f)}),c(e,n)};u(r,e=>{y(f)?y(F)?e(l,1):e(d,-1):e(i)}),c(e,n)},b=e=>{var n=p(),i=j(n),l=e=>{c(e,Qn())},d=e=>{let t=W(()=>y(ue));var n=nr(),r=j(n),i=k(r);Ge(k(i),{size:22}),q(i);var l=V(i,2),d=k(l,!0);q(l),q(r);var f=V(r,2),p=k(f);$(p,{children:(e,t)=>{m(),c(e,s(`Server URL`))},$$slots:{default:!0}});var h=V(p,2),g=k(h),_=k(g,!0);q(g);var b=V(g,2),x=k(b),C=e=>{bt(e,{size:14})},T=e=>{Ot(e,{size:14})};u(x,e=>{y(_e)?e(C):e(T,-1)}),q(b),q(h),q(f);var E=V(f,2),D=k(E),O=k(D);$(O,{for:`connector-json-editor`,children:(e,t)=>{m(),c(e,s(`Configuration`))},$$slots:{default:!0}});var A=V(O,2),M=e=>{{let t=W(()=>y(he)||!y(de).trim());Q(e,{variant:`accent`,size:`sm`,type:`submit`,get disabled(){return y(t)},children:(e,t)=>{m();var n=s();w(()=>a(n,y(he)?`Saving...`:`Save`)),c(e,n)},$$slots:{default:!0}})}};u(A,e=>{y(Y)&&e(M)}),q(D);var N=V(D,2);bn(N,{id:`connector-json-editor`,rows:10,class:`mcp-config-textarea`,get value(){return y(de)},set value(e){S(de,e,!0)}});var P=V(N,2),F=e=>{var t=$n(),n=k(t,!0);q(t),w(()=>a(n,y(ge))),c(e,t)};u(P,e=>{y(ge)&&e(F)}),q(E);var ee=V(E,2);Tt(V(k(ee),2),{variant:`destructive`,class:`danger-alert`,children:(e,n)=>{var r=tr(),i=j(r);wt(i,{size:16});var o=V(i,2);Et(k(o),{children:(e,n)=>{m();var r=s();w(e=>a(r,`Remove ${e??``}? Anyone connected to it will immediately lose access.`),[()=>Re(y(t).name)]),c(e,r)},$$slots:{default:!0}}),q(o);var l=V(o,2),d=e=>{var t=er(),n=k(t);Q(n,{variant:`ghost`,class:`danger-cancel`,onclick:()=>{S(ve,!1)},get disabled(){return y(ye)},children:(e,t)=>{m(),c(e,s(`Cancel`))},$$slots:{default:!0}}),Q(V(n,2),{variant:`accent`,onclick:qe,get disabled(){return y(ye)},children:(e,t)=>{m();var n=s();w(()=>a(n,y(ye)?`Removing...`:`Remove`)),c(e,n)},$$slots:{default:!0}}),q(t),c(e,t)},f=e=>{Q(e,{variant:`accent`,onclick:()=>{S(ve,!0)},children:(e,t)=>{m(),c(e,s(`Remove Connector`))},$$slots:{default:!0}})};u(l,e=>{y(ve)?e(d):e(f,-1)}),c(e,r)},$$slots:{default:!0}}),q(ee),w(e=>{a(d,e),a(_,y(t).url)},[()=>Re(y(t).name)]),v(`click`,b,()=>Je(y(t).url)),o(`submit`,E,e=>{e.preventDefault(),Ke()}),c(e,n)},f=e=>{var n=pr(),i=V(j(n),4),l=e=>{var t=ir(),n=k(t),r=V(k(n),2);Ne(k(r),{size:16}),q(r),q(n);var i=V(n,2),l=k(i);$(l,{for:`connector-name`,children:(e,t)=>{m(),c(e,s(`Name`))},$$slots:{default:!0}}),St(V(l,2),{id:`connector-name`,placeholder:`e.g. linear`,required:!0,get value(){return y(ae)},set value(e){S(ae,e,!0)}}),q(i);var d=V(i,2),f=k(d);$(f,{for:`connector-json`,children:(e,t)=>{m(),c(e,s(`JSON Configuration`))},$$slots:{default:!0}}),bn(V(f,2),{id:`connector-json`,placeholder:`{