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,243 @@
|
|
|
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 frameworks_exports = {};
|
|
30
|
+
__export(frameworks_exports, {
|
|
31
|
+
FACADE_MAPPINGS: () => import_laravel.FACADE_MAPPINGS,
|
|
32
|
+
aspnetResolver: () => import_csharp.aspnetResolver,
|
|
33
|
+
detectFrameworks: () => detectFrameworks,
|
|
34
|
+
djangoResolver: () => import_python.djangoResolver,
|
|
35
|
+
expressResolver: () => import_express.expressResolver,
|
|
36
|
+
fastapiResolver: () => import_python.fastapiResolver,
|
|
37
|
+
flaskResolver: () => import_python.flaskResolver,
|
|
38
|
+
getAllFrameworkResolvers: () => getAllFrameworkResolvers,
|
|
39
|
+
getFrameworkResolver: () => getFrameworkResolver,
|
|
40
|
+
goResolver: () => import_go.goResolver,
|
|
41
|
+
laravelResolver: () => import_laravel.laravelResolver,
|
|
42
|
+
phoenixResolver: () => import_elixir.phoenixResolver,
|
|
43
|
+
railsResolver: () => import_ruby.railsResolver,
|
|
44
|
+
reactResolver: () => import_react.reactResolver,
|
|
45
|
+
registerFrameworkResolver: () => registerFrameworkResolver,
|
|
46
|
+
rustResolver: () => import_rust.rustResolver,
|
|
47
|
+
springResolver: () => import_java.springResolver,
|
|
48
|
+
svelteResolver: () => import_svelte.svelteResolver,
|
|
49
|
+
swiftUIResolver: () => import_swift.swiftUIResolver,
|
|
50
|
+
uikitResolver: () => import_swift.uikitResolver,
|
|
51
|
+
vaporResolver: () => import_swift.vaporResolver
|
|
52
|
+
});
|
|
53
|
+
module.exports = __toCommonJS(frameworks_exports);
|
|
54
|
+
var fs = __toESM(require("fs"));
|
|
55
|
+
var path = __toESM(require("path"));
|
|
56
|
+
var import_errors = require("../errors");
|
|
57
|
+
var import_config = require("../config");
|
|
58
|
+
var import_react = require("./react");
|
|
59
|
+
var import_svelte = require("./svelte");
|
|
60
|
+
var import_express = require("./express");
|
|
61
|
+
var import_python = require("./python");
|
|
62
|
+
var import_ruby = require("./ruby");
|
|
63
|
+
var import_java = require("./java");
|
|
64
|
+
var import_go = require("./go");
|
|
65
|
+
var import_rust = require("./rust");
|
|
66
|
+
var import_csharp = require("./csharp");
|
|
67
|
+
var import_swift = require("./swift");
|
|
68
|
+
var import_laravel = require("./laravel");
|
|
69
|
+
var import_elixir = require("./elixir");
|
|
70
|
+
var import_react2 = require("./react");
|
|
71
|
+
var import_svelte2 = require("./svelte");
|
|
72
|
+
var import_express2 = require("./express");
|
|
73
|
+
var import_python2 = require("./python");
|
|
74
|
+
var import_ruby2 = require("./ruby");
|
|
75
|
+
var import_java2 = require("./java");
|
|
76
|
+
var import_go2 = require("./go");
|
|
77
|
+
var import_rust2 = require("./rust");
|
|
78
|
+
var import_csharp2 = require("./csharp");
|
|
79
|
+
var import_swift2 = require("./swift");
|
|
80
|
+
var import_laravel2 = require("./laravel");
|
|
81
|
+
var import_elixir2 = require("./elixir");
|
|
82
|
+
const FRAMEWORK_RESOLVERS = [
|
|
83
|
+
// PHP
|
|
84
|
+
import_laravel2.laravelResolver,
|
|
85
|
+
// JavaScript / TypeScript
|
|
86
|
+
import_express2.expressResolver,
|
|
87
|
+
import_react2.reactResolver,
|
|
88
|
+
import_svelte2.svelteResolver,
|
|
89
|
+
// Python
|
|
90
|
+
import_python2.djangoResolver,
|
|
91
|
+
import_python2.flaskResolver,
|
|
92
|
+
import_python2.fastapiResolver,
|
|
93
|
+
// Ruby
|
|
94
|
+
import_ruby2.railsResolver,
|
|
95
|
+
// Java
|
|
96
|
+
import_java2.springResolver,
|
|
97
|
+
// Go
|
|
98
|
+
import_go2.goResolver,
|
|
99
|
+
// Rust
|
|
100
|
+
import_rust2.rustResolver,
|
|
101
|
+
// C#
|
|
102
|
+
import_csharp2.aspnetResolver,
|
|
103
|
+
// Swift
|
|
104
|
+
import_swift2.swiftUIResolver,
|
|
105
|
+
import_swift2.uikitResolver,
|
|
106
|
+
import_swift2.vaporResolver,
|
|
107
|
+
// Elixir
|
|
108
|
+
import_elixir2.phoenixResolver
|
|
109
|
+
];
|
|
110
|
+
function getAllFrameworkResolvers() {
|
|
111
|
+
return FRAMEWORK_RESOLVERS;
|
|
112
|
+
}
|
|
113
|
+
function getFrameworkResolver(name) {
|
|
114
|
+
return FRAMEWORK_RESOLVERS.find((r) => r.name === name);
|
|
115
|
+
}
|
|
116
|
+
function registerFrameworkResolver(resolver) {
|
|
117
|
+
const index = FRAMEWORK_RESOLVERS.findIndex((r) => r.name === resolver.name);
|
|
118
|
+
if (index !== -1) FRAMEWORK_RESOLVERS.splice(index, 1);
|
|
119
|
+
FRAMEWORK_RESOLVERS.push(resolver);
|
|
120
|
+
}
|
|
121
|
+
function buildResolutionContext(projectRoot, db) {
|
|
122
|
+
const fileCache = /* @__PURE__ */ new Map();
|
|
123
|
+
const nodeCache = /* @__PURE__ */ new Map();
|
|
124
|
+
return {
|
|
125
|
+
getNodesInFile(filePath) {
|
|
126
|
+
if (!nodeCache.has(filePath)) {
|
|
127
|
+
nodeCache.set(filePath, db.getNodesByFile(filePath));
|
|
128
|
+
}
|
|
129
|
+
return nodeCache.get(filePath);
|
|
130
|
+
},
|
|
131
|
+
getNodesByName(name) {
|
|
132
|
+
return db.findNodesByExactName(name);
|
|
133
|
+
},
|
|
134
|
+
getNodesByKind(kind) {
|
|
135
|
+
return db.getNodesByKind(kind);
|
|
136
|
+
},
|
|
137
|
+
fileExists(filePath) {
|
|
138
|
+
return fs.existsSync(path.join(projectRoot, filePath));
|
|
139
|
+
},
|
|
140
|
+
readFile(filePath) {
|
|
141
|
+
if (fileCache.has(filePath)) return fileCache.get(filePath);
|
|
142
|
+
try {
|
|
143
|
+
const content = fs.readFileSync(path.join(projectRoot, filePath), "utf8");
|
|
144
|
+
fileCache.set(filePath, content);
|
|
145
|
+
return content;
|
|
146
|
+
} catch {
|
|
147
|
+
fileCache.set(filePath, null);
|
|
148
|
+
return null;
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
getProjectRoot() {
|
|
152
|
+
return projectRoot;
|
|
153
|
+
},
|
|
154
|
+
getAllFiles() {
|
|
155
|
+
return db.getAllFiles().map((f) => f.path);
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
async function detectFrameworks(projectRoot, db) {
|
|
160
|
+
if (!db) {
|
|
161
|
+
return detectFromPackageJson(projectRoot);
|
|
162
|
+
}
|
|
163
|
+
const context = buildResolutionContext(projectRoot, db);
|
|
164
|
+
const detected = [];
|
|
165
|
+
for (const resolver of FRAMEWORK_RESOLVERS) {
|
|
166
|
+
try {
|
|
167
|
+
if (resolver.detect(context)) {
|
|
168
|
+
(0, import_errors.logDebug)(`detectFrameworks: detected ${resolver.name}`);
|
|
169
|
+
detected.push(resolver);
|
|
170
|
+
}
|
|
171
|
+
} catch (err) {
|
|
172
|
+
(0, import_errors.logWarn)(`detectFrameworks: error detecting ${resolver.name}`, { error: String(err) });
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
if (detected.length > 0) {
|
|
176
|
+
await (0, import_config.updateConfig)(projectRoot, { frameworkHints: detected.map((f) => f.name) });
|
|
177
|
+
}
|
|
178
|
+
return detected;
|
|
179
|
+
}
|
|
180
|
+
async function detectFromPackageJson(projectRoot) {
|
|
181
|
+
const pkgPath = path.join(projectRoot, "package.json");
|
|
182
|
+
if (!fs.existsSync(pkgPath)) return [];
|
|
183
|
+
let pkg;
|
|
184
|
+
try {
|
|
185
|
+
pkg = JSON.parse(fs.readFileSync(pkgPath, "utf8"));
|
|
186
|
+
} catch {
|
|
187
|
+
return [];
|
|
188
|
+
}
|
|
189
|
+
const deps = {
|
|
190
|
+
...pkg.dependencies ?? {},
|
|
191
|
+
...pkg.devDependencies ?? {}
|
|
192
|
+
};
|
|
193
|
+
const PACKAGE_TO_RESOLVER = {
|
|
194
|
+
react: "react",
|
|
195
|
+
next: "react",
|
|
196
|
+
"react-native": "react",
|
|
197
|
+
svelte: "svelte",
|
|
198
|
+
"@sveltejs/kit": "svelte",
|
|
199
|
+
express: "express",
|
|
200
|
+
fastify: "express",
|
|
201
|
+
koa: "express"
|
|
202
|
+
};
|
|
203
|
+
const detectedNames = /* @__PURE__ */ new Set();
|
|
204
|
+
const detected = [];
|
|
205
|
+
for (const [pkg2, resolverName] of Object.entries(PACKAGE_TO_RESOLVER)) {
|
|
206
|
+
if (Object.prototype.hasOwnProperty.call(deps, pkg2) && !detectedNames.has(resolverName)) {
|
|
207
|
+
const resolver = getFrameworkResolver(resolverName);
|
|
208
|
+
if (resolver) {
|
|
209
|
+
detectedNames.add(resolverName);
|
|
210
|
+
detected.push(resolver);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
if (detected.length > 0) {
|
|
215
|
+
await (0, import_config.updateConfig)(projectRoot, { frameworkHints: detected.map((f) => f.name) });
|
|
216
|
+
}
|
|
217
|
+
return detected;
|
|
218
|
+
}
|
|
219
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
220
|
+
0 && (module.exports = {
|
|
221
|
+
FACADE_MAPPINGS,
|
|
222
|
+
aspnetResolver,
|
|
223
|
+
detectFrameworks,
|
|
224
|
+
djangoResolver,
|
|
225
|
+
expressResolver,
|
|
226
|
+
fastapiResolver,
|
|
227
|
+
flaskResolver,
|
|
228
|
+
getAllFrameworkResolvers,
|
|
229
|
+
getFrameworkResolver,
|
|
230
|
+
goResolver,
|
|
231
|
+
laravelResolver,
|
|
232
|
+
phoenixResolver,
|
|
233
|
+
railsResolver,
|
|
234
|
+
reactResolver,
|
|
235
|
+
registerFrameworkResolver,
|
|
236
|
+
rustResolver,
|
|
237
|
+
springResolver,
|
|
238
|
+
svelteResolver,
|
|
239
|
+
swiftUIResolver,
|
|
240
|
+
uikitResolver,
|
|
241
|
+
vaporResolver
|
|
242
|
+
});
|
|
243
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/frameworks/index.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Framework Resolver Registry\n *\n * Mirrors CodeGraph src/resolution/frameworks/index.ts\n * Manages framework-specific resolvers and detection.\n */\n\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { logDebug, logWarn } from '../errors';\nimport { updateConfig } from '../config';\nimport type { Node } from '../types';\nimport type { GraphDatabase } from '../db/database';\nimport type { FrameworkResolver, ResolutionContext } from './types';\n\n// Re-export types\nexport type { FrameworkResolver, ResolutionContext, UnresolvedRef, ResolvedRef } from './types';\n\n// Re-export individual resolvers\nexport { reactResolver } from './react';\nexport { svelteResolver } from './svelte';\nexport { expressResolver } from './express';\nexport { djangoResolver, flaskResolver, fastapiResolver } from './python';\nexport { railsResolver } from './ruby';\nexport { springResolver } from './java';\nexport { goResolver } from './go';\nexport { rustResolver } from './rust';\nexport { aspnetResolver } from './csharp';\nexport { swiftUIResolver, uikitResolver, vaporResolver } from './swift';\nexport { laravelResolver, FACADE_MAPPINGS } from './laravel';\nexport { phoenixResolver } from './elixir';\n\n// \u2500\u2500 Registry \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\u2500\n\nimport { reactResolver } from './react';\nimport { svelteResolver } from './svelte';\nimport { expressResolver } from './express';\nimport { djangoResolver, flaskResolver, fastapiResolver } from './python';\nimport { railsResolver } from './ruby';\nimport { springResolver } from './java';\nimport { goResolver } from './go';\nimport { rustResolver } from './rust';\nimport { aspnetResolver } from './csharp';\nimport { swiftUIResolver, uikitResolver, vaporResolver } from './swift';\nimport { laravelResolver } from './laravel';\nimport { phoenixResolver } from './elixir';\n\nconst FRAMEWORK_RESOLVERS: FrameworkResolver[] = [\n // PHP\n laravelResolver,\n // JavaScript / TypeScript\n expressResolver,\n reactResolver,\n svelteResolver,\n // Python\n djangoResolver,\n flaskResolver,\n fastapiResolver,\n // Ruby\n railsResolver,\n // Java\n springResolver,\n // Go\n goResolver,\n // Rust\n rustResolver,\n // C#\n aspnetResolver,\n // Swift\n swiftUIResolver,\n uikitResolver,\n vaporResolver,\n // Elixir\n phoenixResolver,\n];\n\nexport function getAllFrameworkResolvers(): FrameworkResolver[] {\n return FRAMEWORK_RESOLVERS;\n}\n\nexport function getFrameworkResolver(name: string): FrameworkResolver | undefined {\n return FRAMEWORK_RESOLVERS.find(r => r.name === name);\n}\n\nexport function registerFrameworkResolver(resolver: FrameworkResolver): void {\n const index = FRAMEWORK_RESOLVERS.findIndex(r => r.name === resolver.name);\n if (index !== -1) FRAMEWORK_RESOLVERS.splice(index, 1);\n FRAMEWORK_RESOLVERS.push(resolver);\n}\n\n// \u2500\u2500 Context builder \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\nfunction buildResolutionContext(projectRoot: string, db: GraphDatabase): ResolutionContext {\n const fileCache = new Map<string, string | null>();\n const nodeCache = new Map<string, Node[]>();\n\n return {\n getNodesInFile(filePath: string): Node[] {\n if (!nodeCache.has(filePath)) {\n nodeCache.set(filePath, db.getNodesByFile(filePath));\n }\n return nodeCache.get(filePath)!;\n },\n getNodesByName(name: string): Node[] {\n return db.findNodesByExactName(name);\n },\n getNodesByKind(kind: Node['kind']): Node[] {\n return db.getNodesByKind(kind);\n },\n fileExists(filePath: string): boolean {\n return fs.existsSync(path.join(projectRoot, filePath));\n },\n readFile(filePath: string): string | null {\n if (fileCache.has(filePath)) return fileCache.get(filePath)!;\n try {\n const content = fs.readFileSync(path.join(projectRoot, filePath), 'utf8');\n fileCache.set(filePath, content);\n return content;\n } catch {\n fileCache.set(filePath, null);\n return null;\n }\n },\n getProjectRoot(): string {\n return projectRoot;\n },\n getAllFiles(): string[] {\n return db.getAllFiles().map(f => f.path);\n },\n };\n}\n\n// \u2500\u2500 detectFrameworks \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\n/**\n * Detect which frameworks are used in a project.\n * Mirrors CodeGraph detectFrameworks() \u2014 uses ResolutionContext for file access.\n * Records detected framework names in config via updateConfig().\n */\nexport async function detectFrameworks(projectRoot: string, db?: GraphDatabase): Promise<FrameworkResolver[]> {\n // If no db provided, fall back to package.json-only detection\n if (!db) {\n return detectFromPackageJson(projectRoot);\n }\n\n const context = buildResolutionContext(projectRoot, db);\n const detected: FrameworkResolver[] = [];\n\n for (const resolver of FRAMEWORK_RESOLVERS) {\n try {\n if (resolver.detect(context)) {\n logDebug(`detectFrameworks: detected ${resolver.name}`);\n detected.push(resolver);\n }\n } catch (err) {\n logWarn(`detectFrameworks: error detecting ${resolver.name}`, { error: String(err) });\n }\n }\n\n if (detected.length > 0) {\n await updateConfig(projectRoot, { frameworkHints: detected.map(f => f.name) });\n }\n\n return detected;\n}\n\n/**\n * Lightweight fallback: detect frameworks from package.json only (no DB needed).\n */\nasync function detectFromPackageJson(projectRoot: string): Promise<FrameworkResolver[]> {\n const pkgPath = path.join(projectRoot, 'package.json');\n if (!fs.existsSync(pkgPath)) return [];\n\n let pkg: Record<string, unknown>;\n try {\n pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8')) as Record<string, unknown>;\n } catch {\n return [];\n }\n\n const deps: Record<string, string> = {\n ...((pkg.dependencies as Record<string, string>) ?? {}),\n ...((pkg.devDependencies as Record<string, string>) ?? {}),\n };\n\n const PACKAGE_TO_RESOLVER: Record<string, string> = {\n react: 'react', next: 'react', 'react-native': 'react',\n svelte: 'svelte', '@sveltejs/kit': 'svelte',\n express: 'express', fastify: 'express', koa: 'express',\n };\n\n const detectedNames = new Set<string>();\n const detected: FrameworkResolver[] = [];\n\n for (const [pkg, resolverName] of Object.entries(PACKAGE_TO_RESOLVER)) {\n if (Object.prototype.hasOwnProperty.call(deps, pkg) && !detectedNames.has(resolverName)) {\n const resolver = getFrameworkResolver(resolverName);\n if (resolver) {\n detectedNames.add(resolverName);\n detected.push(resolver);\n }\n }\n }\n\n if (detected.length > 0) {\n await updateConfig(projectRoot, { frameworkHints: detected.map(f => f.name) });\n }\n\n return detected;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react", "import_svelte", "import_express", "import_python", "import_ruby", "import_java", "import_go", "import_rust", "import_csharp", "import_swift", "import_laravel", "import_elixir", "pkg"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../src/frameworks/java.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAiD,MAAM,SAAS,CAAC;AAEhG,eAAO,MAAM,cAAc,EAAE,iBAgD5B,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
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 java_exports = {};
|
|
20
|
+
__export(java_exports, {
|
|
21
|
+
springResolver: () => springResolver
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(java_exports);
|
|
24
|
+
const springResolver = {
|
|
25
|
+
name: "spring",
|
|
26
|
+
detect(context) {
|
|
27
|
+
for (const file of ["pom.xml", "build.gradle", "build.gradle.kts"]) {
|
|
28
|
+
const content = context.readFile(file);
|
|
29
|
+
if (content && (content.includes("spring-boot") || content.includes("springframework"))) return true;
|
|
30
|
+
}
|
|
31
|
+
for (const file of context.getAllFiles()) {
|
|
32
|
+
if (file.endsWith(".java")) {
|
|
33
|
+
const content = context.readFile(file);
|
|
34
|
+
if (content && (content.includes("@SpringBootApplication") || content.includes("@RestController") || content.includes("@Service") || content.includes("@Repository"))) return true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return false;
|
|
38
|
+
},
|
|
39
|
+
resolve(ref, context) {
|
|
40
|
+
if (ref.referenceName.endsWith("Service")) {
|
|
41
|
+
const id = resolveInDirs(ref.referenceName, ["service", "services"], ".java", context);
|
|
42
|
+
if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: "framework" };
|
|
43
|
+
}
|
|
44
|
+
if (ref.referenceName.endsWith("Repository")) {
|
|
45
|
+
const id = resolveInDirs(ref.referenceName, ["repository", "repositories"], ".java", context);
|
|
46
|
+
if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: "framework" };
|
|
47
|
+
}
|
|
48
|
+
if (ref.referenceName.endsWith("Controller")) {
|
|
49
|
+
const id = resolveInDirs(ref.referenceName, ["controller", "controllers"], ".java", context);
|
|
50
|
+
if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: "framework" };
|
|
51
|
+
}
|
|
52
|
+
if (/^[A-Z][a-zA-Z]+$/.test(ref.referenceName)) {
|
|
53
|
+
const id = resolveInDirs(ref.referenceName, ["entity", "entities", "model", "models", "domain"], ".java", context);
|
|
54
|
+
if (id) return { original: ref, targetNodeId: id, confidence: 0.7, resolvedBy: "framework" };
|
|
55
|
+
}
|
|
56
|
+
return null;
|
|
57
|
+
},
|
|
58
|
+
extractNodes(filePath, content) {
|
|
59
|
+
const nodes = [];
|
|
60
|
+
const now = Date.now();
|
|
61
|
+
const mappingPattern = /@(Get|Post|Put|Patch|Delete|Request)Mapping\s*\(\s*(?:(?:value|path)\s*=\s*)?["']([^"']+)["']/g;
|
|
62
|
+
let match;
|
|
63
|
+
while ((match = mappingPattern.exec(content)) !== null) {
|
|
64
|
+
const [, type, path] = match;
|
|
65
|
+
const method = type === "Request" ? "ANY" : type.toUpperCase();
|
|
66
|
+
const line = content.slice(0, match.index).split("\n").length;
|
|
67
|
+
nodes.push({ id: `route:${filePath}:${method}:${path}:${line}`, kind: "route", name: `${method} ${path}`, qualifiedName: `${filePath}::${method}:${path}`, filePath, startLine: line, endLine: line, startColumn: 0, endColumn: match[0].length, language: "java", updatedAt: now });
|
|
68
|
+
}
|
|
69
|
+
return nodes;
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
function resolveInDirs(name, dirs, ext, context) {
|
|
73
|
+
for (const file of context.getAllFiles()) {
|
|
74
|
+
if (file.endsWith(ext) && dirs.some((d) => file.includes(`/${d}/`))) {
|
|
75
|
+
const node = context.getNodesInFile(file).find(
|
|
76
|
+
(n) => (n.kind === "class" || n.kind === "interface") && n.name === name
|
|
77
|
+
);
|
|
78
|
+
if (node) return node.id;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
84
|
+
0 && (module.exports = {
|
|
85
|
+
springResolver
|
|
86
|
+
});
|
|
87
|
+
//# sourceMappingURL=java.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/frameworks/java.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Java / Spring Boot Framework Resolver\n *\n * Mirrors CodeGraph src/resolution/frameworks/java.ts\n */\n\nimport type { Node } from '../types';\nimport type { FrameworkResolver, UnresolvedRef, ResolvedRef, ResolutionContext } from './types';\n\nexport const springResolver: FrameworkResolver = {\n name: 'spring',\n detect(context: ResolutionContext): boolean {\n for (const file of ['pom.xml','build.gradle','build.gradle.kts']) {\n const content = context.readFile(file);\n if (content && (content.includes('spring-boot') || content.includes('springframework'))) return true;\n }\n for (const file of context.getAllFiles()) {\n if (file.endsWith('.java')) {\n const content = context.readFile(file);\n if (content && (content.includes('@SpringBootApplication') || content.includes('@RestController') ||\n content.includes('@Service') || content.includes('@Repository'))) return true;\n }\n }\n return false;\n },\n resolve(ref: UnresolvedRef, context: ResolutionContext): ResolvedRef | null {\n if (ref.referenceName.endsWith('Service')) {\n const id = resolveInDirs(ref.referenceName, ['service','services'], '.java', context);\n if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: 'framework' };\n }\n if (ref.referenceName.endsWith('Repository')) {\n const id = resolveInDirs(ref.referenceName, ['repository','repositories'], '.java', context);\n if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: 'framework' };\n }\n if (ref.referenceName.endsWith('Controller')) {\n const id = resolveInDirs(ref.referenceName, ['controller','controllers'], '.java', context);\n if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: 'framework' };\n }\n if (/^[A-Z][a-zA-Z]+$/.test(ref.referenceName)) {\n const id = resolveInDirs(ref.referenceName, ['entity','entities','model','models','domain'], '.java', context);\n if (id) return { original: ref, targetNodeId: id, confidence: 0.7, resolvedBy: 'framework' };\n }\n return null;\n },\n extractNodes(filePath: string, content: string): Node[] {\n const nodes: Node[] = [];\n const now = Date.now();\n const mappingPattern = /@(Get|Post|Put|Patch|Delete|Request)Mapping\\s*\\(\\s*(?:(?:value|path)\\s*=\\s*)?[\"']([^\"']+)[\"']/g;\n let match;\n while ((match = mappingPattern.exec(content)) !== null) {\n const [, type, path] = match;\n const method = type === 'Request' ? 'ANY' : type!.toUpperCase();\n const line = content.slice(0, match.index).split('\\n').length;\n nodes.push({ id: `route:${filePath}:${method}:${path}:${line}`, kind: 'route', name: `${method} ${path}`, qualifiedName: `${filePath}::${method}:${path}`, filePath, startLine: line, endLine: line, startColumn: 0, endColumn: match[0].length, language: 'java', updatedAt: now });\n }\n return nodes;\n },\n};\n\nfunction resolveInDirs(name: string, dirs: string[], ext: string, context: ResolutionContext): string | null {\n for (const file of context.getAllFiles()) {\n if (file.endsWith(ext) && dirs.some(d => file.includes(`/${d}/`))) {\n const node = context.getNodesInFile(file).find(\n n => (n.kind === 'class' || n.kind === 'interface') && n.name === name\n );\n if (node) return node.id;\n }\n }\n return null;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Laravel Framework Resolver
|
|
3
|
+
*
|
|
4
|
+
* Mirrors CodeGraph src/resolution/frameworks/laravel.ts
|
|
5
|
+
*/
|
|
6
|
+
import type { FrameworkResolver } from './types';
|
|
7
|
+
export declare const FACADE_MAPPINGS: Record<string, string>;
|
|
8
|
+
export declare const laravelResolver: FrameworkResolver;
|
|
9
|
+
//# sourceMappingURL=laravel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"laravel.d.ts","sourceRoot":"","sources":["../../src/frameworks/laravel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAiD,MAAM,SAAS,CAAC;AAEhG,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqBlD,CAAC;AAIF,eAAO,MAAM,eAAe,EAAE,iBAqC7B,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
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 laravel_exports = {};
|
|
20
|
+
__export(laravel_exports, {
|
|
21
|
+
FACADE_MAPPINGS: () => FACADE_MAPPINGS,
|
|
22
|
+
laravelResolver: () => laravelResolver
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(laravel_exports);
|
|
25
|
+
const FACADE_MAPPINGS = {
|
|
26
|
+
Auth: "Illuminate\\Auth\\AuthManager",
|
|
27
|
+
Cache: "Illuminate\\Cache\\CacheManager",
|
|
28
|
+
Config: "Illuminate\\Config\\Repository",
|
|
29
|
+
DB: "Illuminate\\Database\\DatabaseManager",
|
|
30
|
+
Event: "Illuminate\\Events\\Dispatcher",
|
|
31
|
+
File: "Illuminate\\Filesystem\\Filesystem",
|
|
32
|
+
Gate: "Illuminate\\Auth\\Access\\Gate",
|
|
33
|
+
Hash: "Illuminate\\Hashing\\HashManager",
|
|
34
|
+
Log: "Illuminate\\Log\\LogManager",
|
|
35
|
+
Mail: "Illuminate\\Mail\\Mailer",
|
|
36
|
+
Queue: "Illuminate\\Queue\\QueueManager",
|
|
37
|
+
Redis: "Illuminate\\Redis\\RedisManager",
|
|
38
|
+
Request: "Illuminate\\Http\\Request",
|
|
39
|
+
Response: "Illuminate\\Http\\Response",
|
|
40
|
+
Route: "Illuminate\\Routing\\Router",
|
|
41
|
+
Session: "Illuminate\\Session\\SessionManager",
|
|
42
|
+
Storage: "Illuminate\\Filesystem\\FilesystemManager",
|
|
43
|
+
URL: "Illuminate\\Routing\\UrlGenerator",
|
|
44
|
+
Validator: "Illuminate\\Validation\\Factory",
|
|
45
|
+
View: "Illuminate\\View\\Factory"
|
|
46
|
+
};
|
|
47
|
+
const LARAVEL_HELPERS = /* @__PURE__ */ new Set(["route", "view", "config", "env", "app", "abort", "redirect", "response", "request", "session", "url", "asset", "mix"]);
|
|
48
|
+
const laravelResolver = {
|
|
49
|
+
name: "laravel",
|
|
50
|
+
detect(context) {
|
|
51
|
+
return context.fileExists("artisan") || context.fileExists("app/Http/Kernel.php");
|
|
52
|
+
},
|
|
53
|
+
resolve(ref, context) {
|
|
54
|
+
const modelMatch = ref.referenceName.match(/^([A-Z][a-zA-Z]+)::(\w+)$/);
|
|
55
|
+
if (modelMatch) {
|
|
56
|
+
const id = resolveModelCall(modelMatch[1], modelMatch[2], context);
|
|
57
|
+
if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: "framework" };
|
|
58
|
+
}
|
|
59
|
+
if (LARAVEL_HELPERS.has(ref.referenceName)) return null;
|
|
60
|
+
const controllerMatch = ref.referenceName.match(/^([A-Z][a-zA-Z]+Controller)@(\w+)$/);
|
|
61
|
+
if (controllerMatch) {
|
|
62
|
+
const id = resolveControllerMethod(controllerMatch[1], controllerMatch[2], context);
|
|
63
|
+
if (id) return { original: ref, targetNodeId: id, confidence: 0.9, resolvedBy: "framework" };
|
|
64
|
+
}
|
|
65
|
+
return null;
|
|
66
|
+
},
|
|
67
|
+
extractNodes(filePath, content) {
|
|
68
|
+
const nodes = [];
|
|
69
|
+
const now = Date.now();
|
|
70
|
+
const routePattern = /Route::(get|post|put|patch|delete|options|any)\(\s*['"]([^'"]+)['"]/g;
|
|
71
|
+
const resourcePattern = /Route::(?:api)?[Rr]esource\(\s*['"]([^'"]+)['"]/g;
|
|
72
|
+
let match;
|
|
73
|
+
while ((match = routePattern.exec(content)) !== null) {
|
|
74
|
+
const [, method, path] = match;
|
|
75
|
+
const line = content.slice(0, match.index).split("\n").length;
|
|
76
|
+
nodes.push({ id: `route:${filePath}:${method.toUpperCase()}:${path}:${line}`, kind: "route", name: `${method.toUpperCase()} ${path}`, qualifiedName: `${filePath}::${method.toUpperCase()}:${path}`, filePath, startLine: line, endLine: line, startColumn: 0, endColumn: match[0].length, language: "php", updatedAt: now });
|
|
77
|
+
}
|
|
78
|
+
while ((match = resourcePattern.exec(content)) !== null) {
|
|
79
|
+
const [, name] = match;
|
|
80
|
+
const line = content.slice(0, match.index).split("\n").length;
|
|
81
|
+
nodes.push({ id: `route:${filePath}:resource:${name}:${line}`, kind: "route", name: `resource:${name}`, qualifiedName: `${filePath}::resource:${name}`, filePath, startLine: line, endLine: line, startColumn: 0, endColumn: match[0].length, language: "php", updatedAt: now });
|
|
82
|
+
}
|
|
83
|
+
return nodes;
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
function resolveModelCall(className, methodName, context) {
|
|
87
|
+
for (const modelPath of [`app/Models/${className}.php`, `app/${className}.php`]) {
|
|
88
|
+
if (context.fileExists(modelPath)) {
|
|
89
|
+
const nodes = context.getNodesInFile(modelPath);
|
|
90
|
+
const node = nodes.find((n) => n.kind === "method" && n.name === methodName) ?? nodes.find((n) => n.kind === "class" && n.name === className);
|
|
91
|
+
if (node) return node.id;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return null;
|
|
95
|
+
}
|
|
96
|
+
function resolveControllerMethod(controller, method, context) {
|
|
97
|
+
const controllerPath = `app/Http/Controllers/${controller}.php`;
|
|
98
|
+
if (context.fileExists(controllerPath)) {
|
|
99
|
+
const node = context.getNodesInFile(controllerPath).find((n) => n.kind === "method" && n.name === method);
|
|
100
|
+
if (node) return node.id;
|
|
101
|
+
}
|
|
102
|
+
for (const file of context.getAllFiles()) {
|
|
103
|
+
if (file.endsWith(`${controller}.php`) && file.includes("Controllers")) {
|
|
104
|
+
const node = context.getNodesInFile(file).find((n) => n.kind === "method" && n.name === method);
|
|
105
|
+
if (node) return node.id;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
111
|
+
0 && (module.exports = {
|
|
112
|
+
FACADE_MAPPINGS,
|
|
113
|
+
laravelResolver
|
|
114
|
+
});
|
|
115
|
+
//# sourceMappingURL=laravel.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/frameworks/laravel.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Laravel Framework Resolver\n *\n * Mirrors CodeGraph src/resolution/frameworks/laravel.ts\n */\n\nimport type { Node } from '../types';\nimport type { FrameworkResolver, UnresolvedRef, ResolvedRef, ResolutionContext } from './types';\n\nexport const FACADE_MAPPINGS: Record<string, string> = {\n Auth: 'Illuminate\\\\Auth\\\\AuthManager',\n Cache: 'Illuminate\\\\Cache\\\\CacheManager',\n Config: 'Illuminate\\\\Config\\\\Repository',\n DB: 'Illuminate\\\\Database\\\\DatabaseManager',\n Event: 'Illuminate\\\\Events\\\\Dispatcher',\n File: 'Illuminate\\\\Filesystem\\\\Filesystem',\n Gate: 'Illuminate\\\\Auth\\\\Access\\\\Gate',\n Hash: 'Illuminate\\\\Hashing\\\\HashManager',\n Log: 'Illuminate\\\\Log\\\\LogManager',\n Mail: 'Illuminate\\\\Mail\\\\Mailer',\n Queue: 'Illuminate\\\\Queue\\\\QueueManager',\n Redis: 'Illuminate\\\\Redis\\\\RedisManager',\n Request: 'Illuminate\\\\Http\\\\Request',\n Response: 'Illuminate\\\\Http\\\\Response',\n Route: 'Illuminate\\\\Routing\\\\Router',\n Session: 'Illuminate\\\\Session\\\\SessionManager',\n Storage: 'Illuminate\\\\Filesystem\\\\FilesystemManager',\n URL: 'Illuminate\\\\Routing\\\\UrlGenerator',\n Validator: 'Illuminate\\\\Validation\\\\Factory',\n View: 'Illuminate\\\\View\\\\Factory',\n};\n\nconst LARAVEL_HELPERS = new Set(['route','view','config','env','app','abort','redirect','response','request','session','url','asset','mix']);\n\nexport const laravelResolver: FrameworkResolver = {\n name: 'laravel',\n detect(context: ResolutionContext): boolean {\n return context.fileExists('artisan') || context.fileExists('app/Http/Kernel.php');\n },\n resolve(ref: UnresolvedRef, context: ResolutionContext): ResolvedRef | null {\n const modelMatch = ref.referenceName.match(/^([A-Z][a-zA-Z]+)::(\\w+)$/);\n if (modelMatch) {\n const id = resolveModelCall(modelMatch[1]!, modelMatch[2]!, context);\n if (id) return { original: ref, targetNodeId: id, confidence: 0.85, resolvedBy: 'framework' };\n }\n if (LARAVEL_HELPERS.has(ref.referenceName)) return null;\n const controllerMatch = ref.referenceName.match(/^([A-Z][a-zA-Z]+Controller)@(\\w+)$/);\n if (controllerMatch) {\n const id = resolveControllerMethod(controllerMatch[1]!, controllerMatch[2]!, context);\n if (id) return { original: ref, targetNodeId: id, confidence: 0.9, resolvedBy: 'framework' };\n }\n return null;\n },\n extractNodes(filePath: string, content: string): Node[] {\n const nodes: Node[] = [];\n const now = Date.now();\n const routePattern = /Route::(get|post|put|patch|delete|options|any)\\(\\s*['\"]([^'\"]+)['\"]/g;\n const resourcePattern = /Route::(?:api)?[Rr]esource\\(\\s*['\"]([^'\"]+)['\"]/g;\n let match;\n while ((match = routePattern.exec(content)) !== null) {\n const [, method, path] = match;\n const line = content.slice(0, match.index).split('\\n').length;\n nodes.push({ id: `route:${filePath}:${method!.toUpperCase()}:${path}:${line}`, kind: 'route', name: `${method!.toUpperCase()} ${path}`, qualifiedName: `${filePath}::${method!.toUpperCase()}:${path}`, filePath, startLine: line, endLine: line, startColumn: 0, endColumn: match[0].length, language: 'php', updatedAt: now });\n }\n while ((match = resourcePattern.exec(content)) !== null) {\n const [, name] = match;\n const line = content.slice(0, match.index).split('\\n').length;\n nodes.push({ id: `route:${filePath}:resource:${name}:${line}`, kind: 'route', name: `resource:${name}`, qualifiedName: `${filePath}::resource:${name}`, filePath, startLine: line, endLine: line, startColumn: 0, endColumn: match[0].length, language: 'php', updatedAt: now });\n }\n return nodes;\n },\n};\n\nfunction resolveModelCall(className: string, methodName: string, context: ResolutionContext): string | null {\n for (const modelPath of [`app/Models/${className}.php`, `app/${className}.php`]) {\n if (context.fileExists(modelPath)) {\n const nodes = context.getNodesInFile(modelPath);\n const node = nodes.find(n => n.kind === 'method' && n.name === methodName) ??\n nodes.find(n => n.kind === 'class' && n.name === className);\n if (node) return node.id;\n }\n }\n return null;\n}\n\nfunction resolveControllerMethod(controller: string, method: string, context: ResolutionContext): string | null {\n const controllerPath = `app/Http/Controllers/${controller}.php`;\n if (context.fileExists(controllerPath)) {\n const node = context.getNodesInFile(controllerPath).find(n => n.kind === 'method' && n.name === method);\n if (node) return node.id;\n }\n for (const file of context.getAllFiles()) {\n if (file.endsWith(`${controller}.php`) && file.includes('Controllers')) {\n const node = context.getNodesInFile(file).find(n => n.kind === 'method' && n.name === method);\n if (node) return node.id;\n }\n }\n return null;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Python Framework Resolver (Django, Flask, FastAPI)
|
|
3
|
+
*
|
|
4
|
+
* Mirrors CodeGraph src/resolution/frameworks/python.ts
|
|
5
|
+
*/
|
|
6
|
+
import type { FrameworkResolver } from './types';
|
|
7
|
+
export declare const djangoResolver: FrameworkResolver;
|
|
8
|
+
export declare const flaskResolver: FrameworkResolver;
|
|
9
|
+
export declare const fastapiResolver: FrameworkResolver;
|
|
10
|
+
//# sourceMappingURL=python.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/frameworks/python.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAiD,MAAM,SAAS,CAAC;AAEhG,eAAO,MAAM,cAAc,EAAE,iBAuC5B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,iBAoC3B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,iBAqC7B,CAAC"}
|