@component-compass/reference-graph 0.1.24 → 0.1.25
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/dist/engine/component-shape.d.ts +26 -2
- package/dist/engine/component-shape.js +73 -10
- package/dist/engine/component-shape.js.map +1 -1
- package/dist/engine/denotation.d.ts +7 -0
- package/dist/engine/denotation.js +15 -0
- package/dist/engine/denotation.js.map +1 -1
- package/dist/engine/index.d.ts +1 -1
- package/dist/engine/index.js +353 -261
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/member-identity.d.ts +8 -0
- package/dist/engine/member-identity.js +15 -0
- package/dist/engine/member-identity.js.map +1 -1
- package/dist/engine/registry.d.ts +57 -13
- package/dist/engine/registry.js +105 -57
- package/dist/engine/registry.js.map +1 -1
- package/dist/engine/wrapper-folding.d.ts +10 -3
- package/dist/engine/wrapper-folding.js +133 -76
- package/dist/engine/wrapper-folding.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/package.json +1 -1
package/dist/engine/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Graph } from "../types/file-graph.js";
|
|
2
|
+
import type { InferredType } from "../types/inferred-type.js";
|
|
2
3
|
/**
|
|
3
4
|
* Seam: derive the export name a JSX usage attributes to, resolving
|
|
4
5
|
* namespace-import members.
|
|
@@ -47,6 +48,13 @@ export declare function residualMemberChain(imported: string, memberChain: reado
|
|
|
47
48
|
* `parseCompoundExport` (plugin-core `id.ts`) is the matching reader.
|
|
48
49
|
*/
|
|
49
50
|
export declare function compoundExportName(root: string, residual: readonly string[]): string;
|
|
51
|
+
/**
|
|
52
|
+
* THE object-path walk of a compound name's residual: the value `path` names
|
|
53
|
+
* inside `holder`, followed through nested `Object` props. `undefined` when a
|
|
54
|
+
* step is not an `Object` or has no such prop; `holder` itself for an empty
|
|
55
|
+
* path.
|
|
56
|
+
*/
|
|
57
|
+
export declare function memberOfObjectPath(holder: InferredType | undefined, path: readonly string[]): InferredType | undefined;
|
|
50
58
|
/**
|
|
51
59
|
* THE seam for classifying an import target that is NOT in `graph.files`.
|
|
52
60
|
* A resolved absolute target owned by a workspace member is first-party: pin its identity to the definition file (bounded re-export
|
|
@@ -53,6 +53,21 @@ export function residualMemberChain(imported, memberChain) {
|
|
|
53
53
|
export function compoundExportName(root, residual) {
|
|
54
54
|
return residual.length === 0 ? root : `${root}.${residual.join(".")}`;
|
|
55
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* THE object-path walk of a compound name's residual: the value `path` names
|
|
58
|
+
* inside `holder`, followed through nested `Object` props. `undefined` when a
|
|
59
|
+
* step is not an `Object` or has no such prop; `holder` itself for an empty
|
|
60
|
+
* path.
|
|
61
|
+
*/
|
|
62
|
+
export function memberOfObjectPath(holder, path) {
|
|
63
|
+
let cur = holder;
|
|
64
|
+
for (const segment of path) {
|
|
65
|
+
if (cur?.kind !== "Object")
|
|
66
|
+
return undefined;
|
|
67
|
+
cur = cur.props[segment];
|
|
68
|
+
}
|
|
69
|
+
return cur;
|
|
70
|
+
}
|
|
56
71
|
/**
|
|
57
72
|
* THE seam for classifying an import target that is NOT in `graph.files`.
|
|
58
73
|
* A resolved absolute target owned by a workspace member is first-party: pin its identity to the definition file (bounded re-export
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"member-identity.js","sourceRoot":"","sources":["../../src/engine/member-identity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"member-identity.js","sourceRoot":"","sources":["../../src/engine/member-identity.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,WAA8B;IAClF,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC7B,OAAO,QAAQ,KAAK,GAAG,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,WAA8B;IAClF,OAAO,QAAQ,KAAK,GAAG,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AACzF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,QAA2B;IAC1E,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAgC,EAAE,IAAuB;IAC1F,IAAI,GAAG,GAAG,MAAM,CAAC;IACjB,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAC7C,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAY,EACZ,WAAmB,EACnB,QAAgB;IAEhB,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnE,MAAM,GAAG,GAAG,KAAK,CAAC,sBAAsB,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC;IAC1E,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,IAAI,QAAQ,EAAE,CAAC;AAC3F,CAAC"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import type { Graph } from "../index.js";
|
|
1
|
+
import type { BindingDecl, FileGraph, Graph } from "../index.js";
|
|
2
2
|
/**
|
|
3
3
|
* THE registry of component declarations. Identity is a lookup
|
|
4
4
|
* into this set, never a walk terminus. A declaration is a member iff it is
|
|
5
5
|
* admitted-shaped (`isAdmittedShape`, below — `evalKind === "component"`, OR
|
|
6
|
-
* the component-namespace widening below) AND consumed
|
|
6
|
+
* the component-namespace widening below) AND consumed, or a tag's walk
|
|
7
|
+
* landed on it as a function (`renderedAsTag`, supplied by `resolve()`'s tag
|
|
8
|
+
* pre-pass as `TaggedDeclaration`s; being rendered as a tag is consumption).
|
|
9
|
+
* Consumed means exported,
|
|
7
10
|
* referenced by a JSX usage, or HELD — named by an identifier in value
|
|
8
11
|
* position anywhere in the file (`FileGraph.heldRefs`, recorded by the
|
|
9
12
|
* parser: a call argument, an object property value, an array element, an
|
|
@@ -23,7 +26,8 @@ import type { Graph } from "../index.js";
|
|
|
23
26
|
* connect()(Foo)`) is component-shaped and exported, so `buildComponentRegistry`
|
|
24
27
|
* admits it; it is removed again by `excludeFoldedHolders` (below),
|
|
25
28
|
* which `resolve()` applies from the one fold it already runs per call-valued
|
|
26
|
-
* member. The registry never folds:
|
|
29
|
+
* member, unless a tag rendered it. The registry never folds: membership is
|
|
30
|
+
* `(consumed ∧ isAdmittedShape) ∨ renderedAsTag`.
|
|
27
31
|
*/
|
|
28
32
|
export type RegistryEntry = {
|
|
29
33
|
filePath: string;
|
|
@@ -38,11 +42,14 @@ export type RegistryEntry = {
|
|
|
38
42
|
};
|
|
39
43
|
export type ComponentRegistry = {
|
|
40
44
|
hasLocal(filePath: string, exportName: string): boolean;
|
|
41
|
-
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
|
|
45
|
+
/** THE component judge: is the declaration a local identity names a
|
|
46
|
+
* component? It is when it is admitted-shaped or a tag rendered it
|
|
47
|
+
* (`renderedAsTag`). The declaration is `declaration` when the caller
|
|
48
|
+
* carries one, else the one `findDeclaration` names. A compound name
|
|
49
|
+
* (`NS.Inline`) is judged by its holder's `Object` path and the member's
|
|
50
|
+
* shape. Consumption is not asked: the credit being judged is the
|
|
51
|
+
* consumption. */
|
|
52
|
+
isComponent(filePath: string, name: string, declaration?: BindingDecl): boolean;
|
|
46
53
|
/** Where the identity named by (filePath, symbol-or-exportedAs) is
|
|
47
54
|
* declared, and under which local symbol. A compound export (`NS.Inline`)
|
|
48
55
|
* names a member of a holder, not a declaration, and has none. */
|
|
@@ -53,6 +60,13 @@ export type ComponentRegistry = {
|
|
|
53
60
|
column: number;
|
|
54
61
|
};
|
|
55
62
|
} | undefined;
|
|
63
|
+
/** Whether the declaration behind `entry` is one a tag's walk landed on as
|
|
64
|
+
* a function (`renderedAsTag`). */
|
|
65
|
+
isRenderedAsTag(entry: RegistryEntry): boolean;
|
|
66
|
+
/** Whether tagged membership marked a declaration for the local identity
|
|
67
|
+
* (filePath, name): the one tagged membership resolves for it (`declaration`
|
|
68
|
+
* when the caller carries one), read through the same resolution. */
|
|
69
|
+
isTagged(filePath: string, name: string, declaration?: BindingDecl): boolean;
|
|
56
70
|
localEntries(): readonly RegistryEntry[];
|
|
57
71
|
};
|
|
58
72
|
/**
|
|
@@ -69,14 +83,24 @@ export type FoldedHolder = {
|
|
|
69
83
|
};
|
|
70
84
|
/** The registry's key shape, shared with the engine's folded-holder map. */
|
|
71
85
|
export declare function entryKey(filePath: string, name: string): string;
|
|
72
|
-
|
|
86
|
+
/** A local identity a tag's walk landed on as a function (`callable`), named
|
|
87
|
+
* as the render loop names it, with the declaration the render site or the
|
|
88
|
+
* identity's tag-position stamp resolved in scope, when there is one. */
|
|
89
|
+
export type TaggedDeclaration = {
|
|
90
|
+
filePath: string;
|
|
91
|
+
exportName: string;
|
|
92
|
+
declaration?: BindingDecl;
|
|
93
|
+
};
|
|
94
|
+
export declare function buildComponentRegistry(graph: Graph, tagged?: readonly TaggedDeclaration[]): ComponentRegistry;
|
|
73
95
|
/**
|
|
74
96
|
* THE narrowing seam: the roster registry after folded holders are
|
|
75
97
|
* removed. `resolve()` computes `folded` from the ONE fold it already runs
|
|
76
|
-
* per call-valued member; this function never folds. A
|
|
98
|
+
* per call-valued member; this function never folds. A folded holder a tag
|
|
99
|
+
* rendered as a function (`isRenderedAsTag`) is kept: the tag credits the
|
|
100
|
+
* holder itself, and it hands nothing to its target. Any other
|
|
77
101
|
* folded holder is absent from `localEntries()` and `hasLocal` says no for
|
|
78
|
-
* its symbol and its export name; `
|
|
79
|
-
*
|
|
102
|
+
* its symbol and its export name; `isComponent` (the component judge) is
|
|
103
|
+
* untouched.
|
|
80
104
|
* A folded DEFAULT holder hands `isDefault` to its same-file target.
|
|
81
105
|
* The narrowed `hasLocal` answers only for names of surviving entries, so a
|
|
82
106
|
* name the base registry knew only through its de-duplicated `byKey` (never
|
|
@@ -102,8 +126,28 @@ export declare function excludeFoldedHolders(registry: ComponentRegistry, folded
|
|
|
102
126
|
* is exempt, and that inheritance happens in the fold narrowing.
|
|
103
127
|
*
|
|
104
128
|
* The naming rule and its exemptions live in `hasOnlyHostElementNames`,
|
|
105
|
-
* shared with owner classification. `
|
|
129
|
+
* shared with owner classification. `isComponent` is untouched: JSX
|
|
106
130
|
* cannot render a bare lowercase name, and a diagnostic is the residual
|
|
107
131
|
* guard for any other path that lands an occurrence on one.
|
|
108
132
|
*/
|
|
109
133
|
export declare function excludeHostElementNames(registry: ComponentRegistry, graph: Graph): ComponentRegistry;
|
|
134
|
+
/**
|
|
135
|
+
* THE identity-name → declaration lookup, in order: a module-scope declaration
|
|
136
|
+
* of that symbol; a declaration exported under that name
|
|
137
|
+
* (`export { TileImpl as Tile }`); any declaration of that symbol in any scope.
|
|
138
|
+
* `ComponentId.export` carries only the bare name (no scope), so a component
|
|
139
|
+
* declared inside a nested scope — e.g. a shadowed IIFE-local
|
|
140
|
+
* `const Comp = () => <span/>;` — is only findable by symbol; module-scope-only
|
|
141
|
+
* lookup would reject it even though the engine's own resolution already
|
|
142
|
+
* landed on it.
|
|
143
|
+
*
|
|
144
|
+
* Known imprecision (kept — this is a lookup, not a resolution walk): when two
|
|
145
|
+
* SIBLING scopes both declare a same-named symbol with DIFFERENT shapes (two
|
|
146
|
+
* `Item`s in unrelated function bodies, one a component, one not) and nothing
|
|
147
|
+
* is exported under that name, the last step takes the FIRST match in
|
|
148
|
+
* `fg.declarations`' Map order — insertion order, i.e. source order —
|
|
149
|
+
* regardless of which scope the caller actually meant.
|
|
150
|
+
* `ComponentId.export` has no scope field to disambiguate with; threading
|
|
151
|
+
* scope through `ComponentId` is the real fix.
|
|
152
|
+
*/
|
|
153
|
+
export declare function findDeclaration(fg: FileGraph, name: string): BindingDecl | undefined;
|
package/dist/engine/registry.js
CHANGED
|
@@ -3,17 +3,18 @@ import { parseCompoundExport } from "@component-compass/plugin-core";
|
|
|
3
3
|
import { resolveRefToDecl, findLocalDeclaration } from "./helper-callers.js";
|
|
4
4
|
import { evalKind } from "./component-shape.js";
|
|
5
5
|
import { hasOnlyHostElementNames } from "./host-element.js";
|
|
6
|
+
import { memberOfObjectPath } from "./member-identity.js";
|
|
6
7
|
/** The registry's key shape, shared with the engine's folded-holder map. */
|
|
7
8
|
export function entryKey(filePath, name) {
|
|
8
9
|
return `${filePath}::${name}`;
|
|
9
10
|
}
|
|
10
11
|
/**
|
|
11
12
|
* A narrowed view over an existing registry: `localEntries()` and `hasLocal`
|
|
12
|
-
* answer for `entries` only; `
|
|
13
|
-
* `
|
|
14
|
-
* still declared where it was. Both roster narrowings — folded holders and
|
|
15
|
-
* host-element names — construct their result here rather than
|
|
16
|
-
*
|
|
13
|
+
* answer for `entries` only; `isComponent`, `declarationOf`,
|
|
14
|
+
* `isRenderedAsTag` and `isTagged` are always delegated untouched — a narrowed-away member
|
|
15
|
+
* is still declared where it was. Both roster narrowings — folded holders and
|
|
16
|
+
* host-element names — construct their result here rather than each
|
|
17
|
+
* rebuilding the name index.
|
|
17
18
|
*/
|
|
18
19
|
function narrowTo(registry, entries) {
|
|
19
20
|
const survivingNames = new Set();
|
|
@@ -23,12 +24,31 @@ function narrowTo(registry, entries) {
|
|
|
23
24
|
}
|
|
24
25
|
return {
|
|
25
26
|
hasLocal: (filePath, exportName) => survivingNames.has(entryKey(filePath, exportName)),
|
|
26
|
-
|
|
27
|
+
isComponent: (filePath, name, declaration) => registry.isComponent(filePath, name, declaration),
|
|
27
28
|
declarationOf: (filePath, exportName) => registry.declarationOf(filePath, exportName),
|
|
29
|
+
isRenderedAsTag: (entry) => registry.isRenderedAsTag(entry),
|
|
30
|
+
isTagged: (filePath, name, declaration) => registry.isTagged(filePath, name, declaration),
|
|
28
31
|
localEntries: () => entries,
|
|
29
32
|
};
|
|
30
33
|
}
|
|
31
|
-
|
|
34
|
+
/** Whether a declaration's value can be the function a tag's `callable`
|
|
35
|
+
* credit names. Data (a string, object, array, JSX value), an unknown value
|
|
36
|
+
* and a parameter binding cannot. */
|
|
37
|
+
const CAN_HOLD_A_FUNCTION = {
|
|
38
|
+
TypeOf: true,
|
|
39
|
+
Function: true,
|
|
40
|
+
ReturnTypeOf: true,
|
|
41
|
+
ParameterOf: false,
|
|
42
|
+
MemberOf: true,
|
|
43
|
+
Union: true,
|
|
44
|
+
Object: false,
|
|
45
|
+
Array: false,
|
|
46
|
+
JSX: false,
|
|
47
|
+
Str: false,
|
|
48
|
+
Unknown: false,
|
|
49
|
+
DynamicImport: true,
|
|
50
|
+
};
|
|
51
|
+
export function buildComponentRegistry(graph, tagged = []) {
|
|
32
52
|
const consumed = new Set(); // `${file}::${symbol}`
|
|
33
53
|
// 1. Consumption: exports, JSX references, held values.
|
|
34
54
|
for (const [file, fg] of graph.files) {
|
|
@@ -51,19 +71,42 @@ export function buildComponentRegistry(graph) {
|
|
|
51
71
|
consumed.add(entryKey(target.file, target.symbol));
|
|
52
72
|
}
|
|
53
73
|
}
|
|
54
|
-
//
|
|
55
|
-
//
|
|
56
|
-
//
|
|
74
|
+
// Each tagged entry marks one declaration: the one it carries, else the one
|
|
75
|
+
// `findDeclaration` names when its value can hold a function. A compound
|
|
76
|
+
// name names no declaration and marks nothing. `isTagged` reads the same
|
|
77
|
+
// resolution.
|
|
78
|
+
const taggedDeclaration = (filePath, name, declaration) => {
|
|
79
|
+
const fg = graph.files.get(filePath);
|
|
80
|
+
if (fg === undefined)
|
|
81
|
+
return undefined;
|
|
82
|
+
if (declaration !== undefined)
|
|
83
|
+
return declaration;
|
|
84
|
+
const named = findDeclaration(fg, name);
|
|
85
|
+
return named !== undefined && CAN_HOLD_A_FUNCTION[named.value.kind] ? named : undefined;
|
|
86
|
+
};
|
|
87
|
+
const renderedAsTag = new Set();
|
|
88
|
+
for (const { filePath, exportName, declaration } of tagged) {
|
|
89
|
+
const marked = taggedDeclaration(filePath, exportName, declaration);
|
|
90
|
+
if (marked !== undefined)
|
|
91
|
+
renderedAsTag.add(marked);
|
|
92
|
+
}
|
|
93
|
+
const isTagged = (filePath, name, declaration) => {
|
|
94
|
+
const marked = taggedDeclaration(filePath, name, declaration);
|
|
95
|
+
return marked !== undefined && renderedAsTag.has(marked);
|
|
96
|
+
};
|
|
97
|
+
// 2. Membership: consumed AND component-shaped, or rendered as a tag. Among
|
|
98
|
+
// members sharing a name, the one `findDeclaration` resolves the name to
|
|
99
|
+
// takes the first one's entry, in its list position.
|
|
57
100
|
const byKey = new Map();
|
|
58
101
|
const entryIndex = new Map();
|
|
59
102
|
const entries = [];
|
|
103
|
+
const taggedEntries = new Set();
|
|
60
104
|
for (const [file, fg] of graph.files) {
|
|
61
105
|
if (fg.dialect === "vue")
|
|
62
106
|
continue;
|
|
63
107
|
for (const decl of fg.declarations.values()) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
if (!isAdmittedShape(decl.value, graph, fg))
|
|
108
|
+
const symbolKey = entryKey(file, decl.symbol);
|
|
109
|
+
if (!renderedAsTag.has(decl) && !(consumed.has(symbolKey) && isAdmittedShape(decl.value, graph, fg)))
|
|
67
110
|
continue;
|
|
68
111
|
const exportName = decl.exportedAs ?? decl.symbol;
|
|
69
112
|
const entry = {
|
|
@@ -74,6 +117,8 @@ export function buildComponentRegistry(graph) {
|
|
|
74
117
|
loc: decl.loc,
|
|
75
118
|
isDefault: decl.symbol === "default" || fg.exports.some((e) => e.kind === "default" && "local" in e && e.local === decl.symbol),
|
|
76
119
|
};
|
|
120
|
+
if (renderedAsTag.has(decl))
|
|
121
|
+
taggedEntries.add(declarationKey(entry));
|
|
77
122
|
const key = entryKey(file, exportName);
|
|
78
123
|
if (!byKey.has(key)) {
|
|
79
124
|
entryIndex.set(key, entries.length);
|
|
@@ -88,31 +133,33 @@ export function buildComponentRegistry(graph) {
|
|
|
88
133
|
byKey.set(key, entry);
|
|
89
134
|
}
|
|
90
135
|
}
|
|
91
|
-
//
|
|
92
|
-
//
|
|
93
|
-
//
|
|
94
|
-
//
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
136
|
+
// A compound name (`NS.Inline`) names a member of a holder declaration: the
|
|
137
|
+
// holder is looked up by its root and the residual path walked through its
|
|
138
|
+
// Object props. `parseCompoundExport` is the one reader of the dotted form;
|
|
139
|
+
// `compoundExportName` the one writer.
|
|
140
|
+
const judge = (fg, name, declaration) => {
|
|
141
|
+
const { root, path } = parseCompoundExport(name);
|
|
142
|
+
const decl = declaration ?? findDeclaration(fg, root);
|
|
143
|
+
if (decl === undefined)
|
|
144
|
+
return false;
|
|
145
|
+
if (path.length > 0)
|
|
146
|
+
return isAdmittedMember(decl.value, path, graph, fg);
|
|
147
|
+
return isAdmittedShape(decl.value, graph, fg) || renderedAsTag.has(decl);
|
|
148
|
+
};
|
|
149
|
+
// Cached per (file, name) for name-only calls.
|
|
150
|
+
const judgedByName = new Map();
|
|
151
|
+
const isComponent = (filePath, name, declaration) => {
|
|
152
|
+
const fg = graph.files.get(filePath);
|
|
153
|
+
if (fg === undefined || fg.dialect === "vue")
|
|
154
|
+
return false;
|
|
155
|
+
if (declaration !== undefined)
|
|
156
|
+
return judge(fg, name, declaration);
|
|
157
|
+
const cacheKey = entryKey(filePath, name);
|
|
158
|
+
const cached = judgedByName.get(cacheKey);
|
|
100
159
|
if (cached !== undefined)
|
|
101
160
|
return cached;
|
|
102
|
-
const
|
|
103
|
-
|
|
104
|
-
if (fg && fg.dialect !== "vue") {
|
|
105
|
-
// A compound export (`NS.Inline`) names a member of a holder
|
|
106
|
-
// declaration: look the HOLDER up by its root, then walk the residual
|
|
107
|
-
// path through its Object props. `parseCompoundExport` is the one
|
|
108
|
-
// reader of the dotted form; `compoundExportName` the one writer.
|
|
109
|
-
const { root, path } = parseCompoundExport(exportName);
|
|
110
|
-
const decl = findDeclaration(fg, root);
|
|
111
|
-
result =
|
|
112
|
-
decl !== undefined &&
|
|
113
|
-
(path.length === 0 ? isAdmittedShape(decl.value, graph, fg) : isAdmittedMember(decl.value, path, graph, fg));
|
|
114
|
-
}
|
|
115
|
-
shapeCache.set(cacheKey, result);
|
|
161
|
+
const result = judge(fg, name, undefined);
|
|
162
|
+
judgedByName.set(cacheKey, result);
|
|
116
163
|
return result;
|
|
117
164
|
};
|
|
118
165
|
const declarationOf = (filePath, exportName) => {
|
|
@@ -129,18 +176,26 @@ export function buildComponentRegistry(graph) {
|
|
|
129
176
|
};
|
|
130
177
|
return {
|
|
131
178
|
hasLocal: (filePath, exportName) => byKey.has(entryKey(filePath, exportName)),
|
|
132
|
-
|
|
179
|
+
isComponent,
|
|
133
180
|
declarationOf,
|
|
181
|
+
isRenderedAsTag: (entry) => taggedEntries.has(declarationKey(entry)),
|
|
182
|
+
isTagged,
|
|
134
183
|
localEntries: () => entries,
|
|
135
184
|
};
|
|
136
185
|
}
|
|
186
|
+
/** One declaration's key: its file, symbol and position. */
|
|
187
|
+
function declarationKey(entry) {
|
|
188
|
+
return `${entryKey(entry.filePath, entry.symbol)}@${entry.loc.line}:${entry.loc.column}`;
|
|
189
|
+
}
|
|
137
190
|
/**
|
|
138
191
|
* THE narrowing seam: the roster registry after folded holders are
|
|
139
192
|
* removed. `resolve()` computes `folded` from the ONE fold it already runs
|
|
140
|
-
* per call-valued member; this function never folds. A
|
|
193
|
+
* per call-valued member; this function never folds. A folded holder a tag
|
|
194
|
+
* rendered as a function (`isRenderedAsTag`) is kept: the tag credits the
|
|
195
|
+
* holder itself, and it hands nothing to its target. Any other
|
|
141
196
|
* folded holder is absent from `localEntries()` and `hasLocal` says no for
|
|
142
|
-
* its symbol and its export name; `
|
|
143
|
-
*
|
|
197
|
+
* its symbol and its export name; `isComponent` (the component judge) is
|
|
198
|
+
* untouched.
|
|
144
199
|
* A folded DEFAULT holder hands `isDefault` to its same-file target.
|
|
145
200
|
* The narrowed `hasLocal` answers only for names of surviving entries, so a
|
|
146
201
|
* name the base registry knew only through its de-duplicated `byKey` (never
|
|
@@ -155,7 +210,7 @@ export function excludeFoldedHolders(registry, folded) {
|
|
|
155
210
|
const survivors = [];
|
|
156
211
|
for (const entry of registry.localEntries()) {
|
|
157
212
|
const holder = folded.get(entryKey(entry.filePath, entry.symbol));
|
|
158
|
-
if (holder === undefined) {
|
|
213
|
+
if (holder === undefined || registry.isRenderedAsTag(entry)) {
|
|
159
214
|
survivors.push(entry);
|
|
160
215
|
continue;
|
|
161
216
|
}
|
|
@@ -185,7 +240,7 @@ export function excludeFoldedHolders(registry, folded) {
|
|
|
185
240
|
* is exempt, and that inheritance happens in the fold narrowing.
|
|
186
241
|
*
|
|
187
242
|
* The naming rule and its exemptions live in `hasOnlyHostElementNames`,
|
|
188
|
-
* shared with owner classification. `
|
|
243
|
+
* shared with owner classification. `isComponent` is untouched: JSX
|
|
189
244
|
* cannot render a bare lowercase name, and a diagnostic is the residual
|
|
190
245
|
* guard for any other path that lands an occurrence on one.
|
|
191
246
|
*/
|
|
@@ -203,7 +258,7 @@ export function excludeHostElementNames(registry, graph) {
|
|
|
203
258
|
* `export const Sidebar = { Root, Branch, Leaf }` rendered as
|
|
204
259
|
* `<Sidebar.Root/>`. `evalKind` itself stays pure (an `Object` is always
|
|
205
260
|
* "other" there); this widening lives ONLY at the registry boundary — the
|
|
206
|
-
* one place shape gets turned into
|
|
261
|
+
* one place shape gets turned into the judge's and membership's decision.
|
|
207
262
|
*/
|
|
208
263
|
function isAdmittedShape(value, graph, fg) {
|
|
209
264
|
if (evalKind(value, graph, fg) === "component")
|
|
@@ -214,21 +269,14 @@ function isAdmittedShape(value, graph, fg) {
|
|
|
214
269
|
}
|
|
215
270
|
/**
|
|
216
271
|
* The member a compound export names. Walk `path` through nested
|
|
217
|
-
* `Object` props from the holder's value; the terminal
|
|
218
|
-
* admitted-shaped (a component, or itself a component
|
|
219
|
-
* that is not an `Object` prop, or a missing prop, is
|
|
272
|
+
* `Object` props from the holder's value (`memberOfObjectPath`); the terminal
|
|
273
|
+
* value must be admitted-shaped (a component, or itself a component
|
|
274
|
+
* namespace). Any step that is not an `Object` prop, or a missing prop, is
|
|
275
|
+
* not a member.
|
|
220
276
|
*/
|
|
221
277
|
function isAdmittedMember(holder, path, graph, fg) {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
if (cur.kind !== "Object")
|
|
225
|
-
return false;
|
|
226
|
-
const next = cur.props[segment];
|
|
227
|
-
if (next === undefined)
|
|
228
|
-
return false;
|
|
229
|
-
cur = next;
|
|
230
|
-
}
|
|
231
|
-
return isAdmittedShape(cur, graph, fg);
|
|
278
|
+
const member = memberOfObjectPath(holder, path);
|
|
279
|
+
return member !== undefined && isAdmittedShape(member, graph, fg);
|
|
232
280
|
}
|
|
233
281
|
/**
|
|
234
282
|
* THE identity-name → declaration lookup, in order: a module-scope declaration
|
|
@@ -249,7 +297,7 @@ function isAdmittedMember(holder, path, graph, fg) {
|
|
|
249
297
|
* `ComponentId.export` has no scope field to disambiguate with; threading
|
|
250
298
|
* scope through `ComponentId` is the real fix.
|
|
251
299
|
*/
|
|
252
|
-
function findDeclaration(fg, name) {
|
|
300
|
+
export function findDeclaration(fg, name) {
|
|
253
301
|
const atModuleScope = fg.declarations.get(`${MODULE_SCOPE}::${name}`);
|
|
254
302
|
if (atModuleScope)
|
|
255
303
|
return atModuleScope;
|