logicstamp-context 0.3.8 → 0.3.10
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/LLM_CONTEXT.md +2 -2
- package/README.md +16 -19
- package/dist/core/astParser/detectors.d.ts +15 -0
- package/dist/core/astParser/detectors.d.ts.map +1 -1
- package/dist/core/astParser/detectors.js +187 -2
- package/dist/core/astParser/detectors.js.map +1 -1
- package/dist/core/styleExtractor/tailwind.d.ts +8 -4
- package/dist/core/styleExtractor/tailwind.d.ts.map +1 -1
- package/dist/core/styleExtractor/tailwind.js +307 -31
- package/dist/core/styleExtractor/tailwind.js.map +1 -1
- package/dist/types/UIFContract.d.ts +6 -0
- package/dist/types/UIFContract.d.ts.map +1 -1
- package/dist/types/UIFContract.js.map +1 -1
- package/package.json +1 -1
package/LLM_CONTEXT.md
CHANGED
|
@@ -94,7 +94,7 @@ The `context_main.json` file serves as a directory index:
|
|
|
94
94
|
}
|
|
95
95
|
],
|
|
96
96
|
"meta": {
|
|
97
|
-
"source": "logicstamp-context@0.3.
|
|
97
|
+
"source": "logicstamp-context@0.3.10"
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
```
|
|
@@ -117,7 +117,7 @@ Each folder's `context.json` contains an array of LogicStamp bundles. Each bundl
|
|
|
117
117
|
- `graph.edges` lists dependency relationships between nodes (empty when analysis depth is 1).
|
|
118
118
|
- `meta` section contains two critical fields:
|
|
119
119
|
- `missing`: Array of unresolved dependencies. Each entry includes `name` (import path), `reason` (why it failed), and `referencedBy` (source component). Empty array indicates complete dependency resolution.
|
|
120
|
-
- `source`: Generator version string (e.g., `"logicstamp-context@0.3.
|
|
120
|
+
- `source`: Generator version string (e.g., `"logicstamp-context@0.3.10"`) for compatibility tracking.
|
|
121
121
|
- Example bundle skeleton:
|
|
122
122
|
|
|
123
123
|
```
|
package/README.md
CHANGED
|
@@ -1,34 +1,30 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://logicstamp.dev">
|
|
3
|
-
<
|
|
3
|
+
<picture>
|
|
4
|
+
<source media="(prefers-color-scheme: dark)" srcset="assets/logicstamp-woodmark-dark.png">
|
|
5
|
+
<source media="(prefers-color-scheme: light)" srcset="assets/logicstamp-woodmark-light.png">
|
|
6
|
+
<img src="assets/logicstamp-woodmark-light.png" alt="LogicStamp" width="400" height="auto">
|
|
7
|
+
</picture>
|
|
4
8
|
</a>
|
|
5
9
|
|
|
10
|
+
### Understand your codebase. Generate deterministic context.
|
|
11
|
+
<small><em>Currently supports React · TypeScript</em></small>
|
|
6
12
|
<br/>
|
|
7
13
|
<br/>
|
|
14
|
+
<strong>Fast • One-time setup</strong>
|
|
15
|
+
<br/>
|
|
16
|
+
<br/>
|
|
17
|
+
<a href="https://github.com/LogicStamp">
|
|
18
|
+
<img src="./assets/logicstamp-fox.svg" alt="LogicStamp Fox" width="100" style="min-width: 80px;">
|
|
19
|
+
</a>
|
|
8
20
|
|
|
9
|
-

|
|
10
22
|

|
|
11
23
|

|
|
12
24
|

|
|
13
25
|
[](https://github.com/LogicStamp/logicstamp-context/actions)
|
|
14
26
|
|
|
15
27
|
<br/>
|
|
16
|
-
|
|
17
|
-
<table>
|
|
18
|
-
<tr>
|
|
19
|
-
<td align="center">
|
|
20
|
-
<a href="https://github.com/LogicStamp">
|
|
21
|
-
<img src="./assets/logicstamp-fox.svg" alt="LogicStamp Fox" width="80" style="min-width: 72px;">
|
|
22
|
-
</a>
|
|
23
|
-
</td>
|
|
24
|
-
<td align="left">
|
|
25
|
-
<strong>AI-ready context bundles for React & TypeScript.</strong><br/>
|
|
26
|
-
Fast. Deterministic. One-time setup.
|
|
27
|
-
</td>
|
|
28
|
-
</tr>
|
|
29
|
-
</table>
|
|
30
|
-
|
|
31
|
-
<br/>
|
|
32
28
|
</div>
|
|
33
29
|
|
|
34
30
|

|
|
@@ -81,7 +77,7 @@ stamp context
|
|
|
81
77
|
|
|
82
78
|
> **ℹ️** If you see `"PRIVATE_DATA"` in output, see the **Security** section below.
|
|
83
79
|
|
|
84
|
-
> **Note:** This is a beta release (v0.3.
|
|
80
|
+
> **Note:** This is a beta release (v0.3.10). We're actively improving the tool based on user feedback. If you encounter any issues or have suggestions, please [open an issue on GitHub](https://github.com/LogicStamp/logicstamp-context/issues).
|
|
85
81
|
|
|
86
82
|
📋 **For a detailed step-by-step getting started guide with integration examples, see [Getting Started Guide](https://logicstamp.dev/docs/getting-started).**
|
|
87
83
|
|
|
@@ -124,6 +120,7 @@ This transforms code analysis from "parse and infer" to "read and reason" - maki
|
|
|
124
120
|
- **Next.js** - partial support (App / Pages Router analysis)
|
|
125
121
|
- **Vue 3** - partial support (Composition API in TS/TSX files)
|
|
126
122
|
- **UI frameworks** - Material UI, ShadCN/UI, Radix UI, Tailwind CSS, Styled Components, SCSS/CSS Modules
|
|
123
|
+
- **Backend frameworks** - planned for v0.4.x (Express, NestJS) - see [ROADMAP.md](ROADMAP.md)
|
|
127
124
|
|
|
128
125
|
> **Note:** LogicStamp currently analyzes `.ts` and `.tsx` files only. JavaScript files (`.js`, `.jsx`) are not analyzed for context generation. Vue 3 support works with `.ts`/`.tsx` files only, not `.vue` SFC files. CSS and SCSS files imported by your TypeScript/TSX files are also parsed when using `--include-style` (standalone CSS/SCSS files that aren't imported won't be analyzed).
|
|
129
126
|
|
|
@@ -13,6 +13,21 @@ export declare function detectNextJsDirective(source: SourceFile): 'client' | 's
|
|
|
13
13
|
* Checks if the file path contains /app/ or \app\ directory
|
|
14
14
|
*/
|
|
15
15
|
export declare function isInNextAppDir(filePath: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Detect Next.js route role based on filename
|
|
18
|
+
* Next.js App Router uses special filenames: page, layout, loading, error, not-found, template, default, route
|
|
19
|
+
*/
|
|
20
|
+
export declare function detectNextJsRouteRole(filePath: string): NextJSMetadata['routeRole'] | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* Extract Next.js segment path from file path
|
|
23
|
+
* Converts file structure to route path (e.g., app/blog/[slug]/page.tsx -> /blog/[slug])
|
|
24
|
+
*/
|
|
25
|
+
export declare function extractNextJsSegmentPath(filePath: string): string | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* Extract Next.js metadata exports
|
|
28
|
+
* Supports both static metadata (export const metadata) and dynamic metadata (export function generateMetadata)
|
|
29
|
+
*/
|
|
30
|
+
export declare function extractNextJsMetadataExports(source: SourceFile): NextJSMetadata['metadata'] | undefined;
|
|
16
31
|
/**
|
|
17
32
|
* Extract Next.js metadata from the file
|
|
18
33
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detectors.d.ts","sourceRoot":"","sources":["../../../src/core/astParser/detectors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"detectors.d.ts","sourceRoot":"","sources":["../../../src/core/astParser/detectors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAkH,MAAM,UAAU,CAAC;AACtJ,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAI/E;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAmDzF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,CAsB/F;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAoC7E;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CA6GvG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CA6BtG;AAiND;;GAEG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,EAAE,EACf,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,UAAU,GACjB,YAAY,CAqId"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { SyntaxKind } from 'ts-morph';
|
|
5
5
|
import { debugError } from '../../utils/debug.js';
|
|
6
|
+
import { basename, dirname } from 'node:path';
|
|
6
7
|
/**
|
|
7
8
|
* Detect Next.js 'use client' or 'use server' directives
|
|
8
9
|
* These directives must appear at the top of the file (before any imports)
|
|
@@ -64,6 +65,184 @@ export function isInNextAppDir(filePath) {
|
|
|
64
65
|
// Must be a directory boundary, not part of another word
|
|
65
66
|
return /\/app\//.test(normalizedPath) || /^app\//.test(normalizedPath);
|
|
66
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* Detect Next.js route role based on filename
|
|
70
|
+
* Next.js App Router uses special filenames: page, layout, loading, error, not-found, template, default, route
|
|
71
|
+
*/
|
|
72
|
+
export function detectNextJsRouteRole(filePath) {
|
|
73
|
+
try {
|
|
74
|
+
const fileName = basename(filePath, '.tsx').replace(/\.ts$/, '');
|
|
75
|
+
// Check for special Next.js route files
|
|
76
|
+
if (fileName === 'page')
|
|
77
|
+
return 'page';
|
|
78
|
+
if (fileName === 'layout')
|
|
79
|
+
return 'layout';
|
|
80
|
+
if (fileName === 'loading')
|
|
81
|
+
return 'loading';
|
|
82
|
+
if (fileName === 'error')
|
|
83
|
+
return 'error';
|
|
84
|
+
if (fileName === 'not-found')
|
|
85
|
+
return 'not-found';
|
|
86
|
+
if (fileName === 'template')
|
|
87
|
+
return 'template';
|
|
88
|
+
if (fileName === 'default')
|
|
89
|
+
return 'default';
|
|
90
|
+
if (fileName === 'route')
|
|
91
|
+
return 'route';
|
|
92
|
+
return undefined;
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
debugError('detector', 'detectNextJsRouteRole', {
|
|
96
|
+
filePath,
|
|
97
|
+
error: error instanceof Error ? error.message : String(error),
|
|
98
|
+
});
|
|
99
|
+
return undefined;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Extract Next.js segment path from file path
|
|
104
|
+
* Converts file structure to route path (e.g., app/blog/[slug]/page.tsx -> /blog/[slug])
|
|
105
|
+
*/
|
|
106
|
+
export function extractNextJsSegmentPath(filePath) {
|
|
107
|
+
try {
|
|
108
|
+
const normalizedPath = filePath.replace(/\\/g, '/');
|
|
109
|
+
// Find the app directory in the path
|
|
110
|
+
const appDirMatch = normalizedPath.match(/(?:^|\/)(?:src\/)?app(\/.*)$/);
|
|
111
|
+
if (!appDirMatch) {
|
|
112
|
+
return undefined;
|
|
113
|
+
}
|
|
114
|
+
const pathAfterApp = appDirMatch[1];
|
|
115
|
+
// Remove the filename (page.tsx, layout.tsx, etc.) to get the directory path
|
|
116
|
+
// Handle both /page.tsx and page.tsx formats
|
|
117
|
+
const dirPath = dirname(pathAfterApp);
|
|
118
|
+
// Build segment path
|
|
119
|
+
// If dirPath is '.' or '/', it means the file is directly in app/ directory
|
|
120
|
+
let segmentPath = dirPath === '.' || dirPath === '/' ? '' : dirPath;
|
|
121
|
+
// Remove route groups (parentheses) from path
|
|
122
|
+
// e.g., (auth)/login -> /login
|
|
123
|
+
segmentPath = segmentPath.replace(/\/\([^)]+\)/g, '');
|
|
124
|
+
// Normalize: remove leading/trailing slashes
|
|
125
|
+
segmentPath = segmentPath.replace(/^\/+|\/+$/g, '');
|
|
126
|
+
// Return root path or normalized path
|
|
127
|
+
return segmentPath ? `/${segmentPath}` : '/';
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
debugError('detector', 'extractNextJsSegmentPath', {
|
|
131
|
+
filePath,
|
|
132
|
+
error: error instanceof Error ? error.message : String(error),
|
|
133
|
+
});
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Extract Next.js metadata exports
|
|
139
|
+
* Supports both static metadata (export const metadata) and dynamic metadata (export function generateMetadata)
|
|
140
|
+
*/
|
|
141
|
+
export function extractNextJsMetadataExports(source) {
|
|
142
|
+
const filePath = source.getFilePath?.() ?? 'unknown';
|
|
143
|
+
try {
|
|
144
|
+
let staticMetadata;
|
|
145
|
+
let hasDynamicMetadata = false;
|
|
146
|
+
const statements = source.getStatements();
|
|
147
|
+
for (const stmt of statements) {
|
|
148
|
+
const kind = stmt.getKind();
|
|
149
|
+
// Check for `export const metadata = {...}`
|
|
150
|
+
if (kind === SyntaxKind.VariableStatement) {
|
|
151
|
+
const varStmt = stmt;
|
|
152
|
+
const modifiers = varStmt.getModifiers();
|
|
153
|
+
const isExported = modifiers.some(mod => mod.getKind() === SyntaxKind.ExportKeyword);
|
|
154
|
+
if (isExported) {
|
|
155
|
+
const declarations = varStmt.getDeclarationList().getDeclarations();
|
|
156
|
+
for (const decl of declarations) {
|
|
157
|
+
const name = decl.getName();
|
|
158
|
+
if (name === 'metadata') {
|
|
159
|
+
const initializer = decl.getInitializer();
|
|
160
|
+
if (initializer && initializer.getKind() === SyntaxKind.ObjectLiteralExpression) {
|
|
161
|
+
// Parse object literal to extract property names and basic values
|
|
162
|
+
try {
|
|
163
|
+
const objLiteral = initializer.asKindOrThrow(SyntaxKind.ObjectLiteralExpression);
|
|
164
|
+
const properties = objLiteral.getProperties();
|
|
165
|
+
const metadataObj = {};
|
|
166
|
+
for (const prop of properties) {
|
|
167
|
+
if (prop.getKind() === SyntaxKind.PropertyAssignment) {
|
|
168
|
+
const propAssignment = prop;
|
|
169
|
+
const propName = propAssignment.getNameNode();
|
|
170
|
+
const propValue = propAssignment.getInitializer();
|
|
171
|
+
if (propName.getKind() === SyntaxKind.Identifier || propName.getKind() === SyntaxKind.StringLiteral) {
|
|
172
|
+
const name = propName.getKind() === SyntaxKind.Identifier
|
|
173
|
+
? propName.getText()
|
|
174
|
+
: propName.getLiteralText?.() ?? propName.getText().slice(1, -1);
|
|
175
|
+
// Extract basic value types
|
|
176
|
+
if (propValue) {
|
|
177
|
+
const valueKind = propValue.getKind();
|
|
178
|
+
if (valueKind === SyntaxKind.StringLiteral) {
|
|
179
|
+
metadataObj[name] = propValue.getLiteralText?.() ?? propValue.getText().slice(1, -1);
|
|
180
|
+
}
|
|
181
|
+
else if (valueKind === SyntaxKind.NumericLiteral) {
|
|
182
|
+
metadataObj[name] = parseFloat(propValue.getText());
|
|
183
|
+
}
|
|
184
|
+
else if (valueKind === SyntaxKind.TrueKeyword || valueKind === SyntaxKind.FalseKeyword) {
|
|
185
|
+
metadataObj[name] = valueKind === SyntaxKind.TrueKeyword;
|
|
186
|
+
}
|
|
187
|
+
else if (valueKind === SyntaxKind.NullKeyword) {
|
|
188
|
+
metadataObj[name] = null;
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
// For complex values, store the type indicator
|
|
192
|
+
metadataObj[name] = `[${valueKind}]`;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
if (Object.keys(metadataObj).length > 0) {
|
|
199
|
+
staticMetadata = metadataObj;
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
// Even if empty, mark as having metadata
|
|
203
|
+
staticMetadata = { _hasMetadata: true };
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
catch (error) {
|
|
207
|
+
// If we can't parse, still mark as having metadata
|
|
208
|
+
staticMetadata = { _hasMetadata: true };
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
else if (initializer) {
|
|
212
|
+
// Has metadata but not an object literal (could be a variable reference, function call, etc.)
|
|
213
|
+
staticMetadata = { _hasMetadata: true };
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
// Check for `export function generateMetadata(...) {...}`
|
|
220
|
+
if (kind === SyntaxKind.FunctionDeclaration) {
|
|
221
|
+
const func = stmt;
|
|
222
|
+
const modifiers = func.getModifiers();
|
|
223
|
+
const isExported = modifiers.some(mod => mod.getKind() === SyntaxKind.ExportKeyword);
|
|
224
|
+
const name = func.getName();
|
|
225
|
+
if (isExported && name === 'generateMetadata') {
|
|
226
|
+
hasDynamicMetadata = true;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
if (staticMetadata || hasDynamicMetadata) {
|
|
231
|
+
return {
|
|
232
|
+
...(staticMetadata && { static: staticMetadata }),
|
|
233
|
+
...(hasDynamicMetadata && { dynamic: true })
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
return undefined;
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
debugError('detector', 'extractNextJsMetadataExports', {
|
|
240
|
+
filePath,
|
|
241
|
+
error: error instanceof Error ? error.message : String(error),
|
|
242
|
+
});
|
|
243
|
+
return undefined;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
67
246
|
/**
|
|
68
247
|
* Extract Next.js metadata from the file
|
|
69
248
|
*/
|
|
@@ -72,11 +251,17 @@ export function extractNextJsMetadata(source, filePath) {
|
|
|
72
251
|
try {
|
|
73
252
|
const directive = detectNextJsDirective(source);
|
|
74
253
|
const isInApp = isInNextAppDir(filePath);
|
|
254
|
+
const routeRole = isInApp ? detectNextJsRouteRole(filePath) : undefined;
|
|
255
|
+
const segmentPath = isInApp ? extractNextJsSegmentPath(filePath) : undefined;
|
|
256
|
+
const metadata = isInApp ? extractNextJsMetadataExports(source) : undefined;
|
|
75
257
|
// Only return metadata if we have something to report
|
|
76
|
-
if (directive || isInApp) {
|
|
258
|
+
if (directive || isInApp || routeRole || segmentPath || metadata) {
|
|
77
259
|
return {
|
|
78
260
|
...(isInApp && { isInAppDir: true }),
|
|
79
|
-
...(directive && { directive })
|
|
261
|
+
...(directive && { directive }),
|
|
262
|
+
...(routeRole && { routeRole }),
|
|
263
|
+
...(segmentPath && { segmentPath }),
|
|
264
|
+
...(metadata && { metadata })
|
|
80
265
|
};
|
|
81
266
|
}
|
|
82
267
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detectors.js","sourceRoot":"","sources":["../../../src/core/astParser/detectors.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"detectors.js","sourceRoot":"","sources":["../../../src/core/astParser/detectors.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,12 +7,16 @@ import { SourceFile } from 'ts-morph';
|
|
|
7
7
|
*
|
|
8
8
|
* Uses AST traversal to extract classes from:
|
|
9
9
|
* - Literal strings: className="flex p-4"
|
|
10
|
-
* - Template literals: className={`flex ${variable}`} (
|
|
10
|
+
* - Template literals: className={`flex ${variable}`} (Phase 1: resolves variables, object properties, conditionals)
|
|
11
11
|
* - Function calls: className={cn('flex', isActive && 'bg-blue')}
|
|
12
|
-
* - Conditional expressions: className={isActive && 'bg-blue'}
|
|
12
|
+
* - Conditional expressions: className={isActive && 'bg-blue'} or className={isActive ? 'bg-blue' : 'bg-gray'}
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* Phase 1 (v0.3.9): Resolves dynamic expressions within template literals:
|
|
15
|
+
* - Const/let variable declarations: `const base = 'px-4'` → extracts classes from variable
|
|
16
|
+
* - Object property access: `variants.primary` → extracts classes from property value
|
|
17
|
+
* - Conditional expressions: `${isActive ? 'bg-blue' : 'bg-gray'}` → extracts both branches
|
|
18
|
+
*
|
|
19
|
+
* Phase 2 (Future): Will handle object lookups with variables (`variants[variant]`), cross-file references, and function calls.
|
|
16
20
|
*
|
|
17
21
|
* Falls back to regex extraction for source text if AST is not available.
|
|
18
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind.d.ts","sourceRoot":"","sources":["../../../src/core/styleExtractor/tailwind.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"tailwind.d.ts","sourceRoot":"","sources":["../../../src/core/styleExtractor/tailwind.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAuF,MAAM,UAAU,CAAC;AA4D3H;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,CA+D5E;AAuaD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CA2C1B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAsB9D"}
|
|
@@ -11,13 +11,16 @@ import { debugError } from '../../utils/debug.js';
|
|
|
11
11
|
* - border- and outline- are in borders (checked before colors)
|
|
12
12
|
*/
|
|
13
13
|
const TAILWIND_CATEGORIES = {
|
|
14
|
-
layout: /^(flex|grid|block|inline|hidden|container|box-|aspect-|columns-|break-|table|inline-table|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row-group|table-row|flow-root|contents|list-item)/,
|
|
14
|
+
layout: /^(flex|flex-|grid|grid-cols-|grid-rows-|col-|col-span-|row-|row-span-|block|inline|hidden|container|box-|aspect-|columns-|break-|table|inline-table|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row-group|table-row|flow-root|contents|list-item|items-|justify-|content-|self-|place-|order-|grow|shrink|basis-)/,
|
|
15
15
|
spacing: /^(p-|m-|px-|py-|mx-|my-|pt-|pb-|pl-|pr-|mt-|mb-|ml-|mr-|space-|gap-)/,
|
|
16
16
|
sizing: /^(w-|h-|min-w-|min-h-|max-w-|max-h-|size-)/,
|
|
17
17
|
positioning: /^(static|fixed|absolute|relative|sticky|inset-|top-|right-|bottom-|left-|z-)/,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
borders: /^(border-|rounded|rounded-|ring-|ring-offset-|divide-|outline-)/,
|
|
19
|
+
// Colors must come before typography so text-red-500 matches colors, not typography
|
|
20
|
+
// Match text- with color names or arbitrary values: text-red-500, text-[#fff], etc.
|
|
21
|
+
colors: /^(bg-|text-(?:black|white|slate|gray|zinc|neutral|stone|red|orange|amber|yellow|lime|green|emerald|teal|cyan|sky|blue|indigo|violet|purple|fuchsia|pink|rose)(?:-|$)|text-\[[^\]]+\]|from-|via-|to-|decoration-|accent-|caret-)/,
|
|
22
|
+
// Typography matches text- patterns that aren't colors (text-sm, text-xl, text-left, etc.)
|
|
23
|
+
typography: /^(font-|leading-|tracking-|antialiased|subpixel|italic|not-italic|uppercase|lowercase|capitalize|normal-case|truncate|whitespace-|line-clamp-|indent-|align-|vertical-align-|text-)/,
|
|
21
24
|
effects: /^(shadow-|opacity-|mix-|backdrop-|blur-|brightness-|contrast-|grayscale|hue-|invert|saturate|sepia)/,
|
|
22
25
|
transitions: /^(transition-|duration-|ease-|delay-|animate-)/,
|
|
23
26
|
transforms: /^(scale-|rotate-|translate-|skew-|origin-)/,
|
|
@@ -32,30 +35,42 @@ const TAILWIND_CATEGORIES = {
|
|
|
32
35
|
*
|
|
33
36
|
* Handles:
|
|
34
37
|
* - Responsive breakpoints: sm:, md:, lg:, xl:, 2xl:, max-*
|
|
35
|
-
* - Pseudo-classes: hover:, focus:, active:, disabled:, etc.
|
|
38
|
+
* - Pseudo-classes: hover:, focus:, focus-visible:, focus-within:, active:, disabled:, etc.
|
|
36
39
|
* - State variants: open:, checked:, selected:, etc.
|
|
37
40
|
* - Theme variants: dark:, light:
|
|
38
41
|
* - Motion variants: motion-safe:, motion-reduce:
|
|
39
|
-
* - ARIA/data variants: aria-[...]:, data-[...]
|
|
40
|
-
* - Group/peer variants: group-hover:,
|
|
42
|
+
* - ARIA/data variants: aria-[...]:, data-[...]:, aria-expanded:, etc.
|
|
43
|
+
* - Group/peer variants: group-hover:, group-focus-visible:, peer-checked:, peer-disabled:, etc.
|
|
41
44
|
* - Print: print:
|
|
45
|
+
* - Arbitrary selector variants: [&>p]:, [&_span]:, supports-[...]:, has-[...]:
|
|
46
|
+
* - Container query variants: @sm:, @md:, @lg:, @custom:, etc. (Tailwind v4+)
|
|
47
|
+
* Uses @[^:]+ pattern to match any container query variant
|
|
48
|
+
*
|
|
49
|
+
* Note: Container query variants and other newer Tailwind variants are captured via
|
|
50
|
+
* generic patterns. Categorization should strip all variants correctly.
|
|
42
51
|
*/
|
|
43
|
-
const VARIANT_PREFIX_CHAIN = /^(?:(sm|md|lg|xl|2xl|max-sm|max-md|max-lg|max-xl|max-2xl|hover|focus|active|disabled|visited|first|last|odd|even|group-hover|group-focus|group-active|peer-hover|peer-focus|peer-active|dark|light|motion-safe|motion-reduce|open|checked|selected|indeterminate|required|optional|valid|invalid|in-range|out-of-range|read-only|read-write|empty|target|before|after|placeholder|file|marker|selection|first-line|first-letter|backdrop|print|aria-[^:]+|data-[^:]+):)+/;
|
|
52
|
+
const VARIANT_PREFIX_CHAIN = /^(?:(sm|md|lg|xl|2xl|max-sm|max-md|max-lg|max-xl|max-2xl|hover|focus|focus-visible|focus-within|active|disabled|visited|first|last|odd|even|group-hover|group-focus|group-focus-visible|group-active|peer-hover|peer-focus|peer-focus-visible|peer-active|peer-checked|peer-disabled|dark|light|motion-safe|motion-reduce|open|checked|selected|indeterminate|required|optional|valid|invalid|in-range|out-of-range|read-only|read-write|empty|target|before|after|placeholder|file|marker|selection|first-line|first-letter|backdrop|print|aria-[^:]+|data-[^:]+|aria-expanded|aria-pressed|aria-selected|aria-hidden|aria-disabled|supports-\[[^\]]+\]|has-\[[^\]]+\]|\[[^\]]+\]|@[^:]+):)+/;
|
|
44
53
|
/**
|
|
45
54
|
* Pattern to match breakpoint prefixes anywhere in a class name
|
|
55
|
+
* Includes responsive breakpoints (sm:, md:, etc.) and container query variants (@sm:, @md:, @custom:, etc.)
|
|
56
|
+
* Uses @[a-zA-Z0-9_-]+ to match Tailwind-like container query variants (avoids matching weird punctuation)
|
|
46
57
|
*/
|
|
47
|
-
const BREAKPOINT_PATTERN = /\b(sm
|
|
58
|
+
const BREAKPOINT_PATTERN = /\b(@?sm|@?md|@?lg|@?xl|@?2xl|@?max-sm|@?max-md|@?max-lg|@?max-xl|@?max-2xl|@[a-zA-Z0-9_-]+):/g;
|
|
48
59
|
/**
|
|
49
60
|
* Extract Tailwind classes from className attributes in JSX (AST-based)
|
|
50
61
|
*
|
|
51
62
|
* Uses AST traversal to extract classes from:
|
|
52
63
|
* - Literal strings: className="flex p-4"
|
|
53
|
-
* - Template literals: className={`flex ${variable}`} (
|
|
64
|
+
* - Template literals: className={`flex ${variable}`} (Phase 1: resolves variables, object properties, conditionals)
|
|
54
65
|
* - Function calls: className={cn('flex', isActive && 'bg-blue')}
|
|
55
|
-
* - Conditional expressions: className={isActive && 'bg-blue'}
|
|
66
|
+
* - Conditional expressions: className={isActive && 'bg-blue'} or className={isActive ? 'bg-blue' : 'bg-gray'}
|
|
67
|
+
*
|
|
68
|
+
* Phase 1 (v0.3.9): Resolves dynamic expressions within template literals:
|
|
69
|
+
* - Const/let variable declarations: `const base = 'px-4'` → extracts classes from variable
|
|
70
|
+
* - Object property access: `variants.primary` → extracts classes from property value
|
|
71
|
+
* - Conditional expressions: `${isActive ? 'bg-blue' : 'bg-gray'}` → extracts both branches
|
|
56
72
|
*
|
|
57
|
-
*
|
|
58
|
-
* dynamic expressions within ${} are ignored.
|
|
73
|
+
* Phase 2 (Future): Will handle object lookups with variables (`variants[variant]`), cross-file references, and function calls.
|
|
59
74
|
*
|
|
60
75
|
* Falls back to regex extraction for source text if AST is not available.
|
|
61
76
|
*/
|
|
@@ -105,7 +120,8 @@ export function extractTailwindClasses(source) {
|
|
|
105
120
|
expressionNode = expr;
|
|
106
121
|
}
|
|
107
122
|
// Extract classes based on the expression type
|
|
108
|
-
|
|
123
|
+
// Pass sourceFile for variable resolution (Phase 1)
|
|
124
|
+
const extracted = extractClassesFromExpression(expressionNode, source);
|
|
109
125
|
extracted.forEach(cls => classNames.add(cls));
|
|
110
126
|
}
|
|
111
127
|
}
|
|
@@ -120,22 +136,29 @@ export function extractTailwindClasses(source) {
|
|
|
120
136
|
}
|
|
121
137
|
/**
|
|
122
138
|
* Extract classes from a className expression (AST node)
|
|
139
|
+
*
|
|
140
|
+
* Phase 1 (v0.3.9): Resolves const/let variables, object properties, and conditional expressions
|
|
141
|
+
*
|
|
142
|
+
* @param node - The AST node to extract classes from
|
|
143
|
+
* @param sourceFile - The source file (required for variable resolution in Phase 1)
|
|
123
144
|
*/
|
|
124
|
-
function extractClassesFromExpression(node) {
|
|
145
|
+
function extractClassesFromExpression(node, sourceFile) {
|
|
125
146
|
try {
|
|
126
147
|
const classes = [];
|
|
127
148
|
// String literal: className="flex p-4"
|
|
128
149
|
if (node.getKind() === SyntaxKind.StringLiteral) {
|
|
129
150
|
const text = node.getLiteralText?.() ?? node.getText().slice(1, -1);
|
|
130
|
-
|
|
151
|
+
const cleanClasses = text.split(/\s+/).filter((cls) => cls && cls !== '${' && cls !== '}');
|
|
152
|
+
classes.push(...cleanClasses);
|
|
131
153
|
}
|
|
132
154
|
// Backtick literal with no interpolations: `flex p-4`
|
|
133
155
|
else if (node.getKind() === SyntaxKind.NoSubstitutionTemplateLiteral) {
|
|
134
156
|
const text = node.getLiteralText?.() ?? node.getText().slice(1, -1);
|
|
135
|
-
|
|
157
|
+
const cleanClasses = text.split(/\s+/).filter((cls) => cls && cls !== '${' && cls !== '}');
|
|
158
|
+
classes.push(...cleanClasses);
|
|
136
159
|
}
|
|
137
160
|
// Template with interpolations: `flex ${...} text-white`
|
|
138
|
-
//
|
|
161
|
+
// Phase 1: Now resolves expressions within ${} (variables, object properties, conditionals)
|
|
139
162
|
else if (node.getKind() === SyntaxKind.TemplateExpression) {
|
|
140
163
|
const template = node.asKindOrThrow(SyntaxKind.TemplateExpression);
|
|
141
164
|
// Head: initial static part before first ${}
|
|
@@ -144,23 +167,76 @@ function extractClassesFromExpression(node) {
|
|
|
144
167
|
classes.push(...headText.trim().split(/\s+/).filter(Boolean));
|
|
145
168
|
}
|
|
146
169
|
// Each span: ${ expression }<literal>
|
|
147
|
-
//
|
|
170
|
+
// Phase 1: Now recursively resolves expressions (variables, object properties, conditionals)
|
|
148
171
|
for (const span of template.getTemplateSpans()) {
|
|
172
|
+
const expression = span.getExpression();
|
|
173
|
+
// Recursively extract from expression (handles variables, object properties, conditionals)
|
|
174
|
+
if (sourceFile) {
|
|
175
|
+
const exprClasses = extractClassesFromExpression(expression, sourceFile);
|
|
176
|
+
classes.push(...exprClasses);
|
|
177
|
+
}
|
|
178
|
+
// Extract literal part (static text after each ${})
|
|
149
179
|
const literal = span.getLiteral();
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
180
|
+
// getLiteralText() returns the raw text content without quotes/backticks
|
|
181
|
+
let litText;
|
|
182
|
+
if (literal.getLiteralText) {
|
|
183
|
+
litText = literal.getLiteralText();
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
// Fallback: parse getText() which includes backticks
|
|
187
|
+
const rawText = literal.getText();
|
|
188
|
+
// Remove leading backtick and any template syntax, remove trailing backtick
|
|
189
|
+
litText = rawText.replace(/^[^`]*`/, '').replace(/`$/, '');
|
|
190
|
+
}
|
|
191
|
+
if (litText && litText.trim()) {
|
|
192
|
+
// Split and filter out template syntax artifacts and empty strings
|
|
193
|
+
const cleanText = litText.trim().split(/\s+/).filter((cls) => {
|
|
194
|
+
return cls &&
|
|
195
|
+
cls !== '${' &&
|
|
196
|
+
cls !== '}' &&
|
|
197
|
+
!cls.includes('${') &&
|
|
198
|
+
!cls.includes('}') &&
|
|
199
|
+
cls.length > 0;
|
|
200
|
+
});
|
|
201
|
+
classes.push(...cleanText);
|
|
153
202
|
}
|
|
154
203
|
}
|
|
155
204
|
}
|
|
156
|
-
// Conditional expression
|
|
205
|
+
// Conditional expression (ternary): className={isActive ? 'bg-blue' : 'bg-gray'}
|
|
206
|
+
// Phase 1: Extracts classes from both branches
|
|
207
|
+
else if (node.getKind() === SyntaxKind.ConditionalExpression) {
|
|
208
|
+
const conditional = node.asKindOrThrow(SyntaxKind.ConditionalExpression);
|
|
209
|
+
const whenTrue = conditional.getWhenTrue();
|
|
210
|
+
const whenFalse = conditional.getWhenFalse();
|
|
211
|
+
// Extract from both branches
|
|
212
|
+
if (sourceFile) {
|
|
213
|
+
classes.push(...extractClassesFromExpression(whenTrue, sourceFile));
|
|
214
|
+
classes.push(...extractClassesFromExpression(whenFalse, sourceFile));
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
// Conditional expression at top level: className={isActive && 'bg-blue'} or className={'fallback' || base}
|
|
218
|
+
// Only handle logical operators (&&, ||, ??) that are used for class toggling
|
|
157
219
|
else if (node.getKind() === SyntaxKind.BinaryExpression) {
|
|
158
220
|
const binary = node.asKindOrThrow(SyntaxKind.BinaryExpression);
|
|
159
|
-
const
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
221
|
+
const operatorToken = binary.getOperatorToken();
|
|
222
|
+
const operatorKind = operatorToken.getKind();
|
|
223
|
+
// Only process logical operators used for class toggling: &&, ||, ??
|
|
224
|
+
if (operatorKind === SyntaxKind.AmpersandAmpersandToken ||
|
|
225
|
+
operatorKind === SyntaxKind.BarBarToken ||
|
|
226
|
+
operatorKind === SyntaxKind.QuestionQuestionToken) {
|
|
227
|
+
const left = binary.getLeft();
|
|
228
|
+
const right = binary.getRight();
|
|
229
|
+
// Extract from both sides (strings can be on either side)
|
|
230
|
+
if (sourceFile) {
|
|
231
|
+
if (left) {
|
|
232
|
+
classes.push(...extractClassesFromExpression(left, sourceFile));
|
|
233
|
+
}
|
|
234
|
+
if (right) {
|
|
235
|
+
classes.push(...extractClassesFromExpression(right, sourceFile));
|
|
236
|
+
}
|
|
237
|
+
}
|
|
163
238
|
}
|
|
239
|
+
// Ignore other binary operators (+, ===, etc.) - they're not class expressions
|
|
164
240
|
}
|
|
165
241
|
// Function call: className={cn('flex', 'p-4')}
|
|
166
242
|
else if (node.getKind() === SyntaxKind.CallExpression) {
|
|
@@ -176,12 +252,56 @@ function extractClassesFromExpression(node) {
|
|
|
176
252
|
const args = callExpr.getArguments();
|
|
177
253
|
for (const arg of args) {
|
|
178
254
|
// Recursively extract from arguments (handles strings, templates, conditionals, etc.)
|
|
179
|
-
|
|
255
|
+
if (sourceFile) {
|
|
256
|
+
classes.push(...extractClassesFromExpression(arg, sourceFile));
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
// Property access: className={variants.primary}
|
|
261
|
+
// Phase 1: Resolves object property access
|
|
262
|
+
else if (node.getKind() === SyntaxKind.PropertyAccessExpression) {
|
|
263
|
+
if (!sourceFile) {
|
|
264
|
+
return classes;
|
|
265
|
+
}
|
|
266
|
+
const propAccess = node.asKindOrThrow(SyntaxKind.PropertyAccessExpression);
|
|
267
|
+
const objectExpr = propAccess.getExpression();
|
|
268
|
+
const propertyName = propAccess.getName();
|
|
269
|
+
// Try to resolve the object expression to a variable declaration
|
|
270
|
+
if (objectExpr.getKind() === SyntaxKind.Identifier) {
|
|
271
|
+
const varDecl = resolveVariableDeclaration(sourceFile, objectExpr, objectExpr.getText());
|
|
272
|
+
if (varDecl) {
|
|
273
|
+
const initializer = varDecl.getInitializer();
|
|
274
|
+
if (initializer && initializer.getKind() === SyntaxKind.ObjectLiteralExpression) {
|
|
275
|
+
// Find the property in the object literal
|
|
276
|
+
const objLiteral = initializer.asKindOrThrow(SyntaxKind.ObjectLiteralExpression);
|
|
277
|
+
const property = objLiteral.getProperty(propertyName);
|
|
278
|
+
if (property && property.getKind() === SyntaxKind.PropertyAssignment) {
|
|
279
|
+
const propAssignment = property.asKindOrThrow(SyntaxKind.PropertyAssignment);
|
|
280
|
+
const propInitializer = propAssignment.getInitializer();
|
|
281
|
+
if (propInitializer) {
|
|
282
|
+
// Recursively extract from property value
|
|
283
|
+
classes.push(...extractClassesFromExpression(propInitializer, sourceFile));
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
180
288
|
}
|
|
181
289
|
}
|
|
182
|
-
// Variable reference: className={
|
|
290
|
+
// Variable reference: className={base}
|
|
291
|
+
// Phase 1: Resolves const/let variable declarations
|
|
183
292
|
else if (node.getKind() === SyntaxKind.Identifier) {
|
|
184
|
-
|
|
293
|
+
if (!sourceFile) {
|
|
294
|
+
return classes;
|
|
295
|
+
}
|
|
296
|
+
const identifier = node.asKindOrThrow(SyntaxKind.Identifier);
|
|
297
|
+
const varDecl = resolveVariableDeclaration(sourceFile, identifier, identifier.getText());
|
|
298
|
+
if (varDecl) {
|
|
299
|
+
const initializer = varDecl.getInitializer();
|
|
300
|
+
if (initializer) {
|
|
301
|
+
// Recursively extract from variable initializer
|
|
302
|
+
classes.push(...extractClassesFromExpression(initializer, sourceFile));
|
|
303
|
+
}
|
|
304
|
+
}
|
|
185
305
|
}
|
|
186
306
|
return classes;
|
|
187
307
|
}
|
|
@@ -190,6 +310,154 @@ function extractClassesFromExpression(node) {
|
|
|
190
310
|
return [];
|
|
191
311
|
}
|
|
192
312
|
}
|
|
313
|
+
// Cache variable declarations per file to avoid repeated getDescendantsOfKind calls
|
|
314
|
+
const variableDeclarationCache = new WeakMap();
|
|
315
|
+
/**
|
|
316
|
+
* Resolve a variable declaration by name, respecting scope/shadowing
|
|
317
|
+
* Phase 1: Only resolves variables in the same file
|
|
318
|
+
*
|
|
319
|
+
* Searches from the identifier's scope upward to handle shadowing correctly.
|
|
320
|
+
* Uses a scope chain approach: Block (closest) → Function → SourceFile
|
|
321
|
+
*
|
|
322
|
+
* @param sourceFile - The source file to search in
|
|
323
|
+
* @param identifierNode - The identifier node to resolve (used for scope detection)
|
|
324
|
+
* @param variableName - The name of the variable to resolve
|
|
325
|
+
* @returns The variable declaration if found, undefined otherwise
|
|
326
|
+
*/
|
|
327
|
+
function resolveVariableDeclaration(sourceFile, identifierNode, variableName) {
|
|
328
|
+
try {
|
|
329
|
+
const identifierPos = identifierNode.getStart();
|
|
330
|
+
// Use cached variable declarations to avoid expensive getDescendantsOfKind calls
|
|
331
|
+
let allDeclarations = variableDeclarationCache.get(sourceFile);
|
|
332
|
+
if (!allDeclarations) {
|
|
333
|
+
allDeclarations = sourceFile.getDescendantsOfKind(SyntaxKind.VariableDeclaration);
|
|
334
|
+
variableDeclarationCache.set(sourceFile, allDeclarations);
|
|
335
|
+
}
|
|
336
|
+
const matchingDeclarations = [];
|
|
337
|
+
/**
|
|
338
|
+
* Get the scope node for a declaration or identifier.
|
|
339
|
+
* Returns Block (closest), then Function/Method/Constructor, then SourceFile, or null if none found.
|
|
340
|
+
*/
|
|
341
|
+
const getScope = (node) => {
|
|
342
|
+
let current = node;
|
|
343
|
+
// Prefer Block first (closest), then function/method/constructor, then sourceFile
|
|
344
|
+
while (current && current !== sourceFile) {
|
|
345
|
+
const kind = current.getKind();
|
|
346
|
+
if (kind === SyntaxKind.Block) {
|
|
347
|
+
return current;
|
|
348
|
+
}
|
|
349
|
+
if (kind === SyntaxKind.FunctionDeclaration ||
|
|
350
|
+
kind === SyntaxKind.FunctionExpression ||
|
|
351
|
+
kind === SyntaxKind.MethodDeclaration ||
|
|
352
|
+
kind === SyntaxKind.Constructor) {
|
|
353
|
+
return current;
|
|
354
|
+
}
|
|
355
|
+
// For ArrowFunction, check if it has a block body
|
|
356
|
+
if (kind === SyntaxKind.ArrowFunction) {
|
|
357
|
+
const arrow = current;
|
|
358
|
+
const body = arrow.getBody();
|
|
359
|
+
// If body is a Block, prefer the Block; otherwise use ArrowFunction as scope
|
|
360
|
+
if (body && body.getKind() === SyntaxKind.Block) {
|
|
361
|
+
// Continue to find the Block
|
|
362
|
+
current = body;
|
|
363
|
+
continue;
|
|
364
|
+
}
|
|
365
|
+
// ArrowFunction with expression body - use ArrowFunction as scope
|
|
366
|
+
return current;
|
|
367
|
+
}
|
|
368
|
+
current = current.getParent();
|
|
369
|
+
}
|
|
370
|
+
// Reached sourceFile - file-level scope
|
|
371
|
+
return sourceFile;
|
|
372
|
+
};
|
|
373
|
+
// Collect all matching declarations with their scope information
|
|
374
|
+
for (const varDecl of allDeclarations) {
|
|
375
|
+
try {
|
|
376
|
+
if (varDecl.getName() === variableName) {
|
|
377
|
+
const scope = getScope(varDecl);
|
|
378
|
+
matchingDeclarations.push({
|
|
379
|
+
decl: varDecl,
|
|
380
|
+
scope,
|
|
381
|
+
pos: varDecl.getStart()
|
|
382
|
+
});
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
catch {
|
|
386
|
+
continue;
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
if (matchingDeclarations.length === 0) {
|
|
390
|
+
return undefined;
|
|
391
|
+
}
|
|
392
|
+
// Build scope chain for identifier: [nearestBlock, enclosingFunction/Method/Constructor, sourceFile]
|
|
393
|
+
const identifierScopeChain = [];
|
|
394
|
+
let current = identifierNode;
|
|
395
|
+
while (current && current !== sourceFile) {
|
|
396
|
+
const kind = current.getKind();
|
|
397
|
+
if (kind === SyntaxKind.Block) {
|
|
398
|
+
identifierScopeChain.push(current);
|
|
399
|
+
}
|
|
400
|
+
else if (kind === SyntaxKind.FunctionDeclaration ||
|
|
401
|
+
kind === SyntaxKind.FunctionExpression ||
|
|
402
|
+
kind === SyntaxKind.MethodDeclaration ||
|
|
403
|
+
kind === SyntaxKind.Constructor) {
|
|
404
|
+
identifierScopeChain.push(current);
|
|
405
|
+
}
|
|
406
|
+
else if (kind === SyntaxKind.ArrowFunction) {
|
|
407
|
+
const arrow = current;
|
|
408
|
+
const body = arrow.getBody();
|
|
409
|
+
// If body is a Block, we'll find it in next iteration
|
|
410
|
+
if (!body || body.getKind() !== SyntaxKind.Block) {
|
|
411
|
+
// ArrowFunction with expression body - add it to chain
|
|
412
|
+
identifierScopeChain.push(current);
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
current = current.getParent();
|
|
416
|
+
}
|
|
417
|
+
// Always include sourceFile as the outermost scope
|
|
418
|
+
identifierScopeChain.push(sourceFile);
|
|
419
|
+
// Filter declarations that are in scope and come before the identifier
|
|
420
|
+
const inScopeDeclarations = matchingDeclarations.filter(({ decl, scope, pos }) => {
|
|
421
|
+
// Declaration must come before identifier
|
|
422
|
+
if (pos >= identifierPos) {
|
|
423
|
+
return false;
|
|
424
|
+
}
|
|
425
|
+
// Find the nearest declaration whose scope is in the identifier's scope chain
|
|
426
|
+
if (!scope) {
|
|
427
|
+
// This shouldn't happen with our getScope function, but handle it
|
|
428
|
+
return false;
|
|
429
|
+
}
|
|
430
|
+
// Check if declaration scope is in the identifier's scope chain
|
|
431
|
+
const scopeIndex = identifierScopeChain.indexOf(scope);
|
|
432
|
+
if (scopeIndex !== -1) {
|
|
433
|
+
return true; // Declaration is in a scope that contains the identifier
|
|
434
|
+
}
|
|
435
|
+
return false;
|
|
436
|
+
});
|
|
437
|
+
// Return the closest declaration (latest position = most recent in scope)
|
|
438
|
+
if (inScopeDeclarations.length > 0) {
|
|
439
|
+
// Prefer declarations in closer scopes (earlier in chain)
|
|
440
|
+
const scopePriorities = new Map();
|
|
441
|
+
identifierScopeChain.forEach((scope, index) => {
|
|
442
|
+
scopePriorities.set(scope, index);
|
|
443
|
+
});
|
|
444
|
+
// Sort by scope priority (closer scopes first), then by position (most recent first)
|
|
445
|
+
inScopeDeclarations.sort((a, b) => {
|
|
446
|
+
const aPriority = scopePriorities.get(a.scope) ?? Infinity;
|
|
447
|
+
const bPriority = scopePriorities.get(b.scope) ?? Infinity;
|
|
448
|
+
if (aPriority !== bPriority) {
|
|
449
|
+
return aPriority - bPriority;
|
|
450
|
+
}
|
|
451
|
+
return b.pos - a.pos; // Most recent in same scope
|
|
452
|
+
});
|
|
453
|
+
return inScopeDeclarations[0].decl;
|
|
454
|
+
}
|
|
455
|
+
return undefined;
|
|
456
|
+
}
|
|
457
|
+
catch {
|
|
458
|
+
return undefined;
|
|
459
|
+
}
|
|
460
|
+
}
|
|
193
461
|
/**
|
|
194
462
|
* Fallback: Extract Tailwind classes from source text using regex
|
|
195
463
|
* Used for backward compatibility when only source text is available.
|
|
@@ -230,6 +498,7 @@ function extractTailwindClassesFromText(sourceText) {
|
|
|
230
498
|
}
|
|
231
499
|
/**
|
|
232
500
|
* Strip all variant prefixes from a class name to get the base utility
|
|
501
|
+
* Also strips the ! important prefix
|
|
233
502
|
*
|
|
234
503
|
* Examples:
|
|
235
504
|
* - sm:bg-red-500 → bg-red-500
|
|
@@ -238,9 +507,16 @@ function extractTailwindClassesFromText(sourceText) {
|
|
|
238
507
|
* - light:bg-white → bg-white
|
|
239
508
|
* - aria-[pressed=true]:bg-blue-500 → bg-blue-500
|
|
240
509
|
* - data-[state=active]:text-red-500 → text-red-500
|
|
510
|
+
* - !p-4 → p-4
|
|
511
|
+
* - sm:!p-4 → p-4
|
|
241
512
|
*/
|
|
242
513
|
function stripVariantPrefixes(className) {
|
|
243
|
-
|
|
514
|
+
// Strip variant prefixes (handles sm:!p-4 pattern where ! comes after variant)
|
|
515
|
+
// The regex matches variants like sm:, and we need to also handle sm:! pattern
|
|
516
|
+
let base = className.replace(VARIANT_PREFIX_CHAIN, '');
|
|
517
|
+
// Strip ! important prefix (can be at start or after variant)
|
|
518
|
+
base = base.replace(/^!/, '');
|
|
519
|
+
return base;
|
|
244
520
|
}
|
|
245
521
|
/**
|
|
246
522
|
* Categorize Tailwind utility classes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind.js","sourceRoot":"","sources":["../../../src/core/styleExtractor/tailwind.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tailwind.js","sourceRoot":"","sources":["../../../src/core/styleExtractor/tailwind.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,12 @@ export interface ContractLinks {
|
|
|
81
81
|
export interface NextJSMetadata {
|
|
82
82
|
isInAppDir?: boolean;
|
|
83
83
|
directive?: 'client' | 'server';
|
|
84
|
+
routeRole?: 'page' | 'layout' | 'loading' | 'error' | 'not-found' | 'template' | 'default' | 'route';
|
|
85
|
+
segmentPath?: string;
|
|
86
|
+
metadata?: {
|
|
87
|
+
static?: Record<string, unknown>;
|
|
88
|
+
dynamic?: boolean;
|
|
89
|
+
};
|
|
84
90
|
}
|
|
85
91
|
export type ExportMetadata = 'default' | 'named' | {
|
|
86
92
|
named: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UIFContract.d.ts","sourceRoot":"","sources":["../../src/types/UIFContract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;GAGG;AAEH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,UAAU,GAAG,cAAc,GAAG,MAAM,CAAC;AAElF,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,YAAY,GAAG,eAAe,GAAG,gBAAgB,GAAG,WAAW,GAAG,UAAU,CAAC;AAE5H,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAChB,MAAM,GACN,MAAM,EAAE,GACR;IACE,IAAI,EAAE,eAAe,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEN;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,MAAM,GACN;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEN,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"UIFContract.d.ts","sourceRoot":"","sources":["../../src/types/UIFContract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UIFContract.js","sourceRoot":"","sources":["../../src/types/UIFContract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;
|
|
1
|
+
{"version":3,"file":"UIFContract.js","sourceRoot":"","sources":["../../src/types/UIFContract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAyQH;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,MAAM,IAAI,GAAG;QACb,GAAG,CAAC,IAAI,KAAK,aAAa;QAC1B,eAAe,IAAI,GAAG;QACtB,GAAG,CAAC,aAAa,KAAK,KAAK,CAC5B,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED