mcp-tailwindcss 1.0.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/README.md +419 -0
- package/dist/ast-parser.d.ts +106 -0
- package/dist/ast-parser.d.ts.map +1 -0
- package/dist/ast-parser.js +615 -0
- package/dist/ast-parser.js.map +1 -0
- package/dist/auto-updater.d.ts +48 -0
- package/dist/auto-updater.d.ts.map +1 -0
- package/dist/auto-updater.js +237 -0
- package/dist/auto-updater.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1357 -0
- package/dist/index.js.map +1 -0
- package/package.json +63 -0
package/README.md
ADDED
|
@@ -0,0 +1,419 @@
|
|
|
1
|
+
# MCP Tailwind CSS Context
|
|
2
|
+
|
|
3
|
+
<div align="center">
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+

|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
**Servidor MCP (Model Context Protocol) para fornecer contexto completo da biblioteca Tailwind CSS**
|
|
10
|
+
|
|
11
|
+
[Instalação](#instalação) • [Ferramentas](#ferramentas-disponíveis) • [Frameworks](#integração-com-frameworks) • [v3 vs v4](#tailwind-v3-vs-v4)
|
|
12
|
+
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 📋 Sobre
|
|
18
|
+
|
|
19
|
+
Este servidor MCP fornece acesso completo ao código-fonte do **Tailwind CSS** (repositório oficial `tailwindlabs/tailwindcss`), permitindo que assistentes de IA como Claude e GitHub Copilot tenham contexto profundo sobre:
|
|
20
|
+
|
|
21
|
+
- ✅ Configuração e Theme Variables
|
|
22
|
+
- ✅ Utilities e Plugins
|
|
23
|
+
- ✅ Integração com frameworks (Vite, Next.js, Nuxt, Astro, etc.)
|
|
24
|
+
- ✅ Diferenças entre Tailwind v3 e v4
|
|
25
|
+
- ✅ AST parsing para tipos TypeScript
|
|
26
|
+
- ✅ Auto-download e atualização do repositório oficial
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 🚀 Instalação
|
|
31
|
+
|
|
32
|
+
### Via NPM (recomendado)
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npm install -g mcp-tailwindcss
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Configuração no Claude Desktop
|
|
39
|
+
|
|
40
|
+
Adicione ao seu arquivo `claude_desktop_config.json`:
|
|
41
|
+
|
|
42
|
+
**Windows:**
|
|
43
|
+
```json
|
|
44
|
+
{
|
|
45
|
+
"mcpServers": {
|
|
46
|
+
"tailwindcss": {
|
|
47
|
+
"command": "npx",
|
|
48
|
+
"args": ["-y", "mcp-tailwindcss"]
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**macOS/Linux:**
|
|
55
|
+
```json
|
|
56
|
+
{
|
|
57
|
+
"mcpServers": {
|
|
58
|
+
"tailwindcss": {
|
|
59
|
+
"command": "npx",
|
|
60
|
+
"args": ["-y", "mcp-tailwindcss"]
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Configuração no VS Code (GitHub Copilot)
|
|
67
|
+
|
|
68
|
+
Adicione ao seu `settings.json`:
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"github.copilot.chat.mcpServers": {
|
|
73
|
+
"tailwindcss": {
|
|
74
|
+
"command": "npx",
|
|
75
|
+
"args": ["-y", "mcp-tailwindcss"]
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 🛠️ Ferramentas Disponíveis
|
|
84
|
+
|
|
85
|
+
### 📁 Exploração de Código
|
|
86
|
+
|
|
87
|
+
| Ferramenta | Descrição |
|
|
88
|
+
|------------|-----------|
|
|
89
|
+
| `tailwind_estrutura` | Lista a estrutura de arquivos do Tailwind CSS (`packages/tailwindcss/src`) |
|
|
90
|
+
| `tailwind_ler_arquivo` | Lê o conteúdo de um arquivo específico do Tailwind |
|
|
91
|
+
|
|
92
|
+
### 🔍 Análise de Tipos (AST)
|
|
93
|
+
|
|
94
|
+
| Ferramenta | Descrição |
|
|
95
|
+
|------------|-----------|
|
|
96
|
+
| `tailwind_extrair_tipos` | Extrai interfaces, types, enums, funções via AST |
|
|
97
|
+
| `tailwind_buscar_tipo` | Busca definição de tipo específico pelo nome |
|
|
98
|
+
| `tailwind_buscar_fuzzy` | Busca aproximada quando não sabe o nome exato |
|
|
99
|
+
| `tailwind_listar_exports` | Lista todos os exports públicos agrupados |
|
|
100
|
+
| `tailwind_categorias` | Lista declarações por categoria específica |
|
|
101
|
+
| `tailwind_constantes` | Lista constantes e variáveis exportadas |
|
|
102
|
+
| `tailwind_hierarquia` | Mostra hierarquia de herança de um tipo |
|
|
103
|
+
| `tailwind_estatisticas` | Estatísticas detalhadas da biblioteca |
|
|
104
|
+
| `tailwind_dependencias` | Analisa dependências entre módulos |
|
|
105
|
+
| `tailwind_enums` | Lista todas as enumerações com valores |
|
|
106
|
+
| `tailwind_interfaces` | Lista interfaces com propriedades/métodos |
|
|
107
|
+
| `tailwind_funcoes` | Lista funções exportadas com assinaturas |
|
|
108
|
+
|
|
109
|
+
### 🔄 Atualizações
|
|
110
|
+
|
|
111
|
+
| Ferramenta | Descrição |
|
|
112
|
+
|------------|-----------|
|
|
113
|
+
| `tailwind_check_updates` | Verifica se há atualizações disponíveis |
|
|
114
|
+
| `tailwind_update` | Atualiza o repositório local |
|
|
115
|
+
| `tailwind_status` | Status atual do repositório (commit SHA, etc.) |
|
|
116
|
+
|
|
117
|
+
### 🎯 Integrações
|
|
118
|
+
|
|
119
|
+
| Ferramenta | Descrição |
|
|
120
|
+
|------------|-----------|
|
|
121
|
+
| `tailwind_integracoes` | Guias de integração com frameworks |
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 🎨 Integração com Frameworks
|
|
126
|
+
|
|
127
|
+
O MCP fornece guias completos para integrar Tailwind CSS com os principais frameworks:
|
|
128
|
+
|
|
129
|
+
### Vite (Tailwind v4)
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
npm install tailwindcss @tailwindcss/vite
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
```javascript
|
|
136
|
+
// vite.config.js
|
|
137
|
+
import tailwindcss from '@tailwindcss/vite'
|
|
138
|
+
import { defineConfig } from 'vite'
|
|
139
|
+
|
|
140
|
+
export default defineConfig({
|
|
141
|
+
plugins: [tailwindcss()]
|
|
142
|
+
})
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
```css
|
|
146
|
+
/* app.css */
|
|
147
|
+
@import "tailwindcss";
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Next.js (Tailwind v4)
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
npm install tailwindcss @tailwindcss/postcss postcss
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
```javascript
|
|
157
|
+
// postcss.config.mjs
|
|
158
|
+
export default {
|
|
159
|
+
plugins: {
|
|
160
|
+
'@tailwindcss/postcss': {}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### PostCSS (Universal)
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
npm install tailwindcss @tailwindcss/postcss postcss
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
```javascript
|
|
172
|
+
// postcss.config.js
|
|
173
|
+
export default {
|
|
174
|
+
plugins: {
|
|
175
|
+
'@tailwindcss/postcss': {}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### CLI
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
npm install tailwindcss @tailwindcss/cli
|
|
184
|
+
npx @tailwindcss/cli -i input.css -o output.css --watch
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## ⚡ Tailwind v3 vs v4
|
|
190
|
+
|
|
191
|
+
### Principais Diferenças
|
|
192
|
+
|
|
193
|
+
| Aspecto | Tailwind v3 | Tailwind v4 |
|
|
194
|
+
|---------|-------------|-------------|
|
|
195
|
+
| **Configuração** | `tailwind.config.js` | CSS-first com `@theme` |
|
|
196
|
+
| **Instalação Vite** | Plugin PostCSS | `@tailwindcss/vite` nativo |
|
|
197
|
+
| **Theme** | JavaScript object | CSS Variables (`--color-*`) |
|
|
198
|
+
| **Import** | `@tailwind base/components/utilities` | `@import "tailwindcss"` |
|
|
199
|
+
| **Cores** | HEX/RGB | oklch() por padrão |
|
|
200
|
+
|
|
201
|
+
### Tailwind v4 - Nova Sintaxe CSS
|
|
202
|
+
|
|
203
|
+
```css
|
|
204
|
+
@import "tailwindcss";
|
|
205
|
+
|
|
206
|
+
@theme {
|
|
207
|
+
/* Cores customizadas */
|
|
208
|
+
--color-brand: oklch(0.72 0.11 221.19);
|
|
209
|
+
|
|
210
|
+
/* Breakpoints */
|
|
211
|
+
--breakpoint-3xl: 120rem;
|
|
212
|
+
|
|
213
|
+
/* Fontes */
|
|
214
|
+
--font-display: "Satoshi", sans-serif;
|
|
215
|
+
|
|
216
|
+
/* Espaçamento base */
|
|
217
|
+
--spacing: 0.25rem;
|
|
218
|
+
}
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
### Theme Variable Namespaces (v4)
|
|
222
|
+
|
|
223
|
+
| Namespace | Utilities Geradas |
|
|
224
|
+
|-----------|-------------------|
|
|
225
|
+
| `--color-*` | `bg-*`, `text-*`, `border-*`, `fill-*` |
|
|
226
|
+
| `--font-*` | `font-*` |
|
|
227
|
+
| `--text-*` | `text-xs`, `text-sm`, `text-lg`, etc. |
|
|
228
|
+
| `--spacing-*` | `p-*`, `m-*`, `gap-*`, `w-*`, `h-*` |
|
|
229
|
+
| `--radius-*` | `rounded-*` |
|
|
230
|
+
| `--shadow-*` | `shadow-*` |
|
|
231
|
+
| `--breakpoint-*` | `sm:`, `md:`, `lg:`, `xl:` |
|
|
232
|
+
| `--animate-*` | `animate-*` |
|
|
233
|
+
|
|
234
|
+
### Tailwind v3 - Configuração JavaScript
|
|
235
|
+
|
|
236
|
+
```javascript
|
|
237
|
+
// tailwind.config.js (v3)
|
|
238
|
+
module.exports = {
|
|
239
|
+
content: ['./src/**/*.{js,jsx,ts,tsx}'],
|
|
240
|
+
theme: {
|
|
241
|
+
extend: {
|
|
242
|
+
colors: {
|
|
243
|
+
brand: '#06B6D4',
|
|
244
|
+
},
|
|
245
|
+
fontFamily: {
|
|
246
|
+
display: ['Satoshi', 'sans-serif'],
|
|
247
|
+
},
|
|
248
|
+
},
|
|
249
|
+
},
|
|
250
|
+
plugins: [],
|
|
251
|
+
}
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
```css
|
|
255
|
+
/* styles.css (v3) */
|
|
256
|
+
@tailwind base;
|
|
257
|
+
@tailwind components;
|
|
258
|
+
@tailwind utilities;
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## 📚 Exemplos de Uso
|
|
264
|
+
|
|
265
|
+
### Buscar configuração de cores
|
|
266
|
+
|
|
267
|
+
```
|
|
268
|
+
Use tailwind_buscar_tipo com nome "Theme" para ver a estrutura de tema
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Explorar utilities disponíveis
|
|
272
|
+
|
|
273
|
+
```
|
|
274
|
+
Use tailwind_extrair_tipos com apenas_kind "function" para ver todas as funções utilitárias
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### Verificar integração com Next.js
|
|
278
|
+
|
|
279
|
+
```
|
|
280
|
+
Use tailwind_integracoes com framework "next" para ver o passo a passo
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Ver estrutura do projeto
|
|
284
|
+
|
|
285
|
+
```
|
|
286
|
+
Use tailwind_estrutura para explorar a organização do código-fonte
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 🔧 Variáveis de Ambiente
|
|
292
|
+
|
|
293
|
+
| Variável | Descrição | Padrão |
|
|
294
|
+
|----------|-----------|--------|
|
|
295
|
+
| `TAILWIND_SRC_PATH` | Caminho customizado para o código-fonte | Auto-detectado |
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
## 📁 Estrutura do Repositório
|
|
300
|
+
|
|
301
|
+
O MCP baixa automaticamente o repositório oficial do Tailwind CSS na primeira execução:
|
|
302
|
+
|
|
303
|
+
```
|
|
304
|
+
~/.mcp-tailwindcss/
|
|
305
|
+
└── tailwindcss/
|
|
306
|
+
├── packages/
|
|
307
|
+
│ └── tailwindcss/
|
|
308
|
+
│ └── src/ <- Código-fonte principal
|
|
309
|
+
│ ├── index.ts
|
|
310
|
+
│ ├── theme.css
|
|
311
|
+
│ ├── preflight.css
|
|
312
|
+
│ ├── utilities.css
|
|
313
|
+
│ ├── compat/
|
|
314
|
+
│ ├── utils/
|
|
315
|
+
│ └── ...
|
|
316
|
+
├── crates/ <- Engine Oxide (Rust)
|
|
317
|
+
└── integrations/ <- Testes de integração
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
## 🎯 Utilities Reference (v4)
|
|
323
|
+
|
|
324
|
+
### Layout
|
|
325
|
+
- `container`, `columns-*`
|
|
326
|
+
- `break-after-*`, `break-before-*`, `break-inside-*`
|
|
327
|
+
- `box-decoration-*`, `box-sizing-*`
|
|
328
|
+
- `block`, `inline-block`, `inline`, `flex`, `inline-flex`, `grid`, `inline-grid`
|
|
329
|
+
- `flow-root`, `contents`, `hidden`
|
|
330
|
+
|
|
331
|
+
### Flexbox & Grid
|
|
332
|
+
- `flex-*`, `flex-row`, `flex-col`, `flex-wrap`, `flex-nowrap`
|
|
333
|
+
- `grid-cols-*`, `grid-rows-*`, `gap-*`
|
|
334
|
+
- `justify-*`, `items-*`, `content-*`
|
|
335
|
+
- `place-*`, `self-*`
|
|
336
|
+
|
|
337
|
+
### Spacing
|
|
338
|
+
- `p-*`, `px-*`, `py-*`, `pt-*`, `pr-*`, `pb-*`, `pl-*`
|
|
339
|
+
- `m-*`, `mx-*`, `my-*`, `mt-*`, `mr-*`, `mb-*`, `ml-*`
|
|
340
|
+
- `space-x-*`, `space-y-*`
|
|
341
|
+
|
|
342
|
+
### Sizing
|
|
343
|
+
- `w-*`, `min-w-*`, `max-w-*`
|
|
344
|
+
- `h-*`, `min-h-*`, `max-h-*`
|
|
345
|
+
- `size-*`
|
|
346
|
+
|
|
347
|
+
### Typography
|
|
348
|
+
- `font-*`, `text-*`, `tracking-*`, `leading-*`
|
|
349
|
+
- `text-left`, `text-center`, `text-right`, `text-justify`
|
|
350
|
+
- `underline`, `line-through`, `no-underline`
|
|
351
|
+
- `uppercase`, `lowercase`, `capitalize`, `normal-case`
|
|
352
|
+
|
|
353
|
+
### Backgrounds
|
|
354
|
+
- `bg-*`, `bg-gradient-*`
|
|
355
|
+
- `from-*`, `via-*`, `to-*`
|
|
356
|
+
- `bg-cover`, `bg-contain`, `bg-center`, `bg-repeat`, `bg-no-repeat`
|
|
357
|
+
|
|
358
|
+
### Borders
|
|
359
|
+
- `border`, `border-*`, `rounded-*`
|
|
360
|
+
- `ring-*`, `outline-*`
|
|
361
|
+
- `divide-*`
|
|
362
|
+
|
|
363
|
+
### Effects
|
|
364
|
+
- `shadow-*`, `drop-shadow-*`
|
|
365
|
+
- `opacity-*`
|
|
366
|
+
- `mix-blend-*`, `bg-blend-*`
|
|
367
|
+
|
|
368
|
+
### Filters
|
|
369
|
+
- `blur-*`, `brightness-*`, `contrast-*`
|
|
370
|
+
- `grayscale`, `hue-rotate-*`, `invert`, `saturate-*`, `sepia`
|
|
371
|
+
- `backdrop-*`
|
|
372
|
+
|
|
373
|
+
### Transitions & Animation
|
|
374
|
+
- `transition`, `transition-*`
|
|
375
|
+
- `duration-*`, `ease-*`, `delay-*`
|
|
376
|
+
- `animate-*`
|
|
377
|
+
|
|
378
|
+
### Transforms
|
|
379
|
+
- `scale-*`, `rotate-*`, `translate-*`, `skew-*`
|
|
380
|
+
- `origin-*`
|
|
381
|
+
|
|
382
|
+
### Interactivity
|
|
383
|
+
- `cursor-*`, `pointer-events-*`
|
|
384
|
+
- `resize`, `resize-x`, `resize-y`, `resize-none`
|
|
385
|
+
- `select-*`, `touch-*`, `scroll-*`
|
|
386
|
+
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
## 🤝 Contribuindo
|
|
390
|
+
|
|
391
|
+
1. Fork o repositório
|
|
392
|
+
2. Crie sua branch: `git checkout -b feature/nova-funcionalidade`
|
|
393
|
+
3. Commit suas mudanças: `git commit -m 'feat: adiciona nova funcionalidade'`
|
|
394
|
+
4. Push para a branch: `git push origin feature/nova-funcionalidade`
|
|
395
|
+
5. Abra um Pull Request
|
|
396
|
+
|
|
397
|
+
---
|
|
398
|
+
|
|
399
|
+
## 📄 Licença
|
|
400
|
+
|
|
401
|
+
MIT © Joseph
|
|
402
|
+
|
|
403
|
+
---
|
|
404
|
+
|
|
405
|
+
## 🔗 Links Úteis
|
|
406
|
+
|
|
407
|
+
- [Tailwind CSS Documentation](https://tailwindcss.com/docs)
|
|
408
|
+
- [Tailwind CSS GitHub](https://github.com/tailwindlabs/tailwindcss)
|
|
409
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/)
|
|
410
|
+
- [Tailwind v4 Upgrade Guide](https://tailwindcss.com/docs/upgrade-guide)
|
|
411
|
+
- [Theme Variables Reference](https://tailwindcss.com/docs/theme)
|
|
412
|
+
|
|
413
|
+
---
|
|
414
|
+
|
|
415
|
+
<div align="center">
|
|
416
|
+
|
|
417
|
+
**Feito com 💙 para a comunidade Tailwind CSS**
|
|
418
|
+
|
|
419
|
+
</div>
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
export type ExtractedKind = 'interface' | 'type' | 'enum' | 'function' | 'class' | 'variable' | 'namespace' | 're-export';
|
|
2
|
+
export interface PropertyInfo {
|
|
3
|
+
name: string;
|
|
4
|
+
type: string;
|
|
5
|
+
optional: boolean;
|
|
6
|
+
readonly: boolean;
|
|
7
|
+
docs?: string;
|
|
8
|
+
isMethod: boolean;
|
|
9
|
+
isCallSignature: boolean;
|
|
10
|
+
isIndexSignature: boolean;
|
|
11
|
+
parameters?: string[];
|
|
12
|
+
returnType?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface TypeParameter {
|
|
15
|
+
name: string;
|
|
16
|
+
constraint?: string;
|
|
17
|
+
default?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface ExtractedType {
|
|
20
|
+
name: string;
|
|
21
|
+
kind: ExtractedKind;
|
|
22
|
+
exported: boolean;
|
|
23
|
+
file: string;
|
|
24
|
+
module: string;
|
|
25
|
+
signature: string;
|
|
26
|
+
fullSignature?: string;
|
|
27
|
+
properties?: PropertyInfo[];
|
|
28
|
+
methods?: PropertyInfo[];
|
|
29
|
+
members?: string[];
|
|
30
|
+
typeParameters?: TypeParameter[];
|
|
31
|
+
extends?: string[];
|
|
32
|
+
implements?: string[];
|
|
33
|
+
docs?: string;
|
|
34
|
+
value?: string;
|
|
35
|
+
reExportSource?: string;
|
|
36
|
+
lineNumber?: number;
|
|
37
|
+
}
|
|
38
|
+
export interface ModuleStatistics {
|
|
39
|
+
module: string;
|
|
40
|
+
interfaces: number;
|
|
41
|
+
types: number;
|
|
42
|
+
enums: number;
|
|
43
|
+
functions: number;
|
|
44
|
+
classes: number;
|
|
45
|
+
variables: number;
|
|
46
|
+
namespaces: number;
|
|
47
|
+
reExports: number;
|
|
48
|
+
total: number;
|
|
49
|
+
}
|
|
50
|
+
export interface LibraryStatistics {
|
|
51
|
+
totalDeclarations: number;
|
|
52
|
+
byKind: Record<ExtractedKind, number>;
|
|
53
|
+
byModule: ModuleStatistics[];
|
|
54
|
+
topInterfaces: string[];
|
|
55
|
+
topTypes: string[];
|
|
56
|
+
topFunctions: string[];
|
|
57
|
+
}
|
|
58
|
+
export interface DependencyInfo {
|
|
59
|
+
module: string;
|
|
60
|
+
imports: string[];
|
|
61
|
+
exports: string[];
|
|
62
|
+
reExportsFrom: string[];
|
|
63
|
+
}
|
|
64
|
+
export declare class AstParser {
|
|
65
|
+
private project;
|
|
66
|
+
private tailwindSrcPath;
|
|
67
|
+
private cachedTypes;
|
|
68
|
+
constructor(tailwindSrcPath: string);
|
|
69
|
+
private getModuleName;
|
|
70
|
+
private getRelativePath;
|
|
71
|
+
addSourceFiles(patterns: string[]): void;
|
|
72
|
+
extractFromFile(filePath: string): ExtractedType[];
|
|
73
|
+
extractAllTypes(): ExtractedType[];
|
|
74
|
+
private extractTypes;
|
|
75
|
+
private extractTypeParameters;
|
|
76
|
+
private extractInterface;
|
|
77
|
+
private extractTypeAlias;
|
|
78
|
+
private extractEnum;
|
|
79
|
+
private extractFunction;
|
|
80
|
+
private extractClass;
|
|
81
|
+
private extractVariable;
|
|
82
|
+
private extractNamespace;
|
|
83
|
+
private extractReExport;
|
|
84
|
+
private simplifyType;
|
|
85
|
+
private getJsDocs;
|
|
86
|
+
searchType(typeName: string): ExtractedType | undefined;
|
|
87
|
+
fuzzySearch(query: string, maxResults?: number): ExtractedType[];
|
|
88
|
+
getTypesFromModule(moduleName: string): ExtractedType[];
|
|
89
|
+
getTypesByKind(kind: ExtractedKind): ExtractedType[];
|
|
90
|
+
getStatistics(): LibraryStatistics;
|
|
91
|
+
getTypeHierarchy(typeName: string): {
|
|
92
|
+
type: ExtractedType;
|
|
93
|
+
parents: string[];
|
|
94
|
+
children: string[];
|
|
95
|
+
} | null;
|
|
96
|
+
analyzeDependencies(): DependencyInfo[];
|
|
97
|
+
getVariables(): ExtractedType[];
|
|
98
|
+
getConstants(): ExtractedType[];
|
|
99
|
+
getNamespaces(): ExtractedType[];
|
|
100
|
+
getInterfaces(): ExtractedType[];
|
|
101
|
+
getEnums(): ExtractedType[];
|
|
102
|
+
getFunctions(): ExtractedType[];
|
|
103
|
+
getClasses(): ExtractedType[];
|
|
104
|
+
getTypes(): ExtractedType[];
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=ast-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ast-parser.d.ts","sourceRoot":"","sources":["../src/ast-parser.ts"],"names":[],"mappings":"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"}
|