studiograph 1.3.46 → 1.3.48-beta.0
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.
- package/README.md +26 -16
- package/dist/agent/agent-pool.d.ts +117 -0
- package/dist/agent/agent-pool.js +287 -0
- package/dist/agent/agent-pool.js.map +1 -0
- package/dist/agent/followups.d.ts +34 -0
- package/dist/agent/followups.js +52 -0
- package/dist/agent/followups.js.map +1 -0
- package/dist/agent/orchestrator.d.ts +113 -22
- package/dist/agent/orchestrator.js +573 -181
- package/dist/agent/orchestrator.js.map +1 -1
- package/dist/agent/prompts/entity-types-section.d.ts +36 -0
- package/dist/agent/prompts/entity-types-section.js +90 -0
- package/dist/agent/prompts/entity-types-section.js.map +1 -0
- package/dist/agent/prompts/system.md +148 -69
- package/dist/agent/skill-loader.d.ts +30 -17
- package/dist/agent/skill-loader.js +63 -30
- package/dist/agent/skill-loader.js.map +1 -1
- package/dist/agent/skills/entity-schema.md +77 -433
- package/dist/agent/skills/interview/entity-templates.md +193 -0
- package/dist/agent/skills/interview/question-domains.md +391 -0
- package/dist/agent/skills/interview/skill.md +204 -0
- package/dist/agent/skills/schema-rules.md +54 -0
- package/dist/agent/tools/capture-tools.d.ts +31 -0
- package/dist/agent/tools/capture-tools.js +40 -0
- package/dist/agent/tools/capture-tools.js.map +1 -0
- package/dist/agent/tools/folder-tools.d.ts +47 -0
- package/dist/agent/tools/folder-tools.js +249 -0
- package/dist/agent/tools/folder-tools.js.map +1 -0
- package/dist/agent/tools/fs-tools.d.ts +7 -6
- package/dist/agent/tools/fs-tools.js +5 -4
- package/dist/agent/tools/fs-tools.js.map +1 -1
- package/dist/agent/tools/graph-tools.d.ts +21 -58
- package/dist/agent/tools/graph-tools.js +635 -332
- package/dist/agent/tools/graph-tools.js.map +1 -1
- package/dist/agent/tools/history-tools.d.ts +95 -0
- package/dist/agent/tools/history-tools.js +461 -0
- package/dist/agent/tools/history-tools.js.map +1 -0
- package/dist/agent/tools/load-skill.d.ts +6 -5
- package/dist/agent/tools/load-skill.js +3 -3
- package/dist/agent/tools/load-skill.js.map +1 -1
- package/dist/agent/tools/ops-tools.d.ts +5 -4
- package/dist/agent/tools/ops-tools.js +130 -236
- package/dist/agent/tools/ops-tools.js.map +1 -1
- package/dist/agent/tools/permission-tools.d.ts +87 -17
- package/dist/agent/tools/permission-tools.js +233 -38
- package/dist/agent/tools/permission-tools.js.map +1 -1
- package/dist/agent/tools/tool-loader.js +5 -4
- package/dist/agent/tools/tool-loader.js.map +1 -1
- package/dist/agent/tools/web-tools.d.ts +18 -0
- package/dist/agent/tools/web-tools.js +283 -0
- package/dist/agent/tools/web-tools.js.map +1 -0
- package/dist/cli/commands/about.d.ts +1 -0
- package/dist/cli/commands/about.js +55 -3
- package/dist/cli/commands/about.js.map +1 -1
- package/dist/cli/commands/admin/audit-workspace.d.ts +23 -0
- package/dist/cli/commands/admin/audit-workspace.js +133 -0
- package/dist/cli/commands/admin/audit-workspace.js.map +1 -0
- package/dist/cli/commands/admin/audit.d.ts +21 -0
- package/dist/cli/commands/admin/audit.js +174 -0
- package/dist/cli/commands/admin/audit.js.map +1 -0
- package/dist/cli/commands/admin/backup.d.ts +54 -0
- package/dist/cli/commands/admin/backup.js +207 -0
- package/dist/cli/commands/admin/backup.js.map +1 -0
- package/dist/cli/commands/admin/folder.d.ts +11 -0
- package/dist/cli/commands/admin/folder.js +186 -0
- package/dist/cli/commands/admin/folder.js.map +1 -0
- package/dist/cli/commands/admin/index.d.ts +16 -0
- package/dist/cli/commands/admin/index.js +46 -0
- package/dist/cli/commands/admin/index.js.map +1 -0
- package/dist/cli/commands/admin/migrate-assets.d.ts +53 -0
- package/dist/cli/commands/admin/migrate-assets.js +184 -0
- package/dist/cli/commands/admin/migrate-assets.js.map +1 -0
- package/dist/cli/commands/admin/migrate.d.ts +56 -0
- package/dist/cli/commands/admin/migrate.js +263 -0
- package/dist/cli/commands/admin/migrate.js.map +1 -0
- package/dist/cli/commands/admin/restore.d.ts +24 -0
- package/dist/cli/commands/admin/restore.js +228 -0
- package/dist/cli/commands/admin/restore.js.map +1 -0
- package/dist/cli/commands/admin/secrets.d.ts +23 -0
- package/dist/cli/commands/admin/secrets.js +256 -0
- package/dist/cli/commands/admin/secrets.js.map +1 -0
- package/dist/cli/commands/admin/settings.d.ts +28 -0
- package/dist/cli/commands/admin/settings.js +284 -0
- package/dist/cli/commands/admin/settings.js.map +1 -0
- package/dist/cli/commands/admin/token.d.ts +42 -0
- package/dist/cli/commands/admin/token.js +126 -0
- package/dist/cli/commands/admin/token.js.map +1 -0
- package/dist/cli/commands/admin/transfer-ownership.d.ts +15 -0
- package/dist/cli/commands/admin/transfer-ownership.js +106 -0
- package/dist/cli/commands/admin/transfer-ownership.js.map +1 -0
- package/dist/cli/commands/admin/user.d.ts +11 -0
- package/dist/cli/commands/admin/user.js +187 -0
- package/dist/cli/commands/admin/user.js.map +1 -0
- package/dist/cli/commands/clone.d.ts +25 -3
- package/dist/cli/commands/clone.js +142 -36
- package/dist/cli/commands/clone.js.map +1 -1
- package/dist/cli/commands/commit.d.ts +1 -1
- package/dist/cli/commands/commit.js +24 -11
- package/dist/cli/commands/commit.js.map +1 -1
- package/dist/cli/commands/config.d.ts +23 -107
- package/dist/cli/commands/config.js +52 -260
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/connector.d.ts +10 -13
- package/dist/cli/commands/connector.js +16 -58
- package/dist/cli/commands/connector.js.map +1 -1
- package/dist/cli/commands/deploy.js +215 -68
- package/dist/cli/commands/deploy.js.map +1 -1
- package/dist/cli/commands/index.js +2 -2
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.js +10 -30
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/mcp.js +12 -4
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/commands/orphans.js +14 -30
- package/dist/cli/commands/orphans.js.map +1 -1
- package/dist/cli/commands/r2.d.ts +3 -0
- package/dist/cli/commands/r2.js +223 -204
- package/dist/cli/commands/r2.js.map +1 -1
- package/dist/cli/commands/redeploy.js +65 -12
- package/dist/cli/commands/redeploy.js.map +1 -1
- package/dist/cli/commands/reset.d.ts +22 -6
- package/dist/cli/commands/reset.js +142 -63
- package/dist/cli/commands/reset.js.map +1 -1
- package/dist/cli/commands/serve.js +209 -24
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/sync.d.ts +1 -1
- package/dist/cli/commands/sync.js +372 -202
- package/dist/cli/commands/sync.js.map +1 -1
- package/dist/cli/crypto-bundle.d.ts +39 -0
- package/dist/cli/crypto-bundle.js +94 -0
- package/dist/cli/crypto-bundle.js.map +1 -0
- package/dist/cli/index.js +24 -35
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/railway-pin.d.ts +68 -0
- package/dist/cli/railway-pin.js +96 -0
- package/dist/cli/railway-pin.js.map +1 -0
- package/dist/cli/railway-provisioning.d.ts +53 -0
- package/dist/cli/railway-provisioning.js +85 -0
- package/dist/cli/railway-provisioning.js.map +1 -0
- package/dist/cli/setup-wizard.d.ts +33 -52
- package/dist/cli/setup-wizard.js +43 -68
- package/dist/cli/setup-wizard.js.map +1 -1
- package/dist/core/accent-palette.d.ts +22 -0
- package/dist/core/accent-palette.js +47 -0
- package/dist/core/accent-palette.js.map +1 -0
- package/dist/core/cell-anchor.d.ts +29 -0
- package/dist/core/cell-anchor.js +53 -0
- package/dist/core/cell-anchor.js.map +1 -0
- package/dist/core/comment-anchor.d.ts +41 -0
- package/dist/core/comment-anchor.js +147 -0
- package/dist/core/comment-anchor.js.map +1 -0
- package/dist/core/commit-messages.d.ts +57 -0
- package/dist/core/commit-messages.js +85 -0
- package/dist/core/commit-messages.js.map +1 -0
- package/dist/core/embeds.d.ts +56 -0
- package/dist/core/embeds.js +103 -0
- package/dist/core/embeds.js.map +1 -0
- package/dist/core/entity-body-templates.d.ts +21 -0
- package/dist/core/entity-body-templates.js +53 -0
- package/dist/core/entity-body-templates.js.map +1 -0
- package/dist/core/entity-types-catalog.d.ts +65 -0
- package/dist/core/entity-types-catalog.js +140 -0
- package/dist/core/entity-types-catalog.js.map +1 -0
- package/dist/core/folder-paths.d.ts +41 -0
- package/dist/core/folder-paths.js +95 -0
- package/dist/core/folder-paths.js.map +1 -0
- package/dist/core/folder-sidecar.d.ts +36 -0
- package/dist/core/folder-sidecar.js +91 -0
- package/dist/core/folder-sidecar.js.map +1 -0
- package/dist/core/graph.d.ts +675 -14
- package/dist/core/graph.js +2118 -314
- package/dist/core/graph.js.map +1 -1
- package/dist/core/history-diff.d.ts +35 -0
- package/dist/core/history-diff.js +114 -0
- package/dist/core/history-diff.js.map +1 -0
- package/dist/core/schema-registry.d.ts +59 -0
- package/dist/core/schema-registry.js +198 -0
- package/dist/core/schema-registry.js.map +1 -1
- package/dist/core/schemas/connector.d.ts +67 -0
- package/dist/core/schemas/connector.js +100 -0
- package/dist/core/schemas/connector.js.map +1 -0
- package/dist/core/schemas/workspace.d.ts +122 -0
- package/dist/core/schemas/workspace.js +211 -0
- package/dist/core/schemas/workspace.js.map +1 -0
- package/dist/core/secrets/SecretStore.d.ts +77 -0
- package/dist/core/secrets/SecretStore.js +13 -0
- package/dist/core/secrets/SecretStore.js.map +1 -0
- package/dist/core/secrets/SettingsResolver.d.ts +54 -0
- package/dist/core/secrets/SettingsResolver.js +80 -0
- package/dist/core/secrets/SettingsResolver.js.map +1 -0
- package/dist/core/secrets/SettingsStore.d.ts +30 -0
- package/dist/core/secrets/SettingsStore.js +9 -0
- package/dist/core/secrets/SettingsStore.js.map +1 -0
- package/dist/core/secrets/SqliteEncryptedStore.d.ts +90 -0
- package/dist/core/secrets/SqliteEncryptedStore.js +598 -0
- package/dist/core/secrets/SqliteEncryptedStore.js.map +1 -0
- package/dist/core/secrets/audit.d.ts +36 -0
- package/dist/core/secrets/audit.js +60 -0
- package/dist/core/secrets/audit.js.map +1 -0
- package/dist/core/secrets/auth-db-migration.d.ts +129 -0
- package/dist/core/secrets/auth-db-migration.js +653 -0
- package/dist/core/secrets/auth-db-migration.js.map +1 -0
- package/dist/core/secrets/bundle.d.ts +141 -0
- package/dist/core/secrets/bundle.js +435 -0
- package/dist/core/secrets/bundle.js.map +1 -0
- package/dist/core/secrets/dual-write.d.ts +81 -0
- package/dist/core/secrets/dual-write.js +247 -0
- package/dist/core/secrets/dual-write.js.map +1 -0
- package/dist/core/secrets/encryption.d.ts +44 -0
- package/dist/core/secrets/encryption.js +97 -0
- package/dist/core/secrets/encryption.js.map +1 -0
- package/dist/core/secrets/index.d.ts +49 -0
- package/dist/core/secrets/index.js +74 -0
- package/dist/core/secrets/index.js.map +1 -0
- package/dist/core/secrets/master-key.d.ts +38 -0
- package/dist/core/secrets/master-key.js +122 -0
- package/dist/core/secrets/master-key.js.map +1 -0
- package/dist/core/secrets/probes/anthropic.d.ts +98 -0
- package/dist/core/secrets/probes/anthropic.js +300 -0
- package/dist/core/secrets/probes/anthropic.js.map +1 -0
- package/dist/core/secrets/probes/brave.d.ts +9 -0
- package/dist/core/secrets/probes/brave.js +15 -0
- package/dist/core/secrets/probes/brave.js.map +1 -0
- package/dist/core/secrets/probes/r2.d.ts +15 -0
- package/dist/core/secrets/probes/r2.js +14 -0
- package/dist/core/secrets/probes/r2.js.map +1 -0
- package/dist/core/secrets/probes/voyage.d.ts +13 -0
- package/dist/core/secrets/probes/voyage.js +52 -0
- package/dist/core/secrets/probes/voyage.js.map +1 -0
- package/dist/core/secrets/r2-structural-migration.d.ts +39 -0
- package/dist/core/secrets/r2-structural-migration.js +109 -0
- package/dist/core/secrets/r2-structural-migration.js.map +1 -0
- package/dist/core/secrets/read-flip.d.ts +59 -0
- package/dist/core/secrets/read-flip.js +87 -0
- package/dist/core/secrets/read-flip.js.map +1 -0
- package/dist/core/secrets/registry.d.ts +188 -0
- package/dist/core/secrets/registry.js +598 -0
- package/dist/core/secrets/registry.js.map +1 -0
- package/dist/core/types.d.ts +77 -455
- package/dist/core/types.js +17 -3
- package/dist/core/types.js.map +1 -1
- package/dist/core/user-config.d.ts +75 -7
- package/dist/core/user-config.js +155 -7
- package/dist/core/user-config.js.map +1 -1
- package/dist/core/validation.d.ts +717 -1791
- package/dist/core/validation.js +357 -228
- package/dist/core/validation.js.map +1 -1
- package/dist/core/workspace-manager.d.ts +79 -12
- package/dist/core/workspace-manager.js +213 -73
- package/dist/core/workspace-manager.js.map +1 -1
- package/dist/core/workspace.d.ts +19 -5
- package/dist/core/workspace.js +69 -35
- package/dist/core/workspace.js.map +1 -1
- package/dist/mcp/comment-virtual-entity.d.ts +36 -0
- package/dist/mcp/comment-virtual-entity.js +71 -0
- package/dist/mcp/comment-virtual-entity.js.map +1 -0
- package/dist/mcp/connector-manager.d.ts +94 -13
- package/dist/mcp/connector-manager.js +283 -62
- package/dist/mcp/connector-manager.js.map +1 -1
- package/dist/mcp/oauth-provider.d.ts +27 -33
- package/dist/mcp/oauth-provider.js +65 -134
- package/dist/mcp/oauth-provider.js.map +1 -1
- package/dist/mcp/oauth-registry.d.ts +62 -0
- package/dist/mcp/oauth-registry.js +85 -0
- package/dist/mcp/oauth-registry.js.map +1 -0
- package/dist/mcp/server.d.ts +11 -3
- package/dist/mcp/server.js +30 -5
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/state-signer.d.ts +41 -0
- package/dist/mcp/state-signer.js +120 -0
- package/dist/mcp/state-signer.js.map +1 -0
- package/dist/mcp/tools.d.ts +35 -2
- package/dist/mcp/tools.js +1051 -117
- package/dist/mcp/tools.js.map +1 -1
- package/dist/server/__tests__/helpers/graph-api.d.ts +18 -0
- package/dist/server/__tests__/helpers/graph-api.js +16 -0
- package/dist/server/__tests__/helpers/graph-api.js.map +1 -0
- package/dist/server/body-write-coordinator.d.ts +151 -0
- package/dist/server/body-write-coordinator.js +161 -0
- package/dist/server/body-write-coordinator.js.map +1 -0
- package/dist/server/cloud-billing-flow.d.ts +32 -0
- package/dist/server/cloud-billing-flow.js +75 -0
- package/dist/server/cloud-billing-flow.js.map +1 -0
- package/dist/server/commit-audit.d.ts +26 -0
- package/dist/server/commit-audit.js +30 -0
- package/dist/server/commit-audit.js.map +1 -0
- package/dist/server/index.d.ts +14 -3
- package/dist/server/index.js +451 -193
- package/dist/server/index.js.map +1 -1
- package/dist/server/middleware/sanitize.d.ts +46 -0
- package/dist/server/middleware/sanitize.js +171 -0
- package/dist/server/middleware/sanitize.js.map +1 -0
- package/dist/server/routes/asset-api.d.ts +10 -0
- package/dist/server/routes/asset-api.js +294 -0
- package/dist/server/routes/asset-api.js.map +1 -0
- package/dist/server/routes/audit-api.d.ts +24 -0
- package/dist/server/routes/audit-api.js +117 -0
- package/dist/server/routes/audit-api.js.map +1 -0
- package/dist/server/routes/auth-api.d.ts +3 -2
- package/dist/server/routes/auth-api.js +519 -38
- package/dist/server/routes/auth-api.js.map +1 -1
- package/dist/server/routes/capture-api.d.ts +18 -0
- package/dist/server/routes/capture-api.js +257 -0
- package/dist/server/routes/capture-api.js.map +1 -0
- package/dist/server/routes/chat.d.ts +4 -1
- package/dist/server/routes/chat.js +298 -88
- package/dist/server/routes/chat.js.map +1 -1
- package/dist/server/routes/comments-api.d.ts +15 -0
- package/dist/server/routes/comments-api.js +444 -0
- package/dist/server/routes/comments-api.js.map +1 -0
- package/dist/server/routes/config-api.d.ts +21 -0
- package/dist/server/routes/config-api.js +256 -0
- package/dist/server/routes/config-api.js.map +1 -0
- package/dist/server/routes/connectors-api.d.ts +17 -0
- package/dist/server/routes/connectors-api.js +410 -0
- package/dist/server/routes/connectors-api.js.map +1 -0
- package/dist/server/routes/event-ingest-api.d.ts +15 -0
- package/dist/server/routes/event-ingest-api.js +125 -0
- package/dist/server/routes/event-ingest-api.js.map +1 -0
- package/dist/server/routes/git-http.d.ts +3 -3
- package/dist/server/routes/git-http.js +86 -38
- package/dist/server/routes/git-http.js.map +1 -1
- package/dist/server/routes/graph-api-access.d.ts +35 -0
- package/dist/server/routes/graph-api-access.js +105 -0
- package/dist/server/routes/graph-api-access.js.map +1 -0
- package/dist/server/routes/graph-api.d.ts +3 -2
- package/dist/server/routes/graph-api.js +1321 -263
- package/dist/server/routes/graph-api.js.map +1 -1
- package/dist/server/routes/health.d.ts +18 -0
- package/dist/server/routes/health.js +74 -0
- package/dist/server/routes/health.js.map +1 -0
- package/dist/server/routes/insights-api.d.ts +1 -2
- package/dist/server/routes/insights-api.js +149 -41
- package/dist/server/routes/insights-api.js.map +1 -1
- package/dist/server/routes/mcp.d.ts +7 -3
- package/dist/server/routes/mcp.js +22 -6
- package/dist/server/routes/mcp.js.map +1 -1
- package/dist/server/routes/permissions-api.d.ts +9 -2
- package/dist/server/routes/permissions-api.js +87 -30
- package/dist/server/routes/permissions-api.js.map +1 -1
- package/dist/server/routes/r2-api.d.ts +25 -0
- package/dist/server/routes/r2-api.js +276 -0
- package/dist/server/routes/r2-api.js.map +1 -0
- package/dist/server/routes/secrets-api.d.ts +36 -0
- package/dist/server/routes/secrets-api.js +308 -0
- package/dist/server/routes/secrets-api.js.map +1 -0
- package/dist/server/routes/settings-api.d.ts +29 -0
- package/dist/server/routes/settings-api.js +180 -0
- package/dist/server/routes/settings-api.js.map +1 -0
- package/dist/server/routes/url-api.d.ts +7 -0
- package/dist/server/routes/url-api.js +74 -0
- package/dist/server/routes/url-api.js.map +1 -0
- package/dist/server/routes/views-api.js +81 -7
- package/dist/server/routes/views-api.js.map +1 -1
- package/dist/server/routes/workspace-api.d.ts +2 -1
- package/dist/server/routes/workspace-api.js +124 -35
- package/dist/server/routes/workspace-api.js.map +1 -1
- package/dist/server/routes/ws.d.ts +2 -1
- package/dist/server/routes/ws.js +64 -16
- package/dist/server/routes/ws.js.map +1 -1
- package/dist/server/session-manager.d.ts +48 -5
- package/dist/server/session-manager.js +182 -15
- package/dist/server/session-manager.js.map +1 -1
- package/dist/server/ws-hub.d.ts +138 -14
- package/dist/server/ws-hub.js +0 -0
- package/dist/server/ws-hub.js.map +1 -1
- package/dist/server/yjs-manager.d.ts +285 -7
- package/dist/server/yjs-manager.js +907 -36
- package/dist/server/yjs-manager.js.map +1 -1
- package/dist/server/yjs-persistence.d.ts +165 -0
- package/dist/server/yjs-persistence.js +557 -0
- package/dist/server/yjs-persistence.js.map +1 -0
- package/dist/server/yjs-text-diff.d.ts +32 -0
- package/dist/server/yjs-text-diff.js +61 -0
- package/dist/server/yjs-text-diff.js.map +1 -0
- package/dist/services/access-control.d.ts +73 -0
- package/dist/services/access-control.js +146 -0
- package/dist/services/access-control.js.map +1 -0
- package/dist/services/asset-listing.d.ts +39 -0
- package/dist/services/asset-listing.js +125 -0
- package/dist/services/asset-listing.js.map +1 -0
- package/dist/services/asset-upload-service.d.ts +53 -0
- package/dist/services/asset-upload-service.js +201 -0
- package/dist/services/asset-upload-service.js.map +1 -0
- package/dist/services/assets/asset-index-service.d.ts +82 -0
- package/dist/services/assets/asset-index-service.js +167 -0
- package/dist/services/assets/asset-index-service.js.map +1 -0
- package/dist/services/assets/base.d.ts +44 -0
- package/dist/services/assets/base.js +55 -0
- package/dist/services/assets/base.js.map +1 -1
- package/dist/services/assets/index.d.ts +69 -1
- package/dist/services/assets/index.js +125 -0
- package/dist/services/assets/index.js.map +1 -1
- package/dist/services/assets/local.d.ts +12 -1
- package/dist/services/assets/local.js +100 -1
- package/dist/services/assets/local.js.map +1 -1
- package/dist/services/assets/r2-sync.d.ts +88 -0
- package/dist/services/assets/r2-sync.js +412 -0
- package/dist/services/assets/r2-sync.js.map +1 -0
- package/dist/services/assets/r2.d.ts +34 -1
- package/dist/services/assets/r2.js +93 -1
- package/dist/services/assets/r2.js.map +1 -1
- package/dist/services/auth-service.d.ts +314 -36
- package/dist/services/auth-service.js +1126 -139
- package/dist/services/auth-service.js.map +1 -1
- package/dist/services/bookmark-import-service.d.ts +49 -0
- package/dist/services/bookmark-import-service.js +250 -0
- package/dist/services/bookmark-import-service.js.map +1 -0
- package/dist/services/cloud-inference-billing.d.ts +64 -0
- package/dist/services/cloud-inference-billing.js +313 -0
- package/dist/services/cloud-inference-billing.js.map +1 -0
- package/dist/services/comment-service.d.ts +97 -0
- package/dist/services/comment-service.js +341 -0
- package/dist/services/comment-service.js.map +1 -0
- package/dist/services/csv-service.d.ts +22 -17
- package/dist/services/csv-service.js +55 -92
- package/dist/services/csv-service.js.map +1 -1
- package/dist/services/entity-mutations.d.ts +161 -0
- package/dist/services/entity-mutations.js +296 -0
- package/dist/services/entity-mutations.js.map +1 -0
- package/dist/services/event-processor.d.ts +104 -0
- package/dist/services/event-processor.js +441 -0
- package/dist/services/event-processor.js.map +1 -0
- package/dist/services/folder-creation.d.ts +33 -0
- package/dist/services/folder-creation.js +103 -0
- package/dist/services/folder-creation.js.map +1 -0
- package/dist/services/git.d.ts +54 -0
- package/dist/services/git.js +188 -54
- package/dist/services/git.js.map +1 -1
- package/dist/services/graph-maintenance.d.ts +42 -0
- package/dist/services/graph-maintenance.js +143 -0
- package/dist/services/graph-maintenance.js.map +1 -0
- package/dist/services/import-service.d.ts +45 -2
- package/dist/services/import-service.js +304 -100
- package/dist/services/import-service.js.map +1 -1
- package/dist/services/lint-service.js +9 -16
- package/dist/services/lint-service.js.map +1 -1
- package/dist/services/markdown.d.ts +12 -1
- package/dist/services/markdown.js +71 -6
- package/dist/services/markdown.js.map +1 -1
- package/dist/services/memory-service.d.ts +22 -14
- package/dist/services/memory-service.js +53 -35
- package/dist/services/memory-service.js.map +1 -1
- package/dist/services/mention-detector.d.ts +23 -0
- package/dist/services/mention-detector.js +47 -0
- package/dist/services/mention-detector.js.map +1 -0
- package/dist/services/notification-broadcast.d.ts +32 -0
- package/dist/services/notification-broadcast.js +38 -0
- package/dist/services/notification-broadcast.js.map +1 -0
- package/dist/services/notification-service.d.ts +41 -0
- package/dist/services/notification-service.js +100 -0
- package/dist/services/notification-service.js.map +1 -0
- package/dist/services/personal-folder.d.ts +40 -0
- package/dist/services/personal-folder.js +101 -0
- package/dist/services/personal-folder.js.map +1 -0
- package/dist/services/user-person-bridge.d.ts +118 -0
- package/dist/services/user-person-bridge.js +306 -0
- package/dist/services/user-person-bridge.js.map +1 -0
- package/dist/services/vector-service.d.ts +146 -6
- package/dist/services/vector-service.js +276 -13
- package/dist/services/vector-service.js.map +1 -1
- package/dist/services/workspace-access.d.ts +106 -0
- package/dist/services/workspace-access.js +149 -0
- package/dist/services/workspace-access.js.map +1 -0
- package/dist/utils/git.d.ts +17 -2
- package/dist/utils/git.js +23 -7
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/log.d.ts +42 -0
- package/dist/utils/log.js +137 -0
- package/dist/utils/log.js.map +1 -0
- package/dist/utils/preflight.js +2 -2
- package/dist/utils/preflight.js.map +1 -1
- package/dist/utils/version-checker.d.ts +12 -19
- package/dist/utils/version-checker.js +14 -104
- package/dist/utils/version-checker.js.map +1 -1
- package/dist/web/_app/immutable/assets/0.DDqq11xY.css +2 -0
- package/dist/web/_app/immutable/assets/12.DlIf1mKh.css +1 -0
- package/dist/web/_app/immutable/assets/13.7d-Q37wc.css +1 -0
- package/dist/web/_app/immutable/assets/14.CmLrbzZp.css +1 -0
- package/dist/web/_app/immutable/assets/2.CGK2ky-K.css +1 -0
- package/dist/web/_app/immutable/assets/3.CV0abekd.css +1 -0
- package/dist/web/_app/immutable/assets/4.fGsEpo95.css +1 -0
- package/dist/web/_app/immutable/assets/AgentOverlay.DqzjAOm4.css +1 -0
- package/dist/web/_app/immutable/assets/AssetManagerModal.BKJfPAPk.css +1 -0
- package/dist/web/_app/immutable/assets/CalendarView.bNewSxkH.css +1 -0
- package/dist/web/_app/immutable/assets/FolderMembersPanel.DX1oBeF_.css +1 -0
- package/dist/web/_app/immutable/assets/FolderMutationDialogs.BMRF6Z3z.css +1 -0
- package/dist/web/_app/immutable/assets/FolderPicker.B5KdvRYl.css +1 -0
- package/dist/web/_app/immutable/assets/GalleryView.DgvSjS0I.css +1 -0
- package/dist/web/_app/immutable/assets/GraphView.BJtGL9py.css +1 -0
- package/dist/web/_app/immutable/assets/KanbanView.D0QbZFd6.css +1 -0
- package/dist/web/_app/immutable/assets/Markdown.B4lW7Llh.css +1 -0
- package/dist/web/_app/immutable/assets/SettingsDialog.DYWYMFSO.css +1 -0
- package/dist/web/_app/immutable/assets/Spinner.UBfl0pab.css +1 -0
- package/dist/web/_app/immutable/assets/StopFilledAlt.clodJdp5.css +1 -0
- package/dist/web/_app/immutable/assets/TimelineView.DA-H6dvv.css +1 -0
- package/dist/web/_app/immutable/assets/WorkspaceView.BS1ildu7.css +1 -0
- package/dist/web/_app/immutable/assets/button.BlLm4Dg1.css +1 -0
- package/dist/web/_app/immutable/assets/formatting.B912lpdG.css +1 -0
- package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2 +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2 +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2 +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-italic.CsGl1sm0.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2 +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-italic.BNK2_mGO.woff2 +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-italic.DpEwFAQM.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2 +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff +0 -0
- package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2 +0 -0
- package/dist/web/_app/immutable/assets/inline-list.cqga56xT.css +1 -0
- package/dist/web/_app/immutable/assets/list-columns.DCMVmy_Q.css +1 -0
- package/dist/web/_app/immutable/assets/realtime.DDCWxn3B.css +1 -0
- package/dist/web/_app/immutable/assets/sheet.DJPuqnTg.css +1 -0
- package/dist/web/_app/immutable/assets/speech-dictation.C5CYFhS1.css +1 -0
- package/dist/web/_app/immutable/chunks/0iDDDyaZ.js +1 -0
- package/dist/web/_app/immutable/chunks/2LgrBrpS2.js +2 -0
- package/dist/web/_app/immutable/chunks/3EfPAYzi2.js +1 -0
- package/dist/web/_app/immutable/chunks/7Bu427my2.js +184 -0
- package/dist/web/_app/immutable/chunks/96h3ktuk.js +1 -0
- package/dist/web/_app/immutable/chunks/A6FJA1AF.js +1 -0
- package/dist/web/_app/immutable/chunks/B-FAwCqe2.js +1 -0
- package/dist/web/_app/immutable/chunks/B-V5eMSw2.js +1 -0
- package/dist/web/_app/immutable/chunks/B-i9_YVM.js +1 -0
- package/dist/web/_app/immutable/chunks/B15-kvCe2.js +1 -0
- package/dist/web/_app/immutable/chunks/B1KZ7zY32.js +2 -0
- package/dist/web/_app/immutable/chunks/B4gpzeQ2.js +1 -0
- package/dist/web/_app/immutable/chunks/B6Lt-qaJ2.js +1 -0
- package/dist/web/_app/immutable/chunks/B7tbGyiU2.js +1 -0
- package/dist/web/_app/immutable/chunks/BBxt8lpa.js +1 -0
- package/dist/web/_app/immutable/chunks/BCaRi2AF.js +1 -0
- package/dist/web/_app/immutable/chunks/BJ6Z7eAM.js +2 -0
- package/dist/web/_app/immutable/chunks/BM_vIwVC.js +83 -0
- package/dist/web/_app/immutable/chunks/BQULA6er.js +4 -0
- package/dist/web/_app/immutable/chunks/BQW-EDgP2.js +224 -0
- package/dist/web/_app/immutable/chunks/BR6jMpLB.js +1 -0
- package/dist/web/_app/immutable/chunks/BVnuLlVg.js +1 -0
- package/dist/web/_app/immutable/chunks/BddNmQ8j.js +1 -0
- package/dist/web/_app/immutable/chunks/BeuunHPO.js +1 -0
- package/dist/web/_app/immutable/chunks/BhTmSo4n2.js +1 -0
- package/dist/web/_app/immutable/chunks/BikW7mty2.js +1 -0
- package/dist/web/_app/immutable/chunks/BkyFvJvz.js +1 -0
- package/dist/web/_app/immutable/chunks/BlyFGPFV.js +22 -0
- package/dist/web/_app/immutable/chunks/Bo5dghSu.js +3 -0
- package/dist/web/_app/immutable/chunks/BpPyho8Y.js +3 -0
- package/dist/web/_app/immutable/chunks/BsuvyNDN2.js +2 -0
- package/dist/web/_app/immutable/chunks/BuKi0vpu2.js +7 -0
- package/dist/web/_app/immutable/chunks/BuuYnIjE.js +1 -0
- package/dist/web/_app/immutable/chunks/By4lVKNC.js +2 -0
- package/dist/web/_app/immutable/chunks/ByQGCIwO.js +5 -0
- package/dist/web/_app/immutable/chunks/ByidpUhu.js +1 -0
- package/dist/web/_app/immutable/chunks/C35TIzaB.js +1 -0
- package/dist/web/_app/immutable/chunks/C5dM5op-.js +1 -0
- package/dist/web/_app/immutable/chunks/C6Nx0jpM.js +1 -0
- package/dist/web/_app/immutable/chunks/C6pVyOEl2.js +1 -0
- package/dist/web/_app/immutable/chunks/C80GKPZ9.js +1 -0
- package/dist/web/_app/immutable/chunks/C94TJqPI.js +1 -0
- package/dist/web/_app/immutable/chunks/C9PETsiT.js +1 -0
- package/dist/web/_app/immutable/chunks/CAuAQ81a2.js +1 -0
- package/dist/web/_app/immutable/chunks/CBnzSITi2.js +1 -0
- package/dist/web/_app/immutable/chunks/CC9p2p6w.js +1 -0
- package/dist/web/_app/immutable/chunks/CCLR-AJL2.js +185 -0
- package/dist/web/_app/immutable/chunks/CD0X7XPW.js +6 -0
- package/dist/web/_app/immutable/chunks/CDTjuBSm.js +1 -0
- package/dist/web/_app/immutable/chunks/CH-KYFIm.js +64 -0
- package/dist/web/_app/immutable/chunks/CHj8fObQ2.js +9 -0
- package/dist/web/_app/immutable/chunks/CK-UnH-n2.js +1 -0
- package/dist/web/_app/immutable/chunks/CKH5BEAh.js +1 -0
- package/dist/web/_app/immutable/chunks/CPSupDJp2.js +2 -0
- package/dist/web/_app/immutable/chunks/CSUrYOis.js +1 -0
- package/dist/web/_app/immutable/chunks/CYTTTma0.js +3 -0
- package/dist/web/_app/immutable/chunks/Cbaut_us2.js +1 -0
- package/dist/web/_app/immutable/chunks/CiIpSx5n2.js +1 -0
- package/dist/web/_app/immutable/chunks/CkLfUXwy.js +1 -0
- package/dist/web/_app/immutable/chunks/CokE4L8B2.js +1 -0
- package/dist/web/_app/immutable/chunks/CpLdnbh3.js +1 -0
- package/dist/web/_app/immutable/chunks/CvDrXJk9.js +1 -0
- package/dist/web/_app/immutable/chunks/D00MFB9_2.js +1 -0
- package/dist/web/_app/immutable/chunks/D41CbXmM.js +1 -0
- package/dist/web/_app/immutable/chunks/D5Hj-MPO2.js +1 -0
- package/dist/web/_app/immutable/chunks/D6nLEmZy2.js +1 -0
- package/dist/web/_app/immutable/chunks/D71ZlQBM2.js +2 -0
- package/dist/web/_app/immutable/chunks/D9ql9vXU.js +1 -0
- package/dist/web/_app/immutable/chunks/DAXW5iLp.js +1 -0
- package/dist/web/_app/immutable/chunks/DBzQ8LyQ2.js +2 -0
- package/dist/web/_app/immutable/chunks/DIb5rAPU2.js +1 -0
- package/dist/web/_app/immutable/chunks/DOmH4G9o.js +14 -0
- package/dist/web/_app/immutable/chunks/DQMWa2t72.js +1 -0
- package/dist/web/_app/immutable/chunks/DRsswX8S.js +1 -0
- package/dist/web/_app/immutable/chunks/DTCHhxD5.js +1 -0
- package/dist/web/_app/immutable/chunks/DUwgGBxa.js +1 -0
- package/dist/web/_app/immutable/chunks/DVcy5Pp82.js +1 -0
- package/dist/web/_app/immutable/chunks/DWygwzcO.js +1 -0
- package/dist/web/_app/immutable/chunks/DYXDRmoo.js +1 -0
- package/dist/web/_app/immutable/chunks/DZ-YyRVM.js +1 -0
- package/dist/web/_app/immutable/chunks/D_HVOuHV.js +1 -0
- package/dist/web/_app/immutable/chunks/DaoOQFPb.js +1 -0
- package/dist/web/_app/immutable/chunks/DdLkNvPf.js +23 -0
- package/dist/web/_app/immutable/chunks/DiMQob8p.js +1 -0
- package/dist/web/_app/immutable/chunks/DiQJ9DLy.js +1 -0
- package/dist/web/_app/immutable/chunks/DlORZqfE.js +1 -0
- package/dist/web/_app/immutable/chunks/DmeYl7eL.js +2 -0
- package/dist/web/_app/immutable/chunks/Dng3OcRd2.js +1 -0
- package/dist/web/_app/immutable/chunks/DoKMFfJd.js +1 -0
- package/dist/web/_app/immutable/chunks/DpzG2mVI2.js +1 -0
- package/dist/web/_app/immutable/chunks/DvJSCDuZ2.js +1 -0
- package/dist/web/_app/immutable/chunks/DvPuaTCl2.js +5 -0
- package/dist/web/_app/immutable/chunks/ItgU4ei5.js +1 -0
- package/dist/web/_app/immutable/chunks/JJDMrjj62.js +1 -0
- package/dist/web/_app/immutable/chunks/OTTMDMTW.js +1 -0
- package/dist/web/_app/immutable/chunks/RmiWpCin2.js +1 -0
- package/dist/web/_app/immutable/chunks/ZTiqmKJy2.js +1 -0
- package/dist/web/_app/immutable/chunks/ahC5WoXX2.js +1 -0
- package/dist/web/_app/immutable/chunks/e3SY5t2O2.js +2692 -0
- package/dist/web/_app/immutable/chunks/g09ZrevW.js +1 -0
- package/dist/web/_app/immutable/chunks/go8N1nWD2.js +3 -0
- package/dist/web/_app/immutable/chunks/nTAmRNKw2.js +1 -0
- package/dist/web/_app/immutable/chunks/oBQOivfH2.js +1 -0
- package/dist/web/_app/immutable/chunks/oUTRxd0f.js +1 -0
- package/dist/web/_app/immutable/chunks/s_7BJJYy.js +2 -0
- package/dist/web/_app/immutable/chunks/uuFM-ygL.js +1 -0
- package/dist/web/_app/immutable/chunks/v7me-ydg.js +2 -0
- package/dist/web/_app/immutable/chunks/xihTtKlq.js +1 -0
- package/dist/web/_app/immutable/chunks/zl16E4yc2.js +1 -0
- package/dist/web/_app/immutable/entry/app.CbuUtkoM.js +2 -0
- package/dist/web/_app/immutable/entry/start.DeZyKwOT.js +1 -0
- package/dist/web/_app/immutable/nodes/0.C4PMtdx9.js +2 -0
- package/dist/web/_app/immutable/nodes/1.BwVfPLMn.js +1 -0
- package/dist/web/_app/immutable/nodes/10.DPr_SYan.js +1 -0
- package/dist/web/_app/immutable/nodes/11.CJAmEchE.js +1 -0
- package/dist/web/_app/immutable/nodes/12.ChMWXPMk.js +1 -0
- package/dist/web/_app/immutable/nodes/13.8vOKq8ue.js +1 -0
- package/dist/web/_app/immutable/nodes/14.BOSNmj9h.js +1 -0
- package/dist/web/_app/immutable/nodes/2.7N4BLwhX.js +109 -0
- package/dist/web/_app/immutable/nodes/3.Cd-tx8Ej.js +2 -0
- package/dist/web/_app/immutable/nodes/4.DtuT-syy.js +14 -0
- package/dist/web/_app/immutable/nodes/5.YwNHOrkt.js +1 -0
- package/dist/web/_app/immutable/nodes/6.BSPlYQuq.js +1 -0
- package/dist/web/_app/immutable/nodes/7.DPXzwW0H.js +1 -0
- package/dist/web/_app/immutable/nodes/8.Dhpk7w3X.js +1 -0
- package/dist/web/_app/immutable/nodes/9.Dd4iAQN5.js +1 -0
- package/dist/web/_app/version.json +1 -1
- package/dist/web/favicon-16.png +0 -0
- package/dist/web/favicon-180.png +0 -0
- package/dist/web/favicon-32.png +0 -0
- package/dist/web/favicon-48.png +0 -0
- package/dist/web/favicon-512.png +0 -0
- package/dist/web/favicon.ico +0 -0
- package/dist/web/favicon.svg +8 -0
- package/dist/web/index.html +54 -19
- package/dist/web/studiograph-logomark.svg +29 -0
- package/package.json +34 -14
- package/dist/agent/skills/enrich-entities.md +0 -136
- package/dist/agent/skills/obsidian-source-setup.md +0 -246
- package/dist/agent/skills/skill-loader.d.ts +0 -48
- package/dist/agent/skills/skill-loader.js +0 -166
- package/dist/agent/skills/skill-loader.js.map +0 -1
- package/dist/agent/skills/sync-configuration.md +0 -119
- package/dist/agent/skills/sync-setup.md +0 -82
- package/dist/agent/tools/sync-tools.d.ts +0 -35
- package/dist/agent/tools/sync-tools.js +0 -992
- package/dist/agent/tools/sync-tools.js.map +0 -1
- package/dist/auth/github.d.ts +0 -56
- package/dist/auth/github.js +0 -169
- package/dist/auth/github.js.map +0 -1
- package/dist/cli/commands/access.d.ts +0 -11
- package/dist/cli/commands/access.js +0 -156
- package/dist/cli/commands/access.js.map +0 -1
- package/dist/cli/commands/app.d.ts +0 -7
- package/dist/cli/commands/app.js +0 -268
- package/dist/cli/commands/app.js.map +0 -1
- package/dist/cli/commands/auth.d.ts +0 -10
- package/dist/cli/commands/auth.js +0 -79
- package/dist/cli/commands/auth.js.map +0 -1
- package/dist/cli/commands/clear.d.ts +0 -5
- package/dist/cli/commands/clear.js +0 -36
- package/dist/cli/commands/clear.js.map +0 -1
- package/dist/cli/commands/collection.d.ts +0 -10
- package/dist/cli/commands/collection.js +0 -187
- package/dist/cli/commands/collection.js.map +0 -1
- package/dist/cli/commands/enrich.d.ts +0 -11
- package/dist/cli/commands/enrich.js +0 -135
- package/dist/cli/commands/enrich.js.map +0 -1
- package/dist/cli/commands/graphrag.d.ts +0 -12
- package/dist/cli/commands/graphrag.js +0 -122
- package/dist/cli/commands/graphrag.js.map +0 -1
- package/dist/cli/commands/join.d.ts +0 -9
- package/dist/cli/commands/join.js +0 -255
- package/dist/cli/commands/join.js.map +0 -1
- package/dist/cli/commands/members.d.ts +0 -11
- package/dist/cli/commands/members.js +0 -230
- package/dist/cli/commands/members.js.map +0 -1
- package/dist/cli/commands/org.d.ts +0 -10
- package/dist/cli/commands/org.js +0 -132
- package/dist/cli/commands/org.js.map +0 -1
- package/dist/cli/commands/provision.d.ts +0 -8
- package/dist/cli/commands/provision.js +0 -116
- package/dist/cli/commands/provision.js.map +0 -1
- package/dist/cli/commands/resolve.d.ts +0 -8
- package/dist/cli/commands/resolve.js +0 -85
- package/dist/cli/commands/resolve.js.map +0 -1
- package/dist/cli/commands/review.d.ts +0 -19
- package/dist/cli/commands/review.js +0 -128
- package/dist/cli/commands/review.js.map +0 -1
- package/dist/cli/commands/source.d.ts +0 -16
- package/dist/cli/commands/source.js +0 -159
- package/dist/cli/commands/source.js.map +0 -1
- package/dist/cli/commands/start.d.ts +0 -7
- package/dist/cli/commands/start.js +0 -589
- package/dist/cli/commands/start.js.map +0 -1
- package/dist/cli/commands/sync-collection.d.ts +0 -14
- package/dist/cli/commands/sync-collection.js +0 -355
- package/dist/cli/commands/sync-collection.js.map +0 -1
- package/dist/cli/commands/sync-entities.d.ts +0 -13
- package/dist/cli/commands/sync-entities.js +0 -242
- package/dist/cli/commands/sync-entities.js.map +0 -1
- package/dist/cli/commands/team.d.ts +0 -12
- package/dist/cli/commands/team.js +0 -185
- package/dist/cli/commands/team.js.map +0 -1
- package/dist/cli/commands/update.d.ts +0 -8
- package/dist/cli/commands/update.js +0 -155
- package/dist/cli/commands/update.js.map +0 -1
- package/dist/cli/commands/user.d.ts +0 -7
- package/dist/cli/commands/user.js +0 -153
- package/dist/cli/commands/user.js.map +0 -1
- package/dist/cli/scaffolding.d.ts +0 -12
- package/dist/cli/scaffolding.js +0 -397
- package/dist/cli/scaffolding.js.map +0 -1
- package/dist/cli/sync-review-interactive.d.ts +0 -31
- package/dist/cli/sync-review-interactive.js +0 -393
- package/dist/cli/sync-review-interactive.js.map +0 -1
- package/dist/core/migration-runner.d.ts +0 -42
- package/dist/core/migration-runner.js +0 -232
- package/dist/core/migration-runner.js.map +0 -1
- package/dist/core/migration-types.d.ts +0 -101
- package/dist/core/migration-types.js +0 -21
- package/dist/core/migration-types.js.map +0 -1
- package/dist/core/migrations/20260219-formalize-memory-location.d.ts +0 -2
- package/dist/core/migrations/20260219-formalize-memory-location.js +0 -35
- package/dist/core/migrations/20260219-formalize-memory-location.js.map +0 -1
- package/dist/core/migrations/20260220-add-workspace-metadata.d.ts +0 -12
- package/dist/core/migrations/20260220-add-workspace-metadata.js +0 -65
- package/dist/core/migrations/20260220-add-workspace-metadata.js.map +0 -1
- package/dist/core/migrations/20260220-add-workspace-readme.d.ts +0 -11
- package/dist/core/migrations/20260220-add-workspace-readme.js +0 -82
- package/dist/core/migrations/20260220-add-workspace-readme.js.map +0 -1
- package/dist/core/migrations/20260220-migrate-yaml-to-json.d.ts +0 -9
- package/dist/core/migrations/20260220-migrate-yaml-to-json.js +0 -64
- package/dist/core/migrations/20260220-migrate-yaml-to-json.js.map +0 -1
- package/dist/core/migrations/index.d.ts +0 -11
- package/dist/core/migrations/index.js +0 -23
- package/dist/core/migrations/index.js.map +0 -1
- package/dist/integrations/asana.d.ts +0 -26
- package/dist/integrations/asana.js +0 -78
- package/dist/integrations/asana.js.map +0 -1
- package/dist/integrations/figma-local.d.ts +0 -16
- package/dist/integrations/figma-local.js +0 -10
- package/dist/integrations/figma-local.js.map +0 -1
- package/dist/integrations/figma.d.ts +0 -17
- package/dist/integrations/figma.js +0 -17
- package/dist/integrations/figma.js.map +0 -1
- package/dist/integrations/granola.d.ts +0 -24
- package/dist/integrations/granola.js +0 -60
- package/dist/integrations/granola.js.map +0 -1
- package/dist/integrations/linear.d.ts +0 -14
- package/dist/integrations/linear.js +0 -80
- package/dist/integrations/linear.js.map +0 -1
- package/dist/integrations/paper-local.d.ts +0 -14
- package/dist/integrations/paper-local.js +0 -10
- package/dist/integrations/paper-local.js.map +0 -1
- package/dist/integrations/paper.d.ts +0 -2
- package/dist/integrations/paper.js +0 -10
- package/dist/integrations/paper.js.map +0 -1
- package/dist/integrations/pipedrive.d.ts +0 -26
- package/dist/integrations/pipedrive.js +0 -97
- package/dist/integrations/pipedrive.js.map +0 -1
- package/dist/integrations/registry.d.ts +0 -15
- package/dist/integrations/registry.js +0 -27
- package/dist/integrations/registry.js.map +0 -1
- package/dist/integrations/types.d.ts +0 -38
- package/dist/integrations/types.js +0 -9
- package/dist/integrations/types.js.map +0 -1
- package/dist/lib/lib/utils.d.ts +0 -2
- package/dist/lib/lib/utils.js +0 -6
- package/dist/lib/lib/utils.js.map +0 -1
- package/dist/mcp/connectors/asana.d.ts +0 -2
- package/dist/mcp/connectors/asana.js +0 -20
- package/dist/mcp/connectors/asana.js.map +0 -1
- package/dist/mcp/connectors/definitions.d.ts +0 -45
- package/dist/mcp/connectors/definitions.js +0 -32
- package/dist/mcp/connectors/definitions.js.map +0 -1
- package/dist/mcp/connectors/figma.d.ts +0 -5
- package/dist/mcp/connectors/figma.js +0 -21
- package/dist/mcp/connectors/figma.js.map +0 -1
- package/dist/mcp/connectors/gdrive.d.ts +0 -2
- package/dist/mcp/connectors/gdrive.js +0 -20
- package/dist/mcp/connectors/gdrive.js.map +0 -1
- package/dist/mcp/connectors/granola.d.ts +0 -2
- package/dist/mcp/connectors/granola.js +0 -12
- package/dist/mcp/connectors/granola.js.map +0 -1
- package/dist/mcp/connectors/linear.d.ts +0 -2
- package/dist/mcp/connectors/linear.js +0 -19
- package/dist/mcp/connectors/linear.js.map +0 -1
- package/dist/mcp/connectors/obsidian.d.ts +0 -2
- package/dist/mcp/connectors/obsidian.js +0 -19
- package/dist/mcp/connectors/obsidian.js.map +0 -1
- package/dist/mcp/connectors/pipedrive.d.ts +0 -2
- package/dist/mcp/connectors/pipedrive.js +0 -20
- package/dist/mcp/connectors/pipedrive.js.map +0 -1
- package/dist/mcp/connectors/slack.d.ts +0 -2
- package/dist/mcp/connectors/slack.js +0 -21
- package/dist/mcp/connectors/slack.js.map +0 -1
- package/dist/mcp/server-oauth-provider.d.ts +0 -56
- package/dist/mcp/server-oauth-provider.js +0 -142
- package/dist/mcp/server-oauth-provider.js.map +0 -1
- package/dist/server/chrome/chrome.css +0 -691
- package/dist/server/chrome/chrome.js +0 -374
- package/dist/server/collab-authority.d.ts +0 -70
- package/dist/server/collab-authority.js +0 -218
- package/dist/server/collab-authority.js.map +0 -1
- package/dist/server/collab.d.ts +0 -29
- package/dist/server/collab.js +0 -195
- package/dist/server/collab.js.map +0 -1
- package/dist/server/commit-scheduler.d.ts +0 -39
- package/dist/server/commit-scheduler.js +0 -113
- package/dist/server/commit-scheduler.js.map +0 -1
- package/dist/server/plugin-loader.d.ts +0 -53
- package/dist/server/plugin-loader.js +0 -155
- package/dist/server/plugin-loader.js.map +0 -1
- package/dist/server/routes/collab.d.ts +0 -6
- package/dist/server/routes/collab.js +0 -10
- package/dist/server/routes/collab.js.map +0 -1
- package/dist/server/routes/git-api.d.ts +0 -9
- package/dist/server/routes/git-api.js +0 -82
- package/dist/server/routes/git-api.js.map +0 -1
- package/dist/server/routes/meeting-ingest-api.d.ts +0 -15
- package/dist/server/routes/meeting-ingest-api.js +0 -321
- package/dist/server/routes/meeting-ingest-api.js.map +0 -1
- package/dist/server/routes/sync-api.d.ts +0 -26
- package/dist/server/routes/sync-api.js +0 -814
- package/dist/server/routes/sync-api.js.map +0 -1
- package/dist/server/routes/webhook.d.ts +0 -14
- package/dist/server/routes/webhook.js +0 -102
- package/dist/server/routes/webhook.js.map +0 -1
- package/dist/services/github-provisioner.d.ts +0 -36
- package/dist/services/github-provisioner.js +0 -126
- package/dist/services/github-provisioner.js.map +0 -1
- package/dist/services/github-service.d.ts +0 -99
- package/dist/services/github-service.js +0 -310
- package/dist/services/github-service.js.map +0 -1
- package/dist/services/insights.d.ts +0 -38
- package/dist/services/insights.js +0 -246
- package/dist/services/insights.js.map +0 -1
- package/dist/services/sync/collection-sync.d.ts +0 -60
- package/dist/services/sync/collection-sync.js +0 -509
- package/dist/services/sync/collection-sync.js.map +0 -1
- package/dist/services/sync/commit.d.ts +0 -60
- package/dist/services/sync/commit.js +0 -354
- package/dist/services/sync/commit.js.map +0 -1
- package/dist/services/sync/context-index.d.ts +0 -69
- package/dist/services/sync/context-index.js +0 -280
- package/dist/services/sync/context-index.js.map +0 -1
- package/dist/services/sync/data-fetcher.d.ts +0 -31
- package/dist/services/sync/data-fetcher.js +0 -12
- package/dist/services/sync/data-fetcher.js.map +0 -1
- package/dist/services/sync/derive.d.ts +0 -34
- package/dist/services/sync/derive.js +0 -164
- package/dist/services/sync/derive.js.map +0 -1
- package/dist/services/sync/enrichment-state.d.ts +0 -31
- package/dist/services/sync/enrichment-state.js +0 -63
- package/dist/services/sync/enrichment-state.js.map +0 -1
- package/dist/services/sync/enrichment.d.ts +0 -25
- package/dist/services/sync/enrichment.js +0 -121
- package/dist/services/sync/enrichment.js.map +0 -1
- package/dist/services/sync/entity-refresh.d.ts +0 -30
- package/dist/services/sync/entity-refresh.js +0 -275
- package/dist/services/sync/entity-refresh.js.map +0 -1
- package/dist/services/sync/frontmatter-extractor.d.ts +0 -40
- package/dist/services/sync/frontmatter-extractor.js +0 -279
- package/dist/services/sync/frontmatter-extractor.js.map +0 -1
- package/dist/services/sync/graph-match-state.d.ts +0 -33
- package/dist/services/sync/graph-match-state.js +0 -61
- package/dist/services/sync/graph-match-state.js.map +0 -1
- package/dist/services/sync/graph-match.d.ts +0 -53
- package/dist/services/sync/graph-match.js +0 -316
- package/dist/services/sync/graph-match.js.map +0 -1
- package/dist/services/sync/graphrag-client.d.ts +0 -43
- package/dist/services/sync/graphrag-client.js +0 -94
- package/dist/services/sync/graphrag-client.js.map +0 -1
- package/dist/services/sync/graphrag-config.d.ts +0 -16
- package/dist/services/sync/graphrag-config.js +0 -39
- package/dist/services/sync/graphrag-config.js.map +0 -1
- package/dist/services/sync/graphrag-context.d.ts +0 -14
- package/dist/services/sync/graphrag-context.js +0 -109
- package/dist/services/sync/graphrag-context.js.map +0 -1
- package/dist/services/sync/graphrag-indexer.d.ts +0 -30
- package/dist/services/sync/graphrag-indexer.js +0 -358
- package/dist/services/sync/graphrag-indexer.js.map +0 -1
- package/dist/services/sync/llm.d.ts +0 -32
- package/dist/services/sync/llm.js +0 -115
- package/dist/services/sync/llm.js.map +0 -1
- package/dist/services/sync/mcp-client.d.ts +0 -71
- package/dist/services/sync/mcp-client.js +0 -299
- package/dist/services/sync/mcp-client.js.map +0 -1
- package/dist/services/sync/model-factory.d.ts +0 -13
- package/dist/services/sync/model-factory.js +0 -38
- package/dist/services/sync/model-factory.js.map +0 -1
- package/dist/services/sync/name-quality.d.ts +0 -31
- package/dist/services/sync/name-quality.js +0 -60
- package/dist/services/sync/name-quality.js.map +0 -1
- package/dist/services/sync/output-schemas.d.ts +0 -92
- package/dist/services/sync/output-schemas.js +0 -43
- package/dist/services/sync/output-schemas.js.map +0 -1
- package/dist/services/sync/prompts.d.ts +0 -19
- package/dist/services/sync/prompts.js +0 -128
- package/dist/services/sync/prompts.js.map +0 -1
- package/dist/services/sync/reconciler.d.ts +0 -48
- package/dist/services/sync/reconciler.js +0 -294
- package/dist/services/sync/reconciler.js.map +0 -1
- package/dist/services/sync/rest-client.d.ts +0 -40
- package/dist/services/sync/rest-client.js +0 -100
- package/dist/services/sync/rest-client.js.map +0 -1
- package/dist/services/sync/source-config.d.ts +0 -67
- package/dist/services/sync/source-config.js +0 -304
- package/dist/services/sync/source-config.js.map +0 -1
- package/dist/services/sync/source-definitions/asana.d.ts +0 -14
- package/dist/services/sync/source-definitions/asana.js +0 -42
- package/dist/services/sync/source-definitions/asana.js.map +0 -1
- package/dist/services/sync/source-definitions/definitions.d.ts +0 -8
- package/dist/services/sync/source-definitions/definitions.js +0 -8
- package/dist/services/sync/source-definitions/definitions.js.map +0 -1
- package/dist/services/sync/source-definitions/gdrive.d.ts +0 -16
- package/dist/services/sync/source-definitions/gdrive.js +0 -68
- package/dist/services/sync/source-definitions/gdrive.js.map +0 -1
- package/dist/services/sync/source-definitions/granola.d.ts +0 -2
- package/dist/services/sync/source-definitions/granola.js +0 -21
- package/dist/services/sync/source-definitions/granola.js.map +0 -1
- package/dist/services/sync/source-definitions/linear.d.ts +0 -2
- package/dist/services/sync/source-definitions/linear.js +0 -62
- package/dist/services/sync/source-definitions/linear.js.map +0 -1
- package/dist/services/sync/source-definitions/obsidian.d.ts +0 -2
- package/dist/services/sync/source-definitions/obsidian.js +0 -55
- package/dist/services/sync/source-definitions/obsidian.js.map +0 -1
- package/dist/services/sync/source-definitions/pipedrive.d.ts +0 -2
- package/dist/services/sync/source-definitions/pipedrive.js +0 -43
- package/dist/services/sync/source-definitions/pipedrive.js.map +0 -1
- package/dist/services/sync/staging.d.ts +0 -53
- package/dist/services/sync/staging.js +0 -130
- package/dist/services/sync/staging.js.map +0 -1
- package/dist/services/sync/structured-extractor.d.ts +0 -57
- package/dist/services/sync/structured-extractor.js +0 -584
- package/dist/services/sync/structured-extractor.js.map +0 -1
- package/dist/services/sync/sync-runner.d.ts +0 -32
- package/dist/services/sync/sync-runner.js +0 -195
- package/dist/services/sync/sync-runner.js.map +0 -1
- package/dist/services/sync/sync-state.d.ts +0 -43
- package/dist/services/sync/sync-state.js +0 -154
- package/dist/services/sync/sync-state.js.map +0 -1
- package/dist/services/sync/types.d.ts +0 -381
- package/dist/services/sync/types.js +0 -8
- package/dist/services/sync/types.js.map +0 -1
- package/dist/services/sync/unstructured-extractor.d.ts +0 -27
- package/dist/services/sync/unstructured-extractor.js +0 -185
- package/dist/services/sync/unstructured-extractor.js.map +0 -1
- package/dist/utils/merge-resolver.d.ts +0 -59
- package/dist/utils/merge-resolver.js +0 -303
- package/dist/utils/merge-resolver.js.map +0 -1
- package/dist/utils/workspace-config.d.ts +0 -8
- package/dist/utils/workspace-config.js +0 -22
- package/dist/utils/workspace-config.js.map +0 -1
- package/dist/web/_app/immutable/assets/0.DdizXOKi.css +0 -1
- package/dist/web/_app/immutable/assets/10.BUrHkYry.css +0 -1
- package/dist/web/_app/immutable/assets/2.n7-yW_Fs.css +0 -1
- package/dist/web/_app/immutable/assets/3.BtaZagnv.css +0 -1
- package/dist/web/_app/immutable/assets/4.DSiqtN6T.css +0 -1
- package/dist/web/_app/immutable/assets/5.DFeGxLYf.css +0 -1
- package/dist/web/_app/immutable/assets/6.CquhUpOu.css +0 -1
- package/dist/web/_app/immutable/assets/7.CjbDRbuG.css +0 -1
- package/dist/web/_app/immutable/assets/8.S1QdUGNM.css +0 -1
- package/dist/web/_app/immutable/assets/9.CT4xL4K3.css +0 -1
- package/dist/web/_app/immutable/assets/Copy.FS8bdfxr.css +0 -1
- package/dist/web/_app/immutable/assets/Toaster.rN8r_Hzv.css +0 -1
- package/dist/web/_app/immutable/assets/ViewToolbar.D-QW2oKe.css +0 -1
- package/dist/web/_app/immutable/assets/index.D6tMDJWk.css +0 -1
- package/dist/web/_app/immutable/chunks/37NdyH6G.js +0 -32
- package/dist/web/_app/immutable/chunks/4Hhzb6pv.js +0 -1
- package/dist/web/_app/immutable/chunks/72bZS3G9.js +0 -1
- package/dist/web/_app/immutable/chunks/7S2LGqoP.js +0 -2
- package/dist/web/_app/immutable/chunks/B340SUKR.js +0 -1
- package/dist/web/_app/immutable/chunks/BB_5th5W.js +0 -3383
- package/dist/web/_app/immutable/chunks/BI8HVuKu.js +0 -1
- package/dist/web/_app/immutable/chunks/BO9dsUba.js +0 -1
- package/dist/web/_app/immutable/chunks/BS2rFAVq.js +0 -1
- package/dist/web/_app/immutable/chunks/BSsDC_p4.js +0 -1
- package/dist/web/_app/immutable/chunks/BTX2Jr8_.js +0 -1
- package/dist/web/_app/immutable/chunks/Bsacq2UX.js +0 -1
- package/dist/web/_app/immutable/chunks/ByunV8un.js +0 -1
- package/dist/web/_app/immutable/chunks/C7VoTosa.js +0 -2
- package/dist/web/_app/immutable/chunks/CDV5Q7RN.js +0 -1
- package/dist/web/_app/immutable/chunks/CJ8__CWt.js +0 -1
- package/dist/web/_app/immutable/chunks/CJUKmosC.js +0 -5
- package/dist/web/_app/immutable/chunks/CSVbGg_b.js +0 -5
- package/dist/web/_app/immutable/chunks/CT6oIU-C.js +0 -1
- package/dist/web/_app/immutable/chunks/CTRxNfZk.js +0 -1
- package/dist/web/_app/immutable/chunks/CWQRQXxy.js +0 -1
- package/dist/web/_app/immutable/chunks/CXAIHzUX.js +0 -1
- package/dist/web/_app/immutable/chunks/CXH6iFbA.js +0 -1
- package/dist/web/_app/immutable/chunks/CX_61fY8.js +0 -5
- package/dist/web/_app/immutable/chunks/CYrVHOHA.js +0 -1
- package/dist/web/_app/immutable/chunks/CaQ0MRCC.js +0 -1
- package/dist/web/_app/immutable/chunks/CdeYcEuU.js +0 -1
- package/dist/web/_app/immutable/chunks/CmCtpZ1Y.js +0 -1
- package/dist/web/_app/immutable/chunks/CqkleIqs.js +0 -1
- package/dist/web/_app/immutable/chunks/CrdV0ttd.js +0 -1
- package/dist/web/_app/immutable/chunks/CscoF-YL.js +0 -18
- package/dist/web/_app/immutable/chunks/Cx4YdFMk.js +0 -1
- package/dist/web/_app/immutable/chunks/D7ZqAKi9.js +0 -3
- package/dist/web/_app/immutable/chunks/DF6CqIgb.js +0 -1
- package/dist/web/_app/immutable/chunks/DGbA7IXh.js +0 -2
- package/dist/web/_app/immutable/chunks/DUScXtWD.js +0 -2
- package/dist/web/_app/immutable/chunks/DYsIuENi.js +0 -1
- package/dist/web/_app/immutable/chunks/DbbB6Up5.js +0 -1
- package/dist/web/_app/immutable/chunks/DnL9f0lc.js +0 -7
- package/dist/web/_app/immutable/chunks/Dnnz2_is.js +0 -1
- package/dist/web/_app/immutable/chunks/DtM5cEDu.js +0 -1
- package/dist/web/_app/immutable/chunks/DviMV1EY.js +0 -4
- package/dist/web/_app/immutable/chunks/Eqahi7_S.js +0 -2
- package/dist/web/_app/immutable/chunks/FdYTYKiQ.js +0 -1
- package/dist/web/_app/immutable/chunks/O9Eb9k00.js +0 -1
- package/dist/web/_app/immutable/chunks/PPVm8Dsz.js +0 -1
- package/dist/web/_app/immutable/chunks/QF8MAmnc.js +0 -1
- package/dist/web/_app/immutable/chunks/UjzxCpxn.js +0 -1
- package/dist/web/_app/immutable/chunks/WSUKABI_.js +0 -1
- package/dist/web/_app/immutable/chunks/Y90OgS-9.js +0 -1
- package/dist/web/_app/immutable/chunks/cLyZlkXv.js +0 -1
- package/dist/web/_app/immutable/chunks/iDtAARVW.js +0 -2
- package/dist/web/_app/immutable/chunks/oC_W7W7p.js +0 -1
- package/dist/web/_app/immutable/chunks/rJdWIgh-.js +0 -1
- package/dist/web/_app/immutable/chunks/tvOsokaa.js +0 -1
- package/dist/web/_app/immutable/chunks/uLEXaPwE.js +0 -1
- package/dist/web/_app/immutable/chunks/vSaooFHB.js +0 -1
- package/dist/web/_app/immutable/entry/app.CaogB_bT.js +0 -2
- package/dist/web/_app/immutable/entry/start.wZ7yhkXM.js +0 -1
- package/dist/web/_app/immutable/nodes/0.Cq712UJU.js +0 -2
- package/dist/web/_app/immutable/nodes/1.Cf_Sxi8f.js +0 -1
- package/dist/web/_app/immutable/nodes/10.EhMTpB-W.js +0 -1
- package/dist/web/_app/immutable/nodes/2.pdWVc6Tw.js +0 -168
- package/dist/web/_app/immutable/nodes/3.DP7cSzLO.js +0 -1
- package/dist/web/_app/immutable/nodes/4.BASs7ojR.js +0 -12
- package/dist/web/_app/immutable/nodes/5.ZimC-3ag.js +0 -4
- package/dist/web/_app/immutable/nodes/6.CnZ2TeIl.js +0 -2
- package/dist/web/_app/immutable/nodes/7.hxwrWQeK.js +0 -2
- package/dist/web/_app/immutable/nodes/8.DEJ5W3rM.js +0 -1
- package/dist/web/_app/immutable/nodes/9.CIrEHtYu.js +0 -1
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Merge conflict resolution for markdown entity files.
|
|
3
|
-
*
|
|
4
|
-
* When git rebase hits a conflict, this module:
|
|
5
|
-
* 1. Classifies conflicted files by type (content, delete/modify, both-added, both-deleted)
|
|
6
|
-
* 2. Resolves delete conflicts automatically (no LLM needed)
|
|
7
|
-
* 3. For content conflicts, extracts ours/theirs versions from conflict markers
|
|
8
|
-
* 4. Asks an LLM to produce a merged version
|
|
9
|
-
* 5. Writes the merged content and stages the file
|
|
10
|
-
* 6. Continues the rebase
|
|
11
|
-
*
|
|
12
|
-
* Falls back gracefully if no API key is available (delete conflicts still resolve).
|
|
13
|
-
*/
|
|
14
|
-
export type ConflictType = 'content' | 'delete-modify' | 'modify-delete' | 'both-added' | 'both-deleted';
|
|
15
|
-
export interface ConflictFile {
|
|
16
|
-
file: string;
|
|
17
|
-
type: ConflictType;
|
|
18
|
-
}
|
|
19
|
-
export interface MergeResolution {
|
|
20
|
-
file: string;
|
|
21
|
-
resolved: boolean;
|
|
22
|
-
summary?: string;
|
|
23
|
-
}
|
|
24
|
-
export interface ResolveResult {
|
|
25
|
-
success: boolean;
|
|
26
|
-
resolutions: MergeResolution[];
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Classify unmerged files by parsing `git status --porcelain`.
|
|
30
|
-
* Returns typed conflict entries instead of bare file paths.
|
|
31
|
-
*
|
|
32
|
-
* Porcelain status codes for unmerged:
|
|
33
|
-
* UU = both modified (content conflict)
|
|
34
|
-
* DU = deleted by us, modified by them (during rebase: remote deleted, local modified)
|
|
35
|
-
* UD = modified by us, deleted by them (during rebase: local deleted, remote modified)
|
|
36
|
-
* AA = both added
|
|
37
|
-
* DD = both deleted
|
|
38
|
-
*/
|
|
39
|
-
export declare function classifyConflicts(repoPath: string): ConflictFile[];
|
|
40
|
-
/**
|
|
41
|
-
* Resolve a delete/modify or both-deleted conflict by accepting deletion.
|
|
42
|
-
*/
|
|
43
|
-
export declare function resolveDeleteConflict(repoPath: string, conflict: ConflictFile): MergeResolution;
|
|
44
|
-
/**
|
|
45
|
-
* Attempt to resolve all conflicts in a repo mid-rebase.
|
|
46
|
-
* The repo should be in a conflicted rebase state (not yet aborted).
|
|
47
|
-
* Returns success=true if all conflicts were resolved and rebase continued.
|
|
48
|
-
*
|
|
49
|
-
* Delete conflicts are resolved without an API key.
|
|
50
|
-
* Content conflicts require an LLM (API key).
|
|
51
|
-
*/
|
|
52
|
-
export declare function resolveConflicts(repoPath: string, onProgress?: (msg: string) => void): Promise<ResolveResult>;
|
|
53
|
-
/**
|
|
54
|
-
* Extract ours and theirs versions from git conflict markers.
|
|
55
|
-
*/
|
|
56
|
-
export declare function extractConflictVersions(content: string): {
|
|
57
|
-
ours: string | null;
|
|
58
|
-
theirs: string | null;
|
|
59
|
-
};
|
|
@@ -1,303 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Merge conflict resolution for markdown entity files.
|
|
3
|
-
*
|
|
4
|
-
* When git rebase hits a conflict, this module:
|
|
5
|
-
* 1. Classifies conflicted files by type (content, delete/modify, both-added, both-deleted)
|
|
6
|
-
* 2. Resolves delete conflicts automatically (no LLM needed)
|
|
7
|
-
* 3. For content conflicts, extracts ours/theirs versions from conflict markers
|
|
8
|
-
* 4. Asks an LLM to produce a merged version
|
|
9
|
-
* 5. Writes the merged content and stages the file
|
|
10
|
-
* 6. Continues the rebase
|
|
11
|
-
*
|
|
12
|
-
* Falls back gracefully if no API key is available (delete conflicts still resolve).
|
|
13
|
-
*/
|
|
14
|
-
import { spawnSync } from 'child_process';
|
|
15
|
-
import { readFileSync, writeFileSync, readdirSync, rmSync, existsSync } from 'fs';
|
|
16
|
-
import { join, dirname } from 'path';
|
|
17
|
-
import { generateText } from 'ai';
|
|
18
|
-
import { createModel } from '../services/sync/model-factory.js';
|
|
19
|
-
import { loadUserConfig, getAnthropicCredential } from '../core/user-config.js';
|
|
20
|
-
// ─── Conflict Classification ─────────────────────────────────────────────────
|
|
21
|
-
/**
|
|
22
|
-
* Classify unmerged files by parsing `git status --porcelain`.
|
|
23
|
-
* Returns typed conflict entries instead of bare file paths.
|
|
24
|
-
*
|
|
25
|
-
* Porcelain status codes for unmerged:
|
|
26
|
-
* UU = both modified (content conflict)
|
|
27
|
-
* DU = deleted by us, modified by them (during rebase: remote deleted, local modified)
|
|
28
|
-
* UD = modified by us, deleted by them (during rebase: local deleted, remote modified)
|
|
29
|
-
* AA = both added
|
|
30
|
-
* DD = both deleted
|
|
31
|
-
*/
|
|
32
|
-
export function classifyConflicts(repoPath) {
|
|
33
|
-
const result = spawnSync('git', ['status', '--porcelain'], { cwd: repoPath, encoding: 'utf-8' });
|
|
34
|
-
if (result.status !== 0)
|
|
35
|
-
return [];
|
|
36
|
-
const conflicts = [];
|
|
37
|
-
for (const line of result.stdout.split('\n')) {
|
|
38
|
-
if (line.length < 4)
|
|
39
|
-
continue;
|
|
40
|
-
const xy = line.substring(0, 2);
|
|
41
|
-
const file = line.substring(3);
|
|
42
|
-
let type = null;
|
|
43
|
-
switch (xy) {
|
|
44
|
-
case 'UU':
|
|
45
|
-
type = 'content';
|
|
46
|
-
break;
|
|
47
|
-
case 'DU':
|
|
48
|
-
type = 'delete-modify';
|
|
49
|
-
break;
|
|
50
|
-
case 'UD':
|
|
51
|
-
type = 'modify-delete';
|
|
52
|
-
break;
|
|
53
|
-
case 'AA':
|
|
54
|
-
type = 'both-added';
|
|
55
|
-
break;
|
|
56
|
-
case 'DD':
|
|
57
|
-
type = 'both-deleted';
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
if (type) {
|
|
61
|
-
conflicts.push({ file, type });
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
return conflicts;
|
|
65
|
-
}
|
|
66
|
-
// ─── Delete Conflict Resolution ──────────────────────────────────────────────
|
|
67
|
-
/**
|
|
68
|
-
* Resolve a delete/modify or both-deleted conflict by accepting deletion.
|
|
69
|
-
*/
|
|
70
|
-
export function resolveDeleteConflict(repoPath, conflict) {
|
|
71
|
-
const { file, type } = conflict;
|
|
72
|
-
// Accept deletion via git rm
|
|
73
|
-
spawnSync('git', ['rm', '--force', file], { cwd: repoPath, encoding: 'utf-8' });
|
|
74
|
-
// Clean up empty parent directory if needed
|
|
75
|
-
{
|
|
76
|
-
const parentDir = join(repoPath, dirname(file));
|
|
77
|
-
if (existsSync(parentDir)) {
|
|
78
|
-
try {
|
|
79
|
-
const remaining = readdirSync(parentDir);
|
|
80
|
-
if (remaining.length === 0) {
|
|
81
|
-
rmSync(parentDir, { recursive: true, force: true });
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
catch {
|
|
85
|
-
// Non-fatal — folder cleanup is best-effort
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
const reason = type === 'delete-modify'
|
|
90
|
-
? 'deleted (remote deleted, local edits discarded)'
|
|
91
|
-
: type === 'modify-delete'
|
|
92
|
-
? 'deleted (local delete confirmed)'
|
|
93
|
-
: 'deleted (both sides deleted)';
|
|
94
|
-
return { file, resolved: true, summary: reason };
|
|
95
|
-
}
|
|
96
|
-
// ─── Content Conflict Resolution (LLM) ──────────────────────────────────────
|
|
97
|
-
/**
|
|
98
|
-
* Resolve a content conflict (UU or AA) using LLM merge.
|
|
99
|
-
*/
|
|
100
|
-
async function resolveContentConflict(repoPath, file, model, onProgress) {
|
|
101
|
-
const fullPath = join(repoPath, file);
|
|
102
|
-
const content = readFileSync(fullPath, 'utf-8');
|
|
103
|
-
const { ours, theirs } = extractConflictVersions(content);
|
|
104
|
-
if (!ours || !theirs) {
|
|
105
|
-
return { file, resolved: false, summary: 'could not parse conflict markers' };
|
|
106
|
-
}
|
|
107
|
-
onProgress(` Merging: ${file}`);
|
|
108
|
-
const merged = await llmMerge(model, ours, theirs, file);
|
|
109
|
-
if (!merged) {
|
|
110
|
-
return { file, resolved: false, summary: 'AI merge returned empty result' };
|
|
111
|
-
}
|
|
112
|
-
writeFileSync(fullPath, merged, 'utf-8');
|
|
113
|
-
spawnSync('git', ['add', file], { cwd: repoPath, encoding: 'utf-8' });
|
|
114
|
-
return { file, resolved: true, summary: 'merged by AI' };
|
|
115
|
-
}
|
|
116
|
-
// ─── Main Entry Point ────────────────────────────────────────────────────────
|
|
117
|
-
/**
|
|
118
|
-
* Attempt to resolve all conflicts in a repo mid-rebase.
|
|
119
|
-
* The repo should be in a conflicted rebase state (not yet aborted).
|
|
120
|
-
* Returns success=true if all conflicts were resolved and rebase continued.
|
|
121
|
-
*
|
|
122
|
-
* Delete conflicts are resolved without an API key.
|
|
123
|
-
* Content conflicts require an LLM (API key).
|
|
124
|
-
*/
|
|
125
|
-
export async function resolveConflicts(repoPath, onProgress) {
|
|
126
|
-
const log = onProgress ?? (() => { });
|
|
127
|
-
// Classify all conflicts
|
|
128
|
-
const conflicts = classifyConflicts(repoPath);
|
|
129
|
-
if (conflicts.length === 0) {
|
|
130
|
-
return { success: false, resolutions: [] };
|
|
131
|
-
}
|
|
132
|
-
const deleteConflicts = conflicts.filter(c => c.type === 'delete-modify' || c.type === 'modify-delete' || c.type === 'both-deleted');
|
|
133
|
-
const contentConflicts = conflicts.filter(c => c.type === 'content' || c.type === 'both-added');
|
|
134
|
-
const resolutions = [];
|
|
135
|
-
// Phase 1: Resolve delete conflicts (no API key needed)
|
|
136
|
-
for (const conflict of deleteConflicts) {
|
|
137
|
-
try {
|
|
138
|
-
log(` Resolving: ${conflict.file} (${conflict.type})`);
|
|
139
|
-
const resolution = resolveDeleteConflict(repoPath, conflict);
|
|
140
|
-
resolutions.push(resolution);
|
|
141
|
-
}
|
|
142
|
-
catch (err) {
|
|
143
|
-
log(` Failed to resolve ${conflict.file}: ${err instanceof Error ? err.message : 'unknown error'}`);
|
|
144
|
-
resolutions.push({ file: conflict.file, resolved: false });
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
// Phase 2: Resolve content conflicts (needs LLM)
|
|
148
|
-
if (contentConflicts.length > 0) {
|
|
149
|
-
const config = loadUserConfig();
|
|
150
|
-
const apiKey = getAnthropicCredential(config) || process.env.ANTHROPIC_API_KEY;
|
|
151
|
-
if (!apiKey) {
|
|
152
|
-
// Can't resolve content conflicts without API key — mark as failed
|
|
153
|
-
for (const conflict of contentConflicts) {
|
|
154
|
-
resolutions.push({
|
|
155
|
-
file: conflict.file,
|
|
156
|
-
resolved: false,
|
|
157
|
-
summary: 'content conflict (no API key for AI merge)',
|
|
158
|
-
});
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
log(` Resolving ${contentConflicts.length} content conflict${contentConflicts.length === 1 ? '' : 's'} via AI merge...`);
|
|
163
|
-
const provider = config.enrichment_model_provider ?? config.model_provider ?? 'anthropic';
|
|
164
|
-
const modelId = config.enrichment_model_id ?? config.model_id ?? 'claude-sonnet-4-5-20250929';
|
|
165
|
-
const model = createModel(provider, modelId, apiKey);
|
|
166
|
-
for (const conflict of contentConflicts) {
|
|
167
|
-
try {
|
|
168
|
-
const resolution = await resolveContentConflict(repoPath, conflict.file, model, log);
|
|
169
|
-
resolutions.push(resolution);
|
|
170
|
-
}
|
|
171
|
-
catch (err) {
|
|
172
|
-
log(` Failed to resolve ${conflict.file}: ${err instanceof Error ? err.message : 'unknown error'}`);
|
|
173
|
-
resolutions.push({ file: conflict.file, resolved: false });
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
// Check if all resolved
|
|
179
|
-
const allResolved = resolutions.every(r => r.resolved);
|
|
180
|
-
if (!allResolved) {
|
|
181
|
-
spawnSync('git', ['rebase', '--abort'], { cwd: repoPath, encoding: 'utf-8' });
|
|
182
|
-
return { success: false, resolutions };
|
|
183
|
-
}
|
|
184
|
-
// All resolved — continue the rebase
|
|
185
|
-
const cont = spawnSync('git', ['rebase', '--continue'], {
|
|
186
|
-
cwd: repoPath,
|
|
187
|
-
encoding: 'utf-8',
|
|
188
|
-
env: { ...process.env, GIT_EDITOR: 'true' }, // skip commit message editor
|
|
189
|
-
});
|
|
190
|
-
if (cont.status !== 0) {
|
|
191
|
-
// Rebase continue failed — might have more conflicts in later commits
|
|
192
|
-
// Try to resolve recursively
|
|
193
|
-
const combined = cont.stdout + cont.stderr;
|
|
194
|
-
if (combined.includes('CONFLICT') || combined.includes('could not apply')) {
|
|
195
|
-
const nestedResult = await resolveConflicts(repoPath, onProgress);
|
|
196
|
-
return {
|
|
197
|
-
success: nestedResult.success,
|
|
198
|
-
resolutions: [...resolutions, ...nestedResult.resolutions],
|
|
199
|
-
};
|
|
200
|
-
}
|
|
201
|
-
spawnSync('git', ['rebase', '--abort'], { cwd: repoPath, encoding: 'utf-8' });
|
|
202
|
-
return { success: false, resolutions };
|
|
203
|
-
}
|
|
204
|
-
return { success: true, resolutions };
|
|
205
|
-
}
|
|
206
|
-
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
207
|
-
/**
|
|
208
|
-
* Extract ours and theirs versions from git conflict markers.
|
|
209
|
-
*/
|
|
210
|
-
export function extractConflictVersions(content) {
|
|
211
|
-
const lines = content.split('\n');
|
|
212
|
-
let ours = '';
|
|
213
|
-
let theirs = '';
|
|
214
|
-
let section = 'none';
|
|
215
|
-
let hasConflict = false;
|
|
216
|
-
let oursContext = '';
|
|
217
|
-
let theirsContext = '';
|
|
218
|
-
let commonBefore = '';
|
|
219
|
-
let commonAfter = '';
|
|
220
|
-
let afterConflict = false;
|
|
221
|
-
for (const line of lines) {
|
|
222
|
-
if (line.startsWith('<<<<<<<')) {
|
|
223
|
-
hasConflict = true;
|
|
224
|
-
section = 'ours';
|
|
225
|
-
oursContext += commonBefore;
|
|
226
|
-
theirsContext += commonBefore;
|
|
227
|
-
commonBefore = '';
|
|
228
|
-
continue;
|
|
229
|
-
}
|
|
230
|
-
if (line.startsWith('=======') && section === 'ours') {
|
|
231
|
-
section = 'theirs';
|
|
232
|
-
continue;
|
|
233
|
-
}
|
|
234
|
-
if (line.startsWith('>>>>>>>')) {
|
|
235
|
-
section = 'none';
|
|
236
|
-
afterConflict = true;
|
|
237
|
-
continue;
|
|
238
|
-
}
|
|
239
|
-
if (section === 'ours') {
|
|
240
|
-
oursContext += line + '\n';
|
|
241
|
-
}
|
|
242
|
-
else if (section === 'theirs') {
|
|
243
|
-
theirsContext += line + '\n';
|
|
244
|
-
}
|
|
245
|
-
else {
|
|
246
|
-
if (afterConflict) {
|
|
247
|
-
commonAfter += line + '\n';
|
|
248
|
-
}
|
|
249
|
-
else {
|
|
250
|
-
commonBefore += line + '\n';
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
if (!hasConflict)
|
|
255
|
-
return { ours: null, theirs: null };
|
|
256
|
-
ours = (oursContext + commonAfter).trim();
|
|
257
|
-
theirs = (theirsContext + commonAfter).trim();
|
|
258
|
-
// Return full file versions (common prefix + conflict section + common suffix)
|
|
259
|
-
const prefix = commonBefore.trimEnd();
|
|
260
|
-
return {
|
|
261
|
-
ours: prefix ? `${prefix}\n${ours}` : ours,
|
|
262
|
-
theirs: prefix ? `${prefix}\n${theirs}` : theirs,
|
|
263
|
-
};
|
|
264
|
-
}
|
|
265
|
-
/**
|
|
266
|
-
* Ask the LLM to merge two versions of a file.
|
|
267
|
-
*/
|
|
268
|
-
async function llmMerge(model, ours, theirs, filename) {
|
|
269
|
-
const prompt = `You are merging two versions of a Studiograph entity file (${filename}).
|
|
270
|
-
This is a markdown file with YAML frontmatter. Your job is to produce a single merged version that preserves the intent of both changes.
|
|
271
|
-
|
|
272
|
-
Rules:
|
|
273
|
-
- For timestamps (created_at, updated_at): keep the most recent value
|
|
274
|
-
- For additive changes (new fields, new content): include both
|
|
275
|
-
- For conflicting scalar values: prefer the version with more information; if unclear, prefer "theirs" (the remote version)
|
|
276
|
-
- For content (markdown body): combine both additions if they are distinct; deduplicate if they overlap
|
|
277
|
-
- Output ONLY the merged file content, no explanation or code fences
|
|
278
|
-
|
|
279
|
-
## Version A (local)
|
|
280
|
-
|
|
281
|
-
${ours}
|
|
282
|
-
|
|
283
|
-
## Version B (remote)
|
|
284
|
-
|
|
285
|
-
${theirs}
|
|
286
|
-
|
|
287
|
-
## Merged output`;
|
|
288
|
-
try {
|
|
289
|
-
const result = await generateText({
|
|
290
|
-
model,
|
|
291
|
-
prompt,
|
|
292
|
-
maxOutputTokens: 4096,
|
|
293
|
-
});
|
|
294
|
-
const text = result.text.trim();
|
|
295
|
-
if (!text)
|
|
296
|
-
return null;
|
|
297
|
-
return text;
|
|
298
|
-
}
|
|
299
|
-
catch {
|
|
300
|
-
return null;
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
//# sourceMappingURL=merge-resolver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merge-resolver.js","sourceRoot":"","sources":["../../src/utils/merge-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Lightweight workspace config reader.
|
|
3
|
-
*
|
|
4
|
-
* Reads .studiograph/workspace.json synchronously without
|
|
5
|
-
* instantiating the full Workspace class. Used by sync pipeline
|
|
6
|
-
* modules that only need repo paths.
|
|
7
|
-
*/
|
|
8
|
-
export declare function loadWorkspaceConfig(workspacePath: string): any;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Lightweight workspace config reader.
|
|
3
|
-
*
|
|
4
|
-
* Reads .studiograph/workspace.json synchronously without
|
|
5
|
-
* instantiating the full Workspace class. Used by sync pipeline
|
|
6
|
-
* modules that only need repo paths.
|
|
7
|
-
*/
|
|
8
|
-
import { existsSync, readFileSync } from 'fs';
|
|
9
|
-
import { join } from 'path';
|
|
10
|
-
export function loadWorkspaceConfig(workspacePath) {
|
|
11
|
-
try {
|
|
12
|
-
const configPath = join(workspacePath, '.studiograph', 'workspace.json');
|
|
13
|
-
if (existsSync(configPath)) {
|
|
14
|
-
return JSON.parse(readFileSync(configPath, 'utf-8'));
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
catch {
|
|
18
|
-
// non-fatal — callers handle null
|
|
19
|
-
}
|
|
20
|
-
return null;
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=workspace-config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-config.js","sourceRoot":"","sources":["../../src/utils/workspace-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,UAAU,mBAAmB,CAAC,aAAqB;IACvD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;QACzE,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,kCAAkC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:4px;--radius-md:6px;--radius-lg:12px;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-accent:#e05050;--color-accent-hover:#c94444;--color-success:#3ecf8e;--color-destructive:#e54d4d;--color-destructive-hover:#c93c3c;--color-link:#e07070;--row-height:44px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box;margin:0;padding:0}:focus{outline:none}body{font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:22px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-\[50\%\]{top:50%}.left-\[50\%\]{left:50%}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-0{margin-block:calc(var(--spacing) * 0)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-2{margin-left:calc(var(--spacing) * 2)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.aspect-square{aspect-ratio:1}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\[22px\]{width:22px;height:22px}.size-full{width:100%;height:100%}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-\[11px\]{gap:11px}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded-\[4px\]{border-radius:4px}.rounded-\[6px\]{border-radius:6px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-\[var\(--color-text-tertiary\)\]{border-color:var(--color-text-tertiary)}.border-transparent{border-color:#0000}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--color-badge-bg\)\]{background-color:var(--color-badge-bg)}.bg-\[var\(--color-bg\)\]{background-color:var(--color-bg)}.bg-\[var\(--color-bg-elevated\)\]{background-color:var(--color-bg-elevated)}.bg-\[var\(--color-bg-surface\)\]{background-color:var(--color-bg-surface)}.bg-\[var\(--color-destructive\)\]{background-color:var(--color-destructive)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-transparent{background-color:#0000}.bg-clip-padding{background-clip:padding-box}.p-0{padding:calc(var(--spacing) * 0)}.p-2{padding:calc(var(--spacing) * 2)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pl-\[19px\]{padding-left:19px}.text-center{text-align:center}.text-start{text-align:start}.align-baseline{vertical-align:baseline}.align-middle{vertical-align:middle}.font-\[inherit\]{font-family:inherit}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-badge-text\)\]{color:var(--color-badge-text)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-\[var\(--color-text-secondary\)\]{color:var(--color-text-secondary)}.text-\[var\(--color-text-tertiary\)\]{color:var(--color-text-tertiary)}.text-current{color:currentColor}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,background\]{transition-property:color,background;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-\[var\(--color-text-tertiary\)\]::placeholder{color:var(--color-text-tertiary)}@media(hover:hover){.hover\:border-\[var\(--color-accent\)\]:hover{border-color:var(--color-accent)}.hover\:bg-\[var\(--color-accent-hover\)\]:hover{background-color:var(--color-accent-hover)}.hover\:bg-\[var\(--color-bg-hover\)\]:hover{background-color:var(--color-bg-hover)}.hover\:bg-\[var\(--color-destructive-hover\)\]:hover{background-color:var(--color-destructive-hover)}.hover\:text-\[var\(--color-text-primary\)\]:hover{color:var(--color-text-primary)}.hover\:text-\[var\(--color-text-secondary\)\]:hover{color:var(--color-text-secondary)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-\[var\(--color-accent\,\#e05050\)\]:focus{border-color:var(--color-accent,#e05050)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[var\(--color-accent\)\]:focus-visible{--tw-ring-color:var(--color-accent)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-\[var\(--color-bg-primary\)\]:focus-visible{--tw-ring-offset-color:var(--color-bg-primary)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:min-h-full[data-orientation=vertical]{min-height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[state\=active\]\:bg-\[var\(--color-bg-hover\)\][data-state=active]{background-color:var(--color-bg-hover)}.data-\[state\=active\]\:font-medium[data-state=active]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[state\=active\]\:text-\[var\(--color-text-primary\)\][data-state=active]{color:var(--color-text-primary)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:border-\[var\(--color-accent\)\][data-state=checked]{border-color:var(--color-accent)}.data-\[state\=checked\]\:bg-\[var\(--color-accent\)\][data-state=checked]{background-color:var(--color-accent)}.data-\[state\=checked\]\:text-white[data-state=checked]{color:var(--color-white)}@media(min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-start{text-align:start}}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pe-0:has([role=checkbox]){padding-inline-end:calc(var(--spacing) * 0)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}:root,[data-theme=dark]{--color-bg:#09090b;--color-bg-elevated:#0f0f12;--color-bg-surface:#141418;--color-bg-hover:#1a1a1f;--color-bg-selected:#1a1a1f;--color-border:#1e1e24;--color-border-strong:#2a2a32;--color-text-primary:#ededef;--color-text-secondary:#a0a0a6;--color-text-tertiary:#5c5c66;--color-accent-muted:#e0505014;--color-badge-bg:#1a1a22;--color-badge-text:#8b8b94}[data-theme=light]{--color-bg:#f8f8fa;--color-bg-elevated:#f0f0f3;--color-bg-surface:#e8e8ec;--color-bg-hover:#e2e2e8;--color-bg-selected:#e2e2e8;--color-border:#dadadf;--color-border-strong:#c9c9d0;--color-text-primary:#1a1a1f;--color-text-secondary:#63636b;--color-text-tertiary:#9898a0;--color-accent-muted:#e0505014;--color-badge-bg:#e0e0e5;--color-badge-text:#63636b}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}[data-sonner-toast]{background:#0f0f12d1!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border-color:var(--color-border-strong, #2a2a32)!important;color:var(--color-text-primary, #ededef)!important}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.setup-page.svelte-g40i6i{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg)}.setup-card.svelte-g40i6i{width:100%;max-width:360px;padding:40px 32px}.logo.svelte-g40i6i{display:flex;align-items:center;gap:12px;margin-bottom:12px;justify-content:center}.logo-icon.svelte-g40i6i{width:32px;height:32px;border-radius:50%;background:var(--color-accent, #e05050);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}.logo-text.svelte-g40i6i{font-size:20px;font-weight:600;color:var(--color-text-primary)}.subtitle.svelte-g40i6i{text-align:center;color:var(--color-text-secondary);font-size:15px;margin:0 0 28px}form.svelte-g40i6i{display:flex;flex-direction:column;gap:20px}.field.svelte-g40i6i{display:flex;flex-direction:column;gap:6px}.field-label.svelte-g40i6i{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.field-hint.svelte-g40i6i{font-size:13px;color:var(--color-text-tertiary, var(--color-text-secondary));opacity:.7}.field.svelte-g40i6i .field-input{height:40px;border-radius:8px;font-size:15px}.error-msg.svelte-g40i6i{margin:0;font-size:14px;color:#e55;text-align:center}form.svelte-g40i6i .submit-btn{height:40px;border-radius:8px;font-size:15px;font-weight:600;margin-top:4px;width:100%}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.resize-handle.svelte-tfh9g9{position:absolute;top:0;bottom:0;width:6px;cursor:col-resize;z-index:10}.resize-handle.right.svelte-tfh9g9{right:-3px}.resize-handle.left.svelte-tfh9g9{left:-3px}.resize-handle.svelte-tfh9g9:hover,.resize-handle.active.svelte-tfh9g9{background:var(--color-accent);opacity:.3}.resize-handle.active.svelte-tfh9g9{opacity:.5}.radio-item{position:relative;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1.5px solid var(--color-text-tertiary);background:none;outline:none;flex-shrink:0;cursor:pointer}.radio-item[data-state=checked]{border-color:var(--color-accent)}.radio-item:focus-visible{box-shadow:0 0 0 2px var(--color-accent)}.radio-dot.svelte-l8hbh2{width:8px;height:8px;border-radius:50%;background:var(--color-accent)}.entity-body{padding:16px 24px 24px;display:flex;flex-direction:column;gap:20px;overflow-x:hidden}.type-section.svelte-ak7t5k{display:flex;flex-direction:column;gap:8px}.type-section-label.svelte-ak7t5k{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.type-grid.svelte-ak7t5k{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.type-grid.svelte-ak7t5k .type-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:12px;height:auto;border-radius:8px;text-align:left;color:var(--color-text-secondary);justify-content:flex-start}.type-grid.svelte-ak7t5k .type-card:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.type-grid.svelte-ak7t5k .type-card:hover .type-name{color:var(--color-text-primary)}.type-dot.svelte-ak7t5k{width:8px;height:8px;border-radius:50%}.type-info.svelte-ak7t5k{display:flex;flex-direction:column;gap:2px}.type-name.svelte-ak7t5k{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.type-desc.svelte-ak7t5k{font-size:12px;color:var(--color-text-tertiary);line-height:1.3}.sidebar.svelte-6dohdz{position:relative;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg);border-right:1px solid var(--color-border)}.sidebar-header.svelte-6dohdz{height:var(--row-height);display:flex;align-items:center;gap:11px;padding:0 12px 0 19px;border-bottom:1px solid var(--color-border);flex-shrink:0}.header-actions.svelte-6dohdz{margin-left:auto;display:flex;align-items:center}.sidebar-header.svelte-6dohdz .home-btn{display:inline-flex;align-items:center;gap:11px;padding:0;min-width:0;text-align:left;border-radius:0;height:auto;background:transparent!important}.sidebar-header.svelte-6dohdz .home-btn:hover .workspace-icon{opacity:.8}.sidebar-header.svelte-6dohdz .home-btn:hover .workspace-name{color:var(--color-text-secondary)}.workspace-icon.svelte-6dohdz{width:22px;height:22px;border-radius:50%;background:var(--color-accent, #e05050);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:11px;flex-shrink:0}.workspace-name.svelte-6dohdz{flex:1;font-size:14px;font-weight:600;color:var(--color-text-primary)}.settings-nav.svelte-6dohdz{display:flex;flex-direction:column;flex:1;padding-top:0}.settings-nav.svelte-6dohdz button[data-slot=tabs-trigger]{display:flex;align-items:center;width:100%;height:var(--row-height);padding:0 12px 0 19px;gap:11px;border:none;background:transparent;cursor:pointer;font-family:inherit;font-size:14px;color:var(--color-text-secondary);transition:color .15s,background .15s}.settings-nav.svelte-6dohdz button[data-slot=tabs-trigger]:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.settings-nav.svelte-6dohdz button[data-slot=tabs-trigger][data-state=active]{background:var(--color-bg-hover);color:var(--color-text-primary);font-weight:500}.settings-nav.svelte-6dohdz button[data-slot=tabs-trigger] svg{width:14px;height:14px;flex-shrink:0;box-sizing:content-box;padding:0 4px}.filter-bar.svelte-6dohdz{position:relative;display:flex;align-items:center;height:var(--row-height);padding:0 12px 0 52px;border-bottom:1px solid var(--color-border);flex-shrink:0}.filter-icon.svelte-6dohdz{position:absolute;left:22px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:16px;color:var(--color-text-tertiary)}.filter-bar.svelte-6dohdz .filter-input{flex:1;background:transparent;border:none;outline:none;padding:0;margin:0;font-size:14px;line-height:1.4;height:auto;border-radius:0}.filter-bar.svelte-6dohdz .filter-clear{width:20px;height:20px;flex-shrink:0}.filter-bar.svelte-6dohdz .sort-toggle{width:28px;height:28px;flex-shrink:0;margin-left:4px}.filter-bar.svelte-6dohdz .sort-toggle.active{color:var(--color-accent, #e05050)}.repo-type-icon.svelte-6dohdz{display:inline-flex;align-items:center;color:var(--color-text-tertiary);margin-right:6px;flex-shrink:0;align-self:center}.tree.svelte-6dohdz{flex:1;overflow-y:auto;padding-top:0}.tree-group.svelte-6dohdz{display:flex;flex-direction:column}.tree-group.svelte-6dohdz+.tree-group:where(.svelte-6dohdz){margin-top:0}.repo-row{display:flex;align-items:baseline;height:var(--row-height);line-height:var(--row-height);width:100%;padding:0 12px 0 20px;border:none;background:transparent;font-family:inherit;text-align:left;border-left:2px solid transparent;border-radius:0;gap:0;justify-content:flex-start}.repo-row:hover,.repo-row.focused{background:var(--color-bg-hover)}.repo-row.repo-active{border-left-color:var(--active-color)}.repo-name.svelte-6dohdz{font-size:14px;color:var(--color-text-secondary)}.repo-row.repo-active .repo-name.svelte-6dohdz,.repo-row.repo-active .repo-type-icon.svelte-6dohdz{font-weight:600;color:var(--color-text-primary)}.tree-row{position:relative;display:flex;align-items:baseline;height:var(--row-height);line-height:var(--row-height);padding-right:40px;color:var(--color-text-secondary);font-size:14px;border:none;background:transparent;font-family:inherit;text-align:left;width:100%;border-left:2px solid transparent;border-radius:0;gap:0;justify-content:flex-start}.tree-row:hover,.tree-row.focused{background:var(--color-bg-hover)}.tree-row.selected{background:var(--color-bg-selected);border-left-color:var(--active-color);color:var(--color-text-primary);font-weight:600}.row-chevron.svelte-6dohdz{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:16px;height:16px;flex-shrink:0;margin-right:14px;color:var(--color-text-tertiary);transition:transform .15s}.row-chevron.open.svelte-6dohdz{transform:rotate(90deg)}.row-label.svelte-6dohdz{flex:1;overflow:hidden;white-space:nowrap;mask-image:linear-gradient(to right,black calc(100% - 16px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent 100%)}.item-count.svelte-6dohdz{font-size:12px;font-weight:400;color:var(--color-text-tertiary);margin-left:8px;flex-shrink:0;opacity:0;transition:opacity .15s}.tree-row:hover .item-count.svelte-6dohdz,.repo-row-wrapper.svelte-6dohdz:hover .item-count:where(.svelte-6dohdz),.repo-row-wrapper.svelte-6dohdz:has(.repo-actions-btn.menu-open) .item-count:where(.svelte-6dohdz),.type-header-wrapper.svelte-6dohdz:hover .item-count:where(.svelte-6dohdz),.type-header-wrapper.svelte-6dohdz:has(.type-actions-btn.menu-open) .item-count:where(.svelte-6dohdz),.entity-row-wrapper.svelte-6dohdz:hover .item-count:where(.svelte-6dohdz),.entity-row-wrapper.svelte-6dohdz:has(.entity-actions-btn.menu-open) .item-count:where(.svelte-6dohdz){opacity:1}.indent-group.svelte-6dohdz{position:relative}.indent-group.svelte-6dohdz:before{content:"";position:absolute;left:var(--guide-left);top:0;bottom:0;width:1px;background:var(--color-border);pointer-events:none}.loading-row.svelte-6dohdz{height:var(--row-height);display:flex;align-items:center;font-size:14px;color:var(--color-text-tertiary)}.type-header-row{color:var(--color-text-secondary);border-left:2px solid transparent}.type-header-row.type-active{color:var(--color-text-primary);font-weight:600}.type-header-row .row-label.svelte-6dohdz{flex:none;mask-image:none;-webkit-mask-image:none}.entity-type-dot.svelte-6dohdz{width:6px;height:6px;border-radius:3px;flex-shrink:0;margin-right:2px}.new-entity-row{color:var(--color-text-tertiary);align-items:center}.new-entity-row:hover{color:var(--color-text-secondary)}.entity-row-wrapper.svelte-6dohdz{position:relative;display:flex;align-items:center}.entity-row-wrapper.svelte-6dohdz .tree-row{flex:1;min-width:0}.entity-row-wrapper.svelte-6dohdz .entity-actions-btn{display:none;width:28px;height:28px;position:absolute;right:12px;flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;color:var(--color-text-tertiary);border-radius:4px;align-items:center;justify-content:center}.entity-row-wrapper.svelte-6dohdz .entity-actions-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.entity-row-wrapper.svelte-6dohdz:hover .tree-row,.entity-row-wrapper.svelte-6dohdz:has(.entity-actions-btn.menu-open) .tree-row{background:var(--color-bg-hover)}.entity-row-wrapper.svelte-6dohdz:hover .entity-actions-btn,.entity-row-wrapper.svelte-6dohdz .entity-actions-btn.menu-open{display:inline-flex}.entity-type-dot.svelte-6dohdz{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-right:19px;align-self:center}.recent-time.svelte-6dohdz{font-size:12px;color:var(--color-text-tertiary);position:absolute;right:26px;top:50%;transform:translate(50%,-50%);white-space:nowrap}.entity-row-wrapper.svelte-6dohdz:hover .recent-time:where(.svelte-6dohdz){display:none}.presence-stack.svelte-6dohdz{display:flex;align-items:center;gap:-4px;margin-left:auto;flex-shrink:0;align-self:center}.presence-avatar.svelte-6dohdz{width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:600;color:#fff;background:var(--color-accent);display:flex;align-items:center;justify-content:center;margin-left:-3px;border:1px solid var(--color-bg);box-sizing:border-box;flex-shrink:0;align-self:center}.presence-stack.svelte-6dohdz .presence-avatar:where(.svelte-6dohdz):first-child{margin-left:4px}.repo-row .presence-stack.svelte-6dohdz{margin-right:28px}.presence-avatar.svelte-6dohdz:nth-child(1){z-index:3}.presence-avatar.svelte-6dohdz:nth-child(2){z-index:2}.presence-avatar.svelte-6dohdz:nth-child(3){z-index:1}.filter-match.svelte-6dohdz{background:var(--color-accent, #e05050);color:#fff;border-radius:2px;padding:0}.no-results.svelte-6dohdz{padding:24px 16px;font-size:14px;color:var(--color-text-tertiary);text-align:center}.repo-row .repo-rename-input{flex:1;min-width:0;height:100%;padding:0 6px;margin:0;border:1px solid var(--color-accent, #e05050);border-radius:3px;font-size:14px;font-weight:600}.repo-row-wrapper.svelte-6dohdz{position:relative;display:flex;align-items:center}.repo-row-wrapper.drop-target.svelte-6dohdz{outline:2px solid var(--color-accent, #e05050);outline-offset:-2px;border-radius:6px;background:#e0505014}.import-modal{max-width:480px}.import-modal .dialog-header{flex-direction:column;align-items:flex-start;gap:4px}.import-modal-body.svelte-6dohdz{padding:16px 24px 8px}.import-modal .dialog-footer{border-top:none}.import-file-list.svelte-6dohdz{display:flex;flex-direction:column;max-height:240px;overflow-y:auto}.import-file-row.svelte-6dohdz{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--color-border)}.import-file-icon.svelte-6dohdz{flex-shrink:0;color:var(--color-text-tertiary)}.import-file-info.svelte-6dohdz{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.import-file-name.svelte-6dohdz{font-size:14px;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-file-size.svelte-6dohdz{font-size:12px;color:var(--color-text-tertiary)}.import-file-remove.svelte-6dohdz{flex-shrink:0;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center}.import-file-remove.svelte-6dohdz:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.import-drop-zone.svelte-6dohdz{border:1px solid var(--color-border, #333);border-radius:0;padding:40px 16px;text-align:center;color:var(--color-text-tertiary);font-size:15px;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:background .15s}.import-drop-zone-compact.svelte-6dohdz{min-height:0;padding:14px 16px;border-top:none}.import-hint.svelte-6dohdz{font-size:13px;color:var(--color-text-tertiary);margin:0}.file-picker-link.svelte-6dohdz{background:none;border:none;color:var(--color-accent, #e05050);cursor:pointer;text-decoration:underline;font-size:15px;padding:0}.file-picker-link-sm.svelte-6dohdz{font-size:13px}.repo-row-wrapper.svelte-6dohdz .repo-row{flex:1;min-width:0}.repo-row-wrapper.svelte-6dohdz .repo-actions-btn{display:none;width:28px;height:28px;position:absolute;right:12px;flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;color:var(--color-text-tertiary);border-radius:4px;align-items:center;justify-content:center}.repo-row-wrapper.svelte-6dohdz .repo-actions-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.repo-row-wrapper.svelte-6dohdz:hover .repo-row,.repo-row-wrapper.svelte-6dohdz:has(.repo-actions-btn.menu-open) .repo-row{background:var(--color-bg-hover)}.repo-row-wrapper.svelte-6dohdz:hover .repo-actions-btn,.repo-row-wrapper.svelte-6dohdz .repo-actions-btn.menu-open{display:inline-flex}.type-header-wrapper.svelte-6dohdz{position:relative;display:flex;align-items:center}.type-header-wrapper.svelte-6dohdz .type-header-row{flex:1;min-width:0}.type-header-wrapper.svelte-6dohdz .type-actions-btn{display:none;width:24px;height:24px;position:absolute;right:12px;flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;color:var(--color-text-tertiary);border-radius:4px;align-items:center;justify-content:center}.type-header-wrapper.svelte-6dohdz .type-actions-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.type-header-wrapper.svelte-6dohdz:hover .type-header-row,.type-header-wrapper.svelte-6dohdz:has(.type-actions-btn.menu-open) .type-header-row{background:var(--color-bg-hover)}.type-header-wrapper.svelte-6dohdz:hover .type-actions-btn,.type-header-wrapper.svelte-6dohdz .type-actions-btn.menu-open{display:inline-flex}.repo-actions-menu{min-width:120px;padding:4px;border-radius:6px;background:var(--color-bg-elevated);border:1px solid var(--color-border);box-shadow:0 4px 12px #00000026;z-index:1000}.repo-menu-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:13px;color:var(--color-text-primary)}.repo-menu-item:hover{background:var(--color-bg-hover)}.repo-menu-item-danger{color:var(--color-error, #e55)}.new-collection-btn,.new-collection-btn .repo-name.svelte-6dohdz,.new-collection-btn .row-chevron.svelte-6dohdz{color:var(--color-text-tertiary)}.new-collection-btn:hover,.new-collection-btn:hover .repo-name.svelte-6dohdz{color:var(--color-text-secondary)}.new-collection-row.svelte-6dohdz{display:flex;align-items:center;height:var(--row-height);padding:0 12px 0 20px;border-left:2px solid transparent}.new-collection-row.svelte-6dohdz .new-collection-input{flex:1;height:100%;padding:0 0 0 30px;margin-top:-1px;border:none;background:transparent;font-size:14px;border-radius:0}.new-collection-row.svelte-6dohdz .new-collection-clear{width:20px;height:20px;flex-shrink:0;margin-right:4px}.new-collection-row.svelte-6dohdz .private-toggle{width:20px;height:20px;flex-shrink:0;margin-left:auto;margin-right:4px;color:var(--color-text-secondary)}.new-collection-row.svelte-6dohdz .private-toggle.active{color:var(--color-accent, #e05050)}@keyframes svelte-6dohdz-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.new-collection-row.svelte-6dohdz .new-collection-input.shake{animation:svelte-6dohdz-shake .3s ease-in-out}.sidebar-footer.svelte-6dohdz{display:flex;align-items:center;height:var(--row-height);padding:0 12px 0 19px;border-top:1px solid var(--color-border);flex-shrink:0;gap:8px}.user-email.svelte-6dohdz{flex:1;font-size:13px;color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer.svelte-6dohdz .footer-icon-btn{width:28px;height:28px}.transfer-header-col.svelte-6dohdz{display:flex;flex-direction:column;gap:4px}.transfer-list.svelte-6dohdz{display:flex;flex-direction:column;gap:2px}.transfer-list-item.svelte-6dohdz{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border-radius:6px;color:var(--color-text);font-size:13px;cursor:pointer}.transfer-list-item.svelte-6dohdz:hover{background:var(--color-bg-hover)}.entity-floating-tooltip.svelte-6dohdz{position:fixed;z-index:1000;transform:translateY(-50%);display:flex;flex-direction:column;gap:2px;padding:6px 10px;border-radius:6px;background:var(--color-bg-elevated);border:1px solid var(--color-border);box-shadow:0 4px 16px #0000004d;pointer-events:none;min-width:120px;max-width:260px}.entity-floating-tooltip.fading.svelte-6dohdz{opacity:0;transition:opacity .12s ease-out}.entity-tooltip-title.svelte-6dohdz{font-size:13px;font-weight:600;color:var(--color-text-primary)}.entity-tooltip-meta.svelte-6dohdz{font-size:13px;color:var(--color-text-tertiary)}.chat-panel.svelte-1xwj6s7{position:relative;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-bg);border-left:1px solid var(--color-border)}.chat-panel.chat-full.svelte-1xwj6s7{width:100%;min-width:0;flex:1;border-left:none}.chat-full.svelte-1xwj6s7 .chat-messages:where(.svelte-1xwj6s7){padding-left:calc((100% - 720px)/2);padding-right:calc((100% - 720px)/2)}.chat-full.svelte-1xwj6s7 .chat-input-area:where(.svelte-1xwj6s7){padding-left:calc((100% - 720px)/2);padding-right:calc((100% - 720px)/2)}.chat-header.svelte-1xwj6s7{height:var(--row-height);display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--color-border);position:relative;flex-shrink:0}.chat-header-left.svelte-1xwj6s7,.chat-header-right.svelte-1xwj6s7{display:flex;align-items:center;gap:2px}.history-active{color:var(--color-accent, #e05050)!important}.history-active:not(:hover){background:transparent!important}.session-dropdown.svelte-1xwj6s7{position:absolute;top:100%;left:0;right:0;z-index:10;box-shadow:0 4px 12px #0000001f}.session-list.svelte-1xwj6s7{max-height:240px;overflow-y:auto;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.session-row.svelte-1xwj6s7{position:relative;display:flex;align-items:center}.session-row.svelte-1xwj6s7 .session-item{display:flex;align-items:center;justify-content:flex-start;flex:1;min-width:0;padding:0 32px 0 16px;height:var(--row-height);line-height:var(--row-height);font-size:14px;color:var(--color-text-secondary);text-align:left;border-radius:0}.session-row.svelte-1xwj6s7:hover .session-item{background:var(--color-bg-hover)}.session-row.svelte-1xwj6s7 .session-item.active{background:var(--color-bg-hover);color:var(--color-text-primary);font-weight:500}.session-row.svelte-1xwj6s7 .session-delete-btn{display:none;width:20px;height:20px;position:absolute;right:6px;flex-shrink:0;padding:0}.session-row.svelte-1xwj6s7 .session-delete-btn:hover{color:var(--color-error, #e55)}.session-row.svelte-1xwj6s7:hover .session-delete-btn{display:flex}.session-title.svelte-1xwj6s7{flex:1;overflow:hidden;white-space:nowrap;min-width:0;mask-image:linear-gradient(to right,black calc(100% - 24px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black calc(100% - 24px),transparent 100%)}.chat-messages.svelte-1xwj6s7{flex:1;overflow-y:auto;padding:24px 16px;display:flex;flex-direction:column;gap:32px}.empty-state.svelte-1xwj6s7{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);font-size:14px}.seed-prompts.svelte-1xwj6s7{display:flex;flex-direction:column;gap:8px;width:100%}.seed-prompts.svelte-1xwj6s7 .seed-prompt{font-size:14px;line-height:20px;padding:9px 13px;min-height:var(--row-height);height:auto;border-radius:8px;color:var(--color-text-secondary);text-align:left;white-space:normal;justify-content:flex-start}.seed-prompts.svelte-1xwj6s7 .seed-prompt:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.message-group.svelte-1xwj6s7{display:flex;flex-direction:column;gap:16px}.user-bubble.svelte-1xwj6s7{background:var(--color-bg-surface);border-radius:8px;padding:12px 14px;font-size:14px;line-height:22px;color:var(--color-text-primary)}.agent-content.svelte-1xwj6s7{display:flex;flex-direction:column;gap:14px;position:relative}.msg-actions.svelte-1xwj6s7{display:flex;gap:2px;align-self:flex-start}.copy-btn.svelte-1xwj6s7{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:4px;border-radius:4px;align-self:flex-start}.copy-btn.svelte-1xwj6s7:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.tool-calls.svelte-1xwj6s7{display:flex;flex-direction:column;gap:4px}.tool-call.svelte-1xwj6s7{font-family:var(--font-mono);font-size:12px;color:var(--color-accent)}.agent-text.svelte-1xwj6s7{font-size:14px;line-height:22px;color:var(--color-text-primary)}.prose.svelte-1xwj6s7 h1{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:24px 0 12px}.prose.svelte-1xwj6s7 h2{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:22px 0 10px}.prose.svelte-1xwj6s7 h3{font-size:15px;font-weight:600;color:var(--color-text-primary);margin:20px 0 8px}.prose.svelte-1xwj6s7 p{margin:0 0 14px}.prose.svelte-1xwj6s7 p:last-child{margin-bottom:0}.prose.svelte-1xwj6s7 strong{font-weight:600}.prose.svelte-1xwj6s7 ul,.prose.svelte-1xwj6s7 ol{padding-left:20px;margin:0 0 14px;color:var(--color-text-primary)}.prose.svelte-1xwj6s7 ul{list-style-type:disc}.prose.svelte-1xwj6s7 ol{list-style-type:decimal}.prose.svelte-1xwj6s7 li{margin-bottom:6px}.prose.svelte-1xwj6s7 table{width:100%;border-collapse:collapse;font-size:13px;margin:16px 0}.prose.svelte-1xwj6s7 th,.prose.svelte-1xwj6s7 td{border:1px solid var(--color-border);padding:4px 8px;text-align:left;vertical-align:top}.prose.svelte-1xwj6s7 th{font-weight:600}.prose.svelte-1xwj6s7 pre{background:var(--color-bg-surface);border-radius:6px;padding:10px 12px;overflow-x:auto;margin:16px 0;font-family:var(--font-mono);font-size:13px;line-height:18px}.prose.svelte-1xwj6s7 code{font-family:var(--font-mono);font-size:13px;background:var(--color-bg-surface);padding:1px 4px;border-radius:3px}.prose.svelte-1xwj6s7 pre code{background:none;padding:0}.prose.svelte-1xwj6s7 a{color:var(--color-link)}.prose.svelte-1xwj6s7 blockquote{border-left:3px solid var(--color-accent);padding-left:12px;margin:16px 0;color:var(--color-text-secondary)}.prose.svelte-1xwj6s7 hr{border:none;border-top:1px solid var(--color-border);margin:24px 0}.streaming-dot.svelte-1xwj6s7{display:inline-block;width:8px;height:8px;background:var(--color-accent);border-radius:4px;animation:svelte-1xwj6s7-pulse 1s ease-in-out infinite}@keyframes svelte-1xwj6s7-pulse{0%,to{opacity:.3}50%{opacity:1}}.context-chip.svelte-1xwj6s7{font-size:12px;color:var(--color-text-tertiary);padding:0 2px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-input-area.svelte-1xwj6s7{padding:12px 16px 16px}.text-input.svelte-1xwj6s7{display:flex;align-items:flex-end;min-height:var(--row-height);max-height:140px;padding:0 0 0 13px;background:transparent;border:1px solid var(--color-border);border-radius:8px;transition:border-color .15s}.text-input.svelte-1xwj6s7:focus-within{border-color:var(--color-accent)}.send-btn{color:var(--color-text-tertiary);margin:6px;flex-shrink:0;pointer-events:none}.send-btn.send-active{pointer-events:auto;color:#fff;background:var(--color-accent);border-radius:6px}.stop-btn{color:#fff;background:var(--color-accent);border-radius:6px}.input-field.svelte-1xwj6s7{flex:1;background:transparent;border:none;outline:none;font-family:inherit;font-size:14px;line-height:20px;color:var(--color-text-primary);resize:none;overflow-y:auto;padding:9px 0;max-height:120px;field-sizing:content}.input-field.svelte-1xwj6s7::placeholder{color:var(--color-text-tertiary)}.input-field.svelte-1xwj6s7:disabled{opacity:.5}.search-header.svelte-1xems06{display:flex;align-items:center;height:52px;padding:0 16px;gap:10px;border-bottom:1px solid var(--color-border)}.search-header.svelte-1xems06 svg{color:var(--color-text-tertiary);flex-shrink:0}.search-header.svelte-1xems06 .search-input{flex:1;font-size:16px;line-height:20px;border:none;background:transparent;box-shadow:none;padding:0;height:auto}.search-header.svelte-1xems06 .search-input:focus{box-shadow:none;border:none}.esc-badge.svelte-1xems06{font-family:var(--font-sans);font-size:12px;line-height:1;padding:3px 6px;border-radius:4px;background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-tertiary)}.results-list.svelte-1xems06{flex:1;overflow-y:auto;min-height:0}.empty-results.svelte-1xems06{padding:24px 16px;text-align:center;font-size:14px;color:var(--color-text-tertiary)}.results-list.svelte-1xems06 .result-row{display:flex;align-items:flex-start;padding:10px 16px;width:100%;text-align:left;border-radius:0;height:auto;justify-content:flex-start}.results-list.svelte-1xems06 .result-row:hover,.results-list.svelte-1xems06 .result-row.selected{background:var(--color-bg-hover)}.result-body.svelte-1xems06{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.result-title-row.svelte-1xems06{display:flex;align-items:center;gap:8px}.result-title.svelte-1xems06{font-size:14px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-tag.svelte-1xems06{flex-shrink:0;font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:var(--color-badge-bg);color:var(--color-badge-text)}.result-meta.svelte-1xems06{font-size:13px;color:var(--color-text-tertiary)}.search-footer.svelte-1xems06{display:flex;align-items:center;height:39px;padding:0 16px;gap:16px;border-top:1px solid var(--color-border)}.shortcut-group.svelte-1xems06{display:flex;align-items:center;gap:4px}.shortcut-key.svelte-1xems06{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;border-radius:4px;background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-tertiary)}.shortcut-label.svelte-1xems06{font-size:12px;color:var(--color-text-tertiary);margin-left:2px}.app-frame.svelte-vr1z90{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg)}.app-body.svelte-vr1z90{flex:1;display:flex;min-height:0;overflow:hidden}.main-content.svelte-vr1z90{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}#sg-chrome-footer{flex-shrink:0}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.chat-input-wrap.svelte-1anss1t{width:100%;max-width:640px}.chat-input-box.svelte-1anss1t{display:flex;align-items:center;gap:8px;border-radius:8px;border:1px solid var(--color-border);background:transparent;padding:6px 6px 6px 16px;transition:border-color .15s;cursor:text}.chat-input-box.svelte-1anss1t:focus-within{border-color:var(--color-accent)}.chat-textarea.svelte-1anss1t{flex:1;min-height:24px;max-height:160px;padding:0;border:none;background:transparent;color:var(--color-text-primary);font-family:inherit;font-size:15px;line-height:1.5;resize:none;outline:none;box-sizing:border-box}.chat-textarea.svelte-1anss1t::placeholder{color:var(--color-text-tertiary)}.send-btn.svelte-1anss1t{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:none;border-radius:8px;background:var(--color-text-tertiary);color:var(--color-bg);cursor:not-allowed;transition:background .15s}.send-btn.active.svelte-1anss1t{background:var(--color-accent);color:#fff;cursor:pointer}.send-btn.active.svelte-1anss1t:hover{background:var(--color-accent-hover)}.home.svelte-h7bcrl{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;container-type:inline-size}.hero.svelte-h7bcrl{display:flex;flex-direction:column;align-items:center;gap:24px;padding:80px 24px 32px}.hero.centered.svelte-h7bcrl{flex:1;justify-content:center}.workspace-name.svelte-h7bcrl{font-size:42px;font-weight:300;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.1;text-align:center;margin:0}@container (max-width: 700px){.workspace-name.svelte-h7bcrl{font-size:32px}}.suggestions-hint.svelte-h7bcrl{font-size:15px;color:var(--color-text-tertiary);text-align:center;margin:0}.suggestions.svelte-h7bcrl{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:640px}.suggestion-chip.svelte-h7bcrl{padding:6px 14px;border:1px solid var(--color-border);border-radius:9999px;background:var(--color-bg-surface);color:var(--color-text-secondary);font-family:inherit;font-size:13px;cursor:pointer;transition:border-color .15s,color .15s}.suggestion-chip.svelte-h7bcrl:hover{border-color:var(--color-accent);color:var(--color-text-primary)}.loading-state.svelte-h7bcrl{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px 24px;color:var(--color-text-tertiary);font-size:14px}.animate-spin{animation:svelte-h7bcrl-spin 1s linear infinite}@keyframes svelte-h7bcrl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.insights-section.svelte-h7bcrl{padding:0 24px 24px;max-width:1080px;margin:0 auto;width:100%;box-sizing:border-box}.insights-header.svelte-h7bcrl{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.insights-title.svelte-h7bcrl{display:flex;align-items:baseline;gap:10px}.insights-meta.svelte-h7bcrl{font-size:12px;color:var(--color-text-tertiary)}.insights-actions.svelte-h7bcrl{display:flex;align-items:center;gap:8px}.edit-focus-link.svelte-h7bcrl{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-family:inherit;color:var(--color-text-tertiary);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:4px}.edit-focus-link.svelte-h7bcrl:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.insights-grid.svelte-h7bcrl{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.insight-card.svelte-h7bcrl{padding:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg)}.insight-top.svelte-h7bcrl{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.pattern-tag.svelte-h7bcrl{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.insight-headline.svelte-h7bcrl{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0 0 6px;line-height:1.3}.insight-detail.svelte-h7bcrl{font-size:13px;color:var(--color-text-secondary);line-height:1.5;margin:0 0 8px}.action-btn.svelte-h7bcrl{display:flex;align-items:flex-start;padding:6px 8px;margin-bottom:8px;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-accent);background:transparent;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;text-align:left;line-height:1.3;transition:border-color .15s}.action-btn.svelte-h7bcrl:hover{border-color:var(--color-accent)}.insight-entities.svelte-h7bcrl{display:flex;flex-wrap:wrap;gap:4px}.entity-chip.svelte-h7bcrl{padding:2px 8px;font-size:12px;font-family:inherit;color:var(--color-text-secondary);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:4px;cursor:pointer}.entity-chip.svelte-h7bcrl:hover{border-color:var(--color-accent);color:var(--color-text-primary)}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.autocomplete.svelte-84vb17{position:relative;width:100%}.input-row.svelte-84vb17{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:26px;padding:0;background:transparent;border:none;border-radius:4px}.chip.svelte-84vb17{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:4px;font-size:13px;background:var(--color-bg-surface);color:var(--color-link, #e07070);flex-shrink:0}.chip-remove.svelte-84vb17{all:unset;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--color-text-tertiary);font-size:13px;line-height:1;cursor:pointer;border-radius:2px}.chip-remove.svelte-84vb17:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.ac-input.svelte-84vb17{flex:1;min-width:80px;height:22px;padding:0;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none}.dropdown.svelte-84vb17{position:absolute;top:100%;left:0;right:0;margin-top:4px;max-height:240px;overflow-y:auto;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 16px #00000040;z-index:50}.dropdown-item.svelte-84vb17{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;cursor:pointer;gap:8px}.dropdown-item.highlighted.svelte-84vb17{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-meta.svelte-84vb17{display:flex;align-items:center;gap:6px;flex-shrink:0}.entity-type-badge.svelte-84vb17{font-size:12px;padding:1px 6px;border-radius:9999px;background:var(--color-badge-bg);color:var(--color-badge-text)}.entity-repo.svelte-84vb17{font-size:12px;color:var(--color-text-tertiary)}.property-row.svelte-eh8ho9{display:grid;grid-template-columns:20px 130px 1fr;align-items:baseline;gap:10px;padding:5px 8px;margin:0 -8px;border-radius:4px;min-height:30px}.prop-icon.svelte-eh8ho9{display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1;color:var(--color-text-tertiary)}.prop-icon.svelte-eh8ho9:before{content:""}.icon-trigger{all:unset;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-tertiary);border-radius:3px}.icon-trigger:hover{color:var(--color-text-primary)}.prop-key.svelte-eh8ho9{font-size:14px;color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prop-value.svelte-eh8ho9{font-size:14px;color:var(--color-text-primary);min-width:0;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.dot.svelte-eh8ho9{width:8px;height:8px;border-radius:50%;flex-shrink:0}.edit-input.svelte-eh8ho9{width:100%;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding:0}.text-value.svelte-eh8ho9{word-break:break-word;cursor:text;line-height:1.6}.edit-textarea.svelte-eh8ho9{width:100%;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding:0;resize:vertical;line-height:1.6;field-sizing:content}.date-value.svelte-eh8ho9{white-space:nowrap}.edit-input.svelte-eh8ho9::placeholder{color:var(--color-text-tertiary)}.url-display.svelte-eh8ho9{display:flex;align-items:center;gap:4px;min-width:0;white-space:nowrap}.url-link.svelte-eh8ho9{color:var(--color-link, #e07070);text-decoration:none;overflow:hidden;white-space:nowrap;min-width:0;flex:1;-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent);mask-image:linear-gradient(to right,black calc(100% - 16px),transparent)}.url-link.svelte-eh8ho9:hover{text-decoration:underline}.url-edit-btn.svelte-eh8ho9{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:3px;color:var(--color-text-tertiary);cursor:pointer;opacity:0;transition:opacity .1s}.url-display.svelte-eh8ho9:hover .url-edit-btn:where(.svelte-eh8ho9){opacity:1}.url-edit-btn.svelte-eh8ho9:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.empty-hint.svelte-eh8ho9{color:var(--color-text-tertiary)}.date-input.svelte-eh8ho9{color-scheme:dark;width:auto!important;height:auto;padding:0!important;margin:0;line-height:inherit}.date-empty.svelte-eh8ho9{color:var(--color-text-tertiary)!important}.date-input.svelte-eh8ho9::-webkit-calendar-picker-indicator{filter:brightness(.35);cursor:pointer;transition:filter .1s}.date-input.svelte-eh8ho9::-webkit-calendar-picker-indicator:hover{filter:brightness(.6)}.badge-value.svelte-eh8ho9{display:inline-flex;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500;background:var(--color-badge-bg, rgba(224, 80, 80, .1));color:var(--color-badge-text, #e07070)}.wikilink-display.svelte-eh8ho9{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;min-height:26px}.wikilink-input.svelte-eh8ho9{flex:1;min-width:60px;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding:0;cursor:text}.wikilink-input.svelte-eh8ho9::placeholder{color:var(--color-text-tertiary)}.wikilink-chip.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 8px;font-size:13px;font-family:inherit;border-radius:4px;background:var(--color-bg-surface);color:var(--color-link, #e07070);border:none;cursor:pointer;transition:background .1s}.wikilink-chip.svelte-eh8ho9:hover{background:var(--color-bg-hover)}.dotted-item{display:flex;align-items:center;gap:8px;min-height:36px;padding:4px 10px;border-radius:4px;font-size:14px;color:var(--color-text-secondary);cursor:pointer;outline:none}.dotted-item[data-highlighted]{background:var(--color-bg-hover);color:var(--color-text-primary)}.dotted-item[data-selected]{color:var(--color-text-primary)}.item-check{margin-left:auto;color:var(--color-accent)}.status-trigger{border:none!important;box-shadow:none!important;padding:0!important;height:auto!important;background:transparent!important;gap:6px!important}.type-menu-content{z-index:1100;min-width:140px;padding:6px;border:1px solid var(--color-border-strong, var(--color-border));border-radius:8px;background:var(--color-bg-elevated);box-shadow:0 8px 24px #0000004d}.type-menu-item{display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;border-radius:4px;font-size:14px;color:var(--color-text-secondary);cursor:pointer;outline:none}.type-menu-item[data-highlighted]{background:var(--color-bg-hover);color:var(--color-text-primary)}.menu-label.svelte-eh8ho9{flex:1}.type-menu-danger{color:var(--color-error, #e55)!important}[data-dropdown-menu-separator]{height:1px;margin:4px 0;background:var(--color-border)}.entity-properties.svelte-1a2lez6{padding:16px 0 8px;border-bottom:1px solid var(--color-border)}.name-headline.svelte-1a2lez6{margin:8px 0 16px;cursor:text}.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}.fields-toggle.svelte-1a2lez6{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}.fields-toggle.svelte-1a2lez6:hover{color:var(--color-text-primary)}.fields-chevron.svelte-1a2lez6{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s}.fields-chevron.expanded.svelte-1a2lez6{transform:rotate(90deg)}.fields-label.svelte-1a2lez6{font-weight:400}.fields-count.svelte-1a2lez6{font-size:12px;color:var(--color-text-tertiary)}.fields-list.svelte-1a2lez6{margin-top:4px}.add-field-row.svelte-1a2lez6{padding:5px 8px;margin:0 -8px}.add-field-input.svelte-1a2lez6{font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding:0;width:100%}.entity-properties.svelte-1a2lez6 .add-field-btn{margin:8px -8px;font-size:14px}.connections-panel.svelte-16xienp{margin:80px 0 48px;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;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:center;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}.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}.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}.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}.diff-view.svelte-1g4tvol{flex:1;overflow-y:auto;min-height:0}.diff-properties.svelte-1g4tvol{padding:16px 40px 8px;border-bottom:1px solid var(--color-border)}.dp-row.svelte-1g4tvol{display:grid;grid-template-columns:20px 120px 1fr;align-items:start;gap:8px;padding:5px 8px;margin:0 -8px;border-radius:4px;min-height:30px}.dp-icon.svelte-1g4tvol{display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);height:22px}.dp-key.svelte-1g4tvol{font-size:14px;color:var(--color-text-tertiary);line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-value.svelte-1g4tvol{display:flex;flex-direction:column;gap:2px;min-height:22px;line-height:22px;font-size:14px;color:var(--color-text-primary)}.dp-diff-old.svelte-1g4tvol{display:inline-flex;align-items:center;padding:0 8px;border-radius:4px;background:#dc505026;color:var(--color-destructive, #e54d4d);min-height:22px;line-height:22px;width:fit-content}.dp-diff-new.svelte-1g4tvol{display:inline-flex;align-items:center;padding:0 8px;border-radius:4px;background:#50c86426;color:var(--color-success, #3ecf8e);min-height:22px;line-height:22px;width:fit-content}.diff-body.svelte-1g4tvol{padding:32px 40px;font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word}.diff-body.svelte-1g4tvol .db-removed{background:#dc505026;color:var(--color-destructive, #e54d4d);border-radius:2px}.diff-body.svelte-1g4tvol .db-added{background:#50c86426;color:var(--color-success, #3ecf8e);border-radius:2px}.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}.editor-bar.svelte-udj3er{height:var(--row-height);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 40px;border-bottom:1px solid var(--color-border)}.breadcrumb-path.svelte-udj3er{font-size:14px;color:var(--color-text-secondary);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.bc-sep.svelte-udj3er{color:var(--color-text-tertiary);margin:0 6px}.bc-segment.svelte-udj3er{color:var(--color-text-secondary)}.bc-current.svelte-udj3er{color:var(--color-text-primary)}.editor-actions.svelte-udj3er{display:flex;align-items:center;gap:8px;flex-shrink:0;white-space:nowrap}.status-text.svelte-udj3er{font-size:13px}.status-text.saving.svelte-udj3er{color:var(--color-text-tertiary)}.status-text.error.svelte-udj3er{color:var(--color-destructive)}.editor-actions.svelte-udj3er .open-app{text-transform:capitalize}.refresh-panel.svelte-udj3er{border-bottom:1px solid var(--color-border);padding:12px 40px;background:var(--color-bg-secondary, var(--color-bg-hover));font-size:14px;flex-shrink:0}.refresh-uptodate.svelte-udj3er{color:var(--color-text-secondary)}.editor-bar-diff.svelte-udj3er{background:var(--color-bg)}.diff-action-title.svelte-udj3er{font-size:14px;color:var(--color-text-primary);font-weight:600}.diff-action-buttons.svelte-udj3er{display:flex;align-items:center;gap:6px}@media(max-width:960px){.breadcrumb-path.svelte-udj3er{display:none}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.editor-frame.svelte-1fltv0h{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative}.header-mount.svelte-1fltv0h{flex-shrink:0}.editor-container.svelte-1fltv0h{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.editor-container.hidden.svelte-1fltv0h{visibility:hidden;position:absolute}.editor-container.svelte-1fltv0h *{box-sizing:border-box}.loading-indicator.svelte-1fltv0h{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:15px}.error-indicator.svelte-1fltv0h{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-destructive);font-size:15px}.no-editor.svelte-1406f3k{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:15px}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.graph-view.svelte-1i33fky{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.canvas-wrap.svelte-1i33fky{flex:1;min-height:0;position:relative;overflow:hidden;touch-action:none}.legend-panel.svelte-1i33fky{position:absolute;bottom:16px;right:16px;display:flex;flex-direction:column;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow:hidden;z-index:2}.legend-item.svelte-1i33fky{display:flex;align-items:center;gap:8px;white-space:nowrap;padding:5px 12px;cursor:pointer}.legend-item.svelte-1i33fky:hover{background:var(--color-bg-hover)}.legend-dot.svelte-1i33fky{width:8px;height:8px;border-radius:4px;flex-shrink:0}.legend-label.svelte-1i33fky{font-size:13px;color:var(--color-text-secondary);flex:1}.legend-count.svelte-1i33fky{font-size:12px;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.timeline-bar.svelte-lzvab{display:flex;align-items:stretch;height:85px;padding:0 24px 0 12px;border-top:1px solid var(--color-border);background:var(--color-bg);gap:8px;flex-shrink:0}.timeline-bar.svelte-lzvab .play-btn{width:28px;height:28px;flex-shrink:0;padding:0;align-self:flex-start;margin-top:20px;color:var(--color-text-tertiary)}.timeline-bar.svelte-lzvab .play-btn:hover{color:var(--color-text-primary)}.timeline-track.svelte-lzvab{flex:1;height:100%;position:relative;cursor:crosshair;-webkit-user-select:none;user-select:none;touch-action:none}.track-line.svelte-lzvab{position:absolute;left:0;right:0;bottom:calc(30px + (100% - 46px)/2);height:1px;background:var(--color-text-tertiary);opacity:.3}.density-bars.svelte-lzvab{position:absolute;inset:16px 0 30px}.density-bar.svelte-lzvab{position:absolute;top:0;bottom:0;width:1px;background:var(--color-text-secondary);transform:translate(-50%)}.playhead.svelte-lzvab{position:absolute;top:16px;bottom:30px;width:1px;background:var(--color-accent, #e05050);transform:translate(-50%);pointer-events:none;z-index:2}.date-labels.svelte-lzvab{position:absolute;bottom:8px;left:0;right:0;height:18px}.date-label.svelte-lzvab{position:absolute;transform:translate(-50%);font-size:11px;color:var(--color-text-tertiary);white-space:nowrap}.timeline-tooltip.svelte-lzvab{position:absolute;bottom:100%;transform:translate(-50%);margin-bottom:8px;background:var(--color-bg-elevated, var(--color-bg));border:1px solid var(--color-border);border-radius:6px;padding:8px 12px;font-size:13px;white-space:nowrap;pointer-events:none;z-index:10;box-shadow:0 4px 12px #0000004d}.tooltip-date.svelte-lzvab{color:var(--color-text-tertiary);font-size:12px;margin-bottom:4px}.tooltip-count.svelte-lzvab{color:var(--color-text-primary);font-weight:600}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.json-editor-wrap.svelte-1grruw9{width:100%;max-height:50vh;overflow-y:auto;border-radius:6px}.json-editor-wrap.svelte-1grruw9 .cm-editor{outline:none}.json-editor-wrap.svelte-1grruw9 .cm-scroller{overflow:visible!important}.settings-page.svelte-zymv0t{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.settings-header.svelte-zymv0t{height:var(--row-height);flex-shrink:0;border-bottom:1px solid var(--color-border)}.content-toolbar.svelte-zymv0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.content-count.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary)}.settings-content.svelte-zymv0t{flex:1;overflow-y:auto;padding:20px 40px 32px}.tab-header.svelte-zymv0t{margin-bottom:20px}.tab-title.svelte-zymv0t{font-size:17px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.tab-description.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);margin:0}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-item:last-child{border-bottom:none}.accordion-trigger{display:flex;align-items:center;gap:0;width:100%;padding:10px 4px;border:none;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.accordion-trigger:hover{background:var(--color-bg-hover);border-radius:6px}.accordion-chevron.svelte-zymv0t{display:flex;align-items:center;justify-content:center;width:16px;height:22px;margin-right:14px;color:var(--color-text-tertiary);flex-shrink:0;transition:transform .15s ease}[data-state=open]>.accordion-trigger .accordion-chevron,.accordion-trigger[data-state=open] .accordion-chevron{transform:rotate(90deg)}.accordion-label.svelte-zymv0t{font-size:14px;font-weight:500;color:var(--color-text-primary);flex:1}.accordion-count{margin-left:auto}.accordion-content{overflow:hidden;padding:0 0 8px 34px}.accordion-content[data-state=closed]{display:none}.section-header.svelte-zymv0t{display:flex;align-items:center;height:32px;gap:0;margin-top:8px}.section-label.svelte-zymv0t{font-size:12px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;flex:1}.member-row.svelte-zymv0t{display:grid;grid-template-columns:22px 1fr 2fr 80px;align-items:center;height:44px;gap:0 14px;font-size:14px}.member-name-cell.svelte-zymv0t{display:flex;align-items:baseline;gap:0;min-width:0}.member-name.svelte-zymv0t{font-size:15px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill-key{color:var(--color-text-tertiary)}.pill-val{color:var(--color-text-secondary)}.member-pills.svelte-zymv0t{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.member-email.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-list.svelte-zymv0t>.member-row:where(.svelte-zymv0t),.accordion-content .member-row.svelte-zymv0t{border-bottom:1px solid var(--color-border)}.member-list.svelte-zymv0t>.member-row:where(.svelte-zymv0t):last-child,.accordion-content .member-row.svelte-zymv0t:last-child{border-bottom:none}.member-actions.svelte-zymv0t{display:flex;justify-content:flex-end;gap:4px}.icon-danger:hover{color:var(--color-error, #e55)!important}.confirm-row.svelte-zymv0t{display:flex;grid-column:1 / -1;background:#e5555514;border-radius:6px;padding:0 10px 0 12px}.confirm-text.svelte-zymv0t{flex:1;font-size:14px;color:var(--color-text-primary)}.dialog-fields.svelte-zymv0t{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.dialog-field.svelte-zymv0t{display:flex;flex-direction:column;gap:4px}.checkbox-list.svelte-zymv0t{display:flex;flex-direction:column;gap:2px}.checkbox-item.svelte-zymv0t{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:14px;color:var(--color-text-primary);cursor:pointer}.checkbox-item.svelte-zymv0t:hover{background:var(--color-bg-hover)}.modal-member-list.svelte-zymv0t{display:flex;flex-direction:column;gap:2px;margin:8px 0;max-height:300px;overflow-y:auto}.modal-member-row.svelte-zymv0t{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;cursor:pointer}.modal-member-row.svelte-zymv0t:hover{background:var(--color-bg-hover)}.modal-member-info.svelte-zymv0t{display:flex;flex-direction:column;min-width:0}.connector-list.svelte-zymv0t{display:flex;flex-direction:column}.connector-row.svelte-zymv0t{display:flex;align-items:center;gap:14px;height:44px;border-bottom:1px solid var(--color-border);font-size:14px}.connector-row.svelte-zymv0t:last-child{border-bottom:none}.connector-section-label.svelte-zymv0t{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-top:20px;margin-bottom:4px}.connector-description{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px}.connector-row-actions.svelte-zymv0t{display:flex;align-items:center;gap:2px;margin-left:auto}.connector-action{margin-left:auto!important;font-size:13px!important;gap:4px!important}.connector-action.connected{color:var(--color-success, #4ade80)!important}.setup-instructions.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.setup-instructions.svelte-zymv0t p:where(.svelte-zymv0t){margin:0;font-size:14px;line-height:22px;color:var(--color-text-secondary)}.setup-instructions.svelte-zymv0t a:where(.svelte-zymv0t){color:var(--color-accent)}.setup-steps.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.setup-step.svelte-zymv0t{display:flex;gap:12px}.step-number.svelte-zymv0t{width:24px;height:24px;border-radius:50%;background:var(--color-bg-surface);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.env-var.svelte-zymv0t{display:block;margin-top:8px;padding:8px 12px;background:var(--color-bg-surface);border-radius:6px;font-family:var(--font-mono);font-size:13px;color:var(--color-accent)}.connector-row-actions.svelte-zymv0t .connector-action{margin-left:0!important}.connector-hint{font-size:13px;color:var(--color-text-tertiary);margin:0}.connector-form{display:flex;flex-direction:column;gap:16px;margin-top:16px}.connector-field{display:flex;flex-direction:column;gap:6px}.connector-field-hint{font-size:13px;color:var(--color-text-tertiary);margin-top:2px}.connector-docs-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--color-text-tertiary);text-decoration:none}.connector-docs-link:hover{color:var(--color-text-secondary)}.status-msg.svelte-zymv0t{font-size:14px;color:var(--color-error, #e55);padding:0;background:none}.loading-text.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);padding:20px 0;text-align:center}.spinning{animation:svelte-zymv0t-spin 1s linear infinite}@keyframes svelte-zymv0t-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.about-section.svelte-zymv0t{display:flex;flex-direction:column;gap:16px}.ws-field.svelte-zymv0t{display:flex;flex-direction:column;gap:6px}.field-help.svelte-zymv0t{font-size:13px;color:var(--color-text-tertiary);line-height:1.4}.about-actions.svelte-zymv0t{display:flex;justify-content:flex-end;gap:8px}.accent-palette.svelte-zymv0t{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.accent-palette.saving.svelte-zymv0t{opacity:.5;pointer-events:none}.accent-swatch.svelte-zymv0t{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .15s}.accent-swatch.svelte-zymv0t:hover{transform:scale(1.15)}.accent-swatch.active.svelte-zymv0t{border-color:var(--color-text-primary)}.prefs-sections.svelte-zymv0t{display:flex;flex-direction:column;gap:32px}.prefs-block.svelte-zymv0t{display:flex;flex-direction:column;gap:8px}.section-heading.svelte-zymv0t{font-size:14px;font-weight:600;color:var(--color-text-primary)}.mcp-header.svelte-zymv0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.mcp-actions.svelte-zymv0t{display:flex;gap:4px}.mcp-hint.svelte-zymv0t{font-size:14px;color:var(--color-text-tertiary);margin:0 0 8px}.mcp-config-textarea{font-family:var(--font-mono, ui-monospace, monospace)!important;font-size:13px!important}
|