studiograph 1.3.48-next.71 → 1.3.48-next.73

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 +5 -1
  2. package/dist/server/yjs-manager.js +73 -1
  3. package/dist/server/yjs-manager.js.map +1 -1
  4. package/dist/web/_app/immutable/assets/{WorkspaceView.CugGZjh-.css → WorkspaceView.CEYT8yGK.css} +1 -1
  5. package/dist/web/_app/immutable/chunks/{DJnljLsI.js → 1mYg-G9o.js} +1 -1
  6. package/dist/web/_app/immutable/chunks/{eUQpz9aE.js → B5vV2fuX.js} +1 -1
  7. package/dist/web/_app/immutable/chunks/{BLCTxobU.js → B6d7Kqtw.js} +1 -1
  8. package/dist/web/_app/immutable/chunks/{DfWEuw2V.js → BLqchsPV.js} +1 -1
  9. package/dist/web/_app/immutable/chunks/{BCb4DW-d.js → BY9HsWCT.js} +1 -1
  10. package/dist/web/_app/immutable/chunks/{CShPVqpx.js → BYhTUh0n.js} +1 -1
  11. package/dist/web/_app/immutable/chunks/{Bcv5zM1V.js → CJgVAhbs.js} +1 -1
  12. package/dist/web/_app/immutable/chunks/{Ct3ejINp.js → CNs906ZH.js} +1 -1
  13. package/dist/web/_app/immutable/chunks/COffENhr.js +1 -0
  14. package/dist/web/_app/immutable/chunks/{BJtqPLP5.js → CR97xasH.js} +1 -1
  15. package/dist/web/_app/immutable/chunks/{knmiFnFp.js → CUlJcZb9.js} +1 -1
  16. package/dist/web/_app/immutable/chunks/{DdgELRG0.js → CXExAf1F.js} +1 -1
  17. package/dist/web/_app/immutable/chunks/{9goCdhdY.js → DO9Q03Lg.js} +1 -1
  18. package/dist/web/_app/immutable/chunks/{D2WAVtip2.js → D_GkBpJy2.js} +1 -1
  19. package/dist/web/_app/immutable/chunks/{DtYtRWtq.js → D_XVHzYI.js} +1 -1
  20. package/dist/web/_app/immutable/chunks/{CvkSSg1_.js → Dfu5hekA.js} +1 -1
  21. package/dist/web/_app/immutable/chunks/DojbMyvP.js +1 -0
  22. package/dist/web/_app/immutable/chunks/{Cs0sIohr.js → DqS-Swnv.js} +1 -1
  23. package/dist/web/_app/immutable/chunks/{Fo_vbG9l2.js → DrJMwer62.js} +1 -1
  24. package/dist/web/_app/immutable/chunks/{CX0QbXWB2.js → M7qnJQvE2.js} +1 -1
  25. package/dist/web/_app/immutable/chunks/{65m6PIpa.js → Og9By_L-.js} +1 -1
  26. package/dist/web/_app/immutable/chunks/{CU2cdpGt.js → TV9oyDrG.js} +1 -1
  27. package/dist/web/_app/immutable/chunks/aCzvxXfi2.js +2 -0
  28. package/dist/web/_app/immutable/entry/{app.DwyPzi5d.js → app.C4fBzsjH.js} +2 -2
  29. package/dist/web/_app/immutable/entry/start.BX5NGqph.js +1 -0
  30. package/dist/web/_app/immutable/nodes/{0.DUrHssin.js → 0.D56nWdVg.js} +2 -2
  31. package/dist/web/_app/immutable/nodes/{1.EBhuCtof.js → 1.ADZpG1S9.js} +1 -1
  32. package/dist/web/_app/immutable/nodes/{10.Y1SLtKOd.js → 10.6RTJJ5jd.js} +1 -1
  33. package/dist/web/_app/immutable/nodes/{11.sZB3Z4ZO.js → 11.BdXkZyzS.js} +1 -1
  34. package/dist/web/_app/immutable/nodes/{12.DXg1cOm3.js → 12.sRKfWEY-.js} +1 -1
  35. package/dist/web/_app/immutable/nodes/{13.DEUcXDPn.js → 13.Bg_36Hd6.js} +1 -1
  36. package/dist/web/_app/immutable/nodes/{2.BnlHhZS-.js → 2.ChildVOh.js} +4 -4
  37. package/dist/web/_app/immutable/nodes/{3.5XIQAd8g.js → 3.BxeWdxKT.js} +1 -1
  38. package/dist/web/_app/immutable/nodes/{4.DqojhbKY.js → 4.CMOoGZ6O.js} +3 -3
  39. package/dist/web/_app/immutable/nodes/{5.DJ-rzWc9.js → 5.DCewy42M.js} +1 -1
  40. package/dist/web/_app/immutable/nodes/{6.MANBwo59.js → 6.DJIwEnn2.js} +1 -1
  41. package/dist/web/_app/immutable/nodes/{7.DnBlYwt-.js → 7.BNq1qkiC.js} +1 -1
  42. package/dist/web/_app/immutable/nodes/{8.Bl66lg-n.js → 8.sAbTfkUr.js} +1 -1
  43. package/dist/web/_app/immutable/nodes/{9.B4fmIwKw.js → 9.CwErA_qO.js} +1 -1
  44. package/dist/web/_app/version.json +1 -1
  45. package/dist/web/index.html +13 -13
  46. package/package.json +1 -1
  47. package/dist/web/_app/immutable/chunks/BoElAr8s2.js +0 -2
  48. package/dist/web/_app/immutable/chunks/C99Bty6-.js +0 -1
  49. package/dist/web/_app/immutable/chunks/CGWca4QC.js +0 -1
  50. package/dist/web/_app/immutable/entry/start.DcL819Ch.js +0 -1
@@ -80,9 +80,13 @@ export declare class YjsManager {
80
80
  */
81
81
  handleMessage(docName: string, sender: import('ws').WebSocket, msgType: number, payload: Uint8Array): void;
82
82
  /**
83
- * Encode and send a framed binary message to a client.
83
+ * Encode and send a framed binary message to a client. Payloads above
84
+ * `MAX_CHUNK_PAYLOAD` are split into MSG_CHUNK frames; smaller ones go
85
+ * through the single-frame fast path unchanged.
84
86
  */
85
87
  private sendToClient;
88
+ private sendSingleFrame;
89
+ private sendChunkedFrames;
86
90
  /**
87
91
  * Get current Y.Doc text content for a document (for debugging/autosave).
88
92
  */
@@ -20,6 +20,21 @@ import * as encoding from 'lib0/encoding';
20
20
  import * as decoding from 'lib0/decoding';
21
21
  const MSG_SYNC = 0;
22
22
  const MSG_AWARENESS = 1;
23
+ /**
24
+ * MSG_CHUNK wraps a fragment of a larger logical message. Chunked frames
25
+ * have layout: [4B msgId][2B seq][2B total][1B origMsgType][chunkPayload].
26
+ * Used to keep individual WS frames under Safari/WebKit's binary-frame
27
+ * threshold (~4KB after deflate), where larger frames get truncated and
28
+ * blow up Yjs's varint decoder with `RangeError: Length out of range of
29
+ * buffer`. The client reassembles chunks and dispatches as if the
30
+ * original `origMsgType` frame had arrived intact.
31
+ */
32
+ const MSG_CHUNK = 2;
33
+ /** Threshold above which an outbound payload is split into MSG_CHUNK
34
+ * frames. 4KB stays well under the smallest reported Safari WebSocket
35
+ * binary-frame failure size, while keeping the common keystroke/awareness
36
+ * traffic on the single-frame fast path. */
37
+ const MAX_CHUNK_PAYLOAD = 4096;
23
38
  /**
24
39
  * Grace period before destroying an idle Y.Doc (ms).
25
40
  * Keep long enough that async server-side processing (LLM meeting summary,
@@ -391,9 +406,18 @@ export class YjsManager {
391
406
  }
392
407
  }
393
408
  /**
394
- * Encode and send a framed binary message to a client.
409
+ * Encode and send a framed binary message to a client. Payloads above
410
+ * `MAX_CHUNK_PAYLOAD` are split into MSG_CHUNK frames; smaller ones go
411
+ * through the single-frame fast path unchanged.
395
412
  */
396
413
  sendToClient(ws, docName, msgType, payload) {
414
+ if (payload.length <= MAX_CHUNK_PAYLOAD) {
415
+ this.sendSingleFrame(ws, docName, msgType, payload);
416
+ return;
417
+ }
418
+ this.sendChunkedFrames(ws, docName, msgType, payload);
419
+ }
420
+ sendSingleFrame(ws, docName, msgType, payload) {
397
421
  const nameBytes = Buffer.from(docName, 'utf8');
398
422
  const frame = Buffer.alloc(2 + nameBytes.length + 1 + payload.length);
399
423
  frame.writeUInt16BE(nameBytes.length, 0);
@@ -405,6 +429,54 @@ export class YjsManager {
405
429
  }
406
430
  catch { /* non-fatal */ }
407
431
  }
432
+ sendChunkedFrames(ws, docName, msgType, payload) {
433
+ const total = Math.ceil(payload.length / MAX_CHUNK_PAYLOAD);
434
+ if (total > 0xFFFF) {
435
+ // Logical message larger than 65535 chunks (~256MB at 4KB chunks).
436
+ // Falling back to a single frame is no worse than the pre-chunking
437
+ // behavior, and we'd rather not silently truncate.
438
+ console.warn(`[yjs] payload too large to chunk (${payload.length} bytes, ${total} chunks); sending single frame`);
439
+ this.sendSingleFrame(ws, docName, msgType, payload);
440
+ return;
441
+ }
442
+ // 4-byte random message ID — collision risk is negligible within the
443
+ // ~30s reassembly window the client tolerates.
444
+ const msgId = Buffer.from([
445
+ Math.floor(Math.random() * 256),
446
+ Math.floor(Math.random() * 256),
447
+ Math.floor(Math.random() * 256),
448
+ Math.floor(Math.random() * 256),
449
+ ]);
450
+ const nameBytes = Buffer.from(docName, 'utf8');
451
+ for (let seq = 0; seq < total; seq++) {
452
+ const start = seq * MAX_CHUNK_PAYLOAD;
453
+ const end = Math.min(start + MAX_CHUNK_PAYLOAD, payload.length);
454
+ const chunk = payload.subarray(start, end);
455
+ // Frame: [2B nameLen][docName][1B MSG_CHUNK][4B msgId][2B seq][2B total][1B origMsgType][chunk]
456
+ const headerLen = 2 + nameBytes.length + 1 + 4 + 2 + 2 + 1;
457
+ const frame = Buffer.alloc(headerLen + chunk.length);
458
+ let off = 0;
459
+ frame.writeUInt16BE(nameBytes.length, off);
460
+ off += 2;
461
+ nameBytes.copy(frame, off);
462
+ off += nameBytes.length;
463
+ frame[off] = MSG_CHUNK;
464
+ off += 1;
465
+ msgId.copy(frame, off);
466
+ off += 4;
467
+ frame.writeUInt16BE(seq, off);
468
+ off += 2;
469
+ frame.writeUInt16BE(total, off);
470
+ off += 2;
471
+ frame[off] = msgType;
472
+ off += 1;
473
+ Buffer.from(chunk).copy(frame, off);
474
+ try {
475
+ ws.send(frame);
476
+ }
477
+ catch { /* non-fatal */ }
478
+ }
479
+ }
408
480
  /**
409
481
  * Get current Y.Doc text content for a document (for debugging/autosave).
410
482
  */
@@ -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
- .list-view.svelte-1p6fd26{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.list-toolbar.svelte-1p6fd26{--toolbar-gap:var(--space-1);align-items:center;gap:var(--toolbar-gap);height:var(--row-height);padding:0 var(--space-4);flex-shrink:0;display:flex}.toolbar-left.svelte-1p6fd26{align-items:center;gap:var(--toolbar-gap);flex-shrink:0;padding:.375rem 0;display:flex}.toolbar-left.svelte-1p6fd26 .select-trigger{box-shadow:none!important;border:none!important}.toolbar-left.svelte-1p6fd26 .select-trigger:hover{background:var(--color-bg-hover)!important}.toolbar-right.svelte-1p6fd26{align-items:center;gap:var(--toolbar-gap);flex-shrink:0;margin-left:auto;display:flex}.table-scroll.svelte-1p6fd26{overflow-anchor:none;flex:1;overflow:auto}.list-table.svelte-1p6fd26{table-layout:fixed;border-collapse:collapse;width:100%;font-size:var(--text-base)}.list-table.svelte-1p6fd26 .col-name:where(.svelte-1p6fd26){width:22rem}.list-table.svelte-1p6fd26 .col-date:where(.svelte-1p6fd26){width:8rem}.list-table.svelte-1p6fd26 .col-short:where(.svelte-1p6fd26){width:7rem}.list-table.svelte-1p6fd26 .col-meta:where(.svelte-1p6fd26){width:12rem}.list-table.svelte-1p6fd26 .col-wide:where(.svelte-1p6fd26){width:16rem}.list-table.svelte-1p6fd26 .col-default:where(.svelte-1p6fd26){width:9rem}thead.svelte-1p6fd26{z-index:1;background:var(--color-bg-surface);position:sticky;top:0}.virt-spacer.svelte-1p6fd26{cursor:default}.virt-spacer.svelte-1p6fd26:hover{background:0 0!important}.virt-spacer.svelte-1p6fd26 td:where(.svelte-1p6fd26){box-shadow:none;max-width:none;padding:0;-webkit-mask-image:none;mask-image:none}.virt-spacer.svelte-1p6fd26+tr:where(.svelte-1p6fd26) td:where(.svelte-1p6fd26){box-shadow:none}th.svelte-1p6fd26{text-align:left;height:var(--row-height);padding:0 var(--col-padding);font-weight:400;font-size:var(--text-base);color:var(--color-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px 0 var(--color-border), inset 0 -1px 0 var(--color-border)}.th-controls.svelte-1p6fd26{align-items:center;gap:.125rem;display:flex}.th-sort-btn.svelte-1p6fd26{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.th-sort-btn.svelte-1p6fd26:hover{color:var(--color-text-primary)}.th-sort-btn.sort-active.svelte-1p6fd26{color:var(--color-text-primary);font-weight:600}.th-sort-btn.sort-active.svelte-1p6fd26 .th-sort:where(.svelte-1p6fd26){opacity:1}.th-label.svelte-1p6fd26{margin-right:var(--space-1)}.th-sort.svelte-1p6fd26{vertical-align:middle;align-items:center;display:inline-flex}.th-sort-btn.svelte-1p6fd26:hover .th-sort:where(.svelte-1p6fd26){opacity:1}.folder-row.svelte-1p6fd26{cursor:pointer}.folder-row.svelte-1p6fd26:hover{background:var(--color-bg-hover)}.folder-row.svelte-1p6fd26 .cell-name:where(.svelte-1p6fd26){font-weight:600}.folder-row.svelte-1p6fd26 .folder-icon-slot:where(.svelte-1p6fd26){color:var(--color-text-secondary);justify-content:center;align-items:center;display:inline-flex}.group-header.svelte-1p6fd26{cursor:pointer}.group-header.svelte-1p6fd26 td.cell-name:where(.svelte-1p6fd26){background:var(--color-bg-surface)}.group-header.svelte-1p6fd26:hover td.cell-name:where(.svelte-1p6fd26){background:var(--color-bg-hover)}.group-chevron.svelte-1p6fd26{color:var(--color-text-secondary);transition:transform .15s}.group-chevron.svelte-1p6fd26 svg{width:var(--icon-btn-icon-size);height:var(--icon-btn-icon-size)}.group-chevron.open.svelte-1p6fd26{transform:rotate(90deg)}.group-label.svelte-1p6fd26{text-transform:capitalize}tr.svelte-1p6fd26{cursor:pointer}tbody.svelte-1p6fd26 tr:where(.svelte-1p6fd26):not(.group-header):hover{background:var(--color-bg-hover)}td.svelte-1p6fd26{height:var(--row-height);padding:0 var(--col-padding);color:var(--color-text-primary);box-shadow:inset 0 1px 0 var(--color-border);white-space:nowrap;max-width:18.75rem;-webkit-mask-image:linear-gradient(to right, black calc(100% - var(--space-4)), transparent), linear-gradient(to bottom, black 1px, transparent 1px);-webkit-mask-composite:source-over;-webkit-mask-image:linear-gradient(to right, black calc(100% - var(--space-4)), transparent), linear-gradient(to bottom, black 1px, transparent 1px);mask-image:linear-gradient(to right, black calc(100% - var(--space-4)), transparent), linear-gradient(to bottom, black 1px, transparent 1px);overflow:hidden;-webkit-mask-composite:source-over;mask-composite:add}thead.svelte-1p6fd26+tbody:where(.svelte-1p6fd26) tr:where(.svelte-1p6fd26):first-child td:where(.svelte-1p6fd26){box-shadow:none}.cell-name.svelte-1p6fd26{font-weight:600}.cell-meta.svelte-1p6fd26{text-transform:capitalize}.colored-value.svelte-1p6fd26{text-transform:capitalize;align-items:center;gap:.3125rem;display:inline-flex}.status-dot.svelte-1p6fd26{border-radius:.1875rem;flex-shrink:0;width:.375rem;height:.375rem}.wikilink-cell.svelte-1p6fd26{gap:var(--space-1);align-items:center;display:inline-flex}.wikilink-chip.svelte-1p6fd26{font-size:var(--text-sm);white-space:nowrap;border:none;border-radius:999px;align-items:center;padding:.0625rem .625rem;display:inline-flex}.wikilink-active.svelte-1p6fd26{background:color-mix(in srgb, var(--color-accent-fg) 17%, transparent);color:var(--color-text-primary);cursor:pointer}.wikilink-active.svelte-1p6fd26:hover{background:color-mix(in srgb, var(--color-accent-fg) 27%, transparent)}.wikilink-inactive.svelte-1p6fd26{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.cell-name.svelte-1p6fd26,.th-name.svelte-1p6fd26{cursor:pointer;padding:0 var(--col-padding) 0 var(--space-4)!important}.cell-name-inner.svelte-1p6fd26{align-items:center;gap:calc(var(--row-icon-gap) - (var(--icon-btn-height) - var(--icon-md)) / 2);min-width:0;height:100%;display:flex}.name-text.svelte-1p6fd26{text-overflow:ellipsis;min-width:0;overflow:hidden}.checkbox-slot.svelte-1p6fd26{width:var(--icon-btn-height);height:var(--icon-btn-height);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.checkbox-slot.svelte-1p6fd26:hover button:not([data-state=checked]){border-color:var(--color-accent)}.cell-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26) button,.th-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26) button{opacity:.25;cursor:pointer;transition:opacity .15s}tr.svelte-1p6fd26:hover .cell-name:where(.svelte-1p6fd26) .checkbox-slot:where(.svelte-1p6fd26) button,tr.row-selected.svelte-1p6fd26 .cell-name:where(.svelte-1p6fd26) .checkbox-slot:where(.svelte-1p6fd26) button,.th-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26):hover button,.th-name.svelte-1p6fd26 .checkbox-slot.has-selection:where(.svelte-1p6fd26) button{opacity:1}.cell-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26):has(.row-presence-avatar:where(.svelte-1p6fd26)) button{opacity:0}tr.row-selected.svelte-1p6fd26{background:var(--color-bg-selected)}.row-presence-avatar.svelte-1p6fd26{width:var(--icon-lg);height:var(--icon-lg);font-size:var(--text-xs);color:var(--color-accent-text,#ededef);background:var(--color-accent);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-weight:600;transition:opacity .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}tr.svelte-1p6fd26:hover .row-presence-avatar:where(.svelte-1p6fd26),tr.row-selected.svelte-1p6fd26 .row-presence-avatar:where(.svelte-1p6fd26){opacity:0}.selection-bar.svelte-1p6fd26{background:var(--color-bg)}.selection-bar.svelte-1p6fd26 .toolbar-left:where(.svelte-1p6fd26){gap:var(--space-3)}.selection-count.svelte-1p6fd26{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:500}.selection-action-btn{all:unset;align-items:center;gap:var(--space-2);height:var(--icon-btn-height);padding:0 var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;display:inline-flex}.selection-action-btn:hover{background:var(--color-bg-hover)}.bulk-menu-enum{text-transform:capitalize}.grouping-menu-spacer.svelte-1p6fd26{width:var(--icon-sm);height:var(--icon-sm);display:inline-block}.dialog-desc.svelte-1p6fd26{font-size:var(--text-base);color:var(--color-text-secondary);margin:0 0 var(--space-3)}.dialog-radio-item.svelte-1p6fd26{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--color-text-primary);padding:.375rem 0;display:flex}.dialog-check-item.svelte-1p6fd26{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--color-text-primary);cursor:pointer;border-radius:var(--radius-sm);padding:.375rem 0;display:flex}.dialog-check-item.svelte-1p6fd26:hover{background:var(--color-bg-hover)}.inline-list-item.bulk-move-row-nested{padding-left:calc(.625rem + var(--move-depth,1) * 20px)}@media (width<=1023px){.list-toolbar.svelte-1p6fd26{padding:0 var(--space-4)}.list-table.svelte-1p6fd26{width:max-content}.list-table.svelte-1p6fd26 .col-name:where(.svelte-1p6fd26){width:18rem}.list-table.svelte-1p6fd26 .col-date:where(.svelte-1p6fd26){width:7.5rem}.list-table.svelte-1p6fd26 .col-short:where(.svelte-1p6fd26){width:6.5rem}.list-table.svelte-1p6fd26 .col-meta:where(.svelte-1p6fd26){width:11rem}.list-table.svelte-1p6fd26 .col-wide:where(.svelte-1p6fd26){width:14rem}.list-table.svelte-1p6fd26 .col-default:where(.svelte-1p6fd26){width:8rem}.cell-name-inner.svelte-1p6fd26{gap:calc(var(--row-icon-gap) - (var(--icon-btn-height) - var(--icon-2xl)) / 2)}.table-scroll.svelte-1p6fd26{overscroll-behavior-x:none}}.empty-state.svelte-1ux434j{justify-content:center;align-items:center;gap:var(--space-4);min-height:0;color:var(--color-text-tertiary);font-size:var(--text-base);flex-direction:column;flex:1;display:flex}.empty-state.overlay.svelte-1ux434j{flex:none;position:absolute;inset:0}.empty-message.svelte-1ux434j{color:var(--color-text-tertiary);margin:0}.empty-hint.svelte-1ux434j{font-size:var(--text-sm);color:var(--color-text-tertiary);opacity:.8;margin:0}.tag-filter-trigger{align-items:center;gap:var(--space-2);height:var(--icon-btn-height);padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:inherit;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:none;transition:background .15s,color .15s;display:inline-flex}.tag-filter-chevron{color:var(--color-text-tertiary);flex-shrink:0}.tag-filter-trigger:hover{background:var(--color-bg-hover)}.tag-filter-trigger.has-selection{color:var(--color-text-primary);font-weight:600}.tag-filter-label.svelte-1xxn7b9{text-overflow:ellipsis;overflow:hidden}.tag-filter-clear.svelte-1xxn7b9{width:var(--icon-md);height:var(--icon-md);color:var(--color-text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.tag-filter-clear.svelte-1xxn7b9:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.tag-filter-content{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:13.75rem;max-height:20rem;z-index:var(--z-toolbar);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px 24px #00000026}.tag-filter-search.svelte-1xxn7b9{padding:var(--space-2) .625rem;border:none;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-sm);background:0 0;outline:none}.tag-filter-search.svelte-1xxn7b9::placeholder{color:var(--color-text-tertiary)}.tag-filter-list.svelte-1xxn7b9{padding:var(--space-1);overflow-y:auto}.tag-filter-item.svelte-1xxn7b9{all:unset;align-items:center;gap:var(--space-2);width:100%;min-height:var(--menu-item-height);padding:var(--menu-item-padding);border-radius:var(--menu-item-radius);font-family:inherit;font-size:var(--menu-font-size);color:var(--color-text-secondary);cursor:pointer;box-sizing:border-box;display:flex}.tag-filter-item.svelte-1xxn7b9:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.tag-filter-item.selected.svelte-1xxn7b9{color:var(--color-text-primary);font-weight:600}.tag-filter-check.svelte-1xxn7b9{width:var(--icon-sm);color:var(--color-text-primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tag-filter-name.svelte-1xxn7b9{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tag-filter-count.svelte-1xxn7b9{font-size:var(--text-xs);color:var(--color-text-tertiary);flex-shrink:0}.tag-filter-empty.svelte-1xxn7b9{padding:var(--space-3);font-size:var(--text-sm);color:var(--color-text-tertiary);text-align:center}.view-toggle.svelte-1d8n0e1{align-items:center;gap:var(--space-1);display:flex}.toggle-btn{width:var(--icon-btn-height);height:var(--icon-btn-height);font-size:var(--text-sm);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;transition:background .15s,color .15s;display:flex}.toggle-btn>svg{width:var(--icon-btn-icon-size);height:var(--icon-btn-icon-size)}.toggle-btn:hover{background:var(--color-bg-hover);color:var(--color-text-secondary)}.toggle-btn.active,.toggle-btn[data-state=open]{background:var(--color-bg-hover);color:var(--color-text-primary)}.view-toggle-compact{display:none}.view-menu-spacer{flex-shrink:0;width:.875rem;display:inline-block}.graph-container.svelte-1d8n0e1{flex-direction:column;flex:1;min-height:0;display:flex}.graph-toolbar.svelte-1d8n0e1{height:var(--row-height);padding:0 var(--space-4);box-shadow:inset 0 -1px 0 var(--color-border);flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}@media (width<=1023px){.view-toggle-inline.svelte-1d8n0e1{display:none}.view-toggle-compact{border-radius:var(--radius-xl);display:inline-flex}.graph-toolbar.svelte-1d8n0e1{padding:0 var(--space-4)}}
1
+ .list-view.svelte-1p6fd26{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.list-toolbar.svelte-1p6fd26{--toolbar-gap:var(--space-1);align-items:center;gap:var(--toolbar-gap);height:var(--row-height);padding:0 var(--space-4);flex-shrink:0;display:flex}.toolbar-left.svelte-1p6fd26{align-items:center;gap:var(--toolbar-gap);flex-shrink:0;padding:.375rem 0;display:flex}.toolbar-left.svelte-1p6fd26 .select-trigger{box-shadow:none!important;border:none!important}.toolbar-left.svelte-1p6fd26 .select-trigger:hover{background:var(--color-bg-hover)!important}.toolbar-right.svelte-1p6fd26{align-items:center;gap:var(--toolbar-gap);flex-shrink:0;margin-left:auto;display:flex}.table-scroll.svelte-1p6fd26{overflow-anchor:none;flex:1;overflow:auto}.list-table.svelte-1p6fd26{table-layout:fixed;border-collapse:collapse;width:100%;font-size:var(--text-base)}.list-table.svelte-1p6fd26 .col-name:where(.svelte-1p6fd26){width:22rem}.list-table.svelte-1p6fd26 .col-date:where(.svelte-1p6fd26){width:8rem}.list-table.svelte-1p6fd26 .col-short:where(.svelte-1p6fd26){width:7rem}.list-table.svelte-1p6fd26 .col-meta:where(.svelte-1p6fd26){width:12rem}.list-table.svelte-1p6fd26 .col-wide:where(.svelte-1p6fd26){width:16rem}.list-table.svelte-1p6fd26 .col-default:where(.svelte-1p6fd26){width:9rem}thead.svelte-1p6fd26{z-index:1;background:var(--color-bg-surface);position:sticky;top:0}.virt-spacer.svelte-1p6fd26{cursor:default}.virt-spacer.svelte-1p6fd26:hover{background:0 0!important}.virt-spacer.svelte-1p6fd26 td:where(.svelte-1p6fd26){box-shadow:none;max-width:none;padding:0;-webkit-mask-image:none;mask-image:none}.virt-spacer.svelte-1p6fd26+tr:where(.svelte-1p6fd26) td:where(.svelte-1p6fd26){box-shadow:none}th.svelte-1p6fd26{text-align:left;height:var(--row-height);padding:0 var(--col-padding);font-weight:400;font-size:var(--text-base);color:var(--color-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px 0 var(--color-border), inset 0 -1px 0 var(--color-border)}.th-controls.svelte-1p6fd26{align-items:center;gap:.125rem;display:flex}.th-sort-btn.svelte-1p6fd26{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.th-sort-btn.svelte-1p6fd26:hover{color:var(--color-text-primary)}.th-sort-btn.sort-active.svelte-1p6fd26{color:var(--color-text-primary);font-weight:600}.th-sort-btn.sort-active.svelte-1p6fd26 .th-sort:where(.svelte-1p6fd26){opacity:1}.th-label.svelte-1p6fd26{margin-right:var(--space-1)}.th-sort.svelte-1p6fd26{vertical-align:middle;align-items:center;display:inline-flex}.th-sort-btn.svelte-1p6fd26:hover .th-sort:where(.svelte-1p6fd26){opacity:1}.folder-row.svelte-1p6fd26{cursor:pointer}.folder-row.svelte-1p6fd26:hover{background:var(--color-bg-hover)}.folder-row.svelte-1p6fd26 .cell-name:where(.svelte-1p6fd26){font-weight:600}.folder-row.svelte-1p6fd26 .folder-icon-slot:where(.svelte-1p6fd26){color:var(--color-text-secondary);justify-content:center;align-items:center;display:inline-flex}.group-header.svelte-1p6fd26{cursor:pointer}.group-header.svelte-1p6fd26 td.cell-name:where(.svelte-1p6fd26){background:var(--color-bg-surface)}.group-header.svelte-1p6fd26:hover td.cell-name:where(.svelte-1p6fd26){background:var(--color-bg-hover)}.group-chevron.svelte-1p6fd26{color:var(--color-text-secondary);transition:transform .15s}.group-chevron.svelte-1p6fd26 svg{width:var(--icon-btn-icon-size);height:var(--icon-btn-icon-size)}.group-chevron.open.svelte-1p6fd26{transform:rotate(90deg)}.group-label.svelte-1p6fd26{text-transform:capitalize}tr.svelte-1p6fd26{cursor:pointer}tbody.svelte-1p6fd26 tr:where(.svelte-1p6fd26):not(.group-header):hover{background:var(--color-bg-hover)}td.svelte-1p6fd26{height:var(--row-height);padding:0 var(--col-padding);color:var(--color-text-primary);box-shadow:inset 0 1px 0 var(--color-border);white-space:nowrap;max-width:18.75rem;-webkit-mask-image:linear-gradient(to right, black calc(100% - var(--space-4)), transparent), linear-gradient(to bottom, black 1px, transparent 1px);-webkit-mask-composite:source-over;-webkit-mask-image:linear-gradient(to right, black calc(100% - var(--space-4)), transparent), linear-gradient(to bottom, black 1px, transparent 1px);mask-image:linear-gradient(to right, black calc(100% - var(--space-4)), transparent), linear-gradient(to bottom, black 1px, transparent 1px);overflow:hidden;-webkit-mask-composite:source-over;mask-composite:add}thead.svelte-1p6fd26+tbody:where(.svelte-1p6fd26) tr:where(.svelte-1p6fd26):first-child td:where(.svelte-1p6fd26){box-shadow:none}.cell-name.svelte-1p6fd26{font-weight:600}.cell-meta.svelte-1p6fd26{text-transform:capitalize}.colored-value.svelte-1p6fd26{text-transform:capitalize;align-items:center;gap:.3125rem;display:inline-flex}.status-dot.svelte-1p6fd26{border-radius:.1875rem;flex-shrink:0;width:.375rem;height:.375rem}.wikilink-cell.svelte-1p6fd26{gap:var(--space-1);align-items:center;display:inline-flex}.wikilink-chip.svelte-1p6fd26{font-size:var(--text-sm);white-space:nowrap;border:none;border-radius:999px;align-items:center;padding:.0625rem .625rem;display:inline-flex}.wikilink-active.svelte-1p6fd26{background:color-mix(in srgb, var(--color-accent-fg) 17%, transparent);color:var(--color-text-primary);cursor:pointer}.wikilink-active.svelte-1p6fd26:hover{background:color-mix(in srgb, var(--color-accent-fg) 27%, transparent)}.wikilink-inactive.svelte-1p6fd26{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.cell-name.svelte-1p6fd26,.th-name.svelte-1p6fd26{cursor:pointer;padding:0 var(--col-padding) 0 var(--space-4)!important}.cell-name-inner.svelte-1p6fd26{align-items:center;gap:calc(var(--row-icon-gap) - (var(--icon-btn-height) - var(--icon-md)) / 2);min-width:0;height:100%;display:flex}.name-text.svelte-1p6fd26{text-overflow:ellipsis;min-width:0;overflow:hidden}.checkbox-slot.svelte-1p6fd26{width:var(--icon-btn-height);height:var(--icon-btn-height);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.checkbox-slot.svelte-1p6fd26:hover button:not([data-state=checked]){border-color:var(--color-accent)}.cell-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26) button,.th-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26) button{opacity:.25;cursor:pointer;transition:opacity .15s}tr.svelte-1p6fd26:hover .cell-name:where(.svelte-1p6fd26) .checkbox-slot:where(.svelte-1p6fd26) button,tr.row-selected.svelte-1p6fd26 .cell-name:where(.svelte-1p6fd26) .checkbox-slot:where(.svelte-1p6fd26) button,.th-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26):hover button,.th-name.svelte-1p6fd26 .checkbox-slot.has-selection:where(.svelte-1p6fd26) button{opacity:1}.cell-name.svelte-1p6fd26 .checkbox-slot:where(.svelte-1p6fd26):has(.row-presence-avatar:where(.svelte-1p6fd26)) button{opacity:0}tr.row-selected.svelte-1p6fd26{background:var(--color-bg-selected)}.row-presence-avatar.svelte-1p6fd26{width:var(--icon-lg);height:var(--icon-lg);font-size:var(--text-xs);color:var(--color-accent-text,#ededef);background:var(--color-accent);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-weight:600;transition:opacity .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}tr.svelte-1p6fd26:hover .row-presence-avatar:where(.svelte-1p6fd26),tr.row-selected.svelte-1p6fd26 .row-presence-avatar:where(.svelte-1p6fd26){opacity:0}.selection-bar.svelte-1p6fd26{background:var(--color-bg)}.selection-bar.svelte-1p6fd26 .toolbar-left:where(.svelte-1p6fd26){gap:var(--space-3)}.selection-count.svelte-1p6fd26{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:500}.selection-action-btn{all:unset;align-items:center;gap:var(--space-2);height:var(--icon-btn-height);padding:0 var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;display:inline-flex}.selection-action-btn:hover{background:var(--color-bg-hover)}.bulk-menu-enum{text-transform:capitalize}.grouping-menu-spacer.svelte-1p6fd26{width:var(--icon-sm);height:var(--icon-sm);display:inline-block}.dialog-desc.svelte-1p6fd26{font-size:var(--text-base);color:var(--color-text-secondary);margin:0 0 var(--space-3)}.dialog-radio-item.svelte-1p6fd26{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--color-text-primary);padding:.375rem 0;display:flex}.dialog-check-item.svelte-1p6fd26{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--color-text-primary);cursor:pointer;border-radius:var(--radius-sm);padding:.375rem 0;display:flex}.dialog-check-item.svelte-1p6fd26:hover{background:var(--color-bg-hover)}.inline-list-item.bulk-move-row-nested{padding-left:calc(.625rem + var(--move-depth,1) * 20px)}@media (width<=1023px){.list-toolbar.svelte-1p6fd26{padding:0 var(--space-4)}.list-table.svelte-1p6fd26{width:max-content}.list-table.svelte-1p6fd26 .col-name:where(.svelte-1p6fd26){width:18rem}.list-table.svelte-1p6fd26 .col-date:where(.svelte-1p6fd26){width:7.5rem}.list-table.svelte-1p6fd26 .col-short:where(.svelte-1p6fd26){width:6.5rem}.list-table.svelte-1p6fd26 .col-meta:where(.svelte-1p6fd26){width:11rem}.list-table.svelte-1p6fd26 .col-wide:where(.svelte-1p6fd26){width:14rem}.list-table.svelte-1p6fd26 .col-default:where(.svelte-1p6fd26){width:8rem}.cell-name-inner.svelte-1p6fd26{gap:calc(var(--row-icon-gap) - (var(--icon-btn-height) - var(--icon-2xl)) / 2)}.table-scroll.svelte-1p6fd26{overscroll-behavior-x:none}}.empty-state.svelte-1ux434j{justify-content:center;align-items:center;gap:var(--space-4);min-height:0;color:var(--color-text-tertiary);font-size:var(--text-base);flex-direction:column;flex:1;display:flex}.empty-state.overlay.svelte-1ux434j{flex:none;position:absolute;inset:0}.empty-message.svelte-1ux434j{color:var(--color-text-tertiary);margin:0}.empty-hint.svelte-1ux434j{font-size:var(--text-sm);color:var(--color-text-tertiary);opacity:.8;margin:0}.tag-filter-trigger{align-items:center;gap:var(--space-2);height:var(--icon-btn-height);padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:inherit;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:none;transition:background .15s,color .15s;display:inline-flex}.tag-filter-chevron{color:var(--color-text-tertiary);flex-shrink:0}.tag-filter-trigger:hover{background:var(--color-bg-hover)}.tag-filter-trigger.has-selection{color:var(--color-text-primary);font-weight:600}.tag-filter-label.svelte-1xxn7b9{text-overflow:ellipsis;overflow:hidden}.tag-filter-clear.svelte-1xxn7b9{width:var(--icon-md);height:var(--icon-md);color:var(--color-text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.tag-filter-clear.svelte-1xxn7b9:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.tag-filter-content{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:13.75rem;max-height:20rem;z-index:var(--z-toolbar);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px 24px #00000026}.tag-filter-search.svelte-1xxn7b9{padding:var(--space-2) .625rem;border:none;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-sm);background:0 0;outline:none}.tag-filter-search.svelte-1xxn7b9::placeholder{color:var(--color-text-tertiary)}.tag-filter-list.svelte-1xxn7b9{padding:var(--space-1);overflow-y:auto}.tag-filter-item.svelte-1xxn7b9{all:unset;align-items:center;gap:var(--space-2);width:100%;min-height:var(--menu-item-height);padding:var(--menu-item-padding);border-radius:var(--menu-item-radius);font-family:inherit;font-size:var(--menu-font-size);color:var(--color-text-secondary);cursor:pointer;box-sizing:border-box;display:flex}.tag-filter-item.svelte-1xxn7b9:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.tag-filter-item.selected.svelte-1xxn7b9{color:var(--color-text-primary);font-weight:600}.tag-filter-check.svelte-1xxn7b9{width:var(--icon-sm);color:var(--color-text-primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tag-filter-name.svelte-1xxn7b9{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tag-filter-count.svelte-1xxn7b9{font-size:var(--text-xs);color:var(--color-text-tertiary);flex-shrink:0}.tag-filter-empty.svelte-1xxn7b9{padding:var(--space-3);font-size:var(--text-sm);color:var(--color-text-tertiary);text-align:center}.view-toggle.svelte-1d8n0e1{align-items:center;gap:var(--space-1);display:flex}.toggle-btn{width:var(--icon-btn-height);height:var(--icon-btn-height);font-size:var(--text-sm);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;transition:background .15s,color .15s;display:flex}.toggle-btn>svg{width:var(--icon-btn-icon-size);height:var(--icon-btn-icon-size)}.toggle-btn:hover{background:var(--color-bg-hover);color:var(--color-text-secondary)}.toggle-btn.active,.toggle-btn[data-state=open]{background:var(--color-bg-hover);color:var(--color-text-primary)}.view-toggle-compact{display:none}.view-menu-spacer{flex-shrink:0;width:.875rem;display:inline-block}.graph-container.svelte-1d8n0e1,.loading-shell.svelte-1d8n0e1{flex-direction:column;flex:1;min-height:0;display:flex}.graph-toolbar.svelte-1d8n0e1{height:var(--row-height);padding:0 var(--space-4);box-shadow:inset 0 -1px 0 var(--color-border);flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}@media (width<=1023px){.view-toggle-inline.svelte-1d8n0e1{display:none}.view-toggle-compact{border-radius:var(--radius-xl);display:inline-flex}.graph-toolbar.svelte-1d8n0e1{padding:0 var(--space-4)}}
@@ -1,2 +1,2 @@
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{n as e}from"./BNTlsKDJ.js";import{A as t,D as n,F as r,H as i,L as a,Mt as o,N as s,R as c,Rt as l,X as u,_t as d,at as f,b as p,dt as m,ft as h,j as g,jt as _,mt as v,ot as y,pt as b,xt as x,yt as S,z as C,zt as w}from"./DV-Vb89U.js";import{t as T}from"./C-OaypFN.js";import"./t62M88qj.js";import{s as E}from"./SJL_oyD4.js";import{t as D}from"./CX0QbXWB2.js";import{t as O}from"./DgUMuJWf2.js";import{t as ee}from"./D0Hmei3J2.js";import{n as te,o as k,r as ne,s as re,t as ie}from"./_VOdw24P.js";import{t as A}from"./D5VdX2NC.js";import{t as j}from"./D00taIEV.js";import"./CSWuNPeq.js";import{t as ae}from"./DaHlYzta.js";import{t as M}from"./De2dHdFN.js";import{n as N,r as P,t as oe}from"./B-bHt83e.js";var F=e({default:()=>U}),se=C(`<div class="fm-hint svelte-vz89pt">Loading…</div>`),ce=C(`<div class="fm-row fm-confirm svelte-vz89pt"><!> <span class="fm-confirm-text svelte-vz89pt"> </span> <div class="fm-actions svelte-vz89pt"><!> <!></div></div>`),le=C(` <!>`,1),ue=C(`<span class="role-check"><!></span>`),de=C(`<span>Admin</span> <!>`,1),I=C(`<span class="role-check"><!></span>`),L=C(`<span>Editor</span> <!>`,1),R=C(`<!> <!>`,1),z=C(`<!> <!>`,1),B=C(`<span class="fm-role-label svelte-vz89pt"> </span>`),V=C(`<span class="fm-trash-placeholder svelte-vz89pt" aria-hidden="true"></span>`),fe=C(`<div class="fm-row svelte-vz89pt"><span class="fm-avatar svelte-vz89pt"> </span> <span class="fm-name svelte-vz89pt"> </span> <span class="fm-flex svelte-vz89pt"></span> <!> <!></div>`),pe=C(`<div class="fm-row fm-candidate svelte-vz89pt"><span class="fm-avatar svelte-vz89pt"> </span> <span class="fm-name fm-name-muted svelte-vz89pt"> </span> <span class="fm-flex svelte-vz89pt"></span> <!></div>`),me=C(`<div class="fm-sublabel svelte-vz89pt">Add members</div> <!>`,1),H=C(`<!> <!>`,1),he=C(`<div class="folder-members svelte-vz89pt"><div class="fm-header svelte-vz89pt"><span class="fm-label svelte-vz89pt">Members</span></div> <!></div>`);function U(e,C){o(C,!0);let F=C.initialMembers!==void 0&&C.initialUsers!==void 0,U=S(v(C.initialMembers?[...C.initialMembers]:[])),W=S(v(C.initialUsers?[...C.initialUsers]:[])),G=S(!F),K=S(null),q=S(!1);y(()=>{F||ge(C.folder)});async function ge(e){d(G,!0);try{let[{users:t},n]=await Promise.all([E(),oe()]);d(W,t,!0),d(U,n.find(t=>t.folder===e)?.members??[],!0)}finally{d(G,!1)}}let J=x(()=>{let e=new Set(u(U).map(e=>e.user.id));return u(W).filter(t=>!e.has(t.id))}),_e=x(()=>u(U).filter(e=>e.role===`admin`).length);function Y(e){return C.canEdit?!(e.role===`admin`&&u(_e)===1):!1}function X(e){d(U,e,!0),C.onMembersChanged?.(e)}async function Z(e){let{toast:t}=await T(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)}async function Q(e,t){let n=u(U).find(t=>t.user.id===e);if(!n||n.role===t)return;let r=n.role;X(u(U).map(n=>n.user.id===e?{...n,role:t}:n));try{await N(e,C.folder,t)}catch(t){X(u(U).map(t=>t.user.id===e?{...t,role:r}:t)),Z(t.message||`Failed to update role`)}}async function ve(e){X([...u(U),{user:e,role:`editor`}].sort((e,t)=>e.user.displayName.localeCompare(t.user.displayName)));try{await N(e.id,C.folder,`editor`)}catch(t){X(u(U).filter(t=>t.user.id!==e.id)),Z(t.message||`Failed to add member`)}}async function ye(){if(!u(K))return;d(q,!0);let e=u(K),t=u(U);X(u(U).filter(t=>t.user.id!==e.id)),d(K,null);try{await P(e.id,C.folder)}catch(e){X(t),Z(e.message||`Failed to remove member`)}finally{d(q,!1)}}var $=he(),be=b(m($),2),xe=e=>{a(e,se())},Se=e=>{var o=H(),_=h(o);t(_,17,()=>u(U),g,(e,t)=>{let o=x(()=>D.getColor(u(t).user.id));var g=c(),_=h(g),v=e=>{var n=ce(),o=m(n);M(o,{size:16});var s=b(o,2),c=m(s);w(s);var p=b(s,2),h=m(p);j(h,{variant:`ghost`,onclick:()=>{d(K,null)},get disabled(){return u(q)},children:(e,t)=>{l(),a(e,i(`Cancel`))},$$slots:{default:!0}}),j(b(h,2),{variant:`destructive`,onclick:ye,get disabled(){return u(q)},children:(e,t)=>{l(),a(e,i(`Remove`))},$$slots:{default:!0}}),w(p),w(n),f(()=>r(c,`Remove ${u(t).user.displayName??``}?`)),a(e,n)},y=e=>{var i=fe(),g=m(i);let _;var v=m(g,!0);w(g);var y=b(g,2),S=m(y,!0);w(y);var C=b(y,4),T=e=>{var i=c();n(h(i),()=>te,(e,i)=>{i(e,{children:(e,i)=>{var o=z(),d=h(o);n(d,()=>ne,(e,n)=>{n(e,{class:`role-chip`,"aria-label":`Change role`,children:(e,n)=>{l();var i=le(),o=h(i);ae(b(o),{size:10}),f(()=>r(o,`${u(t).role===`admin`?`Admin`:`Editor`} `)),a(e,i)},$$slots:{default:!0}})}),n(b(d,2),()=>ie,(e,r)=>{r(e,{children:(e,r)=>{var i=c();n(h(i),()=>re,(e,r)=>{r(e,{align:`start`,children:(e,r)=>{var i=R(),o=h(i);n(o,()=>k,(e,n)=>{n(e,{onSelect:()=>Q(u(t).user.id,`admin`),children:(e,n)=>{var r=de(),i=b(h(r),2),o=e=>{var t=ue();A(m(t),{size:14}),w(t),a(e,t)};s(i,e=>{u(t).role===`admin`&&e(o)}),a(e,r)},$$slots:{default:!0}})}),n(b(o,2),()=>k,(e,n)=>{n(e,{onSelect:()=>Q(u(t).user.id,`editor`),children:(e,n)=>{var r=L(),i=b(h(r),2),o=e=>{var t=I();A(m(t),{size:14}),w(t),a(e,t)};s(i,e=>{u(t).role===`editor`&&e(o)}),a(e,r)},$$slots:{default:!0}})}),a(e,i)},$$slots:{default:!0}})}),a(e,i)},$$slots:{default:!0}})}),a(e,o)},$$slots:{default:!0}})}),a(e,i)},E=x(()=>Y(u(t))),D=e=>{var n=B(),i=m(n,!0);w(n),f(()=>r(i,u(t).role===`admin`?`Admin`:`Editor`)),a(e,n)};s(C,e=>{u(E)?e(T):e(D,-1)});var O=b(C,2),M=e=>{j(e,{variant:`ghost`,size:`icon`,class:`icon-danger`,title:`Remove`,onclick:()=>{d(K,u(t).user,!0)},children:(e,t)=>{ee(e,{})},$$slots:{default:!0}})},N=x(()=>Y(u(t))),P=e=>{a(e,V())};s(O,e=>{u(N)?e(M):e(P,-1)}),w(i),f(e=>{_=p(g,``,_,{background:u(o)||void 0}),r(v,e),r(S,u(t).user.displayName)},[()=>(u(t).user.displayName||u(t).user.email)[0].toUpperCase()]),a(e,i)};s(_,e=>{u(K)?.id===u(t).user.id?e(v):e(y,-1)}),a(e,g)});var v=b(_,2),y=e=>{var n=me();t(b(h(n),2),17,()=>u(J),g,(e,t)=>{let n=x(()=>D.getColor(u(t).id));var i=pe(),o=m(i);let s;var c=m(o,!0);w(o);var l=b(o,2),d=m(l,!0);w(l),j(b(l,4),{variant:`ghost`,size:`icon`,title:`Add as editor`,onclick:()=>ve(u(t)),children:(e,t)=>{O(e,{})},$$slots:{default:!0}}),w(i),f(e=>{s=p(o,``,s,{background:u(n)||void 0}),r(c,e),r(d,u(t).displayName)},[()=>(u(t).displayName||u(t).email)[0].toUpperCase()]),a(e,i)}),a(e,n)};s(v,e=>{C.canEdit&&u(J).length>0&&e(y)}),a(e,o)};s(be,e=>{u(G)?e(xe):e(Se,-1)}),w($),a(e,$),_()}export{F as n,U as t};
2
+ import{n as e}from"./BNTlsKDJ.js";import{A as t,D as n,F as r,H as i,L as a,Mt as o,N as s,R as c,Rt as l,X as u,_t as d,at as f,b as p,dt as m,ft as h,j as g,jt as _,mt as v,ot as y,pt as b,xt as x,yt as S,z as C,zt as w}from"./DV-Vb89U.js";import{t as T}from"./C-OaypFN.js";import"./t62M88qj.js";import{s as E}from"./SJL_oyD4.js";import{t as D}from"./M7qnJQvE2.js";import{t as O}from"./DgUMuJWf2.js";import{t as ee}from"./D0Hmei3J2.js";import{n as te,o as k,r as ne,s as re,t as ie}from"./_VOdw24P.js";import{t as A}from"./D5VdX2NC.js";import{t as j}from"./D00taIEV.js";import"./CSWuNPeq.js";import{t as ae}from"./DaHlYzta.js";import{t as M}from"./De2dHdFN.js";import{n as N,r as P,t as oe}from"./B-bHt83e.js";var F=e({default:()=>U}),se=C(`<div class="fm-hint svelte-vz89pt">Loading…</div>`),ce=C(`<div class="fm-row fm-confirm svelte-vz89pt"><!> <span class="fm-confirm-text svelte-vz89pt"> </span> <div class="fm-actions svelte-vz89pt"><!> <!></div></div>`),le=C(` <!>`,1),ue=C(`<span class="role-check"><!></span>`),de=C(`<span>Admin</span> <!>`,1),I=C(`<span class="role-check"><!></span>`),L=C(`<span>Editor</span> <!>`,1),R=C(`<!> <!>`,1),z=C(`<!> <!>`,1),B=C(`<span class="fm-role-label svelte-vz89pt"> </span>`),V=C(`<span class="fm-trash-placeholder svelte-vz89pt" aria-hidden="true"></span>`),fe=C(`<div class="fm-row svelte-vz89pt"><span class="fm-avatar svelte-vz89pt"> </span> <span class="fm-name svelte-vz89pt"> </span> <span class="fm-flex svelte-vz89pt"></span> <!> <!></div>`),pe=C(`<div class="fm-row fm-candidate svelte-vz89pt"><span class="fm-avatar svelte-vz89pt"> </span> <span class="fm-name fm-name-muted svelte-vz89pt"> </span> <span class="fm-flex svelte-vz89pt"></span> <!></div>`),me=C(`<div class="fm-sublabel svelte-vz89pt">Add members</div> <!>`,1),H=C(`<!> <!>`,1),he=C(`<div class="folder-members svelte-vz89pt"><div class="fm-header svelte-vz89pt"><span class="fm-label svelte-vz89pt">Members</span></div> <!></div>`);function U(e,C){o(C,!0);let F=C.initialMembers!==void 0&&C.initialUsers!==void 0,U=S(v(C.initialMembers?[...C.initialMembers]:[])),W=S(v(C.initialUsers?[...C.initialUsers]:[])),G=S(!F),K=S(null),q=S(!1);y(()=>{F||ge(C.folder)});async function ge(e){d(G,!0);try{let[{users:t},n]=await Promise.all([E(),oe()]);d(W,t,!0),d(U,n.find(t=>t.folder===e)?.members??[],!0)}finally{d(G,!1)}}let J=x(()=>{let e=new Set(u(U).map(e=>e.user.id));return u(W).filter(t=>!e.has(t.id))}),_e=x(()=>u(U).filter(e=>e.role===`admin`).length);function Y(e){return C.canEdit?!(e.role===`admin`&&u(_e)===1):!1}function X(e){d(U,e,!0),C.onMembersChanged?.(e)}async function Z(e){let{toast:t}=await T(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)}async function Q(e,t){let n=u(U).find(t=>t.user.id===e);if(!n||n.role===t)return;let r=n.role;X(u(U).map(n=>n.user.id===e?{...n,role:t}:n));try{await N(e,C.folder,t)}catch(t){X(u(U).map(t=>t.user.id===e?{...t,role:r}:t)),Z(t.message||`Failed to update role`)}}async function ve(e){X([...u(U),{user:e,role:`editor`}].sort((e,t)=>e.user.displayName.localeCompare(t.user.displayName)));try{await N(e.id,C.folder,`editor`)}catch(t){X(u(U).filter(t=>t.user.id!==e.id)),Z(t.message||`Failed to add member`)}}async function ye(){if(!u(K))return;d(q,!0);let e=u(K),t=u(U);X(u(U).filter(t=>t.user.id!==e.id)),d(K,null);try{await P(e.id,C.folder)}catch(e){X(t),Z(e.message||`Failed to remove member`)}finally{d(q,!1)}}var $=he(),be=b(m($),2),xe=e=>{a(e,se())},Se=e=>{var o=H(),_=h(o);t(_,17,()=>u(U),g,(e,t)=>{let o=x(()=>D.getColor(u(t).user.id));var g=c(),_=h(g),v=e=>{var n=ce(),o=m(n);M(o,{size:16});var s=b(o,2),c=m(s);w(s);var p=b(s,2),h=m(p);j(h,{variant:`ghost`,onclick:()=>{d(K,null)},get disabled(){return u(q)},children:(e,t)=>{l(),a(e,i(`Cancel`))},$$slots:{default:!0}}),j(b(h,2),{variant:`destructive`,onclick:ye,get disabled(){return u(q)},children:(e,t)=>{l(),a(e,i(`Remove`))},$$slots:{default:!0}}),w(p),w(n),f(()=>r(c,`Remove ${u(t).user.displayName??``}?`)),a(e,n)},y=e=>{var i=fe(),g=m(i);let _;var v=m(g,!0);w(g);var y=b(g,2),S=m(y,!0);w(y);var C=b(y,4),T=e=>{var i=c();n(h(i),()=>te,(e,i)=>{i(e,{children:(e,i)=>{var o=z(),d=h(o);n(d,()=>ne,(e,n)=>{n(e,{class:`role-chip`,"aria-label":`Change role`,children:(e,n)=>{l();var i=le(),o=h(i);ae(b(o),{size:10}),f(()=>r(o,`${u(t).role===`admin`?`Admin`:`Editor`} `)),a(e,i)},$$slots:{default:!0}})}),n(b(d,2),()=>ie,(e,r)=>{r(e,{children:(e,r)=>{var i=c();n(h(i),()=>re,(e,r)=>{r(e,{align:`start`,children:(e,r)=>{var i=R(),o=h(i);n(o,()=>k,(e,n)=>{n(e,{onSelect:()=>Q(u(t).user.id,`admin`),children:(e,n)=>{var r=de(),i=b(h(r),2),o=e=>{var t=ue();A(m(t),{size:14}),w(t),a(e,t)};s(i,e=>{u(t).role===`admin`&&e(o)}),a(e,r)},$$slots:{default:!0}})}),n(b(o,2),()=>k,(e,n)=>{n(e,{onSelect:()=>Q(u(t).user.id,`editor`),children:(e,n)=>{var r=L(),i=b(h(r),2),o=e=>{var t=I();A(m(t),{size:14}),w(t),a(e,t)};s(i,e=>{u(t).role===`editor`&&e(o)}),a(e,r)},$$slots:{default:!0}})}),a(e,i)},$$slots:{default:!0}})}),a(e,i)},$$slots:{default:!0}})}),a(e,o)},$$slots:{default:!0}})}),a(e,i)},E=x(()=>Y(u(t))),D=e=>{var n=B(),i=m(n,!0);w(n),f(()=>r(i,u(t).role===`admin`?`Admin`:`Editor`)),a(e,n)};s(C,e=>{u(E)?e(T):e(D,-1)});var O=b(C,2),M=e=>{j(e,{variant:`ghost`,size:`icon`,class:`icon-danger`,title:`Remove`,onclick:()=>{d(K,u(t).user,!0)},children:(e,t)=>{ee(e,{})},$$slots:{default:!0}})},N=x(()=>Y(u(t))),P=e=>{a(e,V())};s(O,e=>{u(N)?e(M):e(P,-1)}),w(i),f(e=>{_=p(g,``,_,{background:u(o)||void 0}),r(v,e),r(S,u(t).user.displayName)},[()=>(u(t).user.displayName||u(t).user.email)[0].toUpperCase()]),a(e,i)};s(_,e=>{u(K)?.id===u(t).user.id?e(v):e(y,-1)}),a(e,g)});var v=b(_,2),y=e=>{var n=me();t(b(h(n),2),17,()=>u(J),g,(e,t)=>{let n=x(()=>D.getColor(u(t).id));var i=pe(),o=m(i);let s;var c=m(o,!0);w(o);var l=b(o,2),d=m(l,!0);w(l),j(b(l,4),{variant:`ghost`,size:`icon`,title:`Add as editor`,onclick:()=>ve(u(t)),children:(e,t)=>{O(e,{})},$$slots:{default:!0}}),w(i),f(e=>{s=p(o,``,s,{background:u(n)||void 0}),r(c,e),r(d,u(t).displayName)},[()=>(u(t).displayName||u(t).email)[0].toUpperCase()]),a(e,i)}),a(e,n)};s(v,e=>{C.canEdit&&u(J).length>0&&e(y)}),a(e,o)};s(be,e=>{u(G)?e(xe):e(Se,-1)}),w($),a(e,$),_()}export{F as n,U as t};
@@ -1 +1 @@
1
- import{A as e,B as t,D as n,F as r,G as i,H as a,L as o,Mt as s,N as c,O 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,b,bt as x,dt as S,ft as C,gt as w,h as T,it as E,j as D,jt as ee,mt as O,n as te,o as k,ot as A,pt as j,rt as ne,u as M,w as re,x as N,xt as P,yt as F,z as I,zt as L}from"./DV-Vb89U.js";import{r as ie}from"./DdgELRG0.js";import"./t62M88qj.js";import"./CGWca4QC.js";import{O as ae}from"./-jdP5JqO.js";import{r as oe}from"./CTFOXiYo.js";import"./CIgq6kOW.js";import{i as se,n as ce,r as le,t as ue}from"./BDCOho_G.js";import{t as de}from"./DJnMBCXJ2.js";import{t as R}from"./CKPqZArH2.js";import{a as fe,r as pe}from"./CHRfvdkq2.js";import{t as me}from"./D276ir6O2.js";import{a as he,i as ge,n as _e,o as ve,r as ye,s as be,t as xe}from"./Ce2P7b-X.js";import{t as Se}from"./D5VdX2NC.js";import{i as Ce}from"./DPXpm86N.js";import{t as we}from"./D-fOfpFk.js";import{t as Te}from"./DggGoXzJ.js";import{a as Ee,t as z}from"./C-48vCcy.js";import{t as De}from"./BHZnNKnO.js";import{t as Oe}from"./DGdxbQG5.js";import{t as ke}from"./CShPVqpx.js";function Ae(e,t){let n=[],r=new Set;if(e&&z[e])for(let t of z[e])t.format===`date`&&!r.has(t.key)&&(n.push({key:t.key,label:t.label}),r.add(t.key));if(t){for(let e of t)if(!r.has(e)&&(e.endsWith(`_date`)||e===`date`||e===`expected_close`)){let t=e.replace(/_/g,` `).replace(/\b\w/g,e=>e.toUpperCase());n.push({key:e,label:t}),r.add(e)}}return r.has(`created_at`)||n.push({key:`created_at`,label:`Created`}),n}function je(e,t){let n;if(n=t===`created_at`?e.createdAt:t===`updated_at`?e.updatedAt:e.fields[t],!n)return null;let r=String(n);return/^\d{4}-\d{2}-\d{2}/.test(r)?r.slice(0,10):null}function Me(e,t,n,r){let i=new Date,a=`${i.getFullYear()}-${String(i.getMonth()+1).padStart(2,`0`)}-${String(i.getDate()).padStart(2,`0`)}`,o=new Date(e,t-1,1).getDay(),s=new Date(e,t-1,1-o),c=new Map;for(let e of n){let t=je(e,r);t&&(c.has(t)||c.set(t,[]),c.get(t).push(e))}let l=[];for(let n=0;n<42;n++){let r=new Date(s);r.setDate(r.getDate()+n);let i=r.getFullYear(),o=r.getMonth()+1,u=r.getDate(),d=`${i}-${String(o).padStart(2,`0`)}-${String(u).padStart(2,`0`)}`;l.push({dateStr:d,day:u,isCurrentMonth:o===t&&i===e,isToday:d===a,entities:c.get(d)??[]})}return l}function Ne(e,t,n,r,i){let a=new Date,o=`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,`0`)}-${String(a.getDate()).padStart(2,`0`)}`,s=new Date(e,t-1,n),c=s.getDay(),l=new Date(s);l.setDate(s.getDate()-c);let u=new Map;for(let e of r){let t=je(e,i);t&&(u.has(t)||u.set(t,[]),u.get(t).push(e))}let d=[];for(let n=0;n<7;n++){let r=new Date(l);r.setDate(r.getDate()+n);let i=r.getFullYear(),a=r.getMonth()+1,s=r.getDate(),c=`${i}-${String(a).padStart(2,`0`)}-${String(s).padStart(2,`0`)}`;d.push({dateStr:c,day:s,isCurrentMonth:a===t&&i===e,isToday:c===o,entities:u.get(c)??[]})}return d}function Pe(e){if(e.length===0)return``;let t=new Date(e[0].dateStr+`T00:00:00`),n=new Date(e[e.length-1].dateStr+`T00:00:00`),r=t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear(),i=t.getFullYear()===n.getFullYear(),a=e=>e.toLocaleDateString(`en-US`,{month:`short`});return r?`${a(t)} ${t.getDate()} – ${n.getDate()}, ${n.getFullYear()}`:i?`${a(t)} ${t.getDate()} – ${a(n)} ${n.getDate()}, ${n.getFullYear()}`:`${a(t)} ${t.getDate()}, ${t.getFullYear()} – ${a(n)} ${n.getDate()}, ${n.getFullYear()}`}var Fe=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Ie=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],B=t(`<title> </title>`),Le=t(`<svg><!><path d="M30,23V21H27.91a5.9592,5.9592,0,0,0-1.0244-2.4707L28.364,17.05,26.95,15.6362l-1.4788,1.4785A5.9584,5.9584,0,0,0,23,16.09V14H21v2.09a5.9584,5.9584,0,0,0-2.4709,1.0244L17.05,15.6362,15.636,17.05l1.4787,1.479A5.9618,5.9618,0,0,0,16.09,21H14v2h2.09a5.9618,5.9618,0,0,0,1.0244,2.4707L15.636,26.95,17.05,28.3638l1.4788-1.4785A5.9584,5.9584,0,0,0,21,27.91V30h2V27.91a5.9584,5.9584,0,0,0,2.4709-1.0244L26.95,28.3638,28.364,26.95l-1.4787-1.479A5.9592,5.9592,0,0,0,27.91,23Zm-8,3a4,4,0,1,1,4-4A4.0045,4.0045,0,0,1,22,26Z"></path><path d="M28,6a2,2,0,0,0-2-2H22V2H20V4H12V2H10V4H6A2,2,0,0,0,4,6V26a2,2,0,0,0,2,2h4V26H6V6h4V8h2V6h8V8h2V6h4v6h2Z"></path></svg>`);function Re(e,t){let n=v(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),i=v(n,[`size`,`title`]);s(t,!1);let a=w(),l=w(),u=k(t,`size`,8,16),f=k(t,`title`,8,void 0);ne(()=>(h(n),h(f())),()=>{_(a,n[`aria-label`]||n[`aria-labelledby`]||f())}),ne(()=>(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})}),E(),M();var p=Le();T(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=S(p),b=e=>{var t=B(),n=S(t,!0);L(t),y(()=>r(n,f())),o(e,t)};c(g,e=>{f()&&e(b)}),d(2),L(p),o(e,p),ee()}var ze=I(`<button class="toolbar-icon-btn" aria-label="Back"><!></button>`),Be=I(`<!> <!> <!>`,1),Ve=I(`<button class="sg-sheet-row"><span class="sg-sheet-row-label"> </span> <span class="sg-sheet-row-trail"><!></span></button>`),He=I(`<button class="sg-sheet-row"><span class="sg-sheet-row-label"> </span> <span class="sg-sheet-row-trail"><!></span></button>`),Ue=I(`<button class="sg-sheet-row"><span class="sg-sheet-row-label"> </span> <span class="sg-sheet-row-trail"><!></span></button> <!> <!>`,1),We=I(`<button><span class="sg-sheet-row-lead"><!></span> <span class="sg-sheet-row-label">Month</span></button> <button><span class="sg-sheet-row-lead"><!></span> <span class="sg-sheet-row-label">Week</span></button>`,1),Ge=I(`<button><span class="sg-sheet-row-lead"><!></span> <span class="sg-sheet-row-label"> </span></button>`),Ke=I(`<div class="sg-sheet-body"><!></div>`),qe=I(`<!> <!>`,1),Je=I(`<!> <!>`,1),Ye=I(`<!> <!>`,1),Xe=I(`<div class="empty svelte-dnwsps"><p>No date fields available for the selected type.</p> <p class="empty-hint svelte-dnwsps">Try selecting a type with date fields like Task, Project, or Meeting.</p></div>`),Ze=I(`<div class="dow-header svelte-dnwsps"> </div>`),Qe=I(`<button class="entity-chip svelte-dnwsps" draggable="true"><span class="chip-label svelte-dnwsps"> </span></button>`),$e=I(`<button class="day-view-all svelte-dnwsps">View all</button>`),et=I(`<div><span> </span> <div class="day-entities svelte-dnwsps"></div> <!></div>`),tt=I(`<div class="calendar-grid svelte-dnwsps"><!> <!></div>`),nt=I(`<div class="tooltip-row svelte-dnwsps"><span class="tooltip-meta svelte-dnwsps"> </span></div>`),rt=I(`<span class="tooltip-dot svelte-dnwsps"></span>`),it=I(`<div class="tooltip-row svelte-dnwsps"><!> <span class="tooltip-meta svelte-dnwsps"> </span></div>`),at=I(`<div class="floating-tooltip svelte-dnwsps"><strong class="tooltip-title svelte-dnwsps"> </strong> <div class="tooltip-row svelte-dnwsps"><span class="tooltip-dot svelte-dnwsps"></span> <span class="tooltip-meta svelte-dnwsps"> </span></div> <!> <!></div>`),ot=I(`<button class="overflow-item svelte-dnwsps"><span class="chip-dot"></span> <span class="overflow-item-title svelte-dnwsps"> </span> <span class="overflow-item-type svelte-dnwsps"> </span></button>`),st=I(`<div class="overflow-backdrop svelte-dnwsps"></div> <div class="overflow-popover svelte-dnwsps"><div class="overflow-list svelte-dnwsps"></div></div>`,1),ct=I(`<div class="calendar-view svelte-dnwsps"><div class="calendar-toolbar svelte-dnwsps"><!> <button><!></button> <!> <div class="toolbar-left svelte-dnwsps"><!> <!></div> <div class="month-nav svelte-dnwsps"><button class="nav-btn svelte-dnwsps"><!></button> <button class="month-label svelte-dnwsps"><span class="month-label-full svelte-dnwsps"> </span> <span class="month-label-short svelte-dnwsps"> </span></button> <button class="nav-btn svelte-dnwsps"><!></button></div> <div class="toolbar-right svelte-dnwsps"><!></div></div> <!></div> <!> <!>`,1);function lt(t,f){s(f,!0);let h=k(f,`lockedType`,3,null),v=k(f,`lockedFolder`,3,null),w=k(f,`lockedFolderPath`,3,null),T=k(f,`storageId`,3,null),E=k(f,`entities`,3,null),ne=k(f,`tagSource`,3,null),M=k(f,`selectedTags`,19,()=>[]),I=P(()=>{let e=ne()??E()??[],t=new Map;for(let n of e){let e=n.fields.tags;if(Array.isArray(e))for(let n of e){let e=String(n);t.set(e,(t.get(e)??0)+1)}}return[...t.entries()].sort((e,t)=>e[0].localeCompare(t[0])).map(([e,t])=>({tag:e,count:t}))}),z=F(!1),B=F(`root`),Le=P(()=>m(B)===`mode`?`View`:m(B)===`sort`?`Sort by`:m(B)===`filter`?`Filter by tag`:`Options`);A(()=>{m(z)||_(B,`root`)});function lt(){_(B,`root`)}function ut(e){f.onTagsChange&&f.onTagsChange(e),_(z,!1)}let dt=P(()=>T()?`sg-calendarview-${T()}`:null);function ft(){if(!m(dt))return null;try{let e=localStorage.getItem(m(dt));if(e)return JSON.parse(e)}catch{}return null}function pt(){if(!m(dt))return;let e={selectedType:h()?null:m(H),dateField:m(U),year:m(W),month:m(G),day:m(K),mode:m(q)};localStorage.setItem(m(dt),JSON.stringify(e))}let mt=T()?`sg-calendarview-${T()}`:null,V=(()=>{if(!mt||typeof localStorage>`u`)return null;try{let e=localStorage.getItem(mt);return e?JSON.parse(e):null}catch{return null}})(),ht=new Date,H=F(O(h()??V?.selectedType??null)),U=F(O(V?.dateField??`due_date`)),W=F(O(V?.year??ht.getFullYear())),G=F(O(V?.month??ht.getMonth()+1)),K=F(O(V?.day??ht.getDate())),q=F(O(V?.mode??`month`)),gt=F(null);A(()=>{if(f.view&&f.view.id!==m(gt)){_(gt,f.view.id,!0);let e=ft();if(e)_(H,h()??e.selectedType??null,!0),_(U,e.dateField??`due_date`,!0),_(W,e.year??new Date().getFullYear(),!0),_(G,e.month??new Date().getMonth()+1,!0),_(K,e.day??new Date().getDate(),!0),_(q,e.mode??`month`,!0);else{let e=f.view.config;_(H,h()??e.selectedType??null,!0),_(U,e.calendar?.dateField??`due_date`,!0),_(W,e.calendar?.year??new Date().getFullYear(),!0),_(G,e.calendar?.month??new Date().getMonth()+1,!0),_(K,new Date().getDate(),!0),_(q,`month`)}}}),A(()=>{h()&&_(H,h())}),A(()=>{m(H),m(U),m(W),m(G),m(K),m(q),m(gt)!==null&&pt()});let _t=P(()=>{if(E())return E().filter(e=>!m(H)||e.entityType===m(H));let e=[];for(let t of oe.repos)if(!(v()&&t.name!==v()))for(let n of t.entities)(!m(H)||n.entityType===m(H))&&e.push(n);return e}),vt=P(()=>{let e=new Set;for(let t of m(_t))for(let n of Object.keys(t.fields))e.add(n);return e}),J=P(()=>Ae(m(H),m(vt))),yt=P(()=>m(J).find(e=>e.key===m(U))?.label??m(U));function bt(e){At(e),_(z,!1)}function xt(e){_(q,e,!0),_(z,!1)}A(()=>{m(J).length>0&&!m(J).some(e=>e.key===m(U))&&_(U,m(J)[0].key,!0)});let St=P(()=>m(q)===`week`?Ne(m(W),m(G),m(K),m(_t),m(U)):Me(m(W),m(G),m(_t),m(U))),Ct=P(()=>m(q)===`week`?Pe(m(St)):`${Fe[m(G)-1]} ${m(W)}`),wt=P(()=>m(q)===`week`?Pe(m(St)):`${Fe[m(G)-1].slice(0,3)} ${m(W)}`);A(()=>{Te.count=m(_t).length}),te(()=>{Te.count=null});function Tt(e){let t=new Date(m(W),m(G)-1,m(K));t.setDate(t.getDate()+e),_(W,t.getFullYear(),!0),_(G,t.getMonth()+1),_(K,t.getDate(),!0)}function Et(){m(q)===`week`?Tt(-7):m(G)===1?(_(G,12),x(W,-1)):x(G,-1)}function Dt(){m(q)===`week`?Tt(7):m(G)===12?(_(G,1),x(W)):x(G)}function Ot(){let e=new Date;_(W,e.getFullYear(),!0),_(G,e.getMonth()+1),_(K,e.getDate(),!0)}function kt(){_(q,m(q)===`month`?`week`:`month`,!0)}function At(e){e&&_(U,e,!0)}function jt(e){ie(`/${e.repo}/${e.entityType}/${e.id}`)}let Y=F(null),Mt=F(O({x:0,y:0})),Nt=F(!1),Pt=F(!1);function Ft(e,t){_(Nt,e+10+200>window.innerWidth),_(Pt,t+10+80>window.innerHeight),_(Mt,{x:m(Nt)?e-10:e+10,y:m(Pt)?t-10:t+10},!0)}function It(e,t){_(Y,t,!0),Ft(e.clientX,e.clientY)}function Lt(e){Ft(e.clientX,e.clientY)}function Rt(){_(Y,null)}let zt=F(O([])),Bt=F(O({x:0,y:0})),Vt=F(``);function Ht(e,t,n){e.stopPropagation(),_(zt,t,!0),_(Vt,new Date(n+`T00:00:00`).toLocaleDateString(`en-US`,{weekday:`short`,month:`short`,day:`numeric`}),!0);let r=e.currentTarget.getBoundingClientRect(),i=Math.min(320,t.length*36+40),a=r.left,o=r.bottom+4;a+260>window.innerWidth&&(a=window.innerWidth-260-8),a<8&&(a=8),o+i>window.innerHeight&&(o=r.top-i-4),o<8&&(o=8),_(Bt,{x:a,y:o},!0)}function Ut(){_(zt,[],!0)}let Wt=new Set([`created_at`,`updated_at`]),Gt=P(()=>!Wt.has(m(U))),X=F(null),Z=F(null);function Kt(e,t){_(X,t,!0),e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,t.id),Rt()}function qt(e,t){!m(X)||!m(Gt)||(e.preventDefault(),e.dataTransfer.dropEffect=`move`,_(Z,t,!0))}function Jt(){_(Z,null)}function Yt(){_(X,null),_(Z,null)}async function Xt(e,t){if(e.preventDefault(),!m(X))return;let n=m(X);_(X,null),_(Z,null);try{await ae(n.repo,n.entityType,n.id,{data:{[m(U)]:t}}),await oe.refreshEntities(n.repo)}catch(e){console.error(`Failed to update entity date:`,e)}}var Zt=ct(),Qt=C(Zt),$t=S(Qt),en=S($t),tn=e=>{ke(e,{get repoName(){return v()},get currentPath(){return w()}})};c(en,e=>{v()&&w()&&e(tn)});var Q=j(en,2);let nn;Re(S(Q),{size:16}),L(Q);var rn=j(Q,2);n(rn,()=>be,(t,i)=>{i(t,{get open(){return m(z)},set open(e){_(z,e,!0)},children:(t,i)=>{var s=Je(),l=C(s);n(l,()=>ve,(e,t)=>{t(e,{class:`toolbar-icon-btn mobile-overflow`,title:`More options`,"aria-label":`More options`,children:(e,t)=>{me(e,{})},$$slots:{default:!0}})}),n(j(l,2),()=>ge,(t,i)=>{i(t,{side:`bottom`,class:`sg-mobile-sheet`,children:(t,i)=>{var s=qe(),l=C(s);n(l,()=>ye,(e,t)=>{t(e,{class:`sg-sheet-header`,children:(e,t)=>{var i=Be(),s=C(i),l=e=>{var t=ze();Oe(S(t),{size:16}),L(t),p(`click`,t,lt),o(e,t)};c(s,e=>{m(B)!==`root`&&e(l)});var u=j(s,2);n(u,()=>_e,(e,t)=>{t(e,{class:`sg-sheet-title`,children:(e,t)=>{d();var n=a();y(()=>r(n,m(Le))),o(e,n)},$$slots:{default:!0}})}),n(j(u,2),()=>he,(e,t)=>{t(e,{class:`dialog-close-btn`,"aria-label":`Close`,children:(e,t)=>{de(e,{size:16})},$$slots:{default:!0}})}),o(e,i)},$$slots:{default:!0}})});var h=j(l,2),g=e=>{{let t=P(()=>m(z)&&m(B)===`filter`);xe(e,{get visible(){return m(t)},get availableTags(){return m(I)},get selectedTags(){return M()},onApply:ut})}},v=t=>{var n=Ke(),i=S(n),a=e=>{var t=Ue(),n=C(t),i=S(n),a=S(i);L(i);var s=j(i,2);R(S(s),{size:16}),L(s),L(n);var l=j(n,2),u=e=>{var t=Ve(),n=S(t),i=S(n);L(n);var a=j(n,2);R(S(a),{size:16}),L(a),L(t),y(()=>r(i,`Sort by ${m(yt)??``}`)),p(`click`,t,()=>_(B,`sort`)),o(e,t)};c(l,e=>{m(J).length>1&&e(u)});var d=j(l,2),h=e=>{var t=He(),n=S(t),i=S(n);L(n);var a=j(n,2);R(S(a),{size:16}),L(a),L(t),y(()=>r(i,`Filter by ${(M().length===0?`None`:M().length===1?M()[0]:`${M().length} tags`)??``}`)),p(`click`,t,()=>_(B,`filter`)),o(e,t)};c(d,e=>{f.onTagsChange&&m(I).length>0&&e(h)}),y(()=>r(a,`View ${m(q)===`week`?`Week`:`Month`}`)),p(`click`,n,()=>_(B,`mode`)),o(e,t)},s=e=>{var t=We(),n=C(t);let r;var i=S(n),a=S(i),s=e=>{Se(e,{size:16})};c(a,e=>{m(q)===`month`&&e(s)}),L(i),d(2),L(n);var l=j(n,2);let u;var f=S(l),h=S(f),g=e=>{Se(e,{size:16})};c(h,e=>{m(q)===`week`&&e(g)}),L(f),d(2),L(l),y(()=>{r=N(n,1,`sg-sheet-row`,null,r,{selected:m(q)===`month`}),u=N(l,1,`sg-sheet-row`,null,u,{selected:m(q)===`week`})}),p(`click`,n,()=>xt(`month`)),p(`click`,l,()=>xt(`week`)),o(e,t)},l=t=>{var n=u();e(C(n),17,()=>m(J),D,(e,t)=>{var n=Ge();let i;var a=S(n),s=S(a),l=e=>{Se(e,{size:16})};c(s,e=>{m(U)===m(t).key&&e(l)}),L(a);var u=j(a,2),d=S(u,!0);L(u),L(n),y(()=>{i=N(n,1,`sg-sheet-row`,null,i,{selected:m(U)===m(t).key}),r(d,m(t).label)}),p(`click`,n,()=>bt(m(t).key)),o(e,n)}),o(t,n)};c(i,e=>{m(B)===`root`?e(a):m(B)===`mode`?e(s,1):m(B)===`sort`&&e(l,2)}),L(n),o(t,n)};c(h,e=>{m(B)===`filter`?e(g):e(v,-1)}),o(t,s)},$$slots:{default:!0}})}),o(t,s)},$$slots:{default:!0}})});var an=j(rn,2),on=S(an),sn=t=>{var r=u();n(C(r),()=>ue,(t,r)=>{r(t,{type:`single`,get value(){return m(U)},onValueChange:At,children:(t,r)=>{var i=Ye(),a=C(i);{let e=P(()=>m(J).find(e=>e.key===m(U))?.label??m(U));n(a,()=>se,(t,n)=>{n(t,{size:`sm`,get value(){return m(e)}})})}n(j(a,2),()=>le,(t,r)=>{r(t,{align:`start`,children:(t,r)=>{var i=u();e(C(i),17,()=>m(J),D,(e,t)=>{var r=u();n(C(r),()=>ce,(e,n)=>{n(e,{get value(){return m(t).key},get label(){return m(t).label}})}),o(e,r)}),o(t,i)},$$slots:{default:!0}})}),o(t,i)},$$slots:{default:!0}})}),o(t,r)};c(on,e=>{m(J).length>1&&e(sn)});var cn=j(on,2),ln=e=>{var t=u();l(C(t),()=>f.toolbarLeft),o(e,t)};c(cn,e=>{f.toolbarLeft&&e(ln)}),L(an);var un=j(an,2),$=S(un);De(S($),{size:16}),L($);var dn=j($,2),fn=S(dn),pn=S(fn,!0);L(fn);var mn=j(fn,2),hn=S(mn,!0);L(mn),L(dn);var gn=j(dn,2);R(S(gn),{size:16}),L(gn),L(un);var _n=j(un,2),vn=S(_n),yn=e=>{var t=u();l(C(t),()=>f.toolbarRight),o(e,t)};c(vn,e=>{f.toolbarRight&&e(yn)}),L(_n),L($t);var bn=j($t,2),xn=e=>{o(e,Xe())},Sn=t=>{var n=tt(),a=S(n);e(a,17,()=>Ie,D,(e,t)=>{var n=Ze(),i=S(n,!0);L(n),y(()=>r(i,m(t))),o(e,n)}),e(j(a,2),17,()=>m(St),D,(t,n,a,s)=>{let l=P(()=>m(n).entities.length>2);var u=et();let d;var f=S(u);let h;var _=S(f,!0);L(f);var v=j(f,2);e(v,21,()=>m(n).entities,D,(e,t)=>{let n=P(()=>pe(m(t).entityType));var a=Qe();let s;var c=S(a),l=S(c,!0);L(c),L(a),y(e=>{s=b(a,``,s,{"border-left-color":m(n)}),r(l,e)},[()=>Ce(m(t).title)]),i(`dragstart`,a,e=>Kt(e,m(t))),i(`dragend`,a,Yt),p(`click`,a,()=>jt(m(t))),i(`mouseenter`,a,e=>It(e,m(t))),p(`mousemove`,a,Lt),i(`mouseleave`,a,Rt),o(e,a)}),L(v);var x=j(v,2),C=e=>{var t=$e();y(()=>g(t,`title`,`View all ${m(n).entities.length??``}`)),p(`click`,t,e=>Ht(e,m(n).entities,m(n).dateStr)),o(e,t)};c(x,e=>{m(l)&&e(C)}),L(u),y(()=>{d=N(u,1,`calendar-day svelte-dnwsps`,null,d,{"outside-month":!m(n).isCurrentMonth,today:m(n).isToday,"week-mode":m(q)===`week`,"has-overflow":m(l),"drop-target":m(Gt)&&m(Z)===m(n).dateStr}),h=N(f,1,`day-number svelte-dnwsps`,null,h,{"today-number":m(n).isToday}),r(_,m(n).day)}),i(`dragover`,u,e=>qt(e,m(n).dateStr)),i(`dragleave`,u,Jt),i(`drop`,u,e=>Xt(e,m(n).dateStr)),o(t,u)}),L(n),o(t,n)};c(bn,e=>{m(J).length===0?e(xn):e(Sn,-1)}),L(Qt);var Cn=j(Qt,2),wn=e=>{let t=P(()=>pe(m(Y).entityType)),n=P(()=>je(m(Y),m(U)));var i=at();let a;var s=S(i),l=S(s,!0);L(s);var u=j(s,2),d=S(u);let f;var p=j(d,2),h=S(p,!0);L(p),L(u);var g=j(u,2),_=e=>{var t=nt(),i=S(t),a=S(i,!0);L(i),L(t),y(e=>r(a,e),[()=>new Date(m(n)+`T00:00:00`).toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`})]),o(e,t)};c(g,e=>{m(n)&&e(_)});var v=j(g,2),x=e=>{let t=P(()=>Ee(m(Y).entityType,`status`,String(m(Y).fields.status)));var n=it(),i=S(n),a=e=>{var n=rt();let r;y(()=>r=b(n,``,r,{background:m(t)})),o(e,n)};c(i,e=>{m(t)&&e(a)});var s=j(i,2),l=S(s,!0);L(s),L(n),y(e=>r(l,e),[()=>fe(String(m(Y).fields.status))]),o(e,n)};c(v,e=>{m(Y).fields.status&&e(x)}),L(i),y((e,n)=>{a=b(i,``,a,{left:`${m(Mt).x??``}px`,top:`${m(Mt).y??``}px`,transform:`translate(${m(Nt)?`-100%`:`0`}, ${m(Pt)?`-100%`:`0`})`}),r(l,e),f=b(d,``,f,{background:m(t)}),r(h,n)},[()=>Ce(m(Y).title),()=>fe(m(Y).entityType)]),o(e,i)};c(Cn,e=>{m(Y)&&e(wn)});var Tn=j(Cn,2),En=t=>{var n=st(),i=C(n),a=j(i,2);let s;var c=S(a);e(c,21,()=>m(zt),D,(e,t)=>{let n=P(()=>pe(m(t).entityType));var i=ot(),a=S(i);let s;var c=j(a,2),l=S(c,!0);L(c),re(c,e=>we?.(e));var u=j(c,2),d=S(u,!0);L(u),L(i),y((e,t)=>{s=b(a,``,s,{background:m(n)}),r(l,e),r(d,t)},[()=>Ce(m(t).title),()=>fe(m(t).entityType)]),p(`click`,i,()=>{Ut(),jt(m(t))}),o(e,i)}),L(c),L(a),y(()=>s=b(a,``,s,{left:`${m(Bt).x??``}px`,top:`${m(Bt).y??``}px`})),p(`click`,i,Ut),o(t,n)};c(Tn,e=>{m(zt).length>0&&e(En)}),y(()=>{nn=N(Q,1,`toolbar-icon-btn mode-toggle svelte-dnwsps`,null,nn,{active:m(q)===`week`}),g(Q,`title`,m(q)===`week`?`Switch to month view`:`Switch to week view`),g($,`title`,m(q)===`week`?`Previous week`:`Previous month`),r(pn,m(Ct)),r(hn,m(wt)),g(gn,`title`,m(q)===`week`?`Next week`:`Next month`)}),p(`click`,Q,kt),p(`click`,$,Et),p(`click`,dn,Ot),p(`click`,gn,Dt),o(t,Zt),ee()}f([`click`,`mousemove`]);export{lt as default};
1
+ import{A as e,B as t,D as n,F as r,G as i,H as a,L as o,Mt as s,N as c,O 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,b,bt as x,dt as S,ft as C,gt as w,h as T,it as E,j as D,jt as ee,mt as O,n as te,o as k,ot as A,pt as j,rt as ne,u as M,w as re,x as N,xt as P,yt as F,z as I,zt as L}from"./DV-Vb89U.js";import{r as ie}from"./CXExAf1F.js";import"./t62M88qj.js";import"./COffENhr.js";import{O as ae}from"./-jdP5JqO.js";import{r as oe}from"./CTFOXiYo.js";import"./CIgq6kOW.js";import{i as se,n as ce,r as le,t as ue}from"./BDCOho_G.js";import{t as de}from"./DJnMBCXJ2.js";import{t as R}from"./CKPqZArH2.js";import{a as fe,r as pe}from"./CHRfvdkq2.js";import{t as me}from"./D276ir6O2.js";import{a as he,i as ge,n as _e,o as ve,r as ye,s as be,t as xe}from"./Ce2P7b-X.js";import{t as Se}from"./D5VdX2NC.js";import{i as Ce}from"./DPXpm86N.js";import{t as we}from"./D-fOfpFk.js";import{t as Te}from"./DggGoXzJ.js";import{a as Ee,t as z}from"./C-48vCcy.js";import{t as De}from"./BHZnNKnO.js";import{t as Oe}from"./DGdxbQG5.js";import{t as ke}from"./BYhTUh0n.js";function Ae(e,t){let n=[],r=new Set;if(e&&z[e])for(let t of z[e])t.format===`date`&&!r.has(t.key)&&(n.push({key:t.key,label:t.label}),r.add(t.key));if(t){for(let e of t)if(!r.has(e)&&(e.endsWith(`_date`)||e===`date`||e===`expected_close`)){let t=e.replace(/_/g,` `).replace(/\b\w/g,e=>e.toUpperCase());n.push({key:e,label:t}),r.add(e)}}return r.has(`created_at`)||n.push({key:`created_at`,label:`Created`}),n}function je(e,t){let n;if(n=t===`created_at`?e.createdAt:t===`updated_at`?e.updatedAt:e.fields[t],!n)return null;let r=String(n);return/^\d{4}-\d{2}-\d{2}/.test(r)?r.slice(0,10):null}function Me(e,t,n,r){let i=new Date,a=`${i.getFullYear()}-${String(i.getMonth()+1).padStart(2,`0`)}-${String(i.getDate()).padStart(2,`0`)}`,o=new Date(e,t-1,1).getDay(),s=new Date(e,t-1,1-o),c=new Map;for(let e of n){let t=je(e,r);t&&(c.has(t)||c.set(t,[]),c.get(t).push(e))}let l=[];for(let n=0;n<42;n++){let r=new Date(s);r.setDate(r.getDate()+n);let i=r.getFullYear(),o=r.getMonth()+1,u=r.getDate(),d=`${i}-${String(o).padStart(2,`0`)}-${String(u).padStart(2,`0`)}`;l.push({dateStr:d,day:u,isCurrentMonth:o===t&&i===e,isToday:d===a,entities:c.get(d)??[]})}return l}function Ne(e,t,n,r,i){let a=new Date,o=`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,`0`)}-${String(a.getDate()).padStart(2,`0`)}`,s=new Date(e,t-1,n),c=s.getDay(),l=new Date(s);l.setDate(s.getDate()-c);let u=new Map;for(let e of r){let t=je(e,i);t&&(u.has(t)||u.set(t,[]),u.get(t).push(e))}let d=[];for(let n=0;n<7;n++){let r=new Date(l);r.setDate(r.getDate()+n);let i=r.getFullYear(),a=r.getMonth()+1,s=r.getDate(),c=`${i}-${String(a).padStart(2,`0`)}-${String(s).padStart(2,`0`)}`;d.push({dateStr:c,day:s,isCurrentMonth:a===t&&i===e,isToday:c===o,entities:u.get(c)??[]})}return d}function Pe(e){if(e.length===0)return``;let t=new Date(e[0].dateStr+`T00:00:00`),n=new Date(e[e.length-1].dateStr+`T00:00:00`),r=t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear(),i=t.getFullYear()===n.getFullYear(),a=e=>e.toLocaleDateString(`en-US`,{month:`short`});return r?`${a(t)} ${t.getDate()} – ${n.getDate()}, ${n.getFullYear()}`:i?`${a(t)} ${t.getDate()} – ${a(n)} ${n.getDate()}, ${n.getFullYear()}`:`${a(t)} ${t.getDate()}, ${t.getFullYear()} – ${a(n)} ${n.getDate()}, ${n.getFullYear()}`}var Fe=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Ie=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],B=t(`<title> </title>`),Le=t(`<svg><!><path d="M30,23V21H27.91a5.9592,5.9592,0,0,0-1.0244-2.4707L28.364,17.05,26.95,15.6362l-1.4788,1.4785A5.9584,5.9584,0,0,0,23,16.09V14H21v2.09a5.9584,5.9584,0,0,0-2.4709,1.0244L17.05,15.6362,15.636,17.05l1.4787,1.479A5.9618,5.9618,0,0,0,16.09,21H14v2h2.09a5.9618,5.9618,0,0,0,1.0244,2.4707L15.636,26.95,17.05,28.3638l1.4788-1.4785A5.9584,5.9584,0,0,0,21,27.91V30h2V27.91a5.9584,5.9584,0,0,0,2.4709-1.0244L26.95,28.3638,28.364,26.95l-1.4787-1.479A5.9592,5.9592,0,0,0,27.91,23Zm-8,3a4,4,0,1,1,4-4A4.0045,4.0045,0,0,1,22,26Z"></path><path d="M28,6a2,2,0,0,0-2-2H22V2H20V4H12V2H10V4H6A2,2,0,0,0,4,6V26a2,2,0,0,0,2,2h4V26H6V6h4V8h2V6h8V8h2V6h4v6h2Z"></path></svg>`);function Re(e,t){let n=v(t,[`children`,`$$slots`,`$$events`,`$$legacy`]),i=v(n,[`size`,`title`]);s(t,!1);let a=w(),l=w(),u=k(t,`size`,8,16),f=k(t,`title`,8,void 0);ne(()=>(h(n),h(f())),()=>{_(a,n[`aria-label`]||n[`aria-labelledby`]||f())}),ne(()=>(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})}),E(),M();var p=Le();T(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=S(p),b=e=>{var t=B(),n=S(t,!0);L(t),y(()=>r(n,f())),o(e,t)};c(g,e=>{f()&&e(b)}),d(2),L(p),o(e,p),ee()}var ze=I(`<button class="toolbar-icon-btn" aria-label="Back"><!></button>`),Be=I(`<!> <!> <!>`,1),Ve=I(`<button class="sg-sheet-row"><span class="sg-sheet-row-label"> </span> <span class="sg-sheet-row-trail"><!></span></button>`),He=I(`<button class="sg-sheet-row"><span class="sg-sheet-row-label"> </span> <span class="sg-sheet-row-trail"><!></span></button>`),Ue=I(`<button class="sg-sheet-row"><span class="sg-sheet-row-label"> </span> <span class="sg-sheet-row-trail"><!></span></button> <!> <!>`,1),We=I(`<button><span class="sg-sheet-row-lead"><!></span> <span class="sg-sheet-row-label">Month</span></button> <button><span class="sg-sheet-row-lead"><!></span> <span class="sg-sheet-row-label">Week</span></button>`,1),Ge=I(`<button><span class="sg-sheet-row-lead"><!></span> <span class="sg-sheet-row-label"> </span></button>`),Ke=I(`<div class="sg-sheet-body"><!></div>`),qe=I(`<!> <!>`,1),Je=I(`<!> <!>`,1),Ye=I(`<!> <!>`,1),Xe=I(`<div class="empty svelte-dnwsps"><p>No date fields available for the selected type.</p> <p class="empty-hint svelte-dnwsps">Try selecting a type with date fields like Task, Project, or Meeting.</p></div>`),Ze=I(`<div class="dow-header svelte-dnwsps"> </div>`),Qe=I(`<button class="entity-chip svelte-dnwsps" draggable="true"><span class="chip-label svelte-dnwsps"> </span></button>`),$e=I(`<button class="day-view-all svelte-dnwsps">View all</button>`),et=I(`<div><span> </span> <div class="day-entities svelte-dnwsps"></div> <!></div>`),tt=I(`<div class="calendar-grid svelte-dnwsps"><!> <!></div>`),nt=I(`<div class="tooltip-row svelte-dnwsps"><span class="tooltip-meta svelte-dnwsps"> </span></div>`),rt=I(`<span class="tooltip-dot svelte-dnwsps"></span>`),it=I(`<div class="tooltip-row svelte-dnwsps"><!> <span class="tooltip-meta svelte-dnwsps"> </span></div>`),at=I(`<div class="floating-tooltip svelte-dnwsps"><strong class="tooltip-title svelte-dnwsps"> </strong> <div class="tooltip-row svelte-dnwsps"><span class="tooltip-dot svelte-dnwsps"></span> <span class="tooltip-meta svelte-dnwsps"> </span></div> <!> <!></div>`),ot=I(`<button class="overflow-item svelte-dnwsps"><span class="chip-dot"></span> <span class="overflow-item-title svelte-dnwsps"> </span> <span class="overflow-item-type svelte-dnwsps"> </span></button>`),st=I(`<div class="overflow-backdrop svelte-dnwsps"></div> <div class="overflow-popover svelte-dnwsps"><div class="overflow-list svelte-dnwsps"></div></div>`,1),ct=I(`<div class="calendar-view svelte-dnwsps"><div class="calendar-toolbar svelte-dnwsps"><!> <button><!></button> <!> <div class="toolbar-left svelte-dnwsps"><!> <!></div> <div class="month-nav svelte-dnwsps"><button class="nav-btn svelte-dnwsps"><!></button> <button class="month-label svelte-dnwsps"><span class="month-label-full svelte-dnwsps"> </span> <span class="month-label-short svelte-dnwsps"> </span></button> <button class="nav-btn svelte-dnwsps"><!></button></div> <div class="toolbar-right svelte-dnwsps"><!></div></div> <!></div> <!> <!>`,1);function lt(t,f){s(f,!0);let h=k(f,`lockedType`,3,null),v=k(f,`lockedFolder`,3,null),w=k(f,`lockedFolderPath`,3,null),T=k(f,`storageId`,3,null),E=k(f,`entities`,3,null),ne=k(f,`tagSource`,3,null),M=k(f,`selectedTags`,19,()=>[]),I=P(()=>{let e=ne()??E()??[],t=new Map;for(let n of e){let e=n.fields.tags;if(Array.isArray(e))for(let n of e){let e=String(n);t.set(e,(t.get(e)??0)+1)}}return[...t.entries()].sort((e,t)=>e[0].localeCompare(t[0])).map(([e,t])=>({tag:e,count:t}))}),z=F(!1),B=F(`root`),Le=P(()=>m(B)===`mode`?`View`:m(B)===`sort`?`Sort by`:m(B)===`filter`?`Filter by tag`:`Options`);A(()=>{m(z)||_(B,`root`)});function lt(){_(B,`root`)}function ut(e){f.onTagsChange&&f.onTagsChange(e),_(z,!1)}let dt=P(()=>T()?`sg-calendarview-${T()}`:null);function ft(){if(!m(dt))return null;try{let e=localStorage.getItem(m(dt));if(e)return JSON.parse(e)}catch{}return null}function pt(){if(!m(dt))return;let e={selectedType:h()?null:m(H),dateField:m(U),year:m(W),month:m(G),day:m(K),mode:m(q)};localStorage.setItem(m(dt),JSON.stringify(e))}let mt=T()?`sg-calendarview-${T()}`:null,V=(()=>{if(!mt||typeof localStorage>`u`)return null;try{let e=localStorage.getItem(mt);return e?JSON.parse(e):null}catch{return null}})(),ht=new Date,H=F(O(h()??V?.selectedType??null)),U=F(O(V?.dateField??`due_date`)),W=F(O(V?.year??ht.getFullYear())),G=F(O(V?.month??ht.getMonth()+1)),K=F(O(V?.day??ht.getDate())),q=F(O(V?.mode??`month`)),gt=F(null);A(()=>{if(f.view&&f.view.id!==m(gt)){_(gt,f.view.id,!0);let e=ft();if(e)_(H,h()??e.selectedType??null,!0),_(U,e.dateField??`due_date`,!0),_(W,e.year??new Date().getFullYear(),!0),_(G,e.month??new Date().getMonth()+1,!0),_(K,e.day??new Date().getDate(),!0),_(q,e.mode??`month`,!0);else{let e=f.view.config;_(H,h()??e.selectedType??null,!0),_(U,e.calendar?.dateField??`due_date`,!0),_(W,e.calendar?.year??new Date().getFullYear(),!0),_(G,e.calendar?.month??new Date().getMonth()+1,!0),_(K,new Date().getDate(),!0),_(q,`month`)}}}),A(()=>{h()&&_(H,h())}),A(()=>{m(H),m(U),m(W),m(G),m(K),m(q),m(gt)!==null&&pt()});let _t=P(()=>{if(E())return E().filter(e=>!m(H)||e.entityType===m(H));let e=[];for(let t of oe.repos)if(!(v()&&t.name!==v()))for(let n of t.entities)(!m(H)||n.entityType===m(H))&&e.push(n);return e}),vt=P(()=>{let e=new Set;for(let t of m(_t))for(let n of Object.keys(t.fields))e.add(n);return e}),J=P(()=>Ae(m(H),m(vt))),yt=P(()=>m(J).find(e=>e.key===m(U))?.label??m(U));function bt(e){At(e),_(z,!1)}function xt(e){_(q,e,!0),_(z,!1)}A(()=>{m(J).length>0&&!m(J).some(e=>e.key===m(U))&&_(U,m(J)[0].key,!0)});let St=P(()=>m(q)===`week`?Ne(m(W),m(G),m(K),m(_t),m(U)):Me(m(W),m(G),m(_t),m(U))),Ct=P(()=>m(q)===`week`?Pe(m(St)):`${Fe[m(G)-1]} ${m(W)}`),wt=P(()=>m(q)===`week`?Pe(m(St)):`${Fe[m(G)-1].slice(0,3)} ${m(W)}`);A(()=>{Te.count=m(_t).length}),te(()=>{Te.count=null});function Tt(e){let t=new Date(m(W),m(G)-1,m(K));t.setDate(t.getDate()+e),_(W,t.getFullYear(),!0),_(G,t.getMonth()+1),_(K,t.getDate(),!0)}function Et(){m(q)===`week`?Tt(-7):m(G)===1?(_(G,12),x(W,-1)):x(G,-1)}function Dt(){m(q)===`week`?Tt(7):m(G)===12?(_(G,1),x(W)):x(G)}function Ot(){let e=new Date;_(W,e.getFullYear(),!0),_(G,e.getMonth()+1),_(K,e.getDate(),!0)}function kt(){_(q,m(q)===`month`?`week`:`month`,!0)}function At(e){e&&_(U,e,!0)}function jt(e){ie(`/${e.repo}/${e.entityType}/${e.id}`)}let Y=F(null),Mt=F(O({x:0,y:0})),Nt=F(!1),Pt=F(!1);function Ft(e,t){_(Nt,e+10+200>window.innerWidth),_(Pt,t+10+80>window.innerHeight),_(Mt,{x:m(Nt)?e-10:e+10,y:m(Pt)?t-10:t+10},!0)}function It(e,t){_(Y,t,!0),Ft(e.clientX,e.clientY)}function Lt(e){Ft(e.clientX,e.clientY)}function Rt(){_(Y,null)}let zt=F(O([])),Bt=F(O({x:0,y:0})),Vt=F(``);function Ht(e,t,n){e.stopPropagation(),_(zt,t,!0),_(Vt,new Date(n+`T00:00:00`).toLocaleDateString(`en-US`,{weekday:`short`,month:`short`,day:`numeric`}),!0);let r=e.currentTarget.getBoundingClientRect(),i=Math.min(320,t.length*36+40),a=r.left,o=r.bottom+4;a+260>window.innerWidth&&(a=window.innerWidth-260-8),a<8&&(a=8),o+i>window.innerHeight&&(o=r.top-i-4),o<8&&(o=8),_(Bt,{x:a,y:o},!0)}function Ut(){_(zt,[],!0)}let Wt=new Set([`created_at`,`updated_at`]),Gt=P(()=>!Wt.has(m(U))),X=F(null),Z=F(null);function Kt(e,t){_(X,t,!0),e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,t.id),Rt()}function qt(e,t){!m(X)||!m(Gt)||(e.preventDefault(),e.dataTransfer.dropEffect=`move`,_(Z,t,!0))}function Jt(){_(Z,null)}function Yt(){_(X,null),_(Z,null)}async function Xt(e,t){if(e.preventDefault(),!m(X))return;let n=m(X);_(X,null),_(Z,null);try{await ae(n.repo,n.entityType,n.id,{data:{[m(U)]:t}}),await oe.refreshEntities(n.repo)}catch(e){console.error(`Failed to update entity date:`,e)}}var Zt=ct(),Qt=C(Zt),$t=S(Qt),en=S($t),tn=e=>{ke(e,{get repoName(){return v()},get currentPath(){return w()}})};c(en,e=>{v()&&w()&&e(tn)});var Q=j(en,2);let nn;Re(S(Q),{size:16}),L(Q);var rn=j(Q,2);n(rn,()=>be,(t,i)=>{i(t,{get open(){return m(z)},set open(e){_(z,e,!0)},children:(t,i)=>{var s=Je(),l=C(s);n(l,()=>ve,(e,t)=>{t(e,{class:`toolbar-icon-btn mobile-overflow`,title:`More options`,"aria-label":`More options`,children:(e,t)=>{me(e,{})},$$slots:{default:!0}})}),n(j(l,2),()=>ge,(t,i)=>{i(t,{side:`bottom`,class:`sg-mobile-sheet`,children:(t,i)=>{var s=qe(),l=C(s);n(l,()=>ye,(e,t)=>{t(e,{class:`sg-sheet-header`,children:(e,t)=>{var i=Be(),s=C(i),l=e=>{var t=ze();Oe(S(t),{size:16}),L(t),p(`click`,t,lt),o(e,t)};c(s,e=>{m(B)!==`root`&&e(l)});var u=j(s,2);n(u,()=>_e,(e,t)=>{t(e,{class:`sg-sheet-title`,children:(e,t)=>{d();var n=a();y(()=>r(n,m(Le))),o(e,n)},$$slots:{default:!0}})}),n(j(u,2),()=>he,(e,t)=>{t(e,{class:`dialog-close-btn`,"aria-label":`Close`,children:(e,t)=>{de(e,{size:16})},$$slots:{default:!0}})}),o(e,i)},$$slots:{default:!0}})});var h=j(l,2),g=e=>{{let t=P(()=>m(z)&&m(B)===`filter`);xe(e,{get visible(){return m(t)},get availableTags(){return m(I)},get selectedTags(){return M()},onApply:ut})}},v=t=>{var n=Ke(),i=S(n),a=e=>{var t=Ue(),n=C(t),i=S(n),a=S(i);L(i);var s=j(i,2);R(S(s),{size:16}),L(s),L(n);var l=j(n,2),u=e=>{var t=Ve(),n=S(t),i=S(n);L(n);var a=j(n,2);R(S(a),{size:16}),L(a),L(t),y(()=>r(i,`Sort by ${m(yt)??``}`)),p(`click`,t,()=>_(B,`sort`)),o(e,t)};c(l,e=>{m(J).length>1&&e(u)});var d=j(l,2),h=e=>{var t=He(),n=S(t),i=S(n);L(n);var a=j(n,2);R(S(a),{size:16}),L(a),L(t),y(()=>r(i,`Filter by ${(M().length===0?`None`:M().length===1?M()[0]:`${M().length} tags`)??``}`)),p(`click`,t,()=>_(B,`filter`)),o(e,t)};c(d,e=>{f.onTagsChange&&m(I).length>0&&e(h)}),y(()=>r(a,`View ${m(q)===`week`?`Week`:`Month`}`)),p(`click`,n,()=>_(B,`mode`)),o(e,t)},s=e=>{var t=We(),n=C(t);let r;var i=S(n),a=S(i),s=e=>{Se(e,{size:16})};c(a,e=>{m(q)===`month`&&e(s)}),L(i),d(2),L(n);var l=j(n,2);let u;var f=S(l),h=S(f),g=e=>{Se(e,{size:16})};c(h,e=>{m(q)===`week`&&e(g)}),L(f),d(2),L(l),y(()=>{r=N(n,1,`sg-sheet-row`,null,r,{selected:m(q)===`month`}),u=N(l,1,`sg-sheet-row`,null,u,{selected:m(q)===`week`})}),p(`click`,n,()=>xt(`month`)),p(`click`,l,()=>xt(`week`)),o(e,t)},l=t=>{var n=u();e(C(n),17,()=>m(J),D,(e,t)=>{var n=Ge();let i;var a=S(n),s=S(a),l=e=>{Se(e,{size:16})};c(s,e=>{m(U)===m(t).key&&e(l)}),L(a);var u=j(a,2),d=S(u,!0);L(u),L(n),y(()=>{i=N(n,1,`sg-sheet-row`,null,i,{selected:m(U)===m(t).key}),r(d,m(t).label)}),p(`click`,n,()=>bt(m(t).key)),o(e,n)}),o(t,n)};c(i,e=>{m(B)===`root`?e(a):m(B)===`mode`?e(s,1):m(B)===`sort`&&e(l,2)}),L(n),o(t,n)};c(h,e=>{m(B)===`filter`?e(g):e(v,-1)}),o(t,s)},$$slots:{default:!0}})}),o(t,s)},$$slots:{default:!0}})});var an=j(rn,2),on=S(an),sn=t=>{var r=u();n(C(r),()=>ue,(t,r)=>{r(t,{type:`single`,get value(){return m(U)},onValueChange:At,children:(t,r)=>{var i=Ye(),a=C(i);{let e=P(()=>m(J).find(e=>e.key===m(U))?.label??m(U));n(a,()=>se,(t,n)=>{n(t,{size:`sm`,get value(){return m(e)}})})}n(j(a,2),()=>le,(t,r)=>{r(t,{align:`start`,children:(t,r)=>{var i=u();e(C(i),17,()=>m(J),D,(e,t)=>{var r=u();n(C(r),()=>ce,(e,n)=>{n(e,{get value(){return m(t).key},get label(){return m(t).label}})}),o(e,r)}),o(t,i)},$$slots:{default:!0}})}),o(t,i)},$$slots:{default:!0}})}),o(t,r)};c(on,e=>{m(J).length>1&&e(sn)});var cn=j(on,2),ln=e=>{var t=u();l(C(t),()=>f.toolbarLeft),o(e,t)};c(cn,e=>{f.toolbarLeft&&e(ln)}),L(an);var un=j(an,2),$=S(un);De(S($),{size:16}),L($);var dn=j($,2),fn=S(dn),pn=S(fn,!0);L(fn);var mn=j(fn,2),hn=S(mn,!0);L(mn),L(dn);var gn=j(dn,2);R(S(gn),{size:16}),L(gn),L(un);var _n=j(un,2),vn=S(_n),yn=e=>{var t=u();l(C(t),()=>f.toolbarRight),o(e,t)};c(vn,e=>{f.toolbarRight&&e(yn)}),L(_n),L($t);var bn=j($t,2),xn=e=>{o(e,Xe())},Sn=t=>{var n=tt(),a=S(n);e(a,17,()=>Ie,D,(e,t)=>{var n=Ze(),i=S(n,!0);L(n),y(()=>r(i,m(t))),o(e,n)}),e(j(a,2),17,()=>m(St),D,(t,n,a,s)=>{let l=P(()=>m(n).entities.length>2);var u=et();let d;var f=S(u);let h;var _=S(f,!0);L(f);var v=j(f,2);e(v,21,()=>m(n).entities,D,(e,t)=>{let n=P(()=>pe(m(t).entityType));var a=Qe();let s;var c=S(a),l=S(c,!0);L(c),L(a),y(e=>{s=b(a,``,s,{"border-left-color":m(n)}),r(l,e)},[()=>Ce(m(t).title)]),i(`dragstart`,a,e=>Kt(e,m(t))),i(`dragend`,a,Yt),p(`click`,a,()=>jt(m(t))),i(`mouseenter`,a,e=>It(e,m(t))),p(`mousemove`,a,Lt),i(`mouseleave`,a,Rt),o(e,a)}),L(v);var x=j(v,2),C=e=>{var t=$e();y(()=>g(t,`title`,`View all ${m(n).entities.length??``}`)),p(`click`,t,e=>Ht(e,m(n).entities,m(n).dateStr)),o(e,t)};c(x,e=>{m(l)&&e(C)}),L(u),y(()=>{d=N(u,1,`calendar-day svelte-dnwsps`,null,d,{"outside-month":!m(n).isCurrentMonth,today:m(n).isToday,"week-mode":m(q)===`week`,"has-overflow":m(l),"drop-target":m(Gt)&&m(Z)===m(n).dateStr}),h=N(f,1,`day-number svelte-dnwsps`,null,h,{"today-number":m(n).isToday}),r(_,m(n).day)}),i(`dragover`,u,e=>qt(e,m(n).dateStr)),i(`dragleave`,u,Jt),i(`drop`,u,e=>Xt(e,m(n).dateStr)),o(t,u)}),L(n),o(t,n)};c(bn,e=>{m(J).length===0?e(xn):e(Sn,-1)}),L(Qt);var Cn=j(Qt,2),wn=e=>{let t=P(()=>pe(m(Y).entityType)),n=P(()=>je(m(Y),m(U)));var i=at();let a;var s=S(i),l=S(s,!0);L(s);var u=j(s,2),d=S(u);let f;var p=j(d,2),h=S(p,!0);L(p),L(u);var g=j(u,2),_=e=>{var t=nt(),i=S(t),a=S(i,!0);L(i),L(t),y(e=>r(a,e),[()=>new Date(m(n)+`T00:00:00`).toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`})]),o(e,t)};c(g,e=>{m(n)&&e(_)});var v=j(g,2),x=e=>{let t=P(()=>Ee(m(Y).entityType,`status`,String(m(Y).fields.status)));var n=it(),i=S(n),a=e=>{var n=rt();let r;y(()=>r=b(n,``,r,{background:m(t)})),o(e,n)};c(i,e=>{m(t)&&e(a)});var s=j(i,2),l=S(s,!0);L(s),L(n),y(e=>r(l,e),[()=>fe(String(m(Y).fields.status))]),o(e,n)};c(v,e=>{m(Y).fields.status&&e(x)}),L(i),y((e,n)=>{a=b(i,``,a,{left:`${m(Mt).x??``}px`,top:`${m(Mt).y??``}px`,transform:`translate(${m(Nt)?`-100%`:`0`}, ${m(Pt)?`-100%`:`0`})`}),r(l,e),f=b(d,``,f,{background:m(t)}),r(h,n)},[()=>Ce(m(Y).title),()=>fe(m(Y).entityType)]),o(e,i)};c(Cn,e=>{m(Y)&&e(wn)});var Tn=j(Cn,2),En=t=>{var n=st(),i=C(n),a=j(i,2);let s;var c=S(a);e(c,21,()=>m(zt),D,(e,t)=>{let n=P(()=>pe(m(t).entityType));var i=ot(),a=S(i);let s;var c=j(a,2),l=S(c,!0);L(c),re(c,e=>we?.(e));var u=j(c,2),d=S(u,!0);L(u),L(i),y((e,t)=>{s=b(a,``,s,{background:m(n)}),r(l,e),r(d,t)},[()=>Ce(m(t).title),()=>fe(m(t).entityType)]),p(`click`,i,()=>{Ut(),jt(m(t))}),o(e,i)}),L(c),L(a),y(()=>s=b(a,``,s,{left:`${m(Bt).x??``}px`,top:`${m(Bt).y??``}px`})),p(`click`,i,Ut),o(t,n)};c(Tn,e=>{m(zt).length>0&&e(En)}),y(()=>{nn=N(Q,1,`toolbar-icon-btn mode-toggle svelte-dnwsps`,null,nn,{active:m(q)===`week`}),g(Q,`title`,m(q)===`week`?`Switch to month view`:`Switch to week view`),g($,`title`,m(q)===`week`?`Previous week`:`Previous month`),r(pn,m(Ct)),r(hn,m(wt)),g(gn,`title`,m(q)===`week`?`Next week`:`Next month`)}),p(`click`,Q,kt),p(`click`,$,Et),p(`click`,dn,Ot),p(`click`,gn,Dt),o(t,Zt),ee()}f([`click`,`mousemove`]);export{lt as default};
@@ -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"./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.
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"./CXExAf1F.js";import{t as ce}from"./C-OaypFN.js";import"./t62M88qj.js";import"./COffENhr.js";import{n as le}from"./DqS-Swnv.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"./DO9Q03Lg.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"./M7qnJQvE2.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"./1mYg-G9o.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:`{
@@ -1,2 +1,2 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./e9oCENPh.js","./BNTlsKDJ.js","./DV-Vb89U.js","./-jdP5JqO.js","./Ttel-lK0.js"])))=>i.map(i=>d[i]);
2
- import{X as e,_t as t,yt as n}from"./DV-Vb89U.js";import{i as r}from"./DdgELRG0.js";import{t as i}from"./C-OaypFN.js";import"./CGWca4QC.js";import{O as a}from"./-jdP5JqO.js";import{n as o,r as s}from"./CTFOXiYo.js";import{t as c}from"./9goCdhdY.js";import{t as l}from"./SJL_oyD4.js";import{r as u}from"./BAH0sc_p.js";var d=800;function f(){let r=n(!1),i=n(null),o=n(null),c=null,l=null,u=!1;function f(e,t,n,r){c&&c.repo===e&&c.type===t&&c.id===n?(r.data!==void 0&&(c.payload.data=r.data),r.content!==void 0&&(c.payload.content=r.content)):c={repo:e,type:t,id:n,payload:{...r}},p()}function p(){l&&clearTimeout(l),l=setTimeout(m,d)}async function m(){if(l=null,!u&&c){let{repo:e,type:n,id:l,payload:d}=c;c=null,u=!0,t(r,!0),t(o,null);try{if(await a(e,n,l,d),t(i,new Date,!0),d.data?.name){let t=s.repos.find(t=>t.name===e)?.entities.find(e=>e.id===l);t&&(t.title=d.data.name)}}catch(r){t(o,r.message??`Save failed`,!0);let i=r.status??r.statusCode;(!i||i>=500)&&(c={repo:e,type:n,id:l,payload:d})}finally{t(r,!1),u=!1,c&&m()}}}function h(){return l&&=(clearTimeout(l),null),c?m():Promise.resolve()}async function g(e,n,s,c){t(r,!0),t(o,null);try{let r=await a(e,n,s,c);return t(i,new Date,!0),r}catch(e){return t(o,e.message??`Save failed`,!0),null}finally{t(r,!1)}}function _(){t(o,null),t(i,null),c=null,l&&=(clearTimeout(l),null)}return{get saving(){return e(r)},get lastSaved(){return e(i)},get error(){return e(o)},get hasPending(){return!!(c||u)},scheduleAutoSave:f,flush:h,saveEntity:g,reset:_}}var p=f();function m(e){return s.repos.find(t=>t.name===e)?.displayName??o(e)}var h=null,g=null,_=null,v=null,y=null,b=null,x=null,S=null,C=null,w=null,T=[],E=null,D=1e3,O=n(!1),k=n(null),A=new Map,j={},M={};function N(e,t){A.delete(e);let n=t.entities.length;u(n===1?`${e} updated ${t.entities[0]}`:`${e} updated ${n} entities`)}function P(e){for(let[t,n]of A)n.repo===e&&(clearTimeout(n.timer),A.delete(t))}function F(e){let n=l.user?.displayName;if(e.type===`sync_progress`){let t=j[e.repo];if(t){let n=e.message.trim(),r=n.match(/^Syncing from source:\s*(.+)$/i);r&&(M[e.repo]=`Syncing ${r[1].trim()}…`);let i=M[e.repo]??`Syncing ${e.repo}…`;u.loading(i,{id:t,description:n,duration:36e5})}return}if(e.type===`entity_change`){if(n&&e.actor===n&&e.source===`api`){s.refreshEntities(e.repo);return}if(s.refreshEntities(e.repo),c.selectedRepo===e.repo&&c.selectedType===e.entityType&&c.selectedId===e.entityId){p.hasPending?u(`${e.actor} also saved changes to this entity`):r();return}let t=A.get(e.actor);if(t)clearTimeout(t.timer),t.entities.includes(e.entityId)||t.entities.push(e.entityId),t.timer=setTimeout(()=>N(e.actor,t),1e4);else{let t={entities:[e.entityId],repo:e.repo,timer:setTimeout(()=>N(e.actor,t),1e4)};A.set(e.actor,t)}return}if(e.type===`session_commit`){if(n&&e.actor===n){t(k,e.timestamp,!0);return}let r=e.entities.length;u(r===1?`${e.actor} saved changes to ${e.entities[0]}`:`${e.actor} saved ${r} changes in ${e.repo}`),s.refreshEntities(e.repo);return}if(e.type===`sync_complete`){if(P(e.repo),!j[e.repo]){let t=e.created+e.updated+e.deleted,n=t===0?`Sync complete · no changes in ${e.repo}`:`Sync complete · ${t} ${t===1?`entity`:`entities`} from ${e.source}`;u.success(n)}s.refreshEntities(e.repo);return}if(e.type===`folder_created`){u(`${e.actor} created folder ${m(e.repo)}`),s.ensureFolderInSidebar(e.repo);return}if(e.type===`folder_deleted`){u(`${e.actor} deleted folder ${m(e.repo)}`);return}if(e.type===`repo_sync`){n&&e.actor===n&&e.source===`api`||u(`${e.actor} pushed to ${e.repo}`),s.refreshEntities(e.repo);return}if(e.type===`folder_message`){v?.(e);return}if(e.type===`message_update`){y?.(e);return}if(e.type===`folder_agent_thinking`){b?.(e);return}if(e.type===`workspace_message`){S?.(e);return}if(e.type===`workspace_message_update`){C?.(e);return}if(e.type===`workspace_agent_thinking`){w?.(e);return}if(e.type===`user_mention`){x?.(e);return}if(e.type===`presence`){g?.(e);return}if(e.type===`online`){_?.(e);return}if(e.type===`insights_updated`||e.type===`briefing_updated`){i(()=>import(`./e9oCENPh.js`).then(e=>e.n).then(e=>e.insightsStore.load()),__vite__mapDeps([0,1,2,3,4]),import.meta.url);return}if(e.type===`access_granted`){s.ensureFolderInSidebar(e.repo);return}if(e.type===`access_revoked`){c.selectedRepo===e.repo&&c.deselect(),s.onFolderAccessRevoked(e.repo);return}}function I(){if(typeof window>`u`||h&&(h.readyState===WebSocket.OPEN||h.readyState===WebSocket.CONNECTING))return;let e=window.location.protocol===`https:`?`wss:`:`ws:`,n=(()=>{try{return Intl.DateTimeFormat().resolvedOptions().timeZone||`UTC`}catch{return`UTC`}})(),r=`${e}//${window.location.host}/ws?tz=${encodeURIComponent(n)}`;h=new WebSocket(r),h.binaryType=`arraybuffer`,h.onopen=()=>{t(O,!0),D=1e3,s.refreshAll();for(let e of T)e()},h.onmessage=e=>{if(!(e.data instanceof ArrayBuffer))try{let t=JSON.parse(e.data);if(t?.type===`ping`){h?.send(JSON.stringify({type:`pong`}));return}let n=t;n.type&&n.type!==`toast`&&F(n)}catch{}},h.onclose=()=>{t(O,!1),h=null,E=setTimeout(()=>{D=Math.min(D*2,1e4),I()},D)},h.onerror=()=>{}}function L(){E&&=(clearTimeout(E),null),h&&=(h.close(),null),t(O,!1);for(let[,e]of A)clearTimeout(e.timer);A.clear()}function R(e,t=4e3){u(e,{duration:t})}function z(e,t){let n=crypto.randomUUID();return t?.loading?u.loading(e,{id:n,duration:36e5}):u(e,{id:n}),n}function B(e,t,n){if(n?.loading){u.loading(t,{id:e});return}/failed|error/i.test(t)?u.error(t,{id:e,duration:n?.duration??6e3}):u.success(t,{id:e,duration:n?.duration??4e3})}function V(e){let t=crypto.randomUUID();j[e]=t,u.loading(`Syncing ${e}…`,{id:t,duration:36e5})}function H(e,t,n){let r=j[e];r&&(delete j[e],delete M[e],n?u.error(t,{id:r,duration:6e3}):u.success(t,{id:r,duration:4e3}))}function U(e){g=e}function W(e){_=e}function G(e){v=e}function K(e){y=e}function q(e){b=e}function J(e){x=e}function Y(e){S=e}function X(e){C=e}function Z(e){w=e}function Q(e){T.push(e)}function $(e){h?.readyState===WebSocket.OPEN&&h.send(JSON.stringify(e))}var ee={get connected(){return e(O)},get lastAutoSaved(){return e(k)},get ws(){return h},connect:I,disconnect:L,showToast:R,showPersistentToast:z,updateToast:B,startSyncToast:V,finishSyncToast:H,send:$,setPresenceHandler:U,setOnlineHandler:W,setMessagesHandler:G,setMessageUpdateHandler:K,setAgentThinkingHandler:q,setUserMentionHandler:J,setWorkspaceMessagesHandler:Y,setWorkspaceMessageUpdateHandler:X,setWorkspaceAgentThinkingHandler:Z,addConnectHandler:Q};export{p as n,ee as t};
2
+ import{X as e,_t as t,yt as n}from"./DV-Vb89U.js";import{i as r}from"./CXExAf1F.js";import{t as i}from"./C-OaypFN.js";import"./COffENhr.js";import{O as a}from"./-jdP5JqO.js";import{n as o,r as s}from"./CTFOXiYo.js";import{t as c}from"./DO9Q03Lg.js";import{t as l}from"./SJL_oyD4.js";import{r as u}from"./BAH0sc_p.js";var d=800;function f(){let r=n(!1),i=n(null),o=n(null),c=null,l=null,u=!1;function f(e,t,n,r){c&&c.repo===e&&c.type===t&&c.id===n?(r.data!==void 0&&(c.payload.data=r.data),r.content!==void 0&&(c.payload.content=r.content)):c={repo:e,type:t,id:n,payload:{...r}},p()}function p(){l&&clearTimeout(l),l=setTimeout(m,d)}async function m(){if(l=null,!u&&c){let{repo:e,type:n,id:l,payload:d}=c;c=null,u=!0,t(r,!0),t(o,null);try{if(await a(e,n,l,d),t(i,new Date,!0),d.data?.name){let t=s.repos.find(t=>t.name===e)?.entities.find(e=>e.id===l);t&&(t.title=d.data.name)}}catch(r){t(o,r.message??`Save failed`,!0);let i=r.status??r.statusCode;(!i||i>=500)&&(c={repo:e,type:n,id:l,payload:d})}finally{t(r,!1),u=!1,c&&m()}}}function h(){return l&&=(clearTimeout(l),null),c?m():Promise.resolve()}async function g(e,n,s,c){t(r,!0),t(o,null);try{let r=await a(e,n,s,c);return t(i,new Date,!0),r}catch(e){return t(o,e.message??`Save failed`,!0),null}finally{t(r,!1)}}function _(){t(o,null),t(i,null),c=null,l&&=(clearTimeout(l),null)}return{get saving(){return e(r)},get lastSaved(){return e(i)},get error(){return e(o)},get hasPending(){return!!(c||u)},scheduleAutoSave:f,flush:h,saveEntity:g,reset:_}}var p=f();function m(e){return s.repos.find(t=>t.name===e)?.displayName??o(e)}var h=null,g=null,_=null,v=null,y=null,b=null,x=null,S=null,C=null,w=null,T=[],E=null,D=1e3,O=n(!1),k=n(null),A=new Map,j={},M={};function N(e,t){A.delete(e);let n=t.entities.length;u(n===1?`${e} updated ${t.entities[0]}`:`${e} updated ${n} entities`)}function P(e){for(let[t,n]of A)n.repo===e&&(clearTimeout(n.timer),A.delete(t))}function F(e){let n=l.user?.displayName;if(e.type===`sync_progress`){let t=j[e.repo];if(t){let n=e.message.trim(),r=n.match(/^Syncing from source:\s*(.+)$/i);r&&(M[e.repo]=`Syncing ${r[1].trim()}…`);let i=M[e.repo]??`Syncing ${e.repo}…`;u.loading(i,{id:t,description:n,duration:36e5})}return}if(e.type===`entity_change`){if(n&&e.actor===n&&e.source===`api`){s.refreshEntities(e.repo);return}if(s.refreshEntities(e.repo),c.selectedRepo===e.repo&&c.selectedType===e.entityType&&c.selectedId===e.entityId){p.hasPending?u(`${e.actor} also saved changes to this entity`):r();return}let t=A.get(e.actor);if(t)clearTimeout(t.timer),t.entities.includes(e.entityId)||t.entities.push(e.entityId),t.timer=setTimeout(()=>N(e.actor,t),1e4);else{let t={entities:[e.entityId],repo:e.repo,timer:setTimeout(()=>N(e.actor,t),1e4)};A.set(e.actor,t)}return}if(e.type===`session_commit`){if(n&&e.actor===n){t(k,e.timestamp,!0);return}let r=e.entities.length;u(r===1?`${e.actor} saved changes to ${e.entities[0]}`:`${e.actor} saved ${r} changes in ${e.repo}`),s.refreshEntities(e.repo);return}if(e.type===`sync_complete`){if(P(e.repo),!j[e.repo]){let t=e.created+e.updated+e.deleted,n=t===0?`Sync complete · no changes in ${e.repo}`:`Sync complete · ${t} ${t===1?`entity`:`entities`} from ${e.source}`;u.success(n)}s.refreshEntities(e.repo);return}if(e.type===`folder_created`){u(`${e.actor} created folder ${m(e.repo)}`),s.ensureFolderInSidebar(e.repo);return}if(e.type===`folder_deleted`){u(`${e.actor} deleted folder ${m(e.repo)}`);return}if(e.type===`repo_sync`){n&&e.actor===n&&e.source===`api`||u(`${e.actor} pushed to ${e.repo}`),s.refreshEntities(e.repo);return}if(e.type===`folder_message`){v?.(e);return}if(e.type===`message_update`){y?.(e);return}if(e.type===`folder_agent_thinking`){b?.(e);return}if(e.type===`workspace_message`){S?.(e);return}if(e.type===`workspace_message_update`){C?.(e);return}if(e.type===`workspace_agent_thinking`){w?.(e);return}if(e.type===`user_mention`){x?.(e);return}if(e.type===`presence`){g?.(e);return}if(e.type===`online`){_?.(e);return}if(e.type===`insights_updated`||e.type===`briefing_updated`){i(()=>import(`./e9oCENPh.js`).then(e=>e.n).then(e=>e.insightsStore.load()),__vite__mapDeps([0,1,2,3,4]),import.meta.url);return}if(e.type===`access_granted`){s.ensureFolderInSidebar(e.repo);return}if(e.type===`access_revoked`){c.selectedRepo===e.repo&&c.deselect(),s.onFolderAccessRevoked(e.repo);return}}function I(){if(typeof window>`u`||h&&(h.readyState===WebSocket.OPEN||h.readyState===WebSocket.CONNECTING))return;let e=window.location.protocol===`https:`?`wss:`:`ws:`,n=(()=>{try{return Intl.DateTimeFormat().resolvedOptions().timeZone||`UTC`}catch{return`UTC`}})(),r=`${e}//${window.location.host}/ws?tz=${encodeURIComponent(n)}`;h=new WebSocket(r),h.binaryType=`arraybuffer`,h.onopen=()=>{t(O,!0),D=1e3,s.refreshAll();for(let e of T)e()},h.onmessage=e=>{if(!(e.data instanceof ArrayBuffer))try{let t=JSON.parse(e.data);if(t?.type===`ping`){h?.send(JSON.stringify({type:`pong`}));return}let n=t;n.type&&n.type!==`toast`&&F(n)}catch{}},h.onclose=()=>{t(O,!1),h=null,E=setTimeout(()=>{D=Math.min(D*2,1e4),I()},D)},h.onerror=()=>{}}function L(){E&&=(clearTimeout(E),null),h&&=(h.close(),null),t(O,!1);for(let[,e]of A)clearTimeout(e.timer);A.clear()}function R(e,t=4e3){u(e,{duration:t})}function z(e,t){let n=crypto.randomUUID();return t?.loading?u.loading(e,{id:n,duration:36e5}):u(e,{id:n}),n}function B(e,t,n){if(n?.loading){u.loading(t,{id:e});return}/failed|error/i.test(t)?u.error(t,{id:e,duration:n?.duration??6e3}):u.success(t,{id:e,duration:n?.duration??4e3})}function V(e){let t=crypto.randomUUID();j[e]=t,u.loading(`Syncing ${e}…`,{id:t,duration:36e5})}function H(e,t,n){let r=j[e];r&&(delete j[e],delete M[e],n?u.error(t,{id:r,duration:6e3}):u.success(t,{id:r,duration:4e3}))}function U(e){g=e}function W(e){_=e}function G(e){v=e}function K(e){y=e}function q(e){b=e}function J(e){x=e}function Y(e){S=e}function X(e){C=e}function Z(e){w=e}function Q(e){T.push(e)}function $(e){h?.readyState===WebSocket.OPEN&&h.send(JSON.stringify(e))}var ee={get connected(){return e(O)},get lastAutoSaved(){return e(k)},get ws(){return h},connect:I,disconnect:L,showToast:R,showPersistentToast:z,updateToast:B,startSyncToast:V,finishSyncToast:H,send:$,setPresenceHandler:U,setOnlineHandler:W,setMessagesHandler:G,setMessageUpdateHandler:K,setAgentThinkingHandler:q,setUserMentionHandler:J,setWorkspaceMessagesHandler:Y,setWorkspaceMessageUpdateHandler:X,setWorkspaceAgentThinkingHandler:Z,addConnectHandler:Q};export{p as n,ee as t};