kirograph 0.12.1
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 +1171 -0
- package/dist/architecture/index.d.ts +11 -0
- package/dist/architecture/index.d.ts.map +1 -0
- package/dist/architecture/index.js +207 -0
- package/dist/architecture/index.js.map +7 -0
- package/dist/architecture/layers/csharp.d.ts +6 -0
- package/dist/architecture/layers/csharp.d.ts.map +1 -0
- package/dist/architecture/layers/csharp.js +100 -0
- package/dist/architecture/layers/csharp.js.map +7 -0
- package/dist/architecture/layers/elixir.js +116 -0
- package/dist/architecture/layers/elixir.js.map +7 -0
- package/dist/architecture/layers/go.d.ts +7 -0
- package/dist/architecture/layers/go.d.ts.map +1 -0
- package/dist/architecture/layers/go.js +117 -0
- package/dist/architecture/layers/go.js.map +7 -0
- package/dist/architecture/layers/index.d.ts +30 -0
- package/dist/architecture/layers/index.d.ts.map +1 -0
- package/dist/architecture/layers/index.js +100 -0
- package/dist/architecture/layers/index.js.map +7 -0
- package/dist/architecture/layers/java.d.ts +7 -0
- package/dist/architecture/layers/java.d.ts.map +1 -0
- package/dist/architecture/layers/java.js +119 -0
- package/dist/architecture/layers/java.js.map +7 -0
- package/dist/architecture/layers/python.d.ts +7 -0
- package/dist/architecture/layers/python.d.ts.map +1 -0
- package/dist/architecture/layers/python.js +111 -0
- package/dist/architecture/layers/python.js.map +7 -0
- package/dist/architecture/layers/ruby.d.ts +6 -0
- package/dist/architecture/layers/ruby.d.ts.map +1 -0
- package/dist/architecture/layers/ruby.js +95 -0
- package/dist/architecture/layers/ruby.js.map +7 -0
- package/dist/architecture/layers/rust.d.ts +6 -0
- package/dist/architecture/layers/rust.d.ts.map +1 -0
- package/dist/architecture/layers/rust.js +98 -0
- package/dist/architecture/layers/rust.js.map +7 -0
- package/dist/architecture/layers/types.d.ts +2 -0
- package/dist/architecture/layers/types.d.ts.map +1 -0
- package/dist/architecture/layers/types.js +17 -0
- package/dist/architecture/layers/types.js.map +7 -0
- package/dist/architecture/layers/typescript.d.ts +9 -0
- package/dist/architecture/layers/typescript.d.ts.map +1 -0
- package/dist/architecture/layers/typescript.js +143 -0
- package/dist/architecture/layers/typescript.js.map +7 -0
- package/dist/architecture/manifest/cargo.d.ts +3 -0
- package/dist/architecture/manifest/cargo.d.ts.map +1 -0
- package/dist/architecture/manifest/cargo.js +94 -0
- package/dist/architecture/manifest/cargo.js.map +7 -0
- package/dist/architecture/manifest/csproj.d.ts +3 -0
- package/dist/architecture/manifest/csproj.d.ts.map +1 -0
- package/dist/architecture/manifest/csproj.js +75 -0
- package/dist/architecture/manifest/csproj.js.map +7 -0
- package/dist/architecture/manifest/go.d.ts +3 -0
- package/dist/architecture/manifest/go.d.ts.map +1 -0
- package/dist/architecture/manifest/go.js +85 -0
- package/dist/architecture/manifest/go.js.map +7 -0
- package/dist/architecture/manifest/gradle.d.ts +3 -0
- package/dist/architecture/manifest/gradle.d.ts.map +1 -0
- package/dist/architecture/manifest/gradle.js +80 -0
- package/dist/architecture/manifest/gradle.js.map +7 -0
- package/dist/architecture/manifest/index.d.ts +12 -0
- package/dist/architecture/manifest/index.d.ts.map +1 -0
- package/dist/architecture/manifest/index.js +130 -0
- package/dist/architecture/manifest/index.js.map +7 -0
- package/dist/architecture/manifest/maven.d.ts +3 -0
- package/dist/architecture/manifest/maven.d.ts.map +1 -0
- package/dist/architecture/manifest/maven.js +76 -0
- package/dist/architecture/manifest/maven.js.map +7 -0
- package/dist/architecture/manifest/npm.d.ts +3 -0
- package/dist/architecture/manifest/npm.d.ts.map +1 -0
- package/dist/architecture/manifest/npm.js +103 -0
- package/dist/architecture/manifest/npm.js.map +7 -0
- package/dist/architecture/manifest/python.d.ts +3 -0
- package/dist/architecture/manifest/python.d.ts.map +1 -0
- package/dist/architecture/manifest/python.js +105 -0
- package/dist/architecture/manifest/python.js.map +7 -0
- package/dist/architecture/manifest/types.d.ts +2 -0
- package/dist/architecture/manifest/types.d.ts.map +1 -0
- package/dist/architecture/manifest/types.js +17 -0
- package/dist/architecture/manifest/types.js.map +7 -0
- package/dist/architecture/types.d.ts +91 -0
- package/dist/architecture/types.d.ts.map +1 -0
- package/dist/architecture/types.js +17 -0
- package/dist/architecture/types.js.map +7 -0
- package/dist/assets/logo.png +0 -0
- package/dist/banner.d.ts +6 -0
- package/dist/banner.d.ts.map +1 -0
- package/dist/banner.js +67 -0
- package/dist/banner.js.map +1 -0
- package/dist/bin/banner.d.ts +6 -0
- package/dist/bin/banner.d.ts.map +1 -0
- package/dist/bin/banner.js +88 -0
- package/dist/bin/banner.js.map +7 -0
- package/dist/bin/commands/affected.d.ts +3 -0
- package/dist/bin/commands/affected.d.ts.map +1 -0
- package/dist/bin/commands/affected.js +78 -0
- package/dist/bin/commands/affected.js.map +7 -0
- package/dist/bin/commands/architecture.d.ts +3 -0
- package/dist/bin/commands/architecture.d.ts.map +1 -0
- package/dist/bin/commands/architecture.js +125 -0
- package/dist/bin/commands/architecture.js.map +7 -0
- package/dist/bin/commands/caveman.js +136 -0
- package/dist/bin/commands/caveman.js.map +7 -0
- package/dist/bin/commands/context.d.ts +3 -0
- package/dist/bin/commands/context.d.ts.map +1 -0
- package/dist/bin/commands/context.js +81 -0
- package/dist/bin/commands/context.js.map +7 -0
- package/dist/bin/commands/coupling.d.ts +3 -0
- package/dist/bin/commands/coupling.d.ts.map +1 -0
- package/dist/bin/commands/coupling.js +164 -0
- package/dist/bin/commands/coupling.js.map +7 -0
- package/dist/bin/commands/dashboard.d.ts +3 -0
- package/dist/bin/commands/dashboard.d.ts.map +1 -0
- package/dist/bin/commands/dashboard.js +209 -0
- package/dist/bin/commands/dashboard.js.map +7 -0
- package/dist/bin/commands/dead-code.js +77 -0
- package/dist/bin/commands/dead-code.js.map +7 -0
- package/dist/bin/commands/export.js +2620 -0
- package/dist/bin/commands/export.js.map +7 -0
- package/dist/bin/commands/files.d.ts +3 -0
- package/dist/bin/commands/files.d.ts.map +1 -0
- package/dist/bin/commands/files.js +104 -0
- package/dist/bin/commands/files.js.map +7 -0
- package/dist/bin/commands/help.d.ts +4 -0
- package/dist/bin/commands/help.d.ts.map +1 -0
- package/dist/bin/commands/help.js +212 -0
- package/dist/bin/commands/help.js.map +7 -0
- package/dist/bin/commands/hotspots.js +77 -0
- package/dist/bin/commands/hotspots.js.map +7 -0
- package/dist/bin/commands/index.d.ts +3 -0
- package/dist/bin/commands/index.d.ts.map +1 -0
- package/dist/bin/commands/index.js +58 -0
- package/dist/bin/commands/index.js.map +7 -0
- package/dist/bin/commands/init.d.ts +3 -0
- package/dist/bin/commands/init.d.ts.map +1 -0
- package/dist/bin/commands/init.js +68 -0
- package/dist/bin/commands/init.js.map +7 -0
- package/dist/bin/commands/install.d.ts +3 -0
- package/dist/bin/commands/install.d.ts.map +1 -0
- package/dist/bin/commands/install.js +34 -0
- package/dist/bin/commands/install.js.map +7 -0
- package/dist/bin/commands/mark-dirty.d.ts +3 -0
- package/dist/bin/commands/mark-dirty.d.ts.map +1 -0
- package/dist/bin/commands/mark-dirty.js +51 -0
- package/dist/bin/commands/mark-dirty.js.map +7 -0
- package/dist/bin/commands/package.d.ts +3 -0
- package/dist/bin/commands/package.d.ts.map +1 -0
- package/dist/bin/commands/package.js +139 -0
- package/dist/bin/commands/package.js.map +7 -0
- package/dist/bin/commands/path.js +93 -0
- package/dist/bin/commands/path.js.map +7 -0
- package/dist/bin/commands/qdrant.d.ts +3 -0
- package/dist/bin/commands/qdrant.d.ts.map +1 -0
- package/dist/bin/commands/qdrant.js +159 -0
- package/dist/bin/commands/qdrant.js.map +1 -0
- package/dist/bin/commands/query.d.ts +3 -0
- package/dist/bin/commands/query.d.ts.map +1 -0
- package/dist/bin/commands/query.js +47 -0
- package/dist/bin/commands/query.js.map +7 -0
- package/dist/bin/commands/serve.d.ts +3 -0
- package/dist/bin/commands/serve.d.ts.map +1 -0
- package/dist/bin/commands/serve.js +59 -0
- package/dist/bin/commands/serve.js.map +7 -0
- package/dist/bin/commands/snapshot.js +122 -0
- package/dist/bin/commands/snapshot.js.map +7 -0
- package/dist/bin/commands/status.d.ts +3 -0
- package/dist/bin/commands/status.d.ts.map +1 -0
- package/dist/bin/commands/status.js +107 -0
- package/dist/bin/commands/status.js.map +7 -0
- package/dist/bin/commands/stop.d.ts +3 -0
- package/dist/bin/commands/stop.d.ts.map +1 -0
- package/dist/bin/commands/stop.js +81 -0
- package/dist/bin/commands/stop.js.map +1 -0
- package/dist/bin/commands/surprising.js +79 -0
- package/dist/bin/commands/surprising.js.map +7 -0
- package/dist/bin/commands/sync-if-dirty.d.ts +3 -0
- package/dist/bin/commands/sync-if-dirty.d.ts.map +1 -0
- package/dist/bin/commands/sync-if-dirty.js +67 -0
- package/dist/bin/commands/sync-if-dirty.js.map +7 -0
- package/dist/bin/commands/sync.d.ts +3 -0
- package/dist/bin/commands/sync.d.ts.map +1 -0
- package/dist/bin/commands/sync.js +81 -0
- package/dist/bin/commands/sync.js.map +7 -0
- package/dist/bin/commands/typesense.d.ts +3 -0
- package/dist/bin/commands/typesense.d.ts.map +1 -0
- package/dist/bin/commands/typesense.js +126 -0
- package/dist/bin/commands/typesense.js.map +1 -0
- package/dist/bin/commands/uninit.d.ts +4 -0
- package/dist/bin/commands/uninit.d.ts.map +1 -0
- package/dist/bin/commands/uninit.js +123 -0
- package/dist/bin/commands/uninit.js.map +7 -0
- package/dist/bin/commands/unlock.d.ts +3 -0
- package/dist/bin/commands/unlock.d.ts.map +1 -0
- package/dist/bin/commands/unlock.js +53 -0
- package/dist/bin/commands/unlock.js.map +7 -0
- package/dist/bin/commands/utils.d.ts +12 -0
- package/dist/bin/commands/utils.d.ts.map +1 -0
- package/dist/bin/commands/utils.js +56 -0
- package/dist/bin/commands/utils.js.map +7 -0
- package/dist/bin/installer/archive.js +230 -0
- package/dist/bin/installer/archive.js.map +7 -0
- package/dist/bin/installer/caveman.js +57 -0
- package/dist/bin/installer/caveman.js.map +7 -0
- package/dist/bin/installer/cli-agent.d.ts +15 -0
- package/dist/bin/installer/cli-agent.d.ts.map +1 -0
- package/dist/bin/installer/cli-agent.js +89 -0
- package/dist/bin/installer/cli-agent.js.map +7 -0
- package/dist/bin/installer/config-prompt.d.ts +13 -0
- package/dist/bin/installer/config-prompt.d.ts.map +1 -0
- package/dist/bin/installer/config-prompt.js +158 -0
- package/dist/bin/installer/config-prompt.js.map +7 -0
- package/dist/bin/installer/dashboard.d.ts +3 -0
- package/dist/bin/installer/dashboard.d.ts.map +1 -0
- package/dist/bin/installer/dashboard.js +149 -0
- package/dist/bin/installer/dashboard.js.map +7 -0
- package/dist/bin/installer/hooks.d.ts +5 -0
- package/dist/bin/installer/hooks.d.ts.map +1 -0
- package/dist/bin/installer/hooks.js +155 -0
- package/dist/bin/installer/hooks.js.map +7 -0
- package/dist/bin/installer/index.d.ts +11 -0
- package/dist/bin/installer/index.d.ts.map +1 -0
- package/dist/bin/installer/index.js +228 -0
- package/dist/bin/installer/index.js.map +7 -0
- package/dist/bin/installer/mcp.d.ts +5 -0
- package/dist/bin/installer/mcp.d.ts.map +1 -0
- package/dist/bin/installer/mcp.js +80 -0
- package/dist/bin/installer/mcp.js.map +7 -0
- package/dist/bin/installer/prompts.d.ts +28 -0
- package/dist/bin/installer/prompts.d.ts.map +1 -0
- package/dist/bin/installer/prompts.js +134 -0
- package/dist/bin/installer/prompts.js.map +7 -0
- package/dist/bin/installer/qdrant-dashboard.d.ts +4 -0
- package/dist/bin/installer/qdrant-dashboard.d.ts.map +1 -0
- package/dist/bin/installer/qdrant-dashboard.js +115 -0
- package/dist/bin/installer/qdrant-dashboard.js.map +7 -0
- package/dist/bin/installer/steering.d.ts +5 -0
- package/dist/bin/installer/steering.d.ts.map +1 -0
- package/dist/bin/installer/steering.js +283 -0
- package/dist/bin/installer/steering.js.map +7 -0
- package/dist/bin/kirograph.d.ts +6 -0
- package/dist/bin/kirograph.d.ts.map +1 -0
- package/dist/bin/kirograph.js +95 -0
- package/dist/bin/kirograph.js.map +7 -0
- package/dist/bin/progress.d.ts +14 -0
- package/dist/bin/progress.d.ts.map +1 -0
- package/dist/bin/progress.js +201 -0
- package/dist/bin/progress.js.map +7 -0
- package/dist/bin/ui.d.ts +11 -0
- package/dist/bin/ui.d.ts.map +1 -0
- package/dist/bin/ui.js +71 -0
- package/dist/bin/ui.js.map +7 -0
- package/dist/config.d.ts +48 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +273 -0
- package/dist/config.js.map +7 -0
- package/dist/context/index.d.ts +61 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +224 -0
- package/dist/context/index.js.map +7 -0
- package/dist/core/file-tree.d.ts +15 -0
- package/dist/core/file-tree.d.ts.map +1 -0
- package/dist/core/file-tree.js +69 -0
- package/dist/core/file-tree.js.map +7 -0
- package/dist/core/lock-manager.d.ts +20 -0
- package/dist/core/lock-manager.d.ts.map +1 -0
- package/dist/core/lock-manager.js +120 -0
- package/dist/core/lock-manager.js.map +7 -0
- package/dist/core/pipeline.d.ts +37 -0
- package/dist/core/pipeline.d.ts.map +1 -0
- package/dist/core/pipeline.js +375 -0
- package/dist/core/pipeline.js.map +7 -0
- package/dist/core/snapshot.js +141 -0
- package/dist/core/snapshot.js.map +7 -0
- package/dist/db/database.d.ts +133 -0
- package/dist/db/database.d.ts.map +1 -0
- package/dist/db/database.js +929 -0
- package/dist/db/database.js.map +7 -0
- package/dist/db/schema.sql +174 -0
- package/dist/errors.d.ts +49 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +160 -0
- package/dist/errors.js.map +7 -0
- package/dist/extraction/extractor.d.ts +29 -0
- package/dist/extraction/extractor.d.ts.map +1 -0
- package/dist/extraction/extractor.js +764 -0
- package/dist/extraction/extractor.js.map +7 -0
- package/dist/extraction/grammars.d.ts +48 -0
- package/dist/extraction/grammars.d.ts.map +1 -0
- package/dist/extraction/grammars.js +166 -0
- package/dist/extraction/grammars.js.map +7 -0
- package/dist/extraction/languages.d.ts +9 -0
- package/dist/extraction/languages.d.ts.map +1 -0
- package/dist/extraction/languages.js +103 -0
- package/dist/extraction/languages.js.map +7 -0
- package/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
- package/dist/frameworks/csharp.d.ts +8 -0
- package/dist/frameworks/csharp.d.ts.map +1 -0
- package/dist/frameworks/csharp.js +93 -0
- package/dist/frameworks/csharp.js.map +7 -0
- package/dist/frameworks/elixir.js +142 -0
- package/dist/frameworks/elixir.js.map +7 -0
- package/dist/frameworks/express.d.ts +8 -0
- package/dist/frameworks/express.d.ts.map +1 -0
- package/dist/frameworks/express.js +143 -0
- package/dist/frameworks/express.js.map +7 -0
- package/dist/frameworks/go.d.ts +8 -0
- package/dist/frameworks/go.d.ts.map +1 -0
- package/dist/frameworks/go.js +85 -0
- package/dist/frameworks/go.js.map +7 -0
- package/dist/frameworks/index.d.ts +30 -0
- package/dist/frameworks/index.d.ts.map +1 -0
- package/dist/frameworks/index.js +243 -0
- package/dist/frameworks/index.js.map +7 -0
- package/dist/frameworks/java.d.ts +8 -0
- package/dist/frameworks/java.d.ts.map +1 -0
- package/dist/frameworks/java.js +87 -0
- package/dist/frameworks/java.js.map +7 -0
- package/dist/frameworks/laravel.d.ts +9 -0
- package/dist/frameworks/laravel.d.ts.map +1 -0
- package/dist/frameworks/laravel.js +115 -0
- package/dist/frameworks/laravel.js.map +7 -0
- package/dist/frameworks/python.d.ts +10 -0
- package/dist/frameworks/python.d.ts.map +1 -0
- package/dist/frameworks/python.js +158 -0
- package/dist/frameworks/python.js.map +7 -0
- package/dist/frameworks/react.d.ts +9 -0
- package/dist/frameworks/react.d.ts.map +1 -0
- package/dist/frameworks/react.js +230 -0
- package/dist/frameworks/react.js.map +7 -0
- package/dist/frameworks/ruby.d.ts +8 -0
- package/dist/frameworks/ruby.d.ts.map +1 -0
- package/dist/frameworks/ruby.js +136 -0
- package/dist/frameworks/ruby.js.map +7 -0
- package/dist/frameworks/rust.d.ts +8 -0
- package/dist/frameworks/rust.d.ts.map +1 -0
- package/dist/frameworks/rust.js +82 -0
- package/dist/frameworks/rust.js.map +7 -0
- package/dist/frameworks/svelte.d.ts +8 -0
- package/dist/frameworks/svelte.d.ts.map +1 -0
- package/dist/frameworks/svelte.js +174 -0
- package/dist/frameworks/svelte.js.map +7 -0
- package/dist/frameworks/swift.d.ts +10 -0
- package/dist/frameworks/swift.d.ts.map +1 -0
- package/dist/frameworks/swift.js +151 -0
- package/dist/frameworks/swift.js.map +7 -0
- package/dist/frameworks/types.d.ts +37 -0
- package/dist/frameworks/types.d.ts.map +1 -0
- package/dist/frameworks/types.js +17 -0
- package/dist/frameworks/types.js.map +7 -0
- package/dist/graph/queries.d.ts +53 -0
- package/dist/graph/queries.d.ts.map +1 -0
- package/dist/graph/queries.js +224 -0
- package/dist/graph/queries.js.map +7 -0
- package/dist/graph/traversal.d.ts +35 -0
- package/dist/graph/traversal.d.ts.map +1 -0
- package/dist/graph/traversal.js +148 -0
- package/dist/graph/traversal.js.map +7 -0
- package/dist/index.d.ts +102 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +303 -0
- package/dist/index.js.map +7 -0
- package/dist/installer/index.d.ts +10 -0
- package/dist/installer/index.d.ts.map +1 -0
- package/dist/installer/index.js +526 -0
- package/dist/installer/index.js.map +1 -0
- package/dist/mcp/server.d.ts +16 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +116 -0
- package/dist/mcp/server.js.map +7 -0
- package/dist/mcp/tools.d.ts +37 -0
- package/dist/mcp/tools.d.ts.map +1 -0
- package/dist/mcp/tools.js +779 -0
- package/dist/mcp/tools.js.map +7 -0
- package/dist/mcp/transport.d.ts +29 -0
- package/dist/mcp/transport.d.ts.map +1 -0
- package/dist/mcp/transport.js +70 -0
- package/dist/mcp/transport.js.map +7 -0
- package/dist/resolution/index.d.ts +56 -0
- package/dist/resolution/index.d.ts.map +1 -0
- package/dist/resolution/index.js +384 -0
- package/dist/resolution/index.js.map +7 -0
- package/dist/resolution/name-matcher.d.ts +25 -0
- package/dist/resolution/name-matcher.d.ts.map +1 -0
- package/dist/resolution/name-matcher.js +60 -0
- package/dist/resolution/name-matcher.js.map +7 -0
- package/dist/scripts/postinstall.js +64 -0
- package/dist/search/query-utils.d.ts +21 -0
- package/dist/search/query-utils.d.ts.map +1 -0
- package/dist/search/query-utils.js +219 -0
- package/dist/search/query-utils.js.map +7 -0
- package/dist/search/searcher.d.ts +15 -0
- package/dist/search/searcher.d.ts.map +1 -0
- package/dist/search/searcher.js +49 -0
- package/dist/search/searcher.js.map +7 -0
- package/dist/sync/index.d.ts +33 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/index.js +200 -0
- package/dist/sync/index.js.map +7 -0
- package/dist/types.d.ts +131 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +37 -0
- package/dist/types.js.map +7 -0
- package/dist/utils.d.ts +52 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +254 -0
- package/dist/utils.js.map +7 -0
- package/dist/vectors/index.d.ts +71 -0
- package/dist/vectors/index.d.ts.map +1 -0
- package/dist/vectors/index.js +480 -0
- package/dist/vectors/index.js.map +7 -0
- package/dist/vectors/lancedb-index.d.ts +50 -0
- package/dist/vectors/lancedb-index.d.ts.map +1 -0
- package/dist/vectors/lancedb-index.js +153 -0
- package/dist/vectors/lancedb-index.js.map +7 -0
- package/dist/vectors/orama-index.d.ts +54 -0
- package/dist/vectors/orama-index.d.ts.map +1 -0
- package/dist/vectors/orama-index.js +213 -0
- package/dist/vectors/orama-index.js.map +7 -0
- package/dist/vectors/pglite-index.d.ts +53 -0
- package/dist/vectors/pglite-index.d.ts.map +1 -0
- package/dist/vectors/pglite-index.js +194 -0
- package/dist/vectors/pglite-index.js.map +7 -0
- package/dist/vectors/qdrant-index.d.ts +70 -0
- package/dist/vectors/qdrant-index.d.ts.map +1 -0
- package/dist/vectors/qdrant-index.js +364 -0
- package/dist/vectors/qdrant-index.js.map +7 -0
- package/dist/vectors/typesense-index.d.ts +75 -0
- package/dist/vectors/typesense-index.d.ts.map +1 -0
- package/dist/vectors/typesense-index.js +453 -0
- package/dist/vectors/typesense-index.js.map +7 -0
- package/dist/vectors/vec-index.d.ts +52 -0
- package/dist/vectors/vec-index.d.ts.map +1 -0
- package/dist/vectors/vec-index.js +198 -0
- package/dist/vectors/vec-index.js.map +7 -0
- package/package.json +67 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var mark_dirty_exports = {};
|
|
30
|
+
__export(mark_dirty_exports, {
|
|
31
|
+
register: () => register
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(mark_dirty_exports);
|
|
34
|
+
var path = __toESM(require("path"));
|
|
35
|
+
function register(program) {
|
|
36
|
+
program.command("mark-dirty [projectPath]").description("Write a dirty marker to trigger deferred sync").action(async (projectPath) => {
|
|
37
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
38
|
+
const target = path.resolve(projectPath ?? process.cwd());
|
|
39
|
+
if (!KiroGraph.isInitialized(target)) {
|
|
40
|
+
process.exit(0);
|
|
41
|
+
}
|
|
42
|
+
const cg = await KiroGraph.open(target);
|
|
43
|
+
cg.markDirty();
|
|
44
|
+
cg.close();
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
48
|
+
0 && (module.exports = {
|
|
49
|
+
register
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=mark-dirty.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/mark-dirty.ts"],
|
|
4
|
+
"sourcesContent": ["import { Command } from 'commander';\nimport * as path from 'path';\n\nexport function register(program: Command): void {\n program\n .command('mark-dirty [projectPath]')\n .description('Write a dirty marker to trigger deferred sync')\n .action(async (projectPath: string | undefined) => {\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const target = path.resolve(projectPath ?? process.cwd());\n if (!KiroGraph.isInitialized(target)) { process.exit(0); }\n const cg = await KiroGraph.open(target);\n cg.markDirty();\n cg.close();\n });\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,WAAsB;AAEf,SAAS,SAAS,SAAwB;AAC/C,UACG,QAAQ,0BAA0B,EAClC,YAAY,+CAA+C,EAC3D,OAAO,OAAO,gBAAoC;AACjD,UAAM,aAAa,MAAM,QAAQ,QAAQ,EAAE,KAAK,MAAM,QAAQ,gBAAgB,CAAC,GAAG;AAClF,UAAM,SAAS,KAAK,QAAQ,eAAe,QAAQ,IAAI,CAAC;AACxD,QAAI,CAAC,UAAU,cAAc,MAAM,GAAG;AAAE,cAAQ,KAAK,CAAC;AAAA,IAAG;AACzD,UAAM,KAAK,MAAM,UAAU,KAAK,MAAM;AACtC,OAAG,UAAU;AACb,OAAG,MAAM;AAAA,EACX,CAAC;AACL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/package.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6H/C"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var package_exports = {};
|
|
20
|
+
__export(package_exports, {
|
|
21
|
+
register: () => register
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(package_exports);
|
|
24
|
+
var import_ui = require("../ui");
|
|
25
|
+
function register(program) {
|
|
26
|
+
program.command("package <name>").description("Inspect a package: files, coupling, and dependencies").option("--no-files", "Omit file list").option("--format <fmt>", "Output format: markdown, json", "markdown").action(async (name, opts, cmd) => {
|
|
27
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
28
|
+
const cg = await KiroGraph.open(process.cwd());
|
|
29
|
+
if (!cg.isArchitectureEnabled()) {
|
|
30
|
+
console.error(`
|
|
31
|
+
${"\x1B[33m"}\u26A0 Architecture analysis is disabled.${import_ui.reset}`);
|
|
32
|
+
console.error(` ${import_ui.dim}Enable it in .kirograph/config.json:${import_ui.reset} ${import_ui.violet}${import_ui.bold}"enableArchitecture": true${import_ui.reset}`);
|
|
33
|
+
console.error(` ${import_ui.dim}Then re-run:${import_ui.reset} ${import_ui.violet}${import_ui.bold}kirograph index${import_ui.reset}
|
|
34
|
+
`);
|
|
35
|
+
cg.close();
|
|
36
|
+
process.exit(1);
|
|
37
|
+
}
|
|
38
|
+
const arch = cg.getArchitecture();
|
|
39
|
+
const query = name.toLowerCase();
|
|
40
|
+
const pkg = arch.packages.find(
|
|
41
|
+
(p) => p.name.toLowerCase().includes(query) || p.path.toLowerCase().includes(query) || p.id.toLowerCase().includes(query)
|
|
42
|
+
);
|
|
43
|
+
if (!pkg) {
|
|
44
|
+
console.error(`
|
|
45
|
+
${"\x1B[38;5;203m"}\u2717 Package "${name}" not found.${import_ui.reset}`);
|
|
46
|
+
console.error(` ${import_ui.dim}Run ${import_ui.reset}${import_ui.violet}${import_ui.bold}kirograph architecture --packages${import_ui.reset}${import_ui.dim} to list all packages.${import_ui.reset}
|
|
47
|
+
`);
|
|
48
|
+
cg.close();
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
if (opts.format === "json") {
|
|
52
|
+
const deps2 = arch.packageDeps.filter((d) => d.sourcePkg === pkg.id);
|
|
53
|
+
const dependents2 = arch.packageDeps.filter((d) => d.targetPkg === pkg.id);
|
|
54
|
+
const coupling2 = arch.coupling.find((c) => c.packageId === pkg.id);
|
|
55
|
+
const files = Object.entries(arch.filePackages).filter(([, ids]) => ids.includes(pkg.id)).map(([f]) => f).sort();
|
|
56
|
+
console.log(JSON.stringify({ package: pkg, coupling: coupling2, deps: deps2, dependents: dependents2, files }, null, 2));
|
|
57
|
+
cg.close();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const srcLabel = pkg.source === "manifest" ? `${import_ui.green}manifest${import_ui.reset}` : `${import_ui.dim}directory${import_ui.reset}`;
|
|
61
|
+
console.log(`
|
|
62
|
+
${(0, import_ui.section)(pkg.name)} ${import_ui.dim}${pkg.path}${import_ui.reset}`);
|
|
63
|
+
console.log(` ${import_ui.dim}id: ${pkg.id}${import_ui.reset}
|
|
64
|
+
`);
|
|
65
|
+
const meta = [
|
|
66
|
+
["Source", pkg.source === "manifest" ? "manifest" : "directory"]
|
|
67
|
+
];
|
|
68
|
+
if (pkg.language) meta.push(["Language", pkg.language]);
|
|
69
|
+
if (pkg.version) meta.push(["Version", pkg.version]);
|
|
70
|
+
if (pkg.manifestPath) meta.push(["Manifest", pkg.manifestPath]);
|
|
71
|
+
console.log((0, import_ui.renderTable)(meta));
|
|
72
|
+
const coupling = arch.coupling.find((c) => c.packageId === pkg.id);
|
|
73
|
+
if (coupling) {
|
|
74
|
+
console.log(`
|
|
75
|
+
${(0, import_ui.section)("Coupling")}
|
|
76
|
+
`);
|
|
77
|
+
console.log((0, import_ui.renderTable)([
|
|
78
|
+
["Afferent Ca", String(coupling.afferent)],
|
|
79
|
+
["Efferent Ce", String(coupling.efferent)],
|
|
80
|
+
["Instability", `${(coupling.instability * 100).toFixed(0)}%`]
|
|
81
|
+
]));
|
|
82
|
+
}
|
|
83
|
+
const deps = arch.packageDeps.filter((d) => d.sourcePkg === pkg.id);
|
|
84
|
+
if (deps.length > 0) {
|
|
85
|
+
console.log(`
|
|
86
|
+
${(0, import_ui.label)("Depends on")} ${import_ui.dim}(${deps.length})${import_ui.reset}
|
|
87
|
+
`);
|
|
88
|
+
for (const dep of deps) {
|
|
89
|
+
const depName = arch.packages.find((p) => p.id === dep.targetPkg)?.name ?? dep.targetPkg;
|
|
90
|
+
console.log(` ${import_ui.dim}\u2192${import_ui.reset} ${import_ui.violet}${depName}${import_ui.reset} ${import_ui.dim}(${dep.depCount} import${dep.depCount !== 1 ? "s" : ""})${import_ui.reset}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
const dependents = arch.packageDeps.filter((d) => d.targetPkg === pkg.id);
|
|
94
|
+
if (dependents.length > 0) {
|
|
95
|
+
console.log(`
|
|
96
|
+
${(0, import_ui.label)("Depended on by")} ${import_ui.dim}(${dependents.length})${import_ui.reset}
|
|
97
|
+
`);
|
|
98
|
+
for (const dep of dependents) {
|
|
99
|
+
const depName = arch.packages.find((p) => p.id === dep.sourcePkg)?.name ?? dep.sourcePkg;
|
|
100
|
+
console.log(` ${import_ui.dim}\u2190${import_ui.reset} ${import_ui.violet}${depName}${import_ui.reset} ${import_ui.dim}(${dep.depCount} import${dep.depCount !== 1 ? "s" : ""})${import_ui.reset}`);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
if (pkg.externalDeps && pkg.externalDeps.length > 0) {
|
|
104
|
+
console.log(`
|
|
105
|
+
${(0, import_ui.label)("External deps")} ${import_ui.dim}(${pkg.externalDeps.length})${import_ui.reset}
|
|
106
|
+
`);
|
|
107
|
+
const chunks = [];
|
|
108
|
+
for (let i = 0; i < Math.min(pkg.externalDeps.length, 30); i += 4) {
|
|
109
|
+
chunks.push(" " + pkg.externalDeps.slice(i, i + 4).map((d) => `${import_ui.violet}${d}${import_ui.reset}`).join(` ${import_ui.dim}\xB7${import_ui.reset} `));
|
|
110
|
+
}
|
|
111
|
+
console.log(chunks.join("\n"));
|
|
112
|
+
if (pkg.externalDeps.length > 30) {
|
|
113
|
+
console.log(` ${import_ui.dim}\u2026and ${pkg.externalDeps.length - 30} more${import_ui.reset}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (opts.files) {
|
|
117
|
+
const files = Object.entries(arch.filePackages).filter(([, ids]) => ids.includes(pkg.id)).map(([f]) => f).sort();
|
|
118
|
+
if (files.length > 0) {
|
|
119
|
+
console.log(`
|
|
120
|
+
${(0, import_ui.label)("Files")} ${import_ui.dim}(${files.length})${import_ui.reset}
|
|
121
|
+
`);
|
|
122
|
+
const shown = files.slice(0, 40);
|
|
123
|
+
for (const f of shown) {
|
|
124
|
+
console.log(` ${import_ui.dim}${f}${import_ui.reset}`);
|
|
125
|
+
}
|
|
126
|
+
if (files.length > 40) {
|
|
127
|
+
console.log(` ${import_ui.dim}\u2026and ${files.length - 40} more${import_ui.reset}`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
console.log();
|
|
132
|
+
cg.close();
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
136
|
+
0 && (module.exports = {
|
|
137
|
+
register
|
|
138
|
+
});
|
|
139
|
+
//# sourceMappingURL=package.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/package.ts"],
|
|
4
|
+
"sourcesContent": ["import { Command } from 'commander';\nimport * as path from 'path';\nimport { dim, reset, violet, bold, green, label, value, section, renderTable } from '../ui';\n\nexport function register(program: Command): void {\n program\n .command('package <name>')\n .description('Inspect a package: files, coupling, and dependencies')\n .option('--no-files', 'Omit file list')\n .option('--format <fmt>', 'Output format: markdown, json', 'markdown')\n .action(async (name: string, opts: { files: boolean; format: string }, cmd: Command) => {\n // commander puts the project path as the parent option, but we keep it simple\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const cg = await KiroGraph.open(process.cwd());\n\n if (!cg.isArchitectureEnabled()) {\n console.error(`\\n ${'\\x1b[33m'}\u26A0 Architecture analysis is disabled.${reset}`);\n console.error(` ${dim}Enable it in .kirograph/config.json:${reset} ${violet}${bold}\"enableArchitecture\": true${reset}`);\n console.error(` ${dim}Then re-run:${reset} ${violet}${bold}kirograph index${reset}\\n`);\n cg.close(); process.exit(1);\n }\n\n const arch = cg.getArchitecture();\n const query = name.toLowerCase();\n const pkg = arch.packages.find(p =>\n p.name.toLowerCase().includes(query) ||\n p.path.toLowerCase().includes(query) ||\n p.id.toLowerCase().includes(query)\n );\n\n if (!pkg) {\n console.error(`\\n ${'\\x1b[38;5;203m'}\u2717 Package \"${name}\" not found.${reset}`);\n console.error(` ${dim}Run ${reset}${violet}${bold}kirograph architecture --packages${reset}${dim} to list all packages.${reset}\\n`);\n cg.close(); process.exit(1);\n }\n\n if (opts.format === 'json') {\n const deps = arch.packageDeps.filter(d => d.sourcePkg === pkg.id);\n const dependents = arch.packageDeps.filter(d => d.targetPkg === pkg.id);\n const coupling = arch.coupling.find(c => c.packageId === pkg.id);\n const files = Object.entries(arch.filePackages)\n .filter(([, ids]) => ids.includes(pkg.id))\n .map(([f]) => f)\n .sort();\n console.log(JSON.stringify({ package: pkg, coupling, deps, dependents, files }, null, 2));\n cg.close(); return;\n }\n\n // \u2500\u2500 Header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const srcLabel = pkg.source === 'manifest'\n ? `${green}manifest${reset}`\n : `${dim}directory${reset}`;\n\n console.log(`\\n ${section(pkg.name)} ${dim}${pkg.path}${reset}`);\n console.log(` ${dim}id: ${pkg.id}${reset}\\n`);\n\n const meta: [string, string][] = [\n ['Source', pkg.source === 'manifest' ? 'manifest' : 'directory'],\n ];\n if (pkg.language) meta.push(['Language', pkg.language]);\n if (pkg.version) meta.push(['Version', pkg.version]);\n if (pkg.manifestPath) meta.push(['Manifest', pkg.manifestPath]);\n console.log(renderTable(meta));\n\n // \u2500\u2500 Coupling \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const coupling = arch.coupling.find(c => c.packageId === pkg.id);\n if (coupling) {\n console.log(`\\n ${section('Coupling')}\\n`);\n console.log(renderTable([\n ['Afferent Ca', String(coupling.afferent)],\n ['Efferent Ce', String(coupling.efferent)],\n ['Instability', `${(coupling.instability * 100).toFixed(0)}%`],\n ]));\n }\n\n // \u2500\u2500 Dependencies \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const deps = arch.packageDeps.filter(d => d.sourcePkg === pkg.id);\n if (deps.length > 0) {\n console.log(`\\n ${label('Depends on')} ${dim}(${deps.length})${reset}\\n`);\n for (const dep of deps) {\n const depName = arch.packages.find(p => p.id === dep.targetPkg)?.name ?? dep.targetPkg;\n console.log(` ${dim}\u2192${reset} ${violet}${depName}${reset} ${dim}(${dep.depCount} import${dep.depCount !== 1 ? 's' : ''})${reset}`);\n }\n }\n\n const dependents = arch.packageDeps.filter(d => d.targetPkg === pkg.id);\n if (dependents.length > 0) {\n console.log(`\\n ${label('Depended on by')} ${dim}(${dependents.length})${reset}\\n`);\n for (const dep of dependents) {\n const depName = arch.packages.find(p => p.id === dep.sourcePkg)?.name ?? dep.sourcePkg;\n console.log(` ${dim}\u2190${reset} ${violet}${depName}${reset} ${dim}(${dep.depCount} import${dep.depCount !== 1 ? 's' : ''})${reset}`);\n }\n }\n\n // \u2500\u2500 External deps \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n if (pkg.externalDeps && pkg.externalDeps.length > 0) {\n console.log(`\\n ${label('External deps')} ${dim}(${pkg.externalDeps.length})${reset}\\n`);\n const chunks: string[] = [];\n for (let i = 0; i < Math.min(pkg.externalDeps.length, 30); i += 4) {\n chunks.push(' ' + pkg.externalDeps.slice(i, i + 4).map(d => `${violet}${d}${reset}`).join(` ${dim}\u00B7${reset} `));\n }\n console.log(chunks.join('\\n'));\n if (pkg.externalDeps.length > 30) {\n console.log(` ${dim}\u2026and ${pkg.externalDeps.length - 30} more${reset}`);\n }\n }\n\n // \u2500\u2500 Files \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n if (opts.files) {\n const files = Object.entries(arch.filePackages)\n .filter(([, ids]) => ids.includes(pkg.id))\n .map(([f]) => f)\n .sort();\n\n if (files.length > 0) {\n console.log(`\\n ${label('Files')} ${dim}(${files.length})${reset}\\n`);\n const shown = files.slice(0, 40);\n for (const f of shown) {\n console.log(` ${dim}${f}${reset}`);\n }\n if (files.length > 40) {\n console.log(` ${dim}\u2026and ${files.length - 40} more${reset}`);\n }\n }\n }\n\n console.log();\n cg.close();\n });\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["deps", "dependents", "coupling"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var path_exports = {};
|
|
30
|
+
__export(path_exports, {
|
|
31
|
+
register: () => register
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(path_exports);
|
|
34
|
+
var path = __toESM(require("path"));
|
|
35
|
+
var import_ui = require("../ui");
|
|
36
|
+
function register(program) {
|
|
37
|
+
program.command("path <from> <to>").description("Find the shortest path between two symbols in the graph").option("--format <fmt>", "Output format: table | json", "table").action(async (from, to, opts, cmd) => {
|
|
38
|
+
const projectPath = cmd.parent?.args.find((_, i, arr) => arr[i - 1] === "--path");
|
|
39
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
40
|
+
const target = path.resolve(process.cwd());
|
|
41
|
+
const cg = await KiroGraph.open(target);
|
|
42
|
+
const fromResults = cg.searchNodes(from, void 0, 3);
|
|
43
|
+
const toResults = cg.searchNodes(to, void 0, 3);
|
|
44
|
+
if (fromResults.length === 0) {
|
|
45
|
+
console.error(`
|
|
46
|
+
Symbol "${from}" not found in index.
|
|
47
|
+
`);
|
|
48
|
+
cg.close();
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (toResults.length === 0) {
|
|
52
|
+
console.error(`
|
|
53
|
+
Symbol "${to}" not found in index.
|
|
54
|
+
`);
|
|
55
|
+
cg.close();
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const SYMBOL_KINDS = /* @__PURE__ */ new Set(["function", "method", "class", "interface", "type_alias", "variable", "component", "route", "constant"]);
|
|
59
|
+
const preferSymbol = (results) => results.find((r) => SYMBOL_KINDS.has(r.node.kind)) ?? results[0];
|
|
60
|
+
const fromNode = preferSymbol(fromResults).node;
|
|
61
|
+
const toNode = preferSymbol(toResults).node;
|
|
62
|
+
const pathNodes = await cg.findPath(fromNode.id, toNode.id);
|
|
63
|
+
cg.close();
|
|
64
|
+
if (opts.format === "json") {
|
|
65
|
+
console.log(JSON.stringify(pathNodes, null, 2));
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
console.log();
|
|
69
|
+
console.log(` ${import_ui.dim}from ${import_ui.reset}${import_ui.violet}${import_ui.bold}${fromNode.name}${import_ui.reset} ${import_ui.dim}${fromNode.kind} ${fromNode.filePath}:${fromNode.startLine}${import_ui.reset}`);
|
|
70
|
+
console.log(` ${import_ui.dim}to ${import_ui.reset}${import_ui.violet}${import_ui.bold}${toNode.name}${import_ui.reset} ${import_ui.dim}${toNode.kind} ${toNode.filePath}:${toNode.startLine}${import_ui.reset}
|
|
71
|
+
`);
|
|
72
|
+
if (pathNodes.length === 0) {
|
|
73
|
+
console.log(` ${import_ui.dim}No path found.${import_ui.reset}
|
|
74
|
+
`);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
console.log(` ${import_ui.violet}${import_ui.bold}Path${import_ui.reset} ${import_ui.dim}${pathNodes.length} hop${pathNodes.length === 1 ? "" : "s"}${import_ui.reset}
|
|
78
|
+
`);
|
|
79
|
+
for (let i = 0; i < pathNodes.length; i++) {
|
|
80
|
+
const n = pathNodes[i];
|
|
81
|
+
const connector = i < pathNodes.length - 1 ? `
|
|
82
|
+
${import_ui.dim}\u2502${import_ui.reset}` : "";
|
|
83
|
+
console.log(` ${import_ui.dim}${String(i + 1).padStart(2)}.${import_ui.reset} ${import_ui.violet}${import_ui.bold}${n.name}${import_ui.reset} ${import_ui.dim}${n.kind}${import_ui.reset}`);
|
|
84
|
+
console.log(` ${import_ui.dim}${n.filePath}:${n.startLine}${import_ui.reset}${connector}`);
|
|
85
|
+
}
|
|
86
|
+
console.log();
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
90
|
+
0 && (module.exports = {
|
|
91
|
+
register
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=path.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/path.ts"],
|
|
4
|
+
"sourcesContent": ["import * as path from 'path';\nimport { Command } from 'commander';\nimport { bold, dim, reset, violet } from '../ui';\n\nexport function register(program: Command): void {\n program\n .command('path <from> <to>')\n .description('Find the shortest path between two symbols in the graph')\n .option('--format <fmt>', 'Output format: table | json', 'table')\n .action(async (from: string, to: string, opts: { format: string }, cmd: Command) => {\n const projectPath = cmd.parent?.args.find((_, i, arr) => arr[i - 1] === '--path');\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const target = path.resolve(process.cwd());\n const cg = await KiroGraph.open(target);\n\n const fromResults = cg.searchNodes(from, undefined, 3);\n const toResults = cg.searchNodes(to, undefined, 3);\n\n if (fromResults.length === 0) {\n console.error(`\\n Symbol \"${from}\" not found in index.\\n`);\n cg.close();\n return;\n }\n if (toResults.length === 0) {\n console.error(`\\n Symbol \"${to}\" not found in index.\\n`);\n cg.close();\n return;\n }\n\n const SYMBOL_KINDS = new Set(['function', 'method', 'class', 'interface', 'type_alias', 'variable', 'component', 'route', 'constant']);\n const preferSymbol = (results: typeof fromResults) =>\n results.find(r => SYMBOL_KINDS.has(r.node.kind)) ?? results[0];\n\n const fromNode = preferSymbol(fromResults).node;\n const toNode = preferSymbol(toResults).node;\n const pathNodes = await cg.findPath(fromNode.id, toNode.id);\n cg.close();\n\n if (opts.format === 'json') {\n console.log(JSON.stringify(pathNodes, null, 2));\n return;\n }\n\n console.log();\n console.log(` ${dim}from ${reset}${violet}${bold}${fromNode.name}${reset} ${dim}${fromNode.kind} ${fromNode.filePath}:${fromNode.startLine}${reset}`);\n console.log(` ${dim}to ${reset}${violet}${bold}${toNode.name}${reset} ${dim}${toNode.kind} ${toNode.filePath}:${toNode.startLine}${reset}\\n`);\n\n if (pathNodes.length === 0) {\n console.log(` ${dim}No path found.${reset}\\n`);\n return;\n }\n\n console.log(` ${violet}${bold}Path${reset} ${dim}${pathNodes.length} hop${pathNodes.length === 1 ? '' : 's'}${reset}\\n`);\n\n for (let i = 0; i < pathNodes.length; i++) {\n const n = pathNodes[i];\n const connector = i < pathNodes.length - 1 ? `\\n ${dim}\u2502${reset}` : '';\n console.log(` ${dim}${String(i + 1).padStart(2)}.${reset} ${violet}${bold}${n.name}${reset} ${dim}${n.kind}${reset}`);\n console.log(` ${dim}${n.filePath}:${n.startLine}${reset}${connector}`);\n }\n\n console.log();\n });\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qdrant.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/qdrant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+BpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkF/C"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.register = register;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
const fs = __importStar(require("fs"));
|
|
39
|
+
const http = __importStar(require("http"));
|
|
40
|
+
const ui_1 = require("../ui");
|
|
41
|
+
const qdrant_dashboard_1 = require("../installer/qdrant-dashboard");
|
|
42
|
+
const SERVER_STATE_FILE = 'qdrant-server.json';
|
|
43
|
+
function readState(kirographDir) {
|
|
44
|
+
try {
|
|
45
|
+
return JSON.parse(fs.readFileSync(path.join(kirographDir, SERVER_STATE_FILE), 'utf8'));
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
function isAlive(pid) {
|
|
52
|
+
try {
|
|
53
|
+
process.kill(pid, 0);
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/** Check if the Qdrant dashboard endpoint returns something other than 404. */
|
|
61
|
+
function dashboardReachable(port) {
|
|
62
|
+
return new Promise(resolve => {
|
|
63
|
+
const req = http.get(`http://127.0.0.1:${port}/dashboard`, res => {
|
|
64
|
+
resolve(res.statusCode !== 404);
|
|
65
|
+
res.resume();
|
|
66
|
+
});
|
|
67
|
+
req.on('error', () => resolve(false));
|
|
68
|
+
req.setTimeout(1000, () => { req.destroy(); resolve(false); });
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function register(program) {
|
|
72
|
+
const cmd = program
|
|
73
|
+
.command('qdrant [projectPath]')
|
|
74
|
+
.description('Manage the Qdrant engine and dashboard');
|
|
75
|
+
// ── start ──────────────────────────────────────────────────────────────────
|
|
76
|
+
cmd.command('start [projectPath]')
|
|
77
|
+
.description('Start the Qdrant server (if not running) and open the dashboard')
|
|
78
|
+
.action(async (projectPath) => {
|
|
79
|
+
const target = path.resolve(projectPath ?? process.cwd());
|
|
80
|
+
const kirographDir = path.join(target, '.kirograph');
|
|
81
|
+
// 1. Ensure UI files are downloaded BEFORE starting Qdrant so
|
|
82
|
+
// QdrantIndex.initialize() finds them and sets STATIC_CONTENT_DIR.
|
|
83
|
+
const uiReady = await (0, qdrant_dashboard_1.ensureQdrantUI)(target);
|
|
84
|
+
if (!uiReady) {
|
|
85
|
+
console.log(` Could not download Qdrant Web UI.\n`);
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
// 2. If already running, check whether the dashboard is actually served.
|
|
89
|
+
// If not (started without static dir), restart so it picks up the files.
|
|
90
|
+
const saved = readState(kirographDir);
|
|
91
|
+
if (saved && isAlive(saved.pid)) {
|
|
92
|
+
const hasDashboard = await dashboardReachable(saved.port);
|
|
93
|
+
if (!hasDashboard) {
|
|
94
|
+
// Restart with static content dir now that UI files are present
|
|
95
|
+
try {
|
|
96
|
+
process.kill(saved.pid, 'SIGTERM');
|
|
97
|
+
}
|
|
98
|
+
catch { /* ignore */ }
|
|
99
|
+
await new Promise(r => setTimeout(r, 400));
|
|
100
|
+
try {
|
|
101
|
+
fs.unlinkSync(path.join(kirographDir, SERVER_STATE_FILE));
|
|
102
|
+
}
|
|
103
|
+
catch { /* ignore */ }
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
console.log(`\n ${ui_1.green}✓${ui_1.reset} Qdrant already running with dashboard ${ui_1.dim}(pid ${saved.pid}, port ${saved.port})${ui_1.reset}`);
|
|
107
|
+
await (0, qdrant_dashboard_1.openQdrantDashboard)(target);
|
|
108
|
+
console.log(` ${ui_1.dim}Qdrant keeps running in the background — use ${ui_1.reset}kg qdrant stop${ui_1.dim} to shut it down.${ui_1.reset}\n`);
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// 3. Spawn (or re-spawn) Qdrant — files are in place so STATIC_CONTENT_DIR is set
|
|
113
|
+
console.log();
|
|
114
|
+
const { QdrantIndex } = await Promise.resolve().then(() => __importStar(require('../../vectors/qdrant-index')));
|
|
115
|
+
const index = new QdrantIndex(kirographDir);
|
|
116
|
+
await index.initialize();
|
|
117
|
+
if (!index.isAvailable()) {
|
|
118
|
+
console.log(` Qdrant failed to start.\n`);
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
index.close();
|
|
122
|
+
await (0, qdrant_dashboard_1.openQdrantDashboard)(target);
|
|
123
|
+
console.log(` ${ui_1.dim}Qdrant keeps running in the background — use ${ui_1.reset}kg qdrant stop${ui_1.dim} to shut it down.${ui_1.reset}\n`);
|
|
124
|
+
});
|
|
125
|
+
// ── stop ───────────────────────────────────────────────────────────────────
|
|
126
|
+
cmd.command('stop [projectPath]')
|
|
127
|
+
.description('Stop the Qdrant server')
|
|
128
|
+
.action((projectPath) => {
|
|
129
|
+
const target = path.resolve(projectPath ?? process.cwd());
|
|
130
|
+
const kirographDir = path.join(target, '.kirograph');
|
|
131
|
+
const stateFile = path.join(kirographDir, SERVER_STATE_FILE);
|
|
132
|
+
console.log();
|
|
133
|
+
const saved = readState(kirographDir);
|
|
134
|
+
if (!saved) {
|
|
135
|
+
console.log(` ${ui_1.dim}No running Qdrant server found.${ui_1.reset}\n`);
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
let killed = false;
|
|
139
|
+
if (isAlive(saved.pid)) {
|
|
140
|
+
try {
|
|
141
|
+
process.kill(saved.pid, 'SIGTERM');
|
|
142
|
+
killed = true;
|
|
143
|
+
}
|
|
144
|
+
catch { /* ignore */ }
|
|
145
|
+
}
|
|
146
|
+
try {
|
|
147
|
+
fs.unlinkSync(stateFile);
|
|
148
|
+
}
|
|
149
|
+
catch { /* ignore */ }
|
|
150
|
+
if (killed) {
|
|
151
|
+
console.log(` ${ui_1.green}✓${ui_1.reset} ${(0, ui_1.label)('Stopped')} Qdrant server ${ui_1.dim}(pid ${saved.pid}, port ${saved.port})${ui_1.reset}`);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
console.log(` ${ui_1.dim}Qdrant server (pid ${saved.pid}) was not running — state file cleaned up.${ui_1.reset}`);
|
|
155
|
+
}
|
|
156
|
+
console.log();
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=qdrant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qdrant.js","sourceRoot":"","sources":["../../../src/bin/commands/qdrant.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqB/C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var query_exports = {};
|
|
20
|
+
__export(query_exports, {
|
|
21
|
+
register: () => register
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(query_exports);
|
|
24
|
+
var import_ui = require("../ui");
|
|
25
|
+
function register(program) {
|
|
26
|
+
program.command("query <search>").description("Search for symbols").option("--kind <kind>", "Filter by kind").option("--limit <n>", "Max results", "10").action(async (search, opts) => {
|
|
27
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
28
|
+
const cg = await KiroGraph.open(process.cwd());
|
|
29
|
+
const results = cg.searchNodes(search, opts.kind, parseInt(opts.limit));
|
|
30
|
+
if (results.length === 0) {
|
|
31
|
+
console.log(` ${import_ui.dim}No results for${import_ui.reset} ${import_ui.violet}${import_ui.bold}${search}${import_ui.reset}`);
|
|
32
|
+
} else {
|
|
33
|
+
console.log();
|
|
34
|
+
for (const r of results) {
|
|
35
|
+
console.log(` ${import_ui.violet}${import_ui.bold}${r.node.name}${import_ui.reset} ${import_ui.dim}${r.node.kind}${import_ui.reset} ${import_ui.dim}${r.node.filePath}:${r.node.startLine}${import_ui.reset}`);
|
|
36
|
+
}
|
|
37
|
+
console.log(`
|
|
38
|
+
${import_ui.dim}${results.length} result(s)${import_ui.reset}`);
|
|
39
|
+
}
|
|
40
|
+
cg.close();
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
44
|
+
0 && (module.exports = {
|
|
45
|
+
register
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/query.ts"],
|
|
4
|
+
"sourcesContent": ["import { Command } from 'commander';\nimport { dim, reset, violet, bold } from '../ui';\n\nexport function register(program: Command): void {\n program\n .command('query <search>')\n .description('Search for symbols')\n .option('--kind <kind>', 'Filter by kind')\n .option('--limit <n>', 'Max results', '10')\n .action(async (search: string, opts: { kind?: string; limit: string }) => {\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const cg = await KiroGraph.open(process.cwd());\n const results = cg.searchNodes(search, opts.kind as any, parseInt(opts.limit));\n if (results.length === 0) {\n console.log(` ${dim}No results for${reset} ${violet}${bold}${search}${reset}`);\n } else {\n console.log();\n for (const r of results) {\n console.log(` ${violet}${bold}${r.node.name}${reset} ${dim}${r.node.kind}${reset} ${dim}${r.node.filePath}:${r.node.startLine}${reset}`);\n }\n console.log(`\\n ${dim}${results.length} result(s)${reset}`);\n }\n cg.close();\n });\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gBAAyC;AAElC,SAAS,SAAS,SAAwB;AAC/C,UACG,QAAQ,gBAAgB,EACxB,YAAY,oBAAoB,EAChC,OAAO,iBAAiB,gBAAgB,EACxC,OAAO,eAAe,eAAe,IAAI,EACzC,OAAO,OAAO,QAAgB,SAA2C;AACxE,UAAM,aAAa,MAAM,QAAQ,QAAQ,EAAE,KAAK,MAAM,QAAQ,gBAAgB,CAAC,GAAG;AAClF,UAAM,KAAK,MAAM,UAAU,KAAK,QAAQ,IAAI,CAAC;AAC7C,UAAM,UAAU,GAAG,YAAY,QAAQ,KAAK,MAAa,SAAS,KAAK,KAAK,CAAC;AAC7E,QAAI,QAAQ,WAAW,GAAG;AACxB,cAAQ,IAAI,KAAK,aAAG,iBAAiB,eAAK,IAAI,gBAAM,GAAG,cAAI,GAAG,MAAM,GAAG,eAAK,EAAE;AAAA,IAChF,OAAO;AACL,cAAQ,IAAI;AACZ,iBAAW,KAAK,SAAS;AACvB,gBAAQ,IAAI,KAAK,gBAAM,GAAG,cAAI,GAAG,EAAE,KAAK,IAAI,GAAG,eAAK,KAAK,aAAG,GAAG,EAAE,KAAK,IAAI,GAAG,eAAK,KAAK,aAAG,GAAG,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,SAAS,GAAG,eAAK,EAAE;AAAA,MAC5I;AACA,cAAQ,IAAI;AAAA,IAAO,aAAG,GAAG,QAAQ,MAAM,aAAa,eAAK,EAAE;AAAA,IAC7D;AACA,OAAG,MAAM;AAAA,EACX,CAAC;AACL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkB/C"}
|