studiograph 1.3.44-next.1 → 1.3.44-next.3

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 (85) hide show
  1. package/dist/server/index.js +36 -0
  2. package/dist/server/index.js.map +1 -1
  3. package/dist/server/routes/insights-api.d.ts +7 -3
  4. package/dist/server/routes/insights-api.js +52 -21
  5. package/dist/server/routes/insights-api.js.map +1 -1
  6. package/dist/server/ws-hub.d.ts +6 -1
  7. package/dist/server/ws-hub.js.map +1 -1
  8. package/dist/services/auth-service.d.ts +13 -0
  9. package/dist/services/auth-service.js +52 -0
  10. package/dist/services/auth-service.js.map +1 -1
  11. package/dist/services/insights.d.ts +18 -11
  12. package/dist/services/insights.js +121 -77
  13. package/dist/services/insights.js.map +1 -1
  14. package/dist/web/_app/immutable/assets/3.zsEg_MDN.css +1 -0
  15. package/dist/web/_app/immutable/assets/{7.CObh-s2-.css → 7.D55lTQ_F.css} +1 -1
  16. package/dist/web/_app/immutable/chunks/{Be5VhuaI.js → APIqItee.js} +1 -1
  17. package/dist/web/_app/immutable/chunks/B-PHzYeY.js +1 -0
  18. package/dist/web/_app/immutable/chunks/{JDb8RpWX.js → B3NI-DOv.js} +1 -1
  19. package/dist/web/_app/immutable/chunks/{B-eIKuyV.js → BDTSG9D-.js} +1 -1
  20. package/dist/web/_app/immutable/chunks/{Dg_GUhrt.js → BEbZenUn.js} +1 -1
  21. package/dist/web/_app/immutable/chunks/{SJusBvJH.js → BHue2Ock.js} +1 -1
  22. package/dist/web/_app/immutable/chunks/{DRJ9YW_E.js → BPXdu_FX.js} +1 -1
  23. package/dist/web/_app/immutable/chunks/{D0zbd2ZV.js → BR3Oh1Lv.js} +1 -1
  24. package/dist/web/_app/immutable/chunks/{DYVSnKKh.js → BYKARDRw.js} +1 -1
  25. package/dist/web/_app/immutable/chunks/BfEy5AjR.js +2 -0
  26. package/dist/web/_app/immutable/chunks/{BJimep0Q.js → BgBJ0u3M.js} +1 -1
  27. package/dist/web/_app/immutable/chunks/{P7PfXw_H.js → Bnl5ADsW.js} +1 -1
  28. package/dist/web/_app/immutable/chunks/{Dv65pOU4.js → Bolw6cIp.js} +1 -1
  29. package/dist/web/_app/immutable/chunks/{7lzM-85A.js → Bt5_mycY.js} +1 -1
  30. package/dist/web/_app/immutable/chunks/C0v9FrTH.js +1 -0
  31. package/dist/web/_app/immutable/chunks/CB2-7g10.js +1 -0
  32. package/dist/web/_app/immutable/chunks/{DEyrdHQB.js → CFtRXHDP.js} +1 -1
  33. package/dist/web/_app/immutable/chunks/{BA_Wro7X.js → CRnhIQbv.js} +1 -1
  34. package/dist/web/_app/immutable/chunks/CSzKZPD4.js +1 -0
  35. package/dist/web/_app/immutable/chunks/Cc0c675R.js +1 -0
  36. package/dist/web/_app/immutable/chunks/{RGHlrGBn.js → D-yNNNdf.js} +1 -1
  37. package/dist/web/_app/immutable/chunks/{DTDfEpZd.js → D2C1YupD.js} +1 -1
  38. package/dist/web/_app/immutable/chunks/{BtJ5VKKi.js → DCVmM0L5.js} +1 -1
  39. package/dist/web/_app/immutable/chunks/{CdvQjHNy.js → DHtLlmE0.js} +1 -1
  40. package/dist/web/_app/immutable/chunks/DNldxAbC.js +4 -0
  41. package/dist/web/_app/immutable/chunks/{9QAsBMIK.js → DQ5NTKSo.js} +1 -1
  42. package/dist/web/_app/immutable/chunks/{CNVuHNwC.js → DQYNi3YK.js} +1 -1
  43. package/dist/web/_app/immutable/chunks/{CfuRx7rA.js → DSh-OF2y.js} +1 -1
  44. package/dist/web/_app/immutable/chunks/{Cwkp_c4R.js → DT3KtxWU.js} +1 -1
  45. package/dist/web/_app/immutable/chunks/{mkNdSDMf.js → DiWKchgv.js} +1 -1
  46. package/dist/web/_app/immutable/chunks/HVmKTSmh.js +1 -0
  47. package/dist/web/_app/immutable/chunks/{fKdE_Jx_.js → KHKAD2Ng.js} +1 -1
  48. package/dist/web/_app/immutable/chunks/{BH82yShn.js → Sk0ODu4Y.js} +1 -1
  49. package/dist/web/_app/immutable/chunks/{Bypyvp-Q.js → azUmHUDT.js} +1 -1
  50. package/dist/web/_app/immutable/chunks/{CajNsaOw.js → b0XUoOIH.js} +2 -2
  51. package/dist/web/_app/immutable/chunks/{DP6MOIr2.js → lsAKkphT.js} +1 -1
  52. package/dist/web/_app/immutable/chunks/{BLi1Oegj.js → vZ2iBqLE.js} +1 -1
  53. package/dist/web/_app/immutable/entry/app.BuNYNoxY.js +2 -0
  54. package/dist/web/_app/immutable/entry/start.6840wwQK.js +1 -0
  55. package/dist/web/_app/immutable/nodes/0.Dowq8M1Z.js +2 -0
  56. package/dist/web/_app/immutable/nodes/1.UNZ7IKS_.js +1 -0
  57. package/dist/web/_app/immutable/nodes/{10.BqjRpXN6.js → 10.7pt8gUOi.js} +1 -1
  58. package/dist/web/_app/immutable/nodes/2.B5L8POz_.js +84 -0
  59. package/dist/web/_app/immutable/nodes/3.B1Y1g0du.js +1 -0
  60. package/dist/web/_app/immutable/nodes/4.BerDMn5m.js +11 -0
  61. package/dist/web/_app/immutable/nodes/{5.pB3H4l7g.js → 5.IM34i9-W.js} +1 -1
  62. package/dist/web/_app/immutable/nodes/6.DPwydXYm.js +2 -0
  63. package/dist/web/_app/immutable/nodes/7.DpSO-I2k.js +2 -0
  64. package/dist/web/_app/immutable/nodes/{8.B5sO5Rkn.js → 8.BVUyEEut.js} +1 -1
  65. package/dist/web/_app/immutable/nodes/{9.DOysjWYm.js → 9.8nTMvuWx.js} +1 -1
  66. package/dist/web/_app/version.json +1 -1
  67. package/dist/web/index.html +11 -12
  68. package/package.json +1 -1
  69. package/dist/web/_app/immutable/assets/3.CHSDCrUY.css +0 -1
  70. package/dist/web/_app/immutable/chunks/BZd_7gpI.js +0 -1
  71. package/dist/web/_app/immutable/chunks/CAEA_aBe.js +0 -1
  72. package/dist/web/_app/immutable/chunks/CHDa87Lu.js +0 -1
  73. package/dist/web/_app/immutable/chunks/D18-Aspv.js +0 -1
  74. package/dist/web/_app/immutable/chunks/DQ_O96iG.js +0 -1
  75. package/dist/web/_app/immutable/chunks/DUsnWwWN.js +0 -1
  76. package/dist/web/_app/immutable/chunks/DgMUDNqD.js +0 -4
  77. package/dist/web/_app/immutable/entry/app.FJ-QaQhu.js +0 -2
  78. package/dist/web/_app/immutable/entry/start.Cae6DI7N.js +0 -1
  79. package/dist/web/_app/immutable/nodes/0.tyq0tjYR.js +0 -2
  80. package/dist/web/_app/immutable/nodes/1.D-QPCIcu.js +0 -1
  81. package/dist/web/_app/immutable/nodes/2.CogYiW3g.js +0 -84
  82. package/dist/web/_app/immutable/nodes/3.CQ8SfijF.js +0 -1
  83. package/dist/web/_app/immutable/nodes/4.BS-4PSr6.js +0 -11
  84. package/dist/web/_app/immutable/nodes/6.CKD5i0Ve.js +0 -2
  85. package/dist/web/_app/immutable/nodes/7.au7lCUbq.js +0 -2
@@ -1,44 +1,45 @@
1
1
  /**
2
2
  * Insights Service
3
3
  *
4
- * Generates AI-driven insights by analyzing entities across collections.
5
- * Insights surface cross-entity connections, trends, and patterns.
4
+ * Generates AI-driven insights by analyzing entities across collections,
5
+ * personalized by the user's home brief. Insights surface actionable
6
+ * patterns: risks, relationship health, opportunities, and graph quality.
7
+ *
8
+ * Adapted from feat/insights-home reference implementation.
6
9
  */
7
- import { join } from 'path';
8
- import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'fs';
9
10
  import Anthropic from '@anthropic-ai/sdk';
10
- import { resolveApiKey, resolveProvider, loadUserConfig } from '../core/user-config.js';
11
- const INSIGHTS_FILE = 'insights.json';
12
- /**
13
- * Read cached insights from disk.
14
- */
15
- export function readInsights(workspacePath) {
16
- const filePath = join(workspacePath, '.studiograph', INSIGHTS_FILE);
17
- if (!existsSync(filePath))
18
- return null;
19
- try {
20
- return JSON.parse(readFileSync(filePath, 'utf-8'));
21
- }
22
- catch {
23
- return null;
24
- }
25
- }
26
- /**
27
- * Save insights to disk.
28
- */
29
- function saveInsights(workspacePath, data) {
30
- const dir = join(workspacePath, '.studiograph');
31
- if (!existsSync(dir))
32
- mkdirSync(dir, { recursive: true });
33
- writeFileSync(join(dir, INSIGHTS_FILE), JSON.stringify(data, null, 2), 'utf-8');
34
- }
11
+ import { resolveApiKey, resolveProvider, resolveModelId, loadUserConfig } from '../core/user-config.js';
35
12
  /**
36
13
  * Gather entity summaries for insight generation.
37
- * Returns a compact text representation of recent entities across accessible repos.
14
+ * Includes temporal signals (due dates, staleness) for actionable analysis.
38
15
  */
39
16
  function gatherEntityContext(wm, repoNames, maxEntities = 200) {
40
17
  const lines = [];
41
18
  let total = 0;
19
+ const now = new Date();
20
+ // Collection summaries first — gives the AI an accurate overview before entity details
21
+ lines.push('=== COLLECTION SUMMARIES ===');
22
+ for (const repoName of repoNames) {
23
+ try {
24
+ const graph = wm.getGraph(repoName);
25
+ const allEntities = graph.search({});
26
+ const typeCounts = {};
27
+ for (const e of allEntities) {
28
+ const t = e.data?.entity_type ?? e.entityType ?? 'unknown';
29
+ typeCounts[t] = (typeCounts[t] ?? 0) + 1;
30
+ }
31
+ const repoConfig = wm.getRepoConfig(repoName);
32
+ const syncSources = repoConfig?.sync ?? [];
33
+ const summary = Object.entries(typeCounts).map(([t, c]) => `${c} ${t}s`).join(', ');
34
+ lines.push(`[${repoName}] ${allEntities.length} entities: ${summary}`);
35
+ if (syncSources.length > 0) {
36
+ lines.push(` sync sources: ${syncSources.map((s) => s.source ?? 'unknown').join(', ')}`);
37
+ }
38
+ }
39
+ catch { /* skip */ }
40
+ }
41
+ lines.push('');
42
+ lines.push('=== ENTITY DETAILS ===');
42
43
  for (const repoName of repoNames) {
43
44
  try {
44
45
  const graph = wm.getGraph(repoName);
@@ -48,31 +49,47 @@ function gatherEntityContext(wm, repoNames, maxEntities = 200) {
48
49
  break;
49
50
  const fm = entity.data;
50
51
  const type = fm.entity_type ?? entity.entityType ?? 'unknown';
51
- const title = fm.title ?? fm.name ?? entity.id;
52
+ const title = fm.name ?? entity.id;
52
53
  const wikilinks = entity.document?.wikilinks ?? [];
53
54
  const content = entity.document?.content ?? '';
54
- // Truncate content to keep context manageable
55
- const snippet = content.length > 500 ? content.slice(0, 500) + '...' : content;
55
+ const snippet = content.length > 300 ? content.slice(0, 300) + '...' : content;
56
56
  lines.push(`[${repoName}/${type}/${entity.id}] ${title}`);
57
- if (wikilinks.length > 0) {
58
- lines.push(` links: ${wikilinks.join(', ')}`);
59
- }
60
- // Include select frontmatter fields
57
+ // Temporal and status metadata
61
58
  const meta = [];
62
- if (fm.created_at)
63
- meta.push(`created: ${fm.created_at}`);
64
- if (fm.updated_at)
65
- meta.push(`updated: ${fm.updated_at}`);
66
59
  if (fm.status)
67
60
  meta.push(`status: ${fm.status}`);
68
- if (fm.attendees)
69
- meta.push(`attendees: ${JSON.stringify(fm.attendees)}`);
61
+ if (fm.priority)
62
+ meta.push(`priority: ${fm.priority}`);
63
+ if (fm.stage)
64
+ meta.push(`stage: ${fm.stage}`);
65
+ if (fm.assignee)
66
+ meta.push(`assignee: ${fm.assignee}`);
67
+ if (fm.due_date) {
68
+ const dueDate = new Date(fm.due_date);
69
+ const daysUntil = Math.round((dueDate.getTime() - now.getTime()) / 86400000);
70
+ meta.push(`due: ${fm.due_date} (${daysUntil < 0 ? Math.abs(daysUntil) + 'd overdue' : daysUntil + 'd away'})`);
71
+ }
72
+ if (fm.expected_close)
73
+ meta.push(`expected_close: ${fm.expected_close}`);
70
74
  if (fm.client)
71
75
  meta.push(`client: ${fm.client}`);
72
76
  if (fm.project)
73
77
  meta.push(`project: ${fm.project}`);
78
+ if (fm.deal_value)
79
+ meta.push(`deal_value: ${fm.deal_value}`);
80
+ if (fm.attendees)
81
+ meta.push(`attendees: ${JSON.stringify(fm.attendees)}`);
82
+ if (fm.updated_at) {
83
+ const updated = new Date(fm.updated_at);
84
+ const daysSince = Math.round((now.getTime() - updated.getTime()) / 86400000);
85
+ if (daysSince > 14)
86
+ meta.push(`stale: ${daysSince}d since update`);
87
+ }
74
88
  if (meta.length > 0)
75
89
  lines.push(` ${meta.join(' | ')}`);
90
+ if (wikilinks.length > 0) {
91
+ lines.push(` links: ${wikilinks.join(', ')}`);
92
+ }
76
93
  if (snippet)
77
94
  lines.push(` content: ${snippet}`);
78
95
  lines.push('');
@@ -85,60 +102,86 @@ function gatherEntityContext(wm, repoNames, maxEntities = 200) {
85
102
  }
86
103
  return { context: lines.join('\n'), entityCount: total };
87
104
  }
88
- const SYSTEM_PROMPT = `You are an insight engine for a knowledge management workspace. Your job is to analyze entities (meetings, people, projects, decisions, documents, etc.) and surface non-obvious connections, patterns, and trends.
105
+ function buildSystemPrompt(userBrief, tools) {
106
+ const briefSection = userBrief
107
+ ? `\n\nThe user has described what they care about most:\n"${userBrief}"\n\nPrioritize insights that align with their focus. But also surface critical issues they might not have asked about (like overdue tasks or stalled projects).`
108
+ : '';
109
+ return `You are an insight engine for a knowledge management workspace used by creative services teams. Analyze entities (meetings, people, projects, decisions, tasks, deals, documents, etc.) and surface actionable insights.
110
+
111
+ ACCURACY IS CRITICAL. The data provided includes:
112
+ - Collection summaries with exact entity type counts — trust these numbers, do not guess or speculate about what exists
113
+ - Sync source configurations — if a collection lists a sync source, data IS flowing from it
114
+ - Entity details with metadata — only make claims you can back up with the data shown
89
115
 
90
- Generate exactly 3-5 insights. Each insight should:
91
- - Reveal a CONNECTION between entities the user might not have noticed
92
- - Be specific name the entities involved
93
- - Be actionable or thought-provoking
94
- - Feel like an "a-ha" moment
116
+ Generate 3-7 insights. Each insight should be:
117
+ - ACCURATE only state facts supported by the data provided. Never say "no X entities exist" unless the collection summaries confirm zero
118
+ - ACTIONABLEthe action must be something the AI agent can actually execute (see capabilities below)
119
+ - SPECIFIC name the entities involved
120
+ - IMPORTANT focus on things that need attention now
121
+ ${briefSection}
95
122
 
96
123
  Insight patterns to look for:
97
- - cluster: Multiple entities converge on the same topic/person/theme
98
- - trend: Activity increasing/decreasing over time
99
- - gap: Missing connections (e.g., project with meetings but no decisions)
100
- - relationship: A person/org appears across multiple contexts
101
- - recency: New entities that connect to existing ones
124
+ - risk: Overdue tasks, stalled projects, deadlines approaching without progress, deals aging without next steps
125
+ - relationship: Client engagement gaps, key people appearing across contexts, uncontacted stakeholders
126
+ - opportunity: Patterns across deals/projects, uncaptured practice areas, reusable knowledge
127
+ - quality: Isolated entities with no connections, missing data, entities that should be linked but aren't
128
+ - trend: Activity patterns, increasing/decreasing engagement, velocity changes
129
+
130
+ IMPORTANT — The "action" field will be sent to an AI assistant as a prompt. Think of yourself as a concierge offering to do things for the user. The action should be something you'd naturally say: "Shall I create a meeting entity for a check-in with Cooper Hewitt?" or "I can update the status of these overdue tasks — want me to?"
131
+
132
+ The assistant has access to ONLY these tools — no others:
133
+ ${tools.length > 0 ? tools.map(t => `- ${t.name}: ${t.description}`).join('\n') : '(core workspace tools only — create/update/search/delete entities, create views, lint, find orphans)'}
134
+
135
+ CRITICAL: Only suggest actions that use the tools listed above. If a connector (like Pipedrive, Linear, Slack, etc.) is NOT in the tool list, do NOT reference it in any action. Even if entities in the workspace mention an external system, only suggest actions the assistant can actually perform with its available tools. For example, if there is no pipedrive_connector tool, never suggest "Search Pipedrive" — instead suggest workspace-level actions like "Create a deal entity" or "Search for existing deal entities."
102
136
 
103
137
  Respond with valid JSON matching this schema:
104
138
  {
105
139
  "insights": [
106
140
  {
107
- "headline": "One-sentence insight (the a-ha)",
108
- "detail": "2-3 sentence explanation with specifics",
109
- "entities": [{"id": "entity-id", "type": "entity-type", "repo": "collection-name"}],
110
- "pattern": "cluster|trend|gap|relationship|recency"
141
+ "headline": "Short, punchy headline (under 12 words)",
142
+ "detail": "1-2 sentence explanation be concise, not exhaustive",
143
+ "urgency": "high|medium|low",
144
+ "actions": ["Imperative action 1", "Imperative action 2"],
145
+ "entities": [{"id": "entity-id", "type": "entity-type", "repo": "collection-name", "name": "display name"}],
146
+ "pattern": "risk|relationship|opportunity|quality|trend"
111
147
  }
112
148
  ]
113
- }`;
149
+ }
150
+
151
+ Each insight should have exactly 1 action — the single most impactful next step. The action is a short imperative sentence sent directly to the AI assistant as a prompt. Write as an instruction, not a question:
152
+ - Good: "Run a lint check on all Cooper Hewitt entities"
153
+ - Good: "Create a deal entity for the Existence next phase"
154
+ - Bad: "Shall I run a lint check?" (not imperative)
155
+ - Bad: "You should consider updating..." (not an instruction)`;
156
+ }
114
157
  /**
115
- * Generate insights from workspace entities.
158
+ * Generate insights from workspace entities, personalized by user brief.
116
159
  */
117
- export async function generateInsights(wm, workspacePath, repoNames, workspaceConfig) {
160
+ export async function generateInsights(wm, repoNames, userBrief, authService, userId, workspaceConfig, tools) {
118
161
  const { context, entityCount } = gatherEntityContext(wm, repoNames);
119
162
  if (entityCount === 0) {
120
- const empty = { insights: [], generated_at: new Date().toISOString(), entity_count: 0 };
121
- saveInsights(workspacePath, empty);
163
+ const empty = { insights: [], generatedAt: new Date().toISOString(), entityCount: 0 };
164
+ authService.setCachedInsights(userId, []);
122
165
  return empty;
123
166
  }
124
167
  const userConfig = loadUserConfig();
125
168
  const apiKey = resolveApiKey(userConfig, workspaceConfig);
126
169
  const provider = resolveProvider(userConfig, workspaceConfig);
127
170
  if (!apiKey || provider !== 'anthropic') {
128
- // For now, only support Anthropic
129
- const empty = { insights: [], generated_at: new Date().toISOString(), entity_count: entityCount };
130
- saveInsights(workspacePath, empty);
171
+ const empty = { insights: [], generatedAt: new Date().toISOString(), entityCount };
172
+ authService.setCachedInsights(userId, []);
131
173
  return empty;
132
174
  }
175
+ const modelId = resolveModelId(userConfig, workspaceConfig);
133
176
  const client = new Anthropic({ apiKey });
134
177
  const response = await client.messages.create({
135
- model: 'claude-sonnet-4-5-20250929',
136
- max_tokens: 2000,
137
- system: SYSTEM_PROMPT,
178
+ model: modelId,
179
+ max_tokens: 3000,
180
+ system: buildSystemPrompt(userBrief, tools ?? []),
138
181
  messages: [
139
182
  {
140
183
  role: 'user',
141
- content: `Here are the entities in my workspace:\n\n${context}\n\nGenerate insights about the connections and patterns you see.`,
184
+ content: `Here are the entities in my workspace (today is ${new Date().toISOString().split('T')[0]}):\n\n${context}\n\nGenerate actionable insights.`,
142
185
  },
143
186
  ],
144
187
  });
@@ -148,27 +191,28 @@ export async function generateInsights(wm, workspacePath, repoNames, workspaceCo
148
191
  .join('');
149
192
  let insights = [];
150
193
  try {
151
- // Extract JSON from response (may be wrapped in markdown code block)
152
194
  const jsonMatch = text.match(/\{[\s\S]*\}/);
153
195
  if (jsonMatch) {
154
196
  const parsed = JSON.parse(jsonMatch[0]);
155
197
  insights = (parsed.insights ?? []).map((i) => ({
156
198
  headline: i.headline ?? '',
157
199
  detail: i.detail ?? '',
200
+ urgency: (['high', 'medium', 'low'].includes(i.urgency) ? i.urgency : 'medium'),
201
+ actions: Array.isArray(i.actions) ? i.actions.filter((a) => typeof a === 'string') : (i.action ? [i.action] : []),
158
202
  entities: Array.isArray(i.entities) ? i.entities : [],
159
- pattern: i.pattern ?? 'cluster',
203
+ pattern: (['risk', 'relationship', 'opportunity', 'quality', 'trend'].includes(i.pattern) ? i.pattern : 'trend'),
160
204
  }));
161
205
  }
162
206
  }
163
207
  catch {
164
208
  console.error('[insights] Failed to parse LLM response:', text.slice(0, 200));
165
209
  }
166
- const data = {
210
+ // Cache per-user
211
+ authService.setCachedInsights(userId, insights);
212
+ return {
167
213
  insights,
168
- generated_at: new Date().toISOString(),
169
- entity_count: entityCount,
214
+ generatedAt: new Date().toISOString(),
215
+ entityCount,
170
216
  };
171
- saveInsights(workspacePath, data);
172
- return data;
173
217
  }
174
218
  //# sourceMappingURL=insights.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"insights.js","sourceRoot":"","sources":["../../src/services/insights.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACxE,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAiBxF,MAAM,aAAa,GAAG,eAAe,CAAC;AAEtC;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,aAAqB;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IACpE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,aAAqB,EAAE,IAAkB;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAChD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAClF,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,EAAoB,EACpB,SAAmB,EACnB,WAAW,GAAG,GAAG;IAEjB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5E,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC9B,IAAI,KAAK,IAAI,WAAW;oBAAE,MAAM;gBAChC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;gBACvB,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,IAAI,SAAS,CAAC;gBAC9D,MAAM,KAAK,GAAI,EAAE,CAAC,KAAgB,IAAK,EAAE,CAAC,IAAe,IAAI,MAAM,CAAC,EAAE,CAAC;gBACvE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;gBAC/C,8CAA8C;gBAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;gBAE/E,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC,CAAC;gBAC1D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjD,CAAC;gBACD,oCAAoC;gBACpC,MAAM,IAAI,GAAa,EAAE,CAAC;gBAC1B,IAAI,EAAE,CAAC,UAAU;oBAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC1D,IAAI,EAAE,CAAC,UAAU;oBAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC1D,IAAI,EAAE,CAAC,MAAM;oBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjD,IAAI,EAAE,CAAC,SAAS;oBAAE,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC1E,IAAI,EAAE,CAAC,MAAM;oBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjD,IAAI,EAAE,CAAC,OAAO;oBAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACzD,IAAI,OAAO;oBAAE,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;gBACjD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACf,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AAC3D,CAAC;AAED,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;EAyBpB,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAoB,EACpB,aAAqB,EACrB,SAAmB,EACnB,eAAiC;IAEjC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAEpE,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QACtG,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,cAAc,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAE9D,IAAI,CAAC,MAAM,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QACxC,kCAAkC;QAClC,MAAM,KAAK,GAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;QAChH,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5C,KAAK,EAAE,4BAA4B;QACnC,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,6CAA6C,OAAO,mEAAmE;aACjI;SACF;KACF,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO;SAC1B,MAAM,CAAC,CAAC,CAAC,EAA4B,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;SAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAChB,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,IAAI,QAAQ,GAAc,EAAE,CAAC;IAC7B,IAAI,CAAC;QACH,qEAAqE;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gBAClD,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE;gBAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;gBACtB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACrD,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,SAAS;aAChC,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,IAAI,GAAiB;QACzB,QAAQ;QACR,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACtC,YAAY,EAAE,WAAW;KAC1B,CAAC;IACF,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"insights.js","sourceRoot":"","sources":["../../src/services/insights.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ .home.svelte-h7bcrl{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto}.home-center.svelte-h7bcrl{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;margin:0 auto;color:var(--color-text-tertiary);padding:24px;box-sizing:border-box}.home-center.svelte-h7bcrl h2:where(.svelte-h7bcrl){font-size:17px;font-weight:500;color:var(--color-text-secondary)}.onboarding.svelte-h7bcrl{gap:20px;max-width:560px;width:100%;text-align:center}.onboarding.svelte-h7bcrl h2:where(.svelte-h7bcrl){font-size:22px;font-weight:600;color:var(--color-text-primary)}.onboarding-subtitle.svelte-h7bcrl{font-size:14px;color:var(--color-text-secondary);line-height:1.5}.suggestions.svelte-h7bcrl{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.suggestion-chip.svelte-h7bcrl{padding:8px 16px;border:1px solid var(--color-border);border-radius:9999px;background:transparent;color:var(--color-text-secondary);font-family:inherit;font-size:13px;cursor:pointer;transition:border-color .15s,color .15s}.suggestion-chip.svelte-h7bcrl:hover{border-color:var(--color-accent);color:var(--color-text-primary)}.custom-brief.svelte-h7bcrl{display:flex;gap:8px;width:100%;max-width:480px}.brief-input.svelte-h7bcrl{flex:1;height:36px;padding:0 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text-primary);font-family:inherit;font-size:14px;outline:none}.brief-input.svelte-h7bcrl:focus{border-color:var(--color-accent)}.brief-input.svelte-h7bcrl::placeholder{color:var(--color-text-tertiary)}.generating.svelte-h7bcrl{display:flex;align-items:center;gap:10px;color:var(--color-text-secondary);font-size:14px}.animate-spin{animation:svelte-h7bcrl-spin 1s linear infinite}@keyframes svelte-h7bcrl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.home-insights.svelte-h7bcrl{padding:24px;max-width:1080px;margin:0 auto;width:100%}.insights-header.svelte-h7bcrl{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.insights-title.svelte-h7bcrl{display:flex;align-items:baseline;gap:10px}.insights-title.svelte-h7bcrl h2:where(.svelte-h7bcrl){font-size:17px;font-weight:600;color:var(--color-text-primary)}.insights-meta.svelte-h7bcrl{font-size:12px;color:var(--color-text-tertiary)}.insights-actions.svelte-h7bcrl{display:flex;align-items:center;gap:8px}.edit-focus-link.svelte-h7bcrl{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-family:inherit;color:var(--color-text-tertiary);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:4px}.edit-focus-link.svelte-h7bcrl:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.insights-grid.svelte-h7bcrl{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,320px));gap:12px}.insight-card.svelte-h7bcrl{padding:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg)}.insight-top.svelte-h7bcrl{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.pattern-tag.svelte-h7bcrl{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.insight-headline.svelte-h7bcrl{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:6px;line-height:1.3}.insight-detail.svelte-h7bcrl{font-size:13px;color:var(--color-text-secondary);line-height:1.5;margin-bottom:8px}.action-btn.svelte-h7bcrl{display:flex;align-items:flex-start;padding:6px 8px;margin-bottom:8px;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-accent);background:transparent;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;text-align:left;line-height:1.3;transition:border-color .15s,background .15s}.action-btn.svelte-h7bcrl:hover{border-color:var(--color-accent)}.insight-entities.svelte-h7bcrl{display:flex;flex-wrap:wrap;gap:4px}.entity-chip.svelte-h7bcrl{padding:2px 8px;font-size:12px;font-family:inherit;color:var(--color-text-secondary);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:4px;cursor:pointer}.entity-chip.svelte-h7bcrl:hover{border-color:var(--color-accent);color:var(--color-text-primary)}.no-insights.svelte-h7bcrl{text-align:center;padding:40px;color:var(--color-text-tertiary);font-size:14px}
@@ -1 +1 @@
1
- .json-editor-wrap.svelte-1grruw9{width:100%;max-height:50vh;overflow-y:auto;border-radius:6px}.json-editor-wrap.svelte-1grruw9 .cm-editor{outline:none}.json-editor-wrap.svelte-1grruw9 .cm-scroller{overflow:visible!important}.settings-page.svelte-zymv0t{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.settings-header.svelte-zymv0t{height:40px;flex-shrink:0;border-bottom:1px solid var(--color-border)}.content-toolbar.svelte-zymv0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.content-count.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary)}.settings-content.svelte-zymv0t{flex:1;overflow-y:auto;padding:20px 40px 32px}.tab-header.svelte-zymv0t{margin-bottom:20px}.tab-title.svelte-zymv0t{font-size:17px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.tab-description.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);margin:0}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-item:last-child{border-bottom:none}.accordion-trigger{display:flex;align-items:center;gap:0;width:100%;padding:10px 4px;border:none;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.accordion-trigger:hover{background:var(--color-bg-hover);border-radius:6px}.accordion-chevron.svelte-zymv0t{display:flex;align-items:center;justify-content:center;width:16px;height:22px;margin-right:14px;color:var(--color-text-tertiary);flex-shrink:0;transition:transform .15s ease}[data-state=open]>.accordion-trigger .accordion-chevron,.accordion-trigger[data-state=open] .accordion-chevron{transform:rotate(90deg)}.accordion-label.svelte-zymv0t{font-size:14px;font-weight:500;color:var(--color-text-primary);flex:1}.accordion-count{margin-left:auto}.accordion-content{overflow:hidden;padding:0 0 8px 34px}.accordion-content[data-state=closed]{display:none}.section-header.svelte-zymv0t{display:flex;align-items:center;height:32px;gap:0;margin-top:8px}.section-label.svelte-zymv0t{font-size:12px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;flex:1}.member-row.svelte-zymv0t{display:grid;grid-template-columns:22px 1fr 2fr 80px;align-items:center;height:44px;gap:0 14px;font-size:14px}.member-name-cell.svelte-zymv0t{display:flex;align-items:baseline;gap:0;min-width:0}.member-name.svelte-zymv0t{font-size:15px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill-key{color:var(--color-text-tertiary)}.pill-val{color:var(--color-text-secondary)}.member-pills.svelte-zymv0t{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.member-email.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-list.svelte-zymv0t>.member-row:where(.svelte-zymv0t),.accordion-content .member-row.svelte-zymv0t{border-bottom:1px solid var(--color-border)}.member-list.svelte-zymv0t>.member-row:where(.svelte-zymv0t):last-child,.accordion-content .member-row.svelte-zymv0t:last-child{border-bottom:none}.member-actions.svelte-zymv0t{display:flex;justify-content:flex-end;gap:4px}.icon-danger:hover{color:var(--color-error, #e55)!important}.confirm-row.svelte-zymv0t{display:flex;grid-column:1 / -1;background:#e5555514;border-radius:6px;padding:0 10px 0 12px}.confirm-text.svelte-zymv0t{flex:1;font-size:14px;color:var(--color-text-primary)}.dialog-fields.svelte-zymv0t{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.dialog-field.svelte-zymv0t{display:flex;flex-direction:column;gap:4px}.checkbox-list.svelte-zymv0t{display:flex;flex-direction:column;gap:2px}.checkbox-item.svelte-zymv0t{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:14px;color:var(--color-text-primary);cursor:pointer}.checkbox-item.svelte-zymv0t:hover{background:var(--color-bg-hover)}.modal-member-list.svelte-zymv0t{display:flex;flex-direction:column;gap:2px;margin:8px 0;max-height:300px;overflow-y:auto}.modal-member-row.svelte-zymv0t{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;cursor:pointer}.modal-member-row.svelte-zymv0t:hover{background:var(--color-bg-hover)}.modal-member-info.svelte-zymv0t{display:flex;flex-direction:column;min-width:0}.connector-list.svelte-zymv0t{display:flex;flex-direction:column}.connector-row.svelte-zymv0t{display:flex;align-items:center;gap:14px;height:44px;border-bottom:1px solid var(--color-border);font-size:14px}.connector-row.svelte-zymv0t:last-child{border-bottom:none}.connector-section-label.svelte-zymv0t{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-top:20px;margin-bottom:4px}.connector-description{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px}.connector-row-actions.svelte-zymv0t{display:flex;align-items:center;gap:2px;margin-left:auto}.connector-action{margin-left:auto!important;font-size:13px!important;gap:4px!important}.connector-action.connected{color:var(--color-success, #4ade80)!important}.setup-instructions.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.setup-instructions.svelte-zymv0t p:where(.svelte-zymv0t){margin:0;font-size:14px;line-height:22px;color:var(--color-text-secondary)}.setup-instructions.svelte-zymv0t a:where(.svelte-zymv0t){color:var(--color-accent)}.setup-steps.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.setup-step.svelte-zymv0t{display:flex;gap:12px}.step-number.svelte-zymv0t{width:24px;height:24px;border-radius:50%;background:var(--color-bg-surface);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.env-var.svelte-zymv0t{display:block;margin-top:8px;padding:8px 12px;background:var(--color-bg-surface);border-radius:6px;font-family:var(--font-mono);font-size:13px;color:var(--color-accent)}.connector-row-actions.svelte-zymv0t .connector-action{margin-left:0!important}.connector-hint{font-size:13px;color:var(--color-text-tertiary);margin:0}.connector-form{display:flex;flex-direction:column;gap:16px;margin-top:16px}.connector-field{display:flex;flex-direction:column;gap:6px}.connector-field-hint{font-size:13px;color:var(--color-text-tertiary);margin-top:2px}.connector-docs-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--color-text-tertiary);text-decoration:none}.connector-docs-link:hover{color:var(--color-text-secondary)}.status-msg.svelte-zymv0t{font-size:14px;color:var(--color-error, #e55);padding:0;background:none}.loading-text.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);padding:20px 0;text-align:center}.spinning{animation:svelte-zymv0t-spin 1s linear infinite}@keyframes svelte-zymv0t-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.about-section.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.ws-field.svelte-zymv0t{display:flex;flex-direction:column;gap:6px}.about-actions.svelte-zymv0t{display:flex;justify-content:flex-end;gap:8px}.accent-palette.svelte-zymv0t{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.accent-palette.saving.svelte-zymv0t{opacity:.5;pointer-events:none}.accent-swatch.svelte-zymv0t{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .15s}.accent-swatch.svelte-zymv0t:hover{transform:scale(1.15)}.accent-swatch.active.svelte-zymv0t{border-color:var(--color-text-primary)}.mcp-section.svelte-zymv0t{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.mcp-header.svelte-zymv0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.mcp-actions.svelte-zymv0t{display:flex;gap:4px}.mcp-hint.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);margin:0 0 8px}.mcp-config-textarea{font-family:var(--font-mono, ui-monospace, monospace)!important;font-size:13px!important}
1
+ .json-editor-wrap.svelte-1grruw9{width:100%;max-height:50vh;overflow-y:auto;border-radius:6px}.json-editor-wrap.svelte-1grruw9 .cm-editor{outline:none}.json-editor-wrap.svelte-1grruw9 .cm-scroller{overflow:visible!important}.settings-page.svelte-zymv0t{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.settings-header.svelte-zymv0t{height:40px;flex-shrink:0;border-bottom:1px solid var(--color-border)}.content-toolbar.svelte-zymv0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.content-count.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary)}.settings-content.svelte-zymv0t{flex:1;overflow-y:auto;padding:20px 40px 32px}.tab-header.svelte-zymv0t{margin-bottom:20px}.tab-title.svelte-zymv0t{font-size:17px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.tab-description.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);margin:0}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-item:last-child{border-bottom:none}.accordion-trigger{display:flex;align-items:center;gap:0;width:100%;padding:10px 4px;border:none;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.accordion-trigger:hover{background:var(--color-bg-hover);border-radius:6px}.accordion-chevron.svelte-zymv0t{display:flex;align-items:center;justify-content:center;width:16px;height:22px;margin-right:14px;color:var(--color-text-tertiary);flex-shrink:0;transition:transform .15s ease}[data-state=open]>.accordion-trigger .accordion-chevron,.accordion-trigger[data-state=open] .accordion-chevron{transform:rotate(90deg)}.accordion-label.svelte-zymv0t{font-size:14px;font-weight:500;color:var(--color-text-primary);flex:1}.accordion-count{margin-left:auto}.accordion-content{overflow:hidden;padding:0 0 8px 34px}.accordion-content[data-state=closed]{display:none}.section-header.svelte-zymv0t{display:flex;align-items:center;height:32px;gap:0;margin-top:8px}.section-label.svelte-zymv0t{font-size:12px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;flex:1}.member-row.svelte-zymv0t{display:grid;grid-template-columns:22px 1fr 2fr 80px;align-items:center;height:44px;gap:0 14px;font-size:14px}.member-name-cell.svelte-zymv0t{display:flex;align-items:baseline;gap:0;min-width:0}.member-name.svelte-zymv0t{font-size:15px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill-key{color:var(--color-text-tertiary)}.pill-val{color:var(--color-text-secondary)}.member-pills.svelte-zymv0t{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.member-email.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-list.svelte-zymv0t>.member-row:where(.svelte-zymv0t),.accordion-content .member-row.svelte-zymv0t{border-bottom:1px solid var(--color-border)}.member-list.svelte-zymv0t>.member-row:where(.svelte-zymv0t):last-child,.accordion-content .member-row.svelte-zymv0t:last-child{border-bottom:none}.member-actions.svelte-zymv0t{display:flex;justify-content:flex-end;gap:4px}.icon-danger:hover{color:var(--color-error, #e55)!important}.confirm-row.svelte-zymv0t{display:flex;grid-column:1 / -1;background:#e5555514;border-radius:6px;padding:0 10px 0 12px}.confirm-text.svelte-zymv0t{flex:1;font-size:14px;color:var(--color-text-primary)}.dialog-fields.svelte-zymv0t{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.dialog-field.svelte-zymv0t{display:flex;flex-direction:column;gap:4px}.checkbox-list.svelte-zymv0t{display:flex;flex-direction:column;gap:2px}.checkbox-item.svelte-zymv0t{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:14px;color:var(--color-text-primary);cursor:pointer}.checkbox-item.svelte-zymv0t:hover{background:var(--color-bg-hover)}.modal-member-list.svelte-zymv0t{display:flex;flex-direction:column;gap:2px;margin:8px 0;max-height:300px;overflow-y:auto}.modal-member-row.svelte-zymv0t{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;cursor:pointer}.modal-member-row.svelte-zymv0t:hover{background:var(--color-bg-hover)}.modal-member-info.svelte-zymv0t{display:flex;flex-direction:column;min-width:0}.connector-list.svelte-zymv0t{display:flex;flex-direction:column}.connector-row.svelte-zymv0t{display:flex;align-items:center;gap:14px;height:44px;border-bottom:1px solid var(--color-border);font-size:14px}.connector-row.svelte-zymv0t:last-child{border-bottom:none}.connector-section-label.svelte-zymv0t{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-top:20px;margin-bottom:4px}.connector-description{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px}.connector-row-actions.svelte-zymv0t{display:flex;align-items:center;gap:2px;margin-left:auto}.connector-action{margin-left:auto!important;font-size:13px!important;gap:4px!important}.connector-action.connected{color:var(--color-success, #4ade80)!important}.setup-instructions.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.setup-instructions.svelte-zymv0t p:where(.svelte-zymv0t){margin:0;font-size:14px;line-height:22px;color:var(--color-text-secondary)}.setup-instructions.svelte-zymv0t a:where(.svelte-zymv0t){color:var(--color-accent)}.setup-steps.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.setup-step.svelte-zymv0t{display:flex;gap:12px}.step-number.svelte-zymv0t{width:24px;height:24px;border-radius:50%;background:var(--color-bg-surface);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.env-var.svelte-zymv0t{display:block;margin-top:8px;padding:8px 12px;background:var(--color-bg-surface);border-radius:6px;font-family:var(--font-mono);font-size:13px;color:var(--color-accent)}.connector-row-actions.svelte-zymv0t .connector-action{margin-left:0!important}.connector-hint{font-size:13px;color:var(--color-text-tertiary);margin:0}.connector-form{display:flex;flex-direction:column;gap:16px;margin-top:16px}.connector-field{display:flex;flex-direction:column;gap:6px}.connector-field-hint{font-size:13px;color:var(--color-text-tertiary);margin-top:2px}.connector-docs-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--color-text-tertiary);text-decoration:none}.connector-docs-link:hover{color:var(--color-text-secondary)}.status-msg.svelte-zymv0t{font-size:14px;color:var(--color-error, #e55);padding:0;background:none}.loading-text.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);padding:20px 0;text-align:center}.spinning{animation:svelte-zymv0t-spin 1s linear infinite}@keyframes svelte-zymv0t-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.about-section.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.ws-field.svelte-zymv0t{display:flex;flex-direction:column;gap:6px}.field-help.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary);line-height:1.4}.about-actions.svelte-zymv0t{display:flex;justify-content:flex-end;gap:8px}.accent-palette.svelte-zymv0t{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.accent-palette.saving.svelte-zymv0t{opacity:.5;pointer-events:none}.accent-swatch.svelte-zymv0t{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .15s}.accent-swatch.svelte-zymv0t:hover{transform:scale(1.15)}.accent-swatch.active.svelte-zymv0t{border-color:var(--color-text-primary)}.prefs-sections.svelte-zymv0t{display:flex;flex-direction:column;gap:32px}.prefs-block.svelte-zymv0t{display:flex;flex-direction:column;gap:8px}.section-heading.svelte-zymv0t{font-size:14px;font-weight:600;color:var(--color-text-primary)}.mcp-header.svelte-zymv0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.mcp-actions.svelte-zymv0t{display:flex;gap:4px}.mcp-hint.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);margin:0 0 8px}.mcp-config-textarea{font-family:var(--font-mono, ui-monospace, monospace)!important;font-size:13px!important}
@@ -1 +1 @@
1
- import{a as n,b as c}from"./CajNsaOw.js";import{b as d,c as p}from"./9QAsBMIK.js";import{p as u,b as f}from"./CfuRx7rA.js";import{a as m}from"./BA_Wro7X.js";import{b}from"./Cwkp_c4R.js";import{p as a,r as v}from"./RGHlrGBn.js";var x=c("<input/>");function P(l,r){u(r,!0);let e=a(r,"ref",15,null),s=a(r,"value",15),i=v(r,["$$slots","$$events","$$legacy","class","ref","value"]);var o=x();m(o,t=>({class:t,...i}),[()=>p("h-8 w-full rounded-md border border-[var(--color-border)] bg-[var(--color-bg)] px-2.5 text-[14px] text-[var(--color-text-primary)] font-[inherit] outline-none transition-colors placeholder:text-[var(--color-text-tertiary)] focus:border-[var(--color-accent,#e05050)] disabled:cursor-not-allowed disabled:opacity-50",r.class)],void 0,void 0,void 0,!0),b(o,t=>e(t),()=>e()),d(o,s),n(l,o),f()}export{P as I};
1
+ import{a as n,b as c}from"./b0XUoOIH.js";import{b as d,c as p}from"./DQ5NTKSo.js";import{p as u,b as f}from"./DSh-OF2y.js";import{a as m}from"./CRnhIQbv.js";import{b}from"./DT3KtxWU.js";import{p as a,r as v}from"./D-yNNNdf.js";var x=c("<input/>");function P(l,r){u(r,!0);let e=a(r,"ref",15,null),s=a(r,"value",15),i=v(r,["$$slots","$$events","$$legacy","class","ref","value"]);var o=x();m(o,t=>({class:t,...i}),[()=>p("h-8 w-full rounded-md border border-[var(--color-border)] bg-[var(--color-bg)] px-2.5 text-[14px] text-[var(--color-text-primary)] font-[inherit] outline-none transition-colors placeholder:text-[var(--color-text-tertiary)] focus:border-[var(--color-accent,#e05050)] disabled:cursor-not-allowed disabled:opacity-50",r.class)],void 0,void 0,void 0,!0),b(o,t=>e(t),()=>e()),d(o,s),n(l,o),f()}export{P as I};
@@ -0,0 +1 @@
1
+ import{s as A}from"./C0v9FrTH.js";import{a as f,s as M,f as x}from"./b0XUoOIH.js";import{i as k}from"./vZ2iBqLE.js";import{p as B,l as u,s as b,d as p,g as o,a as C,c as g,n as N,r as m,b as P,m as _,t as R}from"./DSh-OF2y.js";import{i as S}from"./DT3KtxWU.js";import{a as Y}from"./CRnhIQbv.js";import{l as v,p as h}from"./D-yNNNdf.js";const j=()=>{const e=A;return{page:{subscribe:e.page.subscribe},navigating:{subscribe:e.navigating.subscribe},updated:e.updated}},L={subscribe(e){return j().page.subscribe(e)}};var q=x("<title> </title>"),D=x('<svg><!><path d="M17 15 17 8 15 8 15 15 8 15 8 17 15 17 15 24 17 24 17 17 24 17 24 15z"></path></svg>');function O(e,s){const t=v(s,["children","$$slots","$$events","$$legacy"]),w=v(t,["size","title"]);B(s,!1);const a=_(),c=_();let d=h(s,"size",8,16),r=h(s,"title",8,void 0);u(()=>(p(t),p(r())),()=>{b(a,t["aria-label"]||t["aria-labelledby"]||r())}),u(()=>(o(a),p(t)),()=>{b(c,{"aria-hidden":o(a)?void 0:!0,role:o(a)?"img":void 0,focusable:Number(t.tabindex)===0?!0:void 0})}),C(),k();var i=D();Y(i,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:d(),height:d(),...o(c),...w}));var y=g(i);{var z=n=>{var l=q(),$=g(l,!0);m(l),R(()=>M($,r())),f(n,l)};S(y,n=>{r()&&n(z)})}N(),m(i),f(e,i),P()}export{O as A,L as p};
@@ -1 +1 @@
1
- import{w as f,h as u,_,$ as o,i as t,C as g,Z as i,u as l,q as d,v as p,y as v}from"./CfuRx7rA.js";function C(n,r){let s=null,y=t;var a;if(t){s=p;for(var e=v(document.head);e!==null&&(e.nodeType!==g||e.data!==n);)e=i(e);if(e===null)l(!1);else{var E=i(e);e.remove(),d(E)}}t||(a=document.head.appendChild(f()));try{u(()=>r(a),_|o)}finally{y&&(l(!0),d(s))}}export{C as h};
1
+ import{w as f,h as u,_,$ as o,i as t,C as g,Z as i,u as l,q as d,v as p,y as v}from"./DSh-OF2y.js";function C(n,r){let s=null,y=t;var a;if(t){s=p;for(var e=v(document.head);e!==null&&(e.nodeType!==g||e.data!==n);)e=i(e);if(e===null)l(!1);else{var E=i(e);e.remove(),d(E)}}t||(a=document.head.appendChild(f()));try{u(()=>r(a),_|o)}finally{y&&(l(!0),d(s))}}export{C as h};
@@ -1 +1 @@
1
- import{O as B,f as F,g as A,e as V,w as S,a as J,t as v,c as D,r as L,b as _,d as N,h as E,i as P,j as G,k as O,l as q,D as R,m as z}from"./CLFba8FK.js";import{r as M}from"./D18-Aspv.js";const b=3e4;class K extends B{constructor(n){super(),this.doc=n,this.clientID=n.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const e=A();this.getLocalState()!==null&&b/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const s=[];this.meta.forEach((a,c)=>{c!==this.clientID&&b<=e-a.lastUpdated&&this.states.has(c)&&s.push(c)}),s.length>0&&x(this,s,"timeout")},F(b/10)),n.on("destroy",()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit("destroy",[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(n){const e=this.clientID,s=this.meta.get(e),a=s===void 0?0:s.clock+1,c=this.states.get(e);n===null?this.states.delete(e):this.states.set(e,n),this.meta.set(e,{clock:a,lastUpdated:A()});const l=[],u=[],r=[],p=[];n===null?p.push(e):c==null?n!=null&&l.push(e):(u.push(e),V(c,n)||r.push(e)),(l.length>0||r.length>0||p.length>0)&&this.emit("change",[{added:l,updated:r,removed:p},"local"]),this.emit("update",[{added:l,updated:u,removed:p},"local"])}setLocalStateField(n,e){const s=this.getLocalState();s!==null&&this.setLocalState({...s,[n]:e})}getStates(){return this.states}}const x=(t,n,e)=>{const s=[];for(let a=0;a<n.length;a++){const c=n[a];if(t.states.has(c)){if(t.states.delete(c),c===t.clientID){const l=t.meta.get(c);t.meta.set(c,{clock:l.clock+1,lastUpdated:A()})}s.push(c)}}s.length>0&&(t.emit("change",[{added:[],updated:[],removed:s},e]),t.emit("update",[{added:[],updated:[],removed:s},e]))},Q=(t,n,e=t.states)=>{const s=n.length,a=D();S(a,s);for(let c=0;c<s;c++){const l=n[c],u=e.get(l)||null,r=t.meta.get(l).clock;S(a,l),S(a,r),J(a,JSON.stringify(u))}return v(a)},X=(t,n,e)=>{const s=N(n),a=A(),c=[],l=[],u=[],r=[],p=L(s);for(let m=0;m<p;m++){const d=L(s);let g=L(s);const h=JSON.parse(_(s)),y=t.meta.get(d),k=t.states.get(d),o=y===void 0?0:y.clock;(o<g||o===g&&h===null&&t.states.has(d))&&(h===null?d===t.clientID&&t.getLocalState()!=null?g++:t.states.delete(d):t.states.set(d,h),t.meta.set(d,{clock:g,lastUpdated:a}),y===void 0&&h!==null?c.push(d):y!==void 0&&h===null?r.push(d):h!==null&&(V(h,k)||u.push(d),l.push(d)))}(c.length>0||u.length>0||r.length>0)&&t.emit("change",[{added:c,updated:u,removed:r},e]),(c.length>0||l.length>0||r.length>0)&&t.emit("update",[{added:c,updated:l,removed:r},e])},W=0,j=1,C=2,Z=(t,n)=>{S(t,W);const e=P(n);E(t,e)},$=(t,n,e)=>{S(t,j),E(t,q(n,e))},H=(t,n,e)=>$(n,e,O(t)),Y=(t,n,e,s)=>{try{G(n,O(t),e)}catch(a){s?.(a),console.error("Caught error while handling a Yjs update",a)}},tt=(t,n)=>{S(t,C),E(t,n)},et=Y,nt=(t,n,e,s,a)=>{const c=L(t);switch(c){case W:H(t,n,e);break;case j:Y(t,e,s,a);break;case C:et(t,e,s,a);break;default:throw new Error("Unknown message type")}return c},U=0,T=1;function st(t,n,e){const s=new TextEncoder().encode(t),a=new ArrayBuffer(2+s.length+1+e.length);return new DataView(a).setUint16(0,s.length),new Uint8Array(a,2,s.length).set(s),new Uint8Array(a)[2+s.length]=n,new Uint8Array(a,2+s.length+1).set(e),a}function at(t){if(t.byteLength<3)return null;const e=new DataView(t).getUint16(0);if(t.byteLength<2+e+1)return null;const s=new TextDecoder().decode(new Uint8Array(t,2,e)),a=new Uint8Array(t)[2+e],c=new Uint8Array(t,2+e+1);return{docName:s,msgType:a,payload:c}}function lt(t,n){const e=new R,s=e.getText("content"),a=new K(e);a.setLocalStateField("user",{name:n.name,color:n.color,colorLight:n.colorLight??n.color+"33"});let c=null,l=!1;function u(){return M.ws??null}function r(o,f){const i=u();!i||i.readyState!==WebSocket.OPEN||i.send(st(t,o,f))}function p(){const o=D();Z(o,e),r(U,v(o))}function m(o){const f=o??[e.clientID],i=Q(a,f);r(T,i)}function d(o){if(l||typeof o.data=="string")return;const f=o.data instanceof ArrayBuffer?o.data:null;if(!f)return;const i=at(f);if(!(!i||i.docName!==t))if(i.msgType===U){const I=N(i.payload),w=D();nt(I,w,e,"ws-server"),z(w)>0&&r(U,v(w))}else i.msgType===T&&X(a,i.payload,"ws-server")}function g(o,f){if(l||f==="ws-server")return;const i=D();tt(i,o),r(U,v(i))}function h({added:o,updated:f,removed:i},I){if(l||I==="ws-server")return;const w=o.concat(f,i);m(w)}function y(){if(l)return;const o=u();!o||o.readyState!==WebSocket.OPEN||(o.send(JSON.stringify({type:"collab:join",docName:t})),c&&o.removeEventListener("message",c),c=d,o.addEventListener("message",c),p(),m())}e.on("update",g),a.on("update",h),y(),M.addConnectHandler(y);function k(){if(l)return;l=!0,x(a,[e.clientID],"local"),m([e.clientID]);const o=u();o&&o.readyState===WebSocket.OPEN&&o.send(JSON.stringify({type:"collab:leave",docName:t})),c&&o&&(o.removeEventListener("message",c),c=null),e.off("update",g),a.off("update",h),a.destroy(),e.destroy()}return{ydoc:e,ytext:s,awareness:a,destroy:k}}export{lt as createCollabSession};
1
+ import{O as B,f as F,g as A,e as V,w as S,a as J,t as v,c as D,r as L,b as _,d as N,h as E,i as P,j as G,k as O,l as q,D as R,m as z}from"./CLFba8FK.js";import{r as M}from"./BfEy5AjR.js";const b=3e4;class K extends B{constructor(n){super(),this.doc=n,this.clientID=n.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const e=A();this.getLocalState()!==null&&b/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const s=[];this.meta.forEach((a,c)=>{c!==this.clientID&&b<=e-a.lastUpdated&&this.states.has(c)&&s.push(c)}),s.length>0&&x(this,s,"timeout")},F(b/10)),n.on("destroy",()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit("destroy",[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(n){const e=this.clientID,s=this.meta.get(e),a=s===void 0?0:s.clock+1,c=this.states.get(e);n===null?this.states.delete(e):this.states.set(e,n),this.meta.set(e,{clock:a,lastUpdated:A()});const l=[],u=[],r=[],p=[];n===null?p.push(e):c==null?n!=null&&l.push(e):(u.push(e),V(c,n)||r.push(e)),(l.length>0||r.length>0||p.length>0)&&this.emit("change",[{added:l,updated:r,removed:p},"local"]),this.emit("update",[{added:l,updated:u,removed:p},"local"])}setLocalStateField(n,e){const s=this.getLocalState();s!==null&&this.setLocalState({...s,[n]:e})}getStates(){return this.states}}const x=(t,n,e)=>{const s=[];for(let a=0;a<n.length;a++){const c=n[a];if(t.states.has(c)){if(t.states.delete(c),c===t.clientID){const l=t.meta.get(c);t.meta.set(c,{clock:l.clock+1,lastUpdated:A()})}s.push(c)}}s.length>0&&(t.emit("change",[{added:[],updated:[],removed:s},e]),t.emit("update",[{added:[],updated:[],removed:s},e]))},Q=(t,n,e=t.states)=>{const s=n.length,a=D();S(a,s);for(let c=0;c<s;c++){const l=n[c],u=e.get(l)||null,r=t.meta.get(l).clock;S(a,l),S(a,r),J(a,JSON.stringify(u))}return v(a)},X=(t,n,e)=>{const s=N(n),a=A(),c=[],l=[],u=[],r=[],p=L(s);for(let m=0;m<p;m++){const d=L(s);let g=L(s);const h=JSON.parse(_(s)),y=t.meta.get(d),k=t.states.get(d),o=y===void 0?0:y.clock;(o<g||o===g&&h===null&&t.states.has(d))&&(h===null?d===t.clientID&&t.getLocalState()!=null?g++:t.states.delete(d):t.states.set(d,h),t.meta.set(d,{clock:g,lastUpdated:a}),y===void 0&&h!==null?c.push(d):y!==void 0&&h===null?r.push(d):h!==null&&(V(h,k)||u.push(d),l.push(d)))}(c.length>0||u.length>0||r.length>0)&&t.emit("change",[{added:c,updated:u,removed:r},e]),(c.length>0||l.length>0||r.length>0)&&t.emit("update",[{added:c,updated:l,removed:r},e])},W=0,j=1,C=2,Z=(t,n)=>{S(t,W);const e=P(n);E(t,e)},$=(t,n,e)=>{S(t,j),E(t,q(n,e))},H=(t,n,e)=>$(n,e,O(t)),Y=(t,n,e,s)=>{try{G(n,O(t),e)}catch(a){s?.(a),console.error("Caught error while handling a Yjs update",a)}},tt=(t,n)=>{S(t,C),E(t,n)},et=Y,nt=(t,n,e,s,a)=>{const c=L(t);switch(c){case W:H(t,n,e);break;case j:Y(t,e,s,a);break;case C:et(t,e,s,a);break;default:throw new Error("Unknown message type")}return c},U=0,T=1;function st(t,n,e){const s=new TextEncoder().encode(t),a=new ArrayBuffer(2+s.length+1+e.length);return new DataView(a).setUint16(0,s.length),new Uint8Array(a,2,s.length).set(s),new Uint8Array(a)[2+s.length]=n,new Uint8Array(a,2+s.length+1).set(e),a}function at(t){if(t.byteLength<3)return null;const e=new DataView(t).getUint16(0);if(t.byteLength<2+e+1)return null;const s=new TextDecoder().decode(new Uint8Array(t,2,e)),a=new Uint8Array(t)[2+e],c=new Uint8Array(t,2+e+1);return{docName:s,msgType:a,payload:c}}function lt(t,n){const e=new R,s=e.getText("content"),a=new K(e);a.setLocalStateField("user",{name:n.name,color:n.color,colorLight:n.colorLight??n.color+"33"});let c=null,l=!1;function u(){return M.ws??null}function r(o,f){const i=u();!i||i.readyState!==WebSocket.OPEN||i.send(st(t,o,f))}function p(){const o=D();Z(o,e),r(U,v(o))}function m(o){const f=o??[e.clientID],i=Q(a,f);r(T,i)}function d(o){if(l||typeof o.data=="string")return;const f=o.data instanceof ArrayBuffer?o.data:null;if(!f)return;const i=at(f);if(!(!i||i.docName!==t))if(i.msgType===U){const I=N(i.payload),w=D();nt(I,w,e,"ws-server"),z(w)>0&&r(U,v(w))}else i.msgType===T&&X(a,i.payload,"ws-server")}function g(o,f){if(l||f==="ws-server")return;const i=D();tt(i,o),r(U,v(i))}function h({added:o,updated:f,removed:i},I){if(l||I==="ws-server")return;const w=o.concat(f,i);m(w)}function y(){if(l)return;const o=u();!o||o.readyState!==WebSocket.OPEN||(o.send(JSON.stringify({type:"collab:join",docName:t})),c&&o.removeEventListener("message",c),c=d,o.addEventListener("message",c),p(),m())}e.on("update",g),a.on("update",h),y(),M.addConnectHandler(y);function k(){if(l)return;l=!0,x(a,[e.clientID],"local"),m([e.clientID]);const o=u();o&&o.readyState===WebSocket.OPEN&&o.send(JSON.stringify({type:"collab:leave",docName:t})),c&&o&&(o.removeEventListener("message",c),c=null),e.off("update",g),a.off("update",h),a.destroy(),e.destroy()}return{ydoc:e,ytext:s,awareness:a,destroy:k}}export{lt as createCollabSession};
@@ -1 +1 @@
1
- import{c as m,a,f as l}from"./CajNsaOw.js";import{a0 as w}from"./CfuRx7rA.js";import{i as n}from"./Cwkp_c4R.js";import{p as d}from"./RGHlrGBn.js";import{L as b,T as k}from"./DYVSnKKh.js";import{t as y}from"./D18-Aspv.js";import{u as S}from"./D18-Aspv.js";var u=l('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" height="20" width="20"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg>'),x=l('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" height="20" width="20"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path></svg>'),_=l('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" height="20" width="20"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z" clip-rule="evenodd"></path></svg>'),z=l('<svg viewBox="0 0 64 64" fill="currentColor" height="20" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M32.427,7.987c2.183,0.124 4,1.165 5.096,3.281l17.936,36.208c1.739,3.66 -0.954,8.585 -5.373,8.656l-36.119,0c-4.022,-0.064 -7.322,-4.631 -5.352,-8.696l18.271,-36.207c0.342,-0.65 0.498,-0.838 0.793,-1.179c1.186,-1.375 2.483,-2.111 4.748,-2.063Zm-0.295,3.997c-0.687,0.034 -1.316,0.419 -1.659,1.017c-6.312,11.979 -12.397,24.081 -18.301,36.267c-0.546,1.225 0.391,2.797 1.762,2.863c12.06,0.195 24.125,0.195 36.185,0c1.325,-0.064 2.321,-1.584 1.769,-2.85c-5.793,-12.184 -11.765,-24.286 -17.966,-36.267c-0.366,-0.651 -0.903,-1.042 -1.79,-1.03Z"></path><path d="M33.631,40.581l-3.348,0l-0.368,-16.449l4.1,0l-0.384,16.449Zm-3.828,5.03c0,-0.609 0.197,-1.113 0.592,-1.514c0.396,-0.4 0.935,-0.601 1.618,-0.601c0.684,0 1.223,0.201 1.618,0.601c0.395,0.401 0.593,0.905 0.593,1.514c0,0.587 -0.193,1.078 -0.577,1.473c-0.385,0.395 -0.929,0.593 -1.634,0.593c-0.705,0 -1.249,-0.198 -1.634,-0.593c-0.384,-0.395 -0.576,-0.886 -0.576,-1.473Z"></path></svg>');function H(s,v){const t=d(v,"type",3,"success");var e=m(),c=w(e);{var i=o=>{var r=u();a(o,r)},p=o=>{var r=x();a(o,r)},h=o=>{var r=_();a(o,r)},g=o=>{var r=z();a(o,r)},f=o=>{};n(c,o=>{t()==="success"?o(i):t()==="error"?o(p,1):t()==="info"?o(h,2):t()==="warning"?o(g,3):o(f,!1)})}a(s,e)}export{H as Icon,b as Loader,k as Toaster,y as toast,S as useSonner};
1
+ import{c as m,a,f as l}from"./b0XUoOIH.js";import{a0 as w}from"./DSh-OF2y.js";import{i as n}from"./DT3KtxWU.js";import{p as d}from"./D-yNNNdf.js";import{L as b,T as k}from"./BYKARDRw.js";import{t as y}from"./BfEy5AjR.js";import{u as S}from"./BfEy5AjR.js";var u=l('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" height="20" width="20"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg>'),x=l('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" height="20" width="20"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path></svg>'),_=l('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" height="20" width="20"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z" clip-rule="evenodd"></path></svg>'),z=l('<svg viewBox="0 0 64 64" fill="currentColor" height="20" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M32.427,7.987c2.183,0.124 4,1.165 5.096,3.281l17.936,36.208c1.739,3.66 -0.954,8.585 -5.373,8.656l-36.119,0c-4.022,-0.064 -7.322,-4.631 -5.352,-8.696l18.271,-36.207c0.342,-0.65 0.498,-0.838 0.793,-1.179c1.186,-1.375 2.483,-2.111 4.748,-2.063Zm-0.295,3.997c-0.687,0.034 -1.316,0.419 -1.659,1.017c-6.312,11.979 -12.397,24.081 -18.301,36.267c-0.546,1.225 0.391,2.797 1.762,2.863c12.06,0.195 24.125,0.195 36.185,0c1.325,-0.064 2.321,-1.584 1.769,-2.85c-5.793,-12.184 -11.765,-24.286 -17.966,-36.267c-0.366,-0.651 -0.903,-1.042 -1.79,-1.03Z"></path><path d="M33.631,40.581l-3.348,0l-0.368,-16.449l4.1,0l-0.384,16.449Zm-3.828,5.03c0,-0.609 0.197,-1.113 0.592,-1.514c0.396,-0.4 0.935,-0.601 1.618,-0.601c0.684,0 1.223,0.201 1.618,0.601c0.395,0.401 0.593,0.905 0.593,1.514c0,0.587 -0.193,1.078 -0.577,1.473c-0.385,0.395 -0.929,0.593 -1.634,0.593c-0.705,0 -1.249,-0.198 -1.634,-0.593c-0.384,-0.395 -0.576,-0.886 -0.576,-1.473Z"></path></svg>');function H(s,v){const t=d(v,"type",3,"success");var e=m(),c=w(e);{var i=o=>{var r=u();a(o,r)},p=o=>{var r=x();a(o,r)},h=o=>{var r=_();a(o,r)},g=o=>{var r=z();a(o,r)},f=o=>{};n(c,o=>{t()==="success"?o(i):t()==="error"?o(p,1):t()==="info"?o(h,2):t()==="warning"?o(g,3):o(f,!1)})}a(s,e)}export{H as Icon,b as Loader,k as Toaster,y as toast,S as useSonner};
@@ -1 +1 @@
1
- import{a as S}from"./DEyrdHQB.js";import{c as _,a as h,p as Q,b as D}from"./CajNsaOw.js";import{ac as y,g as s,s as P,e as R,p as C,a0 as m,b as O,ae as z,c as M,r as K,a1 as at}from"./CfuRx7rA.js";import{c as J}from"./BtJ5VKKi.js";import{p as l,r as A,s as k}from"./RGHlrGBn.js";import{s as I,a as j}from"./BA_Wro7X.js";import{C as kt,s as q,L as nt,w as it,v as _t,E as Pt,A as mt,b,N as Rt,x as xt,B as Dt,n as G,c as X,m as x,H as Et,O as Ut,I as Bt,J as Ft,T as Tt,K as yt,p as zt}from"./CNVuHNwC.js";import{c as H,a as bt}from"./9QAsBMIK.js";import{i as F,b as Ct}from"./Cwkp_c4R.js";const Mt=Dt({component:"dialog",parts:["content","trigger","overlay","title","description","close","cancel","action"]}),T=new kt("Dialog.Root | AlertDialog.Root");class lt{static create(t){const e=T.getOr(null);return T.set(new lt(t,e))}opts;#t=R(null);get triggerNode(){return s(this.#t)}set triggerNode(t){P(this.#t,t,!0)}#e=R(null);get contentNode(){return s(this.#e)}set contentNode(t){P(this.#e,t,!0)}#r=R(null);get overlayNode(){return s(this.#r)}set overlayNode(t){P(this.#r,t,!0)}#o=R(null);get descriptionNode(){return s(this.#o)}set descriptionNode(t){P(this.#o,t,!0)}#n=R(void 0);get contentId(){return s(this.#n)}set contentId(t){P(this.#n,t,!0)}#s=R(void 0);get titleId(){return s(this.#s)}set titleId(t){P(this.#s,t,!0)}#a=R(void 0);get triggerId(){return s(this.#a)}set triggerId(t){P(this.#a,t,!0)}#i=R(void 0);get descriptionId(){return s(this.#i)}set descriptionId(t){P(this.#i,t,!0)}#l=R(null);get cancelNode(){return s(this.#l)}set cancelNode(t){P(this.#l,t,!0)}#c=R(0);get nestedOpenCount(){return s(this.#c)}set nestedOpenCount(t){P(this.#c,t,!0)}depth;parent;contentPresence;overlayPresence;constructor(t,e){this.opts=t,this.parent=e,this.depth=e?e.depth+1:0,this.handleOpen=this.handleOpen.bind(this),this.handleClose=this.handleClose.bind(this),this.contentPresence=new mt({ref:b(()=>this.contentNode),open:this.opts.open,enabled:!0,onComplete:()=>{this.opts.onOpenChangeComplete.current(this.opts.open.current)}}),this.overlayPresence=new mt({ref:b(()=>this.overlayNode),open:this.opts.open,enabled:!0}),it(()=>this.opts.open.current,n=>{this.parent&&(n?this.parent.incrementNested():this.parent.decrementNested())},{lazy:!0}),Rt(()=>{this.opts.open.current&&this.parent?.decrementNested()})}handleOpen(){this.opts.open.current||(this.opts.open.current=!0)}handleClose(){this.opts.open.current&&(this.opts.open.current=!1)}getBitsAttr=t=>Mt.getAttr(t,this.opts.variant.current);incrementNested(){this.nestedOpenCount++,this.parent?.incrementNested()}decrementNested(){this.nestedOpenCount!==0&&(this.nestedOpenCount--,this.parent?.decrementNested())}#d=y(()=>({"data-state":xt(this.opts.open.current)}));get sharedProps(){return s(this.#d)}set sharedProps(t){P(this.#d,t)}}class Ot{static create(t){return new Ot(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref),this.onclick=this.onclick.bind(this),this.onkeydown=this.onkeydown.bind(this)}onclick(t){this.opts.disabled.current||t.button>0||this.root.handleClose()}onkeydown(t){this.opts.disabled.current||(t.key===_t||t.key===Pt)&&(t.preventDefault(),this.root.handleClose())}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr(this.opts.variant.current)]:"",onclick:this.onclick,onkeydown:this.onkeydown,disabled:this.opts.disabled.current?!0:void 0,tabindex:0,...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class ct{static create(t){return new ct(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref)}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("action")]:"",...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class dt{static create(t){return new dt(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.root.titleId=this.opts.id.current,this.attachment=q(this.opts.ref),it.pre(()=>this.opts.id.current,n=>{this.root.titleId=n})}#t=y(()=>({id:this.opts.id.current,role:"heading","aria-level":this.opts.level.current,[this.root.getBitsAttr("title")]:"",...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class ut{static create(t){return new ut(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.root.descriptionId=this.opts.id.current,this.attachment=q(this.opts.ref,n=>{this.root.descriptionNode=n}),it.pre(()=>this.opts.id.current,n=>{this.root.descriptionId=n})}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("description")]:"",...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class ht{static create(t){return new ht(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref,n=>{this.root.contentNode=n,this.root.contentId=n?.id})}#t=y(()=>({open:this.root.opts.open.current}));get snippetProps(){return s(this.#t)}set snippetProps(t){P(this.#t,t)}#e=y(()=>({id:this.opts.id.current,role:this.root.opts.variant.current==="alert-dialog"?"alertdialog":"dialog","aria-modal":"true","aria-describedby":this.root.descriptionId,"aria-labelledby":this.root.titleId,[this.root.getBitsAttr("content")]:"",style:{pointerEvents:"auto",outline:this.root.opts.variant.current==="alert-dialog"?"none":void 0,"--bits-dialog-depth":this.root.depth,"--bits-dialog-nested-count":this.root.nestedOpenCount,contain:"layout style"},tabindex:this.root.opts.variant.current==="alert-dialog"?-1:void 0,"data-nested-open":nt(this.root.nestedOpenCount>0),"data-nested":nt(this.root.parent!==null),...this.root.sharedProps,...this.attachment}));get props(){return s(this.#e)}set props(t){P(this.#e,t)}get shouldRender(){return this.root.contentPresence.shouldRender}}class pt{static create(t){return new pt(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref,n=>this.root.overlayNode=n)}#t=y(()=>({open:this.root.opts.open.current}));get snippetProps(){return s(this.#t)}set snippetProps(t){P(this.#t,t)}#e=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("overlay")]:"",style:{pointerEvents:"auto","--bits-dialog-depth":this.root.depth,"--bits-dialog-nested-count":this.root.nestedOpenCount},"data-nested-open":nt(this.root.nestedOpenCount>0),"data-nested":nt(this.root.parent!==null),...this.root.sharedProps,...this.attachment}));get props(){return s(this.#e)}set props(t){P(this.#e,t)}get shouldRender(){return this.root.overlayPresence.shouldRender}}class ft{static create(t){return new ft(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref,n=>this.root.cancelNode=n),this.onclick=this.onclick.bind(this),this.onkeydown=this.onkeydown.bind(this)}onclick(t){this.opts.disabled.current||t.button>0||this.root.handleClose()}onkeydown(t){this.opts.disabled.current||(t.key===_t||t.key===Pt)&&(t.preventDefault(),this.root.handleClose())}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("cancel")]:"",onclick:this.onclick,onkeydown:this.onkeydown,tabindex:0,...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}function Kt(r,t){C(t,!0);let e=l(t,"open",15,!1),n=l(t,"onOpenChange",3,G),o=l(t,"onOpenChangeComplete",3,G);lt.create({variant:b(()=>"alert-dialog"),open:b(()=>e(),d=>{e(d),n()(d)}),onOpenChangeComplete:b(()=>o())});var c=_(),a=m(c);I(a,()=>t.children??z),h(r,c),O()}var Jt=D("<div><!></div>");function jt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=l(t,"level",3,2),a=A(t,["$$slots","$$events","$$legacy","id","ref","child","children","level"]);const d=dt.create({id:b(()=>n()),level:b(()=>c()),ref:b(()=>o(),i=>o(i))}),p=y(()=>x(a,d.props));var g=_(),N=m(g);{var w=i=>{var f=_(),v=m(f);I(v,()=>t.child,()=>({props:s(p)})),h(i,f)},u=i=>{var f=Jt();j(f,()=>({...s(p)}));var v=M(f);I(v,()=>t.children??z),K(f),h(i,f)};F(N,i=>{t.child?i(w):i(u,!1)})}h(r,g),O()}var Ht=D("<button><!></button>");function Lt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=A(t,["$$slots","$$events","$$legacy","children","child","id","ref"]);const a=ct.create({id:b(()=>n()),ref:b(()=>o(),u=>o(u))}),d=y(()=>x(c,a.props));var p=_(),g=m(p);{var N=u=>{var i=_(),f=m(i);I(f,()=>t.child,()=>({props:s(d)})),h(u,i)},w=u=>{var i=Ht();j(i,()=>({...s(d)}));var f=M(i);I(f,()=>t.children??z),K(i),h(u,i)};F(g,u=>{t.child?u(N):u(w,!1)})}h(r,p),O()}var Wt=D("<button><!></button>");function qt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=l(t,"disabled",3,!1),a=A(t,["$$slots","$$events","$$legacy","id","ref","children","child","disabled"]);const d=ft.create({id:b(()=>n()),ref:b(()=>o(),i=>o(i)),disabled:b(()=>!!c())}),p=y(()=>x(a,d.props));var g=_(),N=m(g);{var w=i=>{var f=_(),v=m(f);I(v,()=>t.child,()=>({props:s(p)})),h(i,f)},u=i=>{var f=Wt();j(f,()=>({...s(p)}));var v=M(f);I(v,()=>t.children??z),K(f),h(i,f)};F(N,i=>{t.child?i(w):i(u,!1)})}h(r,g),O()}var Vt=D("<!> <!>",1),Gt=D("<!> <div><!></div>",1);function Qt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=l(t,"forceMount",3,!1),a=l(t,"interactOutsideBehavior",3,"ignore"),d=l(t,"onCloseAutoFocus",3,G),p=l(t,"onEscapeKeydown",3,G),g=l(t,"onOpenAutoFocus",3,G),N=l(t,"onInteractOutside",3,G),w=l(t,"preventScroll",3,!0),u=l(t,"trapFocus",3,!0),i=l(t,"restoreScrollDelay",3,null),f=A(t,["$$slots","$$events","$$legacy","id","children","child","ref","forceMount","interactOutsideBehavior","onCloseAutoFocus","onEscapeKeydown","onOpenAutoFocus","onInteractOutside","preventScroll","trapFocus","restoreScrollDelay"]);const v=ht.create({id:b(()=>n()),ref:b(()=>o(),B=>o(B))}),L=y(()=>x(f,v.props));var E=_(),U=m(E);{var Y=B=>{Et(B,{get ref(){return v.opts.ref},loop:!0,get trapFocus(){return u()},get enabled(){return v.root.opts.open.current},get onCloseAutoFocus(){return d()},onOpenAutoFocus:Z=>{g()(Z),!Z.defaultPrevented&&(Z.preventDefault(),Ut(0,()=>v.opts.ref.current?.focus()))},focusScope:(Z,At)=>{let gt=()=>At?.().props;Bt(Z,k(()=>s(L),{get enabled(){return v.root.opts.open.current},get ref(){return v.opts.ref},onEscapeKeydown:rt=>{p()(rt),!rt.defaultPrevented&&v.root.handleClose()},children:(rt,ae)=>{Ft(rt,k(()=>s(L),{get ref(){return v.opts.ref},get enabled(){return v.root.opts.open.current},get interactOutsideBehavior(){return a()},onInteractOutside:ot=>{N()(ot),!ot.defaultPrevented&&v.root.handleClose()},children:(ot,ie)=>{Tt(ot,k(()=>s(L),{get ref(){return v.opts.ref},get enabled(){return v.root.opts.open.current},children:(It,le)=>{var vt=_(),St=m(vt);{var wt=V=>{var $=Vt(),tt=m($);{var et=W=>{yt(W,{get preventScroll(){return w()},get restoreScrollDelay(){return i()}})};F(tt,W=>{v.root.opts.open.current&&W(et)})}var st=at(tt,2);{let W=y(()=>({props:x(s(L),gt()),...v.snippetProps}));I(st,()=>t.child,()=>s(W))}h(V,$)},Nt=V=>{var $=Gt(),tt=m($);yt(tt,{get preventScroll(){return w()}});var et=at(tt,2);j(et,W=>({...W}),[()=>x(s(L),gt())]);var st=M(et);I(st,()=>t.children??z),K(et),h(V,$)};F(St,V=>{t.child?V(wt):V(Nt,!1)})}h(It,vt)},$$slots:{default:!0}}))},$$slots:{default:!0}}))},$$slots:{default:!0}}))},$$slots:{focusScope:!0}})};F(U,B=>{(v.shouldRender||c())&&B(Y)})}h(r,E),O()}var Xt=D("<div><!></div>");function Yt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"forceMount",3,!1),c=l(t,"ref",15,null),a=A(t,["$$slots","$$events","$$legacy","id","forceMount","child","children","ref"]);const d=pt.create({id:b(()=>n()),ref:b(()=>c(),u=>c(u))}),p=y(()=>x(a,d.props));var g=_(),N=m(g);{var w=u=>{var i=_(),f=m(i);{var v=E=>{var U=_(),Y=m(U);{let B=y(()=>({props:x(s(p)),...d.snippetProps}));I(Y,()=>t.child,()=>s(B))}h(E,U)},L=E=>{var U=Xt();j(U,B=>({...B}),[()=>x(s(p))]);var Y=M(U);I(Y,()=>t.children??z,()=>d.snippetProps),K(U),h(E,U)};F(f,E=>{t.child?E(v):E(L,!1)})}h(u,i)};F(N,u=>{(d.shouldRender||o())&&u(w)})}h(r,g),O()}var Zt=D("<div><!></div>");function $t(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=A(t,["$$slots","$$events","$$legacy","id","children","child","ref"]);const a=ut.create({id:b(()=>n()),ref:b(()=>o(),u=>o(u))}),d=y(()=>x(c,a.props));var p=_(),g=m(p);{var N=u=>{var i=_(),f=m(i);I(f,()=>t.child,()=>({props:s(d)})),h(u,i)},w=u=>{var i=Zt();j(i,()=>({...s(d)}));var f=M(i);I(f,()=>t.children??z),K(i),h(u,i)};F(g,u=>{t.child?u(N):u(w,!1)})}h(r,p),O()}function ye(r){return S(`/api/repos/${encodeURIComponent(r)}/sync`,{method:"POST"})}function _e(){return S("/api/sync",{method:"POST"})}function Pe(r,t,e){return S(`/api/repos/${encodeURIComponent(r)}/entities/${encodeURIComponent(t)}/${encodeURIComponent(e)}/refresh`,{method:"POST"})}function be(r,t,e){return S(`/api/repos/${encodeURIComponent(r)}/entities/${encodeURIComponent(t)}/${encodeURIComponent(e)}/refresh/apply`,{method:"POST"})}function Ce(){return S("/api/sources")}function Oe(){return S("/api/connectors")}function Ae(r){return S(`/api/connectors/${encodeURIComponent(r)}/config`)}function Ie(r,t){return S(`/api/connectors/${encodeURIComponent(r)}/config`,{method:"POST",body:JSON.stringify({...t,name:r})})}function Se(r){return S(`/api/connectors/${encodeURIComponent(r)}/config`,{method:"DELETE"})}function we(r){return S(`/api/sources/${encodeURIComponent(r)}`)}function Ne(r,t){return S(`/api/sources/${encodeURIComponent(r)}`,{method:"POST",body:JSON.stringify(t)})}function ke(r,t){return S(`/api/repos/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify({sync:t})})}function Re(r){return S(`/api/connectors/${encodeURIComponent(r)}/oauth/authorize`,{method:"POST"})}function xe(r){return S(`/api/connectors/${encodeURIComponent(r)}/oauth/status`)}function De(r){return S(`/api/connectors/${encodeURIComponent(r)}/oauth/disconnect`,{method:"POST"})}function Ee(r,t){C(t,!0);let e=l(t,"open",15,!1),n=A(t,["$$slots","$$events","$$legacy","open"]);var o=_(),c=m(o);J(c,()=>Kt,(a,d)=>{d(a,k(()=>n,{get open(){return e()},set open(p){e(p)}}))}),h(r,o),O()}function te(r,t){let e=A(t,["$$slots","$$events","$$legacy"]);var n=_(),o=m(n);J(o,()=>zt,(c,a)=>{a(c,k(()=>e))}),h(r,n)}function Ue(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>H("text-lg font-semibold",t.class));J(c,()=>jt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-title",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}function Be(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>t.class||H(bt()));J(c,()=>Lt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-action",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}function Fe(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>t.class||H(bt({variant:"ghost"})));J(c,()=>qt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-cancel",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}var ee=D("<div><!></div>");function Te(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class","children"]);var o=ee();j(o,a=>({"data-slot":"alert-dialog-footer",class:a,...n}),[()=>H("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t.class)]);var c=M(o);I(c,()=>t.children??z),K(o),Ct(o,a=>e(a),()=>e()),h(r,o),O()}var re=D("<div><!></div>");function ze(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class","children"]);var o=re();j(o,a=>({"data-slot":"alert-dialog-header",class:a,...n}),[()=>H("flex flex-col gap-2 text-center sm:text-start",t.class)]);var c=M(o);I(c,()=>t.children??z),K(o),Ct(o,a=>e(a),()=>e()),h(r,o),O()}function oe(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>H("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t.class));J(c,()=>Yt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-overlay",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}var ne=D("<!> <!>",1);function Me(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class","portalProps"]);te(r,k(()=>t.portalProps,{children:(o,c)=>{var a=ne(),d=m(a);oe(d,{});var p=at(d,2);{let g=y(()=>H("bg-[var(--color-bg-elevated)] border-[var(--color-border)] text-[var(--color-text-primary)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t.class));J(p,()=>Qt,(N,w)=>{w(N,k({"data-slot":"alert-dialog-content",get class(){return s(g)}},()=>n,{get ref(){return e()},set ref(u){e(u)}}))})}h(o,a)},$$slots:{default:!0}})),O()}function Ke(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>H("text-[var(--color-text-secondary)] text-sm",t.class));J(c,()=>$t,(d,p)=>{p(d,k({"data-slot":"alert-dialog-description",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}export{Me as A,ye as B,lt as D,ze as a,Ue as b,Ke as c,Te as d,Fe as e,Be as f,Ee as g,ht as h,Yt as i,jt as j,Ce as k,Oe as l,we as m,Ae as n,Ie as o,De as p,Se as q,Re as r,Ne as s,xe as t,ke as u,be as v,Pe as w,Ot as x,$t as y,_e as z};
1
+ import{a as S}from"./CFtRXHDP.js";import{c as _,a as h,p as Q,b as D}from"./b0XUoOIH.js";import{a4 as y,g as s,s as P,e as R,p as C,a0 as m,b as O,ae as z,c as M,r as K,a3 as at}from"./DSh-OF2y.js";import{c as J}from"./DCVmM0L5.js";import{p as l,r as A,s as k}from"./D-yNNNdf.js";import{s as I,a as j}from"./CRnhIQbv.js";import{C as kt,s as q,L as nt,w as it,v as _t,E as Pt,A as mt,b,N as Rt,x as xt,B as Dt,n as G,c as X,m as x,H as Et,O as Ut,I as Bt,J as Ft,T as Tt,K as yt,p as zt}from"./DQYNi3YK.js";import{c as H,a as bt}from"./DQ5NTKSo.js";import{i as F,b as Ct}from"./DT3KtxWU.js";const Mt=Dt({component:"dialog",parts:["content","trigger","overlay","title","description","close","cancel","action"]}),T=new kt("Dialog.Root | AlertDialog.Root");class lt{static create(t){const e=T.getOr(null);return T.set(new lt(t,e))}opts;#t=R(null);get triggerNode(){return s(this.#t)}set triggerNode(t){P(this.#t,t,!0)}#e=R(null);get contentNode(){return s(this.#e)}set contentNode(t){P(this.#e,t,!0)}#r=R(null);get overlayNode(){return s(this.#r)}set overlayNode(t){P(this.#r,t,!0)}#o=R(null);get descriptionNode(){return s(this.#o)}set descriptionNode(t){P(this.#o,t,!0)}#n=R(void 0);get contentId(){return s(this.#n)}set contentId(t){P(this.#n,t,!0)}#s=R(void 0);get titleId(){return s(this.#s)}set titleId(t){P(this.#s,t,!0)}#a=R(void 0);get triggerId(){return s(this.#a)}set triggerId(t){P(this.#a,t,!0)}#i=R(void 0);get descriptionId(){return s(this.#i)}set descriptionId(t){P(this.#i,t,!0)}#l=R(null);get cancelNode(){return s(this.#l)}set cancelNode(t){P(this.#l,t,!0)}#c=R(0);get nestedOpenCount(){return s(this.#c)}set nestedOpenCount(t){P(this.#c,t,!0)}depth;parent;contentPresence;overlayPresence;constructor(t,e){this.opts=t,this.parent=e,this.depth=e?e.depth+1:0,this.handleOpen=this.handleOpen.bind(this),this.handleClose=this.handleClose.bind(this),this.contentPresence=new mt({ref:b(()=>this.contentNode),open:this.opts.open,enabled:!0,onComplete:()=>{this.opts.onOpenChangeComplete.current(this.opts.open.current)}}),this.overlayPresence=new mt({ref:b(()=>this.overlayNode),open:this.opts.open,enabled:!0}),it(()=>this.opts.open.current,n=>{this.parent&&(n?this.parent.incrementNested():this.parent.decrementNested())},{lazy:!0}),Rt(()=>{this.opts.open.current&&this.parent?.decrementNested()})}handleOpen(){this.opts.open.current||(this.opts.open.current=!0)}handleClose(){this.opts.open.current&&(this.opts.open.current=!1)}getBitsAttr=t=>Mt.getAttr(t,this.opts.variant.current);incrementNested(){this.nestedOpenCount++,this.parent?.incrementNested()}decrementNested(){this.nestedOpenCount!==0&&(this.nestedOpenCount--,this.parent?.decrementNested())}#d=y(()=>({"data-state":xt(this.opts.open.current)}));get sharedProps(){return s(this.#d)}set sharedProps(t){P(this.#d,t)}}class Ot{static create(t){return new Ot(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref),this.onclick=this.onclick.bind(this),this.onkeydown=this.onkeydown.bind(this)}onclick(t){this.opts.disabled.current||t.button>0||this.root.handleClose()}onkeydown(t){this.opts.disabled.current||(t.key===_t||t.key===Pt)&&(t.preventDefault(),this.root.handleClose())}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr(this.opts.variant.current)]:"",onclick:this.onclick,onkeydown:this.onkeydown,disabled:this.opts.disabled.current?!0:void 0,tabindex:0,...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class ct{static create(t){return new ct(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref)}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("action")]:"",...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class dt{static create(t){return new dt(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.root.titleId=this.opts.id.current,this.attachment=q(this.opts.ref),it.pre(()=>this.opts.id.current,n=>{this.root.titleId=n})}#t=y(()=>({id:this.opts.id.current,role:"heading","aria-level":this.opts.level.current,[this.root.getBitsAttr("title")]:"",...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class ut{static create(t){return new ut(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.root.descriptionId=this.opts.id.current,this.attachment=q(this.opts.ref,n=>{this.root.descriptionNode=n}),it.pre(()=>this.opts.id.current,n=>{this.root.descriptionId=n})}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("description")]:"",...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}class ht{static create(t){return new ht(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref,n=>{this.root.contentNode=n,this.root.contentId=n?.id})}#t=y(()=>({open:this.root.opts.open.current}));get snippetProps(){return s(this.#t)}set snippetProps(t){P(this.#t,t)}#e=y(()=>({id:this.opts.id.current,role:this.root.opts.variant.current==="alert-dialog"?"alertdialog":"dialog","aria-modal":"true","aria-describedby":this.root.descriptionId,"aria-labelledby":this.root.titleId,[this.root.getBitsAttr("content")]:"",style:{pointerEvents:"auto",outline:this.root.opts.variant.current==="alert-dialog"?"none":void 0,"--bits-dialog-depth":this.root.depth,"--bits-dialog-nested-count":this.root.nestedOpenCount,contain:"layout style"},tabindex:this.root.opts.variant.current==="alert-dialog"?-1:void 0,"data-nested-open":nt(this.root.nestedOpenCount>0),"data-nested":nt(this.root.parent!==null),...this.root.sharedProps,...this.attachment}));get props(){return s(this.#e)}set props(t){P(this.#e,t)}get shouldRender(){return this.root.contentPresence.shouldRender}}class pt{static create(t){return new pt(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref,n=>this.root.overlayNode=n)}#t=y(()=>({open:this.root.opts.open.current}));get snippetProps(){return s(this.#t)}set snippetProps(t){P(this.#t,t)}#e=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("overlay")]:"",style:{pointerEvents:"auto","--bits-dialog-depth":this.root.depth,"--bits-dialog-nested-count":this.root.nestedOpenCount},"data-nested-open":nt(this.root.nestedOpenCount>0),"data-nested":nt(this.root.parent!==null),...this.root.sharedProps,...this.attachment}));get props(){return s(this.#e)}set props(t){P(this.#e,t)}get shouldRender(){return this.root.overlayPresence.shouldRender}}class ft{static create(t){return new ft(t,T.get())}opts;root;attachment;constructor(t,e){this.opts=t,this.root=e,this.attachment=q(this.opts.ref,n=>this.root.cancelNode=n),this.onclick=this.onclick.bind(this),this.onkeydown=this.onkeydown.bind(this)}onclick(t){this.opts.disabled.current||t.button>0||this.root.handleClose()}onkeydown(t){this.opts.disabled.current||(t.key===_t||t.key===Pt)&&(t.preventDefault(),this.root.handleClose())}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr("cancel")]:"",onclick:this.onclick,onkeydown:this.onkeydown,tabindex:0,...this.root.sharedProps,...this.attachment}));get props(){return s(this.#t)}set props(t){P(this.#t,t)}}function Kt(r,t){C(t,!0);let e=l(t,"open",15,!1),n=l(t,"onOpenChange",3,G),o=l(t,"onOpenChangeComplete",3,G);lt.create({variant:b(()=>"alert-dialog"),open:b(()=>e(),d=>{e(d),n()(d)}),onOpenChangeComplete:b(()=>o())});var c=_(),a=m(c);I(a,()=>t.children??z),h(r,c),O()}var Jt=D("<div><!></div>");function jt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=l(t,"level",3,2),a=A(t,["$$slots","$$events","$$legacy","id","ref","child","children","level"]);const d=dt.create({id:b(()=>n()),level:b(()=>c()),ref:b(()=>o(),i=>o(i))}),p=y(()=>x(a,d.props));var g=_(),N=m(g);{var w=i=>{var f=_(),v=m(f);I(v,()=>t.child,()=>({props:s(p)})),h(i,f)},u=i=>{var f=Jt();j(f,()=>({...s(p)}));var v=M(f);I(v,()=>t.children??z),K(f),h(i,f)};F(N,i=>{t.child?i(w):i(u,!1)})}h(r,g),O()}var Ht=D("<button><!></button>");function Lt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=A(t,["$$slots","$$events","$$legacy","children","child","id","ref"]);const a=ct.create({id:b(()=>n()),ref:b(()=>o(),u=>o(u))}),d=y(()=>x(c,a.props));var p=_(),g=m(p);{var N=u=>{var i=_(),f=m(i);I(f,()=>t.child,()=>({props:s(d)})),h(u,i)},w=u=>{var i=Ht();j(i,()=>({...s(d)}));var f=M(i);I(f,()=>t.children??z),K(i),h(u,i)};F(g,u=>{t.child?u(N):u(w,!1)})}h(r,p),O()}var Wt=D("<button><!></button>");function qt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=l(t,"disabled",3,!1),a=A(t,["$$slots","$$events","$$legacy","id","ref","children","child","disabled"]);const d=ft.create({id:b(()=>n()),ref:b(()=>o(),i=>o(i)),disabled:b(()=>!!c())}),p=y(()=>x(a,d.props));var g=_(),N=m(g);{var w=i=>{var f=_(),v=m(f);I(v,()=>t.child,()=>({props:s(p)})),h(i,f)},u=i=>{var f=Wt();j(f,()=>({...s(p)}));var v=M(f);I(v,()=>t.children??z),K(f),h(i,f)};F(N,i=>{t.child?i(w):i(u,!1)})}h(r,g),O()}var Vt=D("<!> <!>",1),Gt=D("<!> <div><!></div>",1);function Qt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=l(t,"forceMount",3,!1),a=l(t,"interactOutsideBehavior",3,"ignore"),d=l(t,"onCloseAutoFocus",3,G),p=l(t,"onEscapeKeydown",3,G),g=l(t,"onOpenAutoFocus",3,G),N=l(t,"onInteractOutside",3,G),w=l(t,"preventScroll",3,!0),u=l(t,"trapFocus",3,!0),i=l(t,"restoreScrollDelay",3,null),f=A(t,["$$slots","$$events","$$legacy","id","children","child","ref","forceMount","interactOutsideBehavior","onCloseAutoFocus","onEscapeKeydown","onOpenAutoFocus","onInteractOutside","preventScroll","trapFocus","restoreScrollDelay"]);const v=ht.create({id:b(()=>n()),ref:b(()=>o(),B=>o(B))}),L=y(()=>x(f,v.props));var E=_(),U=m(E);{var Y=B=>{Et(B,{get ref(){return v.opts.ref},loop:!0,get trapFocus(){return u()},get enabled(){return v.root.opts.open.current},get onCloseAutoFocus(){return d()},onOpenAutoFocus:Z=>{g()(Z),!Z.defaultPrevented&&(Z.preventDefault(),Ut(0,()=>v.opts.ref.current?.focus()))},focusScope:(Z,At)=>{let gt=()=>At?.().props;Bt(Z,k(()=>s(L),{get enabled(){return v.root.opts.open.current},get ref(){return v.opts.ref},onEscapeKeydown:rt=>{p()(rt),!rt.defaultPrevented&&v.root.handleClose()},children:(rt,ae)=>{Ft(rt,k(()=>s(L),{get ref(){return v.opts.ref},get enabled(){return v.root.opts.open.current},get interactOutsideBehavior(){return a()},onInteractOutside:ot=>{N()(ot),!ot.defaultPrevented&&v.root.handleClose()},children:(ot,ie)=>{Tt(ot,k(()=>s(L),{get ref(){return v.opts.ref},get enabled(){return v.root.opts.open.current},children:(It,le)=>{var vt=_(),St=m(vt);{var wt=V=>{var $=Vt(),tt=m($);{var et=W=>{yt(W,{get preventScroll(){return w()},get restoreScrollDelay(){return i()}})};F(tt,W=>{v.root.opts.open.current&&W(et)})}var st=at(tt,2);{let W=y(()=>({props:x(s(L),gt()),...v.snippetProps}));I(st,()=>t.child,()=>s(W))}h(V,$)},Nt=V=>{var $=Gt(),tt=m($);yt(tt,{get preventScroll(){return w()}});var et=at(tt,2);j(et,W=>({...W}),[()=>x(s(L),gt())]);var st=M(et);I(st,()=>t.children??z),K(et),h(V,$)};F(St,V=>{t.child?V(wt):V(Nt,!1)})}h(It,vt)},$$slots:{default:!0}}))},$$slots:{default:!0}}))},$$slots:{default:!0}}))},$$slots:{focusScope:!0}})};F(U,B=>{(v.shouldRender||c())&&B(Y)})}h(r,E),O()}var Xt=D("<div><!></div>");function Yt(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"forceMount",3,!1),c=l(t,"ref",15,null),a=A(t,["$$slots","$$events","$$legacy","id","forceMount","child","children","ref"]);const d=pt.create({id:b(()=>n()),ref:b(()=>c(),u=>c(u))}),p=y(()=>x(a,d.props));var g=_(),N=m(g);{var w=u=>{var i=_(),f=m(i);{var v=E=>{var U=_(),Y=m(U);{let B=y(()=>({props:x(s(p)),...d.snippetProps}));I(Y,()=>t.child,()=>s(B))}h(E,U)},L=E=>{var U=Xt();j(U,B=>({...B}),[()=>x(s(p))]);var Y=M(U);I(Y,()=>t.children??z,()=>d.snippetProps),K(U),h(E,U)};F(f,E=>{t.child?E(v):E(L,!1)})}h(u,i)};F(N,u=>{(d.shouldRender||o())&&u(w)})}h(r,g),O()}var Zt=D("<div><!></div>");function $t(r,t){const e=Q();C(t,!0);let n=l(t,"id",19,()=>X(e)),o=l(t,"ref",15,null),c=A(t,["$$slots","$$events","$$legacy","id","children","child","ref"]);const a=ut.create({id:b(()=>n()),ref:b(()=>o(),u=>o(u))}),d=y(()=>x(c,a.props));var p=_(),g=m(p);{var N=u=>{var i=_(),f=m(i);I(f,()=>t.child,()=>({props:s(d)})),h(u,i)},w=u=>{var i=Zt();j(i,()=>({...s(d)}));var f=M(i);I(f,()=>t.children??z),K(i),h(u,i)};F(g,u=>{t.child?u(N):u(w,!1)})}h(r,p),O()}function ye(r){return S(`/api/repos/${encodeURIComponent(r)}/sync`,{method:"POST"})}function _e(){return S("/api/sync",{method:"POST"})}function Pe(r,t,e){return S(`/api/repos/${encodeURIComponent(r)}/entities/${encodeURIComponent(t)}/${encodeURIComponent(e)}/refresh`,{method:"POST"})}function be(r,t,e){return S(`/api/repos/${encodeURIComponent(r)}/entities/${encodeURIComponent(t)}/${encodeURIComponent(e)}/refresh/apply`,{method:"POST"})}function Ce(){return S("/api/sources")}function Oe(){return S("/api/connectors")}function Ae(r){return S(`/api/connectors/${encodeURIComponent(r)}/config`)}function Ie(r,t){return S(`/api/connectors/${encodeURIComponent(r)}/config`,{method:"POST",body:JSON.stringify({...t,name:r})})}function Se(r){return S(`/api/connectors/${encodeURIComponent(r)}/config`,{method:"DELETE"})}function we(r){return S(`/api/sources/${encodeURIComponent(r)}`)}function Ne(r,t){return S(`/api/sources/${encodeURIComponent(r)}`,{method:"POST",body:JSON.stringify(t)})}function ke(r,t){return S(`/api/repos/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify({sync:t})})}function Re(r){return S(`/api/connectors/${encodeURIComponent(r)}/oauth/authorize`,{method:"POST"})}function xe(r){return S(`/api/connectors/${encodeURIComponent(r)}/oauth/status`)}function De(r){return S(`/api/connectors/${encodeURIComponent(r)}/oauth/disconnect`,{method:"POST"})}function Ee(r,t){C(t,!0);let e=l(t,"open",15,!1),n=A(t,["$$slots","$$events","$$legacy","open"]);var o=_(),c=m(o);J(c,()=>Kt,(a,d)=>{d(a,k(()=>n,{get open(){return e()},set open(p){e(p)}}))}),h(r,o),O()}function te(r,t){let e=A(t,["$$slots","$$events","$$legacy"]);var n=_(),o=m(n);J(o,()=>zt,(c,a)=>{a(c,k(()=>e))}),h(r,n)}function Ue(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>H("text-lg font-semibold",t.class));J(c,()=>jt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-title",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}function Be(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>t.class||H(bt()));J(c,()=>Lt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-action",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}function Fe(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>t.class||H(bt({variant:"ghost"})));J(c,()=>qt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-cancel",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}var ee=D("<div><!></div>");function Te(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class","children"]);var o=ee();j(o,a=>({"data-slot":"alert-dialog-footer",class:a,...n}),[()=>H("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t.class)]);var c=M(o);I(c,()=>t.children??z),K(o),Ct(o,a=>e(a),()=>e()),h(r,o),O()}var re=D("<div><!></div>");function ze(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class","children"]);var o=re();j(o,a=>({"data-slot":"alert-dialog-header",class:a,...n}),[()=>H("flex flex-col gap-2 text-center sm:text-start",t.class)]);var c=M(o);I(c,()=>t.children??z),K(o),Ct(o,a=>e(a),()=>e()),h(r,o),O()}function oe(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>H("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t.class));J(c,()=>Yt,(d,p)=>{p(d,k({"data-slot":"alert-dialog-overlay",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}var ne=D("<!> <!>",1);function Me(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class","portalProps"]);te(r,k(()=>t.portalProps,{children:(o,c)=>{var a=ne(),d=m(a);oe(d,{});var p=at(d,2);{let g=y(()=>H("bg-[var(--color-bg-elevated)] border-[var(--color-border)] text-[var(--color-text-primary)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t.class));J(p,()=>Qt,(N,w)=>{w(N,k({"data-slot":"alert-dialog-content",get class(){return s(g)}},()=>n,{get ref(){return e()},set ref(u){e(u)}}))})}h(o,a)},$$slots:{default:!0}})),O()}function Ke(r,t){C(t,!0);let e=l(t,"ref",15,null),n=A(t,["$$slots","$$events","$$legacy","ref","class"]);var o=_(),c=m(o);{let a=y(()=>H("text-[var(--color-text-secondary)] text-sm",t.class));J(c,()=>$t,(d,p)=>{p(d,k({"data-slot":"alert-dialog-description",get class(){return s(a)}},()=>n,{get ref(){return e()},set ref(g){e(g)}}))})}h(r,o),O()}export{Me as A,ye as B,lt as D,ze as a,Ue as b,Ke as c,Te as d,Fe as e,Be as f,Ee as g,ht as h,Yt as i,jt as j,Ce as k,Oe as l,we as m,Ae as n,Ie as o,De as p,Se as q,Re as r,Ne as s,xe as t,ke as u,be as v,Pe as w,Ot as x,$t as y,_e as z};
@@ -1 +1 @@
1
- import{a as p,s as C,f as h}from"./CajNsaOw.js";import{i as M}from"./BLi1Oegj.js";import{p as k,l as c,s as m,d as f,g as i,a as A,c as _,n as B,r as u,b as N,m as v,t as P}from"./CfuRx7rA.js";import{i as R}from"./Cwkp_c4R.js";import{a as Y}from"./BA_Wro7X.js";import{l as g,p as b}from"./RGHlrGBn.js";var j=h("<title> </title>"),q=h('<svg><!><path d="M17.4141 16 24 9.4141 22.5859 8 16 14.5859 9.4143 8 8 9.4141 14.5859 16 8 22.5859 9.4143 24 16 17.4141 22.5859 24 24 22.5859 17.4141 16z"></path></svg>');function J(x,t){const e=g(t,["children","$$slots","$$events","$$legacy"]),w=g(e,["size","title"]);k(t,!1);const a=v(),n=v();let d=b(t,"size",8,16),s=b(t,"title",8,void 0);c(()=>(f(e),f(s())),()=>{m(a,e["aria-label"]||e["aria-labelledby"]||s())}),c(()=>(i(a),f(e)),()=>{m(n,{"aria-hidden":i(a)?void 0:!0,role:i(a)?"img":void 0,focusable:Number(e.tabindex)===0?!0:void 0})}),A(),M();var r=q();Y(r,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:d(),height:d(),...i(n),...w}));var y=_(r);{var z=o=>{var l=j(),$=_(l,!0);u(l),P(()=>C($,s())),p(o,l)};R(y,o=>{s()&&o(z)})}B(),u(r),p(x,r),N()}export{J as C};
1
+ import{a as p,s as C,f as h}from"./b0XUoOIH.js";import{i as M}from"./vZ2iBqLE.js";import{p as k,l as c,s as m,d as f,g as i,a as A,c as _,n as B,r as u,b as N,m as v,t as P}from"./DSh-OF2y.js";import{i as R}from"./DT3KtxWU.js";import{a as Y}from"./CRnhIQbv.js";import{l as g,p as b}from"./D-yNNNdf.js";var j=h("<title> </title>"),q=h('<svg><!><path d="M17.4141 16 24 9.4141 22.5859 8 16 14.5859 9.4143 8 8 9.4141 14.5859 16 8 22.5859 9.4143 24 16 17.4141 22.5859 24 24 22.5859 17.4141 16z"></path></svg>');function J(x,t){const e=g(t,["children","$$slots","$$events","$$legacy"]),w=g(e,["size","title"]);k(t,!1);const a=v(),n=v();let d=b(t,"size",8,16),s=b(t,"title",8,void 0);c(()=>(f(e),f(s())),()=>{m(a,e["aria-label"]||e["aria-labelledby"]||s())}),c(()=>(i(a),f(e)),()=>{m(n,{"aria-hidden":i(a)?void 0:!0,role:i(a)?"img":void 0,focusable:Number(e.tabindex)===0?!0:void 0})}),A(),M();var r=q();Y(r,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:d(),height:d(),...i(n),...w}));var y=_(r);{var z=o=>{var l=j(),$=_(l,!0);u(l),P(()=>C($,s())),p(o,l)};R(y,o=>{s()&&o(z)})}B(),u(r),p(x,r),N()}export{J as C};
@@ -1 +1 @@
1
- import{a as g,s as de,f as fe,d as ke,g as f,b as P,c as F,e as ze}from"./CajNsaOw.js";import{p as ue,l as le,s,d as J,g as t,a as Me,c as l,n as W,r as o,b as me,m as oe,t as I,ay as Ce,a5 as He,e as V,f as De,a0 as H,a1 as p,ac as Re}from"./CfuRx7rA.js";import{a as Ae,r as $e,s as Ie,b as Pe}from"./BA_Wro7X.js";import{i as k,b as Ee}from"./Cwkp_c4R.js";import{e as Te}from"./CdvQjHNy.js";import{s as Q}from"./DEyrdHQB.js";import{b as Be,B as Ne}from"./9QAsBMIK.js";import{l as ve,p as ee}from"./RGHlrGBn.js";import{g as ce}from"./DUsnWwWN.js";import{i as Se}from"./BLi1Oegj.js";import{A as Ye}from"./BJimep0Q.js";import{E as Ge,T as Ke}from"./Bypyvp-Q.js";import{n as U}from"./BZd_7gpI.js";import{v as D}from"./DTDfEpZd.js";var Le=fe("<title> </title>"),Oe=fe('<svg><!><path d="M17.74,30,16,29l4-7h6a2,2,0,0,0,2-2V8a2,2,0,0,0-2-2H6A2,2,0,0,0,4,8V20a2,2,0,0,0,2,2h9v2H6a4,4,0,0,1-4-4V8A4,4,0,0,1,6,4H26a4,4,0,0,1,4,4V20a4,4,0,0,1-4,4H21.16Z"></path><path d="M8 10H24V12H8z"></path><path d="M8 16H18V18H8z"></path></svg>');function Xe(E,u){const n=ve(u,["children","$$slots","$$events","$$legacy"]),R=ve(n,["size","title"]);ue(u,!1);const _=oe(),A=oe();let v=ee(u,"size",8,16),c=ee(u,"title",8,void 0);le(()=>(J(n),J(c())),()=>{s(_,n["aria-label"]||n["aria-labelledby"]||c())}),le(()=>(t(_),J(n)),()=>{s(A,{"aria-hidden":t(_)?void 0:!0,role:t(_)?"img":void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),Me(),Se();var d=Oe();Ae(d,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:v(),height:v(),...t(A),...R}));var b=l(d);{var T=w=>{var z=Le(),B=l(z,!0);o(z),I(()=>de(B,c())),g(w,z)};k(b,w=>{c()&&w(T)})}W(3),o(d),g(E,d),me()}var Ze=P('<input class="view-rename-input svelte-r6dy5f"/>'),je=P('<button><span class="toggle-label"> </span></button>'),qe=P('<div class="context-backdrop svelte-r6dy5f"></div> <div class="view-context-menu svelte-r6dy5f"><div class="view-menu-item svelte-r6dy5f"><!> Rename</div> <div class="view-menu-item view-menu-item-danger svelte-r6dy5f"><!> Delete</div></div>',1),Fe=P('<div class="view-toolbar svelte-r6dy5f"><div></div> <div class="view-toggles svelte-r6dy5f"><button><span class="toggle-label">Details</span></button> <button><span class="toggle-label">Graph</span></button> <!> <button class="toggle-btn add-view-btn svelte-r6dy5f" title="New view"><!></button></div> <div class="toolbar-right svelte-r6dy5f"><!> <!></div></div> <!>',1);function ct(E,u){ue(u,!0);let n=ee(u,"activeView",3,"entity");const R=Ce("chat");function _(e){ce(e,{noScroll:!0})}async function A(){const e=await D.create("New View");ce(`/views/${e.id}`)}let v=V(null),c=V(""),d=V(null),b=V(!1);function T(e){s(b,!1),s(v,e.id,!0),s(c,e.name,!0)}He(()=>{t(v)&&t(d)&&(t(d).focus(),t(d).select(),setTimeout(()=>{s(b,!0)},50))});function w(){t(b)&&(t(v)&&t(c).trim()&&D.update(t(v),{name:t(c).trim()}),s(v,null),s(b,!1))}function z(){s(v,null),s(b,!1)}function B(e){e.key==="Enter"&&(e.preventDefault(),s(b,!0),w()),e.key==="Escape"&&(e.preventDefault(),z())}let $=V(null),N=V(De({x:0,y:0}));function pe(e,a){e.preventDefault(),s($,a.id,!0),s(N,{x:e.clientX,y:e.clientY},!0)}function S(){s($,null)}async function ge(e){S(),confirm(`Delete view "${e.name}"?`)&&await D.remove(e.id)}var te=Fe(),Y=H(te),G=p(l(Y),2),K=l(G);let ae;var L=p(K,2);let ie;var se=p(L,2);Te(se,17,()=>D.views,e=>e.id,(e,a)=>{var h=F(),X=H(h);{var Z=m=>{var i=Ze();$e(i),Ee(i,r=>s(d,r),()=>t(d)),f("keydown",i,B),ze("blur",i,w),Be(i,()=>t(c),r=>s(c,r)),g(m,i)},y=m=>{var i=je();let r;var M=l(i),x=l(M,!0);o(M),o(i),I(()=>{r=Q(i,1,"toggle-btn svelte-r6dy5f",null,r,{active:n()==="view"&&U.activeViewId===t(a).id}),de(x,t(a).name)}),f("click",i,()=>!(n()==="view"&&U.activeViewId===t(a).id)&&_(`/views/${t(a).id}`)),f("contextmenu",i,j=>pe(j,t(a))),g(m,i)};k(X,m=>{t(v)===t(a).id?m(Z):m(y,!1)})}g(e,h)});var O=p(se,2),_e=l(O);Ye(_e,{size:14}),o(O),o(G);var ne=p(G,2),re=l(ne);{var be=e=>{var a=F(),h=H(a);Ie(h,()=>u.right),g(e,a)};k(re,e=>{u.right&&e(be)})}var he=p(re,2);{var ye=e=>{Ne(e,{variant:"accent",size:"icon",class:"chat-toggle",title:"Open Agent",get onclick(){return R.toggle},children:(a,h)=>{Xe(a,{size:14})},$$slots:{default:!0}})};k(he,e=>{R.open||e(ye)})}o(ne),o(Y);var we=p(Y,2);{var xe=e=>{const a=Re(()=>D.views.find(y=>y.id===t($)));var h=F(),X=H(h);{var Z=y=>{var m=qe(),i=H(m),r=p(i,2);let M;var x=l(r),j=l(x);Ge(j,{size:12}),W(),o(x);var q=p(x,2),Ve=l(q);Ke(Ve,{size:12}),W(),o(q),o(r),I(()=>M=Pe(r,"",M,{left:`${t(N).x??""}px`,top:`${t(N).y??""}px`})),f("click",i,S),f("click",r,C=>C.stopPropagation()),f("click",x,()=>{const C=t(a);S(),T(C)}),f("click",q,()=>{const C=t(a);ge(C)}),g(y,m)};k(X,y=>{t(a)&&y(Z)})}g(e,h)};k(we,e=>{t($)&&e(xe)})}I(()=>{ae=Q(K,1,"toggle-btn svelte-r6dy5f",null,ae,{active:n()==="entity"}),ie=Q(L,1,"toggle-btn svelte-r6dy5f",null,ie,{active:n()==="graph"})}),f("click",K,()=>n()!=="entity"&&_(U.entityPath??"/")),f("click",L,()=>n()!=="graph"&&_("/graph")),f("click",O,A),g(E,te),me()}ke(["click","keydown","contextmenu"]);export{ct as V};
1
+ import{a as g,s as ce,f as fe,d as ke,e as f,b as P,c as F,g as ze}from"./b0XUoOIH.js";import{p as ue,l as le,s,d as J,g as t,a as Me,c as l,n as W,r as o,b as me,m as oe,t as I,a1 as Ce,a2 as He,e as V,f as De,a0 as H,a3 as p,a4 as Re}from"./DSh-OF2y.js";import{a as Ae,r as $e,s as Ie,b as Pe}from"./CRnhIQbv.js";import{i as k,b as Ee}from"./DT3KtxWU.js";import{e as Te}from"./DHtLlmE0.js";import{s as Q}from"./CFtRXHDP.js";import{b as Be,B as Ne}from"./DQ5NTKSo.js";import{l as ve,p as ee}from"./D-yNNNdf.js";import{g as de}from"./C0v9FrTH.js";import{i as Se}from"./vZ2iBqLE.js";import{A as Ye}from"./BgBJ0u3M.js";import{E as Ge,T as Ke}from"./azUmHUDT.js";import{n as U}from"./HVmKTSmh.js";import{v as D}from"./D2C1YupD.js";var Le=fe("<title> </title>"),Oe=fe('<svg><!><path d="M17.74,30,16,29l4-7h6a2,2,0,0,0,2-2V8a2,2,0,0,0-2-2H6A2,2,0,0,0,4,8V20a2,2,0,0,0,2,2h9v2H6a4,4,0,0,1-4-4V8A4,4,0,0,1,6,4H26a4,4,0,0,1,4,4V20a4,4,0,0,1-4,4H21.16Z"></path><path d="M8 10H24V12H8z"></path><path d="M8 16H18V18H8z"></path></svg>');function Xe(E,u){const n=ve(u,["children","$$slots","$$events","$$legacy"]),R=ve(n,["size","title"]);ue(u,!1);const _=oe(),A=oe();let v=ee(u,"size",8,16),d=ee(u,"title",8,void 0);le(()=>(J(n),J(d())),()=>{s(_,n["aria-label"]||n["aria-labelledby"]||d())}),le(()=>(t(_),J(n)),()=>{s(A,{"aria-hidden":t(_)?void 0:!0,role:t(_)?"img":void 0,focusable:Number(n.tabindex)===0?!0:void 0})}),Me(),Se();var c=Oe();Ae(c,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:v(),height:v(),...t(A),...R}));var b=l(c);{var T=w=>{var z=Le(),B=l(z,!0);o(z),I(()=>ce(B,d())),g(w,z)};k(b,w=>{d()&&w(T)})}W(3),o(c),g(E,c),me()}var Ze=P('<input class="view-rename-input svelte-r6dy5f"/>'),je=P('<button><span class="toggle-label"> </span></button>'),qe=P('<div class="context-backdrop svelte-r6dy5f"></div> <div class="view-context-menu svelte-r6dy5f"><div class="view-menu-item svelte-r6dy5f"><!> Rename</div> <div class="view-menu-item view-menu-item-danger svelte-r6dy5f"><!> Delete</div></div>',1),Fe=P('<div class="view-toolbar svelte-r6dy5f"><div></div> <div class="view-toggles svelte-r6dy5f"><button><span class="toggle-label">Details</span></button> <button><span class="toggle-label">Graph</span></button> <!> <button class="toggle-btn add-view-btn svelte-r6dy5f" title="New view"><!></button></div> <div class="toolbar-right svelte-r6dy5f"><!> <!></div></div> <!>',1);function dt(E,u){ue(u,!0);let n=ee(u,"activeView",3,"entity");const R=Ce("chat");function _(e){de(e,{noScroll:!0})}async function A(){const e=await D.create("New View");de(`/views/${e.id}`)}let v=V(null),d=V(""),c=V(null),b=V(!1);function T(e){s(b,!1),s(v,e.id,!0),s(d,e.name,!0)}He(()=>{t(v)&&t(c)&&(t(c).focus(),t(c).select(),setTimeout(()=>{s(b,!0)},50))});function w(){t(b)&&(t(v)&&t(d).trim()&&D.update(t(v),{name:t(d).trim()}),s(v,null),s(b,!1))}function z(){s(v,null),s(b,!1)}function B(e){e.key==="Enter"&&(e.preventDefault(),s(b,!0),w()),e.key==="Escape"&&(e.preventDefault(),z())}let $=V(null),N=V(De({x:0,y:0}));function pe(e,a){e.preventDefault(),s($,a.id,!0),s(N,{x:e.clientX,y:e.clientY},!0)}function S(){s($,null)}async function ge(e){S(),confirm(`Delete view "${e.name}"?`)&&await D.remove(e.id)}var te=Fe(),Y=H(te),G=p(l(Y),2),K=l(G);let ae;var L=p(K,2);let ie;var se=p(L,2);Te(se,17,()=>D.views,e=>e.id,(e,a)=>{var h=F(),X=H(h);{var Z=m=>{var i=Ze();$e(i),Ee(i,r=>s(c,r),()=>t(c)),f("keydown",i,B),ze("blur",i,w),Be(i,()=>t(d),r=>s(d,r)),g(m,i)},y=m=>{var i=je();let r;var M=l(i),x=l(M,!0);o(M),o(i),I(()=>{r=Q(i,1,"toggle-btn svelte-r6dy5f",null,r,{active:n()==="view"&&U.activeViewId===t(a).id}),ce(x,t(a).name)}),f("click",i,()=>!(n()==="view"&&U.activeViewId===t(a).id)&&_(`/views/${t(a).id}`)),f("contextmenu",i,j=>pe(j,t(a))),g(m,i)};k(X,m=>{t(v)===t(a).id?m(Z):m(y,!1)})}g(e,h)});var O=p(se,2),_e=l(O);Ye(_e,{size:14}),o(O),o(G);var ne=p(G,2),re=l(ne);{var be=e=>{var a=F(),h=H(a);Ie(h,()=>u.right),g(e,a)};k(re,e=>{u.right&&e(be)})}var he=p(re,2);{var ye=e=>{Ne(e,{variant:"accent",size:"icon",class:"chat-toggle",title:"Open Agent",get onclick(){return R.toggle},children:(a,h)=>{Xe(a,{size:14})},$$slots:{default:!0}})};k(he,e=>{R.open||e(ye)})}o(ne),o(Y);var we=p(Y,2);{var xe=e=>{const a=Re(()=>D.views.find(y=>y.id===t($)));var h=F(),X=H(h);{var Z=y=>{var m=qe(),i=H(m),r=p(i,2);let M;var x=l(r),j=l(x);Ge(j,{size:12}),W(),o(x);var q=p(x,2),Ve=l(q);Ke(Ve,{size:12}),W(),o(q),o(r),I(()=>M=Pe(r,"",M,{left:`${t(N).x??""}px`,top:`${t(N).y??""}px`})),f("click",i,S),f("click",r,C=>C.stopPropagation()),f("click",x,()=>{const C=t(a);S(),T(C)}),f("click",q,()=>{const C=t(a);ge(C)}),g(y,m)};k(X,y=>{t(a)&&y(Z)})}g(e,h)};k(we,e=>{t($)&&e(xe)})}I(()=>{ae=Q(K,1,"toggle-btn svelte-r6dy5f",null,ae,{active:n()==="entity"}),ie=Q(L,1,"toggle-btn svelte-r6dy5f",null,ie,{active:n()==="graph"})}),f("click",K,()=>n()!=="entity"&&_(U.entityPath??"/")),f("click",L,()=>n()!=="graph"&&_("/graph")),f("click",O,A),g(E,te),me()}ke(["click","keydown","contextmenu"]);export{dt as V};