@principal-ai/subsystems-react 0.32.0 → 0.34.0
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/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/subsystem/ComponentDeclaration.d.ts +7 -1
- package/dist/subsystem/ComponentDeclaration.d.ts.map +1 -1
- package/dist/subsystem/ComponentDeclaration.js +169 -5
- package/dist/subsystem/ComponentDeclaration.js.map +1 -1
- package/dist/subsystem/IssueList.d.ts +4 -2
- package/dist/subsystem/IssueList.d.ts.map +1 -1
- package/dist/subsystem/IssueList.js +6 -6
- package/dist/subsystem/IssueList.js.map +1 -1
- package/dist/subsystem/SymbolInspectionCard.d.ts +31 -0
- package/dist/subsystem/SymbolInspectionCard.d.ts.map +1 -0
- package/dist/subsystem/SymbolInspectionCard.js +247 -0
- package/dist/subsystem/SymbolInspectionCard.js.map +1 -0
- package/dist/subsystem/prettierProvider.d.ts +24 -0
- package/dist/subsystem/prettierProvider.d.ts.map +1 -0
- package/dist/subsystem/prettierProvider.js +22 -0
- package/dist/subsystem/prettierProvider.js.map +1 -0
- package/dist/subsystem/symbolRefs.d.ts +95 -0
- package/dist/subsystem/symbolRefs.d.ts.map +1 -0
- package/dist/subsystem/symbolRefs.js +167 -0
- package/dist/subsystem/symbolRefs.js.map +1 -0
- package/dist/subsystem/tokenizeComponent.d.ts.map +1 -1
- package/dist/subsystem/tokenizeComponent.js +6 -0
- package/dist/subsystem/tokenizeComponent.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +19 -0
- package/src/stories/Subsystem/ComponentDeclarationSymbols.stories.tsx +269 -0
- package/src/subsystem/ComponentDeclaration.tsx +239 -9
- package/src/subsystem/IssueList.tsx +10 -8
- package/src/subsystem/SymbolInspectionCard.tsx +433 -0
- package/src/subsystem/prettierProvider.ts +32 -0
- package/src/subsystem/symbolRefs.test.ts +127 -0
- package/src/subsystem/symbolRefs.ts +256 -0
- package/src/subsystem/tokenizeComponent.ts +5 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SymbolInspectionCard — the declaration of a symbol referenced by a
|
|
3
|
+
* declaration panel, resolved through graphify. Rendered as a popover from the
|
|
4
|
+
* declaration panel.
|
|
5
|
+
*
|
|
6
|
+
* The useful payload is the declaration itself (`inspection.declaration`,
|
|
7
|
+
* rebuilt from graph edges), with `source` as the fallback. `resolution` and
|
|
8
|
+
* `candidates` explain a miss. The "Add to references" affordance is
|
|
9
|
+
* intentionally hidden until it's wired up (`onAddToModel` is accepted but not
|
|
10
|
+
* rendered yet).
|
|
11
|
+
*/
|
|
12
|
+
import { type CSSProperties } from 'react';
|
|
13
|
+
import type { SubsystemOpenFileOptions } from './declarationRef';
|
|
14
|
+
import type { DeclarationSymbolRef, SymbolInspection } from './symbolRefs';
|
|
15
|
+
export interface SymbolInspectionCardProps {
|
|
16
|
+
/** The symbol that was clicked. */
|
|
17
|
+
symbolRef: DeclarationSymbolRef;
|
|
18
|
+
/** Graphify result; absent when the lookup failed. */
|
|
19
|
+
inspection?: SymbolInspection | null;
|
|
20
|
+
error?: string;
|
|
21
|
+
onClose?: () => void;
|
|
22
|
+
/** Add the symbol to the model's references (for an agent to maintain).
|
|
23
|
+
* Accepted but not rendered yet — wired in a later slice. */
|
|
24
|
+
onAddToModel?: (ref: DeclarationSymbolRef, info?: SymbolInspection) => void;
|
|
25
|
+
/** Open the definition file at its line. */
|
|
26
|
+
onOpenFile?: (file: string, opts?: SubsystemOpenFileOptions) => void;
|
|
27
|
+
style?: CSSProperties;
|
|
28
|
+
}
|
|
29
|
+
/** Popover showing the declaration of one referenced symbol. */
|
|
30
|
+
export declare function SymbolInspectionCard({ symbolRef, inspection, error, onClose, onOpenFile, style, }: SymbolInspectionCardProps): import("react").JSX.Element;
|
|
31
|
+
//# sourceMappingURL=SymbolInspectionCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SymbolInspectionCard.d.ts","sourceRoot":"","sources":["../../src/subsystem/SymbolInspectionCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAgC,KAAK,aAAa,EAAkB,MAAM,OAAO,CAAC;AAKzF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAUjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE3E,MAAM,WAAW,yBAAyB;IACxC,mCAAmC;IACnC,SAAS,EAAE,oBAAoB,CAAC;IAChC,sDAAsD;IACtD,UAAU,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;kEAC8D;IAC9D,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC5E,4CAA4C;IAC5C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,wBAAwB,KAAK,IAAI,CAAC;IACrE,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AA+MD,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,UAAU,EACV,KAAK,EACL,OAAO,EACP,UAAU,EACV,KAAK,GACN,EAAE,yBAAyB,+BA+K3B"}
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* SymbolInspectionCard — the declaration of a symbol referenced by a
|
|
4
|
+
* declaration panel, resolved through graphify. Rendered as a popover from the
|
|
5
|
+
* declaration panel.
|
|
6
|
+
*
|
|
7
|
+
* The useful payload is the declaration itself (`inspection.declaration`,
|
|
8
|
+
* rebuilt from graph edges), with `source` as the fallback. `resolution` and
|
|
9
|
+
* `candidates` explain a miss. The "Add to references" affordance is
|
|
10
|
+
* intentionally hidden until it's wired up (`onAddToModel` is accepted but not
|
|
11
|
+
* rendered yet).
|
|
12
|
+
*/
|
|
13
|
+
import { useEffect, useMemo, useState } from 'react';
|
|
14
|
+
import { ExternalLink } from 'lucide-react';
|
|
15
|
+
import { useTheme } from '@principal-ade/industry-theme';
|
|
16
|
+
import { resolvePierreSyntaxThemeName } from '../pierre/pierreSyntaxTheme';
|
|
17
|
+
import { sourceLangForPath } from '../pierre/sourceLang';
|
|
18
|
+
import { parseSourceLocation } from './declarationRef';
|
|
19
|
+
import { generateDeclarationString } from './formatDeclaration';
|
|
20
|
+
import { tokenizeComponent } from './tokenizeComponent';
|
|
21
|
+
import { tokenizeFormatted } from './tokenizeFormatted';
|
|
22
|
+
/**
|
|
23
|
+
* A repo path that wraps at `/` only. Each segment is unbreakable, so the
|
|
24
|
+
* browser can't fall back to breaking at a hyphen (`event-` / `processing`);
|
|
25
|
+
* the `<wbr>` after each slash supplies the break opportunity instead.
|
|
26
|
+
*/
|
|
27
|
+
function WrappablePath({ path }) {
|
|
28
|
+
const nodes = [];
|
|
29
|
+
path.split('/').forEach((seg, i) => {
|
|
30
|
+
if (i > 0) {
|
|
31
|
+
nodes.push('/');
|
|
32
|
+
nodes.push(_jsx("wbr", {}, `b${i}`));
|
|
33
|
+
}
|
|
34
|
+
nodes.push(_jsx("span", { style: { whiteSpace: 'nowrap' }, children: seg }, `s${i}`));
|
|
35
|
+
});
|
|
36
|
+
return _jsx(_Fragment, { children: nodes });
|
|
37
|
+
}
|
|
38
|
+
/** Label stacked above the value, so long values get the full width. */
|
|
39
|
+
function StackedRow({ label, children }) {
|
|
40
|
+
const { theme } = useTheme();
|
|
41
|
+
const muted = theme.colors.textMuted ?? theme.colors.textSecondary;
|
|
42
|
+
return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 2 }, children: [_jsx("span", { style: {
|
|
43
|
+
color: muted,
|
|
44
|
+
fontFamily: theme.fonts.body,
|
|
45
|
+
fontSize: theme.fontSizes[0],
|
|
46
|
+
textTransform: 'uppercase',
|
|
47
|
+
letterSpacing: 0.4,
|
|
48
|
+
}, children: label }), _jsx("span", { style: { minWidth: 0, overflowWrap: 'anywhere' }, children: children })] }));
|
|
49
|
+
}
|
|
50
|
+
/** Map a graphify declaration kind to the construct the renderer expects. */
|
|
51
|
+
function constructForDeclaration(info) {
|
|
52
|
+
const d = info.declaration;
|
|
53
|
+
switch (d?.kind) {
|
|
54
|
+
case 'class':
|
|
55
|
+
return 'class';
|
|
56
|
+
case 'function':
|
|
57
|
+
return 'function';
|
|
58
|
+
case 'method':
|
|
59
|
+
return 'method';
|
|
60
|
+
case 'store':
|
|
61
|
+
return 'store';
|
|
62
|
+
case 'external':
|
|
63
|
+
return 'external';
|
|
64
|
+
case 'custom_entity':
|
|
65
|
+
return 'custom_entity';
|
|
66
|
+
case 'type':
|
|
67
|
+
if (d.enumMembers?.length)
|
|
68
|
+
return 'enum';
|
|
69
|
+
if (d.rhs || d.aliasOf || d.unionOf?.length || d.signature)
|
|
70
|
+
return 'type_alias';
|
|
71
|
+
return 'interface';
|
|
72
|
+
default:
|
|
73
|
+
return 'interface';
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* A valid TS identifier used while generating/formatting the declaration, then
|
|
78
|
+
* swapped for the real symbol name on display. Graphify labels aren't always
|
|
79
|
+
* valid identifiers (`capture-session`), which would make Prettier's parser
|
|
80
|
+
* throw and skip formatting.
|
|
81
|
+
*/
|
|
82
|
+
const SYMBOL_PLACEHOLDER = '__SYMBOL__';
|
|
83
|
+
/** Build a renderable component from the inspection's structured declaration. */
|
|
84
|
+
function componentForInspection(info) {
|
|
85
|
+
if (!info.declaration)
|
|
86
|
+
return null;
|
|
87
|
+
return {
|
|
88
|
+
alias: info.symbol,
|
|
89
|
+
name: SYMBOL_PLACEHOLDER,
|
|
90
|
+
construct: constructForDeclaration(info),
|
|
91
|
+
file: info.node?.sourceFile ?? '',
|
|
92
|
+
purl: info.purl ?? '',
|
|
93
|
+
declaration: info.declaration,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
/** Put the real symbol name back into a generated/formatted declaration. */
|
|
97
|
+
function withSymbolName(text, symbol) {
|
|
98
|
+
return text.split(SYMBOL_PLACEHOLDER).join(symbol);
|
|
99
|
+
}
|
|
100
|
+
/** Typography for the declaration text — the section supplies the framing. */
|
|
101
|
+
function declBlockStyle(theme) {
|
|
102
|
+
return {
|
|
103
|
+
fontFamily: theme.fonts.monospace,
|
|
104
|
+
fontSize: theme.fontSizes[1],
|
|
105
|
+
lineHeight: 1.6,
|
|
106
|
+
whiteSpace: 'pre-wrap',
|
|
107
|
+
overflowWrap: 'anywhere',
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Token stream → per-line colored spans, substituting a placeholder name. Each
|
|
112
|
+
* line is its own block: token text carries no newline (the `newline` token is
|
|
113
|
+
* a marker), so without a block per line everything collapses onto one row.
|
|
114
|
+
*/
|
|
115
|
+
function renderTokenLines(tokens, theme, symbol) {
|
|
116
|
+
const lines = [[]];
|
|
117
|
+
let li = 0;
|
|
118
|
+
for (const tok of tokens) {
|
|
119
|
+
if (tok.kind === 'newline') {
|
|
120
|
+
lines.push([]);
|
|
121
|
+
li++;
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
const text = symbol ? tok.text.split(SYMBOL_PLACEHOLDER).join(symbol) : tok.text;
|
|
125
|
+
lines[li].push(_jsx("span", { style: { color: tok.color ?? theme.colors.text }, children: text }, `${li}-${lines[li].length}`));
|
|
126
|
+
}
|
|
127
|
+
return lines
|
|
128
|
+
.filter((spans) => spans.length > 0)
|
|
129
|
+
.map((spans, i) => (_jsx("div", { style: { minHeight: '1em' }, children: spans }, i)));
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* The declaration, syntax-colored via the same Shiki/Pierre pipeline as the
|
|
133
|
+
* main panel. Falls back to the plain generated string until tokens arrive.
|
|
134
|
+
*/
|
|
135
|
+
function DeclarationPreview({ info }) {
|
|
136
|
+
const { theme, mode } = useTheme();
|
|
137
|
+
const [tokens, setTokens] = useState(null);
|
|
138
|
+
const component = useMemo(() => componentForInspection(info), [info]);
|
|
139
|
+
const fallbackText = useMemo(() => (component ? withSymbolName(generateDeclarationString(component), info.symbol) : ''), [component, info.symbol]);
|
|
140
|
+
useEffect(() => {
|
|
141
|
+
if (!component)
|
|
142
|
+
return;
|
|
143
|
+
let cancelled = false;
|
|
144
|
+
tokenizeComponent(component, 40, resolvePierreSyntaxThemeName(mode))
|
|
145
|
+
.then((t) => {
|
|
146
|
+
if (!cancelled)
|
|
147
|
+
setTokens(t);
|
|
148
|
+
})
|
|
149
|
+
.catch(() => {
|
|
150
|
+
if (!cancelled)
|
|
151
|
+
setTokens(null);
|
|
152
|
+
});
|
|
153
|
+
return () => {
|
|
154
|
+
cancelled = true;
|
|
155
|
+
};
|
|
156
|
+
}, [component, mode]);
|
|
157
|
+
return (_jsx("div", { style: declBlockStyle(theme), children: tokens ? renderTokenLines(tokens, theme, info.symbol) : fallbackText }));
|
|
158
|
+
}
|
|
159
|
+
/** Raw source declaration text, syntax-colored with the file's grammar. */
|
|
160
|
+
function TokenizedSource({ code, lang }) {
|
|
161
|
+
const { theme, mode } = useTheme();
|
|
162
|
+
const [tokens, setTokens] = useState(null);
|
|
163
|
+
useEffect(() => {
|
|
164
|
+
let cancelled = false;
|
|
165
|
+
tokenizeFormatted(code, resolvePierreSyntaxThemeName(mode), lang)
|
|
166
|
+
.then((t) => {
|
|
167
|
+
if (!cancelled)
|
|
168
|
+
setTokens(t);
|
|
169
|
+
})
|
|
170
|
+
.catch(() => {
|
|
171
|
+
if (!cancelled)
|
|
172
|
+
setTokens(null);
|
|
173
|
+
});
|
|
174
|
+
return () => {
|
|
175
|
+
cancelled = true;
|
|
176
|
+
};
|
|
177
|
+
}, [code, lang, mode]);
|
|
178
|
+
return (_jsx("div", { style: declBlockStyle(theme), children: tokens ? renderTokenLines(tokens, theme) : code }));
|
|
179
|
+
}
|
|
180
|
+
/** Popover showing the declaration of one referenced symbol. */
|
|
181
|
+
export function SymbolInspectionCard({ symbolRef, inspection, error, onClose, onOpenFile, style, }) {
|
|
182
|
+
const { theme } = useTheme();
|
|
183
|
+
const muted = theme.colors.textMuted ?? theme.colors.textSecondary;
|
|
184
|
+
const mono = theme.fonts.monospace;
|
|
185
|
+
const small = theme.fontSizes[0];
|
|
186
|
+
const body = theme.fontSizes[1];
|
|
187
|
+
const info = inspection ?? undefined;
|
|
188
|
+
const node = info?.node;
|
|
189
|
+
const line = parseSourceLocation(node?.sourceLocation);
|
|
190
|
+
// Structured declaration when graphify reconstructed it; otherwise the raw
|
|
191
|
+
// source declaration when only the location is known.
|
|
192
|
+
const component = info ? componentForInspection(info) : null;
|
|
193
|
+
const sourceText = info?.source?.text ?? null;
|
|
194
|
+
// The declaration block already carries the symbol's name, so only fall back
|
|
195
|
+
// to a header title when there's nothing to show (loading / miss).
|
|
196
|
+
const hasBody = !!component || !!sourceText;
|
|
197
|
+
// What to say when there's no declaration: ambiguous is "pick one", not a
|
|
198
|
+
// dead end — so it must not read as "no declaration available".
|
|
199
|
+
const statusText = !info
|
|
200
|
+
? 'Nothing in graphify for this symbol.'
|
|
201
|
+
: info.candidates && info.candidates.length > 0
|
|
202
|
+
? `Multiple definitions match (${info.candidates.length}).`
|
|
203
|
+
: `No declaration available from graphify${info.reason ? ` — ${info.reason}` : '.'}`;
|
|
204
|
+
const openFile = () => {
|
|
205
|
+
if (!onOpenFile || !node?.sourceFile)
|
|
206
|
+
return;
|
|
207
|
+
onOpenFile(node.sourceFile, line != null ? { startLine: line } : undefined);
|
|
208
|
+
};
|
|
209
|
+
return (_jsxs("div", { "data-symbol-inspection": true, style: {
|
|
210
|
+
position: 'absolute',
|
|
211
|
+
zIndex: 40,
|
|
212
|
+
width: 360,
|
|
213
|
+
maxWidth: 'calc(100vw - 24px)',
|
|
214
|
+
boxSizing: 'border-box',
|
|
215
|
+
background: theme.colors.backgroundSecondary,
|
|
216
|
+
border: `1px solid ${theme.colors.border}`,
|
|
217
|
+
borderRadius: 8,
|
|
218
|
+
overflow: 'hidden',
|
|
219
|
+
boxShadow: '0 8px 24px rgba(0, 0, 0, 0.28)',
|
|
220
|
+
fontFamily: mono,
|
|
221
|
+
fontSize: body,
|
|
222
|
+
color: theme.colors.text,
|
|
223
|
+
...style,
|
|
224
|
+
}, onClick: (e) => e.stopPropagation(), children: [_jsx("button", { type: "button", "aria-label": "Close", onClick: onClose, style: {
|
|
225
|
+
position: 'absolute',
|
|
226
|
+
top: 6,
|
|
227
|
+
right: 8,
|
|
228
|
+
zIndex: 1,
|
|
229
|
+
border: 'none',
|
|
230
|
+
background: 'transparent',
|
|
231
|
+
color: muted,
|
|
232
|
+
cursor: 'pointer',
|
|
233
|
+
fontSize: 15,
|
|
234
|
+
lineHeight: 1,
|
|
235
|
+
padding: '2px 4px',
|
|
236
|
+
}, children: "\u00D7" }), _jsxs("div", { style: {
|
|
237
|
+
padding: '12px 32px 12px 12px',
|
|
238
|
+
borderBottom: `1px solid ${theme.colors.border}`,
|
|
239
|
+
}, children: [error && (_jsx("span", { style: { color: '#e5534b', fontFamily: theme.fonts.body, fontSize: small }, children: error })), !error && component && info && (_jsx(DeclarationPreview, { info: info }, info.symbol)), !error && !component && sourceText && (_jsx(TokenizedSource, { code: sourceText, lang: sourceLangForPath(info?.source?.file ?? info?.node?.sourceFile ?? '') }, info?.symbol)), !error && !hasBody && (_jsx("span", { style: { color: theme.colors.accent ?? theme.colors.secondary, fontWeight: 600 }, children: symbolRef.name }))] }), !error && (_jsxs("div", { style: { padding: '10px 12px', display: 'flex', flexDirection: 'column', gap: 8 }, children: [node?.sourceFile && (_jsx(StackedRow, { label: "Source", children: onOpenFile ? (_jsxs("span", { role: "button", tabIndex: 0, onClick: openFile, style: {
|
|
240
|
+
cursor: 'pointer',
|
|
241
|
+
color: theme.colors.accent ?? theme.colors.secondary,
|
|
242
|
+
}, children: [_jsx(WrappablePath, { path: node.sourceFile }), line != null ? `:${line}` : '', ' ', _jsx(ExternalLink, { size: 11, style: { display: 'inline', verticalAlign: 'text-bottom' } })] })) : (_jsxs("span", { children: [_jsx(WrappablePath, { path: node.sourceFile }), line != null ? `:${line}` : ''] })) })), !hasBody && (_jsx("span", { style: { color: muted, fontFamily: theme.fonts.body, fontSize: small }, children: statusText })), info?.candidates && info.candidates.length > 0 && (_jsx(StackedRow, { label: "Candidates", children: _jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 2 }, children: info.candidates.slice(0, 6).map((c) => (_jsxs("span", { style: { fontFamily: mono, fontSize: small }, children: [_jsx("span", { style: { color: theme.colors.text }, children: c.label }), c.sourceFile && (_jsxs(_Fragment, { children: [' ', _jsx("span", { role: onOpenFile ? 'button' : undefined, tabIndex: onOpenFile ? 0 : undefined, onClick: onOpenFile ? () => onOpenFile(c.sourceFile, undefined) : undefined, style: {
|
|
243
|
+
color: theme.colors.accent ?? theme.colors.secondary,
|
|
244
|
+
cursor: onOpenFile ? 'pointer' : 'default',
|
|
245
|
+
}, children: _jsx(WrappablePath, { path: c.sourceFile }) })] }))] }, c.nodeId))) }) }))] }))] }));
|
|
246
|
+
}
|
|
247
|
+
//# sourceMappingURL=SymbolInspectionCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SymbolInspectionCard.js","sourceRoot":"","sources":["../../src/subsystem/SymbolInspectionCard.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAsC,MAAM,OAAO,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAyB,MAAM,sBAAsB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAMhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAkBxD;;;;GAIG;AACH,SAAS,aAAa,CAAC,EAAE,IAAI,EAAoB;IAC/C,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACjC,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,gBAAU,IAAI,CAAC,EAAE,CAAI,CAAC,CAAC;SACnC;QACD,KAAK,CAAC,IAAI,CACR,eAAoB,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,YAChD,GAAG,IADK,IAAI,CAAC,EAAE,CAEX,CACR,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,4BAAG,KAAK,GAAI,CAAC;AACtB,CAAC;AAED,wEAAwE;AACxE,SAAS,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAA0C;IAC7E,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;IACnE,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9D,eACE,KAAK,EAAE;oBACL,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;oBAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC5B,aAAa,EAAE,WAAW;oBAC1B,aAAa,EAAE,GAAG;iBACnB,YAEA,KAAK,GACD,EACP,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,YAAG,QAAQ,GAAQ,IACrE,CACP,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,SAAS,uBAAuB,CAAC,IAAsB;IACrD,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;IAC3B,QAAQ,CAAC,EAAE,IAAI,EAAE;QACf,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,UAAU,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,UAAU,CAAC;QACpB,KAAK,eAAe;YAClB,OAAO,eAAe,CAAC;QACzB,KAAK,MAAM;YACT,IAAI,CAAC,CAAC,WAAW,EAAE,MAAM;gBAAE,OAAO,MAAM,CAAC;YACzC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,SAAS;gBAAE,OAAO,YAAY,CAAC;YAChF,OAAO,WAAW,CAAC;QACrB;YACE,OAAO,WAAW,CAAC;KACtB;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAExC,iFAAiF;AACjF,SAAS,sBAAsB,CAAC,IAAsB;IACpD,IAAI,CAAC,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,MAAM;QAClB,IAAI,EAAE,kBAAkB;QACxB,SAAS,EAAE,uBAAuB,CAAC,IAAI,CAAC;QACxC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE;QACjC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC;AACJ,CAAC;AAED,4EAA4E;AAC5E,SAAS,cAAc,CAAC,IAAY,EAAE,MAAc;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC;AAID,8EAA8E;AAC9E,SAAS,cAAc,CAAC,KAAY;IAClC,OAAO;QACL,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS;QACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5B,UAAU,EAAE,GAAG;QACf,UAAU,EAAE,UAAU;QACtB,YAAY,EAAE,UAAU;KACzB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,MAA4B,EAC5B,KAAY,EACZ,MAAe;IAEf,MAAM,KAAK,GAAkB,CAAC,EAAE,CAAC,CAAC;IAClC,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;QACxB,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE;YAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,CAAC;YACL,SAAS;SACV;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QACjF,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CACZ,eAEE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,YAE/C,IAAI,IAHA,GAAG,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAI3B,CACR,CAAC;KACH;IACD,OAAO,KAAK;SACT,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;SACnC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACjB,cAAa,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YACrC,KAAK,IADE,CAAC,CAEL,CACP,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,EAAE,IAAI,EAA8B;IAC9D,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC;IACnC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,yBAAyB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAC1F,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CACzB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,iBAAiB,CAAC,SAAS,EAAE,EAAE,EAAE,4BAA4B,CAAC,IAAI,CAAC,CAAC;aACjE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,SAAS;gBAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,SAAS;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;IAEtB,OAAO,CACL,cAAK,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,YAC9B,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,GACjE,CACP,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAS,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAA4C;IAC/E,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC;IACnC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IAExE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,iBAAiB,CAAC,IAAI,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;aAC9D,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,SAAS;gBAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,SAAS;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAEvB,OAAO,CACL,cAAK,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,YAC9B,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAC5C,CACP,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,oBAAoB,CAAC,EACnC,SAAS,EACT,UAAU,EACV,KAAK,EACL,OAAO,EACP,UAAU,EACV,KAAK,GACqB;IAC1B,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;IACnE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEhC,MAAM,IAAI,GAAG,UAAU,IAAI,SAAS,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACvD,2EAA2E;IAC3E,sDAAsD;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,MAAM,UAAU,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC;IAC9C,6EAA6E;IAC7E,mEAAmE;IACnE,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU,CAAC;IAC5C,0EAA0E;IAC1E,gEAAgE;IAChE,MAAM,UAAU,GAAG,CAAC,IAAI;QACtB,CAAC,CAAC,sCAAsC;QACxC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAC7C,CAAC,CAAC,+BAA+B,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI;YAC3D,CAAC,CAAC,yCAAyC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAEzF,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,EAAE,UAAU;YAAE,OAAO;QAC7C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9E,CAAC,CAAC;IAEF,OAAO,CACL,+CAEE,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,YAAY;YACvB,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,mBAAmB;YAC5C,MAAM,EAAE,aAAa,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YAC1C,YAAY,EAAE,CAAC;YACf,QAAQ,EAAE,QAAQ;YAClB,SAAS,EAAE,gCAAgC;YAC3C,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;YACxB,GAAG,KAAK;SACT,EACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,aAEnC,iBACE,IAAI,EAAC,QAAQ,gBACF,OAAO,EAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE;oBACL,QAAQ,EAAE,UAAU;oBACpB,GAAG,EAAE,CAAC;oBACN,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,CAAC;oBACT,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,aAAa;oBACzB,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,SAAS;oBACjB,QAAQ,EAAE,EAAE;oBACZ,UAAU,EAAE,CAAC;oBACb,OAAO,EAAE,SAAS;iBACnB,uBAGM,EAGT,eACE,KAAK,EAAE;oBACL,OAAO,EAAE,qBAAqB;oBAC9B,YAAY,EAAE,aAAa,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;iBACjD,aAEA,KAAK,IAAI,CACR,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAC7E,KAAK,GACD,CACR,EAEA,CAAC,KAAK,IAAI,SAAS,IAAI,IAAI,IAAI,CAC9B,KAAC,kBAAkB,IAAmB,IAAI,EAAE,IAAI,IAAvB,IAAI,CAAC,MAAM,CAAgB,CACrD,EAEA,CAAC,KAAK,IAAI,CAAC,SAAS,IAAI,UAAU,IAAI,CACrC,KAAC,eAAe,IAEd,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,IAFtE,IAAI,EAAE,MAAM,CAGjB,CACH,EAEA,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CACrB,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,YACnF,SAAS,CAAC,IAAI,GACV,CACR,IACG,EAGL,CAAC,KAAK,IAAI,CACT,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aACrF,IAAI,EAAE,UAAU,IAAI,CACnB,KAAC,UAAU,IAAC,KAAK,EAAC,QAAQ,YACvB,UAAU,CAAC,CAAC,CAAC,CACZ,gBACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE;gCACL,MAAM,EAAE,SAAS;gCACjB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS;6BACrD,aAED,KAAC,aAAa,IAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAI,EACvC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EACpC,KAAC,YAAY,IACX,IAAI,EAAE,EAAE,EACR,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,GAC1D,IACG,CACR,CAAC,CAAC,CAAC,CACF,2BACE,KAAC,aAAa,IAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAI,EACvC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAC1B,CACR,GACU,CACd,EAEA,CAAC,OAAO,IAAI,CACX,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YACzE,UAAU,GACN,CACR,EAEA,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CACjD,KAAC,UAAU,IAAC,KAAK,EAAC,YAAY,YAC5B,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,YAC7D,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtC,gBAAqB,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,aAC/D,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,YAAG,CAAC,CAAC,KAAK,GAAQ,EAC1D,CAAC,CAAC,UAAU,IAAI,CACf,8BACG,GAAG,EACJ,eACE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EACvC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACpC,OAAO,EACL,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,UAAW,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAErE,KAAK,EAAE;oDACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS;oDACpD,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;iDAC3C,YAED,KAAC,aAAa,IAAC,IAAI,EAAE,CAAC,CAAC,UAAU,GAAI,GAChC,IACN,CACJ,KAnBQ,CAAC,CAAC,MAAM,CAoBZ,CACR,CAAC,GACE,GACK,CACd,IAEK,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional host-provided Prettier.
|
|
3
|
+
*
|
|
4
|
+
* Some host bundlers mangle Prettier's already-minified plugin code. Cottontail
|
|
5
|
+
* (Electrobun) re-bundles it and renames a local parameter to a name that
|
|
6
|
+
* collides with an outer function used inside a closure (`e3 is not a
|
|
7
|
+
* function`), which breaks `prettier.format` for every input in the renderer.
|
|
8
|
+
*
|
|
9
|
+
* A host can load a correctly-bundled Prettier outside its own bundler and
|
|
10
|
+
* register it here; `tokenizeComponent` prefers it over the bundled dynamic
|
|
11
|
+
* import. When nothing is registered the built-in import path is unchanged.
|
|
12
|
+
*/
|
|
13
|
+
export type PrettierBundle = {
|
|
14
|
+
prettier: typeof import('prettier/standalone');
|
|
15
|
+
plugins: {
|
|
16
|
+
typescript: typeof import('prettier/plugins/typescript');
|
|
17
|
+
estree: typeof import('prettier/plugins/estree');
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
/** Register (or clear with `null`) a host-provided Prettier bundle. */
|
|
21
|
+
export declare function setPrettierProvider(bundle: PrettierBundle | null): void;
|
|
22
|
+
/** The currently registered bundle, if any. */
|
|
23
|
+
export declare function getPrettierProvider(): PrettierBundle | null;
|
|
24
|
+
//# sourceMappingURL=prettierProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prettierProvider.d.ts","sourceRoot":"","sources":["../../src/subsystem/prettierProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,cAAc,qBAAqB,CAAC,CAAC;IAC/C,OAAO,EAAE;QACP,UAAU,EAAE,cAAc,6BAA6B,CAAC,CAAC;QACzD,MAAM,EAAE,cAAc,yBAAyB,CAAC,CAAC;KAClD,CAAC;CACH,CAAC;AAIF,uEAAuE;AACvE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI,CAEvE;AAED,+CAA+C;AAC/C,wBAAgB,mBAAmB,IAAI,cAAc,GAAG,IAAI,CAE3D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional host-provided Prettier.
|
|
3
|
+
*
|
|
4
|
+
* Some host bundlers mangle Prettier's already-minified plugin code. Cottontail
|
|
5
|
+
* (Electrobun) re-bundles it and renames a local parameter to a name that
|
|
6
|
+
* collides with an outer function used inside a closure (`e3 is not a
|
|
7
|
+
* function`), which breaks `prettier.format` for every input in the renderer.
|
|
8
|
+
*
|
|
9
|
+
* A host can load a correctly-bundled Prettier outside its own bundler and
|
|
10
|
+
* register it here; `tokenizeComponent` prefers it over the bundled dynamic
|
|
11
|
+
* import. When nothing is registered the built-in import path is unchanged.
|
|
12
|
+
*/
|
|
13
|
+
let provider = null;
|
|
14
|
+
/** Register (or clear with `null`) a host-provided Prettier bundle. */
|
|
15
|
+
export function setPrettierProvider(bundle) {
|
|
16
|
+
provider = bundle;
|
|
17
|
+
}
|
|
18
|
+
/** The currently registered bundle, if any. */
|
|
19
|
+
export function getPrettierProvider() {
|
|
20
|
+
return provider;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=prettierProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prettierProvider.js","sourceRoot":"","sources":["../../src/subsystem/prettierProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,IAAI,QAAQ,GAA0B,IAAI,CAAC;AAE3C,uEAAuE;AACvE,MAAM,UAAU,mBAAmB,CAAC,MAA6B;IAC/D,QAAQ,GAAG,MAAM,CAAC;AACpB,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,mBAAmB;IACjC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Referenced symbols inside a component's declaration.
|
|
3
|
+
*
|
|
4
|
+
* A declaration mentions other symbols — parameter/return types, property
|
|
5
|
+
* types, `extends`/`implements`, and related callables (`callers`/`callees`,
|
|
6
|
+
* `references`/`usedBy`). This module flattens the structured declaration into
|
|
7
|
+
* a deduped, lookup-friendly list so the panel can offer a graphify inspection
|
|
8
|
+
* per name, and defines the payload graphify returns for one.
|
|
9
|
+
*
|
|
10
|
+
* Slice 1 is display-only: the inspection payload is produced by the host (or,
|
|
11
|
+
* in stories, by a fixture). Nothing here reads the graph.
|
|
12
|
+
*/
|
|
13
|
+
import type { GraphifyComponentDetail } from '../graphify';
|
|
14
|
+
/** One symbol a declaration references, normalized for lookup. */
|
|
15
|
+
export interface DeclarationSymbolRef {
|
|
16
|
+
/** Referenced name as written (e.g. `SessionRecord`), no call/`()` decoration. */
|
|
17
|
+
name: string;
|
|
18
|
+
/** Graphify node id when the backing reference carried one. */
|
|
19
|
+
nodeId?: string;
|
|
20
|
+
/** Reference context (`parameter_type`, `return_type`, `field`, `caller`, …). */
|
|
21
|
+
context?: string;
|
|
22
|
+
/** `L<line>` of the reference site, when known. */
|
|
23
|
+
sourceLocation?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* How a symbol resolved against the cached graphify graph. Name-first, so it
|
|
27
|
+
* mirrors the type-ref resolver (`graphify/resolve.ts`) rather than component
|
|
28
|
+
* anchoring — there is no claimed file to fall back to.
|
|
29
|
+
*/
|
|
30
|
+
export type SymbolInspectionResolution =
|
|
31
|
+
/** Exactly one definition node for the name. */
|
|
32
|
+
'resolved'
|
|
33
|
+
/** Referenced, but no definition in this corpus (external / ambient type). */
|
|
34
|
+
| 'unresolved'
|
|
35
|
+
/** Multiple same-label definitions. */
|
|
36
|
+
| 'ambiguous'
|
|
37
|
+
/** The name isn't in the graph at all. */
|
|
38
|
+
| 'missing';
|
|
39
|
+
export interface SymbolInspectionNode {
|
|
40
|
+
nodeId: string;
|
|
41
|
+
label: string;
|
|
42
|
+
/** Repo-root-relative source path. */
|
|
43
|
+
sourceFile?: string;
|
|
44
|
+
/** `L<line>` of the definition. */
|
|
45
|
+
sourceLocation?: string;
|
|
46
|
+
fileType?: string;
|
|
47
|
+
community?: string;
|
|
48
|
+
}
|
|
49
|
+
export interface SymbolInspectionCandidate {
|
|
50
|
+
nodeId: string;
|
|
51
|
+
label: string;
|
|
52
|
+
sourceFile?: string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* The actual source declaration, read from the checkout at the node's anchor.
|
|
56
|
+
* Used when graphify resolved a location but couldn't reconstruct the shape.
|
|
57
|
+
*/
|
|
58
|
+
export interface SymbolInspectionSource {
|
|
59
|
+
file: string;
|
|
60
|
+
startLine?: number;
|
|
61
|
+
/** Declaration text as read from source. */
|
|
62
|
+
text: string;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* What graphify has on one symbol. The useful payload is `declaration` — the
|
|
66
|
+
* symbol's declaration shape, rebuilt from graph edges — with `source` as the
|
|
67
|
+
* fallback when graphify knows where the symbol is but not what it is.
|
|
68
|
+
* `resolution` and `candidates` explain a miss; the rest of the graph's
|
|
69
|
+
* inference bookkeeping is deliberately not part of this payload.
|
|
70
|
+
*/
|
|
71
|
+
export interface SymbolInspection {
|
|
72
|
+
symbol: string;
|
|
73
|
+
purl?: string;
|
|
74
|
+
resolution: SymbolInspectionResolution;
|
|
75
|
+
node?: SymbolInspectionNode;
|
|
76
|
+
/** The symbol's declaration, when graphify could reconstruct it. */
|
|
77
|
+
declaration?: GraphifyComponentDetail;
|
|
78
|
+
/** The declaration as read from source, when only the location is known. */
|
|
79
|
+
source?: SymbolInspectionSource;
|
|
80
|
+
candidates?: SymbolInspectionCandidate[];
|
|
81
|
+
/** Human-readable reason when there's neither a declaration nor source. */
|
|
82
|
+
reason?: string;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* True when there's no declaration to show — either graphify couldn't resolve
|
|
86
|
+
* the symbol or couldn't reconstruct its shape. The case where offering
|
|
87
|
+
* "add to model + agent" is worthwhile.
|
|
88
|
+
*/
|
|
89
|
+
export declare function isLimitedInspection(info: SymbolInspection | null | undefined): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Flatten a declaration into the set of symbols it references, deduped by name.
|
|
92
|
+
* Entries backed by a `nodeId` win over bare-name entries.
|
|
93
|
+
*/
|
|
94
|
+
export declare function extractDeclarationSymbolRefs(declaration: GraphifyComponentDetail | undefined): DeclarationSymbolRef[];
|
|
95
|
+
//# sourceMappingURL=symbolRefs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolRefs.d.ts","sourceRoot":"","sources":["../../src/subsystem/symbolRefs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAyB,MAAM,aAAa,CAAC;AAElF,kEAAkE;AAClE,MAAM,WAAW,oBAAoB;IACnC,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAMD;;;;GAIG;AACH,MAAM,MAAM,0BAA0B;AACpC,gDAAgD;AAC9C,UAAU;AACZ,8EAA8E;GAC5E,YAAY;AACd,uCAAuC;GACrC,WAAW;AACb,0CAA0C;GACxC,SAAS,CAAC;AAEd,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,0BAA0B,CAAC;IACvC,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B,oEAAoE;IACpE,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,4EAA4E;IAC5E,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,UAAU,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACzC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GACxC,OAAO,CAET;AAwDD;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,uBAAuB,GAAG,SAAS,GAC/C,oBAAoB,EAAE,CAyFxB"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Referenced symbols inside a component's declaration.
|
|
3
|
+
*
|
|
4
|
+
* A declaration mentions other symbols — parameter/return types, property
|
|
5
|
+
* types, `extends`/`implements`, and related callables (`callers`/`callees`,
|
|
6
|
+
* `references`/`usedBy`). This module flattens the structured declaration into
|
|
7
|
+
* a deduped, lookup-friendly list so the panel can offer a graphify inspection
|
|
8
|
+
* per name, and defines the payload graphify returns for one.
|
|
9
|
+
*
|
|
10
|
+
* Slice 1 is display-only: the inspection payload is produced by the host (or,
|
|
11
|
+
* in stories, by a fixture). Nothing here reads the graph.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* True when there's no declaration to show — either graphify couldn't resolve
|
|
15
|
+
* the symbol or couldn't reconstruct its shape. The case where offering
|
|
16
|
+
* "add to model + agent" is worthwhile.
|
|
17
|
+
*/
|
|
18
|
+
export function isLimitedInspection(info) {
|
|
19
|
+
return !info?.declaration;
|
|
20
|
+
}
|
|
21
|
+
// ---------------------------------------------------------------------------
|
|
22
|
+
// Extraction
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
/** Names that carry no lookup value — primitives and non-identifiers. */
|
|
25
|
+
const PRIMITIVES = new Set([
|
|
26
|
+
'string',
|
|
27
|
+
'number',
|
|
28
|
+
'boolean',
|
|
29
|
+
'bigint',
|
|
30
|
+
'symbol',
|
|
31
|
+
'void',
|
|
32
|
+
'null',
|
|
33
|
+
'undefined',
|
|
34
|
+
'never',
|
|
35
|
+
'any',
|
|
36
|
+
'unknown',
|
|
37
|
+
'object',
|
|
38
|
+
'true',
|
|
39
|
+
'false',
|
|
40
|
+
'self',
|
|
41
|
+
'None',
|
|
42
|
+
'True',
|
|
43
|
+
'False',
|
|
44
|
+
'bool',
|
|
45
|
+
'int',
|
|
46
|
+
'float',
|
|
47
|
+
'str',
|
|
48
|
+
'bytes',
|
|
49
|
+
'list',
|
|
50
|
+
'dict',
|
|
51
|
+
'tuple',
|
|
52
|
+
'set',
|
|
53
|
+
]);
|
|
54
|
+
/** A bare (optionally dotted) identifier we can look up by name. */
|
|
55
|
+
function isSimpleSymbolName(type) {
|
|
56
|
+
if (!type)
|
|
57
|
+
return false;
|
|
58
|
+
const t = type.trim();
|
|
59
|
+
if (!/^[A-Za-z_$][\w$]*(\.[A-Za-z_$][\w$]*)*$/.test(t))
|
|
60
|
+
return false;
|
|
61
|
+
return !PRIMITIVES.has(t);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Normalize a callable/related label (`normalize()`, `.get`, `capture-session`)
|
|
65
|
+
* to a name. Labels are freer than type expressions — kebab-case is common.
|
|
66
|
+
*/
|
|
67
|
+
function normalizeRelatedName(raw) {
|
|
68
|
+
if (!raw)
|
|
69
|
+
return null;
|
|
70
|
+
const t = raw.trim().replace(/^\./, '').replace(/\(\)$/, '');
|
|
71
|
+
if (!/^[A-Za-z_$][\w$.-]*$/.test(t))
|
|
72
|
+
return null;
|
|
73
|
+
return PRIMITIVES.has(t) ? null : t;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Flatten a declaration into the set of symbols it references, deduped by name.
|
|
77
|
+
* Entries backed by a `nodeId` win over bare-name entries.
|
|
78
|
+
*/
|
|
79
|
+
export function extractDeclarationSymbolRefs(declaration) {
|
|
80
|
+
if (!declaration)
|
|
81
|
+
return [];
|
|
82
|
+
const byName = new Map();
|
|
83
|
+
const add = (name, opts = {}) => {
|
|
84
|
+
if (!name)
|
|
85
|
+
return;
|
|
86
|
+
const existing = byName.get(name);
|
|
87
|
+
const nodeId = opts.ref?.nodeId;
|
|
88
|
+
const next = {
|
|
89
|
+
name,
|
|
90
|
+
nodeId: nodeId ?? existing?.nodeId,
|
|
91
|
+
context: opts.ref?.context ?? opts.context ?? existing?.context,
|
|
92
|
+
sourceLocation: opts.ref?.source_location ?? opts.sourceLocation ?? existing?.sourceLocation,
|
|
93
|
+
};
|
|
94
|
+
// Prefer the richer entry when we already have one with a nodeId.
|
|
95
|
+
if (existing?.nodeId && !nodeId)
|
|
96
|
+
return;
|
|
97
|
+
byName.set(name, next);
|
|
98
|
+
};
|
|
99
|
+
const addType = (type, ref, context) => {
|
|
100
|
+
if (!isSimpleSymbolName(type))
|
|
101
|
+
return;
|
|
102
|
+
add(type.trim(), { ref, context });
|
|
103
|
+
};
|
|
104
|
+
const addCall = (call, context) => {
|
|
105
|
+
if (!call)
|
|
106
|
+
return;
|
|
107
|
+
add(normalizeRelatedName(call.name), {
|
|
108
|
+
context,
|
|
109
|
+
sourceLocation: call.source_location,
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
switch (declaration.kind) {
|
|
113
|
+
case 'function':
|
|
114
|
+
for (const p of declaration.parameters ?? [])
|
|
115
|
+
addType(p.type, p.ref, 'parameter_type');
|
|
116
|
+
addType(declaration.returnType, declaration.returnTypeRef, 'return_type');
|
|
117
|
+
for (const c of declaration.callers ?? [])
|
|
118
|
+
addCall(c, 'caller');
|
|
119
|
+
for (const c of declaration.callees ?? [])
|
|
120
|
+
addCall(c, 'callee');
|
|
121
|
+
break;
|
|
122
|
+
case 'method':
|
|
123
|
+
for (const p of declaration.parameters ?? [])
|
|
124
|
+
addType(p.type, p.ref, 'parameter_type');
|
|
125
|
+
addType(declaration.returnType, undefined, 'return_type');
|
|
126
|
+
break;
|
|
127
|
+
case 'class':
|
|
128
|
+
for (const m of declaration.methods ?? []) {
|
|
129
|
+
for (const p of m.parameters ?? [])
|
|
130
|
+
addType(p.type, p.ref, 'parameter_type');
|
|
131
|
+
addType(m.returnType, m.returnTypeRef, 'return_type');
|
|
132
|
+
}
|
|
133
|
+
for (const p of declaration.properties ?? []) {
|
|
134
|
+
addType(p.type, p.typeRef, 'field');
|
|
135
|
+
}
|
|
136
|
+
for (const name of declaration.extends ?? [])
|
|
137
|
+
addType(name, undefined, 'extends');
|
|
138
|
+
for (const name of declaration.implements ?? [])
|
|
139
|
+
addType(name, undefined, 'implements');
|
|
140
|
+
for (const r of declaration.references ?? []) {
|
|
141
|
+
add(normalizeRelatedName(r.name), { ref: r, context: r.context ?? 'references' });
|
|
142
|
+
}
|
|
143
|
+
break;
|
|
144
|
+
case 'type':
|
|
145
|
+
for (const p of declaration.properties ?? []) {
|
|
146
|
+
addType(p.type, p.typeRef, 'field');
|
|
147
|
+
}
|
|
148
|
+
for (const r of declaration.usedBy ?? []) {
|
|
149
|
+
add(normalizeRelatedName(r.name), { ref: r, context: r.context ?? 'usedBy' });
|
|
150
|
+
}
|
|
151
|
+
for (const name of declaration.implementors ?? [])
|
|
152
|
+
addType(name, undefined, 'implementor');
|
|
153
|
+
addType(declaration.aliasOf, undefined, 'alias');
|
|
154
|
+
for (const alt of declaration.unionOf ?? [])
|
|
155
|
+
addType(alt, undefined, 'union');
|
|
156
|
+
break;
|
|
157
|
+
case 'store':
|
|
158
|
+
for (const p of declaration.properties ?? []) {
|
|
159
|
+
addType(p.type, p.typeRef, 'field');
|
|
160
|
+
}
|
|
161
|
+
break;
|
|
162
|
+
default:
|
|
163
|
+
break;
|
|
164
|
+
}
|
|
165
|
+
return [...byName.values()];
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=symbolRefs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolRefs.js","sourceRoot":"","sources":["../../src/subsystem/symbolRefs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokenizeComponent.d.ts","sourceRoot":"","sources":["../../src/subsystem/tokenizeComponent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAKzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"tokenizeComponent.d.ts","sourceRoot":"","sources":["../../src/subsystem/tokenizeComponent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAKzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAgCtE;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,kBAAkB,EAC7B,UAAU,SAAK,EACf,SAAS,GAAE,qBAAqC,GAC/C,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAgD/B"}
|