project-mcp-server 2.1.0 → 2.2.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 +9 -122
- package/dist/setup.d.ts +1 -1
- package/dist/setup.js +62 -148
- package/dist/setup.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,28 +6,14 @@
|
|
|
6
6
|
[](https://nodejs.org/)
|
|
7
7
|
[](https://modelcontextprotocol.io)
|
|
8
8
|
|
|
9
|
-
MCP server con inteligencia de proyecto para Next.js + Prisma. Un comando
|
|
9
|
+
MCP server con inteligencia de proyecto para Next.js + Prisma. Un comando desde tu proyecto:
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
|
+
cd tu-proyecto
|
|
12
13
|
npx project-mcp-server setup
|
|
13
14
|
```
|
|
14
15
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
### Alternativa: instalación global
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
npm install -g project-mcp-server
|
|
21
|
-
project-mcp-setup # correr desde tu proyecto
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
### Alternativa: desde source
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
git clone https://github.com/fernandosecchi/project-mcp-server.git ~/.project-mcp
|
|
28
|
-
cd ~/.project-mcp && npm install && npm run build
|
|
29
|
-
node ~/.project-mcp/dist/setup.js # desde tu proyecto
|
|
30
|
-
```
|
|
16
|
+
Crea un `.mcp.json` en tu proyecto y copia las skills. Commiteá el `.mcp.json` al repo para que todo el equipo lo tenga sin configurar nada. **Prerequisito**: Node.js 20+.
|
|
31
17
|
|
|
32
18
|
---
|
|
33
19
|
|
|
@@ -45,124 +31,25 @@ Se integra con [Gentleman AI Ecosystem](https://github.com/Gentleman-Programming
|
|
|
45
31
|
|
|
46
32
|
---
|
|
47
33
|
|
|
48
|
-
##
|
|
49
|
-
|
|
50
|
-
Si preferís configurar a mano en vez de usar el setup:
|
|
34
|
+
## Cómo funciona
|
|
51
35
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
| Variable | Default | Descripción |
|
|
55
|
-
|---|---|---|
|
|
56
|
-
| `MCP_PROJECT_ROOT` | `process.cwd()` | Raíz del proyecto a analizar |
|
|
57
|
-
|
|
58
|
-
### Claude Code
|
|
59
|
-
|
|
60
|
-
Editá `~/.claude/config.json`:
|
|
36
|
+
El setup crea un archivo `.mcp.json` en la raíz de tu proyecto:
|
|
61
37
|
|
|
62
38
|
```json
|
|
63
39
|
{
|
|
64
|
-
"
|
|
65
|
-
"project": {
|
|
66
|
-
"command": "npx",
|
|
67
|
-
"args": ["-y", "project-mcp-server"],
|
|
68
|
-
"env": {
|
|
69
|
-
"MCP_PROJECT_ROOT": "/ruta/absoluta/tu-proyecto"
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
Verificar: abrí Claude Code en tu proyecto → `/mcp` → debe aparecer `project` con 10 tools.
|
|
77
|
-
|
|
78
|
-
### Open Code
|
|
79
|
-
|
|
80
|
-
Editá `~/.config/opencode/config.json`:
|
|
81
|
-
|
|
82
|
-
```json
|
|
83
|
-
{
|
|
84
|
-
"mcp": {
|
|
85
|
-
"project": {
|
|
86
|
-
"type": "local",
|
|
87
|
-
"command": "npx",
|
|
88
|
-
"args": ["-y", "project-mcp-server"],
|
|
89
|
-
"env": {
|
|
90
|
-
"MCP_PROJECT_ROOT": "/ruta/absoluta/tu-proyecto"
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
### Gemini CLI
|
|
98
|
-
|
|
99
|
-
Editá `~/.gemini/config.json`:
|
|
100
|
-
|
|
101
|
-
```json
|
|
102
|
-
{
|
|
103
|
-
"mcpServers": {
|
|
104
|
-
"project": {
|
|
105
|
-
"command": "npx",
|
|
106
|
-
"args": ["-y", "project-mcp-server"],
|
|
107
|
-
"env": {
|
|
108
|
-
"MCP_PROJECT_ROOT": "/ruta/absoluta/tu-proyecto"
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
### Codex CLI
|
|
116
|
-
|
|
117
|
-
Editá `~/.codex/config.json`:
|
|
118
|
-
|
|
119
|
-
```json
|
|
120
|
-
{
|
|
121
|
-
"mcpServers": {
|
|
40
|
+
"servers": {
|
|
122
41
|
"project": {
|
|
123
42
|
"command": "npx",
|
|
124
43
|
"args": ["-y", "project-mcp-server"],
|
|
125
|
-
"env": {
|
|
126
|
-
"MCP_PROJECT_ROOT": "/ruta/absoluta/tu-proyecto"
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
### Cursor
|
|
134
|
-
|
|
135
|
-
Settings → MCP → Add server:
|
|
136
|
-
|
|
137
|
-
```json
|
|
138
|
-
{
|
|
139
|
-
"project": {
|
|
140
|
-
"command": "node",
|
|
141
|
-
"args": ["~/.project-mcp/dist/index.js"],
|
|
142
|
-
"env": {
|
|
143
|
-
"MCP_PROJECT_ROOT": "/ruta/absoluta/tu-proyecto"
|
|
44
|
+
"env": { "MCP_PROJECT_ROOT": "." }
|
|
144
45
|
}
|
|
145
46
|
}
|
|
146
47
|
}
|
|
147
48
|
```
|
|
148
49
|
|
|
149
|
-
|
|
50
|
+
Este archivo es **per-project**: cualquier agente MCP-compatible (Claude Code, Cursor, VS Code, etc.) lo detecta automáticamente al abrir el directorio. Commitealo al repo para que todo el equipo lo tenga sin configurar nada.
|
|
150
51
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
```json
|
|
154
|
-
{
|
|
155
|
-
"servers": {
|
|
156
|
-
"project": {
|
|
157
|
-
"type": "stdio",
|
|
158
|
-
"command": "npx",
|
|
159
|
-
"args": ["-y", "project-mcp-server"],
|
|
160
|
-
"env": {
|
|
161
|
-
"MCP_PROJECT_ROOT": "${workspaceFolder}"
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
52
|
+
También copia las skills al directorio del agente (ej: `~/.claude/skills/`).
|
|
166
53
|
```
|
|
167
54
|
|
|
168
55
|
---
|
package/dist/setup.d.ts
CHANGED
package/dist/setup.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
3
|
* Setup interactivo para project-mcp-server.
|
|
4
|
-
*
|
|
4
|
+
* Crea .mcp.json en el proyecto y copia skills al agente.
|
|
5
5
|
*
|
|
6
6
|
* Uso:
|
|
7
7
|
* npx project-mcp-server setup
|
|
@@ -57,123 +57,43 @@ function success(msg) {
|
|
|
57
57
|
function warn(msg) {
|
|
58
58
|
console.log(` ⚠ ${msg}`);
|
|
59
59
|
}
|
|
60
|
-
// ───
|
|
61
|
-
function
|
|
62
|
-
|
|
60
|
+
// ─── Per-project .mcp.json ──────────────────────────────────────────────────
|
|
61
|
+
function createProjectMcpConfig(projectRoot) {
|
|
62
|
+
const mcpPath = join(projectRoot, ".mcp.json");
|
|
63
|
+
const config = readJson(mcpPath);
|
|
64
|
+
const servers = (config.servers ?? {});
|
|
65
|
+
servers.project = {
|
|
63
66
|
command: "npx",
|
|
64
67
|
args: ["-y", PKG_NAME],
|
|
65
|
-
env: { MCP_PROJECT_ROOT:
|
|
68
|
+
env: { MCP_PROJECT_ROOT: "." }
|
|
66
69
|
};
|
|
70
|
+
config.servers = servers;
|
|
71
|
+
writeJson(mcpPath, config);
|
|
67
72
|
}
|
|
68
|
-
function
|
|
69
|
-
|
|
73
|
+
function detectSkillTargets() {
|
|
74
|
+
return [
|
|
70
75
|
{
|
|
71
|
-
id: "claude-code",
|
|
72
76
|
name: "Claude Code",
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
detected: existsSync(join(HOME, ".claude")),
|
|
76
|
-
writeConfig(projectRoot) {
|
|
77
|
-
const configPath = join(HOME, ".claude", "config.json");
|
|
78
|
-
const config = readJson(configPath);
|
|
79
|
-
const servers = (config.mcpServers ?? {});
|
|
80
|
-
servers.project = mcpServerConfig(projectRoot);
|
|
81
|
-
config.mcpServers = servers;
|
|
82
|
-
writeJson(configPath, config);
|
|
83
|
-
}
|
|
77
|
+
dir: join(HOME, ".claude", "skills"),
|
|
78
|
+
detected: existsSync(join(HOME, ".claude"))
|
|
84
79
|
},
|
|
85
80
|
{
|
|
86
|
-
id: "open-code",
|
|
87
81
|
name: "Open Code",
|
|
88
|
-
|
|
89
|
-
detected: existsSync(join(HOME, ".config", "opencode"))
|
|
90
|
-
writeConfig(projectRoot) {
|
|
91
|
-
const configPath = join(HOME, ".config", "opencode", "config.json");
|
|
92
|
-
const config = readJson(configPath);
|
|
93
|
-
const mcp = (config.mcp ?? {});
|
|
94
|
-
mcp.project = { type: "local", ...mcpServerConfig(projectRoot) };
|
|
95
|
-
config.mcp = mcp;
|
|
96
|
-
writeJson(configPath, config);
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
id: "gemini-cli",
|
|
101
|
-
name: "Gemini CLI",
|
|
102
|
-
configPath: join(HOME, ".gemini", "config.json"),
|
|
103
|
-
detected: existsSync(join(HOME, ".gemini")),
|
|
104
|
-
writeConfig(projectRoot) {
|
|
105
|
-
const configPath = join(HOME, ".gemini", "config.json");
|
|
106
|
-
const config = readJson(configPath);
|
|
107
|
-
const servers = (config.mcpServers ?? {});
|
|
108
|
-
servers.project = mcpServerConfig(projectRoot);
|
|
109
|
-
config.mcpServers = servers;
|
|
110
|
-
writeJson(configPath, config);
|
|
111
|
-
}
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
id: "codex-cli",
|
|
115
|
-
name: "Codex CLI",
|
|
116
|
-
configPath: join(HOME, ".codex", "config.json"),
|
|
117
|
-
detected: existsSync(join(HOME, ".codex")),
|
|
118
|
-
writeConfig(projectRoot) {
|
|
119
|
-
const configPath = join(HOME, ".codex", "config.json");
|
|
120
|
-
const config = readJson(configPath);
|
|
121
|
-
const servers = (config.mcpServers ?? {});
|
|
122
|
-
servers.project = mcpServerConfig(projectRoot);
|
|
123
|
-
config.mcpServers = servers;
|
|
124
|
-
writeJson(configPath, config);
|
|
125
|
-
}
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
id: "cursor",
|
|
129
|
-
name: "Cursor",
|
|
130
|
-
configPath: join(HOME, ".cursor", "mcp.json"),
|
|
131
|
-
detected: existsSync(join(HOME, ".cursor")),
|
|
132
|
-
writeConfig(projectRoot) {
|
|
133
|
-
const configPath = join(HOME, ".cursor", "mcp.json");
|
|
134
|
-
const config = readJson(configPath);
|
|
135
|
-
const servers = (config.mcpServers ?? {});
|
|
136
|
-
servers.project = mcpServerConfig(projectRoot);
|
|
137
|
-
config.mcpServers = servers;
|
|
138
|
-
writeJson(configPath, config);
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
];
|
|
142
|
-
for (const agent of agents) {
|
|
143
|
-
if (agent.skillsDir) {
|
|
144
|
-
agent.copySkills = () => copySkillsTo(agent.skillsDir);
|
|
82
|
+
dir: join(HOME, ".config", "opencode", "skills"),
|
|
83
|
+
detected: existsSync(join(HOME, ".config", "opencode"))
|
|
145
84
|
}
|
|
146
|
-
|
|
147
|
-
return agents;
|
|
85
|
+
].filter(t => t.detected);
|
|
148
86
|
}
|
|
149
87
|
function copySkillsTo(targetDir) {
|
|
150
88
|
ensureDir(targetDir);
|
|
151
89
|
const files = readdirSync(SKILLS_DIR).filter(f => f.endsWith(".md"));
|
|
152
90
|
let count = 0;
|
|
153
91
|
for (const file of files) {
|
|
154
|
-
|
|
155
|
-
const dest = join(targetDir, file);
|
|
156
|
-
copyFileSync(src, dest);
|
|
92
|
+
copyFileSync(join(SKILLS_DIR, file), join(targetDir, file));
|
|
157
93
|
count++;
|
|
158
94
|
}
|
|
159
95
|
return count;
|
|
160
96
|
}
|
|
161
|
-
// ─── VS Code (per-project) ──────────────────────────────────────────────────
|
|
162
|
-
function setupVsCode(projectRoot) {
|
|
163
|
-
const vscodeDir = join(projectRoot, ".vscode");
|
|
164
|
-
const mcpPath = join(vscodeDir, "mcp.json");
|
|
165
|
-
ensureDir(vscodeDir);
|
|
166
|
-
const config = readJson(mcpPath);
|
|
167
|
-
const servers = (config.servers ?? {});
|
|
168
|
-
servers.project = {
|
|
169
|
-
type: "stdio",
|
|
170
|
-
command: "npx",
|
|
171
|
-
args: ["-y", PKG_NAME],
|
|
172
|
-
env: { MCP_PROJECT_ROOT: "${workspaceFolder}" }
|
|
173
|
-
};
|
|
174
|
-
config.servers = servers;
|
|
175
|
-
writeJson(mcpPath, config);
|
|
176
|
-
}
|
|
177
97
|
// ─── Main ────────────────────────────────────────────────────────────────────
|
|
178
98
|
async function main() {
|
|
179
99
|
console.log();
|
|
@@ -202,69 +122,63 @@ async function main() {
|
|
|
202
122
|
projectRoot = resolve(projectRoot);
|
|
203
123
|
log(`Proyecto: ${projectRoot}`);
|
|
204
124
|
console.log();
|
|
205
|
-
// 2.
|
|
206
|
-
const
|
|
207
|
-
const
|
|
208
|
-
if (
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
const configureAll = await confirm("¿Configurar el MCP server en todos los agentes detectados?");
|
|
221
|
-
const toConfig = configureAll ? detected : [];
|
|
222
|
-
if (!configureAll) {
|
|
223
|
-
for (const agent of detected) {
|
|
224
|
-
const yes = await confirm(` ¿Configurar ${agent.name}?`, false);
|
|
225
|
-
if (yes)
|
|
226
|
-
toConfig.push(agent);
|
|
125
|
+
// 2. Crear .mcp.json en el proyecto
|
|
126
|
+
const mcpPath = join(projectRoot, ".mcp.json");
|
|
127
|
+
const alreadyExists = existsSync(mcpPath);
|
|
128
|
+
if (alreadyExists) {
|
|
129
|
+
const existing = readJson(mcpPath);
|
|
130
|
+
const servers = existing.servers;
|
|
131
|
+
if (servers?.project) {
|
|
132
|
+
const overwrite = await confirm("Ya existe .mcp.json con 'project' configurado. ¿Sobreescribir?", false);
|
|
133
|
+
if (!overwrite) {
|
|
134
|
+
log("Configuración de MCP sin cambios.");
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
createProjectMcpConfig(projectRoot);
|
|
138
|
+
success(`.mcp.json actualizado`);
|
|
139
|
+
}
|
|
227
140
|
}
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
success(`${agent.name} configurado → ${agent.configPath}`);
|
|
232
|
-
}
|
|
233
|
-
// 4. VS Code (per-project)
|
|
234
|
-
const hasVsCode = existsSync(join(projectRoot, ".vscode")) ||
|
|
235
|
-
existsSync("/Applications/Visual Studio Code.app") ||
|
|
236
|
-
existsSync(join(HOME, ".vscode"));
|
|
237
|
-
if (hasVsCode) {
|
|
238
|
-
const setupVsc = await confirm("¿Configurar VS Code (GitHub Copilot) para este proyecto?");
|
|
239
|
-
if (setupVsc) {
|
|
240
|
-
setupVsCode(projectRoot);
|
|
241
|
-
success(`VS Code configurado → ${join(projectRoot, ".vscode", "mcp.json")}`);
|
|
141
|
+
else {
|
|
142
|
+
createProjectMcpConfig(projectRoot);
|
|
143
|
+
success(`.mcp.json actualizado — server 'project' agregado`);
|
|
242
144
|
}
|
|
243
145
|
}
|
|
146
|
+
else {
|
|
147
|
+
createProjectMcpConfig(projectRoot);
|
|
148
|
+
success(`.mcp.json creado`);
|
|
149
|
+
}
|
|
150
|
+
log("");
|
|
151
|
+
log("Este archivo es per-project: cualquier agente MCP-compatible");
|
|
152
|
+
log("lo detecta al abrir este directorio. Commitealo al repo para");
|
|
153
|
+
log("que todo el equipo lo tenga.");
|
|
244
154
|
console.log();
|
|
245
|
-
//
|
|
246
|
-
const
|
|
247
|
-
if (
|
|
248
|
-
|
|
155
|
+
// 3. Copiar skills a agentes detectados
|
|
156
|
+
const targets = detectSkillTargets();
|
|
157
|
+
if (targets.length > 0) {
|
|
158
|
+
log("Agentes detectados para copiar skills:");
|
|
159
|
+
for (const t of targets) {
|
|
160
|
+
log(` → ${t.name}`);
|
|
161
|
+
}
|
|
162
|
+
console.log();
|
|
163
|
+
const copyAll = await confirm("¿Copiar skills (Next.js, Prisma, security, etc.)?");
|
|
249
164
|
if (copyAll) {
|
|
250
|
-
for (const
|
|
251
|
-
const count =
|
|
252
|
-
success(`${count} skills copiadas a ${
|
|
165
|
+
for (const t of targets) {
|
|
166
|
+
const count = copySkillsTo(t.dir);
|
|
167
|
+
success(`${count} skills copiadas a ${t.dir}`);
|
|
253
168
|
}
|
|
254
169
|
}
|
|
255
170
|
}
|
|
256
171
|
console.log();
|
|
257
|
-
//
|
|
172
|
+
// 4. Resumen
|
|
258
173
|
console.log(" ──────────────────────────");
|
|
259
174
|
console.log(" Setup completado.");
|
|
260
175
|
console.log();
|
|
261
|
-
log("
|
|
262
|
-
log("
|
|
263
|
-
|
|
264
|
-
log("Para verificar, abrí tu agente en el proyecto y ejecutá:");
|
|
176
|
+
log("Archivo creado: .mcp.json (commitear al repo)");
|
|
177
|
+
log("");
|
|
178
|
+
log("Para verificar:");
|
|
265
179
|
log(" Claude Code → /mcp → debe aparecer 'project' con 10 tools");
|
|
266
|
-
log("
|
|
267
|
-
|
|
180
|
+
log(" Cursor → Settings → MCP → debe aparecer 'project'");
|
|
181
|
+
log("");
|
|
268
182
|
log("Para usar con Gentleman AI (Engram + SDD):");
|
|
269
183
|
log(" brew install gentleman-programming/tap/gentle-ai");
|
|
270
184
|
log(" Las skills ya están copiadas en formato compatible.");
|
package/dist/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";AAEA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACvG,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACzD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;AAClD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;AACtB,MAAM,QAAQ,GAAG,oBAAoB,CAAA;AAErC,gFAAgF;AAEhF,SAAS,GAAG,CAAC,QAAgB;IAC3B,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC5E,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3B,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;YAC7B,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,QAAgB,EAAE,UAAU,GAAG,IAAI;IACxD,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAA;IAC3C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,QAAQ,IAAI,IAAI,GAAG,CAAC,CAAA;IAChD,IAAI,MAAM,KAAK,EAAE;QAAE,OAAO,UAAU,CAAA;IACpC,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAA4B,CAAA;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,IAA6B;IAC5D,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IACxB,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAA;AACpE,CAAC;AAED,SAAS,GAAG,CAAC,GAAW;IACtB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;AACzB,CAAC;AAED,SAAS,OAAO,CAAC,GAAW;IAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAA;AAC3B,CAAC;AAED,SAAS,IAAI,CAAC,GAAW;IACvB,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAA;AAC3B,CAAC;AAED,+EAA+E;AAE/E,SAAS,
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED