studiograph 1.3.48-next.12 → 1.3.48-next.14

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 (48) hide show
  1. package/dist/agent/skills/entity-schema.md +3 -3
  2. package/dist/agent/skills/interview/question-domains.md +4 -4
  3. package/dist/core/workspace-manager.js +49 -27
  4. package/dist/core/workspace-manager.js.map +1 -1
  5. package/dist/server/routes/chat.js +14 -1
  6. package/dist/server/routes/chat.js.map +1 -1
  7. package/dist/services/image-import-service.js +12 -1
  8. package/dist/services/image-import-service.js.map +1 -1
  9. package/dist/web/_app/immutable/assets/{4.l58rg7IM.css → 4.BjPwtpNd.css} +1 -1
  10. package/dist/web/_app/immutable/chunks/BCCONSiD.js +1 -0
  11. package/dist/web/_app/immutable/chunks/{CgUeLsvq.js → BlKmmQZh.js} +1 -1
  12. package/dist/web/_app/immutable/chunks/Bq3OybiO.js +1 -0
  13. package/dist/web/_app/immutable/chunks/{B4SljvaB.js → Cw4lqwY8.js} +1 -1
  14. package/dist/web/_app/immutable/chunks/{DTPMFMZv.js → D0e5wveG.js} +1 -1
  15. package/dist/web/_app/immutable/chunks/{ZMdGop5e.js → DAdS4xmg.js} +1 -1
  16. package/dist/web/_app/immutable/chunks/{BLbdMKkr.js → DRGJyCmq.js} +2 -2
  17. package/dist/web/_app/immutable/chunks/{tLHXUS7j.js → DVbgtC9B.js} +1 -1
  18. package/dist/web/_app/immutable/chunks/{CgLoXLEq.js → DWxFJ-XL.js} +1 -1
  19. package/dist/web/_app/immutable/chunks/{ubNnwEew.js → Dc8lTFxL.js} +1 -1
  20. package/dist/web/_app/immutable/chunks/{CT1VI3T6.js → I-JpuXOU.js} +1 -1
  21. package/dist/web/_app/immutable/chunks/{DMhAwoSe.js → LVma7zWJ.js} +1 -1
  22. package/dist/web/_app/immutable/chunks/{UrjoFKvi.js → dHWscbdW.js} +1 -1
  23. package/dist/web/_app/immutable/chunks/{D7EA_gW2.js → pGhlTUnf.js} +1 -1
  24. package/dist/web/_app/immutable/entry/{app.4Qh1DgDU.js → app.Bs85EK7U.js} +2 -2
  25. package/dist/web/_app/immutable/entry/start.DMMlXyBT.js +1 -0
  26. package/dist/web/_app/immutable/nodes/{0.BXLVr-88.js → 0.BH-Q-46e.js} +2 -2
  27. package/dist/web/_app/immutable/nodes/{1.yn9JH86O.js → 1.DaJ91VZ1.js} +1 -1
  28. package/dist/web/_app/immutable/nodes/{10.DPHECYax.js → 10.D78lM7xf.js} +1 -1
  29. package/dist/web/_app/immutable/nodes/{11.B5EKhKtx.js → 11.D2wlIvU6.js} +1 -1
  30. package/dist/web/_app/immutable/nodes/{12.7rLaJOrm.js → 12.BbSqGgD4.js} +1 -1
  31. package/dist/web/_app/immutable/nodes/13.Bv4xSOcZ.js +1 -0
  32. package/dist/web/_app/immutable/nodes/{2.CQ3JWRkT.js → 2.e67ksoW7.js} +5 -5
  33. package/dist/web/_app/immutable/nodes/3.CToD4Hpu.js +5 -0
  34. package/dist/web/_app/immutable/nodes/4.B9EllfbO.js +11 -0
  35. package/dist/web/_app/immutable/nodes/{5.OWozwVzE.js → 5.CxVYRry3.js} +1 -1
  36. package/dist/web/_app/immutable/nodes/{6.DOIdvfgD.js → 6.BcNaxErX.js} +1 -1
  37. package/dist/web/_app/immutable/nodes/{7.BnY_vQG-.js → 7.CQn3tCcd.js} +1 -1
  38. package/dist/web/_app/immutable/nodes/{8.CiUGK3BM.js → 8.DFQjdwk9.js} +1 -1
  39. package/dist/web/_app/immutable/nodes/{9.CgXcA0V4.js → 9.BIsdhRlV.js} +1 -1
  40. package/dist/web/_app/version.json +1 -1
  41. package/dist/web/index.html +6 -6
  42. package/package.json +1 -1
  43. package/dist/web/_app/immutable/chunks/BURuPSds.js +0 -1
  44. package/dist/web/_app/immutable/chunks/D6tSMjZN.js +0 -1
  45. package/dist/web/_app/immutable/entry/start.CUthDRuo.js +0 -1
  46. package/dist/web/_app/immutable/nodes/13.adhwFALd.js +0 -1
  47. package/dist/web/_app/immutable/nodes/3.Ba5Dfn9z.js +0 -5
  48. package/dist/web/_app/immutable/nodes/4.rIIHq11q.js +0 -11
@@ -33,7 +33,7 @@ Every entity inherits these fields. They are auto-populated by the system on cre
33
33
  | `visibility` | enum | No | `public` \| `team` (default) \| `admin` \| `restricted` |
34
34
  | `restricted_to` | string[] | No | User IDs (when visibility=restricted) |
35
35
  | `sensitive_fields` | string[] | No | Fields containing sensitive data |
36
- | `tags` | string[] | No | Categorization tags |
36
+ | `tags` | string[] | No | Categorization tags (Title Case, except acronyms which stay uppercase: e.g., "AI", "UI Design", "B2B", "Dashboard") |
37
37
 
38
38
  Schemas use `.passthrough()` — custom fields beyond the schema are preserved.
39
39
 
@@ -455,8 +455,8 @@ team:
455
455
  - "[[alice-smith]]"
456
456
  - "[[jamie-torres]]"
457
457
  tags:
458
- - website
459
- - redesign
458
+ - Website
459
+ - Redesign
460
460
  created_at: "2026-01-15T00:00:00Z"
461
461
  updated_at: "2026-02-20T00:00:00Z"
462
462
  created_by: alice-smith
@@ -215,7 +215,7 @@ Weekly rhythm of meetings and check-ins.
215
215
  entity_type: note
216
216
  entity_id: tools-and-systems
217
217
  name: Tools & Systems
218
- tags: [tool, reference]
218
+ tags: [Tool, Reference]
219
219
  ---
220
220
  ## Design
221
221
  - **Figma** — primary design tool, also used for AI-generated designs via Claude Code
@@ -252,7 +252,7 @@ tags: [tool, reference]
252
252
  entity_type: practice-area
253
253
  entity_id: data-visualization
254
254
  name: Data Visualization
255
- tags: [core-capability]
255
+ tags: [Core Capability]
256
256
  ---
257
257
  Core focus of the firm since founding. Creating interactive, designed encounters with data — not just static charts but full data experiences for museums, enterprises, and public platforms.
258
258
  ```
@@ -275,7 +275,7 @@ Core focus of the firm since founding. Creating interactive, designed encounters
275
275
  entity_type: note
276
276
  entity_id: goals-2026-h1
277
277
  name: Goals — 2026 H1
278
- tags: [goals, strategy]
278
+ tags: [Goals, Strategy]
279
279
  ---
280
280
  ## Primary Goals
281
281
  - Keep the team 80%+ billable
@@ -307,7 +307,7 @@ tags: [goals, strategy]
307
307
  entity_type: guideline
308
308
  entity_id: communication-style
309
309
  name: Communication Style
310
- tags: [communication, standards]
310
+ tags: [Communication, Standards]
311
311
  ---
312
312
  ## Overview
313
313
  Honest, authentic, to the point. Empathetic to client needs without being soft. Not too formal, not too casual. Relatively terse. Service-oriented.
@@ -93,39 +93,36 @@ export class WorkspaceManager {
93
93
  console.warn(`Repository path does not exist: ${repoPath} (skipping)`);
94
94
  continue;
95
95
  }
96
- // Private repos get no assets or vector service
97
96
  let assetConfig;
98
- if (!repo.private) {
99
- if (this.config.r2_config?.account_id && this.config.r2_config?.bucket) {
100
- const uc = loadUserConfig();
101
- assetConfig = {
102
- storage: 'r2',
103
- r2Config: {
104
- accountId: this.config.r2_config.account_id,
105
- bucket: this.config.r2_config.bucket,
106
- publicUrl: this.config.r2_config.public_url,
107
- accessKeyId: this.config.r2_config.access_key_id
108
- || uc.r2?.access_key_id
109
- || process.env.R2_ACCESS_KEY_ID || '',
110
- secretAccessKey: this.config.r2_config.secret_access_key
111
- || uc.r2?.secret_access_key
112
- || process.env.R2_SECRET_ACCESS_KEY || '',
113
- },
114
- };
115
- }
116
- else {
117
- assetConfig = {
118
- storage: 'local',
119
- localPath: join(this.workspacePath, '.studiograph', 'assets'),
120
- };
121
- }
97
+ if (this.config.r2_config?.account_id && this.config.r2_config?.bucket) {
98
+ const uc = loadUserConfig();
99
+ assetConfig = {
100
+ storage: 'r2',
101
+ r2Config: {
102
+ accountId: this.config.r2_config.account_id,
103
+ bucket: this.config.r2_config.bucket,
104
+ publicUrl: this.config.r2_config.public_url,
105
+ accessKeyId: this.config.r2_config.access_key_id
106
+ || uc.r2?.access_key_id
107
+ || process.env.R2_ACCESS_KEY_ID || '',
108
+ secretAccessKey: this.config.r2_config.secret_access_key
109
+ || uc.r2?.secret_access_key
110
+ || process.env.R2_SECRET_ACCESS_KEY || '',
111
+ },
112
+ };
113
+ }
114
+ else {
115
+ assetConfig = {
116
+ storage: 'local',
117
+ localPath: join(this.workspacePath, '.studiograph', 'assets'),
118
+ };
122
119
  }
123
120
  const graph = new BaseGraphManager({
124
121
  repoPath,
125
122
  repoName: repo.name,
126
123
  assetConfig,
127
124
  gitUser: this.gitUser,
128
- vectorService: repo.private ? undefined : this.vectorService,
125
+ vectorService: this.vectorService,
129
126
  schemaRegistry: this.schemaRegistry,
130
127
  });
131
128
  this.graphs.set(repo.name, graph);
@@ -157,11 +154,36 @@ export class WorkspaceManager {
157
154
  const repoPath = join(this.workspacePath, repo.path);
158
155
  if (!existsSync(repoPath))
159
156
  continue;
157
+ let refreshAssetConfig;
158
+ if (this.config.r2_config?.account_id && this.config.r2_config?.bucket) {
159
+ const uc = loadUserConfig();
160
+ refreshAssetConfig = {
161
+ storage: 'r2',
162
+ r2Config: {
163
+ accountId: this.config.r2_config.account_id,
164
+ bucket: this.config.r2_config.bucket,
165
+ publicUrl: this.config.r2_config.public_url,
166
+ accessKeyId: this.config.r2_config.access_key_id
167
+ || uc.r2?.access_key_id
168
+ || process.env.R2_ACCESS_KEY_ID || '',
169
+ secretAccessKey: this.config.r2_config.secret_access_key
170
+ || uc.r2?.secret_access_key
171
+ || process.env.R2_SECRET_ACCESS_KEY || '',
172
+ },
173
+ };
174
+ }
175
+ else {
176
+ refreshAssetConfig = {
177
+ storage: 'local',
178
+ localPath: join(this.workspacePath, '.studiograph', 'assets'),
179
+ };
180
+ }
160
181
  const graph = new BaseGraphManager({
161
182
  repoPath,
162
183
  repoName: repo.name,
184
+ assetConfig: refreshAssetConfig,
163
185
  gitUser: this.gitUser,
164
- vectorService: repo.private ? undefined : this.vectorService,
186
+ vectorService: this.vectorService,
165
187
  schemaRegistry: this.schemaRegistry,
166
188
  });
167
189
  this.graphs.set(repo.name, graph);
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-manager.js","sourceRoot":"","sources":["../../src/core/workspace-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-manager.js","sourceRoot":"","sources":["../../src/core/workspace-manager.ts"],"names":[],"mappings":"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"}
@@ -38,9 +38,22 @@ export async function registerChatRoutes(fastify, agent, memoryService) {
38
38
  reply.raw.setHeader('Cache-Control', 'no-cache');
39
39
  reply.raw.setHeader('Connection', 'keep-alive');
40
40
  reply.raw.flushHeaders();
41
+ let streamDead = false;
41
42
  const sendEvent = (data) => {
42
- reply.raw.write(`data: ${JSON.stringify(data)}\n\n`);
43
+ if (streamDead || !reply.raw.writable) {
44
+ streamDead = true;
45
+ return;
46
+ }
47
+ try {
48
+ reply.raw.write(`data: ${JSON.stringify(data)}\n\n`);
49
+ }
50
+ catch {
51
+ streamDead = true;
52
+ }
43
53
  };
54
+ // Detect client disconnect
55
+ reply.raw.on('close', () => { streamDead = true; });
56
+ reply.raw.on('error', () => { streamDead = true; });
44
57
  try {
45
58
  const response = await agent.getPool().withAgent(resolvedSessionId, {
46
59
  user,
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/server/routes/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/server/routes/chat.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,17 @@ export async function importImages(graph, files, user) {
26
26
  const result = { created: 0, skipped: 0, errors: [] };
27
27
  if (files.length === 0)
28
28
  return result;
29
+ // Verify asset service is available before creating any entities
30
+ try {
31
+ await graph.listAssets('reference', '__check__');
32
+ }
33
+ catch (err) {
34
+ if (err.message?.includes('not configured')) {
35
+ result.errors.push('Image uploads are not available. Asset storage is not configured.');
36
+ return result;
37
+ }
38
+ // Other errors (e.g., entity not found) are fine — means the service IS configured
39
+ }
29
40
  // Track IDs used in this batch to handle collisions
30
41
  const existing = graph.list('reference');
31
42
  const usedIds = new Set(existing.map(e => e.data.entity_id));
@@ -47,7 +58,7 @@ export async function importImages(graph, files, user) {
47
58
  entity_id: entityId,
48
59
  name: name || baseName,
49
60
  source: 'image-import',
50
- tags: ['image'],
61
+ tags: ['Image'],
51
62
  created_at: now,
52
63
  updated_at: now,
53
64
  created_by: user?.id ?? 'import',
@@ -1 +1 @@
1
- {"version":3,"file":"image-import-service.js","sourceRoot":"","sources":["../../src/services/image-import-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-import-service.js","sourceRoot":"","sources":["../../src/services/image-import-service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- .property-row.svelte-eh8ho9{position:relative;display:grid;grid-template-columns:20px 130px 1fr;align-items:start;gap:10px;padding:5px 8px;margin:0 -8px;border-radius:4px;min-height:30px}.row-editable.svelte-eh8ho9{cursor:pointer}.row-editable.svelte-eh8ho9:hover{background:var(--color-bg-hover)}.prop-icon.svelte-eh8ho9{display:flex;align-items:center;justify-content:center;height:24px;color:var(--color-text-tertiary)}.prop-key.svelte-eh8ho9{font-size:14px;line-height:24px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prop-value.svelte-eh8ho9{font-size:14px;color:var(--color-text-primary);display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;min-width:0}.dot.svelte-eh8ho9{width:6px;height:6px;border-radius:50%;flex-shrink:0;align-self:center}.empty-hint.svelte-eh8ho9{color:var(--color-text-tertiary)}.text-value.svelte-eh8ho9{word-break:break-word;line-height:1.5}.wikilink-chip.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 14px;font-size:13px;font-family:inherit;border-radius:9999px;border:none}.wikilink-active.svelte-eh8ho9{background:color-mix(in srgb,var(--color-accent) 17%,transparent);color:var(--color-text-primary);cursor:pointer}.wikilink-active.svelte-eh8ho9:hover{background:color-mix(in srgb,var(--color-accent) 27%,transparent)}.wikilink-inactive.svelte-eh8ho9{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.tag-pill.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 14px;font-size:13px;font-family:inherit;border-radius:9999px;background:var(--color-bg-surface);color:var(--color-text-secondary)}.url-link.svelte-eh8ho9{color:var(--color-link, var(--color-accent));text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.url-link.svelte-eh8ho9:hover{text-decoration:underline}.badge-value.svelte-eh8ho9{display:inline-flex;padding:2px 8px;font-size:12px;border-radius:4px;background:var(--color-bg-surface);color:var(--color-text-secondary)}.edit-btn.svelte-eh8ho9{all:unset;position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:var(--color-text-tertiary);cursor:pointer;opacity:0;transition:opacity .1s}.property-row.svelte-eh8ho9:hover .edit-btn:where(.svelte-eh8ho9){opacity:1}.edit-btn.svelte-eh8ho9:hover{color:var(--color-text-primary);background:var(--color-bg-surface)}.autocomplete-wrapper.svelte-84vb17{width:100%}.input-area.svelte-84vb17{border:1px solid var(--color-border);border-radius:6px;overflow:hidden;transition:border-color .15s}.input-area.has-results.svelte-84vb17{border-color:var(--color-accent)}.input-container.svelte-84vb17{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:36px;padding:4px 8px;cursor:text}.chip.svelte-84vb17{all:unset;display:inline-flex;align-items:center;gap:4px;padding:2px 12px;border-radius:9999px;font-size:13px;background:color-mix(in srgb,var(--color-accent) 17%,transparent);color:var(--color-text-secondary);cursor:pointer;flex-shrink:0}.chip.svelte-84vb17:hover{background:color-mix(in srgb,var(--color-accent) 27%,transparent);color:var(--color-text-primary)}.chip.chip-inactive.svelte-84vb17{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.input-wrap.svelte-84vb17{display:flex;align-items:center;gap:6px;flex:1;min-width:80px}.search-icon-wrap.svelte-84vb17{color:var(--color-text-tertiary);display:flex;align-items:center;flex-shrink:0}.ac-input{flex:1;min-width:60px;height:24px;padding:0;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none}.results-list{border-top:1px solid var(--color-border);max-height:200px;overflow-y:auto;padding:4px}.combobox-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;outline:none}.combobox-item[data-highlighted]{background:var(--color-bg-hover)}.entity-title.svelte-84vb17{font-size:14px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.entity-type-label.svelte-84vb17{font-size:12px;color:var(--color-text-tertiary);flex-shrink:0}.combobox-hint.svelte-84vb17{padding:8px;font-size:13px;color:var(--color-text-tertiary)}.field-edit-form.svelte-1ez75tk{display:flex;flex-direction:column;gap:16px}.form-row.svelte-1ez75tk{display:flex;flex-direction:column;gap:6px}.form-label.svelte-1ez75tk{font-size:12px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.form-textarea.svelte-1ez75tk{font-size:14px;font-family:inherit;color:var(--color-text-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:8px 10px;resize:vertical;outline:none;line-height:1.5;field-sizing:content;min-height:60px}.form-textarea.svelte-1ez75tk:focus{border-color:var(--color-accent)}.form-error.svelte-1ez75tk{font-size:12px;color:var(--color-danger, #e05050)}.status-dot.svelte-1ez75tk{width:6px;height:6px;border-radius:50%;flex-shrink:0}.item-label{display:inline-flex;align-items:center;gap:6px;flex:1}.type-warning.svelte-1ez75tk{font-size:13px;line-height:1.4;color:var(--color-danger, #e05050);margin:0}.inline-type-list.svelte-1ez75tk{border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg, #fff);max-height:300px;overflow-y:auto;padding:4px}.type-option.svelte-1ez75tk{all:unset;display:flex;align-items:center;gap:6px;width:100%;height:36px;padding:0 10px;border-radius:4px;font-size:14px;font-family:inherit;color:var(--color-text-secondary);cursor:pointer;box-sizing:border-box}.type-option.svelte-1ez75tk:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.type-option.type-selected.svelte-1ez75tk{background:var(--color-bg-hover);color:var(--color-text-primary);font-weight:500}.type-check{margin-left:auto;color:var(--color-accent, #e05050);flex-shrink:0}.delete-btn{color:var(--color-danger, #e05050)!important;margin-right:auto!important}.footer-right.svelte-1ez75tk{display:flex;gap:8px;margin-left:auto}.inline-calendar.svelte-1ez75tk{display:flex;flex-direction:column;gap:8px}.cal-container.svelte-1ez75tk{border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg, #fff);overflow:hidden}.cal-text-input.svelte-1ez75tk{width:100%;padding:8px 10px;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;border-bottom:1px solid var(--color-border);outline:none;box-sizing:border-box}.cal-text-input.svelte-1ez75tk:focus{border-bottom-color:var(--color-accent)}.cal-text-input.svelte-1ez75tk::placeholder{color:var(--color-text-tertiary)}.cal-body.svelte-1ez75tk{padding:10px}.cal-header.svelte-1ez75tk{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.cal-heading{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cal-nav-btn{all:unset;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:var(--color-text-secondary);cursor:pointer}.cal-nav-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.cal-nav-btn[data-disabled]{opacity:.3;pointer-events:none}.cal-grid{border-collapse:collapse;width:100%}.cal-grid-row{display:flex}.cal-head-cell{flex:1;height:28px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase}.cal-cell{flex:1;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.cal-day{all:unset;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:13px;border-radius:8px;color:var(--color-text-primary);cursor:pointer;transition:background .1s}.cal-day:hover{background:var(--color-bg-hover)}.cal-day[data-selected]{background:var(--color-accent);color:#fff;font-weight:600}.cal-day[data-today]:not([data-selected]){border:1px solid var(--color-accent)}.cal-day[data-outside-month]{color:var(--color-text-tertiary);opacity:.4}.cal-day[data-disabled]{opacity:.2;pointer-events:none}.entity-properties.svelte-1a2lez6{padding:16px 0 8px;border-bottom:1px solid var(--color-border)}.name-headline.svelte-1a2lez6{display:flex;align-items:flex-start;margin:32px 0 20px;cursor:text}.name-headline.has-checkbox.svelte-1a2lez6{gap:10px}.task-checkbox{margin-top:7px;margin-left:2px;flex-shrink:0}.task-done.svelte-1a2lez6 .name-input:where(.svelte-1a2lez6){text-decoration:line-through;color:var(--color-text-tertiary)}.name-input.svelte-1a2lez6{font-size:22px;font-weight:600;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;width:100%;line-height:1.3;padding:0;resize:none;overflow:hidden;display:block}.meeting-date.svelte-1a2lez6,.task-due-date.svelte-1a2lez6{font-size:15px;color:var(--color-text-secondary);margin:-12px 0 20px}.task-due-date.svelte-1a2lez6{padding-left:28px}.task-due-date.overdue.svelte-1a2lez6{color:var(--color-danger, #e05050)}.inline-meta.svelte-1a2lez6{position:relative;display:flex;align-items:center;gap:10px;padding:4px 8px;margin:0 -8px}.fields-chevron.svelte-1a2lez6{all:unset;display:inline-flex;align-items:center;justify-content:center;width:20px;color:var(--color-text-tertiary);cursor:pointer;transition:transform .15s}.fields-chevron.svelte-1a2lez6:hover{color:var(--color-text-secondary)}.fields-chevron.fields-open.svelte-1a2lez6{transform:rotate(90deg)}.inline-collection-link.svelte-1a2lez6{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary);text-decoration:none}.inline-collection-link.svelte-1a2lez6:hover{color:var(--color-text-primary)}.entity-overflow-btn{all:unset;position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:var(--color-text-tertiary);cursor:pointer}.entity-overflow-btn:hover{color:var(--color-text-primary);background:var(--color-bg-surface)}.entity-overflow-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:6px;padding:4px;min-width:var(--menu-min-width);z-index:100}.entity-overflow-item{display:flex;align-items:center;gap:8px;min-height:var(--menu-item-height);padding:var(--menu-item-padding);font-size:var(--menu-font-size);border-radius:var(--menu-item-radius);cursor:pointer;color:var(--color-text-secondary)}.entity-overflow-item:hover{background:var(--color-bg-hover)}.entity-overflow-danger{color:var(--color-danger, #e05050)}.entity-overflow-sep{height:1px;background:var(--color-border);margin:4px 0}.entity-overflow-danger:hover{background:var(--color-danger, #e05050);color:#fff}.fields-action-btn.svelte-1a2lez6{all:unset;display:inline-flex;margin-left:30px;font-size:13px;font-family:inherit;color:var(--color-text-tertiary);cursor:pointer;padding:6px 0;margin-top:4px}.fields-action-btn.svelte-1a2lez6:hover{color:var(--color-text-secondary)}.fields-list.svelte-1a2lez6{margin-top:12px}.dotted-item{display:flex!important;align-items:center!important;gap:8px!important}.dialog-desc.svelte-1a2lez6{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px}.dialog-radio-item.svelte-1a2lez6{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--color-text-primary)}.dialog-check-item.svelte-1a2lez6{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--color-text-primary);cursor:pointer;border-radius:4px}.dialog-check-item.svelte-1a2lez6:hover{background:var(--color-bg-hover)}.connections-panel.svelte-16xienp{margin:48px 0 40px;padding-top:16px;border-top:1px solid var(--color-border)}.connections-header.svelte-16xienp{display:flex;align-items:baseline;gap:10px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-secondary);cursor:pointer;padding:4px 8px;margin:0 -8px}.connections-header.svelte-16xienp:hover{color:var(--color-text-primary)}.header-chevron.svelte-16xienp{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s;transform:rotate(90deg)}.header-chevron.collapsed.svelte-16xienp{transform:rotate(0)}.header-label.svelte-16xienp{font-weight:400}.header-count.svelte-16xienp{font-size:12px;color:var(--color-text-tertiary)}.connections-body.svelte-16xienp{display:flex;flex-direction:column;gap:0;margin-top:8px}.connection-chip.svelte-16xienp{display:flex;align-items:baseline;gap:8px;padding:6px 8px;background:none;border:none;border-radius:4px;font-family:inherit;font-size:13px;color:var(--color-text-primary);cursor:pointer;text-align:left}.connection-chip.svelte-16xienp:hover{background:var(--color-bg-hover)}.chip-dot.svelte-16xienp{width:6px;height:6px;border-radius:50%;flex-shrink:0;align-self:center}.chip-name.svelte-16xienp{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-type.svelte-16xienp{font-size:12px;color:var(--color-text-tertiary);flex-shrink:0}.history-panel.svelte-1wxto27{border-top:1px solid var(--color-border);margin-top:8px;padding-top:16px;margin-bottom:40px}.history-header.svelte-1wxto27{display:flex;align-items:baseline;gap:10px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-secondary);cursor:pointer;padding:4px 8px;margin:0 -8px}.history-header.svelte-1wxto27:hover{color:var(--color-text-primary)}.header-chevron.svelte-1wxto27{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s;transform:rotate(90deg)}.header-chevron.collapsed.svelte-1wxto27{transform:rotate(0)}.header-label.svelte-1wxto27{font-weight:400}.header-count.svelte-1wxto27{font-size:12px;color:var(--color-text-tertiary)}.history-body.svelte-1wxto27{display:flex;flex-direction:column;margin-top:8px}.history-loading.svelte-1wxto27{padding:8px 0;font-size:13px;color:var(--color-text-tertiary)}.history-entry.svelte-1wxto27{display:flex;align-items:flex-start;gap:8px;padding:6px 8px}.entry-dot.svelte-1wxto27{width:6px;height:6px;border-radius:50%;background:var(--color-text-tertiary);flex-shrink:0;margin-top:8px}.history-entry.first.svelte-1wxto27 .entry-dot:where(.svelte-1wxto27){background:var(--color-accent)}.entry-content.svelte-1wxto27{flex:1;min-width:0}.entry-message.svelte-1wxto27{font-size:13px;color:var(--color-text-primary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-meta.svelte-1wxto27{display:flex;gap:8px;margin-top:2px;font-size:12px;color:var(--color-text-tertiary)}.editor-wrap.svelte-ok7wy5{display:flex;min-height:0;position:relative}.cm-container.svelte-ok7wy5{flex:1;min-height:100px}.cm-container.svelte-ok7wy5 .cm-editor{min-height:100px;outline:none}.cm-container.svelte-ok7wy5 .cm-scroller{overflow:visible!important}.cursor-overlay.svelte-ok7wy5{position:absolute;inset:0;pointer-events:none;overflow:hidden}.remote-cursor.svelte-ok7wy5{position:absolute;width:2px;background-color:var(--cursor-color);z-index:10}.remote-cursor-label.svelte-ok7wy5{position:absolute;top:-1.4em;left:-1px;font-size:12px;font-family:var(--font-sans);font-weight:500;padding:0 4px;border-radius:3px 3px 3px 0;white-space:nowrap;line-height:1.5;color:#fff}.flipped.svelte-ok7wy5 .remote-cursor-label:where(.svelte-ok7wy5){left:auto;right:-1px;border-radius:3px 3px 0}.csv-editor.svelte-63hltt{padding:32px 16px 0}.table-scroll.svelte-63hltt{overflow-x:auto}table.svelte-63hltt{border-collapse:collapse;width:max-content;font-size:14px;font-family:var(--font-sans)}th.svelte-63hltt,td.svelte-63hltt{border:1px solid var(--color-border);padding:0;height:32px;min-width:120px;max-width:300px}th.svelte-63hltt{background:transparent;font-weight:500;color:var(--color-text-secondary);position:sticky;top:0;z-index:1}th.svelte-63hltt:not(.row-num):not(.col-add){position:sticky;top:0;z-index:1}.row-num.svelte-63hltt{width:40px;min-width:40px;max-width:40px;text-align:center;color:var(--color-text-tertiary);font-size:12px;background:transparent}.cell-input.svelte-63hltt{width:100%;height:100%;border:none;background:transparent;color:var(--color-text-primary);font-family:var(--font-sans);font-size:14px;padding:4px 8px;outline:none}.cell-input.svelte-63hltt:focus{outline:1px solid var(--color-accent);outline-offset:-1px}.header-input.svelte-63hltt{font-weight:500;color:var(--color-text-secondary)}th.svelte-63hltt:not(.row-num):not(.col-add){position:relative}th.svelte-63hltt .col-delete-btn{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:18px;height:18px;display:none;background:var(--color-bg-hover);border-radius:3px;padding:0}th.svelte-63hltt:hover .col-delete-btn{display:flex}th.svelte-63hltt .col-delete-btn:hover{color:var(--color-destructive);background:var(--color-bg-selected)}.col-add.svelte-63hltt{width:28px;min-width:28px;max-width:28px;background:transparent}.col-add.svelte-63hltt .col-add-btn{width:100%;height:100%;border-radius:0;padding:0}.col-add.svelte-63hltt .col-add-btn:hover{color:var(--color-accent)}.actions.svelte-63hltt{width:28px;min-width:28px;max-width:28px;text-align:center}.actions.svelte-63hltt .delete-btn{display:none;width:18px;height:18px;padding:0;margin:0 auto;background:var(--color-bg-hover);border-radius:3px}tr.svelte-63hltt:hover .delete-btn{display:flex}tr.svelte-63hltt .delete-btn:hover{color:var(--color-destructive);background:var(--color-bg-selected)}.csv-footer.svelte-63hltt{display:flex;align-items:center;gap:16px;padding:8px 0}.csv-footer.svelte-63hltt .add-row-btn{font-size:14px}.remote-active.svelte-63hltt{outline:2px solid var(--rc-color, #e05050);outline-offset:-2px;position:relative}.remote-cell-label.svelte-63hltt{position:absolute;top:-18px;left:-1px;font-size:11px;font-family:var(--font-sans);font-weight:500;padding:0 4px;border-radius:3px 3px 3px 0;white-space:nowrap;line-height:1.6;color:#fff;z-index:2;pointer-events:none}.document-scroll.svelte-udj3er{flex:1;overflow-y:auto;min-height:0}.document-well.svelte-udj3er{max-width:720px;margin:0 auto;padding:0 40px;width:100%;box-sizing:border-box}.dataset-view.svelte-udj3er .entity-properties{border-bottom:none}.dataset-view.svelte-udj3er .connections-panel{border-top:none}.processing-indicator.svelte-udj3er{display:flex;align-items:center;gap:8px;max-width:720px;margin:0 auto;padding:12px 40px;font-size:14px;color:var(--color-text-secondary)}.processing-dot.svelte-udj3er{width:8px;height:8px;border-radius:50%;background:var(--color-accent);animation:svelte-udj3er-pulse 1.5s ease-in-out infinite}@keyframes svelte-udj3er-pulse{0%,to{opacity:1}50%{opacity:.3}}
1
+ .property-row.svelte-eh8ho9{position:relative;display:grid;grid-template-columns:20px 130px 1fr;align-items:start;gap:10px;padding:5px 8px;margin:0 -8px;border-radius:4px;min-height:30px}.row-editable.svelte-eh8ho9{cursor:pointer}.row-editable.svelte-eh8ho9:hover{background:var(--color-bg-hover)}.prop-icon.svelte-eh8ho9{display:flex;align-items:center;justify-content:center;height:24px;color:var(--color-text-tertiary)}.prop-key.svelte-eh8ho9{font-size:14px;line-height:24px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prop-value.svelte-eh8ho9{font-size:14px;color:var(--color-text-primary);display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;min-width:0}.dot.svelte-eh8ho9{width:6px;height:6px;border-radius:50%;flex-shrink:0;align-self:center}.empty-hint.svelte-eh8ho9{color:var(--color-text-tertiary)}.text-value.svelte-eh8ho9{word-break:break-word;line-height:1.5}.wikilink-chip.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 14px;font-size:13px;font-family:inherit;border-radius:9999px;border:none}.wikilink-active.svelte-eh8ho9{background:color-mix(in srgb,var(--color-accent) 17%,transparent);color:var(--color-text-primary);cursor:pointer}.wikilink-active.svelte-eh8ho9:hover{background:color-mix(in srgb,var(--color-accent) 27%,transparent)}.wikilink-inactive.svelte-eh8ho9{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.tag-pill.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 14px;font-size:13px;font-family:inherit;border-radius:9999px;background:var(--color-bg-surface);color:var(--color-text-secondary)}.url-link.svelte-eh8ho9{color:var(--color-link, var(--color-accent));text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.url-link.svelte-eh8ho9:hover{text-decoration:underline}.badge-value.svelte-eh8ho9{display:inline-flex;padding:2px 8px;font-size:12px;border-radius:4px;background:var(--color-bg-surface);color:var(--color-text-secondary)}.edit-btn.svelte-eh8ho9{all:unset;position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:var(--color-text-tertiary);cursor:pointer;opacity:0;transition:opacity .1s}.property-row.svelte-eh8ho9:hover .edit-btn:where(.svelte-eh8ho9){opacity:1}.edit-btn.svelte-eh8ho9:hover{color:var(--color-text-primary);background:var(--color-bg-surface)}.autocomplete-wrapper.svelte-84vb17{width:100%}.input-area.svelte-84vb17{border:1px solid var(--color-border);border-radius:6px;overflow:hidden;transition:border-color .15s}.input-area.has-results.svelte-84vb17{border-color:var(--color-accent)}.input-container.svelte-84vb17{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:36px;padding:4px 8px;cursor:text}.chip.svelte-84vb17{all:unset;display:inline-flex;align-items:center;gap:4px;padding:2px 12px;border-radius:9999px;font-size:13px;background:color-mix(in srgb,var(--color-accent) 17%,transparent);color:var(--color-text-secondary);cursor:pointer;flex-shrink:0}.chip.svelte-84vb17:hover{background:color-mix(in srgb,var(--color-accent) 27%,transparent);color:var(--color-text-primary)}.chip.chip-inactive.svelte-84vb17{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.input-wrap.svelte-84vb17{display:flex;align-items:center;gap:6px;flex:1;min-width:80px}.search-icon-wrap.svelte-84vb17{color:var(--color-text-tertiary);display:flex;align-items:center;flex-shrink:0}.ac-input{flex:1;min-width:60px;height:24px;padding:0;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none}.results-list{border-top:1px solid var(--color-border);max-height:200px;overflow-y:auto;padding:4px}.combobox-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;outline:none}.combobox-item[data-highlighted]{background:var(--color-bg-hover)}.entity-title.svelte-84vb17{font-size:14px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.entity-type-label.svelte-84vb17{font-size:12px;color:var(--color-text-tertiary);flex-shrink:0}.combobox-hint.svelte-84vb17{padding:8px;font-size:13px;color:var(--color-text-tertiary)}.field-edit-form.svelte-1ez75tk{display:flex;flex-direction:column;gap:16px}.form-row.svelte-1ez75tk{display:flex;flex-direction:column;gap:6px}.form-label.svelte-1ez75tk{font-size:12px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.form-textarea.svelte-1ez75tk{font-size:14px;font-family:inherit;color:var(--color-text-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:8px 10px;resize:vertical;outline:none;line-height:1.5;field-sizing:content;min-height:60px}.form-textarea.svelte-1ez75tk:focus{border-color:var(--color-accent)}.form-error.svelte-1ez75tk{font-size:12px;color:var(--color-danger, #e05050)}.status-dot.svelte-1ez75tk{width:6px;height:6px;border-radius:50%;flex-shrink:0}.item-label{display:inline-flex;align-items:center;gap:6px;flex:1}.type-warning.svelte-1ez75tk{font-size:13px;line-height:1.4;color:var(--color-danger, #e05050);margin:0}.inline-type-list.svelte-1ez75tk{border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg, #fff);max-height:300px;overflow-y:auto;padding:4px}.type-option.svelte-1ez75tk{all:unset;display:flex;align-items:center;gap:6px;width:100%;height:36px;padding:0 10px;border-radius:4px;font-size:14px;font-family:inherit;color:var(--color-text-secondary);cursor:pointer;box-sizing:border-box}.type-option.svelte-1ez75tk:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.type-option.type-selected.svelte-1ez75tk{background:var(--color-bg-hover);color:var(--color-text-primary);font-weight:500}.type-check{margin-left:auto;color:var(--color-accent, #e05050);flex-shrink:0}.delete-btn{color:var(--color-danger, #e05050)!important;margin-right:auto!important}.footer-right.svelte-1ez75tk{display:flex;gap:8px;margin-left:auto}.inline-calendar.svelte-1ez75tk{display:flex;flex-direction:column;gap:8px}.cal-container.svelte-1ez75tk{border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg, #fff);overflow:hidden}.cal-text-input.svelte-1ez75tk{width:100%;padding:8px 10px;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;border-bottom:1px solid var(--color-border);outline:none;box-sizing:border-box}.cal-text-input.svelte-1ez75tk:focus{border-bottom-color:var(--color-accent)}.cal-text-input.svelte-1ez75tk::placeholder{color:var(--color-text-tertiary)}.cal-body.svelte-1ez75tk{padding:10px}.cal-header.svelte-1ez75tk{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.cal-heading{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cal-nav-btn{all:unset;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:var(--color-text-secondary);cursor:pointer}.cal-nav-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.cal-nav-btn[data-disabled]{opacity:.3;pointer-events:none}.cal-grid{border-collapse:collapse;width:100%}.cal-grid-row{display:flex}.cal-head-cell{flex:1;height:28px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase}.cal-cell{flex:1;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.cal-day{all:unset;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:13px;border-radius:8px;color:var(--color-text-primary);cursor:pointer;transition:background .1s}.cal-day:hover{background:var(--color-bg-hover)}.cal-day[data-selected]{background:var(--color-accent);color:#fff;font-weight:600}.cal-day[data-today]:not([data-selected]){border:1px solid var(--color-accent)}.cal-day[data-outside-month]{color:var(--color-text-tertiary);opacity:.4}.cal-day[data-disabled]{opacity:.2;pointer-events:none}.entity-properties.svelte-1a2lez6{padding:16px 0 8px;border-bottom:1px solid var(--color-border)}.name-headline.svelte-1a2lez6{display:flex;align-items:flex-start;margin:32px 0 20px;cursor:text}.name-headline.has-checkbox.svelte-1a2lez6{gap:10px}.task-checkbox{margin-top:7px;margin-left:2px;flex-shrink:0}.task-done.svelte-1a2lez6 .name-input:where(.svelte-1a2lez6){text-decoration:line-through;color:var(--color-text-tertiary)}.name-input.svelte-1a2lez6{font-size:22px;font-weight:600;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;width:100%;line-height:1.3;padding:0;resize:none;overflow:hidden;display:block}.meeting-date.svelte-1a2lez6,.task-due-date.svelte-1a2lez6{font-size:15px;color:var(--color-text-secondary);margin:-12px 0 20px}.task-due-date.svelte-1a2lez6{padding-left:28px}.task-due-date.overdue.svelte-1a2lez6{color:var(--color-danger, #e05050)}.inline-meta.svelte-1a2lez6{position:relative;display:flex;align-items:center;gap:10px;padding:4px 8px;margin:0 -8px}.fields-chevron.svelte-1a2lez6{all:unset;display:inline-flex;align-items:center;justify-content:center;width:20px;color:var(--color-text-tertiary);cursor:pointer;transition:transform .15s}.fields-chevron.svelte-1a2lez6:hover{color:var(--color-text-secondary)}.fields-chevron.fields-open.svelte-1a2lez6{transform:rotate(90deg)}.inline-collection-link.svelte-1a2lez6{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary);text-decoration:none}.inline-collection-link.svelte-1a2lez6:hover{color:var(--color-text-primary)}.entity-overflow-btn{all:unset;position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:var(--color-text-tertiary);cursor:pointer}.entity-overflow-btn:hover{color:var(--color-text-primary);background:var(--color-bg-surface)}.entity-overflow-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:6px;padding:4px;min-width:var(--menu-min-width);z-index:100}.entity-overflow-item{display:flex;align-items:center;gap:8px;min-height:var(--menu-item-height);padding:var(--menu-item-padding);font-size:var(--menu-font-size);border-radius:var(--menu-item-radius);cursor:pointer;color:var(--color-text-secondary)}.entity-overflow-item:hover{background:var(--color-bg-hover)}.entity-overflow-danger{color:var(--color-danger, #e05050)}.entity-overflow-sep{height:1px;background:var(--color-border);margin:4px 0}.entity-overflow-danger:hover{background:var(--color-danger, #e05050);color:#fff}.fields-action-btn.svelte-1a2lez6{all:unset;display:inline-flex;margin-left:30px;font-size:13px;font-family:inherit;color:var(--color-text-tertiary);cursor:pointer;padding:6px 0;margin-top:4px}.fields-action-btn.svelte-1a2lez6:hover{color:var(--color-text-secondary)}.fields-list.svelte-1a2lez6{margin-top:12px}.dotted-item{display:flex!important;align-items:center!important;gap:8px!important}.dialog-desc.svelte-1a2lez6{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px}.dialog-radio-item.svelte-1a2lez6{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--color-text-primary)}.dialog-check-item.svelte-1a2lez6{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--color-text-primary);cursor:pointer;border-radius:4px}.dialog-check-item.svelte-1a2lez6:hover{background:var(--color-bg-hover)}.connections-panel.svelte-16xienp{margin:48px 0 40px;padding-top:16px;border-top:1px solid var(--color-border)}.connections-header.svelte-16xienp{display:flex;align-items:baseline;gap:10px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-secondary);cursor:pointer;padding:4px 8px;margin:0 -8px}.connections-header.svelte-16xienp:hover{color:var(--color-text-primary)}.header-chevron.svelte-16xienp{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s;transform:rotate(90deg)}.header-chevron.collapsed.svelte-16xienp{transform:rotate(0)}.header-label.svelte-16xienp{font-weight:400}.header-count.svelte-16xienp{font-size:12px;color:var(--color-text-tertiary)}.connections-body.svelte-16xienp{display:flex;flex-direction:column;gap:0;margin-top:8px}.connection-chip.svelte-16xienp{display:flex;align-items:baseline;gap:10px;padding:6px 8px;margin:0 -8px;background:none;border:none;border-radius:4px;font-family:inherit;font-size:13px;color:var(--color-text-primary);cursor:pointer;text-align:left}.connection-chip.svelte-16xienp:hover{background:var(--color-bg-hover)}.chip-dot.svelte-16xienp{width:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center}.chip-dot.svelte-16xienp:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--dot-color)}.chip-name.svelte-16xienp{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-type.svelte-16xienp{font-size:12px;color:var(--color-text-tertiary);flex-shrink:0}.history-panel.svelte-1wxto27{border-top:1px solid var(--color-border);margin-top:8px;padding-top:16px;margin-bottom:40px}.history-header.svelte-1wxto27{display:flex;align-items:baseline;gap:10px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-secondary);cursor:pointer;padding:4px 8px;margin:0 -8px}.history-header.svelte-1wxto27:hover{color:var(--color-text-primary)}.header-chevron.svelte-1wxto27{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s;transform:rotate(90deg)}.header-chevron.collapsed.svelte-1wxto27{transform:rotate(0)}.header-label.svelte-1wxto27{font-weight:400}.header-count.svelte-1wxto27{font-size:12px;color:var(--color-text-tertiary)}.history-body.svelte-1wxto27{display:flex;flex-direction:column;margin-top:8px}.history-loading.svelte-1wxto27{padding:8px 0;font-size:13px;color:var(--color-text-tertiary)}.history-entry.svelte-1wxto27{display:flex;align-items:flex-start;gap:10px;padding:6px 8px 6px 0}.entry-dot.svelte-1wxto27{width:20px;height:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:8px}.entry-dot.svelte-1wxto27:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-text-tertiary)}.history-entry.first.svelte-1wxto27 .entry-dot:where(.svelte-1wxto27):after{background:var(--color-accent)}.entry-content.svelte-1wxto27{flex:1;min-width:0}.entry-message.svelte-1wxto27{font-size:13px;color:var(--color-text-primary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-meta.svelte-1wxto27{display:flex;gap:8px;margin-top:0;font-size:12px;color:var(--color-text-tertiary)}.editor-wrap.svelte-ok7wy5{display:flex;min-height:0;position:relative}.cm-container.svelte-ok7wy5{flex:1;min-height:100px}.cm-container.svelte-ok7wy5 .cm-editor{min-height:100px;outline:none}.cm-container.svelte-ok7wy5 .cm-scroller{overflow:visible!important}.cursor-overlay.svelte-ok7wy5{position:absolute;inset:0;pointer-events:none;overflow:hidden}.remote-cursor.svelte-ok7wy5{position:absolute;width:2px;background-color:var(--cursor-color);z-index:10}.remote-cursor-label.svelte-ok7wy5{position:absolute;top:-1.4em;left:-1px;font-size:12px;font-family:var(--font-sans);font-weight:500;padding:0 4px;border-radius:3px 3px 3px 0;white-space:nowrap;line-height:1.5;color:#fff}.flipped.svelte-ok7wy5 .remote-cursor-label:where(.svelte-ok7wy5){left:auto;right:-1px;border-radius:3px 3px 0}.csv-editor.svelte-63hltt{padding:32px 16px 0}.table-scroll.svelte-63hltt{overflow-x:auto}table.svelte-63hltt{border-collapse:collapse;width:max-content;font-size:14px;font-family:var(--font-sans)}th.svelte-63hltt,td.svelte-63hltt{border:1px solid var(--color-border);padding:0;height:32px;min-width:120px;max-width:300px}th.svelte-63hltt{background:transparent;font-weight:500;color:var(--color-text-secondary);position:sticky;top:0;z-index:1}th.svelte-63hltt:not(.row-num):not(.col-add){position:sticky;top:0;z-index:1}.row-num.svelte-63hltt{width:40px;min-width:40px;max-width:40px;text-align:center;color:var(--color-text-tertiary);font-size:12px;background:transparent}.cell-input.svelte-63hltt{width:100%;height:100%;border:none;background:transparent;color:var(--color-text-primary);font-family:var(--font-sans);font-size:14px;padding:4px 8px;outline:none}.cell-input.svelte-63hltt:focus{outline:1px solid var(--color-accent);outline-offset:-1px}.header-input.svelte-63hltt{font-weight:500;color:var(--color-text-secondary)}th.svelte-63hltt:not(.row-num):not(.col-add){position:relative}th.svelte-63hltt .col-delete-btn{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:18px;height:18px;display:none;background:var(--color-bg-hover);border-radius:3px;padding:0}th.svelte-63hltt:hover .col-delete-btn{display:flex}th.svelte-63hltt .col-delete-btn:hover{color:var(--color-destructive);background:var(--color-bg-selected)}.col-add.svelte-63hltt{width:28px;min-width:28px;max-width:28px;background:transparent}.col-add.svelte-63hltt .col-add-btn{width:100%;height:100%;border-radius:0;padding:0}.col-add.svelte-63hltt .col-add-btn:hover{color:var(--color-accent)}.actions.svelte-63hltt{width:28px;min-width:28px;max-width:28px;text-align:center}.actions.svelte-63hltt .delete-btn{display:none;width:18px;height:18px;padding:0;margin:0 auto;background:var(--color-bg-hover);border-radius:3px}tr.svelte-63hltt:hover .delete-btn{display:flex}tr.svelte-63hltt .delete-btn:hover{color:var(--color-destructive);background:var(--color-bg-selected)}.csv-footer.svelte-63hltt{display:flex;align-items:center;gap:16px;padding:8px 0}.csv-footer.svelte-63hltt .add-row-btn{font-size:14px}.remote-active.svelte-63hltt{outline:2px solid var(--rc-color, #e05050);outline-offset:-2px;position:relative}.remote-cell-label.svelte-63hltt{position:absolute;top:-18px;left:-1px;font-size:11px;font-family:var(--font-sans);font-weight:500;padding:0 4px;border-radius:3px 3px 3px 0;white-space:nowrap;line-height:1.6;color:#fff;z-index:2;pointer-events:none}.document-scroll.svelte-udj3er{flex:1;overflow-y:auto;min-height:0}.document-well.svelte-udj3er{max-width:720px;margin:0 auto;padding:0 40px;width:100%;box-sizing:border-box}.dataset-view.svelte-udj3er .entity-properties{border-bottom:none}.dataset-view.svelte-udj3er .connections-panel{border-top:none}.processing-indicator.svelte-udj3er{display:flex;align-items:center;gap:8px;max-width:720px;margin:0 auto;padding:12px 40px;font-size:14px;color:var(--color-text-secondary)}.processing-dot.svelte-udj3er{width:8px;height:8px;border-radius:50%;background:var(--color-accent);animation:svelte-udj3er-pulse 1.5s ease-in-out infinite}@keyframes svelte-udj3er-pulse{0%,to{opacity:1}50%{opacity:.3}}
@@ -0,0 +1 @@
1
+ import{bA as Le,aE as Ge,v as A,g as U,s as P,aF as ne,bB as vt}from"./BqnODQDb.js";class Ae{constructor(t,n){this.status=t,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class Ue{constructor(t,n){this.status=t,this.location=n}}class Pe extends Error{constructor(t,n,r){super(r),this.status=t,this.text=n}}new URL("sveltekit-internal://");function wt(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function yt(e){return e.split("%25").map(decodeURI).join("%25")}function bt(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function me({href:e}){return e.split("#")[0]}function kt(e,t,n,r=!1){const a=new URL(e);Object.defineProperty(a,"searchParams",{value:new Proxy(a.searchParams,{get(s,o){if(o==="get"||o==="getAll"||o==="has")return(c,...d)=>(n(c),s[o](c,...d));t();const l=Reflect.get(s,o);return typeof l=="function"?l.bind(s):l}}),enumerable:!0,configurable:!0});const i=["href","pathname","search","toString","toJSON"];r&&i.push("hash");for(const s of i)Object.defineProperty(a,s,{get(){return t(),e[s]},enumerable:!0,configurable:!0});return a}function Et(...e){let t=5381;for(const n of e)if(typeof n=="string"){let r=n.length;for(;r;)t=t*33^n.charCodeAt(--r)}else if(ArrayBuffer.isView(n)){const r=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let a=r.length;for(;a;)t=t*33^r[--a]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;new TextDecoder;function St(e){const t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}const Rt=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||"GET")!=="GET"&&G.delete(Te(e)),Rt(e,t));const G=new Map;function xt(e,t){const n=Te(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:a,...i}=JSON.parse(r.textContent);const s=r.getAttribute("data-ttl");return s&&G.set(n,{body:a,init:i,ttl:1e3*Number(s)}),r.getAttribute("data-b64")!==null&&(a=St(a)),Promise.resolve(new Response(a,i))}return window.fetch(e,t)}function Lt(e,t,n){if(G.size>0){const r=Te(e,n),a=G.get(r);if(a){if(performance.now()<a.ttl&&["default","force-cache","only-if-cached",void 0].includes(n?.cache))return new Response(a.body,a.init);G.delete(r)}}return window.fetch(t,n)}function Te(e,t){let r=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){const a=[];t.headers&&a.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&a.push(t.body),r+=`[data-hash="${Et(...a)}"]`}return r}const At=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Ut(e){const t=[];return{pattern:e==="/"?/^\/$/:new RegExp(`^${Tt(e).map(r=>{const a=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(r);if(a)return t.push({name:a[1],matcher:a[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const i=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(r);if(i)return t.push({name:i[1],matcher:i[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!r)return;const s=r.split(/\[(.+?)\](?!\])/);return"/"+s.map((l,c)=>{if(c%2){if(l.startsWith("x+"))return _e(String.fromCharCode(parseInt(l.slice(2),16)));if(l.startsWith("u+"))return _e(String.fromCharCode(...l.slice(2).split("-").map(v=>parseInt(v,16))));const d=At.exec(l),[,p,f,u,h]=d;return t.push({name:u,matcher:h,optional:!!p,rest:!!f,chained:f?c===1&&s[0]==="":!1}),f?"([^]*?)":p?"([^/]*)?":"([^/]+?)"}return _e(l)}).join("")}).join("")}/?$`),params:t}}function Pt(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function Tt(e){return e.slice(1).split("/").filter(Pt)}function It(e,t,n){const r={},a=e.slice(1),i=a.filter(o=>o!==void 0);let s=0;for(let o=0;o<t.length;o+=1){const l=t[o];let c=a[o-s];if(l.chained&&l.rest&&s&&(c=a.slice(o-s,o+1).filter(d=>d).join("/"),s=0),c===void 0)if(l.rest)c="";else continue;if(!l.matcher||n[l.matcher](c)){r[l.name]=c;const d=t[o+1],p=a[o+1];d&&!d.rest&&d.optional&&p&&l.chained&&(s=0),!d&&!p&&Object.keys(r).length===i.length&&(s=0);continue}if(l.optional&&l.chained){s++;continue}return}if(!s)return r}function _e(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function Ot({nodes:e,server_loads:t,dictionary:n,matchers:r}){const a=new Set(t);return Object.entries(n).map(([o,[l,c,d]])=>{const{pattern:p,params:f}=Ut(o),u={id:o,exec:h=>{const v=p.exec(h);if(v)return It(v,f,r)},errors:[1,...d||[]].map(h=>e[h]),layouts:[0,...c||[]].map(s),leaf:i(l)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function i(o){const l=o<0;return l&&(o=~o),[l,e[o]]}function s(o){return o===void 0?o:[a.has(o),e[o]]}}function Xe(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function Me(e,t,n=JSON.stringify){const r=n(t);try{sessionStorage[e]=r}catch{}}const x=globalThis.__sveltekit_untuaa?.base??"",$t=globalThis.__sveltekit_untuaa?.assets??x??"",Ct="1776031145288",Qe="sveltekit:snapshot",Ze="sveltekit:scroll",et="sveltekit:states",jt="sveltekit:pageurl",B="sveltekit:history",H="sveltekit:navigation",N={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},he=location.origin;function Ie(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function D(){return{x:pageXOffset,y:pageYOffset}}function V(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const He={...N,"":N.hover};function tt(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function nt(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=tt(e)}}function be(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){const o=location.hash.split("#")[1]||"/";r.hash=`#${o}${r.hash}`}}catch{}const a=e instanceof SVGAElement?e.target.baseVal:e.target,i=!r||!!a||pe(r,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),s=r?.origin===he&&e.hasAttribute("download");return{url:r,external:i,target:a,download:s}}function re(e){let t=null,n=null,r=null,a=null,i=null,s=null,o=e;for(;o&&o!==document.documentElement;)r===null&&(r=V(o,"preload-code")),a===null&&(a=V(o,"preload-data")),t===null&&(t=V(o,"keepfocus")),n===null&&(n=V(o,"noscroll")),i===null&&(i=V(o,"reload")),s===null&&(s=V(o,"replacestate")),o=tt(o);function l(c){switch(c){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:He[r??"off"],preload_data:He[a??"off"],keepfocus:l(t),noscroll:l(n),reload:l(i),replace_state:l(s)}}function We(e){const t=Le(e);let n=!0;function r(){n=!0,t.update(s=>s)}function a(s){n=!1,t.set(s)}function i(s){let o;return t.subscribe(l=>{(o===void 0||n&&l!==o)&&s(o=l)})}return{notify:r,set:a,subscribe:i}}const rt={v:()=>{}};function Nt(){const{set:e,subscribe:t}=Le(!1);let n;async function r(){clearTimeout(n);try{const a=await fetch(`${$t}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!a.ok)return!1;const s=(await a.json()).version!==Ct;return s&&(e(!0),rt.v(),clearTimeout(n)),s}catch{return!1}}return{subscribe:t,check:r}}function pe(e,t,n){return e.origin!==he||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function cn(e){}const at=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...at];const Dt=new Set([...at]);[...Dt];function qt(e){return e.filter(t=>t!=null)}function Oe(e){return e instanceof Ae||e instanceof Pe?e.status:500}function Vt(e){return e instanceof Pe?e.text:"Internal Error"}let b,W,ve;const Bt=Ge.toString().includes("$$")||/function \w+\(\) \{\}/.test(Ge.toString());Bt?(b={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL("https://example.com")},W={current:null},ve={current:!1}):(b=new class{#e=A({});get data(){return U(this.#e)}set data(t){P(this.#e,t)}#t=A(null);get form(){return U(this.#t)}set form(t){P(this.#t,t)}#n=A(null);get error(){return U(this.#n)}set error(t){P(this.#n,t)}#r=A({});get params(){return U(this.#r)}set params(t){P(this.#r,t)}#a=A({id:null});get route(){return U(this.#a)}set route(t){P(this.#a,t)}#o=A({});get state(){return U(this.#o)}set state(t){P(this.#o,t)}#s=A(-1);get status(){return U(this.#s)}set status(t){P(this.#s,t)}#i=A(new URL("https://example.com"));get url(){return U(this.#i)}set url(t){P(this.#i,t)}},W=new class{#e=A(null);get current(){return U(this.#e)}set current(t){P(this.#e,t)}},ve=new class{#e=A(!1);get current(){return U(this.#e)}set current(t){P(this.#e,t)}},rt.v=()=>ve.current=!0);function ot(e){Object.assign(b,e)}const Je={spanContext(){return Ft},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},Ft={traceId:"",spanId:"",traceFlags:0},Kt=new Set(["icon","shortcut icon","apple-touch-icon"]),j=Xe(Ze)??{},J=Xe(Qe)??{},C={url:We({}),page:We({}),navigating:Le(null),updated:Nt()};function $e(e){j[e]=D()}function Gt(e,t){let n=e+1;for(;j[n];)delete j[n],n+=1;for(n=t+1;J[n];)delete J[n],n+=1}function Y(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(()=>{})}async function st(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(x||"/");e&&await e.update()}}function ke(){}let Ce,Ee,ae,T,Se,w;const oe=[],se=[];let L=null;function ie(){L?.fork?.then(e=>e?.discard()),L=null}const te=new Map,it=new Set,Mt=new Set,M=new Set;let _={branch:[],error:null,url:null},lt=!1,le=!1,Ye=!0,z=!1,K=!1,ct=!1,Q=!1,je,y,R,I;const ce=new Set;let we;const ue=new Map;async function hn(e,t,n){globalThis.__sveltekit_untuaa?.data&&globalThis.__sveltekit_untuaa.data,document.URL!==location.href&&(location.href=location.href),w=e,await e.hooks.init?.(),Ce=Ot(e),T=document.documentElement,Se=t,Ee=e.nodes[0],ae=e.nodes[1],Ee(),ae(),y=history.state?.[B],R=history.state?.[H],y||(y=R=Date.now(),history.replaceState({...history.state,[B]:y,[H]:R},""));const r=j[y];function a(){r&&(history.scrollRestoration="manual",scrollTo(r.x,r.y))}n?(a(),await rn(Se,n)):(await F({type:"enter",url:Ie(w.hash?sn(new URL(location.href)):location.href),replace_state:!0}),a()),nn()}async function Ht(e=!0,t=!0){if(await(we||=Promise.resolve()),!we)return;we=null;const n=I={},r=await Z(_.url,!0);if(ie(),Q&&ue.forEach(({resource:a})=>{a.refresh?.()}),e){const a=b.state,i=r&&await Ve(r);if(!i||n!==I)return;if(i.type==="redirect")return Ne(new URL(i.location,_.url).href,{replaceState:!0},1,n);t||(i.props.page.state=a),ot(i.props.page),_=i.state,Re(),je.$set(i.props)}else Re();await Promise.all([...ue.values()].map(({resource:a})=>a)).catch(ke)}function Re(){oe.length=0,Q=!1}function ut(e){se.some(t=>t?.snapshot)&&(J[e]=se.map(t=>t?.snapshot?.capture()))}function ft(e){J[e]?.forEach((t,n)=>{se[n]?.snapshot?.restore(t)})}function ze(){$e(y),Me(Ze,j),ut(R),Me(Qe,J)}async function Ne(e,t,n,r){let a;t.invalidateAll&&ie(),await F({type:"goto",url:Ie(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{t.invalidateAll&&(Q=!0,a=[...ue.keys()]),t.invalidate&&t.invalidate.forEach(tn)}}),t.invalidateAll&&ne().then(ne).then(()=>{ue.forEach(({resource:i},s)=>{a?.includes(s)&&i.refresh?.()})})}async function Wt(e){if(e.id!==L?.id){ie();const t={};ce.add(t),L={id:e.id,token:t,promise:Ve({...e,preload:t}).then(n=>(ce.delete(t),n.type==="loaded"&&n.state.error&&ie(),n)),fork:null}}return L.promise}async function ye(e){const t=(await Z(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(n=>n[1]()))}async function dt(e,t,n){_=e.state;const r=document.querySelector("style[data-sveltekit]");if(r&&r.remove(),Object.assign(b,e.props.page),je=new w.root({target:t,props:{...e.props,stores:C,components:se},hydrate:n,sync:!1}),await Promise.resolve(),ft(R),n){const a={from:null,to:{params:_.params,route:{id:_.route?.id??null},url:new URL(location.href),scroll:j[y]??D()},willUnload:!1,type:"enter",complete:Promise.resolve()};M.forEach(i=>i(a))}le=!0}function fe({url:e,params:t,branch:n,status:r,error:a,route:i,form:s}){let o="never";if(x&&(e.pathname===x||e.pathname===x+"/"))o="always";else for(const u of n)u?.slash!==void 0&&(o=u.slash);e.pathname=wt(e.pathname,o),e.search=e.search;const l={type:"loaded",state:{url:e,params:t,branch:n,error:a,route:i},props:{constructors:qt(n).map(u=>u.node.component),page:Ke(b)}};s!==void 0&&(l.props.form=s);let c={},d=!b,p=0;for(let u=0;u<Math.max(n.length,_.branch.length);u+=1){const h=n[u],v=_.branch[u];h?.data!==v?.data&&(d=!0),h&&(c={...c,...h.data},d&&(l.props[`data_${p}`]=c),p+=1)}return(!_.url||e.href!==_.url.href||_.error!==a||s!==void 0&&s!==b.form||d)&&(l.props.page={error:a,params:t,route:{id:i?.id??null},state:{},status:r,url:new URL(e),form:s??null,data:d?c:b.data}),l}async function De({loader:e,parent:t,url:n,params:r,route:a,server_data_node:i}){let s=null,o=!0;const l={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},c=await e();if(c.universal?.load){let d=function(...f){for(const u of f){const{href:h}=new URL(u,n);l.dependencies.add(h)}};const p={tracing:{enabled:!1,root:Je,current:Je},route:new Proxy(a,{get:(f,u)=>(o&&(l.route=!0),f[u])}),params:new Proxy(r,{get:(f,u)=>(o&&l.params.add(u),f[u])}),data:i?.data??null,url:kt(n,()=>{o&&(l.url=!0)},f=>{o&&l.search_params.add(f)},w.hash),async fetch(f,u){f instanceof Request&&(u={body:f.method==="GET"||f.method==="HEAD"?void 0:await f.blob(),cache:f.cache,credentials:f.credentials,headers:[...f.headers].length>0?f?.headers:void 0,integrity:f.integrity,keepalive:f.keepalive,method:f.method,mode:f.mode,redirect:f.redirect,referrer:f.referrer,referrerPolicy:f.referrerPolicy,signal:f.signal,...u});const{resolved:h,promise:v}=ht(f,u,n);return o&&d(h.href),v},setHeaders:()=>{},depends:d,parent(){return o&&(l.parent=!0),t()},untrack(f){o=!1;try{return f()}finally{o=!0}}};s=await c.universal.load.call(null,p)??null}return{node:c,loader:e,server:i,universal:c.universal?.load?{type:"data",data:s,uses:l}:null,data:s??i?.data??null,slash:c.universal?.trailingSlash??i?.slash}}function ht(e,t,n){let r=e instanceof Request?e.url:e;const a=new URL(r,n);a.origin===n.origin&&(r=a.href.slice(n.origin.length));const i=le?Lt(r,a.href,t):xt(r,t);return{resolved:a,promise:i}}function Jt(e,t,n,r,a,i){if(Q)return!0;if(!a)return!1;if(a.parent&&e||a.route&&t||a.url&&n)return!0;for(const s of a.search_params)if(r.has(s))return!0;for(const s of a.params)if(i[s]!==_.params[s])return!0;for(const s of a.dependencies)if(oe.some(o=>o(new URL(s))))return!0;return!1}function qe(e,t){return e?.type==="data"?e:e?.type==="skip"?t??null:null}function Yt(e,t){if(!e)return new Set(t.searchParams.keys());const n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const r of n){const a=e.searchParams.getAll(r),i=t.searchParams.getAll(r);a.every(s=>i.includes(s))&&i.every(s=>a.includes(s))&&n.delete(r)}return n}function zt({error:e,url:t,route:n,params:r}){return{type:"loaded",state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Ke(b),constructors:[]}}}async function Ve({id:e,invalidating:t,url:n,params:r,route:a,preload:i}){if(L?.id===e)return ce.delete(L.token),L.promise;const{errors:s,layouts:o,leaf:l}=a,c=[...o,l];s.forEach(m=>m?.().catch(()=>{})),c.forEach(m=>m?.[1]().catch(()=>{}));const d=_.url?e!==de(_.url):!1,p=_.route?a.id!==_.route.id:!1,f=Yt(_.url,n);let u=!1;const h=c.map(async(m,g)=>{if(!m)return;const E=_.branch[g];return m[1]===E?.loader&&!Jt(u,p,d,f,E.universal?.uses,r)?E:(u=!0,De({loader:m[1],url:n,params:r,route:a,parent:async()=>{const O={};for(let $=0;$<g;$+=1)Object.assign(O,(await h[$])?.data);return O},server_data_node:qe(m[0]?{type:"skip"}:null,m[0]?E?.server:void 0)}))});for(const m of h)m.catch(()=>{});const v=[];for(let m=0;m<c.length;m+=1)if(c[m])try{v.push(await h[m])}catch(g){if(g instanceof Ue)return{type:"redirect",location:g.location};if(ce.has(i))return zt({error:await X(g,{params:r,url:n,route:{id:a.id}}),url:n,params:r,route:a});let E=Oe(g),S;if(g instanceof Ae)S=g.body;else{if(await C.updated.check())return await st(),await Y(n);S=await X(g,{params:r,url:n,route:{id:a.id}})}const O=await Xt(m,v,s);return O?fe({url:n,params:r,branch:v.slice(0,O.idx).concat(O.node),status:E,error:S,route:a}):await gt(n,{id:a.id},S,E)}else v.push(void 0);return fe({url:n,params:r,branch:v,status:200,error:null,route:a,form:t?void 0:null})}async function Xt(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)r-=1;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Be({status:e,error:t,url:n,route:r}){const a={};let i=null;try{const s=await De({loader:Ee,url:n,params:a,route:r,parent:()=>Promise.resolve({}),server_data_node:qe(i)}),o={node:await ae(),loader:ae,universal:null,server:null,data:null};return fe({url:n,params:a,branch:[s,o],status:e,error:t,route:null})}catch(s){if(s instanceof Ue)return Ne(new URL(s.location,location.href),{},0);throw s}}async function Qt(e){const t=e.href;if(te.has(t))return te.get(t);let n;try{const r=(async()=>{let a=await w.hooks.reroute({url:new URL(e),fetch:async(i,s)=>ht(i,s,e).promise})??e;if(typeof a=="string"){const i=new URL(e);w.hash?i.hash=a:i.pathname=a,a=i}return a})();te.set(t,r),n=await r}catch{te.delete(t);return}return n}async function Z(e,t){if(e&&!pe(e,x,w.hash)){const n=await Qt(e);if(!n)return;const r=Zt(n);for(const a of Ce){const i=a.exec(r);if(i)return{id:de(e),invalidating:t,route:a,params:bt(i),url:e}}}}function Zt(e){return yt(w.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(x.length))||"/"}function de(e){return(w.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function pt({url:e,type:t,intent:n,delta:r,event:a,scroll:i}){let s=!1;const o=Fe(_,n,e,t,i??null);r!==void 0&&(o.navigation.delta=r),a!==void 0&&(o.navigation.event=a);const l={...o.navigation,cancel:()=>{s=!0,o.reject(new Error("navigation cancelled"))}};return z||it.forEach(c=>c(l)),s?null:o}async function F({type:e,url:t,popped:n,keepfocus:r,noscroll:a,replace_state:i,state:s={},redirect_count:o=0,nav_token:l={},accept:c=ke,block:d=ke,event:p}){const f=I;I=l;const u=await Z(t,!1),h=e==="enter"?Fe(_,u,t,e):pt({url:t,type:e,delta:n?.delta,intent:u,scroll:n?.scroll,event:p});if(!h){d(),I===l&&(I=f);return}const v=y,m=R;c(),z=!0,le&&h.navigation.type!=="enter"&&C.navigating.set(W.current=h.navigation);let g=u&&await Ve(u);if(!g){if(pe(t,x,w.hash))return await Y(t,i);g=await gt(t,{id:null},await X(new Pe(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,i)}if(t=u?.url||t,I!==l)return h.reject(new Error("navigation aborted")),!1;if(g.type==="redirect"){if(o<20){await F({type:e,url:new URL(g.location,t),popped:n,keepfocus:r,noscroll:a,replace_state:i,state:s,redirect_count:o+1,nav_token:l}),h.fulfil(void 0);return}g=await Be({status:500,error:await X(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}})}else g.props.page.status>=400&&await C.updated.check()&&(await st(),await Y(t,i));if(Re(),$e(v),ut(m),g.props.page.url.pathname!==t.pathname&&(t.pathname=g.props.page.url.pathname),s=n?n.state:s,!n){const k=i?0:1,ee={[B]:y+=k,[H]:R+=k,[et]:s};(i?history.replaceState:history.pushState).call(history,ee,"",t),i||Gt(y,R)}const E=u&&L?.id===u.id?L.fork:null;L=null,g.props.page.state=s;let S;if(le){const k=(await Promise.all(Array.from(Mt,q=>q(h.navigation)))).filter(q=>typeof q=="function");if(k.length>0){let q=function(){k.forEach(ge=>{M.delete(ge)})};k.push(q),k.forEach(ge=>{M.add(ge)})}_=g.state,g.props.page&&(g.props.page.url=t);const ee=E&&await E;ee?S=ee.commit():(je.$set(g.props),ot(g.props.page),S=vt?.()),ct=!0}else await dt(g,Se,!1);const{activeElement:O}=document;await S,await ne(),await ne();let $=null;if(Ye){const k=n?n.scroll:a?D():null;k?scrollTo(k.x,k.y):($=t.hash&&document.getElementById(mt(t)))?$.scrollIntoView():scrollTo(0,0)}const _t=document.activeElement!==O&&document.activeElement!==document.body;!r&&!_t&&on(t,!$),Ye=!0,g.props.page&&Object.assign(b,g.props.page),z=!1,e==="popstate"&&ft(R),h.fulfil(void 0),h.navigation.to&&(h.navigation.to.scroll=D()),M.forEach(k=>k(h.navigation)),C.navigating.set(W.current=null)}async function gt(e,t,n,r,a){return e.origin===he&&e.pathname===location.pathname&&!lt?await Be({status:r,error:n,url:e,route:t}):await Y(e,a)}function en(){let e,t={element:void 0,href:void 0},n;T.addEventListener("mousemove",o=>{const l=o.target;clearTimeout(e),e=setTimeout(()=>{i(l,N.hover)},20)});function r(o){o.defaultPrevented||i(o.composedPath()[0],N.tap)}T.addEventListener("mousedown",r),T.addEventListener("touchstart",r,{passive:!0});const a=new IntersectionObserver(o=>{for(const l of o)l.isIntersecting&&(ye(new URL(l.target.href)),a.unobserve(l.target))},{threshold:0});async function i(o,l){const c=nt(o,T),d=c===t.element&&c?.href===t.href&&l>=n;if(!c||d)return;const{url:p,external:f,download:u}=be(c,x,w.hash);if(f||u)return;const h=re(c),v=p&&de(_.url)===de(p);if(!(h.reload||v))if(l<=h.preload_data){t={element:c,href:c.href},n=N.tap;const m=await Z(p,!1);if(!m)return;Wt(m)}else l<=h.preload_code&&(t={element:c,href:c.href},n=l,ye(p))}function s(){a.disconnect();for(const o of T.querySelectorAll("a")){const{url:l,external:c,download:d}=be(o,x,w.hash);if(c||d)continue;const p=re(o);p.reload||(p.preload_code===N.viewport&&a.observe(o),p.preload_code===N.eager&&ye(l))}}M.add(s),s()}function X(e,t){if(e instanceof Ae)return e.body;const n=Oe(e),r=Vt(e);return w.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function pn(e,t={}){return e=new URL(Ie(e)),e.origin!==he?Promise.reject(new Error("goto: invalid URL")):Ne(e,t,0)}function tn(e){if(typeof e=="function")oe.push(e);else{const{href:t}=new URL(e,location.href);oe.push(n=>n.href===t)}}function gn(){return Q=!0,Ht()}function nn(){history.scrollRestoration="manual",addEventListener("beforeunload",t=>{let n=!1;if(ze(),!z){const r=Fe(_,void 0,null,"leave"),a={...r.navigation,cancel:()=>{n=!0,r.reject(new Error("navigation cancelled"))}};it.forEach(i=>i(a))}n?(t.preventDefault(),t.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&ze()}),navigator.connection?.saveData||en(),T.addEventListener("click",async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;const n=nt(t.composedPath()[0],T);if(!n)return;const{url:r,external:a,target:i,download:s}=be(n,x,w.hash);if(!r)return;if(i==="_parent"||i==="_top"){if(window.parent!==window)return}else if(i&&i!=="_self")return;const o=re(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol==="https:"||r.protocol==="http:")||s)return;const[c,d]=(w.hash?r.hash.replace(/^#/,""):r.href).split("#"),p=c===me(location);if(a||o.reload&&(!p||!d)){pt({url:r,type:"link",event:t})?z=!0:t.preventDefault();return}if(d!==void 0&&p){const[,f]=_.url.href.split("#");if(f===d){if(t.preventDefault(),d===""||d==="top"&&n.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const u=n.ownerDocument.getElementById(decodeURIComponent(d));u&&(u.scrollIntoView(),u.focus())}return}if(K=!0,$e(y),e(r),!o.replace_state)return;K=!1}t.preventDefault(),await new Promise(f=>{requestAnimationFrame(()=>{setTimeout(f,0)}),setTimeout(f,100)}),await F({type:"link",url:r,keepfocus:o.keepfocus,noscroll:o.noscroll,replace_state:o.replace_state??r.href===location.href,event:t})}),T.addEventListener("submit",t=>{if(t.defaultPrevented)return;const n=HTMLFormElement.prototype.cloneNode.call(t.target),r=t.submitter;if((r?.formTarget||n.target)==="_blank"||(r?.formMethod||n.method)!=="get")return;const s=new URL(r?.hasAttribute("formaction")&&r?.formAction||n.action);if(pe(s,x,!1))return;const o=t.target,l=re(o);if(l.reload)return;t.preventDefault(),t.stopPropagation();const c=new FormData(o,r);s.search=new URLSearchParams(c).toString(),F({type:"form",url:s,keepfocus:l.keepfocus,noscroll:l.noscroll,replace_state:l.replace_state??s.href===location.href,event:t})}),addEventListener("popstate",async t=>{if(!xe){if(t.state?.[B]){const n=t.state[B];if(I={},n===y)return;const r=j[n],a=t.state[et]??{},i=new URL(t.state[jt]??location.href),s=t.state[H],o=_.url?me(location)===me(_.url):!1;if(s===R&&(ct||o)){a!==b.state&&(b.state=a),e(i),j[y]=D(),r&&scrollTo(r.x,r.y),y=n;return}const c=n-y;await F({type:"popstate",url:i,popped:{state:a,scroll:r,delta:c},accept:()=>{y=n,R=s},block:()=>{history.go(-c)},nav_token:I,event:t})}else if(!K){const n=new URL(location.href);e(n),w.hash&&location.reload()}}}),addEventListener("hashchange",()=>{K&&(K=!1,history.replaceState({...history.state,[B]:++y,[H]:R},"",location.href))});for(const t of document.querySelectorAll("link"))Kt.has(t.rel)&&(t.href=t.href);addEventListener("pageshow",t=>{t.persisted&&C.navigating.set(W.current=null)});function e(t){_.url=b.url=t,C.page.set(Ke(b)),C.page.notify()}}async function rn(e,{status:t=200,error:n,node_ids:r,params:a,route:i,server_route:s,data:o,form:l}){lt=!0;const c=new URL(location.href);let d;({params:a={},route:i={id:null}}=await Z(c,!1)||{}),d=Ce.find(({id:u})=>u===i.id);let p,f=!0;try{const u=r.map(async(v,m)=>{const g=o[m];return g?.uses&&(g.uses=an(g.uses)),De({loader:w.nodes[v],url:c,params:a,route:i,parent:async()=>{const E={};for(let S=0;S<m;S+=1)Object.assign(E,(await u[S]).data);return E},server_data_node:qe(g)})}),h=await Promise.all(u);if(d){const v=d.layouts;for(let m=0;m<v.length;m++)v[m]||h.splice(m,0,void 0)}p=fe({url:c,params:a,branch:h,status:t,error:n,form:l,route:d??null})}catch(u){if(u instanceof Ue){await Y(new URL(u.location,location.href));return}p=await Be({status:Oe(u),error:await X(u,{url:c,params:a,route:i}),url:c,route:i}),e.textContent="",f=!1}p.props.page&&(p.props.page.state={}),await dt(p,e,f)}function an(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}let xe=!1;function on(e,t=!0){const n=document.querySelector("[autofocus]");if(n)n.focus();else{const r=mt(e);if(r&&document.getElementById(r)){const{x:i,y:s}=D();setTimeout(()=>{const o=history.state;xe=!0,location.replace(new URL(`#${r}`,location.href)),history.replaceState(o,"",e),t&&scrollTo(i,s),xe=!1})}else{const i=document.body,s=i.getAttribute("tabindex");i.tabIndex=-1,i.focus({preventScroll:!0,focusVisible:!1}),s!==null?i.setAttribute("tabindex",s):i.removeAttribute("tabindex")}const a=getSelection();if(a&&a.type!=="None"){const i=[];for(let s=0;s<a.rangeCount;s+=1)i.push(a.getRangeAt(s));setTimeout(()=>{if(a.rangeCount===i.length){for(let s=0;s<a.rangeCount;s+=1){const o=i[s],l=a.getRangeAt(s);if(o.commonAncestorContainer!==l.commonAncestorContainer||o.startContainer!==l.startContainer||o.endContainer!==l.endContainer||o.startOffset!==l.startOffset||o.endOffset!==l.endOffset)return}a.removeAllRanges()}})}}}function Fe(e,t,n,r,a=null){let i,s;const o=new Promise((c,d)=>{i=c,s=d});return o.catch(()=>{}),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:D()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:a},willUnload:!t,type:r,complete:o},fulfil:i,reject:s}}function Ke(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function sn(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function mt(e){let t;if(w.hash){const[,,n]=e.hash.split("#",3);t=n??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{hn as a,pn as g,gn as i,cn as l,b as p,C as s};
@@ -1 +1 @@
1
- import{O as _,f as P,g as b,e as W,w as m,a as G,t as k,c as A,r as I,b as q,d as j,h as V,i as R,j as z,k as C,l as K,D as Q,p as X,m as Z}from"./CSVbGg_b.js";import{r as O}from"./ZMdGop5e.js";const T=3e4;class $ extends _{constructor(n){super(),this.doc=n,this.clientID=n.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const e=b();this.getLocalState()!==null&&T/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const s=[];this.meta.forEach((a,c)=>{c!==this.clientID&&T<=e-a.lastUpdated&&this.states.has(c)&&s.push(c)}),s.length>0&&Y(this,s,"timeout")},P(T/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:b()});const i=[],u=[],r=[],f=[];n===null?f.push(e):c==null?n!=null&&i.push(e):(u.push(e),W(c,n)||r.push(e)),(i.length>0||r.length>0||f.length>0)&&this.emit("change",[{added:i,updated:r,removed:f},"local"]),this.emit("update",[{added:i,updated:u,removed:f},"local"])}setLocalStateField(n,e){const s=this.getLocalState();s!==null&&this.setLocalState({...s,[n]:e})}getStates(){return this.states}}const Y=(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 i=t.meta.get(c);t.meta.set(c,{clock:i.clock+1,lastUpdated:b()})}s.push(c)}}s.length>0&&(t.emit("change",[{added:[],updated:[],removed:s},e]),t.emit("update",[{added:[],updated:[],removed:s},e]))},H=(t,n,e=t.states)=>{const s=n.length,a=A();m(a,s);for(let c=0;c<s;c++){const i=n[c],u=e.get(i)||null,r=t.meta.get(i).clock;m(a,i),m(a,r),G(a,JSON.stringify(u))}return k(a)},tt=(t,n,e)=>{const s=j(n),a=b(),c=[],i=[],u=[],r=[],f=I(s);for(let w=0;w<f;w++){const d=I(s);let y=I(s);const h=JSON.parse(q(s)),g=t.meta.get(d),U=t.states.get(d),S=g===void 0?0:g.clock;(S<y||S===y&&h===null&&t.states.has(d))&&(h===null?d===t.clientID&&t.getLocalState()!=null?y++:t.states.delete(d):t.states.set(d,h),t.meta.set(d,{clock:y,lastUpdated:a}),g===void 0&&h!==null?c.push(d):g!==void 0&&h===null?r.push(d):h!==null&&(W(h,U)||u.push(d),i.push(d)))}(c.length>0||u.length>0||r.length>0)&&t.emit("change",[{added:c,updated:u,removed:r},e]),(c.length>0||i.length>0||r.length>0)&&t.emit("update",[{added:c,updated:i,removed:r},e])},B=0,M=1,N=2,et=(t,n)=>{m(t,B);const e=R(n);V(t,e)},nt=(t,n,e)=>{m(t,M),V(t,K(n,e))},st=(t,n,e)=>nt(n,e,C(t)),F=(t,n,e,s)=>{try{z(n,C(t),e)}catch(a){s?.(a),console.error("Caught error while handling a Yjs update",a)}},at=(t,n)=>{m(t,N),V(t,n)},ct=F,ot=(t,n,e,s,a)=>{const c=I(t);switch(c){case B:st(t,n,e);break;case M:F(t,e,s,a);break;case N:ct(t,e,s,a);break;default:throw new Error("Unknown message type")}return c},L=0,x=1;function it(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 lt(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 ut(t,n){const e=new Q,s=e.getText("content"),a=new $(e);a.setLocalStateField("user",{name:n.name,color:n.color,colorLight:n.colorLight??n.color+"33"});let c=null,i=!1,u=!1;function r(){return O.ws??null}function f(o,p){const l=r();!l||l.readyState!==WebSocket.OPEN||l.send(it(t,o,p))}function w(){const o=A();et(o,e),f(L,k(o))}function d(o){const p=o??[e.clientID],l=H(a,p);f(x,l)}function y(o){if(i||typeof o.data=="string")return;const p=o.data instanceof ArrayBuffer?o.data:null;if(!p)return;const l=lt(p);if(!(!l||l.docName!==t))if(l.msgType===L){const v=j(l.payload),D=X(v),E=A();ot(v,E,e,"ws-server"),Z(E)>0&&f(L,k(E)),!u&&(D===M||D===N)&&(u=!0,S.synced=!0)}else l.msgType===x&&tt(a,l.payload,"ws-server")}function h(o,p){if(i||p==="ws-server")return;const l=A();at(l,o),f(L,k(l))}function g({added:o,updated:p,removed:l},v){if(i||v==="ws-server")return;const D=o.concat(p,l);d(D)}function U(){if(i)return;const o=r();!o||o.readyState!==WebSocket.OPEN||(o.send(JSON.stringify({type:"collab:join",docName:t})),c&&o.removeEventListener("message",c),c=y,o.addEventListener("message",c),w(),d())}const S={ydoc:e,ytext:s,awareness:a,synced:!1,destroy:J};e.on("update",h),a.on("update",g),U(),O.addConnectHandler(U);function J(){if(i)return;i=!0,Y(a,[e.clientID],"local"),d([e.clientID]);const o=r();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",h),a.off("update",g),a.destroy(),e.destroy()}return S}export{ut as createCollabSession};
1
+ import{O as _,f as P,g as b,e as W,w as m,a as G,t as k,c as A,r as I,b as q,d as j,h as V,i as R,j as z,k as C,l as K,D as Q,p as X,m as Z}from"./CSVbGg_b.js";import{r as O}from"./DAdS4xmg.js";const T=3e4;class $ extends _{constructor(n){super(),this.doc=n,this.clientID=n.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const e=b();this.getLocalState()!==null&&T/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const s=[];this.meta.forEach((a,c)=>{c!==this.clientID&&T<=e-a.lastUpdated&&this.states.has(c)&&s.push(c)}),s.length>0&&Y(this,s,"timeout")},P(T/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:b()});const i=[],u=[],r=[],f=[];n===null?f.push(e):c==null?n!=null&&i.push(e):(u.push(e),W(c,n)||r.push(e)),(i.length>0||r.length>0||f.length>0)&&this.emit("change",[{added:i,updated:r,removed:f},"local"]),this.emit("update",[{added:i,updated:u,removed:f},"local"])}setLocalStateField(n,e){const s=this.getLocalState();s!==null&&this.setLocalState({...s,[n]:e})}getStates(){return this.states}}const Y=(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 i=t.meta.get(c);t.meta.set(c,{clock:i.clock+1,lastUpdated:b()})}s.push(c)}}s.length>0&&(t.emit("change",[{added:[],updated:[],removed:s},e]),t.emit("update",[{added:[],updated:[],removed:s},e]))},H=(t,n,e=t.states)=>{const s=n.length,a=A();m(a,s);for(let c=0;c<s;c++){const i=n[c],u=e.get(i)||null,r=t.meta.get(i).clock;m(a,i),m(a,r),G(a,JSON.stringify(u))}return k(a)},tt=(t,n,e)=>{const s=j(n),a=b(),c=[],i=[],u=[],r=[],f=I(s);for(let w=0;w<f;w++){const d=I(s);let y=I(s);const h=JSON.parse(q(s)),g=t.meta.get(d),U=t.states.get(d),S=g===void 0?0:g.clock;(S<y||S===y&&h===null&&t.states.has(d))&&(h===null?d===t.clientID&&t.getLocalState()!=null?y++:t.states.delete(d):t.states.set(d,h),t.meta.set(d,{clock:y,lastUpdated:a}),g===void 0&&h!==null?c.push(d):g!==void 0&&h===null?r.push(d):h!==null&&(W(h,U)||u.push(d),i.push(d)))}(c.length>0||u.length>0||r.length>0)&&t.emit("change",[{added:c,updated:u,removed:r},e]),(c.length>0||i.length>0||r.length>0)&&t.emit("update",[{added:c,updated:i,removed:r},e])},B=0,M=1,N=2,et=(t,n)=>{m(t,B);const e=R(n);V(t,e)},nt=(t,n,e)=>{m(t,M),V(t,K(n,e))},st=(t,n,e)=>nt(n,e,C(t)),F=(t,n,e,s)=>{try{z(n,C(t),e)}catch(a){s?.(a),console.error("Caught error while handling a Yjs update",a)}},at=(t,n)=>{m(t,N),V(t,n)},ct=F,ot=(t,n,e,s,a)=>{const c=I(t);switch(c){case B:st(t,n,e);break;case M:F(t,e,s,a);break;case N:ct(t,e,s,a);break;default:throw new Error("Unknown message type")}return c},L=0,x=1;function it(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 lt(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 ut(t,n){const e=new Q,s=e.getText("content"),a=new $(e);a.setLocalStateField("user",{name:n.name,color:n.color,colorLight:n.colorLight??n.color+"33"});let c=null,i=!1,u=!1;function r(){return O.ws??null}function f(o,p){const l=r();!l||l.readyState!==WebSocket.OPEN||l.send(it(t,o,p))}function w(){const o=A();et(o,e),f(L,k(o))}function d(o){const p=o??[e.clientID],l=H(a,p);f(x,l)}function y(o){if(i||typeof o.data=="string")return;const p=o.data instanceof ArrayBuffer?o.data:null;if(!p)return;const l=lt(p);if(!(!l||l.docName!==t))if(l.msgType===L){const v=j(l.payload),D=X(v),E=A();ot(v,E,e,"ws-server"),Z(E)>0&&f(L,k(E)),!u&&(D===M||D===N)&&(u=!0,S.synced=!0)}else l.msgType===x&&tt(a,l.payload,"ws-server")}function h(o,p){if(i||p==="ws-server")return;const l=A();at(l,o),f(L,k(l))}function g({added:o,updated:p,removed:l},v){if(i||v==="ws-server")return;const D=o.concat(p,l);d(D)}function U(){if(i)return;const o=r();!o||o.readyState!==WebSocket.OPEN||(o.send(JSON.stringify({type:"collab:join",docName:t})),c&&o.removeEventListener("message",c),c=y,o.addEventListener("message",c),w(),d())}const S={ydoc:e,ytext:s,awareness:a,synced:!1,destroy:J};e.on("update",h),a.on("update",g),U(),O.addConnectHandler(U);function J(){if(i)return;i=!0,Y(a,[e.clientID],"local"),d([e.clientID]);const o=r();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",h),a.off("update",g),a.destroy(),e.destroy()}return S}export{ut as createCollabSession};
@@ -0,0 +1 @@
1
+ import{E as C,V as S,a as o,W as g}from"./DnL9f0lc.js";import{r as y}from"./pGhlTUnf.js";import{syntaxTree as E}from"./wDIGUaoU.js";class W extends g{toDOM(){const e=document.createElement("span");return e.className="cm-bullet-widget",e.textContent="•",e}}class L extends g{constructor(e){super(),this.num=e}eq(e){return this.num===e.num}toDOM(){const e=document.createElement("span");return e.className="cm-ordered-widget",e.textContent=this.num+" ",e}}class M extends g{toDOM(){const e=document.createElement("div");return e.className="cm-hr-widget",e}}class T extends g{toDOM(){const e=document.createElement("span");return e.textContent="—",e}}class D extends g{constructor(e){super(),this.char=e}eq(e){return this.char===e.char}toDOM(){const e=document.createElement("span");return e.textContent=this.char,e}}class O extends g{constructor(e,l){super(),this.alt=e,this.url=l}eq(e){return this.alt===e.alt&&this.url===e.url}toDOM(){const e=document.createElement("div");e.className="cm-image-widget";const l=document.createElement("img");return l.src=this.url,l.alt=this.alt,l.loading="lazy",l.onerror=()=>{e.textContent=`[Image not found: ${this.alt||this.url}]`,e.className="cm-image-error"},e.appendChild(l),e}ignoreEvent(e){return e.type==="mousedown"}}class F extends g{constructor(e,l,s){super(),this.text=e,this.className=l,this.entityId=s}eq(e){return this.text===e.text&&this.className===e.className&&this.entityId===e.entityId}toDOM(){const e=document.createElement("span");return e.className=this.className,e.textContent=this.text,e.dataset.entityId=this.entityId,e.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.dispatchEvent(new CustomEvent("wikilink-click",{bubbles:!0,detail:this.entityId}))}),e}ignoreEvent(e){return e.type==="mousedown"}}function I(r){return r.doc.lineAt(r.selection.main.head).number}function u(r,e,l){const s=r.selection.main.head;return s>=e&&s<=l}function x(r,e,l,s,d=!0){const t=r.from>0?e.doc.sliceString(r.from-1,r.from):"",f=r.to<e.doc.length?e.doc.sliceString(r.to,r.to+1):"";if(t!=="["||f!=="]")return!1;const i=r.from-1,n=r.to+1,a=e.doc.sliceString(r.from+1,r.to-1),m=y(a),c=m?"cm-live-wikilink cm-wikilink-active":"cm-live-wikilink cm-wikilink-inactive",h=s?`${c} ${s}`:c;if(!d||!u(e,i,n)){const p=m?m.title:a.replace(/-/g," ").replace(/\b\w/g,k=>k.toUpperCase());l.push(o.replace({widget:new F(p,h,a)}).range(i,n))}else l.push(o.mark({class:h}).range(i,n));return!0}function b(r){const e=r.state,l=r.hasFocus?I(e):-1,s=[];E(e).iterate({enter(t){const f=e.doc.lineAt(t.from).number;if(t.name.startsWith("ATXHeading")){const n=`cm-live-heading cm-live-heading-${parseInt(t.name.replace("ATXHeading",""),10)||1}`;if(s.push(o.mark({class:n}).range(t.from,t.to)),f!==l){let a=t.node.firstChild;for(;a;){if(a.name==="HeaderMark"){const m=Math.min(a.to+1,t.to);s.push(o.replace({}).range(a.from,m))}else a.name==="Link"&&x(a,e,s,n,r.hasFocus);a=a.nextSibling}}return!1}if(t.name==="HorizontalRule"&&f!==l&&s.push(o.replace({widget:new M}).range(t.from,t.to)),t.name==="ListMark"&&f!==l){const i=Math.min(t.to+1,e.doc.lineAt(t.from).to);if(t.node.parent?.parent?.name==="OrderedList"){const m=e.doc.sliceString(t.from,t.to);s.push(o.replace({widget:new L(m)}).range(t.from,i))}else s.push(o.replace({widget:new W}).range(t.from,i));const a=e.doc.lineAt(t.from);s.push(o.line({class:"cm-list-line"}).range(a.from))}if(t.name==="StrongEmphasis"){if(!r.hasFocus||!u(e,t.from,t.to)){let i=t.node.firstChild,n=!1;for(;i;)i.name==="Link"&&(n=x(i,e,s,"cm-live-strong",r.hasFocus)),i=i.nextSibling;for(n||s.push(o.mark({class:"cm-live-strong"}).range(t.from,t.to)),i=t.node.firstChild;i;)i.name==="EmphasisMark"&&s.push(o.replace({}).range(i.from,i.to)),i=i.nextSibling}else s.push(o.mark({class:"cm-live-strong"}).range(t.from,t.to));return!1}if(t.name==="Emphasis"){if(!r.hasFocus||!u(e,t.from,t.to)){let i=t.node.firstChild,n=!1;for(;i;)i.name==="Link"&&(n=x(i,e,s,"cm-live-em",r.hasFocus)),i=i.nextSibling;for(n||s.push(o.mark({class:"cm-live-em"}).range(t.from,t.to)),i=t.node.firstChild;i;)i.name==="EmphasisMark"&&s.push(o.replace({}).range(i.from,i.to)),i=i.nextSibling}else s.push(o.mark({class:"cm-live-em"}).range(t.from,t.to));return!1}if(t.name==="InlineCode"){if(s.push(o.mark({class:"cm-live-code"}).range(t.from,t.to)),!r.hasFocus||!u(e,t.from,t.to)){let i=t.node.firstChild;for(;i;)i.name==="CodeMark"&&s.push(o.replace({}).range(i.from,i.to)),i=i.nextSibling}return!1}if(t.name==="Link"){const i=e.doc.sliceString(t.from,t.to);if(x(t,e,s,void 0,r.hasFocus))return!1;if(i.includes("](")){let n=t.node.firstChild;const a=[];let m=null;for(;n;)n.name==="LinkMark"&&a.push({from:n.from,to:n.to}),n.name==="URL"&&(m={from:n.from,to:n.to}),n=n.nextSibling;const c=m?e.doc.sliceString(m.from,m.to):"";return s.push(o.mark({class:"cm-live-link",attributes:c?{"data-href":c}:{}}).range(t.from,t.to)),(!r.hasFocus||!u(e,t.from,t.to))&&a.length>=2&&m&&(s.push(o.replace({}).range(a[0].from,a[0].to)),s.push(o.replace({}).range(a[1].from,t.to))),!1}}if(t.name==="Image"){if(!r.hasFocus||!u(e,t.from,t.to)){const n=e.doc.sliceString(t.from,t.to).match(/!\[([^\]]*)\]/),a=n?n[1]:"";let m="",c=t.node.firstChild;for(;c;)c.name==="URL"&&(m=e.doc.sliceString(c.from,c.to)),c=c.nextSibling;m&&s.push(o.replace({widget:new O(a,m)}).range(t.from,t.to))}else s.push(o.mark({class:"cm-image-raw"}).range(t.from,t.to));return!1}}});const d=e.doc;for(let t=1;t<=d.lines;t++){if(t===l)continue;const f=d.line(t),i=f.text,n=i.trim(),a=/^-{3,}$/.test(n)||/^\*{3,}$/.test(n)||/^_{3,}$/.test(n);let m=0;for(;!a&&(m=i.indexOf("--",m))!==-1;){const c=f.from+m,h=c+2;u(e,c,h)||s.push(o.replace({widget:new T}).range(c,h)),m+=2}for(let c=0;c<i.length;c++){const h=i[c];if(h!=='"'&&h!=="'")continue;const p=f.from+c;if(u(e,p,p+1))continue;const k=c>0?i[c-1]:"",v=!k||/[\s([\-—]/.test(k);let w;h==='"'?w=v?"“":"”":w=v?"‘":"’",s.push(o.replace({widget:new D(w)}).range(p,p+1))}}return o.set(s,!0)}const $=S.fromClass(class{decorations;constructor(r){this.decorations=b(r)}update(r){(r.docChanged||r.selectionSet||r.viewportChanged||r.focusChanged)&&(this.decorations=b(r.view))}},{decorations:r=>r.decorations}),A=C.baseTheme({".cm-live-heading":{fontWeight:"600"},".cm-live-heading-1":{fontSize:"1.5em"},".cm-live-heading-2":{fontSize:"1.2em"},".cm-live-heading-3":{fontSize:"1.05em"},".cm-live-strong":{fontWeight:"600"},".cm-live-em":{fontStyle:"italic"},".cm-live-code":{fontFamily:"monospace",fontSize:"0.9em",padding:"1px 4px",borderRadius:"3px",backgroundColor:"rgba(128,128,128,0.12)"},".cm-live-wikilink":{borderRadius:"3px"},".cm-wikilink-active":{color:"var(--color-accent, #e05050)",cursor:"pointer",textDecoration:"none"},".cm-wikilink-active:hover":{textDecoration:"underline"},".cm-wikilink-inactive":{color:"var(--color-text-tertiary)"},".cm-live-link":{color:"var(--color-link, #e07070)",textDecoration:"none",cursor:"pointer"},".cm-live-link:hover":{textDecoration:"underline"},".cm-bullet-widget":{color:"var(--color-text-tertiary)",display:"inline-block",width:"16px",marginLeft:"-16px"},".cm-ordered-widget":{color:"var(--color-text-tertiary)",display:"inline-block",width:"20px",marginLeft:"-20px"},".cm-list-line":{paddingLeft:"20px"},".cm-hr-widget":{borderTop:"1px solid var(--color-border, #333)",margin:"8px 0"},".cm-image-widget":{display:"block",lineHeight:"0"},".cm-image-widget img":{maxWidth:"100%",borderRadius:"4px"},".cm-image-error":{color:"var(--color-text-tertiary)",fontSize:"13px",fontStyle:"italic"},".cm-image-raw":{color:"var(--color-text-tertiary)"}});export{$ as livePreviewPlugin,A as livePreviewTheme};
@@ -1,4 +1,4 @@
1
- import{w as B,e as me,h as H,k as K,A as he,f as Se,g as u,i as ye,ac as ve,j as ae,o as W,q as U,C as _e,ad as Ie,ae as oe,af as Te,ag as $,ah as G,ai as we,aj as Ae,R as be,ak as Ee,al as se,am as Ce,an as ke,m as Ne,W as ie,ao as Oe,ap as fe,aq as ue,ar as Y,as as xe,at as Re,au as $e,av as Me,z as De,aw as de,ax as Fe,v as x,F as Z,s as b,X as q}from"./BqnODQDb.js";import{i as He,g as ze}from"./BURuPSds.js";import{n as R}from"./zoVX1Zab.js";import{w as V}from"./BNfrhBeA.js";import{b as ne}from"./CaEaeeKb.js";function et(e,a){return a}function Pe(e,a,r){for(var n=[],c=a.length,l,d=a.length,h=0;h<c;h++){let T=a[h];ue(T,()=>{if(l){if(l.pending.delete(T),l.done.add(T),l.pending.size===0){var p=e.outrogroups;Q(se(l.done)),p.delete(l),p.size===0&&(e.outrogroups=null)}}else d-=1},!1)}if(d===0){var f=n.length===0&&r!==null;if(f){var g=r,o=g.parentNode;Re(o),o.append(g),e.items.clear()}Q(a,!f)}else l={pending:new Set(a),done:new Set},(e.outrogroups??=new Set).add(l)}function Q(e,a=!0){for(var r=0;r<e.length;r++)$e(e[r],a)}var le;function tt(e,a,r,n,c,l=null){var d=e,h=new Map,f=(a&de)!==0;if(f){var g=e;d=H?K(he(g)):g.appendChild(B())}H&&Se();var o=null,T=be(()=>{var s=r();return Ee(s)?s:s==null?[]:se(s)}),p,I=!0;function k(){t.fallback=o,Je(t,p,d,a,n),o!==null&&(p.length===0?(o.f&$)===0?fe(o):(o.f^=$,J(o,null,d)):ue(o,()=>{o=null}))}var M=me(()=>{p=u(T);var s=p.length;let w=!1;if(H){var S=ye(d)===ve;S!==(s===0)&&(d=ae(),K(d),W(!1),w=!0)}for(var y=new Set,A=Te,C=Ae(),m=0;m<s;m+=1){H&&U.nodeType===_e&&U.data===Ie&&(d=U,w=!0,W(!1));var N=p[m],O=n(N,m),_=I?null:h.get(O);_?(_.v&&oe(_.v,N),_.i&&oe(_.i,m),C&&A.unskip_effect(_.e)):(_=Le(h,I?d:le??=B(),N,O,m,c,a,r),I||(_.e.f|=$),h.set(O,_)),y.add(O)}if(s===0&&l&&!o&&(I?o=G(()=>l(d)):(o=G(()=>l(le??=B())),o.f|=$)),s>y.size&&we(),H&&s>0&&K(ae()),!I)if(C){for(const[i,v]of h)y.has(i)||A.skip_effect(v.e);A.oncommit(k),A.ondiscard(()=>{})}else k();w&&W(!0),u(T)}),t={effect:M,items:h,outrogroups:null,fallback:o};I=!1,H&&(d=U)}function z(e){for(;e!==null&&(e.f&xe)===0;)e=e.next;return e}function Je(e,a,r,n,c){var l=(n&Fe)!==0,d=a.length,h=e.items,f=z(e.effect.first),g,o=null,T,p=[],I=[],k,M,t,s;if(l)for(s=0;s<d;s+=1)k=a[s],M=c(k,s),t=h.get(M).e,(t.f&$)===0&&(t.nodes?.a?.measure(),(T??=new Set).add(t));for(s=0;s<d;s+=1){if(k=a[s],M=c(k,s),t=h.get(M).e,e.outrogroups!==null)for(const _ of e.outrogroups)_.pending.delete(t),_.done.delete(t);if((t.f&$)!==0)if(t.f^=$,t===f)J(t,null,r);else{var w=o?o.next:f;t===e.effect.last&&(e.effect.last=t.prev),t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),F(e,o,t),F(e,t,w),J(t,w,r),o=t,p=[],I=[],f=z(o.next);continue}if((t.f&Y)!==0&&(fe(t),l&&(t.nodes?.a?.unfix(),(T??=new Set).delete(t))),t!==f){if(g!==void 0&&g.has(t)){if(p.length<I.length){var S=I[0],y;o=S.prev;var A=p[0],C=p[p.length-1];for(y=0;y<p.length;y+=1)J(p[y],S,r);for(y=0;y<I.length;y+=1)g.delete(I[y]);F(e,A.prev,C.next),F(e,o,A),F(e,C,S),f=S,o=C,s-=1,p=[],I=[]}else g.delete(t),J(t,f,r),F(e,t.prev,t.next),F(e,t,o===null?e.effect.first:o.next),F(e,o,t),o=t;continue}for(p=[],I=[];f!==null&&f!==t;)(g??=new Set).add(f),I.push(f),f=z(f.next);if(f===null)continue}(t.f&$)===0&&p.push(t),o=t,f=z(t.next)}if(e.outrogroups!==null){for(const _ of e.outrogroups)_.pending.size===0&&(Q(se(_.done)),e.outrogroups?.delete(_));e.outrogroups.size===0&&(e.outrogroups=null)}if(f!==null||g!==void 0){var m=[];if(g!==void 0)for(t of g)(t.f&Y)===0&&m.push(t);for(;f!==null;)(f.f&Y)===0&&f!==e.fallback&&m.push(f),f=z(f.next);var N=m.length;if(N>0){var O=(n&de)!==0&&d===0?r:null;if(l){for(s=0;s<N;s+=1)m[s].nodes?.a?.measure();for(s=0;s<N;s+=1)m[s].nodes?.a?.fix()}Pe(e,m,O)}}l&&Me(()=>{if(T!==void 0)for(t of T)t.nodes?.a?.apply()})}function Le(e,a,r,n,c,l,d,h){var f=(d&Ce)!==0?(d&ke)===0?Ne(r,!1,!1):ie(r):null,g=(d&Oe)!==0?ie(c):null;return{v:f,i:g,e:G(()=>(l(a,f??r,g??c,h),()=>{e.delete(n)}))}}function J(e,a,r){if(e.nodes)for(var n=e.nodes.start,c=e.nodes.end,l=a&&(a.f&$)===0?a.nodes.start:r;n!==null;){var d=De(n);if(l.before(n),n===c)return;n=d}}function F(e,a,r){a===null?e.effect.first=r:a.next=r,r===null?e.effect.last=a:r.prev=a}function Ue(e,a,r){fetch("/api/chat/stream",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),signal:r}).then(async n=>{if(!n.ok){a({type:"error",message:`HTTP ${n.status}`});return}const c=n.body?.getReader();if(!c){a({type:"error",message:"No response body"});return}const l=new TextDecoder;let d="";for(;;){const{done:h,value:f}=await c.read();if(h)break;d+=l.decode(f,{stream:!0});const g=d.split(`
1
+ import{w as B,e as me,h as H,k as K,A as he,f as Se,g as u,i as ye,ac as ve,j as ae,o as W,q as U,C as _e,ad as Ie,ae as oe,af as Te,ag as $,ah as G,ai as we,aj as Ae,R as be,ak as Ee,al as se,am as Ce,an as ke,m as Ne,W as ie,ao as Oe,ap as fe,aq as ue,ar as Y,as as xe,at as Re,au as $e,av as Me,z as De,aw as de,ax as Fe,v as x,F as Z,s as b,X as q}from"./BqnODQDb.js";import{i as He,g as ze}from"./BCCONSiD.js";import{n as R}from"./zoVX1Zab.js";import{w as V}from"./BNfrhBeA.js";import{b as ne}from"./CaEaeeKb.js";function et(e,a){return a}function Pe(e,a,r){for(var n=[],c=a.length,l,d=a.length,h=0;h<c;h++){let T=a[h];ue(T,()=>{if(l){if(l.pending.delete(T),l.done.add(T),l.pending.size===0){var p=e.outrogroups;Q(se(l.done)),p.delete(l),p.size===0&&(e.outrogroups=null)}}else d-=1},!1)}if(d===0){var f=n.length===0&&r!==null;if(f){var g=r,o=g.parentNode;Re(o),o.append(g),e.items.clear()}Q(a,!f)}else l={pending:new Set(a),done:new Set},(e.outrogroups??=new Set).add(l)}function Q(e,a=!0){for(var r=0;r<e.length;r++)$e(e[r],a)}var le;function tt(e,a,r,n,c,l=null){var d=e,h=new Map,f=(a&de)!==0;if(f){var g=e;d=H?K(he(g)):g.appendChild(B())}H&&Se();var o=null,T=be(()=>{var s=r();return Ee(s)?s:s==null?[]:se(s)}),p,I=!0;function k(){t.fallback=o,Je(t,p,d,a,n),o!==null&&(p.length===0?(o.f&$)===0?fe(o):(o.f^=$,J(o,null,d)):ue(o,()=>{o=null}))}var M=me(()=>{p=u(T);var s=p.length;let w=!1;if(H){var S=ye(d)===ve;S!==(s===0)&&(d=ae(),K(d),W(!1),w=!0)}for(var y=new Set,A=Te,C=Ae(),m=0;m<s;m+=1){H&&U.nodeType===_e&&U.data===Ie&&(d=U,w=!0,W(!1));var N=p[m],O=n(N,m),_=I?null:h.get(O);_?(_.v&&oe(_.v,N),_.i&&oe(_.i,m),C&&A.unskip_effect(_.e)):(_=Le(h,I?d:le??=B(),N,O,m,c,a,r),I||(_.e.f|=$),h.set(O,_)),y.add(O)}if(s===0&&l&&!o&&(I?o=G(()=>l(d)):(o=G(()=>l(le??=B())),o.f|=$)),s>y.size&&we(),H&&s>0&&K(ae()),!I)if(C){for(const[i,v]of h)y.has(i)||A.skip_effect(v.e);A.oncommit(k),A.ondiscard(()=>{})}else k();w&&W(!0),u(T)}),t={effect:M,items:h,outrogroups:null,fallback:o};I=!1,H&&(d=U)}function z(e){for(;e!==null&&(e.f&xe)===0;)e=e.next;return e}function Je(e,a,r,n,c){var l=(n&Fe)!==0,d=a.length,h=e.items,f=z(e.effect.first),g,o=null,T,p=[],I=[],k,M,t,s;if(l)for(s=0;s<d;s+=1)k=a[s],M=c(k,s),t=h.get(M).e,(t.f&$)===0&&(t.nodes?.a?.measure(),(T??=new Set).add(t));for(s=0;s<d;s+=1){if(k=a[s],M=c(k,s),t=h.get(M).e,e.outrogroups!==null)for(const _ of e.outrogroups)_.pending.delete(t),_.done.delete(t);if((t.f&$)!==0)if(t.f^=$,t===f)J(t,null,r);else{var w=o?o.next:f;t===e.effect.last&&(e.effect.last=t.prev),t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),F(e,o,t),F(e,t,w),J(t,w,r),o=t,p=[],I=[],f=z(o.next);continue}if((t.f&Y)!==0&&(fe(t),l&&(t.nodes?.a?.unfix(),(T??=new Set).delete(t))),t!==f){if(g!==void 0&&g.has(t)){if(p.length<I.length){var S=I[0],y;o=S.prev;var A=p[0],C=p[p.length-1];for(y=0;y<p.length;y+=1)J(p[y],S,r);for(y=0;y<I.length;y+=1)g.delete(I[y]);F(e,A.prev,C.next),F(e,o,A),F(e,C,S),f=S,o=C,s-=1,p=[],I=[]}else g.delete(t),J(t,f,r),F(e,t.prev,t.next),F(e,t,o===null?e.effect.first:o.next),F(e,o,t),o=t;continue}for(p=[],I=[];f!==null&&f!==t;)(g??=new Set).add(f),I.push(f),f=z(f.next);if(f===null)continue}(t.f&$)===0&&p.push(t),o=t,f=z(t.next)}if(e.outrogroups!==null){for(const _ of e.outrogroups)_.pending.size===0&&(Q(se(_.done)),e.outrogroups?.delete(_));e.outrogroups.size===0&&(e.outrogroups=null)}if(f!==null||g!==void 0){var m=[];if(g!==void 0)for(t of g)(t.f&Y)===0&&m.push(t);for(;f!==null;)(f.f&Y)===0&&f!==e.fallback&&m.push(f),f=z(f.next);var N=m.length;if(N>0){var O=(n&de)!==0&&d===0?r:null;if(l){for(s=0;s<N;s+=1)m[s].nodes?.a?.measure();for(s=0;s<N;s+=1)m[s].nodes?.a?.fix()}Pe(e,m,O)}}l&&Me(()=>{if(T!==void 0)for(t of T)t.nodes?.a?.apply()})}function Le(e,a,r,n,c,l,d,h){var f=(d&Ce)!==0?(d&ke)===0?Ne(r,!1,!1):ie(r):null,g=(d&Oe)!==0?ie(c):null;return{v:f,i:g,e:G(()=>(l(a,f??r,g??c,h),()=>{e.delete(n)}))}}function J(e,a,r){if(e.nodes)for(var n=e.nodes.start,c=e.nodes.end,l=a&&(a.f&$)===0?a.nodes.start:r;n!==null;){var d=De(n);if(l.before(n),n===c)return;n=d}}function F(e,a,r){a===null?e.effect.first=r:a.next=r,r===null?e.effect.last=a:r.prev=a}function Ue(e,a,r){fetch("/api/chat/stream",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),signal:r}).then(async n=>{if(!n.ok){a({type:"error",message:`HTTP ${n.status}`});return}const c=n.body?.getReader();if(!c){a({type:"error",message:"No response body"});return}const l=new TextDecoder;let d="";for(;;){const{done:h,value:f}=await c.read();if(h)break;d+=l.decode(f,{stream:!0});const g=d.split(`
2
2
  `);d=g.pop()??"";for(const o of g)if(o.startsWith("data: "))try{const T=JSON.parse(o.slice(6));a(T)}catch{}}}).catch(n=>{n.name!=="AbortError"&&a({type:"error",message:n.message})})}function j(){const e=ne.user?.id;return e?`sg-chat-sessions-${e}`:"sg-chat-sessions"}function ee(){const e=ne.user?.id;return e?`sg-chat-version-${e}`:"sg-chat-version"}const qe=14;function Ve(){try{ne.user?.id&&localStorage.getItem("sg-chat-sessions")&&(localStorage.removeItem("sg-chat-sessions"),localStorage.removeItem("sg-chat-version"))}catch{}}function L(){Ve();try{const e=localStorage.getItem(j());if(!e)return[];if(localStorage.getItem(ee())==="2")return JSON.parse(e);const n=JSON.parse(e).map(c=>({id:crypto.randomUUID(),createdAt:c.date+"T00:00:00.000Z",updatedAt:c.date+"T00:00:00.000Z",title:c.messages.find(l=>l.role==="user")?.content.slice(0,50)||"New chat",messages:c.messages}));return localStorage.setItem(j(),JSON.stringify(n)),localStorage.setItem(ee(),"2"),n}catch{return[]}}function te(e){const r=[...e].sort((n,c)=>c.updatedAt.localeCompare(n.updatedAt)).slice(0,qe);try{localStorage.setItem(j(),JSON.stringify(r)),localStorage.setItem(ee(),"2")}catch{}}function P(e,a){const r=L(),n=a.map(({streaming:l,...d})=>d),c=r.findIndex(l=>l.id===e);c>=0&&(r[c].messages=n,r[c].updatedAt=new Date().toISOString()),te(r)}function ce(e){const a=new Date().toISOString().slice(0,10);return e.updatedAt.slice(0,10)===a}function Xe(){const r=L().sort((s,w)=>w.updatedAt.localeCompare(s.updatedAt)).find(ce)??null;let n=x(Z(r?r.messages.map(s=>({...s,streaming:!1})):[])),c=x(Z(r?.id??null)),l=x(!1),d=x(0),h=x(0),f=x(0),g=x(null),o=null,T=x(""),p=x(Z(!!r));const I=new Set(["create_entity","update_entity","delete_entity","move_entity"]);function k(){if(u(c)&&u(p))return u(c);const s=u(c)||crypto.randomUUID();b(c,s,!0);const w=new Date().toISOString(),S=L();return S.push({id:s,createdAt:w,updatedAt:w,title:"New chat",messages:[]}),te(S),b(p,!0),s}function M(s,w){if(!s.trim()||u(l))return;b(g,null);const S=k();w?.silent||u(n).push({role:"user",content:s}),u(n).push({role:"agent",content:"",segments:[],streaming:!0}),b(l,!0);const y=L(),A=y.find(i=>i.id===S);A&&A.title==="New chat"&&(A.title=s.slice(0,50),te(y)),P(S,u(n));let C=!1,m=null;o=new AbortController;const N=R.selectedSubPath?`${R.selectedRepo}/${R.selectedType}/${R.selectedId}/${R.selectedSubPath}`:R.selectedId?`${R.selectedRepo}/${R.selectedType}/${R.selectedId}`:null,O=u(n).slice(0,-2).map(i=>({role:i.role==="agent"?"assistant":i.role,content:i.content})),_={message:s,context:N??void 0,sessionId:S,history:O.length>0?O:void 0};Ue(_,i=>{if(!u(l))return;const v=u(n)[u(n).length-1];if(!v||v.role!=="agent")return;const D=v.segments;switch(i.type){case"token":{v.content+=i.text??"";const E=D[D.length-1];E&&E.type==="text"?E.content+=i.text??"":D.push({type:"text",content:i.text??""}),v.segments=D,q(h);break}case"tool_start":if(i.name){I.has(i.name)&&(C=!0);const E=D[D.length-1];E&&E.type==="tools"?E.names=[...E.names,i.name]:D.push({type:"tools",names:[i.name]}),v.segments=D,q(h)}break;case"mutation":C=!0,i.action==="created"&&i.repo&&i.entityType&&i.entityId&&(m={repo:i.repo,entityType:i.entityType,entityId:i.entityId}),i.repo==="_conversation"&&setTimeout(()=>{b(n,[],!0),u(c)&&u(p)&&P(u(c),u(n))},100),i.repo==="_workspace"&&V.load(),window.StudioChrome?.emitMutation?.({action:i.action,repo:i.repo,entityType:i.entityType,entityId:i.entityId});break;case"highlight":b(g,i.entityIds&&i.entityIds.length>0?new Set(i.entityIds):null,!0);break;case"done":{i.message&&!v.content&&(v.content=i.message,v.segments=[{type:"text",content:i.message}]);const E=/<!--\s*followups:\s*\[.*?\]\s*-->\s*$/s;v.content&&(v.content=v.content.replace(E,"").trimEnd());const re=v.segments??[],X=re[re.length-1];if(X?.type==="text"&&(X.content=X.content.replace(E,"").trimEnd()),i.suggestions?.length&&(v.suggestions=i.suggestions),v.streaming=!1,b(l,!1),P(S,u(n)),C){He().then(()=>{q(d)});const ge=new Set(V.repos.map(pe=>pe.name));(m&&!ge.has(m.repo)?V.load():V.refreshAll()).then(()=>{m&&ze(`/${m.repo}/${m.entityType}/${m.entityId}`)})}break}case"error":v.content+=`
3
3
 
4
4
  Error: ${i.message}`,v.streaming=!1,b(l,!1),P(S,u(n));break}},o.signal)}function t(){if(!u(l))return;fetch("/api/chat/abort",{method:"POST",credentials:"include"}).catch(()=>{}),o?.abort(),o=null,b(l,!1);const s=u(n)[u(n).length-1];s?.streaming&&(s.streaming=!1,u(c)&&P(u(c),u(n)))}return{get messages(){return u(n)},get streaming(){return u(l)},get mutationCount(){return u(d)},get scrollTick(){return u(h)},get forceScroll(){return u(f)},triggerScroll(){q(f)},get highlightedIds(){return u(g)},get activeSessionId(){return u(c)},get draftInput(){return u(T)},set draftInput(s){b(T,s,!0)},send:M,stop:t,reinitialize(){t();const S=L().sort((y,A)=>A.updatedAt.localeCompare(y.updatedAt)).find(ce)??null;b(c,S?.id??null,!0),b(n,S?.messages.map(y=>({...y,streaming:!1}))??[],!0),b(p,!!S)}}}const Be=Xe(),st=Object.freeze(Object.defineProperty({__proto__:null,chatStore:Be},Symbol.toStringTag,{value:"Module"}));export{st as a,Be as c,tt as e,et as i};