@lzehrung/codegraph 3.0.1 → 3.1.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 +17 -17
- package/codegraph-skill/codegraph/SKILL.md +6 -2
- package/dist/agent/artifact.d.ts.map +1 -1
- package/dist/agent/artifact.js +4 -9
- package/dist/agent/artifact.js.map +1 -1
- package/dist/agent/call-hierarchy.d.ts +4 -2
- package/dist/agent/call-hierarchy.d.ts.map +1 -1
- package/dist/agent/call-hierarchy.js +20 -29
- package/dist/agent/call-hierarchy.js.map +1 -1
- package/dist/agent/explain.d.ts.map +1 -1
- package/dist/agent/explain.js +24 -18
- package/dist/agent/explain.js.map +1 -1
- package/dist/agent/explore.d.ts.map +1 -1
- package/dist/agent/explore.js +2 -11
- package/dist/agent/explore.js.map +1 -1
- package/dist/agent/file-view.d.ts.map +1 -1
- package/dist/agent/file-view.js +4 -12
- package/dist/agent/file-view.js.map +1 -1
- package/dist/agent/normalize.d.ts +0 -3
- package/dist/agent/normalize.d.ts.map +1 -1
- package/dist/agent/normalize.js +1 -7
- package/dist/agent/normalize.js.map +1 -1
- package/dist/agent/orient.d.ts.map +1 -1
- package/dist/agent/orient.js +2 -6
- package/dist/agent/orient.js.map +1 -1
- package/dist/agent/packet.d.ts.map +1 -1
- package/dist/agent/packet.js +2 -5
- package/dist/agent/packet.js.map +1 -1
- package/dist/agent/query-index/content.d.ts.map +1 -1
- package/dist/agent/query-index/content.js +2 -6
- package/dist/agent/query-index/content.js.map +1 -1
- package/dist/agent/query-index/update.d.ts.map +1 -1
- package/dist/agent/query-index/update.js +8 -45
- package/dist/agent/query-index/update.js.map +1 -1
- package/dist/agent/query-index/worker-pool.d.ts.map +1 -1
- package/dist/agent/query-index/worker-pool.js +2 -1
- package/dist/agent/query-index/worker-pool.js.map +1 -1
- package/dist/agent/refactor-plan.d.ts +2 -2
- package/dist/agent/refactor-plan.d.ts.map +1 -1
- package/dist/agent/refactor-plan.js +11 -57
- package/dist/agent/refactor-plan.js.map +1 -1
- package/dist/agent/rename-preview.d.ts.map +1 -1
- package/dist/agent/rename-preview.js +166 -23
- package/dist/agent/rename-preview.js.map +1 -1
- package/dist/agent/search.d.ts +13 -0
- package/dist/agent/search.d.ts.map +1 -1
- package/dist/agent/search.js +17 -26
- package/dist/agent/search.js.map +1 -1
- package/dist/agent/semantic-symbols.d.ts +1 -1
- package/dist/agent/semantic-symbols.d.ts.map +1 -1
- package/dist/agent/semantic-symbols.js +2 -5
- package/dist/agent/semantic-symbols.js.map +1 -1
- package/dist/agent/semantic.d.ts +5 -0
- package/dist/agent/semantic.d.ts.map +1 -1
- package/dist/agent/semantic.js +12 -1
- package/dist/agent/semantic.js.map +1 -1
- package/dist/agent/session.d.ts +9 -0
- package/dist/agent/session.d.ts.map +1 -1
- package/dist/agent/session.js +59 -41
- package/dist/agent/session.js.map +1 -1
- package/dist/agent/type-hierarchy.d.ts +4 -2
- package/dist/agent/type-hierarchy.d.ts.map +1 -1
- package/dist/agent/type-hierarchy.js +19 -31
- package/dist/agent/type-hierarchy.js.map +1 -1
- package/dist/agent/workspace-symbols.d.ts +1 -1
- package/dist/agent/workspace-symbols.d.ts.map +1 -1
- package/dist/agent/workspace-symbols.js +7 -15
- package/dist/agent/workspace-symbols.js.map +1 -1
- package/dist/analysis-summary.d.ts +1 -4
- package/dist/analysis-summary.d.ts.map +1 -1
- package/dist/analysis-summary.js +58 -19
- package/dist/analysis-summary.js.map +1 -1
- package/dist/bin/cli.js +41060 -27641
- package/dist/bin/query-index-worker.js +268 -241
- package/dist/bootstrap/tree-sitter-languages.d.ts +2 -0
- package/dist/bootstrap/tree-sitter-languages.d.ts.map +1 -1
- package/dist/bootstrap/tree-sitter-languages.js +6 -19
- package/dist/bootstrap/tree-sitter-languages.js.map +1 -1
- package/dist/chunking/chunk-matches.d.ts.map +1 -1
- package/dist/chunking/chunk-matches.js +6 -42
- package/dist/chunking/chunk-matches.js.map +1 -1
- package/dist/chunking/chunk-split.d.ts +7 -0
- package/dist/chunking/chunk-split.d.ts.map +1 -1
- package/dist/chunking/chunk-split.js +3 -3
- package/dist/chunking/chunk-split.js.map +1 -1
- package/dist/chunking/chunk-text-file.js +2 -30
- package/dist/chunking/chunk-text-file.js.map +1 -1
- package/dist/cli/affected.d.ts.map +1 -1
- package/dist/cli/affected.js +1 -9
- package/dist/cli/affected.js.map +1 -1
- package/dist/cli/call-hierarchy.js +3 -6
- package/dist/cli/call-hierarchy.js.map +1 -1
- package/dist/cli/chunk.d.ts.map +1 -1
- package/dist/cli/chunk.js +4 -11
- package/dist/cli/chunk.js.map +1 -1
- package/dist/cli/command-table.d.ts.map +1 -1
- package/dist/cli/command-table.js +7 -0
- package/dist/cli/command-table.js.map +1 -1
- package/dist/cli/context.d.ts +1 -0
- package/dist/cli/context.d.ts.map +1 -1
- package/dist/cli/context.js +1 -1
- package/dist/cli/context.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +1 -11
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/duplicates.d.ts +5 -0
- package/dist/cli/duplicates.d.ts.map +1 -1
- package/dist/cli/duplicates.js +15 -2
- package/dist/cli/duplicates.js.map +1 -1
- package/dist/cli/graph.d.ts +4 -12
- package/dist/cli/graph.d.ts.map +1 -1
- package/dist/cli/graph.js +17 -8
- package/dist/cli/graph.js.map +1 -1
- package/dist/cli/help.d.ts +4 -4
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +17 -9
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/index.d.ts +2 -12
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/links.d.ts.map +1 -1
- package/dist/cli/links.js +4 -10
- package/dist/cli/links.js.map +1 -1
- package/dist/cli/mcp.d.ts.map +1 -1
- package/dist/cli/mcp.js +5 -0
- package/dist/cli/mcp.js.map +1 -1
- package/dist/cli/module-locals.d.ts +8 -0
- package/dist/cli/module-locals.d.ts.map +1 -0
- package/dist/cli/module-locals.js +9 -0
- package/dist/cli/module-locals.js.map +1 -0
- package/dist/cli/navigation.d.ts +2 -0
- package/dist/cli/navigation.d.ts.map +1 -1
- package/dist/cli/navigation.js +3 -5
- package/dist/cli/navigation.js.map +1 -1
- package/dist/cli/options.d.ts.map +1 -1
- package/dist/cli/options.js +6 -1
- package/dist/cli/options.js.map +1 -1
- package/dist/cli/pretty.d.ts +1 -0
- package/dist/cli/pretty.d.ts.map +1 -1
- package/dist/cli/pretty.js +6 -8
- package/dist/cli/pretty.js.map +1 -1
- package/dist/cli/progress.d.ts.map +1 -1
- package/dist/cli/progress.js +42 -16
- package/dist/cli/progress.js.map +1 -1
- package/dist/cli/refactor-plan.js +2 -5
- package/dist/cli/refactor-plan.js.map +1 -1
- package/dist/cli/rename-preview.js +2 -5
- package/dist/cli/rename-preview.js.map +1 -1
- package/dist/cli/review.d.ts +6 -16
- package/dist/cli/review.d.ts.map +1 -1
- package/dist/cli/review.js +2 -0
- package/dist/cli/review.js.map +1 -1
- package/dist/cli/server.d.ts.map +1 -1
- package/dist/cli/server.js +9 -10
- package/dist/cli/server.js.map +1 -1
- package/dist/cli/type-hierarchy.js +8 -8
- package/dist/cli/type-hierarchy.js.map +1 -1
- package/dist/cli/viewer.js +1 -1
- package/dist/cli/viewer.js.map +1 -1
- package/dist/document-links/asciidoc.d.ts.map +1 -1
- package/dist/document-links/asciidoc.js +4 -16
- package/dist/document-links/asciidoc.js.map +1 -1
- package/dist/document-links/check.d.ts.map +1 -1
- package/dist/document-links/check.js +1 -3
- package/dist/document-links/check.js.map +1 -1
- package/dist/document-links/html.d.ts.map +1 -1
- package/dist/document-links/html.js +6 -44
- package/dist/document-links/html.js.map +1 -1
- package/dist/document-links/markdown.d.ts.map +1 -1
- package/dist/document-links/markdown.js +4 -13
- package/dist/document-links/markdown.js.map +1 -1
- package/dist/document-links/rst.d.ts.map +1 -1
- package/dist/document-links/rst.js +7 -31
- package/dist/document-links/rst.js.map +1 -1
- package/dist/document-links/sfc.d.ts.map +1 -1
- package/dist/document-links/sfc.js +2 -5
- package/dist/document-links/sfc.js.map +1 -1
- package/dist/document-links/shared.d.ts +2 -0
- package/dist/document-links/shared.d.ts.map +1 -1
- package/dist/document-links/shared.js +13 -0
- package/dist/document-links/shared.js.map +1 -1
- package/dist/drift/artifact.d.ts.map +1 -1
- package/dist/drift/artifact.js +4 -27
- package/dist/drift/artifact.js.map +1 -1
- package/dist/drift/git.d.ts.map +1 -1
- package/dist/drift/git.js +10 -2
- package/dist/drift/git.js.map +1 -1
- package/dist/drift/graph-edges.d.ts +4 -0
- package/dist/drift/graph-edges.d.ts.map +1 -0
- package/dist/drift/graph-edges.js +15 -0
- package/dist/drift/graph-edges.js.map +1 -0
- package/dist/drift/snapshot.d.ts.map +1 -1
- package/dist/drift/snapshot.js +2 -17
- package/dist/drift/snapshot.js.map +1 -1
- package/dist/duplicates/candidates.d.ts +61 -0
- package/dist/duplicates/candidates.d.ts.map +1 -0
- package/dist/duplicates/candidates.js +873 -0
- package/dist/duplicates/candidates.js.map +1 -0
- package/dist/duplicates/progress.d.ts +17 -0
- package/dist/duplicates/progress.d.ts.map +1 -0
- package/dist/duplicates/progress.js +57 -0
- package/dist/duplicates/progress.js.map +1 -0
- package/dist/duplicates/scoring.d.ts +9 -40
- package/dist/duplicates/scoring.d.ts.map +1 -1
- package/dist/duplicates/scoring.js +34 -414
- package/dist/duplicates/scoring.js.map +1 -1
- package/dist/duplicates/types.d.ts +30 -1
- package/dist/duplicates/types.d.ts.map +1 -1
- package/dist/duplicates/unit-cache.d.ts +11 -1
- package/dist/duplicates/unit-cache.d.ts.map +1 -1
- package/dist/duplicates/unit-cache.js +20 -2
- package/dist/duplicates/unit-cache.js.map +1 -1
- package/dist/duplicates/units.d.ts +4 -2
- package/dist/duplicates/units.d.ts.map +1 -1
- package/dist/duplicates/units.js +47 -25
- package/dist/duplicates/units.js.map +1 -1
- package/dist/duplicates.d.ts +1 -0
- package/dist/duplicates.d.ts.map +1 -1
- package/dist/duplicates.js +116 -62
- package/dist/duplicates.js.map +1 -1
- package/dist/graph-builder.d.ts +1 -1
- package/dist/graph-builder.d.ts.map +1 -1
- package/dist/graph-builder.js +3 -2
- package/dist/graph-builder.js.map +1 -1
- package/dist/graph-edge-collector.d.ts +3 -1
- package/dist/graph-edge-collector.d.ts.map +1 -1
- package/dist/graph-edge-collector.js +38 -6
- package/dist/graph-edge-collector.js.map +1 -1
- package/dist/graphs/angularjs.d.ts.map +1 -1
- package/dist/graphs/angularjs.js +2 -9
- package/dist/graphs/angularjs.js.map +1 -1
- package/dist/graphs/edge-resolution.d.ts +4 -0
- package/dist/graphs/edge-resolution.d.ts.map +1 -1
- package/dist/graphs/edge-resolution.js +2 -0
- package/dist/graphs/edge-resolution.js.map +1 -1
- package/dist/graphs/external/manifests.d.ts.map +1 -1
- package/dist/graphs/external/manifests.js +1 -6
- package/dist/graphs/external/manifests.js.map +1 -1
- package/dist/graphs/specifiers.d.ts.map +1 -1
- package/dist/graphs/specifiers.js +47 -26
- package/dist/graphs/specifiers.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts +2 -0
- package/dist/graphs/symbol-graph-detailed/edge-passes.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/edge-passes.js +9 -3
- package/dist/graphs/symbol-graph-detailed/edge-passes.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts +3 -3
- package/dist/graphs/symbol-graph-detailed/receiver-calls.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed/receiver-calls.js +2 -26
- package/dist/graphs/symbol-graph-detailed/receiver-calls.js.map +1 -1
- package/dist/graphs/symbol-graph-detailed.d.ts.map +1 -1
- package/dist/graphs/symbol-graph-detailed.js +38 -1
- package/dist/graphs/symbol-graph-detailed.js.map +1 -1
- package/dist/impact/analyzer.d.ts.map +1 -1
- package/dist/impact/analyzer.js +23 -17
- package/dist/impact/analyzer.js.map +1 -1
- package/dist/impact/budgets.d.ts.map +1 -1
- package/dist/impact/budgets.js +3 -9
- package/dist/impact/budgets.js.map +1 -1
- package/dist/impact/call-compatibility.d.ts.map +1 -1
- package/dist/impact/call-compatibility.js +3 -12
- package/dist/impact/call-compatibility.js.map +1 -1
- package/dist/impact/context.d.ts +6 -0
- package/dist/impact/context.d.ts.map +1 -1
- package/dist/impact/context.js +2 -2
- package/dist/impact/context.js.map +1 -1
- package/dist/impact/direct.d.ts.map +1 -1
- package/dist/impact/direct.js +2 -6
- package/dist/impact/direct.js.map +1 -1
- package/dist/impact/map.d.ts +3 -1
- package/dist/impact/map.d.ts.map +1 -1
- package/dist/impact/map.js +12 -5
- package/dist/impact/map.js.map +1 -1
- package/dist/impact/providers/base.js +1 -1
- package/dist/impact/providers/base.js.map +1 -1
- package/dist/impact/reference-cache.d.ts.map +1 -1
- package/dist/impact/reference-cache.js +1 -24
- package/dist/impact/reference-cache.js.map +1 -1
- package/dist/impact/report-shared.d.ts +2 -1
- package/dist/impact/report-shared.d.ts.map +1 -1
- package/dist/impact/report-shared.js +10 -0
- package/dist/impact/report-shared.js.map +1 -1
- package/dist/impact/report-suggestions.d.ts.map +1 -1
- package/dist/impact/report-suggestions.js +2 -8
- package/dist/impact/report-suggestions.js.map +1 -1
- package/dist/impact/report.d.ts.map +1 -1
- package/dist/impact/report.js +2 -8
- package/dist/impact/report.js.map +1 -1
- package/dist/impact/streaming.d.ts.map +1 -1
- package/dist/impact/streaming.js +3 -8
- package/dist/impact/streaming.js.map +1 -1
- package/dist/indexer/build-cache/manifest.d.ts.map +1 -1
- package/dist/indexer/build-cache/manifest.js +10 -108
- package/dist/indexer/build-cache/manifest.js.map +1 -1
- package/dist/indexer/build-cache/module-cache.d.ts +6 -1
- package/dist/indexer/build-cache/module-cache.d.ts.map +1 -1
- package/dist/indexer/build-cache/module-cache.js +25 -2
- package/dist/indexer/build-cache/module-cache.js.map +1 -1
- package/dist/indexer/build-cache/options.d.ts +38 -1
- package/dist/indexer/build-cache/options.d.ts.map +1 -1
- package/dist/indexer/build-cache/options.js +38 -1
- package/dist/indexer/build-cache/options.js.map +1 -1
- package/dist/indexer/build-cache/project-snapshot.d.ts.map +1 -1
- package/dist/indexer/build-cache/project-snapshot.js +48 -99
- package/dist/indexer/build-cache/project-snapshot.js.map +1 -1
- package/dist/indexer/build-cache/reports.d.ts +1 -0
- package/dist/indexer/build-cache/reports.d.ts.map +1 -1
- package/dist/indexer/build-cache/reports.js +10 -0
- package/dist/indexer/build-cache/reports.js.map +1 -1
- package/dist/indexer/build-index.d.ts +2 -0
- package/dist/indexer/build-index.d.ts.map +1 -1
- package/dist/indexer/build-index.js +187 -57
- package/dist/indexer/build-index.js.map +1 -1
- package/dist/indexer/build-workers.d.ts +7 -1
- package/dist/indexer/build-workers.d.ts.map +1 -1
- package/dist/indexer/build-workers.js +12 -0
- package/dist/indexer/build-workers.js.map +1 -1
- package/dist/indexer/call-hierarchy.d.ts.map +1 -1
- package/dist/indexer/call-hierarchy.js +5 -17
- package/dist/indexer/call-hierarchy.js.map +1 -1
- package/dist/indexer/compilation-units.d.ts +32 -20
- package/dist/indexer/compilation-units.d.ts.map +1 -1
- package/dist/indexer/compilation-units.js +139 -145
- package/dist/indexer/compilation-units.js.map +1 -1
- package/dist/indexer/cpp-callables.d.ts.map +1 -1
- package/dist/indexer/cpp-callables.js +2 -7
- package/dist/indexer/cpp-callables.js.map +1 -1
- package/dist/indexer/import-types.d.ts +5 -0
- package/dist/indexer/import-types.d.ts.map +1 -1
- package/dist/indexer/import-types.js.map +1 -1
- package/dist/indexer/imports/binding-ranges.d.ts +5 -12
- package/dist/indexer/imports/binding-ranges.d.ts.map +1 -1
- package/dist/indexer/imports/binding-ranges.js +13 -19
- package/dist/indexer/imports/binding-ranges.js.map +1 -1
- package/dist/indexer/imports/context.d.ts +6 -0
- package/dist/indexer/imports/context.d.ts.map +1 -1
- package/dist/indexer/imports/import-binding-tables.d.ts +28 -13
- package/dist/indexer/imports/import-binding-tables.d.ts.map +1 -1
- package/dist/indexer/imports/import-binding-tables.js +179 -178
- package/dist/indexer/imports/import-binding-tables.js.map +1 -1
- package/dist/indexer/imports/js-text-imports.d.ts +0 -1
- package/dist/indexer/imports/js-text-imports.d.ts.map +1 -1
- package/dist/indexer/imports/js-text-imports.js +0 -176
- package/dist/indexer/imports/js-text-imports.js.map +1 -1
- package/dist/indexer/imports/language-specific.d.ts.map +1 -1
- package/dist/indexer/imports/language-specific.js +4 -8
- package/dist/indexer/imports/language-specific.js.map +1 -1
- package/dist/indexer/imports/python.d.ts +0 -1
- package/dist/indexer/imports/python.d.ts.map +1 -1
- package/dist/indexer/imports/python.js +1 -29
- package/dist/indexer/imports/python.js.map +1 -1
- package/dist/indexer/imports/text-import-extractors.d.ts +2 -9
- package/dist/indexer/imports/text-import-extractors.d.ts.map +1 -1
- package/dist/indexer/imports/text-import-extractors.js +0 -284
- package/dist/indexer/imports/text-import-extractors.js.map +1 -1
- package/dist/indexer/imports.d.ts +15 -0
- package/dist/indexer/imports.d.ts.map +1 -1
- package/dist/indexer/imports.js +82 -44
- package/dist/indexer/imports.js.map +1 -1
- package/dist/indexer/incremental-plan.d.ts +0 -1
- package/dist/indexer/incremental-plan.d.ts.map +1 -1
- package/dist/indexer/incremental-plan.js +6 -12
- package/dist/indexer/incremental-plan.js.map +1 -1
- package/dist/indexer/name-lookup-policies/implicit-self.d.ts.map +1 -1
- package/dist/indexer/name-lookup-policies/implicit-self.js +25 -4
- package/dist/indexer/name-lookup-policies/implicit-self.js.map +1 -1
- package/dist/indexer/name-resolution-types.d.ts +5 -0
- package/dist/indexer/name-resolution-types.d.ts.map +1 -1
- package/dist/indexer/name-resolution.d.ts.map +1 -1
- package/dist/indexer/name-resolution.js +2 -0
- package/dist/indexer/name-resolution.js.map +1 -1
- package/dist/indexer/navigation-cpp.d.ts.map +1 -1
- package/dist/indexer/navigation-cpp.js +3 -5
- package/dist/indexer/navigation-cpp.js.map +1 -1
- package/dist/indexer/navigation-goto.d.ts +49 -3
- package/dist/indexer/navigation-goto.d.ts.map +1 -1
- package/dist/indexer/navigation-goto.js +500 -106
- package/dist/indexer/navigation-goto.js.map +1 -1
- package/dist/indexer/navigation-local.d.ts +7 -0
- package/dist/indexer/navigation-local.d.ts.map +1 -1
- package/dist/indexer/navigation-local.js +22 -2
- package/dist/indexer/navigation-local.js.map +1 -1
- package/dist/indexer/navigation-php.d.ts +0 -1
- package/dist/indexer/navigation-php.d.ts.map +1 -1
- package/dist/indexer/navigation-php.js +1 -7
- package/dist/indexer/navigation-php.js.map +1 -1
- package/dist/indexer/navigation-references.d.ts +1 -0
- package/dist/indexer/navigation-references.d.ts.map +1 -1
- package/dist/indexer/navigation-references.js +134 -23
- package/dist/indexer/navigation-references.js.map +1 -1
- package/dist/indexer/navigation-resolve.d.ts +22 -0
- package/dist/indexer/navigation-resolve.d.ts.map +1 -1
- package/dist/indexer/navigation-resolve.js +73 -8
- package/dist/indexer/navigation-resolve.js.map +1 -1
- package/dist/indexer/navigation.d.ts +4 -1
- package/dist/indexer/navigation.d.ts.map +1 -1
- package/dist/indexer/navigation.js +398 -95
- package/dist/indexer/navigation.js.map +1 -1
- package/dist/indexer/python-property-decorator.d.ts +11 -0
- package/dist/indexer/python-property-decorator.d.ts.map +1 -0
- package/dist/indexer/python-property-decorator.js +30 -0
- package/dist/indexer/python-property-decorator.js.map +1 -0
- package/dist/indexer/shared-owner-identity.d.ts +3 -1
- package/dist/indexer/shared-owner-identity.d.ts.map +1 -1
- package/dist/indexer/shared-owner-identity.js +40 -12
- package/dist/indexer/shared-owner-identity.js.map +1 -1
- package/dist/indexer/shared.d.ts +10 -0
- package/dist/indexer/shared.d.ts.map +1 -1
- package/dist/indexer/shared.js +8 -0
- package/dist/indexer/shared.js.map +1 -1
- package/dist/indexer/star-import-precedence.d.ts +5 -1
- package/dist/indexer/star-import-precedence.d.ts.map +1 -1
- package/dist/indexer/star-import-precedence.js +12 -19
- package/dist/indexer/star-import-precedence.js.map +1 -1
- package/dist/indexer/type-hierarchy.d.ts.map +1 -1
- package/dist/indexer/type-hierarchy.js +8 -9
- package/dist/indexer/type-hierarchy.js.map +1 -1
- package/dist/indexer/types.d.ts +49 -1
- package/dist/indexer/types.d.ts.map +1 -1
- package/dist/indexer/types.js.map +1 -1
- package/dist/indexer/workspace-symbols.d.ts.map +1 -1
- package/dist/indexer/workspace-symbols.js +3 -13
- package/dist/indexer/workspace-symbols.js.map +1 -1
- package/dist/installer/locks.d.ts +1 -0
- package/dist/installer/locks.d.ts.map +1 -1
- package/dist/installer/locks.js +4 -8
- package/dist/installer/locks.js.map +1 -1
- package/dist/installer/registry.d.ts.map +1 -1
- package/dist/installer/registry.js +9 -15
- package/dist/installer/registry.js.map +1 -1
- package/dist/languages/callable-arity.d.ts.map +1 -1
- package/dist/languages/callable-arity.js +1 -38
- package/dist/languages/callable-arity.js.map +1 -1
- package/dist/languages/definitions/csharp.d.ts.map +1 -1
- package/dist/languages/definitions/csharp.js +5 -13
- package/dist/languages/definitions/csharp.js.map +1 -1
- package/dist/languages/definitions/java.d.ts.map +1 -1
- package/dist/languages/definitions/java.js +4 -13
- package/dist/languages/definitions/java.js.map +1 -1
- package/dist/languages/definitions/kotlin.d.ts.map +1 -1
- package/dist/languages/definitions/kotlin.js +4 -8
- package/dist/languages/definitions/kotlin.js.map +1 -1
- package/dist/languages/definitions/python.d.ts.map +1 -1
- package/dist/languages/definitions/python.js +5 -3
- package/dist/languages/definitions/python.js.map +1 -1
- package/dist/languages/import-statement-parsers.d.ts +0 -30
- package/dist/languages/import-statement-parsers.d.ts.map +1 -1
- package/dist/languages/import-statement-parsers.js +1 -81
- package/dist/languages/import-statement-parsers.js.map +1 -1
- package/dist/languages/sfc.d.ts.map +1 -1
- package/dist/languages/sfc.js +8 -43
- package/dist/languages/sfc.js.map +1 -1
- package/dist/lifecycle/manifest.d.ts.map +1 -1
- package/dist/lifecycle/manifest.js +11 -29
- package/dist/lifecycle/manifest.js.map +1 -1
- package/dist/mcp/cancellation.d.ts +6 -0
- package/dist/mcp/cancellation.d.ts.map +1 -0
- package/dist/mcp/cancellation.js +11 -0
- package/dist/mcp/cancellation.js.map +1 -0
- package/dist/mcp/handlers.d.ts +54 -3
- package/dist/mcp/handlers.d.ts.map +1 -1
- package/dist/mcp/handlers.js +186 -42
- package/dist/mcp/handlers.js.map +1 -1
- package/dist/mcp/http-transport.d.ts.map +1 -1
- package/dist/mcp/http-transport.js +9 -2
- package/dist/mcp/http-transport.js.map +1 -1
- package/dist/mcp/index-readiness.d.ts +114 -0
- package/dist/mcp/index-readiness.d.ts.map +1 -0
- package/dist/mcp/index-readiness.js +264 -0
- package/dist/mcp/index-readiness.js.map +1 -0
- package/dist/mcp/project-watcher.d.ts +125 -0
- package/dist/mcp/project-watcher.d.ts.map +1 -0
- package/dist/mcp/project-watcher.js +643 -0
- package/dist/mcp/project-watcher.js.map +1 -0
- package/dist/mcp/protocol.d.ts.map +1 -1
- package/dist/mcp/protocol.js +23 -10
- package/dist/mcp/protocol.js.map +1 -1
- package/dist/mcp/server.d.ts +2 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +11 -2
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/stale-install.d.ts +13 -0
- package/dist/mcp/stale-install.d.ts.map +1 -0
- package/dist/mcp/stale-install.js +30 -0
- package/dist/mcp/stale-install.js.map +1 -0
- package/dist/native/byte-index.d.ts +1 -0
- package/dist/native/byte-index.d.ts.map +1 -1
- package/dist/native/byte-index.js +1 -1
- package/dist/native/byte-index.js.map +1 -1
- package/dist/native/contracts.d.ts +1 -0
- package/dist/native/contracts.d.ts.map +1 -1
- package/dist/native/native-backend-report.d.ts +2 -1
- package/dist/native/native-backend-report.d.ts.map +1 -1
- package/dist/native/native-backend-report.js +23 -0
- package/dist/native/native-backend-report.js.map +1 -1
- package/dist/native/tree-shape.d.ts +5 -7
- package/dist/native/tree-shape.d.ts.map +1 -1
- package/dist/native/tree-shape.js +11 -10
- package/dist/native/tree-shape.js.map +1 -1
- package/dist/presentation/bounds.d.ts +2 -0
- package/dist/presentation/bounds.d.ts.map +1 -1
- package/dist/presentation/bounds.js +8 -0
- package/dist/presentation/bounds.js.map +1 -1
- package/dist/review/candidates.d.ts.map +1 -1
- package/dist/review/candidates.js +4 -25
- package/dist/review/candidates.js.map +1 -1
- package/dist/review/deleted.js +1 -1
- package/dist/review/deleted.js.map +1 -1
- package/dist/review/report.d.ts.map +1 -1
- package/dist/review/report.js +4 -2
- package/dist/review/report.js.map +1 -1
- package/dist/review/summaries.d.ts.map +1 -1
- package/dist/review/summaries.js +14 -35
- package/dist/review/summaries.js.map +1 -1
- package/dist/review.d.ts +6 -0
- package/dist/review.d.ts.map +1 -1
- package/dist/review.js +5 -6
- package/dist/review.js.map +1 -1
- package/dist/scss/navigation.d.ts +13 -0
- package/dist/scss/navigation.d.ts.map +1 -0
- package/dist/scss/navigation.js +150 -0
- package/dist/scss/navigation.js.map +1 -0
- package/dist/scss/resolution.d.ts +190 -0
- package/dist/scss/resolution.d.ts.map +1 -0
- package/dist/scss/resolution.js +1802 -0
- package/dist/scss/resolution.js.map +1 -0
- package/dist/scss/syntax.d.ts +181 -0
- package/dist/scss/syntax.d.ts.map +1 -0
- package/dist/scss/syntax.js +1436 -0
- package/dist/scss/syntax.js.map +1 -0
- package/dist/sql/classify-sql-file.d.ts +7 -0
- package/dist/sql/classify-sql-file.d.ts.map +1 -1
- package/dist/sql/classify-sql-file.js +9 -0
- package/dist/sql/classify-sql-file.js.map +1 -1
- package/dist/sql/extract-facts.d.ts.map +1 -1
- package/dist/sql/extract-facts.js +517 -77
- package/dist/sql/extract-facts.js.map +1 -1
- package/dist/sql/lex.d.ts +100 -1
- package/dist/sql/lex.d.ts.map +1 -1
- package/dist/sql/lex.js +473 -11
- package/dist/sql/lex.js.map +1 -1
- package/dist/sql/lookup.d.ts +17 -0
- package/dist/sql/lookup.d.ts.map +1 -1
- package/dist/sql/lookup.js +21 -0
- package/dist/sql/lookup.js.map +1 -1
- package/dist/sql/navigation.d.ts +28 -1
- package/dist/sql/navigation.d.ts.map +1 -1
- package/dist/sql/navigation.js +474 -84
- package/dist/sql/navigation.js.map +1 -1
- package/dist/sql/object-mentions.d.ts +24 -0
- package/dist/sql/object-mentions.d.ts.map +1 -0
- package/dist/sql/object-mentions.js +233 -0
- package/dist/sql/object-mentions.js.map +1 -0
- package/dist/sql/review.d.ts +3 -0
- package/dist/sql/review.d.ts.map +1 -1
- package/dist/sql/review.js +15 -14
- package/dist/sql/review.js.map +1 -1
- package/dist/sql/routine-mentions.d.ts +61 -0
- package/dist/sql/routine-mentions.d.ts.map +1 -0
- package/dist/sql/routine-mentions.js +868 -0
- package/dist/sql/routine-mentions.js.map +1 -0
- package/dist/sql/source-graph.d.ts +18 -3
- package/dist/sql/source-graph.d.ts.map +1 -1
- package/dist/sql/source-graph.js +109 -32
- package/dist/sql/source-graph.js.map +1 -1
- package/dist/sqlite/raw-query-worker-pool.d.ts.map +1 -1
- package/dist/sqlite/raw-query-worker-pool.js +2 -0
- package/dist/sqlite/raw-query-worker-pool.js.map +1 -1
- package/dist/sqlite/types.d.ts +6 -5
- package/dist/sqlite/types.d.ts.map +1 -1
- package/dist/sqlite/write.d.ts.map +1 -1
- package/dist/sqlite/write.js.map +1 -1
- package/dist/sqlite-driver.d.ts +0 -1
- package/dist/sqlite-driver.d.ts.map +1 -1
- package/dist/sqlite-driver.js +0 -11
- package/dist/sqlite-driver.js.map +1 -1
- package/dist/terraform/navigation.d.ts.map +1 -1
- package/dist/terraform/navigation.js +1 -3
- package/dist/terraform/navigation.js.map +1 -1
- package/dist/terraform/syntax.d.ts.map +1 -1
- package/dist/terraform/syntax.js +1 -4
- package/dist/terraform/syntax.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/util/ast.d.ts +5 -0
- package/dist/util/ast.d.ts.map +1 -1
- package/dist/util/ast.js +10 -0
- package/dist/util/ast.js.map +1 -1
- package/dist/util/atomic-file.d.ts +22 -0
- package/dist/util/atomic-file.d.ts.map +1 -0
- package/dist/util/atomic-file.js +106 -0
- package/dist/util/atomic-file.js.map +1 -0
- package/dist/util/collections.d.ts +5 -0
- package/dist/util/collections.d.ts.map +1 -1
- package/dist/util/collections.js +26 -0
- package/dist/util/collections.js.map +1 -1
- package/dist/util/concurrency.d.ts +8 -0
- package/dist/util/concurrency.d.ts.map +1 -1
- package/dist/util/concurrency.js +16 -0
- package/dist/util/concurrency.js.map +1 -1
- package/dist/util/confined-file.d.ts.map +1 -1
- package/dist/util/confined-file.js +1 -3
- package/dist/util/confined-file.js.map +1 -1
- package/dist/util/csharp-tree.d.ts +65 -0
- package/dist/util/csharp-tree.d.ts.map +1 -0
- package/dist/util/csharp-tree.js +266 -0
- package/dist/util/csharp-tree.js.map +1 -0
- package/dist/util/errors.d.ts +1 -0
- package/dist/util/errors.d.ts.map +1 -1
- package/dist/util/errors.js +3 -0
- package/dist/util/errors.js.map +1 -1
- package/dist/util/graph-edges.d.ts +2 -0
- package/dist/util/graph-edges.d.ts.map +1 -1
- package/dist/util/graph-edges.js +11 -0
- package/dist/util/graph-edges.js.map +1 -1
- package/dist/util/guards.d.ts +1 -0
- package/dist/util/guards.d.ts.map +1 -1
- package/dist/util/guards.js +6 -0
- package/dist/util/guards.js.map +1 -1
- package/dist/util/identifiers.d.ts +0 -24
- package/dist/util/identifiers.d.ts.map +1 -1
- package/dist/util/identifiers.js +0 -24
- package/dist/util/identifiers.js.map +1 -1
- package/dist/util/jvm-tree.d.ts +58 -0
- package/dist/util/jvm-tree.d.ts.map +1 -0
- package/dist/util/jvm-tree.js +153 -0
- package/dist/util/jvm-tree.js.map +1 -0
- package/dist/util/package-exports.d.ts +0 -22
- package/dist/util/package-exports.d.ts.map +1 -1
- package/dist/util/package-exports.js +25 -5
- package/dist/util/package-exports.js.map +1 -1
- package/dist/util/paths.d.ts +1 -0
- package/dist/util/paths.d.ts.map +1 -1
- package/dist/util/paths.js +10 -4
- package/dist/util/paths.js.map +1 -1
- package/dist/util/resolution/csharp.d.ts +20 -8
- package/dist/util/resolution/csharp.d.ts.map +1 -1
- package/dist/util/resolution/csharp.js +126 -127
- package/dist/util/resolution/csharp.js.map +1 -1
- package/dist/util/resolution/files.d.ts +6 -0
- package/dist/util/resolution/files.d.ts.map +1 -1
- package/dist/util/resolution/files.js +74 -21
- package/dist/util/resolution/files.js.map +1 -1
- package/dist/util/resolution/jvm.d.ts +21 -1
- package/dist/util/resolution/jvm.d.ts.map +1 -1
- package/dist/util/resolution/jvm.js +168 -100
- package/dist/util/resolution/jvm.js.map +1 -1
- package/dist/util/resolution/project-symbols.d.ts +1 -1
- package/dist/util/resolution/project-symbols.d.ts.map +1 -1
- package/dist/util/resolution/project-symbols.js.map +1 -1
- package/dist/util/resolution/specifier-targets.d.ts +4 -0
- package/dist/util/resolution/specifier-targets.d.ts.map +1 -1
- package/dist/util/resolution/specifier-targets.js +11 -3
- package/dist/util/resolution/specifier-targets.js.map +1 -1
- package/dist/util/resolution.d.ts.map +1 -1
- package/dist/util/resolution.js +21 -7
- package/dist/util/resolution.js.map +1 -1
- package/dist/util/syntax-tree.d.ts +16 -0
- package/dist/util/syntax-tree.d.ts.map +1 -0
- package/dist/util/syntax-tree.js +34 -0
- package/dist/util/syntax-tree.js.map +1 -0
- package/dist/util/text-scanning.d.ts +6 -0
- package/dist/util/text-scanning.d.ts.map +1 -0
- package/dist/util/text-scanning.js +35 -0
- package/dist/util/text-scanning.js.map +1 -0
- package/dist/util/trivia-tables.d.ts +13 -8
- package/dist/util/trivia-tables.d.ts.map +1 -1
- package/dist/util/trivia-tables.js +13 -72
- package/dist/util/trivia-tables.js.map +1 -1
- package/dist/util/trivia.d.ts +10 -3
- package/dist/util/trivia.d.ts.map +1 -1
- package/dist/util/trivia.js +209 -79
- package/dist/util/trivia.js.map +1 -1
- package/dist/util/windows-process-drain.d.ts.map +1 -1
- package/dist/util/windows-process-drain.js.map +1 -1
- package/dist/util/worker-threads.d.ts +16 -0
- package/dist/util/worker-threads.d.ts.map +1 -1
- package/dist/util/worker-threads.js +118 -0
- package/dist/util/worker-threads.js.map +1 -1
- package/dist/worker/native-worker-pool.d.ts.map +1 -1
- package/dist/worker/native-worker-pool.js +2 -1
- package/dist/worker/native-worker-pool.js.map +1 -1
- package/docs/mcp.md +82 -8
- package/package.json +7 -7
package/dist/review.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,yBAAyB,EAE/B,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,yBAAyB,EAE/B,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAQvE,OAAO,EAA+C,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAU/G,OAAO,KAAK,EAKV,aAAa,EACb,YAAY,EAGb,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,iBAAiB,EACjB,0BAA0B,EAC1B,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AA4J3B;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,aAAkB,EACxB,MAAM,CAAC,EAAE;IACP,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACjE;;;OAGG;IACH,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAClC,GACA,OAAO,CAAC,YAAY,CAAC,CAkKvB"}
|
package/dist/review.js
CHANGED
|
@@ -45,9 +45,6 @@ function applyReviewPresetOptions(opts) {
|
|
|
45
45
|
maxCandidates: opts.maxCandidates ?? preset.maxCandidates,
|
|
46
46
|
};
|
|
47
47
|
}
|
|
48
|
-
function comparePaths(left, right) {
|
|
49
|
-
return left.localeCompare(right);
|
|
50
|
-
}
|
|
51
48
|
async function buildReviewIndex(input) {
|
|
52
49
|
const { projectRoot, appliedOptions, changedFileList, diffKindsByFile, diffChangesByFile, reviewReport, reviewTimings, providedIndex, loadProvidedIndex, } = input;
|
|
53
50
|
const existenceChecks = await mapLimit(changedFileList, 8, async (file) => ({
|
|
@@ -134,7 +131,7 @@ export async function buildReviewReport(projectRoot, opts = {}, cached) {
|
|
|
134
131
|
delete reviewReport.duplicateAnalysis;
|
|
135
132
|
}
|
|
136
133
|
const totalStart = performance.now();
|
|
137
|
-
const { changedFiles, explicitFiles, diffHunksByFile, diffKindsByFile, diffChangesByFile } = await collectReviewChanges(projectRoot, appliedOptions, reviewTimings);
|
|
134
|
+
const { changedFiles, explicitFiles, diffHunksByFile, diffKindsByFile, diffChangesByFile } = cached?.changes ?? (await collectReviewChanges(projectRoot, appliedOptions, reviewTimings));
|
|
138
135
|
if (changedFiles.size === 0) {
|
|
139
136
|
const riskSummary = computeRiskSummary({
|
|
140
137
|
filesChanged: 0,
|
|
@@ -147,7 +144,9 @@ export async function buildReviewReport(projectRoot, opts = {}, cached) {
|
|
|
147
144
|
const report = {
|
|
148
145
|
schemaVersion: REVIEW_SCHEMA_VERSION,
|
|
149
146
|
status: "no_changes",
|
|
150
|
-
...(reviewReport?.indexReport
|
|
147
|
+
...(reviewReport?.indexReport
|
|
148
|
+
? { analysis: summarizeAnalysis({ index: reviewReport.index, report: reviewReport.indexReport }) }
|
|
149
|
+
: {}),
|
|
151
150
|
projectFiles,
|
|
152
151
|
summary: { filesChanged: 0, symbolsChanged: 0, candidateTests: 0 },
|
|
153
152
|
riskSummary,
|
|
@@ -170,7 +169,7 @@ export async function buildReviewReport(projectRoot, opts = {}, cached) {
|
|
|
170
169
|
reviewTimings.totalMs = Math.round(performance.now() - totalStart);
|
|
171
170
|
return report;
|
|
172
171
|
}
|
|
173
|
-
const changedFileList = Array.from(changedFiles).sort(
|
|
172
|
+
const changedFileList = Array.from(changedFiles).sort((left, right) => left.localeCompare(right));
|
|
174
173
|
const diagnostics = {
|
|
175
174
|
missingFiles: [],
|
|
176
175
|
symbolMappingParseFailures: [],
|
package/dist/review.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review.js","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,yCAAyC,EACzC,wBAAwB,GAIzB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAqC,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAA4B,MAAM,qBAAqB,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAgD9D,MAAM,cAAc,GAAsC;IACxD,OAAO,EAAE;QACP,oBAAoB,EAAE,KAAK;QAC3B,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,EAAE;KAClB;IACD,QAAQ,EAAE;QACR,oBAAoB,EAAE,IAAI;QAC1B,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,EAAE;KAClB;IACD,IAAI,EAAE;QACJ,oBAAoB,EAAE,IAAI;QAC1B,YAAY,EAAE,EAAE;QAChB,aAAa,EAAE,EAAE;KAClB;CACF,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,CAAC;AACtC,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAE1C,SAAS,wBAAwB,CAAC,IAAmB;IACnD,IAAI,CAAC,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,OAAO;QACL,GAAG,IAAI;QACP,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC,oBAAoB;QAC9E,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY;QACtD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;KAC1D,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AASD,KAAK,UAAU,gBAAgB,CAAC,KAc/B;IACC,MAAM,EACJ,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,iBAAiB,GAClB,GAAG,KAAK,CAAC;IACV,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI;QACJ,MAAM,EAAE,MAAM,UAAU,CAAC,IAAI,CAAC;KAC/B,CAAC,CAAC,CAAC;IACJ,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAU,CAAC,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CACL,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,MAAM;YAAE,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACjD,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,CAAC,CAAC,CACH,CACF,CAAC;IACF,MAAM,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,WAAW,EAAE,YAAY,EAAE;QAClF,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,YAAY,CAAC;YACzD,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,YAAY,EAAE;YACrE,CAAC,CAAC,EAAE,CAAC;QACP,iBAAiB;QACjB,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,WAAW,GAAG,YAAY,EAAE,WAAW,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9F,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,WAAW,IAAI,WAAW,EAAE,CAAC;QAC7D,YAAY,CAAC,WAAW,GAAG,WAAW,CAAC;IACzC,CAAC;IACD,4EAA4E;IAC5E,oFAAoF;IACpF,mFAAmF;IACnF,oFAAoF;IACpF,uFAAuF;IACvF,IAAI,KAAmB,CAAC;IACxB,IAAI,aAAa,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACnD,KAAK,GAAG,aAAa,CAAC;IACxB,CAAC;SAAM,IAAI,iBAAiB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC9D,KAAK,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,MAAM,uBAAuB,CAAC;YACpC,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnF;YACD,OAAO,EAAE;gBACP,GAAG,cAAc;gBACjB,UAAU,EAAE,IAAI;gBAChB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChD;SACF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,EAAE;YAC3C,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IACrE,CAAC;IAED,OAAO;QACL,KAAK;QACL,eAAe;QACf,YAAY;QACZ,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,OAAsB,EAAE,EACxB,MAKC;IAED,MAAM,cAAc,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC;IAC3C,MAAM,aAAa,GAAG,YAAY,EAAE,OAAO,CAAC;IAC5C,IAAI,aAAa;QAAE,aAAa,CAAC,mBAAmB,GAAG,CAAC,CAAC;IACzD,IAAI,YAAY,IAAI,cAAc,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QAC5D,OAAO,YAAY,CAAC,iBAAiB,CAAC;IACxC,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,GACxF,MAAM,oBAAoB,CAAC,WAAW,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAEzE,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,kBAAkB,CAAC;YACrC,YAAY,EAAE,CAAC;YACf,cAAc,EAAE,CAAC;YACjB,eAAe,EAAE,CAAC;YAClB,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;SACjB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAiB;YAC3B,aAAa,EAAE,qBAAqB;YACpC,MAAM,EAAE,YAAY;YACpB,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3G,YAAY;YACZ,OAAO,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE;YAClE,WAAW;YACX,WAAW,EAAE,gBAAgB,CAAC;gBAC5B,YAAY,EAAE,CAAC;gBACf,cAAc,EAAE,CAAC;gBACjB,eAAe,EAAE,CAAC;gBAClB,cAAc,EAAE,CAAC;gBACjB,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,CAAC;aACjB,CAAC;YACF,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,EAAE;YACd,cAAc,EAAE,EAAE;SACnB,CAAC;QACF,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC;QAC/E,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,OAAO,IAAI,MAAM,CAAC;QAC/C,IAAI,aAAa;YAAE,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;QACtF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpE,MAAM,WAAW,GAAsB;QACrC,YAAY,EAAE,EAAE;QAChB,0BAA0B,EAAE,EAAE;KAC/B,CAAC;IACF,MAAM,oBAAoB,GAAG,cAAc,CAAC,oBAAoB,IAAI,KAAK,CAAC;IAC1E,MAAM,gBAAgB,GACpB,OAAO,cAAc,CAAC,gBAAgB,KAAK,QAAQ,IAAI,cAAc,CAAC,gBAAgB,IAAI,CAAC;QACzF,CAAC,CAAC,cAAc,CAAC,gBAAgB;QACjC,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,YAAY,GAChB,OAAO,cAAc,CAAC,YAAY,KAAK,QAAQ,IAAI,cAAc,CAAC,YAAY,IAAI,CAAC;QACjF,CAAC,CAAC,cAAc,CAAC,YAAY;QAC7B,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,oBAAoB,GACxB,OAAO,cAAc,CAAC,oBAAoB,KAAK,QAAQ,IAAI,cAAc,CAAC,oBAAoB,GAAG,CAAC;QAChG,CAAC,CAAC,cAAc,CAAC,oBAAoB;QACrC,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,MAAM,gBAAgB,CAAC;QACxF,WAAW;QACX,cAAc;QACd,eAAe;QACf,eAAe;QACf,iBAAiB;QACjB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtE,CAAC,CAAC;IACH,MAAM,kBAAkB,GAAG,cAAc,CAAC,kBAAkB,IAAI,CAAC,oBAAoB,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAEnH,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,GAAG,MAAM,qBAAqB,CAAC;QACnH,WAAW;QACX,KAAK;QACL,eAAe;QACf,eAAe;QACf,eAAe;QACf,iBAAiB;QACjB,aAAa;QACb,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,kBAAkB;QAClB,gBAAgB;QAChB,YAAY;QACZ,oBAAoB;QACpB,WAAW;QACX,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC;QAC/C,WAAW;QACX,KAAK;QACL,YAAY;QACZ,YAAY;QACZ,gBAAgB;QAChB,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5G,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,MAAM,2BAA2B,CAAC;QACvD,WAAW;QACX,KAAK;QACL,eAAe;QACf,gBAAgB;QAChB,YAAY;QACZ,cAAc;QACd,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,CAAC,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;IACrF,MAAM,aAAa,GAAG,MAAM,yBAAyB,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,oBAAoB,CAAC;QAClC,cAAc;QACd,YAAY;QACZ,SAAS;QACT,gBAAgB;QAChB,cAAc;QACd,UAAU;QACV,QAAQ,EAAE,iBAAiB,CAAC;YAC1B,KAAK;YACL,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3E,CAAC;QACF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,aAAa;QACb,WAAW;QACX,yBAAyB;QACzB,oBAAoB;KACrB,CAAC,CAAC;IACH,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACjD,IAAI,cAAc,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QAC5C,MAAM,eAAe,GAAG,MAAM,2BAA2B,CAAC;YACxD,WAAW;YACX,KAAK;YACL,SAAS;YACT,gBAAgB;YAChB,eAAe;YACf,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjG,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,YAAY,IAAI,eAAe,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,mBAAmB,EAAE;gBACvD,KAAK,EAAE,eAAe,CAAC,gBAAgB;gBACvC,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,aAAa,IAAI,cAAc,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QAC7D,aAAa,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,sBAAsB,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,aAAa;QAAE,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IACtF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAmB;IAC/C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAmB,EAAE,IAAY;IAC3D,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,OAAO,oBAAoB,CAAC,cAAc,EAAE,cAAc,CAAC,IAAI,cAAc,CAAC;AAChF,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAsB;IAClD,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,QAAQ,EAAE,CAAC;gBACX,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS;YACX,CAAC;YACD,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QACD,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACvC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY,EAAE,KAAwB;IACvE,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACnF,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,IAAI,SAAS,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;IAChC,IAAI,OAAO,GAAG,SAAS,CAAC;IACxB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,IAAI,IAAI,KAAK,OAAO,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3C,SAAS,GAAG,IAAI,CAAC;QACjB,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAsB,EAAE,MAA6B;IACxF,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC;IACzD,OAAO,IAAI,CAAC,SAAS,IAAI,aAAa,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC;AAC7E,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAqB,EAAE,MAA6B;IACrF,IAAI,2BAA2B,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,YAAY,CAAC;IACtF,IAAI,2BAA2B,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,WAAW,CAAC;IACtF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,KAAK,CAAC;QAC5E,IAAI,2BAA2B,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC;IAC9E,CAAC;IACD,OAAO,KAAK,CAAC,WAAW,CAAC;AAC3B,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAqB,EAAE,MAA6B;IAC/E,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,WAAW,GACf,MAAM,CAAC,SAAS,KAAK,SAAS;QAC5B,CAAC,CAAC,MAAM,CAAC,IAAI;QACb,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;IACjF,MAAM,YAAY,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/E,OAAO;QACL,EAAE,EAAE,2BAA2B,KAAK,CAAC,EAAE,EAAE;QACzC,KAAK,EAAE,wCAAwC;QAC/C,WAAW,EACT,GAAG,WAAW,eAAe,KAAK,CAAC,UAAU,eAAe,KAAK,CAAC,SAAS,oBAAoB;YAC/F,iBAAiB,YAAY,2CAA2C;QAC1E,QAAQ,EAAE,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;QACzD,MAAM,EAAE,mBAAmB;KAC5B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,KAU1C;IACC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CACpC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAC3G,CAAC;IACF,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,OAAO,GAA4B,KAAK,CAAC,gBAAgB;SAC5D,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACjC,MAAM,CAAC,CAAC,GAAG,EAAoB,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC;SACpD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACb,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC;QACrD,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;QAC/B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI;KAC5B,CAAC,CAAC,CAAC;IACN,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,SAAS;QAC3C,MAAM,KAAK,GAAG,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC;YAC9F,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,SAAS;QACX,CAAC;QACD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QACjH,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACxE,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACpC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAU,CAAC;gBAC1D,OAAO,MAAM,CAAC,SAAU,IAAI,IAAI,IAAI,IAAI,IAAI,aAAa,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,qBAAqB,CAAC,MAAM;YAAE,SAAS;QAC5C,OAAO,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,OAAO,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAE1C,MAAM,gBAAgB,GACpB,KAAK,CAAC,gBAAgB;QACtB,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,CAAC,MAAM,wBAAwB,CAAC,KAAK,CAAC,KAAK,EAAE;YAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC,CAAC;IACN,MAAM,QAAQ,GAAG,MAAM,yCAAyC,CAAC,gBAAgB,EAAE,OAAO,EAAE;QAC1F,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,IAAI;QACrB,KAAK,EAAE,2BAA2B;QAClC,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC5C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,IAAI,IAAI,2BAA2B,EAAE,CAAC;gBAC9C,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;YAC1D,CAAC;YACD,MAAM,IAAI,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;AAC1D,CAAC"}
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,yCAAyC,EACzC,wBAAwB,GAIzB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAqC,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAA+B,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EAAE,yBAAyB,EAA4B,MAAM,qBAAqB,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAgD9D,MAAM,cAAc,GAAsC;IACxD,OAAO,EAAE;QACP,oBAAoB,EAAE,KAAK;QAC3B,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,EAAE;KAClB;IACD,QAAQ,EAAE;QACR,oBAAoB,EAAE,IAAI;QAC1B,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,EAAE;KAClB;IACD,IAAI,EAAE;QACJ,oBAAoB,EAAE,IAAI;QAC1B,YAAY,EAAE,EAAE;QAChB,aAAa,EAAE,EAAE;KAClB;CACF,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,CAAC;AACtC,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAE1C,SAAS,wBAAwB,CAAC,IAAmB;IACnD,IAAI,CAAC,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,OAAO;QACL,GAAG,IAAI;QACP,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC,oBAAoB;QAC9E,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY;QACtD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;KAC1D,CAAC;AACJ,CAAC;AASD,KAAK,UAAU,gBAAgB,CAAC,KAc/B;IACC,MAAM,EACJ,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,iBAAiB,GAClB,GAAG,KAAK,CAAC;IACV,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI;QACJ,MAAM,EAAE,MAAM,UAAU,CAAC,IAAI,CAAC;KAC/B,CAAC,CAAC,CAAC;IACJ,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAU,CAAC,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CACL,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,MAAM;YAAE,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACjD,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,CAAC,CAAC,CACH,CACF,CAAC;IACF,MAAM,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,WAAW,EAAE,YAAY,EAAE;QAClF,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,YAAY,CAAC;YACzD,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,YAAY,EAAE;YACrE,CAAC,CAAC,EAAE,CAAC;QACP,iBAAiB;QACjB,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,WAAW,GAAG,YAAY,EAAE,WAAW,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9F,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,WAAW,IAAI,WAAW,EAAE,CAAC;QAC7D,YAAY,CAAC,WAAW,GAAG,WAAW,CAAC;IACzC,CAAC;IACD,4EAA4E;IAC5E,oFAAoF;IACpF,mFAAmF;IACnF,oFAAoF;IACpF,uFAAuF;IACvF,IAAI,KAAmB,CAAC;IACxB,IAAI,aAAa,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACnD,KAAK,GAAG,aAAa,CAAC;IACxB,CAAC;SAAM,IAAI,iBAAiB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC9D,KAAK,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,MAAM,uBAAuB,CAAC;YACpC,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnF;YACD,OAAO,EAAE;gBACP,GAAG,cAAc;gBACjB,UAAU,EAAE,IAAI;gBAChB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChD;SACF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,EAAE;YAC3C,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IACrE,CAAC;IAED,OAAO;QACL,KAAK;QACL,eAAe;QACf,YAAY;QACZ,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,OAAsB,EAAE,EACxB,MAUC;IAED,MAAM,cAAc,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC;IAC3C,MAAM,aAAa,GAAG,YAAY,EAAE,OAAO,CAAC;IAC5C,IAAI,aAAa;QAAE,aAAa,CAAC,mBAAmB,GAAG,CAAC,CAAC;IACzD,IAAI,YAAY,IAAI,cAAc,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QAC5D,OAAO,YAAY,CAAC,iBAAiB,CAAC;IACxC,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,GACxF,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,oBAAoB,CAAC,WAAW,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC;IAE9F,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,kBAAkB,CAAC;YACrC,YAAY,EAAE,CAAC;YACf,cAAc,EAAE,CAAC;YACjB,eAAe,EAAE,CAAC;YAClB,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;SACjB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAiB;YAC3B,aAAa,EAAE,qBAAqB;YACpC,MAAM,EAAE,YAAY;YACpB,GAAG,CAAC,YAAY,EAAE,WAAW;gBAC3B,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC,EAAE;gBAClG,CAAC,CAAC,EAAE,CAAC;YACP,YAAY;YACZ,OAAO,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE;YAClE,WAAW;YACX,WAAW,EAAE,gBAAgB,CAAC;gBAC5B,YAAY,EAAE,CAAC;gBACf,cAAc,EAAE,CAAC;gBACjB,eAAe,EAAE,CAAC;gBAClB,cAAc,EAAE,CAAC;gBACjB,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,CAAC;aACjB,CAAC;YACF,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,EAAE;YACd,cAAc,EAAE,EAAE;SACnB,CAAC;QACF,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC;QAC/E,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,OAAO,IAAI,MAAM,CAAC;QAC/C,IAAI,aAAa;YAAE,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;QACtF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAClG,MAAM,WAAW,GAAsB;QACrC,YAAY,EAAE,EAAE;QAChB,0BAA0B,EAAE,EAAE;KAC/B,CAAC;IACF,MAAM,oBAAoB,GAAG,cAAc,CAAC,oBAAoB,IAAI,KAAK,CAAC;IAC1E,MAAM,gBAAgB,GACpB,OAAO,cAAc,CAAC,gBAAgB,KAAK,QAAQ,IAAI,cAAc,CAAC,gBAAgB,IAAI,CAAC;QACzF,CAAC,CAAC,cAAc,CAAC,gBAAgB;QACjC,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,YAAY,GAChB,OAAO,cAAc,CAAC,YAAY,KAAK,QAAQ,IAAI,cAAc,CAAC,YAAY,IAAI,CAAC;QACjF,CAAC,CAAC,cAAc,CAAC,YAAY;QAC7B,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,oBAAoB,GACxB,OAAO,cAAc,CAAC,oBAAoB,KAAK,QAAQ,IAAI,cAAc,CAAC,oBAAoB,GAAG,CAAC;QAChG,CAAC,CAAC,cAAc,CAAC,oBAAoB;QACrC,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,MAAM,gBAAgB,CAAC;QACxF,WAAW;QACX,cAAc;QACd,eAAe;QACf,eAAe;QACf,iBAAiB;QACjB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtE,CAAC,CAAC;IACH,MAAM,kBAAkB,GAAG,cAAc,CAAC,kBAAkB,IAAI,CAAC,oBAAoB,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAEnH,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,GAAG,MAAM,qBAAqB,CAAC;QACnH,WAAW;QACX,KAAK;QACL,eAAe;QACf,eAAe;QACf,eAAe;QACf,iBAAiB;QACjB,aAAa;QACb,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,kBAAkB;QAClB,gBAAgB;QAChB,YAAY;QACZ,oBAAoB;QACpB,WAAW;QACX,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC;QAC/C,WAAW;QACX,KAAK;QACL,YAAY;QACZ,YAAY;QACZ,gBAAgB;QAChB,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5G,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,MAAM,2BAA2B,CAAC;QACvD,WAAW;QACX,KAAK;QACL,eAAe;QACf,gBAAgB;QAChB,YAAY;QACZ,cAAc;QACd,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,CAAC,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;IACrF,MAAM,aAAa,GAAG,MAAM,yBAAyB,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,oBAAoB,CAAC;QAClC,cAAc;QACd,YAAY;QACZ,SAAS;QACT,gBAAgB;QAChB,cAAc;QACd,UAAU;QACV,QAAQ,EAAE,iBAAiB,CAAC;YAC1B,KAAK;YACL,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3E,CAAC;QACF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,aAAa;QACb,WAAW;QACX,yBAAyB;QACzB,oBAAoB;KACrB,CAAC,CAAC;IACH,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IACjD,IAAI,cAAc,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QAC5C,MAAM,eAAe,GAAG,MAAM,2BAA2B,CAAC;YACxD,WAAW;YACX,KAAK;YACL,SAAS;YACT,gBAAgB;YAChB,eAAe;YACf,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjG,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,YAAY,IAAI,eAAe,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,mBAAmB,EAAE;gBACvD,KAAK,EAAE,eAAe,CAAC,gBAAgB;gBACvC,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,aAAa,IAAI,cAAc,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QAC7D,aAAa,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,sBAAsB,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,aAAa;QAAE,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IACtF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAmB;IAC/C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAmB,EAAE,IAAY;IAC3D,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,OAAO,oBAAoB,CAAC,cAAc,EAAE,cAAc,CAAC,IAAI,cAAc,CAAC;AAChF,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAsB;IAClD,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,QAAQ,EAAE,CAAC;gBACX,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS;YACX,CAAC;YACD,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QACD,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACvC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY,EAAE,KAAwB;IACvE,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACnF,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,IAAI,SAAS,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;IAChC,IAAI,OAAO,GAAG,SAAS,CAAC;IACxB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,IAAI,IAAI,KAAK,OAAO,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3C,SAAS,GAAG,IAAI,CAAC;QACjB,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAsB,EAAE,MAA6B;IACxF,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC;IACzD,OAAO,IAAI,CAAC,SAAS,IAAI,aAAa,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC;AAC7E,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAqB,EAAE,MAA6B;IACrF,IAAI,2BAA2B,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,YAAY,CAAC;IACtF,IAAI,2BAA2B,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,WAAW,CAAC;IACtF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,KAAK,CAAC;QAC5E,IAAI,2BAA2B,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC;IAC9E,CAAC;IACD,OAAO,KAAK,CAAC,WAAW,CAAC;AAC3B,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAqB,EAAE,MAA6B;IAC/E,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,WAAW,GACf,MAAM,CAAC,SAAS,KAAK,SAAS;QAC5B,CAAC,CAAC,MAAM,CAAC,IAAI;QACb,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;IACjF,MAAM,YAAY,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/E,OAAO;QACL,EAAE,EAAE,2BAA2B,KAAK,CAAC,EAAE,EAAE;QACzC,KAAK,EAAE,wCAAwC;QAC/C,WAAW,EACT,GAAG,WAAW,eAAe,KAAK,CAAC,UAAU,eAAe,KAAK,CAAC,SAAS,oBAAoB;YAC/F,iBAAiB,YAAY,2CAA2C;QAC1E,QAAQ,EAAE,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;QACzD,MAAM,EAAE,mBAAmB;KAC5B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,KAU1C;IACC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CACpC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAC3G,CAAC;IACF,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,OAAO,GAA4B,KAAK,CAAC,gBAAgB;SAC5D,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACjC,MAAM,CAAC,CAAC,GAAG,EAAoB,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC;SACpD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACb,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC;QACrD,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;QAC/B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI;KAC5B,CAAC,CAAC,CAAC;IACN,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,SAAS;QAC3C,MAAM,KAAK,GAAG,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC;YAC9F,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,SAAS;QACX,CAAC;QACD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QACjH,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACxE,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACpC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAU,CAAC;gBAC1D,OAAO,MAAM,CAAC,SAAU,IAAI,IAAI,IAAI,IAAI,IAAI,aAAa,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,qBAAqB,CAAC,MAAM;YAAE,SAAS;QAC5C,OAAO,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,OAAO,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAE1C,MAAM,gBAAgB,GACpB,KAAK,CAAC,gBAAgB;QACtB,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,CAAC,MAAM,wBAAwB,CAAC,KAAK,CAAC,KAAK,EAAE;YAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC,CAAC;IACN,MAAM,QAAQ,GAAG,MAAM,yCAAyC,CAAC,gBAAgB,EAAE,OAAO,EAAE;QAC1F,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,IAAI;QACrB,KAAK,EAAE,2BAA2B;QAClC,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC5C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,IAAI,IAAI,2BAA2B,EAAE,CAAC;gBAC9C,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;YAC1D,CAAC;YACD,MAAM,IAAI,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { FindReferencesResult, GoToRequest, GoToResult, ProjectIndex, SymbolDef } from "../indexer/types.js";
|
|
2
|
+
/**
|
|
3
|
+
* SCSS navigation for Sass module members. Same-file selectors and other symbols the module
|
|
4
|
+
* model does not own return null so the generic scope walker keeps them.
|
|
5
|
+
*/
|
|
6
|
+
type FindScssReferencesOptions = {
|
|
7
|
+
includeDefinition: boolean;
|
|
8
|
+
maxReferences?: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function goToScssDefinition(index: ProjectIndex, req: GoToRequest): Promise<GoToResult | null>;
|
|
11
|
+
export declare function findScssReferences(index: ProjectIndex, def: SymbolDef, options: FindScssReferencesOptions): Promise<FindReferencesResult | null>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=navigation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/scss/navigation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,YAAY,EAEZ,SAAS,EACV,MAAM,qBAAqB,CAAC;AAgB7B;;;GAGG;AAEH,KAAK,yBAAyB,GAAG;IAC/B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAcF,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAmC1G;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAkFtC"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { buildIndexedCandidateCoverage } from "../indexer/navigation-references.js";
|
|
2
|
+
import { createNavigationProvenance, okGoToResult } from "../indexer/navigation-provenance.js";
|
|
3
|
+
import { siteKey } from "../indexer/shared.js";
|
|
4
|
+
import { fileIdentityKey } from "../util/paths.js";
|
|
5
|
+
import { isScssFile, resolveScssUse, scssAssignmentDefinition, scssFactsForFile, scssMemberForDefinition, scssMemberUses, scssReferenceCandidates, scssUseAt, scssUseEditRange, } from "./resolution.js";
|
|
6
|
+
import { scssOffsetAt } from "./syntax.js";
|
|
7
|
+
/** A name that only a module can supply: a miss there never falls back to the generic walker. */
|
|
8
|
+
function isModuleSite(use) {
|
|
9
|
+
if (use.namespace !== null)
|
|
10
|
+
return true;
|
|
11
|
+
return (use.syntax === "config" ||
|
|
12
|
+
use.syntax === "show" ||
|
|
13
|
+
use.syntax === "hide" ||
|
|
14
|
+
use.syntax === "extend" ||
|
|
15
|
+
use.syntax === "include");
|
|
16
|
+
}
|
|
17
|
+
export async function goToScssDefinition(index, req) {
|
|
18
|
+
if (!isScssFile(index, req.file))
|
|
19
|
+
return null;
|
|
20
|
+
const facts = await scssFactsForFile(index, req.file);
|
|
21
|
+
if (!facts)
|
|
22
|
+
return null;
|
|
23
|
+
const use = scssUseAt(facts, req.line, req.column);
|
|
24
|
+
if (!use) {
|
|
25
|
+
const joined = await scssAssignmentDefinition(index, req.file, req.line, req.column);
|
|
26
|
+
if (joined)
|
|
27
|
+
return okGoToResult(index, joined, { resolution: "namespace", confidence: "high" });
|
|
28
|
+
const offset = scssOffsetAt(facts, req.line, req.column);
|
|
29
|
+
if (facts.interpolatedPlaceholderRanges.some((range) => offset >= (range.start.index ?? -1) && offset < (range.end.index ?? -1))) {
|
|
30
|
+
return { status: "not_found", reason: "An interpolated placeholder name has no static target" };
|
|
31
|
+
}
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
const resolved = await resolveScssUse(index, req.file, use);
|
|
35
|
+
if (resolved.status === "shadow") {
|
|
36
|
+
// A local hides the module member. The exact-name generic walker can answer only for an indexed
|
|
37
|
+
// binding with the same spelling; a parameter, loop variable, or -/_ equivalent block binding
|
|
38
|
+
// would otherwise fall through to a wrong module member.
|
|
39
|
+
if (resolved.indexed)
|
|
40
|
+
return null;
|
|
41
|
+
return { status: "not_found", reason: `A local variable hides the SCSS member ${use.text}` };
|
|
42
|
+
}
|
|
43
|
+
if (resolved.status === "ok") {
|
|
44
|
+
return okGoToResult(index, resolved.def, { resolution: "namespace", confidence: "high" });
|
|
45
|
+
}
|
|
46
|
+
if (isModuleSite(use) || resolved.unproven)
|
|
47
|
+
return { status: "not_found", reason: resolved.reason };
|
|
48
|
+
// A bare name the module model does not know can still be a same-file symbol or a CSS function
|
|
49
|
+
// such as `rgb(`, unless the file loads members without a namespace.
|
|
50
|
+
const loadsGlobally = facts.loads.some((load) => load.star || load.kind === "import");
|
|
51
|
+
if (!loadsGlobally)
|
|
52
|
+
return null;
|
|
53
|
+
return { status: "not_found", reason: resolved.reason };
|
|
54
|
+
}
|
|
55
|
+
export async function findScssReferences(index, def, options) {
|
|
56
|
+
if (!isScssFile(index, def.file))
|
|
57
|
+
return null;
|
|
58
|
+
const member = await scssMemberForDefinition(index, def);
|
|
59
|
+
if (!member)
|
|
60
|
+
return null;
|
|
61
|
+
const { files, unavailable } = await scssReferenceCandidates(index, member);
|
|
62
|
+
const references = [];
|
|
63
|
+
const seen = new Set();
|
|
64
|
+
const scanned = [];
|
|
65
|
+
const unavailableFiles = [...unavailable];
|
|
66
|
+
const unavailableKeys = new Set(unavailable.map((file) => fileIdentityKey(file)));
|
|
67
|
+
let truncated = false;
|
|
68
|
+
const markUnavailable = (file) => {
|
|
69
|
+
const key = fileIdentityKey(file);
|
|
70
|
+
if (unavailableKeys.has(key))
|
|
71
|
+
return;
|
|
72
|
+
unavailableKeys.add(key);
|
|
73
|
+
unavailableFiles.push(file);
|
|
74
|
+
};
|
|
75
|
+
const push = (file, range) => {
|
|
76
|
+
if (options.maxReferences !== undefined && references.length >= options.maxReferences) {
|
|
77
|
+
truncated = true;
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
const key = siteKey(file, range);
|
|
81
|
+
if (seen.has(key))
|
|
82
|
+
return true;
|
|
83
|
+
seen.add(key);
|
|
84
|
+
references.push({ file, range, provenance: createNavigationProvenance("namespace", "high") });
|
|
85
|
+
return true;
|
|
86
|
+
};
|
|
87
|
+
// Every assignment of a variable is a site of the same variable; `def` itself is the
|
|
88
|
+
// definition and stays out unless the caller asks for it.
|
|
89
|
+
for (const site of member.sites) {
|
|
90
|
+
if (!options.includeDefinition && siteKey(site.file, site.range) === siteKey(def.file, def.range))
|
|
91
|
+
continue;
|
|
92
|
+
if (!push(site.file, site.range))
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
for (const file of files) {
|
|
96
|
+
if (truncated)
|
|
97
|
+
break;
|
|
98
|
+
const facts = await scssFactsForFile(index, file);
|
|
99
|
+
if (!facts) {
|
|
100
|
+
markUnavailable(file);
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
scanned.push(file);
|
|
104
|
+
let unproven = member.kind === "placeholder" && (facts.interpolatedExtend || facts.interpolatedPlaceholder);
|
|
105
|
+
const { matches, unproven: unresolvedUse } = await scssMemberUses(index, file, facts, member);
|
|
106
|
+
if (unresolvedUse)
|
|
107
|
+
unproven = true;
|
|
108
|
+
for (const { use, resolved } of matches) {
|
|
109
|
+
const range = scssUseEditRange(facts, use, resolved.prefix);
|
|
110
|
+
if (!range) {
|
|
111
|
+
unproven = true;
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
if (!push(file, range))
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
117
|
+
if (unproven)
|
|
118
|
+
markUnavailable(file);
|
|
119
|
+
}
|
|
120
|
+
references.sort(compareReferences);
|
|
121
|
+
return {
|
|
122
|
+
status: "ok",
|
|
123
|
+
definition: member.def,
|
|
124
|
+
references,
|
|
125
|
+
// The generic import-binding check stays out: this module resolves every load itself and
|
|
126
|
+
// reports a load it cannot prove through `strategyUnavailableFiles`. The check would also flag
|
|
127
|
+
// a variable that one file assigns again, because the shared export table keeps each
|
|
128
|
+
// assignment as a separate export of the same name.
|
|
129
|
+
referenceCoverage: buildIndexedCandidateCoverage({
|
|
130
|
+
index,
|
|
131
|
+
def: member.def,
|
|
132
|
+
languageId: "scss",
|
|
133
|
+
exportedNames: [],
|
|
134
|
+
candidateFiles: [],
|
|
135
|
+
scannedFiles: scanned,
|
|
136
|
+
truncated,
|
|
137
|
+
strategyUnavailableFiles: unavailableFiles,
|
|
138
|
+
}),
|
|
139
|
+
provenance: createNavigationProvenance("namespace", "high"),
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
function compareReferences(left, right) {
|
|
143
|
+
const file = left.file.localeCompare(right.file);
|
|
144
|
+
if (file !== 0)
|
|
145
|
+
return file;
|
|
146
|
+
if (left.range.start.line !== right.range.start.line)
|
|
147
|
+
return left.range.start.line - right.range.start.line;
|
|
148
|
+
return left.range.start.column - right.range.start.column;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/scss/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAC/F,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAU/C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,UAAU,EACV,cAAc,EACd,wBAAwB,EACxB,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,uBAAuB,EACvB,SAAS,EACT,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAgB,MAAM,aAAa,CAAC;AAYzD,iGAAiG;AACjG,SAAS,YAAY,CAAC,GAAY;IAChC,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,CACL,GAAG,CAAC,MAAM,KAAK,QAAQ;QACvB,GAAG,CAAC,MAAM,KAAK,MAAM;QACrB,GAAG,CAAC,MAAM,KAAK,MAAM;QACrB,GAAG,CAAC,MAAM,KAAK,QAAQ;QACvB,GAAG,CAAC,MAAM,KAAK,SAAS,CACzB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAmB,EAAE,GAAgB;IAC5E,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACrF,IAAI,MAAM;YAAE,OAAO,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QAChG,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACzD,IACE,KAAK,CAAC,6BAA6B,CAAC,IAAI,CACtC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CACnF,EACD,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,uDAAuD,EAAE,CAAC;QAClG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5D,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACjC,gGAAgG;QAChG,8FAA8F;QAC9F,yDAAyD;QACzD,IAAI,QAAQ,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAClC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,0CAA0C,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;IAC/F,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IACpG,+FAA+F;IAC/F,qEAAqE;IACrE,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IACtF,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC1D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAmB,EACnB,GAAc,EACd,OAAkC;IAElC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC5E,MAAM,UAAU,GAAgB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,gBAAgB,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;IAC1C,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClF,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,MAAM,eAAe,GAAG,CAAC,IAAY,EAAQ,EAAE;QAC7C,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QACrC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,KAAyB,EAAW,EAAE;QAChE,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACtF,SAAS,GAAG,IAAI,CAAC;YACjB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,0BAA0B,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,qFAAqF;IACrF,0DAA0D;IAC1D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC;YAAE,SAAS;QAC5G,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;YAAE,MAAM;IAC1C,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,SAAS;YAAE,MAAM;QACrB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC5G,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC9F,IAAI,aAAa;YAAE,QAAQ,GAAG,IAAI,CAAC;QACnC,KAAK,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,OAAO,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,QAAQ,GAAG,IAAI,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;gBAAE,MAAM;QAChC,CAAC;QACD,IAAI,QAAQ;YAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnC,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,MAAM,CAAC,GAAG;QACtB,UAAU;QACV,yFAAyF;QACzF,+FAA+F;QAC/F,qFAAqF;QACrF,oDAAoD;QACpD,iBAAiB,EAAE,6BAA6B,CAAC;YAC/C,KAAK;YACL,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,UAAU,EAAE,MAAM;YAClB,aAAa,EAAE,EAAE;YACjB,cAAc,EAAE,EAAE;YAClB,YAAY,EAAE,OAAO;YACrB,SAAS;YACT,wBAAwB,EAAE,gBAAgB;SAC3C,CAAC;QACF,UAAU,EAAE,0BAA0B,CAAC,WAAW,EAAE,MAAM,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAe,EAAE,KAAgB;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;IAC5G,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;AAC5D,CAAC"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { type ProjectIndex, type Reference, type SymbolDef } from "../indexer/types.js";
|
|
2
|
+
import type { FileId, Range } from "../types.js";
|
|
3
|
+
import { type ScssFileFacts, type ScssMemberKind, type ScssModuleLoad, type ScssUse } from "./syntax.js";
|
|
4
|
+
/**
|
|
5
|
+
* The one place that decides what an SCSS module member names. `goToDefinition`,
|
|
6
|
+
* `findReferences`, and rename preview all resolve sites here.
|
|
7
|
+
*
|
|
8
|
+
* URLs use the indexed stylesheet edges (and the import bindings those edges share).
|
|
9
|
+
* `sass:` modules stay external. A name declared more than once in the visible set
|
|
10
|
+
* resolves to nothing, except a variable that one file assigns again: that is one variable.
|
|
11
|
+
*/
|
|
12
|
+
export type ScssNotFound = {
|
|
13
|
+
status: "not_found";
|
|
14
|
+
reason: string;
|
|
15
|
+
unproven?: true;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* How a use reaches its member: in the file that declares it, through `@import` (which has no
|
|
19
|
+
* privacy), or through `@use` or `@forward` (which hide names that start with `-` or `_`).
|
|
20
|
+
*/
|
|
21
|
+
export type ScssAccess = "own" | "import" | "module";
|
|
22
|
+
/**
|
|
23
|
+
* A `@forward` that has a `show` or `hide` list and that a member passed through. `exposed` is the
|
|
24
|
+
* canonical name the list sees: the prefix of this forward and of the forwards inside it, plus the
|
|
25
|
+
* declared name.
|
|
26
|
+
*/
|
|
27
|
+
export type ScssForwardFilter = {
|
|
28
|
+
load: ScssModuleLoad;
|
|
29
|
+
exposed: string;
|
|
30
|
+
};
|
|
31
|
+
export type ScssResolved = {
|
|
32
|
+
status: "ok";
|
|
33
|
+
def: SymbolDef;
|
|
34
|
+
prefix: string;
|
|
35
|
+
access: ScssAccess;
|
|
36
|
+
/** The forward lists on the path from the declaring file to the use, innermost first. */
|
|
37
|
+
filters: readonly ScssForwardFilter[];
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* `shadow`: a local owns the name, so module lookup must not claim it. `indexed` is true when the
|
|
41
|
+
* index holds a definition the exact-name walker can prove (a block variable whose spelling
|
|
42
|
+
* matches). A parameter, a loop variable, or an unindexed scoped mixin or function has none.
|
|
43
|
+
* An indexed scoped mixin or function resolves directly instead of using this miss.
|
|
44
|
+
*/
|
|
45
|
+
export type ScssResolution = ScssResolved | {
|
|
46
|
+
status: "shadow";
|
|
47
|
+
indexed: boolean;
|
|
48
|
+
} | ScssNotFound;
|
|
49
|
+
/** A place where a member is declared. */
|
|
50
|
+
export type ScssSite = {
|
|
51
|
+
file: FileId;
|
|
52
|
+
range: Range;
|
|
53
|
+
};
|
|
54
|
+
/** A top-level declaration, as the index and the navigation consumers see it. */
|
|
55
|
+
export type ScssDeclaredMember = {
|
|
56
|
+
kind: ScssMemberKind;
|
|
57
|
+
/** Canonical declared name. */
|
|
58
|
+
declared: string;
|
|
59
|
+
/** First declaration of the member. A variable assigned again in the file keeps the first one. */
|
|
60
|
+
def: SymbolDef;
|
|
61
|
+
/** Every declaration site of the member, `def` first. */
|
|
62
|
+
sites: readonly ScssSite[];
|
|
63
|
+
};
|
|
64
|
+
export declare function isScssFile(index: ProjectIndex, file: FileId): boolean;
|
|
65
|
+
/** Declarations, loads, and uses of one indexed SCSS file, or null when it cannot be read. */
|
|
66
|
+
export declare function scssFactsForFile(index: ProjectIndex, file: FileId): Promise<ScssFileFacts | null>;
|
|
67
|
+
/**
|
|
68
|
+
* Resolves one scanned use. `shadow` means an enclosing local owns the name, so module
|
|
69
|
+
* lookup must not claim it. `unproven` means more than one member matches, or a load that
|
|
70
|
+
* could contribute members did not resolve.
|
|
71
|
+
*/
|
|
72
|
+
export declare function resolveScssUse(index: ProjectIndex, file: FileId, use: ScssUse): Promise<ScssResolution>;
|
|
73
|
+
/**
|
|
74
|
+
* The member a definition declares: a top-level member, or a placeholder at any depth. Null for
|
|
75
|
+
* locals, parameters, and other selectors.
|
|
76
|
+
*/
|
|
77
|
+
export declare function scssMemberForDefinition(index: ProjectIndex, def: SymbolDef): Promise<ScssDeclaredMember | null>;
|
|
78
|
+
/**
|
|
79
|
+
* True when an indexed block variable is spelled with a different mix of `-` and `_` than a use it covers.
|
|
80
|
+
* The exact-name reference walk omits that use, so coverage must not claim to be complete.
|
|
81
|
+
*/
|
|
82
|
+
export declare function scssLocalSpellingGap(facts: ScssFileFacts, def: SymbolDef): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* True when a scanned local nearer than `def` covers `at` and spells the same Sass variable with a
|
|
85
|
+
* different mix of `-` and `_`. The exact-name walk would keep that read on `def`.
|
|
86
|
+
*/
|
|
87
|
+
export declare function scssNearerEquivalentLocal(facts: ScssFileFacts, def: SymbolDef, at: Range["start"]): boolean;
|
|
88
|
+
/** The imported variable a joined flow-control assignment names, when the click is on that assignment. */
|
|
89
|
+
export declare function scssAssignmentDefinition(index: ProjectIndex, file: FileId, line: number, column: number): Promise<SymbolDef | null>;
|
|
90
|
+
/** True when this indexed variable is a file-scope flow assignment that could not be joined. */
|
|
91
|
+
export declare function scssFlowLocalUnproven(index: ProjectIndex, def: SymbolDef): Promise<boolean>;
|
|
92
|
+
/**
|
|
93
|
+
* True when a block local, parameter, or loop variable may be the variable `variable-exists`
|
|
94
|
+
* names. `global-variable-exists` does not see a block local. A proved user function is not the
|
|
95
|
+
* built-in. Module members are left to {@link hasUnprovenDynamic}.
|
|
96
|
+
*/
|
|
97
|
+
export declare function scssBlockLocalExistenceUnproven(index: ProjectIndex, def: SymbolDef): Promise<boolean>;
|
|
98
|
+
/** Reference span for a use. Null when a forward prefix cannot be split from the member. */
|
|
99
|
+
export declare function scssUseEditRange(facts: ScssFileFacts, use: ScssUse, prefix: string): Range | null;
|
|
100
|
+
/**
|
|
101
|
+
* Files that can see `member`, plus files whose unresolved URL or `meta.load-css` may load the
|
|
102
|
+
* declaring file. `unavailable` files were not fully proved. A directory index (`_index.scss`)
|
|
103
|
+
* is also reached through the name of its directory.
|
|
104
|
+
*/
|
|
105
|
+
export declare function scssReferenceCandidates(index: ProjectIndex, member: ScssDeclaredMember): Promise<{
|
|
106
|
+
files: FileId[];
|
|
107
|
+
unavailable: FileId[];
|
|
108
|
+
}>;
|
|
109
|
+
export declare function scssUseAt(facts: ScssFileFacts, line: number, column: number): ScssUse | undefined;
|
|
110
|
+
/**
|
|
111
|
+
* Same-kind members that would share the new name with `def` in a scope that sees `def`: the
|
|
112
|
+
* module that declares it, every module that exposes it, and every file that sees it without a
|
|
113
|
+
* namespace (`@use ... as *`, `@import`). A forward prefix stays in front of the new name. A
|
|
114
|
+
* placeholder has no namespace, so no file that sees it may also see another placeholder that has
|
|
115
|
+
* the new name.
|
|
116
|
+
*/
|
|
117
|
+
export declare function scssRenameCollisions(index: ProjectIndex, def: SymbolDef, newName: string): Promise<SymbolDef[]>;
|
|
118
|
+
export type ScssMemberUse = {
|
|
119
|
+
use: ScssUse;
|
|
120
|
+
resolved: ScssResolved;
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* The uses in `facts` that resolve to `member`, in source order. `unproven` is true when a use that
|
|
124
|
+
* may name the member could not be resolved, so the file is not fully proved.
|
|
125
|
+
*/
|
|
126
|
+
export declare function scssMemberUses(index: ProjectIndex, file: FileId, facts: ScssFileFacts, member: ScssDeclaredMember): Promise<{
|
|
127
|
+
matches: ScssMemberUse[];
|
|
128
|
+
unproven: boolean;
|
|
129
|
+
}>;
|
|
130
|
+
export type ScssRenameSite = {
|
|
131
|
+
file: FileId;
|
|
132
|
+
range: Range;
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* True when a dynamic lookup in the span where `def` is visible may name that scoped mixin or
|
|
136
|
+
* function. Existence predicates, `call`, and `get-function` name a function; `mixin-exists` and
|
|
137
|
+
* `get-mixin` name a mixin. The call is a proved `sass:meta` binding or a legacy bare built-in.
|
|
138
|
+
* A lookup outside the block, or one a user function owns, does not. Static uses stay references.
|
|
139
|
+
*/
|
|
140
|
+
export declare function scssScopedCallableDynamicUnproven(index: ProjectIndex, def: SymbolDef): Promise<boolean>;
|
|
141
|
+
/**
|
|
142
|
+
* Bare same-kind calls and includes a scoped mixin or function owns.
|
|
143
|
+
* Null when `def` is not a scoped callable. `unproven` when the file cannot be scanned, so
|
|
144
|
+
* coverage must not claim to be complete. A dynamic lookup that may name the callable is reported
|
|
145
|
+
* separately by {@link scssScopedCallableDynamicUnproven}; these ranges stay the proved uses.
|
|
146
|
+
*/
|
|
147
|
+
export declare function scssScopedCallableReferences(index: ProjectIndex, def: SymbolDef): Promise<{
|
|
148
|
+
ranges: Range[];
|
|
149
|
+
unproven: boolean;
|
|
150
|
+
} | null>;
|
|
151
|
+
/**
|
|
152
|
+
* A scoped callable is not a module member. `captured` lists bare calls already spelled with
|
|
153
|
+
* the proposed name that this local would own, and `shadowed` lists calls this local owns when
|
|
154
|
+
* a different same-kind scoped callable would own the edited name (`-` and `_` equivalent).
|
|
155
|
+
* `unaccounted` lists calls of the original name that this local owns and the reference walk
|
|
156
|
+
* omitted; a nearer scoped callable keeps its own calls. A bare dynamic callee (`get-function`,
|
|
157
|
+
* `call`, `get-mixin`, `load-css`, the other meta lookups, or a `_` spelling) whose name is the
|
|
158
|
+
* proposed name is captured too: the rename would make that call invoke this callable. A namespaced
|
|
159
|
+
* dynamic call is not. Null means `def` is not a scoped callable.
|
|
160
|
+
*/
|
|
161
|
+
export declare function scssScopedCallableRenameSites(index: ProjectIndex, def: SymbolDef, newName: string, references: readonly Reference[]): Promise<{
|
|
162
|
+
captured: ScssRenameSite[];
|
|
163
|
+
shadowed: ScssRenameSite[];
|
|
164
|
+
unaccounted: Array<ScssRenameSite & {
|
|
165
|
+
text: string;
|
|
166
|
+
}>;
|
|
167
|
+
} | null>;
|
|
168
|
+
/**
|
|
169
|
+
* The uses that the new name would break.
|
|
170
|
+
* - A block variable captures a bare variable use, or a scoped mixin/function captures a bare
|
|
171
|
+
* include/call, when its same-kind name matches the forward prefix plus the proposed name.
|
|
172
|
+
* A namespaced use cannot be captured.
|
|
173
|
+
* - A name that starts with `-` or `_` is private to its module, so a use through `@use` or
|
|
174
|
+
* `@forward` could no longer reach it. `@import` and the declaring file keep access.
|
|
175
|
+
* - A `@forward` with a `hide` list that names the new name (with the forward prefix) hides the
|
|
176
|
+
* member from the use that reads it through that forward.
|
|
177
|
+
*/
|
|
178
|
+
export declare function scssRenameUseConflicts(index: ProjectIndex, def: SymbolDef, newName: string): Promise<{
|
|
179
|
+
captured: ScssRenameSite[];
|
|
180
|
+
inaccessible: ScssRenameSite[];
|
|
181
|
+
hidden: ScssRenameSite[];
|
|
182
|
+
}>;
|
|
183
|
+
/** Replacement text for one SCSS member edit, or null when the site is not that member. */
|
|
184
|
+
export declare function scssReplacementText(localName: string, oldText: string, newName: string): string | null;
|
|
185
|
+
/**
|
|
186
|
+
* The name an SCSS edit writes for a rename request. The symbol keeps its sigil, so a request of
|
|
187
|
+
* `y` for `$x` writes `$y`, and the conflict checks must look for that spelling.
|
|
188
|
+
*/
|
|
189
|
+
export declare function scssRenamedName(localName: string, newName: string): string;
|
|
190
|
+
//# sourceMappingURL=resolution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolution.d.ts","sourceRoot":"","sources":["../../src/scss/resolution.ts"],"names":[],"mappings":"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"}
|