rivet-design 0.5.11 → 0.5.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +172 -40
- package/dist/mcp/server.js.map +1 -1
- package/dist/proxy-middleware/proxy-config.d.ts +1 -1
- package/dist/proxy-middleware/proxy-config.d.ts.map +1 -1
- package/dist/proxy-middleware/proxy-config.js +7 -12
- package/dist/proxy-middleware/proxy-config.js.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +7 -3
- package/dist/server.js.map +1 -1
- package/dist/services/ProjectDetectionService.d.ts +8 -1
- package/dist/services/ProjectDetectionService.d.ts.map +1 -1
- package/dist/services/ProjectDetectionService.js +58 -8
- package/dist/services/ProjectDetectionService.js.map +1 -1
- package/dist/utils/portUtils.d.ts +6 -1
- package/dist/utils/portUtils.d.ts.map +1 -1
- package/dist/utils/portUtils.js +45 -9
- package/dist/utils/portUtils.js.map +1 -1
- package/dist/utils/skills/claude-skill.d.ts +3 -3
- package/dist/utils/skills/claude-skill.d.ts.map +1 -1
- package/dist/utils/skills/claude-skill.js +3 -8
- package/dist/utils/skills/claude-skill.js.map +1 -1
- package/dist/utils/skills/cursor-rules.d.ts +1 -1
- package/dist/utils/skills/cursor-rules.d.ts.map +1 -1
- package/dist/utils/skills/cursor-rules.js +2 -7
- package/dist/utils/skills/cursor-rules.js.map +1 -1
- package/package.json +1 -1
- package/src/ui/dist/assets/{main-fNNw0nHu.js → main-DhJDeAnr.js} +1 -1
- package/src/ui/dist/index.html +1 -1
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAsBA,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,YAAY,OAAO,CAAC;AACjC,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,eAAO,MAAM,IAAI,GACf,OAAM,MAAM,EAA0B,KACrC,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAsBA,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,YAAY,OAAO,CAAC;AACjC,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,eAAO,MAAM,IAAI,GACf,OAAM,MAAM,EAA0B,KACrC,OAAO,CAAC,IAAI,CAkSd,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -185,6 +185,7 @@ const main = async (args = process.argv.slice(2)) => {
|
|
|
185
185
|
while (!serverStarted && retries < maxRetries) {
|
|
186
186
|
const startServerOptions = {
|
|
187
187
|
userPort: userDevServerPort,
|
|
188
|
+
userHost: project.devServerHost,
|
|
188
189
|
framework: project.framework,
|
|
189
190
|
telemetry,
|
|
190
191
|
projectPath,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AA4FA,eAAO,MAAM,cAAc,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CAwiBrE,CAAC"}
|
package/dist/mcp/server.js
CHANGED
|
@@ -15,6 +15,7 @@ const open_1 = __importDefault(require("open"));
|
|
|
15
15
|
const index_1 = require("../index");
|
|
16
16
|
const skillWriter_1 = require("../utils/skillWriter");
|
|
17
17
|
const portUtils_1 = require("../utils/portUtils");
|
|
18
|
+
const child_process_1 = require("child_process");
|
|
18
19
|
const log = (0, index_core_1.createLogger)('MCPServer');
|
|
19
20
|
// Dev server command + default port per framework
|
|
20
21
|
const FRAMEWORK_DEV_CONFIG = {
|
|
@@ -25,6 +26,42 @@ const FRAMEWORK_DEV_CONFIG = {
|
|
|
25
26
|
svelte: { devCommand: 'dev', defaultPort: 5173 },
|
|
26
27
|
static: { devCommand: '', defaultPort: 0 },
|
|
27
28
|
};
|
|
29
|
+
/** Build the shell command to start the user's dev server on a specific port. */
|
|
30
|
+
function buildDevServerCommand(framework, packageManager, devCommand, port) {
|
|
31
|
+
// CRA uses PORT env var instead of a CLI flag
|
|
32
|
+
if (framework === 'cra') {
|
|
33
|
+
const args = packageManager === 'npm' ? ['run', devCommand] : [devCommand];
|
|
34
|
+
return { cmd: packageManager, args, env: { PORT: String(port) } };
|
|
35
|
+
}
|
|
36
|
+
// All others (Next.js, Vite, Remix, Svelte) accept --port
|
|
37
|
+
if (packageManager === 'npm') {
|
|
38
|
+
return {
|
|
39
|
+
cmd: 'npm',
|
|
40
|
+
args: ['run', devCommand, '--', '--port', String(port)],
|
|
41
|
+
env: {},
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
if (packageManager === 'yarn') {
|
|
45
|
+
return { cmd: 'yarn', args: [devCommand, '--port', String(port)], env: {} };
|
|
46
|
+
}
|
|
47
|
+
return { cmd: 'pnpm', args: [devCommand, '--port', String(port)], env: {} };
|
|
48
|
+
}
|
|
49
|
+
/** Poll until the port responds to HTTP or the timeout is reached. */
|
|
50
|
+
async function waitForPort(port, host, timeoutMs = 60_000) {
|
|
51
|
+
const deadline = Date.now() + timeoutMs;
|
|
52
|
+
while (Date.now() < deadline) {
|
|
53
|
+
try {
|
|
54
|
+
await fetch(`http://${host}:${port}`, {
|
|
55
|
+
signal: AbortSignal.timeout(1000),
|
|
56
|
+
});
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
await new Promise((r) => setTimeout(r, 500));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
28
65
|
/**
|
|
29
66
|
* Starts the Rivet MCP server on stdio transport.
|
|
30
67
|
* Called when the user runs `rivet mcp`.
|
|
@@ -46,6 +83,8 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
46
83
|
// Track the Express server
|
|
47
84
|
let serverHandle = null;
|
|
48
85
|
let sessionStartedAt = null;
|
|
86
|
+
// Track a dev server we auto-started so we can kill it on close
|
|
87
|
+
let devServerProcess = null;
|
|
49
88
|
// Flush telemetry before process exits
|
|
50
89
|
const shutdown = async () => {
|
|
51
90
|
await telemetry.shutdown();
|
|
@@ -70,14 +109,14 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
70
109
|
.string()
|
|
71
110
|
.describe('Path to the project directory. Defaults to current working directory.')
|
|
72
111
|
.optional(),
|
|
73
|
-
port: v3_1.z
|
|
74
|
-
.number()
|
|
75
|
-
.describe('Port the dev server is running on. Use the detectedPort from detect_project.')
|
|
76
|
-
.optional(),
|
|
77
112
|
framework: v3_1.z
|
|
78
113
|
.string()
|
|
79
114
|
.describe('Project framework. Use the framework value from detect_project.')
|
|
80
115
|
.optional(),
|
|
116
|
+
startPort: v3_1.z
|
|
117
|
+
.number()
|
|
118
|
+
.describe('Preferred starting port for the dev server. Rivet will find the next free port at or above this value. Falls back to the framework default if omitted.')
|
|
119
|
+
.optional(),
|
|
81
120
|
};
|
|
82
121
|
const sessionIdArgs = {
|
|
83
122
|
sessionId: v3_1.z
|
|
@@ -123,10 +162,6 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
123
162
|
devCommand: 'dev',
|
|
124
163
|
defaultPort: 3000,
|
|
125
164
|
};
|
|
126
|
-
// Scan for a running dev server on any common port — don't assume the default
|
|
127
|
-
const runningServer = framework !== 'static' ? await detection.findRunningDevServer() : null;
|
|
128
|
-
const detectedPort = runningServer?.port ?? null;
|
|
129
|
-
const portActive = detectedPort !== null || framework === 'static';
|
|
130
165
|
return {
|
|
131
166
|
content: [
|
|
132
167
|
{
|
|
@@ -136,8 +171,6 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
136
171
|
packageManager,
|
|
137
172
|
devCommand: devConfig.devCommand,
|
|
138
173
|
defaultPort: devConfig.defaultPort,
|
|
139
|
-
detectedPort,
|
|
140
|
-
portActive,
|
|
141
174
|
projectPath,
|
|
142
175
|
startCommand: devConfig.devCommand
|
|
143
176
|
? `${packageManager} run ${devConfig.devCommand}`
|
|
@@ -147,7 +180,7 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
147
180
|
],
|
|
148
181
|
};
|
|
149
182
|
});
|
|
150
|
-
mcp.tool('open_visual_editor', "Start a Rivet visual editing session. Always call detect_project first
|
|
183
|
+
mcp.tool('open_visual_editor', "Start a Rivet visual editing session. Always call detect_project first to get the framework. Rivet will automatically start the dev server on a free port. Opens the browser with Rivet's visual editor. After calling this, use watch_for_changes in a loop to receive changes as the user works.", openEditorArgs, async (args) => {
|
|
151
184
|
if (bridge.isActive()) {
|
|
152
185
|
return {
|
|
153
186
|
content: [
|
|
@@ -164,48 +197,133 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
164
197
|
}
|
|
165
198
|
const projectPath = args.projectPath || process.cwd();
|
|
166
199
|
const framework = args.framework ?? 'nextjs';
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
text: JSON.stringify({
|
|
174
|
-
error: 'port is required',
|
|
175
|
-
suggestion: 'Call detect_project first, then pass detectedPort and framework as arguments.',
|
|
176
|
-
}),
|
|
177
|
-
},
|
|
178
|
-
],
|
|
179
|
-
isError: true,
|
|
200
|
+
let devServerPort = 0;
|
|
201
|
+
const devServerHost = 'localhost';
|
|
202
|
+
if (framework !== 'static') {
|
|
203
|
+
const frameworkConfig = FRAMEWORK_DEV_CONFIG[framework] ?? {
|
|
204
|
+
devCommand: 'dev',
|
|
205
|
+
defaultPort: 3000,
|
|
180
206
|
};
|
|
207
|
+
if (!frameworkConfig.devCommand) {
|
|
208
|
+
return {
|
|
209
|
+
content: [
|
|
210
|
+
{
|
|
211
|
+
type: 'text',
|
|
212
|
+
text: JSON.stringify({
|
|
213
|
+
error: 'Cannot auto-start: no dev command configured for this framework.',
|
|
214
|
+
suggestion: 'Start the dev server manually, then call open_visual_editor again.',
|
|
215
|
+
}),
|
|
216
|
+
},
|
|
217
|
+
],
|
|
218
|
+
isError: true,
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
const detection = new index_core_1.ProjectDetectionService();
|
|
222
|
+
const packageManager = await detection.detectPackageManager(projectPath);
|
|
223
|
+
const preferredPort = args.startPort ??
|
|
224
|
+
detection.readConfiguredPort(projectPath) ??
|
|
225
|
+
frameworkConfig.defaultPort;
|
|
226
|
+
devServerPort = await (0, portUtils_1.findAvailablePort)(preferredPort);
|
|
227
|
+
const { cmd, args: cmdArgs, env, } = buildDevServerCommand(framework, packageManager, frameworkConfig.devCommand, devServerPort);
|
|
228
|
+
log.info(`Auto-starting dev server: ${cmd} ${cmdArgs.join(' ')} in ${projectPath}`);
|
|
229
|
+
devServerProcess = (0, child_process_1.spawn)(cmd, cmdArgs, {
|
|
230
|
+
cwd: projectPath,
|
|
231
|
+
env: { ...process.env, ...env },
|
|
232
|
+
stdio: 'pipe',
|
|
233
|
+
detached: false,
|
|
234
|
+
});
|
|
235
|
+
devServerProcess.on('error', (err) => {
|
|
236
|
+
log.error('Dev server process error:', err);
|
|
237
|
+
});
|
|
238
|
+
devServerProcess.on('exit', (code) => {
|
|
239
|
+
log.info(`Dev server exited with code ${code}`);
|
|
240
|
+
devServerProcess = null;
|
|
241
|
+
});
|
|
242
|
+
devServerProcess.stdout?.on('data', (data) => {
|
|
243
|
+
log.debug(`[dev-server] ${data.toString().trim()}`);
|
|
244
|
+
});
|
|
245
|
+
devServerProcess.stderr?.on('data', (data) => {
|
|
246
|
+
log.debug(`[dev-server] ${data.toString().trim()}`);
|
|
247
|
+
});
|
|
248
|
+
const ready = await waitForPort(devServerPort, devServerHost, 30_000);
|
|
249
|
+
if (!ready) {
|
|
250
|
+
devServerProcess?.kill();
|
|
251
|
+
devServerProcess = null;
|
|
252
|
+
return {
|
|
253
|
+
content: [
|
|
254
|
+
{
|
|
255
|
+
type: 'text',
|
|
256
|
+
text: JSON.stringify({
|
|
257
|
+
error: `Dev server did not become ready on port ${devServerPort} within 30s.`,
|
|
258
|
+
suggestion: 'Check that the project has a valid dev script in package.json.',
|
|
259
|
+
}),
|
|
260
|
+
},
|
|
261
|
+
],
|
|
262
|
+
isError: true,
|
|
263
|
+
};
|
|
264
|
+
}
|
|
265
|
+
log.info(`Dev server ready on ${devServerHost}:${devServerPort}`);
|
|
181
266
|
}
|
|
182
267
|
// Find a free port for Rivet's Express server (avoids conflict with desktop or other Rivet instances)
|
|
183
268
|
let rivetPort;
|
|
184
269
|
try {
|
|
185
270
|
rivetPort = await (0, portUtils_1.findAvailablePort)(index_1.DEFAULT_PORT);
|
|
271
|
+
log.info(`Searching for available port starting from ${index_1.DEFAULT_PORT}... found ${rivetPort}`);
|
|
186
272
|
}
|
|
187
|
-
catch {
|
|
273
|
+
catch (error) {
|
|
274
|
+
log.warn(`Port discovery failed, falling back to ${index_1.DEFAULT_PORT}:`, error);
|
|
188
275
|
rivetPort = index_1.DEFAULT_PORT;
|
|
189
276
|
}
|
|
190
|
-
// Start the Rivet Express server
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
277
|
+
// Start the Rivet Express server (with retry on EADDRINUSE to avoid races)
|
|
278
|
+
let retries = 0;
|
|
279
|
+
const maxRetries = 5;
|
|
280
|
+
let serverStarted = false;
|
|
281
|
+
while (!serverStarted && retries < maxRetries) {
|
|
282
|
+
try {
|
|
283
|
+
serverHandle = await (0, server_1.startServer)({
|
|
284
|
+
framework,
|
|
285
|
+
projectPath,
|
|
286
|
+
userPort: devServerPort,
|
|
287
|
+
userHost: devServerHost,
|
|
288
|
+
sessionBridge: bridge,
|
|
289
|
+
mcpEditor,
|
|
290
|
+
skipProcessHandlers: true,
|
|
291
|
+
rivetPort,
|
|
292
|
+
});
|
|
293
|
+
serverStarted = true;
|
|
294
|
+
}
|
|
295
|
+
catch (error) {
|
|
296
|
+
if (error?.code === 'EADDRINUSE') {
|
|
297
|
+
retries++;
|
|
298
|
+
rivetPort = await (0, portUtils_1.findAvailablePort)(rivetPort + 1);
|
|
299
|
+
log.debug(`Port in use, retrying with port ${rivetPort} (attempt ${retries}/${maxRetries})`);
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
const message = error instanceof Error ? error.message : 'Server start failed';
|
|
303
|
+
devServerProcess?.kill();
|
|
304
|
+
devServerProcess = null;
|
|
305
|
+
return {
|
|
306
|
+
content: [
|
|
307
|
+
{
|
|
308
|
+
type: 'text',
|
|
309
|
+
text: JSON.stringify({ error: message }),
|
|
310
|
+
},
|
|
311
|
+
],
|
|
312
|
+
isError: true,
|
|
313
|
+
};
|
|
314
|
+
}
|
|
315
|
+
}
|
|
201
316
|
}
|
|
202
|
-
|
|
203
|
-
|
|
317
|
+
if (!serverStarted) {
|
|
318
|
+
devServerProcess?.kill();
|
|
319
|
+
devServerProcess = null;
|
|
204
320
|
return {
|
|
205
321
|
content: [
|
|
206
322
|
{
|
|
207
323
|
type: 'text',
|
|
208
|
-
text: JSON.stringify({
|
|
324
|
+
text: JSON.stringify({
|
|
325
|
+
error: `Could not start Rivet server after ${maxRetries} attempts.`,
|
|
326
|
+
}),
|
|
209
327
|
},
|
|
210
328
|
],
|
|
211
329
|
isError: true,
|
|
@@ -221,7 +339,10 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
221
339
|
(0, skillWriter_1.writeSkillFileIfNeeded)();
|
|
222
340
|
}
|
|
223
341
|
// Track session start
|
|
224
|
-
telemetry.trackMCPSessionStart({
|
|
342
|
+
telemetry.trackMCPSessionStart({
|
|
343
|
+
framework,
|
|
344
|
+
devServerStarted: framework !== 'static',
|
|
345
|
+
});
|
|
225
346
|
// Open browser
|
|
226
347
|
const url = `http://localhost:${rivetPort}/rivet`;
|
|
227
348
|
try {
|
|
@@ -240,6 +361,7 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
240
361
|
projectPath,
|
|
241
362
|
framework,
|
|
242
363
|
rivetPort,
|
|
364
|
+
devServerPort,
|
|
243
365
|
next_step: `IMPORTANT: You must call watch_for_changes({ sessionId: "${sessionId}" }) RIGHT NOW to wait for the user's changes. Do not wait for the user to ask — call it immediately. It will block until they click "${sendButtonLabel}" in the browser.`,
|
|
244
366
|
}),
|
|
245
367
|
},
|
|
@@ -365,6 +487,16 @@ const startMCPServer = async (mcpEditor) => {
|
|
|
365
487
|
}
|
|
366
488
|
serverHandle = null;
|
|
367
489
|
}
|
|
490
|
+
// Kill the dev server if we auto-started it
|
|
491
|
+
if (devServerProcess) {
|
|
492
|
+
try {
|
|
493
|
+
devServerProcess.kill();
|
|
494
|
+
}
|
|
495
|
+
catch (error) {
|
|
496
|
+
log.warn('Error stopping dev server process:', error);
|
|
497
|
+
}
|
|
498
|
+
devServerProcess = null;
|
|
499
|
+
}
|
|
368
500
|
telemetry.trackMCPSessionEnd({
|
|
369
501
|
rounds: totalRoundsCompleted,
|
|
370
502
|
durationMs,
|
package/dist/mcp/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { RequestHandler } from 'http-proxy-middleware';
|
|
2
|
-
export declare const createUserDevServerProxy: (userPort: number) => RequestHandler;
|
|
2
|
+
export declare const createUserDevServerProxy: (userPort: number, userHost?: string) => RequestHandler;
|
|
3
3
|
//# sourceMappingURL=proxy-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-config.d.ts","sourceRoot":"","sources":["../../src/proxy-middleware/proxy-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,EACf,MAAM,uBAAuB,CAAC;AAO/B,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"proxy-config.d.ts","sourceRoot":"","sources":["../../src/proxy-middleware/proxy-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,EACf,MAAM,uBAAuB,CAAC;AAO/B,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,WAAU,MAAoB,KAC7B,cA4EF,CAAC"}
|
|
@@ -4,27 +4,22 @@ exports.createUserDevServerProxy = void 0;
|
|
|
4
4
|
const http_proxy_middleware_1 = require("http-proxy-middleware");
|
|
5
5
|
const logger_1 = require("../utils/logger");
|
|
6
6
|
const log = (0, logger_1.createLogger)('ProxyConfig');
|
|
7
|
-
const createUserDevServerProxy = (userPort) => {
|
|
7
|
+
const createUserDevServerProxy = (userPort, userHost = '127.0.0.1') => {
|
|
8
8
|
const proxyOptions = {
|
|
9
|
-
target: `http
|
|
9
|
+
target: `http://${userHost}:${userPort}`,
|
|
10
10
|
changeOrigin: true,
|
|
11
11
|
// No path rewriting needed since we're proxying all routes by default
|
|
12
12
|
on: {
|
|
13
13
|
proxyRes: (proxyRes, _req, _res) => {
|
|
14
|
-
// Allow iframe embedding by
|
|
15
|
-
proxyRes.headers['x-frame-options']
|
|
14
|
+
// Allow iframe embedding by removing restrictive security headers
|
|
15
|
+
delete proxyRes.headers['x-frame-options'];
|
|
16
|
+
delete proxyRes.headers['content-security-policy-report-only'];
|
|
16
17
|
// Update Content-Security-Policy to allow iframe embedding
|
|
17
18
|
if (proxyRes.headers['content-security-policy']) {
|
|
18
19
|
const csp = proxyRes.headers['content-security-policy'];
|
|
19
20
|
if (typeof csp === 'string') {
|
|
20
|
-
//
|
|
21
|
-
|
|
22
|
-
proxyRes.headers['content-security-policy'] = csp.replace(/frame-ancestors[^;]*/, "frame-ancestors 'self'");
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
proxyRes.headers['content-security-policy'] =
|
|
26
|
-
csp + "; frame-ancestors 'self'";
|
|
27
|
-
}
|
|
21
|
+
// Remove frame-ancestors to allow embedding anywhere during development
|
|
22
|
+
proxyRes.headers['content-security-policy'] = csp.replace(/frame-ancestors[^;]*;?/, '');
|
|
28
23
|
}
|
|
29
24
|
}
|
|
30
25
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-config.js","sourceRoot":"","sources":["../../src/proxy-middleware/proxy-config.ts"],"names":[],"mappings":";;;AAAA,iEAI+B;AAE/B,4CAA+C;AAG/C,MAAM,GAAG,GAAG,IAAA,qBAAY,EAAC,aAAa,CAAC,CAAC;AAEjC,MAAM,wBAAwB,GAAG,
|
|
1
|
+
{"version":3,"file":"proxy-config.js","sourceRoot":"","sources":["../../src/proxy-middleware/proxy-config.ts"],"names":[],"mappings":";;;AAAA,iEAI+B;AAE/B,4CAA+C;AAG/C,MAAM,GAAG,GAAG,IAAA,qBAAY,EAAC,aAAa,CAAC,CAAC;AAEjC,MAAM,wBAAwB,GAAG,CACtC,QAAgB,EAChB,WAAmB,WAAW,EACd,EAAE;IAClB,MAAM,YAAY,GAAY;QAC5B,MAAM,EAAE,UAAU,QAAQ,IAAI,QAAQ,EAAE;QACxC,YAAY,EAAE,IAAI;QAClB,sEAAsE;QACtE,EAAE,EAAE;YACF,QAAQ,EAAE,CACR,QAAyB,EACzB,IAAqB,EACrB,IAAoB,EACpB,EAAE;gBACF,kEAAkE;gBAClE,OAAO,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBAC3C,OAAO,QAAQ,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;gBAE/D,2DAA2D;gBAC3D,IAAI,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,CAAC;oBAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;oBACxD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;wBAC5B,wEAAwE;wBACxE,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,GAAG,CAAC,OAAO,CACvD,wBAAwB,EACxB,EAAE,CACH,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,QAAQ,EAAE,CACR,QAAuB,EACvB,GAAoB,EACpB,IAAoB,EACpB,EAAE;gBACF,wDAAwD;gBACxD,iEAAiE;gBACjE,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBACrB,QAAQ,CAAC,SAAS,CAAC,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC3D,CAAC;gBAED,8BAA8B;gBAC9B,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC;gBAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAClC,GAAG,CAAC,KAAK,CACP,YAAY,GAAG,CAAC,MAAM,IAAI,YAAY,OAAO,WAAW,iBAAiB,QAAQ,EAAE,CACpF,CAAC;YACJ,CAAC;YACD,KAAK,EAAE,CACL,GAAU,EACV,GAAoB,EACpB,GAA6C,EAC7C,EAAE;gBACF,GAAG,CAAC,KAAK,CAAC,mBAAmB,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBACpE,wDAAwD;gBACxD,IAAI,GAAG,IAAI,WAAW,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;oBAClD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC;wBACb,KAAK,EAAE,aAAa;wBACpB,OAAO,EAAE,mDAAmD,QAAQ,EAAE;wBACtE,OAAO,EAAE,GAAG,CAAC,OAAO;qBACrB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QACD,2DAA2D;QAC3D,EAAE,EAAE,IAAI;QACR,yBAAyB;QACzB,YAAY,EAAE,MAAM,EAAE,QAAQ;QAC9B,OAAO,EAAE,MAAM,EAAE,QAAQ;KAC1B,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,6CAAqB,EAAC,YAAY,CAAC,CAAC;IAEvD,GAAG,CAAC,IAAI,CAAC,uCAAuC,QAAQ,cAAc,CAAC,CAAC;IAExE,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AA/EW,QAAA,wBAAwB,4BA+EnC"}
|
package/dist/server.d.ts
CHANGED
|
@@ -17,6 +17,8 @@ export type ServerOptions = Omit<CLIOptions, 'help' | 'version' | 'debug'> & {
|
|
|
17
17
|
skipProcessHandlers?: boolean;
|
|
18
18
|
/** Explicit port for the Rivet Express server. Defaults to DEFAULT_PORT (4000). */
|
|
19
19
|
rivetPort?: number;
|
|
20
|
+
/** The host where the user's dev server is running. Defaults to '127.0.0.1'. */
|
|
21
|
+
userHost?: string;
|
|
20
22
|
};
|
|
21
23
|
export type ServerHandle = {
|
|
22
24
|
close: () => Promise<void>;
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAmC,MAAM,GAAG,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAK/D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAK/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAmC,MAAM,GAAG,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAK/D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAK/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAmCvE,eAAO,MAAM,YAAY,QAAkB,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG;IAC3E,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,qGAAqG;IACrG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wHAAwH;IACxH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,SAAS,aAAa,KACrB,OAAO,CAAC,YAAY,CA+RtB,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -66,19 +66,23 @@ const resolveUiPath = () => {
|
|
|
66
66
|
const devPath = path_1.default.join(__dirname, '../src/ui/dist');
|
|
67
67
|
// Check bundled path first (for esbuild bundled CLI)
|
|
68
68
|
if (fs_1.default.existsSync(bundledPath)) {
|
|
69
|
+
log.info(`Using bundled UI path: ${bundledPath}`);
|
|
69
70
|
return bundledPath;
|
|
70
71
|
}
|
|
71
72
|
// Check production path (for electron-packaged app)
|
|
72
73
|
if (fs_1.default.existsSync(productionPath)) {
|
|
74
|
+
log.info(`Using production UI path: ${productionPath}`);
|
|
73
75
|
return productionPath;
|
|
74
76
|
}
|
|
75
77
|
// Fall back to development path
|
|
78
|
+
log.info(`Using development UI path: ${devPath}`);
|
|
76
79
|
return devPath;
|
|
77
80
|
};
|
|
78
81
|
exports.DIST_UI_PATH = resolveUiPath();
|
|
79
82
|
const startServer = async (options) => {
|
|
80
|
-
const { userPort, telemetry, projectPath, framework, staticEntry, styleFramework, tailwindConfig, sessionBridge, mcpEditor, skipProcessHandlers, } = options;
|
|
83
|
+
const { userPort, userHost, telemetry, projectPath, framework, staticEntry, styleFramework, tailwindConfig, sessionBridge, mcpEditor, skipProcessHandlers, } = options;
|
|
81
84
|
const userPortWithFallback = userPort ?? _1.DEFAULT_USER_PORT;
|
|
85
|
+
const userHostWithFallback = userHost ?? '127.0.0.1';
|
|
82
86
|
if (process.env.SENTRY_DSN) {
|
|
83
87
|
Sentry.init({
|
|
84
88
|
dsn: process.env.SENTRY_DSN,
|
|
@@ -222,14 +226,14 @@ const startServer = async (options) => {
|
|
|
222
226
|
// Skip proxy setup for static apps
|
|
223
227
|
let userDevProxy = null;
|
|
224
228
|
if (framework !== 'static') {
|
|
225
|
-
userDevProxy = (0, proxy_config_1.createUserDevServerProxy)(userPortWithFallback);
|
|
229
|
+
userDevProxy = (0, proxy_config_1.createUserDevServerProxy)(userPortWithFallback, userHostWithFallback);
|
|
226
230
|
// Use a more explicit catch-all that works with Express
|
|
227
231
|
app.get('*', userDevProxy);
|
|
228
232
|
app.post('*', userDevProxy);
|
|
229
233
|
app.put('*', userDevProxy);
|
|
230
234
|
app.delete('*', userDevProxy);
|
|
231
235
|
app.patch('*', userDevProxy);
|
|
232
|
-
log.info(`Proxying all unmatched routes to user dev server on
|
|
236
|
+
log.info(`Proxying all unmatched routes to user dev server on ${userHostWithFallback}:${userPortWithFallback}`);
|
|
233
237
|
}
|
|
234
238
|
else {
|
|
235
239
|
log.info(`${framework} mode - skipping proxy setup`);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAuC;AACvC,sDAA8B;AAC9B,gDAAwB;AACxB,gDAAwB;AACxB,4CAAoB;AAEpB,6CAA4D;AAC5D,wBAAgE;AAEhE,oDAA4D;AAC5D,0DAAkE;AAClE,sCAA+C;AAC/C,4CAAoD;AAEpD,kEAA2E;AAC3E,oEAAiE;AACjE,4CAAqD;AACrD,4DAA4D;AAE5D,sCAA+C;AAE/C,MAAM,GAAG,GAAG,IAAA,yBAAY,EAAC,aAAa,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,aAAa,GAAG,GAAW,EAAE;IACjC,mEAAmE;IACnE,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEpD,uEAAuE;IACvE,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAE1D,2CAA2C;IAC3C,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAEvD,qDAAqD;IACrD,IAAI,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,oDAAoD;IACpD,IAAI,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,gCAAgC;IAChC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEW,QAAA,YAAY,GAAG,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ type Project = {
|
|
|
2
2
|
id: string;
|
|
3
3
|
path: string;
|
|
4
4
|
devServerPort: number;
|
|
5
|
+
devServerHost?: string;
|
|
5
6
|
status: 'detected' | 'connected' | 'error';
|
|
6
7
|
packageManager: 'npm' | 'yarn' | 'pnpm';
|
|
7
8
|
framework: Framework;
|
|
@@ -11,8 +12,14 @@ export type Framework = 'nextjs' | 'vite' | 'cra' | 'remix' | 'svelte' | 'static
|
|
|
11
12
|
export declare class ProjectDetectionService {
|
|
12
13
|
detectFramework(projectPath: string): Framework;
|
|
13
14
|
detectPackageManager(projectPath: string): Promise<'npm' | 'yarn' | 'pnpm'>;
|
|
14
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Reads the configured dev server port from framework config files in the project.
|
|
17
|
+
* Returns undefined if no port can be determined from config.
|
|
18
|
+
*/
|
|
19
|
+
readConfiguredPort(projectPath: string): number | undefined;
|
|
20
|
+
findRunningDevServer(projectPath: string, excludePorts?: number[]): Promise<{
|
|
15
21
|
port: number;
|
|
22
|
+
host: string;
|
|
16
23
|
} | null>;
|
|
17
24
|
detectProject(projectPath: string, overrideFramework?: Framework, entryPath?: string, excludePorts?: number[]): Promise<Project>;
|
|
18
25
|
isPortActive(port: number): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectDetectionService.d.ts","sourceRoot":"","sources":["../../src/services/ProjectDetectionService.ts"],"names":[],"mappings":"AAOA,KAAK,OAAO,GAAG;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC;IAC3C,cAAc,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IACxC,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,QAAQ,CAAC;AAgDb,qBAAa,uBAAuB;IAClC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS;IAyCzC,oBAAoB,CACxB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ProjectDetectionService.d.ts","sourceRoot":"","sources":["../../src/services/ProjectDetectionService.ts"],"names":[],"mappings":"AAOA,KAAK,OAAO,GAAG;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC;IAC3C,cAAc,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IACxC,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,QAAQ,CAAC;AAgDb,qBAAa,uBAAuB;IAClC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS;IAyCzC,oBAAoB,CACxB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAgBnC;;;OAGG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IA4BrD,oBAAoB,CACxB,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,MAAM,EAAO,GAC1B,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA4D3C,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,iBAAiB,CAAC,EAAE,SAAS,EAC7B,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,GAAE,MAAM,EAAO,GAC1B,OAAO,CAAC,OAAO,CAAC;IAwDnB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAkB7C"}
|
|
@@ -91,10 +91,45 @@ class ProjectDetectionService {
|
|
|
91
91
|
// Default to npm
|
|
92
92
|
return 'npm';
|
|
93
93
|
}
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
/**
|
|
95
|
+
* Reads the configured dev server port from framework config files in the project.
|
|
96
|
+
* Returns undefined if no port can be determined from config.
|
|
97
|
+
*/
|
|
98
|
+
readConfiguredPort(projectPath) {
|
|
99
|
+
const viteConfigFiles = [
|
|
100
|
+
'vite.config.ts',
|
|
101
|
+
'vite.config.js',
|
|
102
|
+
'vite.config.mjs',
|
|
103
|
+
];
|
|
104
|
+
for (const configFile of viteConfigFiles) {
|
|
105
|
+
const configPath = path_1.default.join(projectPath, configFile);
|
|
106
|
+
if (fs_1.default.existsSync(configPath)) {
|
|
107
|
+
try {
|
|
108
|
+
const content = fs_1.default.readFileSync(configPath, 'utf8');
|
|
109
|
+
// Match server: { ... port: NNNN ... } (handles multiline and nested objects like proxy: { ... })
|
|
110
|
+
const match = content.match(/server\s*:\s*\{((?:[^{}]|\{[^{}]*\})*)port\s*:\s*(\d+)/s);
|
|
111
|
+
if (match) {
|
|
112
|
+
const port = parseInt(match[2], 10);
|
|
113
|
+
log.debug(`Found configured port ${port} in ${configFile}`);
|
|
114
|
+
return port;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
// ignore parse errors
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return undefined;
|
|
123
|
+
}
|
|
124
|
+
async findRunningDevServer(projectPath, excludePorts = []) {
|
|
125
|
+
const fallbackPorts = [3000, 5173, 3001, 3002, 5174, 8080, 4200, 8000];
|
|
126
|
+
// Put the project's configured port first so it's always tried before fallbacks
|
|
127
|
+
const configuredPort = this.readConfiguredPort(projectPath);
|
|
128
|
+
const commonPorts = configuredPort
|
|
129
|
+
? [configuredPort, ...fallbackPorts.filter((p) => p !== configuredPort)]
|
|
130
|
+
: fallbackPorts;
|
|
96
131
|
// Try multiple hosts to handle IPv4/IPv6 differences
|
|
97
|
-
const hosts = ['
|
|
132
|
+
const hosts = ['127.0.0.1', 'localhost', '[::1]'];
|
|
98
133
|
for (const port of commonPorts) {
|
|
99
134
|
// Never pick up a Rivet instance as the dev server (default 4000, but can be dynamic)
|
|
100
135
|
if (port >= 4000 && port <= 4010)
|
|
@@ -105,16 +140,28 @@ class ProjectDetectionService {
|
|
|
105
140
|
for (const host of hosts) {
|
|
106
141
|
try {
|
|
107
142
|
const response = await fetch(`http://${host}:${port}`, {
|
|
108
|
-
method: '
|
|
143
|
+
method: 'GET', // Changed from HEAD to GET to check content
|
|
109
144
|
signal: AbortSignal.timeout(2000),
|
|
110
145
|
});
|
|
111
146
|
if (response.ok) {
|
|
112
|
-
|
|
113
|
-
|
|
147
|
+
const text = await response.text();
|
|
148
|
+
// Basic heuristic: check if the project name or some unique string is in the source
|
|
149
|
+
// Or just check if it's NOT a Rivet desktop app
|
|
150
|
+
if (text.includes('rivet-desktop-renderer') ||
|
|
151
|
+
text.includes('onUpdateAvailable')) {
|
|
152
|
+
log.debug(`Found Rivet desktop renderer on port ${port}, skipping...`);
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
log.info(`Found running dev server on port ${port} (via ${host}). Status: ${response.status}`);
|
|
156
|
+
return { port, host };
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
log.debug(`Checked http://${host}:${port}, but returned status ${response.status}`);
|
|
114
160
|
}
|
|
115
161
|
}
|
|
116
|
-
catch {
|
|
162
|
+
catch (error) {
|
|
117
163
|
// Host/port not accessible, try next
|
|
164
|
+
log.trace(`Could not reach http://${host}:${port}: ${error.message}`);
|
|
118
165
|
continue;
|
|
119
166
|
}
|
|
120
167
|
}
|
|
@@ -128,12 +175,14 @@ class ProjectDetectionService {
|
|
|
128
175
|
const framework = overrideFramework || this.detectFramework(projectPath);
|
|
129
176
|
// Skip dev server detection for static apps
|
|
130
177
|
let devServerPort = 0;
|
|
178
|
+
let devServerHost = '127.0.0.1';
|
|
131
179
|
if (framework !== 'static') {
|
|
132
|
-
const runningServer = await this.findRunningDevServer(excludePorts);
|
|
180
|
+
const runningServer = await this.findRunningDevServer(projectPath, excludePorts);
|
|
133
181
|
if (!runningServer) {
|
|
134
182
|
throw new Error('No running dev server found. Please start your dev server first (e.g., npm run dev)');
|
|
135
183
|
}
|
|
136
184
|
devServerPort = runningServer.port;
|
|
185
|
+
devServerHost = runningServer.host;
|
|
137
186
|
}
|
|
138
187
|
// Handle entry point for static projects
|
|
139
188
|
let entryPoint;
|
|
@@ -151,6 +200,7 @@ class ProjectDetectionService {
|
|
|
151
200
|
framework,
|
|
152
201
|
path: projectPath,
|
|
153
202
|
devServerPort,
|
|
203
|
+
devServerHost,
|
|
154
204
|
status: 'detected',
|
|
155
205
|
packageManager,
|
|
156
206
|
entryPoint,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectDetectionService.js","sourceRoot":"","sources":["../../src/services/ProjectDetectionService.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA+C;AAC/C,4CAAoB;AACpB,gDAAwB;AACxB,8CAAsB;AAEtB,MAAM,GAAG,GAAG,IAAA,qBAAY,EAAC,yBAAyB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ProjectDetectionService.js","sourceRoot":"","sources":["../../src/services/ProjectDetectionService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Finds an available TCP port starting from startPort.
|
|
3
|
-
*
|
|
3
|
+
* A port is considered available only if:
|
|
4
|
+
* 1. We can bind to it (no process owns it on 0.0.0.0 / ::)
|
|
5
|
+
* 2. Nothing is already accepting connections on 127.0.0.1 or ::1
|
|
6
|
+
* (catches servers bound to ::1 that don't block an IPv4 bind)
|
|
7
|
+
*
|
|
8
|
+
* Throws if no free port is found before MAX_PORT (65535).
|
|
4
9
|
*/
|
|
5
10
|
export declare function findAvailablePort(startPort: number): Promise<number>;
|
|
6
11
|
//# sourceMappingURL=portUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portUtils.d.ts","sourceRoot":"","sources":["../../src/utils/portUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"portUtils.d.ts","sourceRoot":"","sources":["../../src/utils/portUtils.ts"],"names":[],"mappings":"AAiCA;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB1E"}
|
package/dist/utils/portUtils.js
CHANGED
|
@@ -5,20 +5,56 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.findAvailablePort = findAvailablePort;
|
|
7
7
|
const net_1 = __importDefault(require("net"));
|
|
8
|
+
const MAX_PORT = 65535;
|
|
9
|
+
/**
|
|
10
|
+
* Returns true if something is already accepting TCP connections on the port.
|
|
11
|
+
* Checks both IPv4 (127.0.0.1) and IPv6 (::1) since a server bound to ::1
|
|
12
|
+
* won't block an IPv4 bind but will still serve traffic via 'localhost'.
|
|
13
|
+
*/
|
|
14
|
+
function isPortInUse(port) {
|
|
15
|
+
function checkHost(host) {
|
|
16
|
+
return new Promise((resolve) => {
|
|
17
|
+
const socket = net_1.default.connect(port, host);
|
|
18
|
+
socket.setTimeout(300);
|
|
19
|
+
socket.on('connect', () => {
|
|
20
|
+
socket.destroy();
|
|
21
|
+
resolve(true);
|
|
22
|
+
});
|
|
23
|
+
socket.on('error', () => {
|
|
24
|
+
socket.destroy();
|
|
25
|
+
resolve(false);
|
|
26
|
+
});
|
|
27
|
+
socket.on('timeout', () => {
|
|
28
|
+
socket.destroy();
|
|
29
|
+
resolve(false);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
return Promise.all([checkHost('127.0.0.1'), checkHost('::1')]).then(([v4, v6]) => v4 || v6);
|
|
34
|
+
}
|
|
8
35
|
/**
|
|
9
36
|
* Finds an available TCP port starting from startPort.
|
|
10
|
-
*
|
|
37
|
+
* A port is considered available only if:
|
|
38
|
+
* 1. We can bind to it (no process owns it on 0.0.0.0 / ::)
|
|
39
|
+
* 2. Nothing is already accepting connections on 127.0.0.1 or ::1
|
|
40
|
+
* (catches servers bound to ::1 that don't block an IPv4 bind)
|
|
41
|
+
*
|
|
42
|
+
* Throws if no free port is found before MAX_PORT (65535).
|
|
11
43
|
*/
|
|
12
|
-
function findAvailablePort(startPort) {
|
|
13
|
-
|
|
44
|
+
async function findAvailablePort(startPort) {
|
|
45
|
+
if (startPort > MAX_PORT) {
|
|
46
|
+
throw new Error(`No available port found up to ${MAX_PORT}`);
|
|
47
|
+
}
|
|
48
|
+
const bindable = await new Promise((resolve) => {
|
|
14
49
|
const server = net_1.default.createServer();
|
|
15
|
-
server.listen(startPort,
|
|
16
|
-
|
|
17
|
-
server.close(() => resolve(port));
|
|
18
|
-
});
|
|
19
|
-
server.on('error', () => {
|
|
20
|
-
findAvailablePort(startPort + 1).then(resolve, reject);
|
|
50
|
+
server.listen(startPort, () => {
|
|
51
|
+
server.close(() => resolve(true));
|
|
21
52
|
});
|
|
53
|
+
server.on('error', () => resolve(false));
|
|
22
54
|
});
|
|
55
|
+
if (!bindable || (await isPortInUse(startPort))) {
|
|
56
|
+
return findAvailablePort(startPort + 1);
|
|
57
|
+
}
|
|
58
|
+
return startPort;
|
|
23
59
|
}
|
|
24
60
|
//# sourceMappingURL=portUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portUtils.js","sourceRoot":"","sources":["../../src/utils/portUtils.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"portUtils.js","sourceRoot":"","sources":["../../src/utils/portUtils.ts"],"names":[],"mappings":";;;;;AA0CA,8CAkBC;AA5DD,8CAAsB;AAEtB,MAAM,QAAQ,GAAG,KAAK,CAAC;AAEvB;;;;GAIG;AACH,SAAS,WAAW,CAAC,IAAY;IAC/B,SAAS,SAAS,CAAC,IAAY;QAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,MAAM,GAAG,aAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACvB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBACxB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACtB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBACxB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CACjE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CACvB,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,iBAAiB,CAAC,SAAiB;IACvD,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;QACtD,MAAM,MAAM,GAAG,aAAG,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAChD,OAAO,iBAAiB,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export declare const CLAUDE_SKILL_VERSION =
|
|
2
|
-
export declare const CLAUDE_SKILL_VERSION_MARKER = "[//]: # (rivet-skill-version:
|
|
1
|
+
export declare const CLAUDE_SKILL_VERSION = 5;
|
|
2
|
+
export declare const CLAUDE_SKILL_VERSION_MARKER = "[//]: # (rivet-skill-version: 5)";
|
|
3
3
|
export declare const CLAUDE_SKILL_DIR = "rivet";
|
|
4
4
|
export declare const CLAUDE_SKILL_FILENAME = "SKILL.md";
|
|
5
|
-
export declare const CLAUDE_SKILL_CONTENT = "---\nname: rivet\ndescription: Open the Rivet visual editor to make visual or UI changes to a running web app. Invoke when the user says \"open rivet\", \"use rivet\", \"/rivet\", or wants to visually edit their app.\n---\n\n[//]: # (rivet-skill-version:
|
|
5
|
+
export declare const CLAUDE_SKILL_CONTENT = "---\nname: rivet\ndescription: Open the Rivet visual editor to make visual or UI changes to a running web app. Invoke when the user says \"open rivet\", \"use rivet\", \"/rivet\", or wants to visually edit their app.\n---\n\n[//]: # (rivet-skill-version: 5)\n# Rivet Visual Editor\n\nUse these tools to make visual changes to a running web app and apply them to source code.\n\n## Starting a session\n\n1. Call `detect_project` \u2014 returns project info including `framework` and `projectPath`\n2. Call `open_visual_editor({ projectPath, framework })` \u2014 do NOT pass `startPort` or any port; the tool handles port selection automatically\n4. Tell the user: \"Rivet is open \u2014 make your visual changes and click 'Send to Claude Code' when ready.\"\n\n## Editing loop\n\n1. Call `watch_for_changes({ sessionId })` \u2014 blocks until the user clicks \"Send to Claude Code\" (up to 60s by default)\n2. If it times out (`hasChanges: false`), call it again to keep waiting\n3. When `hasChanges: true`, apply the changes to the source files listed in `sourceFiles`\n4. Hot reload happens automatically after file changes\n5. Tell the user what you changed, then loop back to step 1\n\n## Ending a session\n\nWhen the user says they're done, call `close_visual_editor({ sessionId })`.\n\n## Rules\n\n- **Always call `detect_project` first** \u2014 never assume the dev server is running\n- **Never auto-commit** after applying visual changes \u2014 let the user decide\n- Use `watch_for_changes` for interactive sessions, not `get_pending_changes`\n- `get_pending_changes` is a non-blocking immediate check \u2014 only use it to poll without blocking\n- The dev server stays running after `close_visual_editor`\n";
|
|
6
6
|
//# sourceMappingURL=claude-skill.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-skill.d.ts","sourceRoot":"","sources":["../../../src/utils/skills/claude-skill.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,2BAA2B,qCAA2D,CAAC;AAEpG,eAAO,MAAM,gBAAgB,UAAU,CAAC;AACxC,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"claude-skill.d.ts","sourceRoot":"","sources":["../../../src/utils/skills/claude-skill.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,2BAA2B,qCAA2D,CAAC;AAEpG,eAAO,MAAM,gBAAgB,UAAU,CAAC;AACxC,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,eAAO,MAAM,oBAAoB,wrDAmChC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CLAUDE_SKILL_CONTENT = exports.CLAUDE_SKILL_FILENAME = exports.CLAUDE_SKILL_DIR = exports.CLAUDE_SKILL_VERSION_MARKER = exports.CLAUDE_SKILL_VERSION = void 0;
|
|
4
|
-
exports.CLAUDE_SKILL_VERSION =
|
|
4
|
+
exports.CLAUDE_SKILL_VERSION = 5;
|
|
5
5
|
exports.CLAUDE_SKILL_VERSION_MARKER = `[//]: # (rivet-skill-version: ${exports.CLAUDE_SKILL_VERSION})`;
|
|
6
6
|
exports.CLAUDE_SKILL_DIR = 'rivet';
|
|
7
7
|
exports.CLAUDE_SKILL_FILENAME = 'SKILL.md';
|
|
@@ -17,13 +17,8 @@ Use these tools to make visual changes to a running web app and apply them to so
|
|
|
17
17
|
|
|
18
18
|
## Starting a session
|
|
19
19
|
|
|
20
|
-
1. Call \`detect_project\` — returns
|
|
21
|
-
2.
|
|
22
|
-
\`\`\`bash
|
|
23
|
-
cd {projectPath} && {packageManager} run {devCommand} &
|
|
24
|
-
\`\`\`
|
|
25
|
-
Then call \`detect_project\` again until \`portActive\` is true
|
|
26
|
-
3. Call \`open_visual_editor({ port: detectedPort })\` — always pass \`detectedPort\`, never assume the default
|
|
20
|
+
1. Call \`detect_project\` — returns project info including \`framework\` and \`projectPath\`
|
|
21
|
+
2. Call \`open_visual_editor({ projectPath, framework })\` — do NOT pass \`startPort\` or any port; the tool handles port selection automatically
|
|
27
22
|
4. Tell the user: "Rivet is open — make your visual changes and click 'Send to Claude Code' when ready."
|
|
28
23
|
|
|
29
24
|
## Editing loop
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-skill.js","sourceRoot":"","sources":["../../../src/utils/skills/claude-skill.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,CAAC,CAAC;AACzB,QAAA,2BAA2B,GAAG,iCAAiC,4BAAoB,GAAG,CAAC;AAEvF,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,qBAAqB,GAAG,UAAU,CAAC;AAEnC,QAAA,oBAAoB,GAAG;;;;;EAKlC,mCAA2B
|
|
1
|
+
{"version":3,"file":"claude-skill.js","sourceRoot":"","sources":["../../../src/utils/skills/claude-skill.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,CAAC,CAAC;AACzB,QAAA,2BAA2B,GAAG,iCAAiC,4BAAoB,GAAG,CAAC;AAEvF,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,qBAAqB,GAAG,UAAU,CAAC;AAEnC,QAAA,oBAAoB,GAAG;;;;;EAKlC,mCAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8B5B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const CURSOR_RULES_VERSION = 3;
|
|
2
2
|
export declare const CURSOR_RULES_FILENAME = "rivet.mdc";
|
|
3
3
|
export declare const CURSOR_RULES_VERSION_MARKER = "rivet-rules-version: 3";
|
|
4
|
-
export declare const CURSOR_RULES_CONTENT = "---\ndescription: Rivet visual editor \u2014 apply when the user says \"open rivet\", \"open the visual editor\", or wants to make visual/UI changes to their web app\nalwaysApply: false\n---\n<!-- rivet-rules-version: 3 -->\n# Rivet Visual Editor\n\nUse these tools to make visual changes to a running web app and apply them to source code.\n\n> Tip: type `@rivet.mdc` in chat to invoke this rule manually.\n\n## Starting a session\n\n1. Call `detect_project` \u2014 returns
|
|
4
|
+
export declare const CURSOR_RULES_CONTENT = "---\ndescription: Rivet visual editor \u2014 apply when the user says \"open rivet\", \"open the visual editor\", or wants to make visual/UI changes to their web app\nalwaysApply: false\n---\n<!-- rivet-rules-version: 3 -->\n# Rivet Visual Editor\n\nUse these tools to make visual changes to a running web app and apply them to source code.\n\n> Tip: type `@rivet.mdc` in chat to invoke this rule manually.\n\n## Starting a session\n\n1. Call `detect_project` \u2014 returns project info including `framework` and `projectPath`\n2. Call `open_visual_editor({ projectPath, framework })` \u2014 do NOT pass `startPort` or any port; the tool handles port selection automatically\n4. Tell the user: \"Rivet is open \u2014 make your visual changes and click 'Send to Cursor' when ready.\"\n\n## Editing loop\n\n1. Call `watch_for_changes({ sessionId })` \u2014 blocks until the user clicks \"Send to Cursor\" (up to 60s by default)\n2. If it times out (`hasChanges: false`), call it again to keep waiting\n3. When `hasChanges: true`, apply the changes to the source files listed in `sourceFiles`\n4. Hot reload happens automatically after file changes\n5. Tell the user what you changed, then loop back to step 1\n\n## Ending a session\n\nWhen the user says they're done, call `close_visual_editor({ sessionId })`.\n\n## Rules\n\n- **Always call `detect_project` first** \u2014 never assume the dev server is running\n- **Never auto-commit** after applying visual changes \u2014 let the user decide\n- Use `watch_for_changes` for interactive sessions, not `get_pending_changes`\n- `get_pending_changes` is a non-blocking immediate check \u2014 only use it to poll without blocking\n- The dev server stays running after `close_visual_editor`\n";
|
|
5
5
|
//# sourceMappingURL=cursor-rules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-rules.d.ts","sourceRoot":"","sources":["../../../src/utils/skills/cursor-rules.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,qBAAqB,cAAc,CAAC;AACjD,eAAO,MAAM,2BAA2B,2BAAiD,CAAC;AAE1F,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"cursor-rules.d.ts","sourceRoot":"","sources":["../../../src/utils/skills/cursor-rules.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,qBAAqB,cAAc,CAAC;AACjD,eAAO,MAAM,2BAA2B,2BAAiD,CAAC;AAE1F,eAAO,MAAM,oBAAoB,8sDAoChC,CAAC"}
|
|
@@ -17,13 +17,8 @@ Use these tools to make visual changes to a running web app and apply them to so
|
|
|
17
17
|
|
|
18
18
|
## Starting a session
|
|
19
19
|
|
|
20
|
-
1. Call \`detect_project\` — returns
|
|
21
|
-
2.
|
|
22
|
-
\`\`\`bash
|
|
23
|
-
cd {projectPath} && {packageManager} run {devCommand} &
|
|
24
|
-
\`\`\`
|
|
25
|
-
Then call \`detect_project\` again until \`portActive\` is true
|
|
26
|
-
3. Call \`open_visual_editor({ port: detectedPort })\` — always pass \`detectedPort\`, never assume the default
|
|
20
|
+
1. Call \`detect_project\` — returns project info including \`framework\` and \`projectPath\`
|
|
21
|
+
2. Call \`open_visual_editor({ projectPath, framework })\` — do NOT pass \`startPort\` or any port; the tool handles port selection automatically
|
|
27
22
|
4. Tell the user: "Rivet is open — make your visual changes and click 'Send to Cursor' when ready."
|
|
28
23
|
|
|
29
24
|
## Editing loop
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-rules.js","sourceRoot":"","sources":["../../../src/utils/skills/cursor-rules.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,CAAC,CAAC;AACzB,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,2BAA2B,GAAG,wBAAwB,4BAAoB,EAAE,CAAC;AAE7E,QAAA,oBAAoB,GAAG;;;;OAI7B,mCAA2B
|
|
1
|
+
{"version":3,"file":"cursor-rules.js","sourceRoot":"","sources":["../../../src/utils/skills/cursor-rules.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,CAAC,CAAC;AACzB,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,2BAA2B,GAAG,wBAAwB,4BAAoB,EAAE,CAAC;AAE7E,QAAA,oBAAoB,GAAG;;;;OAI7B,mCAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCjC,CAAC"}
|
package/package.json
CHANGED
|
@@ -490,4 +490,4 @@ ${Sr}
|
|
|
490
490
|
linear-gradient(-45deg, #e5e5e5 25%, transparent 25%),
|
|
491
491
|
linear-gradient(45deg, transparent 75%, #e5e5e5 75%),
|
|
492
492
|
linear-gradient(-45deg, transparent 75%, #e5e5e5 75%)
|
|
493
|
-
`,backgroundSize:"12px 12px",backgroundPosition:"0 0, 0 6px, 6px -6px, -6px 0px"}}),jsxRuntimeExports.jsx("div",{className:"absolute inset-0 transition-[filter] duration-200 group-hover:brightness-75",style:{backgroundColor:Tl}})]}),jsxRuntimeExports.jsx("span",{className:`relative text-sm font-semibold ${Ll}`,children:Al}),Ol?jsxRuntimeExports.jsx("span",{className:"absolute right-3 top-3 rounded-full bg-black/45 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-white",children:"Current"}):null]})}),jsxRuntimeExports.jsx(Portal$2,{children:jsxRuntimeExports.jsxs(Content2$2,{className:"z-50 rounded-lg border border-white/10 shadow-xl",sideOffset:8,align:"start",children:[jsxRuntimeExports.jsxs("div",{className:"relative",children:[jsxRuntimeExports.jsx(Close$1,{asChild:!0,children:jsxRuntimeExports.jsx("button",{className:"absolute right-2 top-2 z-10 rounded bg-black/50 p-1 text-white transition-colors hover:bg-black/70",title:"Close",children:jsxRuntimeExports.jsx(X,{className:"h-4 w-4"})})}),jsxRuntimeExports.jsx(ColorPicker,{value:Ur||wl,onChange:Fl,onCommit:Hl})]}),jsxRuntimeExports.jsx(Arrow2,{className:"fill-main"})]})})]},Cl)},_a=[],yl=[];return Object.entries($).forEach(([Al,Cl])=>{typeof Cl=="string"?_a.push([Al,Cl]):yl.push([Al,Cl])}),jsxRuntimeExports.jsxs("div",{className:"space-y-10 p-8",children:[yl.map(([Al,Cl])=>{const xl=Object.entries(Cl);return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("h3",{className:"mb-4 text-base font-semibold capitalize text-white",children:Al}),jsxRuntimeExports.jsx("div",{className:"grid grid-cols-2 gap-6 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5",children:xl.map(([El,wl])=>{const Sl=`${Al}.${El}`;return $a(El==="DEFAULT"?"default":El,Sl,wl,!0)})})]},Al)}),_a.length>0&&jsxRuntimeExports.jsxs("div",{children:[yl.length>0&&jsxRuntimeExports.jsx("h3",{className:"mb-4 text-base font-semibold text-white",children:"Other Colors"}),jsxRuntimeExports.jsx("div",{className:"grid grid-cols-2 gap-6 sm:grid-cols-3 md:grid-cols-4",children:_a.map(([Al,Cl])=>$a(Al,Al,Cl,!1))})]})]})},TokenItem=({category:$,name:xr,value:Sr,isPending:Pr,isNested:Tr=!1,onUpdate:Rr})=>{const[Fr,Ur]=reactExports.useState(Sr),$r=()=>{switch($){case"colors":return"color";case"spacing":case"fontSize":case"borderRadius":return"spacing";case"boxShadow":return"text";default:return"text"}},ga=reactExports.useCallback($a=>{Ur($a)},[]),xa=reactExports.useCallback($a=>{Rr($a??Fr)},[Fr,Rr]),ba=()=>{switch($){case"colors":return jsxRuntimeExports.jsx("div",{className:"h-6 w-6 shrink-0 rounded border border-white/20",style:{backgroundColor:Fr}});case"boxShadow":return jsxRuntimeExports.jsx("div",{className:"h-6 w-6 shrink-0 rounded bg-white",style:{boxShadow:Fr}});case"borderRadius":return jsxRuntimeExports.jsx("div",{className:"bg-primary h-6 w-6 shrink-0",style:{borderRadius:Fr}});case"spacing":case"fontSize":return jsxRuntimeExports.jsx("span",{className:"text-content-subtle shrink-0 font-mono text-xs",children:Fr});default:return null}};return jsxRuntimeExports.jsxs("div",{className:`hover:bg-main-hover flex items-center justify-between px-4 py-2 ${Tr?"pl-8":""} ${Pr?"bg-primary/10":""}`,children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[ba(),jsxRuntimeExports.jsxs("span",{className:`text-content text-sm ${Pr?"font-medium":""}`,children:[xr,Pr?jsxRuntimeExports.jsx("span",{className:"text-primary ml-2 text-xs",children:"(modified)"}):null]})]}),jsxRuntimeExports.jsx(PropertyInput,{type:$r(),value:Fr,onChange:ga,onApply:xa})]})},TokenList=({category:$,tokens:xr,pendingChanges:Sr,onUpdateToken:Pr})=>{if(!xr||Object.keys(xr).length===0)return jsxRuntimeExports.jsx("div",{className:"text-content-subtle flex items-center justify-center py-12 text-sm",children:"No tokens defined for this category"});const Tr=(Ur,$r)=>{const ga=`${$}.${Ur}`,xa=Sr.get(ga);return xa?xa.newValue:$r},Rr=Ur=>{const $r=`${$}.${Ur}`;return Sr.has($r)},Fr=(Ur,$r,ga)=>{const xa=Ur;return typeof $r=="string"?jsxRuntimeExports.jsx(TokenItem,{category:$,name:Ur,value:Tr(xa,$r),isPending:Rr(xa),isNested:!!ga,onUpdate:ba=>Pr($,xa,$r,ba)},xa):jsxRuntimeExports.jsxs("div",{className:"border-main-border border-b last:border-b-0",children:[jsxRuntimeExports.jsx("div",{className:"bg-main-hover/50 px-4 py-2",children:jsxRuntimeExports.jsx("span",{className:"text-content text-sm font-medium",children:Ur})}),jsxRuntimeExports.jsx("div",{children:Object.entries($r).map(([ba,$a])=>{const _a=`${Ur}.${ba}`,yl=ba==="DEFAULT"?"default":ba;return jsxRuntimeExports.jsx(TokenItem,{category:$,name:yl,value:Tr(_a,$a),isPending:Rr(_a),isNested:!0,onUpdate:Al=>Pr($,_a,$a,Al)},_a)})})]},xa)};return jsxRuntimeExports.jsx("div",{className:"divide-main-border divide-y",children:Object.entries(xr).map(([Ur,$r])=>Fr(Ur,$r))})},CATEGORIES=[{key:"colors",label:"Colors",isEnabled:!0},{key:"spacing",label:"Spacing",isEnabled:!1},{key:"fontSize",label:"Typography",isEnabled:!1},{key:"borderRadius",label:"Borders",isEnabled:!1},{key:"boxShadow",label:"Shadows",isEnabled:!1}],TokenCategoryTabs=({tokens:$,activeCategory:xr,onCategoryChange:Sr,pendingChanges:Pr,onUpdateToken:Tr,highlightToken:Rr})=>{const Fr=({key:$r,label:ga,isEnabled:xa})=>{const ba=jsxRuntimeExports.jsx(Trigger,{value:$r,disabled:!xa,className:"data-[state=active]:border-primary border-b-2 border-transparent px-4 py-3 text-sm font-medium text-white/60 transition-colors hover:text-white disabled:cursor-not-allowed disabled:opacity-30 data-[state=active]:text-white",children:ga},$r);return xa?ba:jsxRuntimeExports.jsxs(Root3,{children:[jsxRuntimeExports.jsx(Trigger$4,{asChild:!0,children:ba}),jsxRuntimeExports.jsx(Portal$3,{children:jsxRuntimeExports.jsxs(Content2$3,{className:"bg-main-input text-content z-50 rounded px-3 py-1.5 text-sm shadow-lg",sideOffset:5,children:["Coming soon",jsxRuntimeExports.jsx(Arrow2$1,{className:"fill-main-input"})]})})]},$r)},Ur=$r=>{const ga=$[$r];return ga&&Object.keys(ga).length>0?$r==="colors"?jsxRuntimeExports.jsx(ColorSwatchGrid,{tokens:ga,pendingChanges:Pr,category:$r,onUpdateToken:Tr,highlightToken:Rr}):jsxRuntimeExports.jsx("div",{className:"p-8",children:jsxRuntimeExports.jsx(TokenList,{category:$r,tokens:ga,pendingChanges:Pr,onUpdateToken:Tr})}):null};return jsxRuntimeExports.jsxs(Root2,{value:xr,onValueChange:$r=>Sr($r),className:"flex flex-1 flex-col overflow-hidden",children:[jsxRuntimeExports.jsx(List,{className:"border-main-border flex shrink-0 gap-1 border-b px-8",children:jsxRuntimeExports.jsx(Provider,{delayDuration:200,children:CATEGORIES.map(Fr)})}),jsxRuntimeExports.jsx("div",{className:"flex-1 overflow-auto",children:jsxRuntimeExports.jsx("div",{className:"mx-auto max-w-7xl",children:CATEGORIES.map(({key:$r})=>jsxRuntimeExports.jsx(Content,{value:$r,className:"focus:outline-none",children:Ur($r)},$r))})})]})},TokenEditor=()=>{const{tokens:$,framework:xr,pendingChanges:Sr,isLoading:Pr,isSaving:Tr,error:Rr,updateToken:Fr,saveChanges:Ur,revertChanges:$r}=useTokenEditor(),[ga,xa]=reactExports.useState("colors"),ba=Sr.size>0,_a=new URLSearchParams(window.location.hash.split("?")[1]).get("highlight");reactExports.useEffect(()=>{_a&&ga!=="colors"&&xa("colors")},[_a,ga]);const yl=reactExports.useCallback(async()=>{await Ur()?toast.success("Tokens saved successfully"):toast.error("Failed to save some tokens")},[Ur]),Al=reactExports.useCallback(()=>{$r(),toast.info("Changes reverted")},[$r]),Cl=reactExports.useCallback(()=>{ba&&!window.confirm("You have unsaved changes. Are you sure you want to leave?")||(window.location.hash="")},[ba]);return reactExports.useEffect(()=>{const xl=El=>{El.key!=="Escape"||Tr||El.target.closest("[data-radix-popper-content-wrapper]")||(El.preventDefault(),Cl())};return window.addEventListener("keydown",xl),()=>window.removeEventListener("keydown",xl)},[Cl,Tr]),useKeyboardShortcuts({shortcuts:[{key:"s",metaKey:!0,handler:xl=>{xl.preventDefault(),ba&&!Tr&&yl()},description:"Save changes"}]}),reactExports.useEffect(()=>{const xl=El=>{ba&&(El.preventDefault(),El.returnValue="")};return window.addEventListener("beforeunload",xl),()=>window.removeEventListener("beforeunload",xl)},[ba]),Pr?jsxRuntimeExports.jsx("div",{className:"bg-main font-main flex h-screen items-center justify-center",children:jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntimeExports.jsx(LoaderCircle,{className:"text-primary h-6 w-6 animate-spin"}),jsxRuntimeExports.jsx("span",{className:"text-content",children:"Loading tokens..."})]})}):Rr?jsxRuntimeExports.jsxs("div",{className:"bg-main font-main flex h-screen flex-col items-center justify-center gap-4",children:[jsxRuntimeExports.jsx("p",{className:"text-red-500",children:Rr}),jsxRuntimeExports.jsx(Button,{title:"Retry loading tokens",onClick:()=>window.location.reload(),className:"bg-primary hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm text-white transition-colors",children:"Retry"})]}):!$||!xr?jsxRuntimeExports.jsxs("div",{className:"bg-main font-main flex h-screen flex-col items-center justify-center gap-4",children:[jsxRuntimeExports.jsx("p",{className:"text-content-subtle",children:"No design tokens found. Make sure you have a Tailwind config file with theme.extend defined."}),jsxRuntimeExports.jsxs(Button,{title:"Return to main editor",onClick:Cl,className:"bg-primary hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm text-white transition-colors",children:[jsxRuntimeExports.jsx(ArrowLeft,{className:"h-4 w-4"}),"Back to Editor"]})]}):jsxRuntimeExports.jsxs(motion.div,{className:"bg-main font-main flex h-screen flex-col",initial:{opacity:0},animate:{opacity:1},transition:{duration:.3},children:[jsxRuntimeExports.jsxs("header",{className:"border-main-border bg-main flex shrink-0 items-start justify-between border-b px-8 py-6",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-4",children:[jsxRuntimeExports.jsxs("button",{onClick:Cl,className:"text-content-subtle flex items-center gap-2 transition-colors hover:text-white",children:[jsxRuntimeExports.jsx(ArrowLeft,{className:"h-4 w-4"}),jsxRuntimeExports.jsx("span",{className:"text-sm",children:"Back"})]}),jsxRuntimeExports.jsx("div",{className:"bg-main-border h-6 w-px"})]}),jsxRuntimeExports.jsx("div",{className:"flex items-start gap-6",children:jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[ba?jsxRuntimeExports.jsxs("span",{className:"text-content-subtle text-sm",children:[Sr.size," unsaved"," ",Sr.size===1?"change":"changes"]}):null,jsxRuntimeExports.jsxs(Button,{title:"Revert all changes",onClick:Al,disabled:!ba||Tr,className:"border-main-border hover:bg-main-hover flex items-center gap-2 rounded-lg border px-4 py-2 text-sm text-white transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:[jsxRuntimeExports.jsx(RotateCcw,{className:"h-4 w-4"}),"Revert"]}),jsxRuntimeExports.jsxs(Button,{title:"Save changes (Cmd+S)",shortcut:"Cmd+S",onClick:yl,disabled:!ba||Tr,className:"bg-primary hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm text-white transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:[Tr?jsxRuntimeExports.jsx(LoaderCircle,{className:"h-4 w-4 animate-spin"}):null,"Save"]})]})})]}),jsxRuntimeExports.jsx(TokenCategoryTabs,{tokens:$,activeCategory:ga,onCategoryChange:xa,pendingChanges:Sr,onUpdateToken:Fr,highlightToken:_a||void 0}),jsxRuntimeExports.jsx(Toaster,{duration:3e3,richColors:!0})]})},log=createLogger("App"),MainEditor=()=>{const[$,xr]=useAtom(selectedElementAtom),Sr=useSetAtom(designTokensAtom),Pr=useSetAtom(elementScreenshotAtom),Tr=useSetAtom(modeAtom),[Rr,Fr]=useAtom(chatMessagesAtom),Ur=useOAuthCallback(),$r=reactExports.useRef(($==null?void 0:$.xpath)??null);reactExports.useEffect(()=>{(async()=>{try{const ba=await fetch("/api/tokens");if(ba.ok){const $a=await ba.json();Sr($a),$a.framework&&log.info(`Loaded ${$a.framework} design tokens`)}}catch(ba){log.error("Failed to fetch design tokens:",ba)}})()},[Sr]);const ga=()=>{const xa=document.getElementById("rivet-selection-overlay");xa&&(xa.style.opacity="0");const ba=document.getElementById("rivet-hover-overlay");ba&&(ba.style.opacity="0"),xr(null),Pr(null)};return useKeyboardShortcuts({shortcuts:[{key:"Escape",handler:xa=>{if(xa.target.closest("[data-radix-popper-content-wrapper]")){log.debug("Escape key pressed inside popover - letting Radix handle it");return}$&&(log.debug("Escape key pressed - closing inspector"),ga())},description:"Close inspector"},{key:"s",handler:()=>{log.debug("S key pressed - switching to view mode"),Tr("view")},description:"Switch to view mode"},{key:"d",handler:()=>{log.debug("D key pressed - switching to design mode"),Tr("edit")},description:"Switch to design mode"},{key:"c",handler:()=>{log.debug("C key pressed - switching to comment mode"),Tr("comment")},description:"Switch to comment mode"}]}),reactExports.useEffect(()=>{const xa=()=>{window.dispatchEvent(new CustomEvent("rivet:reposition-overlays"))};return window.addEventListener("resize",xa),()=>window.removeEventListener("resize",xa)},[]),reactExports.useEffect(()=>{const xa=($==null?void 0:$.xpath)??null,ba=$r.current;xa&&xa!==ba&&(Fr([]),$r.current=xa)},[$==null?void 0:$.xpath,Fr]),jsxRuntimeExports.jsxs(motion.div,{className:"flex h-screen",initial:{opacity:0},animate:{opacity:1},transition:{duration:.5,ease:"easeOut"},"data-cy":"rivet-app",children:[Ur.isProcessing?jsxRuntimeExports.jsx("div",{className:"absolute inset-0 z-50 flex items-center justify-center bg-black/50",children:jsxRuntimeExports.jsx("div",{className:"bg-background-primary rounded-lg p-6 shadow-lg",children:jsxRuntimeExports.jsx(Progress,{message:"Completing authentication..."})})}):null,jsxRuntimeExports.jsx("div",{className:"relative flex flex-1 flex-col",children:jsxRuntimeExports.jsx(PreviewFrame,{})}),jsxRuntimeExports.jsx(ElementInspector,{chatMessages:Rr,setChatMessages:Fr}),jsxRuntimeExports.jsx(Toaster,{duration:5e3,richColors:!0,toastOptions:{style:{maxHeight:"150px",overflow:"hidden"}}})]})},App=()=>{const[$,xr]=reactExports.useState(window.location.hash),[Sr,Pr]=reactExports.useState(0),{config:Tr}=useConfig();return reactExports.useEffect(()=>{Tr!=null&&Tr.email&&aa$1.identify(Tr.email,{email:Tr.email})},[Tr==null?void 0:Tr.email]),reactExports.useEffect(()=>{const Rr=()=>{const Fr=window.location.hash;xr(Ur=>(Ur.startsWith("#tokens")&&!Fr.startsWith("#tokens")&&Pr($r=>$r+1),Fr))};return window.addEventListener("hashchange",Rr),()=>window.removeEventListener("hashchange",Rr)},[]),$.startsWith("#tokens")?jsxRuntimeExports.jsx(TokenEditor,{}):jsxRuntimeExports.jsx(MainEditor,{},Sr)},POSTHOG_PUBLIC_API_KEY="phc_Ntj9tXHbS64XgYxlTfhglRmFivFsfm0AERph4ZlnNH",POSTHOG_PUBLIC_HOST="https://us.i.posthog.com",ErrorFallback=()=>jsxRuntimeExports.jsx("div",{style:{display:"flex",height:"100vh",alignItems:"center",justifyContent:"center"},children:jsxRuntimeExports.jsx("p",{style:{fontSize:"14px",color:"#6b7280"},children:"Something went wrong. Please reload the page."})});client.createRoot(document.getElementById("root")).render(jsxRuntimeExports.jsx(React.StrictMode,{children:jsxRuntimeExports.jsx(PostHogProvider,{apiKey:POSTHOG_PUBLIC_API_KEY,options:{api_host:POSTHOG_PUBLIC_HOST,capture_exceptions:!0,loaded:$=>{$.register({source:"core",rivet_version:"0.5.11",env:"production"})}},children:jsxRuntimeExports.jsx(PostHogErrorBoundary,{fallback:jsxRuntimeExports.jsx(ErrorFallback,{}),children:jsxRuntimeExports.jsx(App,{})})})}));
|
|
493
|
+
`,backgroundSize:"12px 12px",backgroundPosition:"0 0, 0 6px, 6px -6px, -6px 0px"}}),jsxRuntimeExports.jsx("div",{className:"absolute inset-0 transition-[filter] duration-200 group-hover:brightness-75",style:{backgroundColor:Tl}})]}),jsxRuntimeExports.jsx("span",{className:`relative text-sm font-semibold ${Ll}`,children:Al}),Ol?jsxRuntimeExports.jsx("span",{className:"absolute right-3 top-3 rounded-full bg-black/45 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-white",children:"Current"}):null]})}),jsxRuntimeExports.jsx(Portal$2,{children:jsxRuntimeExports.jsxs(Content2$2,{className:"z-50 rounded-lg border border-white/10 shadow-xl",sideOffset:8,align:"start",children:[jsxRuntimeExports.jsxs("div",{className:"relative",children:[jsxRuntimeExports.jsx(Close$1,{asChild:!0,children:jsxRuntimeExports.jsx("button",{className:"absolute right-2 top-2 z-10 rounded bg-black/50 p-1 text-white transition-colors hover:bg-black/70",title:"Close",children:jsxRuntimeExports.jsx(X,{className:"h-4 w-4"})})}),jsxRuntimeExports.jsx(ColorPicker,{value:Ur||wl,onChange:Fl,onCommit:Hl})]}),jsxRuntimeExports.jsx(Arrow2,{className:"fill-main"})]})})]},Cl)},_a=[],yl=[];return Object.entries($).forEach(([Al,Cl])=>{typeof Cl=="string"?_a.push([Al,Cl]):yl.push([Al,Cl])}),jsxRuntimeExports.jsxs("div",{className:"space-y-10 p-8",children:[yl.map(([Al,Cl])=>{const xl=Object.entries(Cl);return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("h3",{className:"mb-4 text-base font-semibold capitalize text-white",children:Al}),jsxRuntimeExports.jsx("div",{className:"grid grid-cols-2 gap-6 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5",children:xl.map(([El,wl])=>{const Sl=`${Al}.${El}`;return $a(El==="DEFAULT"?"default":El,Sl,wl,!0)})})]},Al)}),_a.length>0&&jsxRuntimeExports.jsxs("div",{children:[yl.length>0&&jsxRuntimeExports.jsx("h3",{className:"mb-4 text-base font-semibold text-white",children:"Other Colors"}),jsxRuntimeExports.jsx("div",{className:"grid grid-cols-2 gap-6 sm:grid-cols-3 md:grid-cols-4",children:_a.map(([Al,Cl])=>$a(Al,Al,Cl,!1))})]})]})},TokenItem=({category:$,name:xr,value:Sr,isPending:Pr,isNested:Tr=!1,onUpdate:Rr})=>{const[Fr,Ur]=reactExports.useState(Sr),$r=()=>{switch($){case"colors":return"color";case"spacing":case"fontSize":case"borderRadius":return"spacing";case"boxShadow":return"text";default:return"text"}},ga=reactExports.useCallback($a=>{Ur($a)},[]),xa=reactExports.useCallback($a=>{Rr($a??Fr)},[Fr,Rr]),ba=()=>{switch($){case"colors":return jsxRuntimeExports.jsx("div",{className:"h-6 w-6 shrink-0 rounded border border-white/20",style:{backgroundColor:Fr}});case"boxShadow":return jsxRuntimeExports.jsx("div",{className:"h-6 w-6 shrink-0 rounded bg-white",style:{boxShadow:Fr}});case"borderRadius":return jsxRuntimeExports.jsx("div",{className:"bg-primary h-6 w-6 shrink-0",style:{borderRadius:Fr}});case"spacing":case"fontSize":return jsxRuntimeExports.jsx("span",{className:"text-content-subtle shrink-0 font-mono text-xs",children:Fr});default:return null}};return jsxRuntimeExports.jsxs("div",{className:`hover:bg-main-hover flex items-center justify-between px-4 py-2 ${Tr?"pl-8":""} ${Pr?"bg-primary/10":""}`,children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[ba(),jsxRuntimeExports.jsxs("span",{className:`text-content text-sm ${Pr?"font-medium":""}`,children:[xr,Pr?jsxRuntimeExports.jsx("span",{className:"text-primary ml-2 text-xs",children:"(modified)"}):null]})]}),jsxRuntimeExports.jsx(PropertyInput,{type:$r(),value:Fr,onChange:ga,onApply:xa})]})},TokenList=({category:$,tokens:xr,pendingChanges:Sr,onUpdateToken:Pr})=>{if(!xr||Object.keys(xr).length===0)return jsxRuntimeExports.jsx("div",{className:"text-content-subtle flex items-center justify-center py-12 text-sm",children:"No tokens defined for this category"});const Tr=(Ur,$r)=>{const ga=`${$}.${Ur}`,xa=Sr.get(ga);return xa?xa.newValue:$r},Rr=Ur=>{const $r=`${$}.${Ur}`;return Sr.has($r)},Fr=(Ur,$r,ga)=>{const xa=Ur;return typeof $r=="string"?jsxRuntimeExports.jsx(TokenItem,{category:$,name:Ur,value:Tr(xa,$r),isPending:Rr(xa),isNested:!!ga,onUpdate:ba=>Pr($,xa,$r,ba)},xa):jsxRuntimeExports.jsxs("div",{className:"border-main-border border-b last:border-b-0",children:[jsxRuntimeExports.jsx("div",{className:"bg-main-hover/50 px-4 py-2",children:jsxRuntimeExports.jsx("span",{className:"text-content text-sm font-medium",children:Ur})}),jsxRuntimeExports.jsx("div",{children:Object.entries($r).map(([ba,$a])=>{const _a=`${Ur}.${ba}`,yl=ba==="DEFAULT"?"default":ba;return jsxRuntimeExports.jsx(TokenItem,{category:$,name:yl,value:Tr(_a,$a),isPending:Rr(_a),isNested:!0,onUpdate:Al=>Pr($,_a,$a,Al)},_a)})})]},xa)};return jsxRuntimeExports.jsx("div",{className:"divide-main-border divide-y",children:Object.entries(xr).map(([Ur,$r])=>Fr(Ur,$r))})},CATEGORIES=[{key:"colors",label:"Colors",isEnabled:!0},{key:"spacing",label:"Spacing",isEnabled:!1},{key:"fontSize",label:"Typography",isEnabled:!1},{key:"borderRadius",label:"Borders",isEnabled:!1},{key:"boxShadow",label:"Shadows",isEnabled:!1}],TokenCategoryTabs=({tokens:$,activeCategory:xr,onCategoryChange:Sr,pendingChanges:Pr,onUpdateToken:Tr,highlightToken:Rr})=>{const Fr=({key:$r,label:ga,isEnabled:xa})=>{const ba=jsxRuntimeExports.jsx(Trigger,{value:$r,disabled:!xa,className:"data-[state=active]:border-primary border-b-2 border-transparent px-4 py-3 text-sm font-medium text-white/60 transition-colors hover:text-white disabled:cursor-not-allowed disabled:opacity-30 data-[state=active]:text-white",children:ga},$r);return xa?ba:jsxRuntimeExports.jsxs(Root3,{children:[jsxRuntimeExports.jsx(Trigger$4,{asChild:!0,children:ba}),jsxRuntimeExports.jsx(Portal$3,{children:jsxRuntimeExports.jsxs(Content2$3,{className:"bg-main-input text-content z-50 rounded px-3 py-1.5 text-sm shadow-lg",sideOffset:5,children:["Coming soon",jsxRuntimeExports.jsx(Arrow2$1,{className:"fill-main-input"})]})})]},$r)},Ur=$r=>{const ga=$[$r];return ga&&Object.keys(ga).length>0?$r==="colors"?jsxRuntimeExports.jsx(ColorSwatchGrid,{tokens:ga,pendingChanges:Pr,category:$r,onUpdateToken:Tr,highlightToken:Rr}):jsxRuntimeExports.jsx("div",{className:"p-8",children:jsxRuntimeExports.jsx(TokenList,{category:$r,tokens:ga,pendingChanges:Pr,onUpdateToken:Tr})}):null};return jsxRuntimeExports.jsxs(Root2,{value:xr,onValueChange:$r=>Sr($r),className:"flex flex-1 flex-col overflow-hidden",children:[jsxRuntimeExports.jsx(List,{className:"border-main-border flex shrink-0 gap-1 border-b px-8",children:jsxRuntimeExports.jsx(Provider,{delayDuration:200,children:CATEGORIES.map(Fr)})}),jsxRuntimeExports.jsx("div",{className:"flex-1 overflow-auto",children:jsxRuntimeExports.jsx("div",{className:"mx-auto max-w-7xl",children:CATEGORIES.map(({key:$r})=>jsxRuntimeExports.jsx(Content,{value:$r,className:"focus:outline-none",children:Ur($r)},$r))})})]})},TokenEditor=()=>{const{tokens:$,framework:xr,pendingChanges:Sr,isLoading:Pr,isSaving:Tr,error:Rr,updateToken:Fr,saveChanges:Ur,revertChanges:$r}=useTokenEditor(),[ga,xa]=reactExports.useState("colors"),ba=Sr.size>0,_a=new URLSearchParams(window.location.hash.split("?")[1]).get("highlight");reactExports.useEffect(()=>{_a&&ga!=="colors"&&xa("colors")},[_a,ga]);const yl=reactExports.useCallback(async()=>{await Ur()?toast.success("Tokens saved successfully"):toast.error("Failed to save some tokens")},[Ur]),Al=reactExports.useCallback(()=>{$r(),toast.info("Changes reverted")},[$r]),Cl=reactExports.useCallback(()=>{ba&&!window.confirm("You have unsaved changes. Are you sure you want to leave?")||(window.location.hash="")},[ba]);return reactExports.useEffect(()=>{const xl=El=>{El.key!=="Escape"||Tr||El.target.closest("[data-radix-popper-content-wrapper]")||(El.preventDefault(),Cl())};return window.addEventListener("keydown",xl),()=>window.removeEventListener("keydown",xl)},[Cl,Tr]),useKeyboardShortcuts({shortcuts:[{key:"s",metaKey:!0,handler:xl=>{xl.preventDefault(),ba&&!Tr&&yl()},description:"Save changes"}]}),reactExports.useEffect(()=>{const xl=El=>{ba&&(El.preventDefault(),El.returnValue="")};return window.addEventListener("beforeunload",xl),()=>window.removeEventListener("beforeunload",xl)},[ba]),Pr?jsxRuntimeExports.jsx("div",{className:"bg-main font-main flex h-screen items-center justify-center",children:jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntimeExports.jsx(LoaderCircle,{className:"text-primary h-6 w-6 animate-spin"}),jsxRuntimeExports.jsx("span",{className:"text-content",children:"Loading tokens..."})]})}):Rr?jsxRuntimeExports.jsxs("div",{className:"bg-main font-main flex h-screen flex-col items-center justify-center gap-4",children:[jsxRuntimeExports.jsx("p",{className:"text-red-500",children:Rr}),jsxRuntimeExports.jsx(Button,{title:"Retry loading tokens",onClick:()=>window.location.reload(),className:"bg-primary hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm text-white transition-colors",children:"Retry"})]}):!$||!xr?jsxRuntimeExports.jsxs("div",{className:"bg-main font-main flex h-screen flex-col items-center justify-center gap-4",children:[jsxRuntimeExports.jsx("p",{className:"text-content-subtle",children:"No design tokens found. Make sure you have a Tailwind config file with theme.extend defined."}),jsxRuntimeExports.jsxs(Button,{title:"Return to main editor",onClick:Cl,className:"bg-primary hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm text-white transition-colors",children:[jsxRuntimeExports.jsx(ArrowLeft,{className:"h-4 w-4"}),"Back to Editor"]})]}):jsxRuntimeExports.jsxs(motion.div,{className:"bg-main font-main flex h-screen flex-col",initial:{opacity:0},animate:{opacity:1},transition:{duration:.3},children:[jsxRuntimeExports.jsxs("header",{className:"border-main-border bg-main flex shrink-0 items-start justify-between border-b px-8 py-6",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-4",children:[jsxRuntimeExports.jsxs("button",{onClick:Cl,className:"text-content-subtle flex items-center gap-2 transition-colors hover:text-white",children:[jsxRuntimeExports.jsx(ArrowLeft,{className:"h-4 w-4"}),jsxRuntimeExports.jsx("span",{className:"text-sm",children:"Back"})]}),jsxRuntimeExports.jsx("div",{className:"bg-main-border h-6 w-px"})]}),jsxRuntimeExports.jsx("div",{className:"flex items-start gap-6",children:jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[ba?jsxRuntimeExports.jsxs("span",{className:"text-content-subtle text-sm",children:[Sr.size," unsaved"," ",Sr.size===1?"change":"changes"]}):null,jsxRuntimeExports.jsxs(Button,{title:"Revert all changes",onClick:Al,disabled:!ba||Tr,className:"border-main-border hover:bg-main-hover flex items-center gap-2 rounded-lg border px-4 py-2 text-sm text-white transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:[jsxRuntimeExports.jsx(RotateCcw,{className:"h-4 w-4"}),"Revert"]}),jsxRuntimeExports.jsxs(Button,{title:"Save changes (Cmd+S)",shortcut:"Cmd+S",onClick:yl,disabled:!ba||Tr,className:"bg-primary hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm text-white transition-colors disabled:cursor-not-allowed disabled:opacity-50",children:[Tr?jsxRuntimeExports.jsx(LoaderCircle,{className:"h-4 w-4 animate-spin"}):null,"Save"]})]})})]}),jsxRuntimeExports.jsx(TokenCategoryTabs,{tokens:$,activeCategory:ga,onCategoryChange:xa,pendingChanges:Sr,onUpdateToken:Fr,highlightToken:_a||void 0}),jsxRuntimeExports.jsx(Toaster,{duration:3e3,richColors:!0})]})},log=createLogger("App"),MainEditor=()=>{const[$,xr]=useAtom(selectedElementAtom),Sr=useSetAtom(designTokensAtom),Pr=useSetAtom(elementScreenshotAtom),Tr=useSetAtom(modeAtom),[Rr,Fr]=useAtom(chatMessagesAtom),Ur=useOAuthCallback(),$r=reactExports.useRef(($==null?void 0:$.xpath)??null);reactExports.useEffect(()=>{(async()=>{try{const ba=await fetch("/api/tokens");if(ba.ok){const $a=await ba.json();Sr($a),$a.framework&&log.info(`Loaded ${$a.framework} design tokens`)}}catch(ba){log.error("Failed to fetch design tokens:",ba)}})()},[Sr]);const ga=()=>{const xa=document.getElementById("rivet-selection-overlay");xa&&(xa.style.opacity="0");const ba=document.getElementById("rivet-hover-overlay");ba&&(ba.style.opacity="0"),xr(null),Pr(null)};return useKeyboardShortcuts({shortcuts:[{key:"Escape",handler:xa=>{if(xa.target.closest("[data-radix-popper-content-wrapper]")){log.debug("Escape key pressed inside popover - letting Radix handle it");return}$&&(log.debug("Escape key pressed - closing inspector"),ga())},description:"Close inspector"},{key:"s",handler:()=>{log.debug("S key pressed - switching to view mode"),Tr("view")},description:"Switch to view mode"},{key:"d",handler:()=>{log.debug("D key pressed - switching to design mode"),Tr("edit")},description:"Switch to design mode"},{key:"c",handler:()=>{log.debug("C key pressed - switching to comment mode"),Tr("comment")},description:"Switch to comment mode"}]}),reactExports.useEffect(()=>{const xa=()=>{window.dispatchEvent(new CustomEvent("rivet:reposition-overlays"))};return window.addEventListener("resize",xa),()=>window.removeEventListener("resize",xa)},[]),reactExports.useEffect(()=>{const xa=($==null?void 0:$.xpath)??null,ba=$r.current;xa&&xa!==ba&&(Fr([]),$r.current=xa)},[$==null?void 0:$.xpath,Fr]),jsxRuntimeExports.jsxs(motion.div,{className:"flex h-screen",initial:{opacity:0},animate:{opacity:1},transition:{duration:.5,ease:"easeOut"},"data-cy":"rivet-app",children:[Ur.isProcessing?jsxRuntimeExports.jsx("div",{className:"absolute inset-0 z-50 flex items-center justify-center bg-black/50",children:jsxRuntimeExports.jsx("div",{className:"bg-background-primary rounded-lg p-6 shadow-lg",children:jsxRuntimeExports.jsx(Progress,{message:"Completing authentication..."})})}):null,jsxRuntimeExports.jsx("div",{className:"relative flex flex-1 flex-col",children:jsxRuntimeExports.jsx(PreviewFrame,{})}),jsxRuntimeExports.jsx(ElementInspector,{chatMessages:Rr,setChatMessages:Fr}),jsxRuntimeExports.jsx(Toaster,{duration:5e3,richColors:!0,toastOptions:{style:{maxHeight:"150px",overflow:"hidden"}}})]})},App=()=>{const[$,xr]=reactExports.useState(window.location.hash),[Sr,Pr]=reactExports.useState(0),{config:Tr}=useConfig();return reactExports.useEffect(()=>{Tr!=null&&Tr.email&&aa$1.identify(Tr.email,{email:Tr.email})},[Tr==null?void 0:Tr.email]),reactExports.useEffect(()=>{const Rr=()=>{const Fr=window.location.hash;xr(Ur=>(Ur.startsWith("#tokens")&&!Fr.startsWith("#tokens")&&Pr($r=>$r+1),Fr))};return window.addEventListener("hashchange",Rr),()=>window.removeEventListener("hashchange",Rr)},[]),$.startsWith("#tokens")?jsxRuntimeExports.jsx(TokenEditor,{}):jsxRuntimeExports.jsx(MainEditor,{},Sr)},POSTHOG_PUBLIC_API_KEY="phc_Ntj9tXHbS64XgYxlTfhglRmFivFsfm0AERph4ZlnNH",POSTHOG_PUBLIC_HOST="https://us.i.posthog.com",ErrorFallback=()=>jsxRuntimeExports.jsx("div",{style:{display:"flex",height:"100vh",alignItems:"center",justifyContent:"center"},children:jsxRuntimeExports.jsx("p",{style:{fontSize:"14px",color:"#6b7280"},children:"Something went wrong. Please reload the page."})});client.createRoot(document.getElementById("root")).render(jsxRuntimeExports.jsx(React.StrictMode,{children:jsxRuntimeExports.jsx(PostHogProvider,{apiKey:POSTHOG_PUBLIC_API_KEY,options:{api_host:POSTHOG_PUBLIC_HOST,capture_exceptions:!0,loaded:$=>{$.register({source:"core",rivet_version:"0.5.13",env:"production"})}},children:jsxRuntimeExports.jsx(PostHogErrorBoundary,{fallback:jsxRuntimeExports.jsx(ErrorFallback,{}),children:jsxRuntimeExports.jsx(App,{})})})}));
|
package/src/ui/dist/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<link rel="icon" type="image/x-icon" href="/rivet/favicon.ico" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
7
|
<title>Rivet - The visual editor for design</title>
|
|
8
|
-
<script type="module" crossorigin src="/rivet/assets/main-
|
|
8
|
+
<script type="module" crossorigin src="/rivet/assets/main-DhJDeAnr.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="/rivet/assets/main-BDHMbFy-.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|