@lzehrung/codegraph 3.0.0 → 3.0.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 +2 -0
- package/dist/agent/rename-preview.d.ts.map +1 -1
- package/dist/agent/rename-preview.js +54 -5
- package/dist/agent/rename-preview.js.map +1 -1
- package/dist/bin/cli.js +2614 -1417
- package/dist/bin/query-index-worker.js +180 -28
- package/dist/cli/help.d.ts +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +1 -1
- package/dist/graphs/symbol-graph.d.ts +1 -1
- package/dist/graphs/symbol-graph.d.ts.map +1 -1
- package/dist/graphs/symbol-graph.js +8 -0
- package/dist/graphs/symbol-graph.js.map +1 -1
- package/dist/impact/analyzer.d.ts.map +1 -1
- package/dist/impact/analyzer.js +94 -1
- package/dist/impact/analyzer.js.map +1 -1
- package/dist/impact/transitive.d.ts +6 -2
- package/dist/impact/transitive.d.ts.map +1 -1
- package/dist/impact/transitive.js +23 -11
- package/dist/impact/transitive.js.map +1 -1
- package/dist/indexer/build-cache/options.d.ts +3 -1
- package/dist/indexer/build-cache/options.d.ts.map +1 -1
- package/dist/indexer/build-cache/options.js +3 -1
- package/dist/indexer/build-cache/options.js.map +1 -1
- package/dist/indexer/build-cache/project-snapshot.js +4 -0
- package/dist/indexer/build-cache/project-snapshot.js.map +1 -1
- package/dist/indexer/declarations.d.ts.map +1 -1
- package/dist/indexer/declarations.js +32 -7
- package/dist/indexer/declarations.js.map +1 -1
- package/dist/indexer/import-resolution-tables.d.ts.map +1 -1
- package/dist/indexer/import-resolution-tables.js +10 -0
- package/dist/indexer/import-resolution-tables.js.map +1 -1
- package/dist/indexer/imports/import-binding-tables.d.ts.map +1 -1
- package/dist/indexer/imports/import-binding-tables.js +3 -0
- package/dist/indexer/imports/import-binding-tables.js.map +1 -1
- package/dist/indexer/locals-and-exports.d.ts.map +1 -1
- package/dist/indexer/locals-and-exports.js +8 -0
- package/dist/indexer/locals-and-exports.js.map +1 -1
- package/dist/indexer/navigation.d.ts.map +1 -1
- package/dist/indexer/navigation.js +37 -20
- package/dist/indexer/navigation.js.map +1 -1
- package/dist/indexer/reference-context.d.ts.map +1 -1
- package/dist/indexer/reference-context.js +4 -1
- package/dist/indexer/reference-context.js.map +1 -1
- package/dist/indexer/scope-nodes.d.ts.map +1 -1
- package/dist/indexer/scope-nodes.js +5 -0
- package/dist/indexer/scope-nodes.js.map +1 -1
- package/dist/indexer/types.d.ts +5 -1
- package/dist/indexer/types.d.ts.map +1 -1
- package/dist/indexer/types.js +4 -0
- package/dist/indexer/types.js.map +1 -1
- package/dist/languages/all.d.ts +1 -0
- package/dist/languages/all.d.ts.map +1 -1
- package/dist/languages/all.js +1 -0
- package/dist/languages/all.js.map +1 -1
- package/dist/languages/definitions/terraform.d.ts +9 -0
- package/dist/languages/definitions/terraform.d.ts.map +1 -0
- package/dist/languages/definitions/terraform.js +84 -0
- package/dist/languages/definitions/terraform.js.map +1 -0
- package/dist/languages.d.ts +1 -0
- package/dist/languages.d.ts.map +1 -1
- package/dist/languages.js +1 -0
- package/dist/languages.js.map +1 -1
- package/dist/terraform/navigation.d.ts +20 -0
- package/dist/terraform/navigation.d.ts.map +1 -0
- package/dist/terraform/navigation.js +142 -0
- package/dist/terraform/navigation.js.map +1 -0
- package/dist/terraform/resolution.d.ts +82 -0
- package/dist/terraform/resolution.d.ts.map +1 -0
- package/dist/terraform/resolution.js +324 -0
- package/dist/terraform/resolution.js.map +1 -0
- package/dist/terraform/syntax.d.ts +109 -0
- package/dist/terraform/syntax.d.ts.map +1 -0
- package/dist/terraform/syntax.js +441 -0
- package/dist/terraform/syntax.js.map +1 -0
- package/dist/util/member-access-tables.d.ts.map +1 -1
- package/dist/util/member-access-tables.js +3 -0
- package/dist/util/member-access-tables.js.map +1 -1
- package/dist/util/project-files.d.ts.map +1 -1
- package/dist/util/project-files.js +3 -1
- package/dist/util/project-files.js.map +1 -1
- package/dist/util/resolution/specifier-targets.d.ts.map +1 -1
- package/dist/util/resolution/specifier-targets.js +5 -0
- package/dist/util/resolution/specifier-targets.js.map +1 -1
- package/dist/util/resolution/terraform.d.ts +18 -0
- package/dist/util/resolution/terraform.d.ts.map +1 -0
- package/dist/util/resolution/terraform.js +64 -0
- package/dist/util/resolution/terraform.js.map +1 -0
- package/dist/util/trivia-tables.d.ts.map +1 -1
- package/dist/util/trivia-tables.js +9 -0
- package/dist/util/trivia-tables.js.map +1 -1
- package/package.json +4 -4
package/dist/indexer/types.d.ts
CHANGED
|
@@ -21,7 +21,11 @@ export declare enum SymbolKind {
|
|
|
21
21
|
View = "view",
|
|
22
22
|
Index = "index",
|
|
23
23
|
Constraint = "constraint",
|
|
24
|
-
Routine = "routine"
|
|
24
|
+
Routine = "routine",
|
|
25
|
+
Resource = "resource",
|
|
26
|
+
DataSource = "data",
|
|
27
|
+
Module = "module",
|
|
28
|
+
Output = "output"
|
|
25
29
|
}
|
|
26
30
|
export type SymbolDef = {
|
|
27
31
|
file: FileId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/indexer/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/indexer/types.ts"],"names":[],"mappings":"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"}
|
package/dist/indexer/types.js
CHANGED
|
@@ -11,5 +11,9 @@ export var SymbolKind;
|
|
|
11
11
|
SymbolKind["Index"] = "index";
|
|
12
12
|
SymbolKind["Constraint"] = "constraint";
|
|
13
13
|
SymbolKind["Routine"] = "routine";
|
|
14
|
+
SymbolKind["Resource"] = "resource";
|
|
15
|
+
SymbolKind["DataSource"] = "data";
|
|
16
|
+
SymbolKind["Module"] = "module";
|
|
17
|
+
SymbolKind["Output"] = "output";
|
|
14
18
|
})(SymbolKind || (SymbolKind = {}));
|
|
15
19
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/indexer/types.ts"],"names":[],"mappings":"AAcA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/indexer/types.ts"],"names":[],"mappings":"AAcA,MAAM,CAAN,IAAY,UAgBX;AAhBD,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,6BAAe,CAAA;IACf,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IACvB,gCAAkB,CAAA;IAClB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;IACf,2BAAa,CAAA;IACb,6BAAe,CAAA;IACf,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;IACnB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;AACnB,CAAC,EAhBW,UAAU,KAAV,UAAU,QAgBrB"}
|
package/dist/languages/all.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/languages/all.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,2BAA2B,CAAC;AACnC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/languages/all.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,2BAA2B,CAAC;AACnC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,4BAA4B,CAAC;AAEpC,OAAO,sBAAsB,CAAC"}
|
package/dist/languages/all.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/languages/all.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,2BAA2B,CAAC;AACnC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/languages/all.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,CAAC;AACrC,OAAO,6BAA6B,CAAC;AACrC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,2BAA2B,CAAC;AACnC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,4BAA4B,CAAC;AAEpC,OAAO,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { LanguageDefinition } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Terraform (HCL) configuration. Symbols are top-level `variable`, `output`, `module`, `resource`,
|
|
4
|
+
* and `data` blocks and `locals` attributes, named by their quoted label or attribute name. Inputs
|
|
5
|
+
* (`variable`) and `output` values are a module's public interface. References and module calls
|
|
6
|
+
* resolve in `src/terraform/`, not through generic imports or member access.
|
|
7
|
+
*/
|
|
8
|
+
export declare const TERRAFORM_DEF: LanguageDefinition;
|
|
9
|
+
//# sourceMappingURL=terraform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terraform.d.ts","sourceRoot":"","sources":["../../../src/languages/definitions/terraform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAsCvE;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,kBA4C3B,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { registerLanguage } from "../registry.js";
|
|
2
|
+
import { classifyTerraformDefinition, terraformDeclarationForNameNode } from "../../terraform/syntax.js";
|
|
3
|
+
/** A quoted block label with no interpolation, capturing its text as `capture`. */
|
|
4
|
+
function literalLabel(capture) {
|
|
5
|
+
const name = capture ? ` @${capture}` : "";
|
|
6
|
+
return `(string_lit . (quoted_template_start) . (template_literal)${name} . (quoted_template_end) .)`;
|
|
7
|
+
}
|
|
8
|
+
/** An anchored step between adjacent named nodes, such as block header parts; a comment may sit between them. */
|
|
9
|
+
const COMMENT_GAP = ". (comment)* .";
|
|
10
|
+
/** A chunk block for top-level block keywords that take `labels` labels; the last label names it. */
|
|
11
|
+
function labeledChunkBlock(keywords, labels, captureId) {
|
|
12
|
+
const keywordList = keywords.map((keyword) => `"${keyword}"`).join(" ");
|
|
13
|
+
const leading = labels === 2 ? ` ${COMMENT_GAP} (string_lit)` : "";
|
|
14
|
+
return {
|
|
15
|
+
type: "block",
|
|
16
|
+
nameQuery: `. (identifier) @kw (#any-of? @kw ${keywordList})${leading} ${COMMENT_GAP} (string_lit (template_literal) @chunk.name) ${COMMENT_GAP} (block_start)`,
|
|
17
|
+
captureId,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/** A chunk block for an unlabeled top-level block keyword; the keyword names it. */
|
|
21
|
+
function unlabeledChunkBlock(keywords, captureId) {
|
|
22
|
+
const keywordList = keywords.map((keyword) => `"${keyword}"`).join(" ");
|
|
23
|
+
return {
|
|
24
|
+
type: "block",
|
|
25
|
+
nameQuery: `. (identifier) @chunk.name (#any-of? @chunk.name ${keywordList}) ${COMMENT_GAP} (block_start)`,
|
|
26
|
+
captureId,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
const ONE_LABEL_DECLARATION = `(config_file (body (block . (identifier) @kind (#any-of? @kind "variable" "output" "module") ${COMMENT_GAP} ${literalLabel("name")} ${COMMENT_GAP} (block_start))))`;
|
|
30
|
+
const TWO_LABEL_DECLARATION = `(config_file (body (block . (identifier) @kind (#any-of? @kind "resource" "data") ${COMMENT_GAP} ${literalLabel()} ${COMMENT_GAP} ${literalLabel("name")} ${COMMENT_GAP} (block_start))))`;
|
|
31
|
+
const LOCALS_DECLARATION = `(config_file (body (block . (identifier) @kind (#eq? @kind "locals") ${COMMENT_GAP} (block_start) (body (attribute . (identifier) @name)))))`;
|
|
32
|
+
/**
|
|
33
|
+
* Terraform (HCL) configuration. Symbols are top-level `variable`, `output`, `module`, `resource`,
|
|
34
|
+
* and `data` blocks and `locals` attributes, named by their quoted label or attribute name. Inputs
|
|
35
|
+
* (`variable`) and `output` values are a module's public interface. References and module calls
|
|
36
|
+
* resolve in `src/terraform/`, not through generic imports or member access.
|
|
37
|
+
*/
|
|
38
|
+
export const TERRAFORM_DEF = {
|
|
39
|
+
id: "terraform",
|
|
40
|
+
extensions: [".tf"],
|
|
41
|
+
usesQueryDrivenLocals: true,
|
|
42
|
+
structure: {
|
|
43
|
+
blocks: [
|
|
44
|
+
labeledChunkBlock(["resource"], 2, "resource"),
|
|
45
|
+
labeledChunkBlock(["data"], 2, "data"),
|
|
46
|
+
labeledChunkBlock(["module"], 1, "module"),
|
|
47
|
+
labeledChunkBlock(["variable"], 1, "variable"),
|
|
48
|
+
labeledChunkBlock(["output"], 1, "output"),
|
|
49
|
+
unlabeledChunkBlock(["locals"], "locals"),
|
|
50
|
+
labeledChunkBlock(["provider", "check"], 1, "block"),
|
|
51
|
+
labeledChunkBlock(["ephemeral"], 2, "block"),
|
|
52
|
+
unlabeledChunkBlock(["terraform", "moved", "import", "removed"], "block"),
|
|
53
|
+
],
|
|
54
|
+
splitPoints: [],
|
|
55
|
+
comments: ["comment"],
|
|
56
|
+
},
|
|
57
|
+
graph: {
|
|
58
|
+
// A module call depends on its local `source` directory; remote sources stay external.
|
|
59
|
+
imports: `
|
|
60
|
+
(config_file (body (block . (identifier) @kw (#eq? @kw "module")
|
|
61
|
+
(body (attribute . (identifier) @attr (#eq? @attr "source")
|
|
62
|
+
${COMMENT_GAP} (expression . (literal_value . ${literalLabel("from")} .) .)))) @stmt))
|
|
63
|
+
`,
|
|
64
|
+
exports: `
|
|
65
|
+
(config_file (body (block . (identifier) @kind (#any-of? @kind "variable" "output") ${COMMENT_GAP} ${literalLabel("name")} ${COMMENT_GAP} (block_start))))
|
|
66
|
+
`,
|
|
67
|
+
locals: `
|
|
68
|
+
${ONE_LABEL_DECLARATION}
|
|
69
|
+
${TWO_LABEL_DECLARATION}
|
|
70
|
+
${LOCALS_DECLARATION}
|
|
71
|
+
`,
|
|
72
|
+
// Module calls bind no local names; `module.<name>` resolves in src/terraform/.
|
|
73
|
+
importBindings: "",
|
|
74
|
+
},
|
|
75
|
+
nodeTypes: {
|
|
76
|
+
identifier: ["identifier"],
|
|
77
|
+
},
|
|
78
|
+
// Terraform references resolve in src/terraform/, so generic cross-module and member passes skip it.
|
|
79
|
+
supportsCrossModuleSymbols: false,
|
|
80
|
+
classifyDefinition: classifyTerraformDefinition,
|
|
81
|
+
isDeclarationName: (node) => terraformDeclarationForNameNode(node) !== null,
|
|
82
|
+
};
|
|
83
|
+
registerLanguage(TERRAFORM_DEF);
|
|
84
|
+
//# sourceMappingURL=terraform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terraform.js","sourceRoot":"","sources":["../../../src/languages/definitions/terraform.ts"],"names":[],"mappings":"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"}
|
package/dist/languages.d.ts
CHANGED
|
@@ -52,6 +52,7 @@ export declare const KOTLIN_SUPPORT: LanguageSupport;
|
|
|
52
52
|
export declare const SWIFT_SUPPORT: LanguageSupport;
|
|
53
53
|
export declare const ZIG_SUPPORT: LanguageSupport;
|
|
54
54
|
export declare const SQL_SUPPORT: LanguageSupport;
|
|
55
|
+
export declare const TERRAFORM_SUPPORT: LanguageSupport;
|
|
55
56
|
export declare const LANGUAGE_SUPPORTS: LanguageSupport[];
|
|
56
57
|
export type LanguageExtensionMap = Record<string, string>;
|
|
57
58
|
export declare function isLiteralLanguageExtension(extension: string): boolean;
|
package/dist/languages.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAsB,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGpG,OAAO,oBAAoB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAExC,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE;QACT,UAAU,EAAE,kBAAkB,EAAE,CAAC;QACjC,kBAAkB,CAAC,EAAE,kBAAkB,EAAE,CAAC;QAC1C,2BAA2B,CAAC,EAAE,kBAAkB,EAAE,CAAC;QACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,kBAAkB,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,MAAM,CAAC;IACzD,iBAAiB,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC;IACrD,qBAAqB,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC;IACzD,iBAAiB,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC;IACrD,oBAAoB,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC;IACxD,2BAA2B,EAAE,OAAO,CAAC;IACrC,0BAA0B,EAAE,OAAO,CAAC;IACpC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,4BAA4B,EAAE,OAAO,CAAC;IACtC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/C,CAAC;AAyBF,eAAO,MAAM,UAAU,iBAA0C,CAAC;AAClE,eAAO,MAAM,WAAW,iBAA2C,CAAC;AACpE,eAAO,MAAM,UAAU,iBAA0C,CAAC;AAClE,eAAO,MAAM,UAAU,iBAA8C,CAAC;AACtE,eAAO,MAAM,WAAW,iBAA2C,CAAC;AACpE,eAAO,MAAM,YAAY,iBAA4C,CAAC;AACtE,eAAO,MAAM,WAAW,iBAA2C,CAAC;AACpE,eAAO,MAAM,YAAY,iBAA4C,CAAC;AACtE,eAAO,MAAM,YAAY,iBAA4C,CAAC;AACtE,eAAO,MAAM,WAAW,iBAA2C,CAAC;AACpE,eAAO,MAAM,cAAc,iBAA8C,CAAC;AAC1E,eAAO,MAAM,YAAY,iBAA4C,CAAC;AACtE,eAAO,MAAM,UAAU,iBAA0C,CAAC;AAClE,eAAO,MAAM,YAAY,iBAA4C,CAAC;AACtE,eAAO,MAAM,cAAc,iBAA8C,CAAC;AAC1E,eAAO,MAAM,YAAY,iBAA4C,CAAC;AACtE,eAAO,MAAM,SAAS,iBAAyC,CAAC;AAChE,eAAO,MAAM,WAAW,iBAA2C,CAAC;AACpE,eAAO,MAAM,cAAc,iBAA8C,CAAC;AAC1E,eAAO,MAAM,aAAa,iBAA6C,CAAC;AACxE,eAAO,MAAM,WAAW,iBAA2C,CAAC;AACpE,eAAO,MAAM,WAAW,iBAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":"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"}
|
package/dist/languages.js
CHANGED
|
@@ -46,6 +46,7 @@ export const KOTLIN_SUPPORT = adaptDefinition(getLanguageById("kotlin"));
|
|
|
46
46
|
export const SWIFT_SUPPORT = adaptDefinition(getLanguageById("swift"));
|
|
47
47
|
export const ZIG_SUPPORT = adaptDefinition(getLanguageById("zig"));
|
|
48
48
|
export const SQL_SUPPORT = adaptDefinition(getLanguageById("sql"));
|
|
49
|
+
export const TERRAFORM_SUPPORT = adaptDefinition(getLanguageById("terraform"));
|
|
49
50
|
export const LANGUAGE_SUPPORTS = getAllLanguages().map(adaptDefinition);
|
|
50
51
|
const LANGUAGE_EXTENSION_KEY_PATTERN = /^\.[a-z0-9][a-z0-9._+-]*$/;
|
|
51
52
|
const NON_REMAPPABLE_EXTENSIONS = new Set([".vue", ".svelte"]);
|
package/dist/languages.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { FindReferencesResult, GoToRequest, GoToResult, ProjectIndex, SymbolDef } from "../indexer/types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Go-to-definition for a position in a Terraform file, or null for other languages. A position
|
|
4
|
+
* on a declared name returns that declaration; a position on a reference resolves it through
|
|
5
|
+
* `resolveTerraformTarget`.
|
|
6
|
+
*/
|
|
7
|
+
export declare function goToTerraformDefinition(index: ProjectIndex, req: GoToRequest): Promise<GoToResult | null>;
|
|
8
|
+
type FindTerraformReferencesOptions = {
|
|
9
|
+
includeDefinition: boolean;
|
|
10
|
+
maxReferences?: number;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* References to a Terraform declaration, or null for other languages. Candidates are the files
|
|
14
|
+
* of the declaring module plus, for input variables and outputs, the files that call that module
|
|
15
|
+
* through a local source. Every candidate site resolves through `resolveTerraformTarget`, so
|
|
16
|
+
* references agree with go-to-definition.
|
|
17
|
+
*/
|
|
18
|
+
export declare function findTerraformReferences(index: ProjectIndex, def: SymbolDef, options: FindTerraformReferencesOptions): Promise<FindReferencesResult | null>;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=navigation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/terraform/navigation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,YAAY,EAEZ,SAAS,EACV,MAAM,qBAAqB,CAAC;AAe7B;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAa/G;AAED,KAAK,8BAA8B,GAAG;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AASF;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CA2FtC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { createNavigationProvenance, okGoToResult } from "../indexer/navigation-provenance.js";
|
|
2
|
+
import { buildIndexedCandidateCoverage } from "../indexer/navigation-references.js";
|
|
3
|
+
import { rangeContains, sameDef } from "../indexer/reference-context.js";
|
|
4
|
+
import { fileIdentityKey } from "../util/paths.js";
|
|
5
|
+
import { isTerraformFile, resolveTerraformTarget, TERRAFORM_LANGUAGE_ID, terraformAddressMayName, terraformDeclarationForDefinition, terraformFactsForFile, terraformModuleCallerFiles, terraformModuleUseTargetsDefinition, terraformModuleFiles, } from "./resolution.js";
|
|
6
|
+
/**
|
|
7
|
+
* Go-to-definition for a position in a Terraform file, or null for other languages. A position
|
|
8
|
+
* on a declared name returns that declaration; a position on a reference resolves it through
|
|
9
|
+
* `resolveTerraformTarget`.
|
|
10
|
+
*/
|
|
11
|
+
export async function goToTerraformDefinition(index, req) {
|
|
12
|
+
if (!isTerraformFile(index, req.file))
|
|
13
|
+
return null;
|
|
14
|
+
const facts = await terraformFactsForFile(index, req.file);
|
|
15
|
+
if (!facts)
|
|
16
|
+
return { status: "not_found", reason: "Terraform file could not be parsed" };
|
|
17
|
+
const position = { row: req.line, column: req.column };
|
|
18
|
+
const module = index.byFile.get(fileIdentityKey(req.file));
|
|
19
|
+
const declared = module?.locals.find((local) => rangeContains(local.range, position));
|
|
20
|
+
if (declared)
|
|
21
|
+
return okGoToResult(index, declared, { resolution: "exact", confidence: "high" });
|
|
22
|
+
const site = facts.references.find((reference) => rangeContains(reference.range, position));
|
|
23
|
+
if (!site)
|
|
24
|
+
return { status: "not_found", reason: "No Terraform reference at position" };
|
|
25
|
+
const resolved = await resolveTerraformTarget(index, req.file, site.target);
|
|
26
|
+
if (resolved.status !== "ok")
|
|
27
|
+
return { status: "not_found", reason: resolved.reason };
|
|
28
|
+
return okGoToResult(index, resolved.def, { resolution: "exact", confidence: "high" });
|
|
29
|
+
}
|
|
30
|
+
function siteKey(file, range) {
|
|
31
|
+
return `${fileIdentityKey(file)}:${range.start.line}:${range.start.column}`;
|
|
32
|
+
}
|
|
33
|
+
/** Declarations another module can name: inputs, outputs, and what a resource address names. */
|
|
34
|
+
const CROSS_MODULE_KINDS = new Set(["variable", "output", "module", "resource", "data"]);
|
|
35
|
+
/**
|
|
36
|
+
* References to a Terraform declaration, or null for other languages. Candidates are the files
|
|
37
|
+
* of the declaring module plus, for input variables and outputs, the files that call that module
|
|
38
|
+
* through a local source. Every candidate site resolves through `resolveTerraformTarget`, so
|
|
39
|
+
* references agree with go-to-definition.
|
|
40
|
+
*/
|
|
41
|
+
export async function findTerraformReferences(index, def, options) {
|
|
42
|
+
if (!isTerraformFile(index, def.file))
|
|
43
|
+
return null;
|
|
44
|
+
const declaration = await terraformDeclarationForDefinition(index, def);
|
|
45
|
+
const candidateFiles = terraformModuleFiles(index, def.file);
|
|
46
|
+
const unavailableFiles = [];
|
|
47
|
+
if (declaration && CROSS_MODULE_KINDS.has(declaration.kind)) {
|
|
48
|
+
const callers = await terraformModuleCallerFiles(index, def);
|
|
49
|
+
// A file whose facts cannot load may call this module or hold an address, so it is unproven.
|
|
50
|
+
unavailableFiles.push(...callers.unavailable);
|
|
51
|
+
// Callers name inputs and outputs; a resource address anywhere can name nested module calls,
|
|
52
|
+
// resources, and data sources.
|
|
53
|
+
const callerFiles = declaration.kind === "variable" || declaration.kind === "output" ? callers.files : [];
|
|
54
|
+
const addressFiles = declaration.kind === "variable" || declaration.kind === "output" ? [] : callers.addressFiles;
|
|
55
|
+
for (const caller of [...callerFiles, ...addressFiles]) {
|
|
56
|
+
if (!candidateFiles.some((file) => fileIdentityKey(file) === fileIdentityKey(caller))) {
|
|
57
|
+
candidateFiles.push(caller);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
const maxReferences = options.maxReferences;
|
|
62
|
+
const collectionLimit = maxReferences === undefined ? undefined : maxReferences + 1;
|
|
63
|
+
const references = [];
|
|
64
|
+
const seen = new Set();
|
|
65
|
+
const definitionKey = siteKey(def.file, def.range);
|
|
66
|
+
const addReference = (file, range) => {
|
|
67
|
+
if (collectionLimit !== undefined && references.length >= collectionLimit)
|
|
68
|
+
return;
|
|
69
|
+
const key = siteKey(file, range);
|
|
70
|
+
if (!options.includeDefinition && key === definitionKey)
|
|
71
|
+
return;
|
|
72
|
+
if (seen.has(key))
|
|
73
|
+
return;
|
|
74
|
+
seen.add(key);
|
|
75
|
+
references.push({ file, range });
|
|
76
|
+
};
|
|
77
|
+
if (options.includeDefinition)
|
|
78
|
+
addReference(def.file, def.range);
|
|
79
|
+
const scannedFiles = [];
|
|
80
|
+
if (!declaration)
|
|
81
|
+
unavailableFiles.push(def.file);
|
|
82
|
+
for (const file of declaration ? candidateFiles : []) {
|
|
83
|
+
const facts = await terraformFactsForFile(index, file);
|
|
84
|
+
if (!facts) {
|
|
85
|
+
unavailableFiles.push(file);
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
scannedFiles.push(file);
|
|
89
|
+
let unprovenUse = false;
|
|
90
|
+
for (const site of facts.references) {
|
|
91
|
+
if (site.target.name !== def.localName)
|
|
92
|
+
continue;
|
|
93
|
+
const resolved = await resolveTerraformTarget(index, file, site.target);
|
|
94
|
+
if (resolved.status === "ok") {
|
|
95
|
+
if (sameDef(resolved.def, def, index.languageExtensions))
|
|
96
|
+
addReference(file, site.range);
|
|
97
|
+
}
|
|
98
|
+
else if (resolved.unproven) {
|
|
99
|
+
// A same-named use behind a duplicate declaration or an unreadable file may still name it.
|
|
100
|
+
unprovenUse = true;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// A whole module value (`module.net`), or indexes that do not fit the call's instancing, may
|
|
104
|
+
// read this output without naming it; a resource address can name a nested module call, a
|
|
105
|
+
// resource, or a data source that references cannot rewrite yet.
|
|
106
|
+
for (const use of facts.moduleObjectUses) {
|
|
107
|
+
if (use.addressChain) {
|
|
108
|
+
if (await terraformAddressMayName(index, file, use.addressChain, def, declaration?.kind))
|
|
109
|
+
unprovenUse = true;
|
|
110
|
+
}
|
|
111
|
+
else if (declaration?.kind === "output") {
|
|
112
|
+
if (await terraformModuleUseTargetsDefinition(index, file, use, def))
|
|
113
|
+
unprovenUse = true;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (unprovenUse)
|
|
117
|
+
unavailableFiles.push(file);
|
|
118
|
+
}
|
|
119
|
+
references.sort((left, right) => left.file.localeCompare(right.file) ||
|
|
120
|
+
left.range.start.line - right.range.start.line ||
|
|
121
|
+
left.range.start.column - right.range.start.column);
|
|
122
|
+
const truncated = maxReferences !== undefined && references.length > maxReferences;
|
|
123
|
+
if (truncated)
|
|
124
|
+
references.length = maxReferences;
|
|
125
|
+
return {
|
|
126
|
+
status: "ok",
|
|
127
|
+
definition: def,
|
|
128
|
+
references,
|
|
129
|
+
provenance: createNavigationProvenance("exact", "high"),
|
|
130
|
+
referenceCoverage: buildIndexedCandidateCoverage({
|
|
131
|
+
index,
|
|
132
|
+
def,
|
|
133
|
+
languageId: TERRAFORM_LANGUAGE_ID,
|
|
134
|
+
exportedNames: [],
|
|
135
|
+
candidateFiles,
|
|
136
|
+
scannedFiles,
|
|
137
|
+
truncated,
|
|
138
|
+
strategyUnavailableFiles: unavailableFiles,
|
|
139
|
+
}),
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/terraform/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAC/F,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAUzE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,iCAAiC,EACjC,qBAAqB,EACrB,0BAA0B,EAC1B,mCAAmC,EACnC,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,KAAmB,EAAE,GAAgB;IACjF,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC;IACzF,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IACvD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtF,IAAI,QAAQ;QAAE,OAAO,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;IAChG,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5F,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC;IACxF,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5E,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IACtF,OAAO,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACxF,CAAC;AAOD,SAAS,OAAO,CAAC,IAAY,EAAE,KAAY;IACzC,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;AAC9E,CAAC;AAED,gGAAgG;AAChG,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAEzF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAmB,EACnB,GAAc,EACd,OAAuC;IAEvC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,WAAW,GAAG,MAAM,iCAAiC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,gBAAgB,GAAa,EAAE,CAAC;IACtC,IAAI,WAAW,IAAI,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5D,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7D,6FAA6F;QAC7F,gBAAgB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9C,6FAA6F;QAC7F,+BAA+B;QAC/B,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,KAAK,UAAU,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1G,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,KAAK,UAAU,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAClH,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,WAAW,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACtF,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5C,MAAM,eAAe,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;IACpF,MAAM,UAAU,GAAgB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAY,EAAQ,EAAE;QACxD,IAAI,eAAe,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,IAAI,eAAe;YAAE,OAAO;QAClF,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,GAAG,KAAK,aAAa;YAAE,OAAO;QAChE,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,IAAI,OAAO,CAAC,iBAAiB;QAAE,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACjE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,CAAC,WAAW;QAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,CAAC,SAAS;gBAAE,SAAS;YACjD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACxE,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,kBAAkB,CAAC;oBAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3F,CAAC;iBAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC7B,2FAA2F;gBAC3F,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QACD,6FAA6F;QAC7F,0FAA0F;QAC1F,iEAAiE;QACjE,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACzC,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;gBACrB,IAAI,MAAM,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC;oBAAE,WAAW,GAAG,IAAI,CAAC;YAC/G,CAAC;iBAAM,IAAI,WAAW,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1C,IAAI,MAAM,mCAAmC,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC;oBAAE,WAAW,GAAG,IAAI,CAAC;YAC3F,CAAC;QACH,CAAC;QACD,IAAI,WAAW;YAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,UAAU,CAAC,IAAI,CACb,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;QAC9C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CACrD,CAAC;IACF,MAAM,SAAS,GAAG,aAAa,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,aAAa,CAAC;IACnF,IAAI,SAAS;QAAE,UAAU,CAAC,MAAM,GAAG,aAAa,CAAC;IACjD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,GAAG;QACf,UAAU;QACV,UAAU,EAAE,0BAA0B,CAAC,OAAO,EAAE,MAAM,CAAC;QACvD,iBAAiB,EAAE,6BAA6B,CAAC;YAC/C,KAAK;YACL,GAAG;YACH,UAAU,EAAE,qBAAqB;YACjC,aAAa,EAAE,EAAE;YACjB,cAAc;YACd,YAAY;YACZ,SAAS;YACT,wBAAwB,EAAE,gBAAgB;SAC3C,CAAC;KACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { ProjectIndex, SymbolDef } from "../indexer/types.js";
|
|
2
|
+
import type { FileId, Range } from "../types.js";
|
|
3
|
+
import { type TerraformDeclaration, type TerraformDeclarationKind, type TerraformFileFacts, type TerraformModuleObjectUse, type TerraformReferenceTarget } from "./syntax.js";
|
|
4
|
+
/**
|
|
5
|
+
* The one place that decides what a Terraform reference names. `goToDefinition`,
|
|
6
|
+
* `findReferences`, and rename preview all resolve sites here.
|
|
7
|
+
*
|
|
8
|
+
* - `var`, `local`, `module`, resource, and data source references resolve within the module
|
|
9
|
+
* directory of the referring file.
|
|
10
|
+
* - `module.<name>.<output>` and module call arguments resolve in the directory named by the
|
|
11
|
+
* call's literal local `source`. Registry, Git, and other remote sources are not followed.
|
|
12
|
+
* - A name declared more than once in one module is ambiguous and resolves to nothing.
|
|
13
|
+
*/
|
|
14
|
+
export declare const TERRAFORM_LANGUAGE_ID = "terraform";
|
|
15
|
+
/**
|
|
16
|
+
* A failed resolution. `unproven` marks a lookup that may still name any same-named declaration:
|
|
17
|
+
* the name is declared more than once in the module (invalid Terraform, so no target is chosen) or
|
|
18
|
+
* a file of the module could not be read. References report such uses as partial coverage.
|
|
19
|
+
*/
|
|
20
|
+
export type TerraformNotFound = {
|
|
21
|
+
status: "not_found";
|
|
22
|
+
reason: string;
|
|
23
|
+
unproven?: true;
|
|
24
|
+
};
|
|
25
|
+
export type TerraformResolution = {
|
|
26
|
+
status: "ok";
|
|
27
|
+
def: SymbolDef;
|
|
28
|
+
} | TerraformNotFound;
|
|
29
|
+
export declare function isTerraformFile(index: ProjectIndex, file: FileId): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Declarations and reference sites of one indexed Terraform file, or null when the file is not
|
|
32
|
+
* indexed or could not be parsed. Cached per indexed module, so a re-indexed file is re-read.
|
|
33
|
+
*/
|
|
34
|
+
export declare function terraformFactsForFile(index: ProjectIndex, file: FileId): Promise<TerraformFileFacts | null>;
|
|
35
|
+
/** Indexed Terraform files of the module (directory) that contains `file`, including `file`. */
|
|
36
|
+
export declare function terraformModuleFiles(index: ProjectIndex, file: FileId): FileId[];
|
|
37
|
+
/** Every indexed Terraform file, in path order. */
|
|
38
|
+
export declare function indexedTerraformFiles(index: ProjectIndex): FileId[];
|
|
39
|
+
/** True when `use` in `file` may read an output of the module whose files include `def`, unproven. */
|
|
40
|
+
export declare function terraformModuleUseTargetsDefinition(index: ProjectIndex, file: FileId, use: TerraformModuleObjectUse, def: SymbolDef): Promise<boolean>;
|
|
41
|
+
/** Resolves one reference target written in `file` to its indexed declaration. */
|
|
42
|
+
export declare function resolveTerraformTarget(index: ProjectIndex, file: FileId, target: TerraformReferenceTarget): Promise<TerraformResolution>;
|
|
43
|
+
/** The Terraform declaration that an indexed definition names, if any. */
|
|
44
|
+
export declare function terraformDeclarationForDefinition(index: ProjectIndex, def: SymbolDef): Promise<TerraformDeclaration | undefined>;
|
|
45
|
+
/**
|
|
46
|
+
* Declarations in the same module that renaming `def` to `newName` would collide with. Terraform
|
|
47
|
+
* keeps one namespace per declaration kind (and per type for resources and data sources), so only
|
|
48
|
+
* a same-kind declaration with that name conflicts.
|
|
49
|
+
*/
|
|
50
|
+
export declare function terraformRenameCollisions(index: ProjectIndex, def: SymbolDef, newName: string): Promise<SymbolDef[]>;
|
|
51
|
+
/**
|
|
52
|
+
* Reference sites to a data source `def` that a `check` block would capture after renaming it to
|
|
53
|
+
* `newName`: the check declares its own `data "<type>" "<newName>"`, which wins inside the check.
|
|
54
|
+
*/
|
|
55
|
+
export declare function terraformScopedDataCaptures(index: ProjectIndex, def: SymbolDef, newName: string, references: ReadonlyArray<{
|
|
56
|
+
file: FileId;
|
|
57
|
+
range: Range;
|
|
58
|
+
}>): Promise<Array<{
|
|
59
|
+
file: FileId;
|
|
60
|
+
range: Range;
|
|
61
|
+
}>>;
|
|
62
|
+
/** True when renaming `def` to `newName` would give an input variable a reserved name. */
|
|
63
|
+
export declare function isTerraformReservedRename(index: ProjectIndex, def: SymbolDef, newName: string): Promise<boolean>;
|
|
64
|
+
/**
|
|
65
|
+
* Files outside the declaring module that can reference a declaration: every file of each module
|
|
66
|
+
* that calls the declaring directory through a local source. Call arguments name input variables,
|
|
67
|
+
* and `module.<name>.<output>` can appear in any file of the calling module. `addressFiles` lists
|
|
68
|
+
* every file that holds a module resource address, which can name nested calls at any depth.
|
|
69
|
+
* `unavailable` lists files whose facts could not be loaded, so what they name is unknown.
|
|
70
|
+
*/
|
|
71
|
+
export declare function terraformModuleCallerFiles(index: ProjectIndex, def: SymbolDef): Promise<{
|
|
72
|
+
files: FileId[];
|
|
73
|
+
addressFiles: FileId[];
|
|
74
|
+
unavailable: FileId[];
|
|
75
|
+
}>;
|
|
76
|
+
/**
|
|
77
|
+
* True when a module resource address written in `file` may name `def`: a nested module call in
|
|
78
|
+
* its chain, or a resource or data source of the last called module. Each chain segment resolves
|
|
79
|
+
* in the module the previous segment calls; an unproven segment may name anything.
|
|
80
|
+
*/
|
|
81
|
+
export declare function terraformAddressMayName(index: ProjectIndex, file: FileId, chain: readonly string[], def: SymbolDef, kind: TerraformDeclarationKind | undefined): Promise<boolean>;
|
|
82
|
+
//# sourceMappingURL=resolution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolution.d.ts","sourceRoot":"","sources":["../../src/terraform/resolution.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAe,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhF,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EAEvB,KAAK,wBAAwB,EAG7B,KAAK,wBAAwB,EAC9B,MAAM,aAAa,CAAC;AAErB;;;;;;;;;GASG;AAEH,eAAO,MAAM,qBAAqB,cAAc,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEzF,MAAM,MAAM,mBAAmB,GAAG;IAAE,MAAM,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,SAAS,CAAA;CAAE,GAAG,iBAAiB,CAAC;AAQvF,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1E;AAmBD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAS3G;AAED,gGAAgG;AAChG,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAIhF;AAsBD,mDAAmD;AACnD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,EAAE,CAKnE;AAuHD,sGAAsG;AACtG,wBAAsB,mCAAmC,CACvD,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,wBAAwB,EAC7B,GAAG,EAAE,SAAS,GACb,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED,kFAAkF;AAClF,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAe9B;AAED,0EAA0E;AAC1E,wBAAsB,iCAAiC,CACrD,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,GACb,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAK3C;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,SAAS,EAAE,CAAC,CAWtB;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC,GACxD,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC,CAkBhD;AAcD,0FAA0F;AAC1F,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,SAAS,GACb,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAqB7E;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,wBAAwB,GAAG,SAAS,GACzC,OAAO,CAAC,OAAO,CAAC,CAclB"}
|