gravity-core 1.0.1 → 1.0.2
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 +57 -19
- package/dist/cli.js +218 -134
- package/dist/cli.js.map +1 -1
- package/extension/background.js +336 -0
- package/extension/content.js +209 -0
- package/extension/icon128.svg +1 -0
- package/extension/icon16.svg +1 -0
- package/extension/icon48.svg +1 -0
- package/extension/manifest.json +35 -0
- package/extension/popup.html +158 -0
- package/extension/popup.js +159 -0
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ Gravity will:
|
|
|
14
14
|
3. Analyze its position, styles, and visibility
|
|
15
15
|
4. Return specific issues and fixes
|
|
16
16
|
|
|
17
|
-
## 🚀 Quick Start (
|
|
17
|
+
## 🚀 Quick Start (3 minutes)
|
|
18
18
|
|
|
19
19
|
### 1. Install Package
|
|
20
20
|
|
|
@@ -22,21 +22,29 @@ Gravity will:
|
|
|
22
22
|
npm install gravity-core
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
### 2.
|
|
25
|
+
### 2. Extract Chrome Extension
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
```bash
|
|
28
|
+
npx gravity-core setup-extension
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
This creates a `gravity-extension/` folder in your current directory with all the extension files.
|
|
32
|
+
|
|
33
|
+
### 3. Load Extension in Chrome
|
|
34
|
+
|
|
35
|
+
1. Open Chrome and go to `chrome://extensions`
|
|
36
|
+
2. Enable "Developer mode" (toggle in top right)
|
|
29
37
|
3. Click "Load unpacked"
|
|
30
|
-
4. Select the `extension/` folder
|
|
38
|
+
4. Select the `gravity-extension/` folder that was just created
|
|
31
39
|
5. ✅ Done!
|
|
32
40
|
|
|
33
|
-
###
|
|
41
|
+
### 4. Connect to Tab
|
|
34
42
|
|
|
35
|
-
1. Click the Gravity extension icon
|
|
43
|
+
1. Click the Gravity extension icon in your toolbar
|
|
36
44
|
2. Click "Connect to Tab"
|
|
37
45
|
3. Status turns 🟢 Green
|
|
38
46
|
|
|
39
|
-
###
|
|
47
|
+
### 5. Configure Your IDE
|
|
40
48
|
|
|
41
49
|
**VSCode:**
|
|
42
50
|
```json
|
|
@@ -70,7 +78,7 @@ Same as VSCode
|
|
|
70
78
|
**Warp or any IDE with MCP:**
|
|
71
79
|
Add the same config to your IDE's MCP settings.
|
|
72
80
|
|
|
73
|
-
###
|
|
81
|
+
### 6. Start Diagnosing
|
|
74
82
|
|
|
75
83
|
Ask your AI:
|
|
76
84
|
- "Diagnose the #modal element"
|
|
@@ -134,12 +142,14 @@ Browser Tab (DOM, CSS, Layout data)
|
|
|
134
142
|
### Fix Offscreen Modal
|
|
135
143
|
|
|
136
144
|
1. Browser: Open page with broken layout
|
|
137
|
-
2.
|
|
138
|
-
3.
|
|
139
|
-
4.
|
|
140
|
-
5.
|
|
141
|
-
6.
|
|
142
|
-
7.
|
|
145
|
+
2. Terminal: Run `npx gravity-core setup-extension`
|
|
146
|
+
3. Chrome: Load the extension from `gravity-extension/` folder
|
|
147
|
+
4. Extension: Click icon → "Connect to Tab" (🟢 Green)
|
|
148
|
+
5. IDE: Ask AI: "Diagnose the .modal element"
|
|
149
|
+
6. AI: Shows "Element extends 50px beyond right edge"
|
|
150
|
+
7. You: Add `max-width: 100%` to CSS
|
|
151
|
+
8. Browser: Refreshes automatically
|
|
152
|
+
9. AI: Diagnose again → ✅ Fixed!
|
|
143
153
|
|
|
144
154
|
### Debug Hidden Element
|
|
145
155
|
|
|
@@ -150,6 +160,32 @@ Browser Tab (DOM, CSS, Layout data)
|
|
|
150
160
|
5. You: Change CSS to `display: block`
|
|
151
161
|
6. AI: Diagnose again → ✅ Visible!
|
|
152
162
|
|
|
163
|
+
## 🔧 CLI Commands
|
|
164
|
+
|
|
165
|
+
### Setup Extension
|
|
166
|
+
|
|
167
|
+
Extract the Chrome extension to your current directory:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
npx gravity-core setup-extension
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Creates a `gravity-extension/` folder ready to load in Chrome.
|
|
174
|
+
|
|
175
|
+
### Start MCP Server
|
|
176
|
+
|
|
177
|
+
Run the MCP server (used by your IDE):
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
npx gravity-core
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
### Show Help
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
npx gravity-core --help
|
|
187
|
+
```
|
|
188
|
+
|
|
153
189
|
## 🔧 API Reference
|
|
154
190
|
|
|
155
191
|
### Gravity
|
|
@@ -221,13 +257,14 @@ bridge.on('error', (error) => {
|
|
|
221
257
|
- Status should turn green
|
|
222
258
|
|
|
223
259
|
**"Extension not loaded"**
|
|
260
|
+
- Run `npx gravity-core setup-extension`
|
|
224
261
|
- Go to `chrome://extensions`
|
|
225
262
|
- Enable "Developer mode"
|
|
226
263
|
- Click "Load unpacked"
|
|
227
|
-
- Select the `extension/` folder
|
|
264
|
+
- Select the `gravity-extension/` folder
|
|
228
265
|
|
|
229
266
|
**"Port 9224 already in use"**
|
|
230
|
-
- Edit extension's `background.js`
|
|
267
|
+
- Edit extension's `background.js` in the `gravity-extension/` folder
|
|
231
268
|
- Change `WEBSOCKET_PORT` to 9225
|
|
232
269
|
- Update IDE config with `GRAVITY_PORT: 9225`
|
|
233
270
|
|
|
@@ -267,7 +304,7 @@ Contributions welcome! Please open an issue or PR on GitHub.
|
|
|
267
304
|
|
|
268
305
|
## 📞 Support
|
|
269
306
|
|
|
270
|
-
- [GitHub Issues](https://github.com/
|
|
307
|
+
- [GitHub Issues](https://github.com/DharuNamikaze/Gravity-Package/issues)
|
|
271
308
|
- [Documentation](https://gravity.dev)
|
|
272
309
|
|
|
273
310
|
---
|
|
@@ -276,6 +313,7 @@ Contributions welcome! Please open an issue or PR on GitHub.
|
|
|
276
313
|
|
|
277
314
|
```bash
|
|
278
315
|
npm install gravity-core
|
|
316
|
+
npx gravity-core setup-extension
|
|
279
317
|
```
|
|
280
318
|
|
|
281
|
-
Then load the extension and configure your IDE. Happy debugging! 🎉
|
|
319
|
+
Then load the extension in Chrome and configure your IDE. Happy debugging! 🎉
|
package/dist/cli.js
CHANGED
|
@@ -7,162 +7,247 @@
|
|
|
7
7
|
* for layout diagnostics.
|
|
8
8
|
*/
|
|
9
9
|
import { Gravity } from './index.js';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
//
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
10
|
+
import { existsSync, cpSync } from 'fs';
|
|
11
|
+
import { dirname, join, resolve } from 'path';
|
|
12
|
+
import { fileURLToPath } from 'url';
|
|
13
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
14
|
+
const __dirname = dirname(__filename);
|
|
15
|
+
// Check for setup-extension command
|
|
16
|
+
const args = process.argv.slice(2);
|
|
17
|
+
if (args.includes('--setup-extension') || args.includes('setup-extension')) {
|
|
18
|
+
setupExtension();
|
|
19
|
+
}
|
|
20
|
+
else if (args.includes('--help') || args.includes('-h')) {
|
|
21
|
+
showHelp();
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
// Default: run MCP server
|
|
25
|
+
runMCPServer();
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Show help message
|
|
29
|
+
*/
|
|
30
|
+
function showHelp() {
|
|
31
|
+
console.log(`
|
|
32
|
+
🌌 Gravity - AI-powered CSS layout diagnostics
|
|
33
|
+
|
|
34
|
+
Usage:
|
|
35
|
+
npx gravity-core Start the MCP server
|
|
36
|
+
npx gravity-core setup-extension Extract Chrome extension to ./gravity-extension
|
|
37
|
+
npx gravity-core --help Show this help message
|
|
38
|
+
|
|
39
|
+
Setup:
|
|
40
|
+
1. Run: npx gravity-core setup-extension
|
|
41
|
+
2. Open Chrome and go to chrome://extensions
|
|
42
|
+
3. Enable "Developer mode" (toggle in top right)
|
|
43
|
+
4. Click "Load unpacked"
|
|
44
|
+
5. Select the ./gravity-extension folder
|
|
45
|
+
6. Click the Gravity extension icon and "Connect to Tab"
|
|
46
|
+
|
|
47
|
+
Environment Variables:
|
|
48
|
+
GRAVITY_PORT WebSocket port (default: 9224)
|
|
49
|
+
GRAVITY_TIMEOUT Connection timeout in ms (default: 10000)
|
|
50
|
+
`);
|
|
51
|
+
process.exit(0);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Setup/extract the Chrome extension to the current directory
|
|
55
|
+
*/
|
|
56
|
+
function setupExtension() {
|
|
57
|
+
console.log('🌌 Gravity Extension Setup\n');
|
|
58
|
+
// Find the extension folder in the package
|
|
59
|
+
const packageExtensionPath = join(__dirname, '..', 'extension');
|
|
60
|
+
if (!existsSync(packageExtensionPath)) {
|
|
61
|
+
console.error('❌ Extension files not found in package.');
|
|
62
|
+
console.error(' This might be a development issue. Please report at:');
|
|
63
|
+
console.error(' https://github.com/DharuNamikaze/Gravity-Package/issues');
|
|
64
|
+
process.exit(1);
|
|
65
|
+
}
|
|
66
|
+
// Target directory in user's current working directory
|
|
67
|
+
const targetDir = resolve(process.cwd(), 'gravity-extension');
|
|
68
|
+
if (existsSync(targetDir)) {
|
|
69
|
+
console.log(`📁 Extension folder already exists at: ${targetDir}`);
|
|
70
|
+
console.log(' Delete it first if you want to reinstall.\n');
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
try {
|
|
74
|
+
// Copy extension folder
|
|
75
|
+
cpSync(packageExtensionPath, targetDir, { recursive: true });
|
|
76
|
+
console.log(`✅ Extension extracted to: ${targetDir}\n`);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
console.error('❌ Failed to extract extension:', error.message);
|
|
80
|
+
process.exit(1);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
// Show next steps
|
|
84
|
+
console.log('📋 Next Steps:');
|
|
85
|
+
console.log('');
|
|
86
|
+
console.log(' 1. Open Chrome and go to: chrome://extensions');
|
|
87
|
+
console.log(' 2. Enable "Developer mode" (toggle in top right)');
|
|
88
|
+
console.log(' 3. Click "Load unpacked"');
|
|
89
|
+
console.log(` 4. Select this folder: ${targetDir}`);
|
|
90
|
+
console.log(' 5. Click the Gravity extension icon in your toolbar');
|
|
91
|
+
console.log(' 6. Click "Connect to Tab" on the page you want to debug');
|
|
92
|
+
console.log('');
|
|
93
|
+
console.log('🎉 Once connected, Gravity tools will be available in your AI assistant!');
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Run the MCP server (original functionality)
|
|
97
|
+
*/
|
|
98
|
+
async function runMCPServer() {
|
|
99
|
+
// Get port from environment or use default
|
|
100
|
+
const port = parseInt(process.env.GRAVITY_PORT || '9224', 10);
|
|
101
|
+
const timeout = parseInt(process.env.GRAVITY_TIMEOUT || '10000', 10);
|
|
102
|
+
// Initialize bridge
|
|
103
|
+
const bridge = new Gravity({ port, timeout });
|
|
104
|
+
// Tool definitions for MCP
|
|
105
|
+
const tools = [
|
|
106
|
+
{
|
|
107
|
+
name: 'diagnose_layout',
|
|
108
|
+
description: 'Diagnose CSS layout issues for a DOM element',
|
|
109
|
+
inputSchema: {
|
|
110
|
+
type: 'object',
|
|
111
|
+
properties: {
|
|
112
|
+
selector: {
|
|
113
|
+
type: 'string',
|
|
114
|
+
description: 'CSS selector for the element to diagnose (e.g., "#modal", ".button")',
|
|
115
|
+
},
|
|
26
116
|
},
|
|
117
|
+
required: ['selector'],
|
|
27
118
|
},
|
|
28
|
-
required: ['selector'],
|
|
29
119
|
},
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
120
|
+
{
|
|
121
|
+
name: 'check_connection',
|
|
122
|
+
description: 'Check if browser is connected',
|
|
123
|
+
inputSchema: {
|
|
124
|
+
type: 'object',
|
|
125
|
+
properties: {},
|
|
126
|
+
},
|
|
37
127
|
},
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
128
|
+
{
|
|
129
|
+
name: 'highlight_element',
|
|
130
|
+
description: 'Highlight an element in the browser',
|
|
131
|
+
inputSchema: {
|
|
132
|
+
type: 'object',
|
|
133
|
+
properties: {
|
|
134
|
+
selector: {
|
|
135
|
+
type: 'string',
|
|
136
|
+
description: 'CSS selector for the element to highlight',
|
|
137
|
+
},
|
|
138
|
+
color: {
|
|
139
|
+
type: 'string',
|
|
140
|
+
description: 'Color for the highlight (default: red)',
|
|
141
|
+
},
|
|
142
|
+
duration: {
|
|
143
|
+
type: 'number',
|
|
144
|
+
description: 'Duration in milliseconds (default: 3000)',
|
|
145
|
+
},
|
|
56
146
|
},
|
|
147
|
+
required: ['selector'],
|
|
57
148
|
},
|
|
58
|
-
required: ['selector'],
|
|
59
149
|
},
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
150
|
+
];
|
|
151
|
+
/**
|
|
152
|
+
* Handle MCP tool calls
|
|
153
|
+
*/
|
|
154
|
+
async function handleToolCall(toolName, params) {
|
|
155
|
+
switch (toolName) {
|
|
156
|
+
case 'diagnose_layout': {
|
|
157
|
+
if (!bridge.isConnected()) {
|
|
158
|
+
throw new Error('Not connected to browser. Make sure the Gravity extension is loaded and you clicked "Connect to Tab".');
|
|
159
|
+
}
|
|
160
|
+
const result = await bridge.diagnoseLayout(params.selector);
|
|
161
|
+
return result;
|
|
70
162
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
message: status.message,
|
|
79
|
-
timestamp: status.timestamp,
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
case 'highlight_element': {
|
|
83
|
-
if (!bridge.isConnected()) {
|
|
84
|
-
throw new Error('Not connected to browser');
|
|
163
|
+
case 'check_connection': {
|
|
164
|
+
const status = bridge.getStatus();
|
|
165
|
+
return {
|
|
166
|
+
connected: status.connected,
|
|
167
|
+
message: status.message,
|
|
168
|
+
timestamp: status.timestamp,
|
|
169
|
+
};
|
|
85
170
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
171
|
+
case 'highlight_element': {
|
|
172
|
+
if (!bridge.isConnected()) {
|
|
173
|
+
throw new Error('Not connected to browser');
|
|
174
|
+
}
|
|
175
|
+
// This would require additional implementation in the bridge
|
|
176
|
+
// For now, return a message
|
|
177
|
+
return {
|
|
178
|
+
success: true,
|
|
179
|
+
message: `Highlight request sent for ${params.selector}`,
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
default:
|
|
183
|
+
throw new Error(`Unknown tool: ${toolName}`);
|
|
92
184
|
}
|
|
93
|
-
default:
|
|
94
|
-
throw new Error(`Unknown tool: ${toolName}`);
|
|
95
185
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
186
|
+
/**
|
|
187
|
+
* Process MCP request
|
|
188
|
+
*/
|
|
189
|
+
async function processRequest(request) {
|
|
190
|
+
try {
|
|
191
|
+
if (request.method === 'initialize') {
|
|
192
|
+
return {
|
|
193
|
+
jsonrpc: '2.0',
|
|
194
|
+
id: request.id,
|
|
195
|
+
result: {
|
|
196
|
+
protocolVersion: '2024-11-05',
|
|
197
|
+
capabilities: {
|
|
198
|
+
tools: {},
|
|
199
|
+
},
|
|
200
|
+
serverInfo: {
|
|
201
|
+
name: 'gravity',
|
|
202
|
+
version: '1.0.2',
|
|
203
|
+
},
|
|
110
204
|
},
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
if (request.method === 'tools/list') {
|
|
208
|
+
return {
|
|
209
|
+
jsonrpc: '2.0',
|
|
210
|
+
id: request.id,
|
|
211
|
+
result: {
|
|
212
|
+
tools,
|
|
114
213
|
},
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
if (request.method === 'tools/call') {
|
|
217
|
+
const { name, arguments: args } = request.params;
|
|
218
|
+
const result = await handleToolCall(name, args);
|
|
219
|
+
return {
|
|
220
|
+
jsonrpc: '2.0',
|
|
221
|
+
id: request.id,
|
|
222
|
+
result: {
|
|
223
|
+
type: 'text',
|
|
224
|
+
text: JSON.stringify(result, null, 2),
|
|
225
|
+
},
|
|
226
|
+
};
|
|
227
|
+
}
|
|
119
228
|
return {
|
|
120
229
|
jsonrpc: '2.0',
|
|
121
230
|
id: request.id,
|
|
122
|
-
|
|
123
|
-
|
|
231
|
+
error: {
|
|
232
|
+
code: -32601,
|
|
233
|
+
message: 'Method not found',
|
|
124
234
|
},
|
|
125
235
|
};
|
|
126
236
|
}
|
|
127
|
-
|
|
128
|
-
const { name, arguments: args } = request.params;
|
|
129
|
-
const result = await handleToolCall(name, args);
|
|
237
|
+
catch (error) {
|
|
130
238
|
return {
|
|
131
239
|
jsonrpc: '2.0',
|
|
132
240
|
id: request.id,
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
241
|
+
error: {
|
|
242
|
+
code: -32603,
|
|
243
|
+
message: error.message || 'Internal error',
|
|
244
|
+
data: {
|
|
245
|
+
type: error.constructor.name,
|
|
246
|
+
},
|
|
136
247
|
},
|
|
137
248
|
};
|
|
138
249
|
}
|
|
139
|
-
return {
|
|
140
|
-
jsonrpc: '2.0',
|
|
141
|
-
id: request.id,
|
|
142
|
-
error: {
|
|
143
|
-
code: -32601,
|
|
144
|
-
message: 'Method not found',
|
|
145
|
-
},
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
catch (error) {
|
|
149
|
-
return {
|
|
150
|
-
jsonrpc: '2.0',
|
|
151
|
-
id: request.id,
|
|
152
|
-
error: {
|
|
153
|
-
code: -32603,
|
|
154
|
-
message: error.message || 'Internal error',
|
|
155
|
-
data: {
|
|
156
|
-
type: error.constructor.name,
|
|
157
|
-
},
|
|
158
|
-
},
|
|
159
|
-
};
|
|
160
250
|
}
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Main entry point
|
|
164
|
-
*/
|
|
165
|
-
async function main() {
|
|
166
251
|
console.log('🚀 Gravity MCP Server starting...');
|
|
167
252
|
console.log(`📡 Connecting to extension on port ${port}...`);
|
|
168
253
|
// Connect to browser
|
|
@@ -178,6 +263,9 @@ async function main() {
|
|
|
178
263
|
console.error('2. Gravity extension is loaded (chrome://extensions)');
|
|
179
264
|
console.error('3. You clicked "Connect to Tab" in the extension popup');
|
|
180
265
|
console.error('4. Port 9224 is not blocked by firewall');
|
|
266
|
+
console.error('');
|
|
267
|
+
console.error('Need to install the extension? Run:');
|
|
268
|
+
console.error(' npx gravity-core setup-extension');
|
|
181
269
|
process.exit(1);
|
|
182
270
|
}
|
|
183
271
|
// Listen for stdin (MCP protocol)
|
|
@@ -224,8 +312,4 @@ async function main() {
|
|
|
224
312
|
process.exit(0);
|
|
225
313
|
});
|
|
226
314
|
}
|
|
227
|
-
main().catch((error) => {
|
|
228
|
-
console.error('Fatal error:', error);
|
|
229
|
-
process.exit(1);
|
|
230
|
-
});
|
|
231
315
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|