rivet-design 0.1.31 → 0.1.33
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/proxy-middleware/proxy-config.js +1 -1
- package/dist/proxy-middleware/proxy-config.js.map +1 -1
- package/dist/routes/components.d.ts +1 -1
- package/dist/routes/components.d.ts.map +1 -1
- package/dist/routes/components.js +7 -2
- package/dist/routes/components.js.map +1 -1
- package/dist/routes/modifications.d.ts.map +1 -1
- package/dist/routes/modifications.js +45 -26
- package/dist/routes/modifications.js.map +1 -1
- package/dist/scripts/react-instrumentation.js +300 -0
- package/dist/services/ComponentSearchService.d.ts +16 -2
- package/dist/services/ComponentSearchService.d.ts.map +1 -1
- package/dist/services/ComponentSearchService.js +180 -25
- package/dist/services/ComponentSearchService.js.map +1 -1
- package/dist/services/ImportResolverService.d.ts +30 -0
- package/dist/services/ImportResolverService.d.ts.map +1 -0
- package/dist/services/ImportResolverService.js +136 -0
- package/dist/services/ImportResolverService.js.map +1 -0
- package/dist/services/LLMService.d.ts +16 -4
- package/dist/services/LLMService.d.ts.map +1 -1
- package/dist/services/LLMService.js +26 -31
- package/dist/services/LLMService.js.map +1 -1
- package/dist/services/LocalGitService.d.ts.map +1 -1
- package/dist/services/LocalGitService.js +4 -2
- package/dist/services/LocalGitService.js.map +1 -1
- package/dist/services/ReactComponentPlugin.d.ts +44 -0
- package/dist/services/ReactComponentPlugin.d.ts.map +1 -0
- package/dist/services/ReactComponentPlugin.js +100 -0
- package/dist/services/ReactComponentPlugin.js.map +1 -0
- package/dist/types/change-types.d.ts +12 -1
- package/dist/types/change-types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/ui/dist/assets/{main-D1LQnQOA.js → main-iyRuIyoW.js} +83 -62
- package/src/ui/dist/assets/main-pN12Dur2.css +1 -0
- package/src/ui/dist/index.html +2 -2
- package/src/ui/dist/assets/main-BLFbFdUZ.css +0 -1
|
@@ -37,7 +37,7 @@ const createUserDevServerProxy = (userPort) => {
|
|
|
37
37
|
// Log outgoing proxy requests
|
|
38
38
|
const originalPath = req.url;
|
|
39
39
|
const proxiedPath = proxyReq.path;
|
|
40
|
-
log.
|
|
40
|
+
log.trace(`Proxying ${req.method} ${originalPath} -> ${proxiedPath} to localhost:${userPort}`);
|
|
41
41
|
},
|
|
42
42
|
error: (err, req, res) => {
|
|
43
43
|
log.error(`Proxy error for ${req.method} ${req.url}:`, err.message);
|
|
@@ -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,CAAC,QAAgB,EAAkB,EAAE;IAC3E,MAAM,YAAY,GAAY;QAC5B,MAAM,EAAE,oBAAoB,QAAQ,EAAE;QACtC,YAAY,EAAE,IAAI;QAClB,sEAAsE;QACtE,EAAE,EAAE;YACF,QAAQ,EAAE,CACR,QAAyB,EACzB,IAAqB,EACrB,IAAoB,EACpB,EAAE;gBACF,uDAAuD;gBACvD,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,YAAY,CAAC;gBAEnD,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,mEAAmE;wBACnE,IAAI,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;4BACpC,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,GAAG,CAAC,OAAO,CACvD,sBAAsB,EACtB,wBAAwB,CACzB,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC;gCACzC,GAAG,GAAG,0BAA0B,CAAC;wBACrC,CAAC;oBACH,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,
|
|
1
|
+
{"version":3,"file":"proxy-config.js","sourceRoot":"","sources":["../../src/proxy-middleware/proxy-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TelemetryService } from '../services/TelemetryService';
|
|
2
2
|
export type ComponentMatch = {
|
|
3
3
|
filePath: string;
|
|
4
|
-
|
|
4
|
+
depth?: number;
|
|
5
5
|
};
|
|
6
6
|
export declare const createComponentRouter: (projectPath: string, telemetry?: TelemetryService) => import("express-serve-static-core").Router;
|
|
7
7
|
//# sourceMappingURL=components.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/routes/components.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/routes/components.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAOhE,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAYF,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,EACnB,YAAY,gBAAgB,+CAqG7B,CAAC"}
|
|
@@ -6,6 +6,8 @@ exports.createComponentRouter = void 0;
|
|
|
6
6
|
const express_1 = require("express");
|
|
7
7
|
const index_core_1 = require("../index-core");
|
|
8
8
|
const log = (0, index_core_1.createLogger)('ComponentRoutes');
|
|
9
|
+
// These will be sent to the LLM as context
|
|
10
|
+
const MAX_FILE_MATCHES_PER_ELEMENT = 6;
|
|
9
11
|
const createComponentRouter = (projectPath, telemetry) => {
|
|
10
12
|
const router = (0, express_1.Router)();
|
|
11
13
|
// Component search endpoint
|
|
@@ -48,14 +50,17 @@ const createComponentRouter = (projectPath, telemetry) => {
|
|
|
48
50
|
resultCount: totalMatches,
|
|
49
51
|
searchTimeMs,
|
|
50
52
|
});
|
|
51
|
-
// Return elements with
|
|
53
|
+
// Return elements with filePaths populated from search results
|
|
52
54
|
const elementsWithFilePaths = elements
|
|
53
55
|
.map((element, index) => {
|
|
54
56
|
const result = results[index];
|
|
55
57
|
if (result && !result.error && result.matches.length > 0) {
|
|
58
|
+
const topMatches = result.matches.slice(0, MAX_FILE_MATCHES_PER_ELEMENT);
|
|
56
59
|
return {
|
|
57
60
|
...element,
|
|
58
|
-
|
|
61
|
+
filePaths: topMatches.map((m) => ({
|
|
62
|
+
filePath: m.filePath,
|
|
63
|
+
})),
|
|
59
64
|
};
|
|
60
65
|
}
|
|
61
66
|
log.info(`Cannot find file for element ${index}: ${element.tagName}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/routes/components.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,mFAAmF;;;AAEnF,qCAAiC;AACjC,8CAIuB;AAGvB,MAAM,GAAG,GAAG,IAAA,yBAAY,EAAC,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/routes/components.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modifications.d.ts","sourceRoot":"","sources":["../../src/routes/modifications.ts"],"names":[],"mappings":"AAOA,OAAO,EAIL,cAAc,EAIf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"modifications.d.ts","sourceRoot":"","sources":["../../src/routes/modifications.ts"],"names":[],"mappings":"AAOA,OAAO,EAIL,cAAc,EAIf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AA2T1E,eAAO,MAAM,wBAAwB,GACnC,gBAAgB,cAAc,GAAG,IAAI,EACrC,YAAY,gBAAgB,EAC5B,iBAAiB,qBAAqB,GAAG,IAAI,+CAuI9C,CAAC"}
|
|
@@ -94,41 +94,59 @@ const readComponentFile = async (filePath) => {
|
|
|
94
94
|
*/
|
|
95
95
|
const processMultiFileModifications = async (instruction, elements, temperature = 0.7, image, designTokens, onProgress) => {
|
|
96
96
|
try {
|
|
97
|
-
//
|
|
98
|
-
const
|
|
97
|
+
// Collect all unique file paths from all elements
|
|
98
|
+
const allFilePaths = new Set();
|
|
99
99
|
for (const element of elements) {
|
|
100
|
-
|
|
101
|
-
if (!filePath)
|
|
100
|
+
if (!element.filePaths || element.filePaths.length === 0) {
|
|
102
101
|
continue;
|
|
103
|
-
if (!elementsByFile.has(filePath)) {
|
|
104
|
-
elementsByFile.set(filePath, []);
|
|
105
102
|
}
|
|
106
|
-
|
|
103
|
+
// Add all files for this element
|
|
104
|
+
for (const fileMatch of element.filePaths) {
|
|
105
|
+
allFilePaths.add(fileMatch.filePath);
|
|
106
|
+
}
|
|
107
107
|
}
|
|
108
108
|
const llmService = new index_core_1.LLMService();
|
|
109
|
-
// Read all files upfront
|
|
109
|
+
// Read all files upfront
|
|
110
110
|
onProgress?.('Reading component files...');
|
|
111
|
-
const allContext = [];
|
|
112
111
|
const fileCodeMap = new Map();
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
log.info(`Reading ${allFilePaths.size} candidate files for LLM context`);
|
|
113
|
+
for (const filePath of allFilePaths) {
|
|
115
114
|
const readResult = await readComponentFile(filePath);
|
|
116
115
|
if (!readResult.success) {
|
|
116
|
+
log.warn(`Failed to read candidate file ${filePath}: ${readResult.details}`);
|
|
117
|
+
continue; // Skip failed reads
|
|
118
|
+
}
|
|
119
|
+
fileCodeMap.set(filePath, readResult.code);
|
|
120
|
+
}
|
|
121
|
+
// Build context: each element with all its candidate files
|
|
122
|
+
const allContext = [];
|
|
123
|
+
for (const element of elements) {
|
|
124
|
+
if (!element.filePaths || element.filePaths.length === 0) {
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
// Collect all candidate files for this element (filter out ones we couldn't read)
|
|
128
|
+
const candidateFiles = [];
|
|
129
|
+
for (const fileMatch of element.filePaths) {
|
|
130
|
+
const code = fileCodeMap.get(fileMatch.filePath);
|
|
131
|
+
if (code !== undefined) {
|
|
132
|
+
candidateFiles.push({
|
|
133
|
+
filePath: fileMatch.filePath,
|
|
134
|
+
code,
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
// Require at least one readable file
|
|
139
|
+
if (candidateFiles.length === 0) {
|
|
117
140
|
return {
|
|
118
141
|
success: false,
|
|
119
|
-
error: `Failed to read ${
|
|
120
|
-
details:
|
|
142
|
+
error: `Failed to read any files for element ${element.tagName}`,
|
|
143
|
+
details: 'No readable candidate files found',
|
|
121
144
|
};
|
|
122
145
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
element,
|
|
128
|
-
componentCode: readResult.code,
|
|
129
|
-
fileName: filePath,
|
|
130
|
-
});
|
|
131
|
-
}
|
|
146
|
+
allContext.push({
|
|
147
|
+
element,
|
|
148
|
+
candidateFiles,
|
|
149
|
+
});
|
|
132
150
|
}
|
|
133
151
|
// Make single LLM call with all elements
|
|
134
152
|
onProgress?.('Generating code modifications...');
|
|
@@ -145,7 +163,8 @@ const processMultiFileModifications = async (instruction, elements, temperature
|
|
|
145
163
|
const modifications = [];
|
|
146
164
|
for (const modResult of result.modifiedCode) {
|
|
147
165
|
const originalCode = fileCodeMap.get(modResult.filePath);
|
|
148
|
-
|
|
166
|
+
// Find all elements that have this file in their filePaths
|
|
167
|
+
const fileElements = elements.filter((el) => el.filePaths?.some((fp) => fp.filePath === modResult.filePath));
|
|
149
168
|
modifications.push({
|
|
150
169
|
filePath: modResult.filePath,
|
|
151
170
|
originalCode: originalCode || '', // Use original if available, empty string otherwise
|
|
@@ -230,7 +249,7 @@ const createModificationRouter = (sessionService, telemetry, electronBridge) =>
|
|
|
230
249
|
elementCount: elements?.length || 0,
|
|
231
250
|
instructionLength: instruction?.length || 0,
|
|
232
251
|
uniqueFiles: elements
|
|
233
|
-
? new Set(elements.
|
|
252
|
+
? new Set(elements.flatMap((el) => el.filePaths?.map((fp) => fp.filePath) || [])).size
|
|
234
253
|
: 0,
|
|
235
254
|
});
|
|
236
255
|
// Phase 1: Validation
|
|
@@ -246,10 +265,10 @@ const createModificationRouter = (sessionService, telemetry, electronBridge) =>
|
|
|
246
265
|
details: 'request.instruction must be a non-empty string',
|
|
247
266
|
});
|
|
248
267
|
}
|
|
249
|
-
const elementsWithoutPath = elements.filter((el) => !el.
|
|
268
|
+
const elementsWithoutPath = elements.filter((el) => !el.filePaths || el.filePaths.length === 0);
|
|
250
269
|
if (elementsWithoutPath.length > 0) {
|
|
251
270
|
return res.status(400).json({
|
|
252
|
-
error: 'All elements must have
|
|
271
|
+
error: 'All elements must have filePaths',
|
|
253
272
|
details: 'Ensure component search was successful for all selected elements',
|
|
254
273
|
});
|
|
255
274
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modifications.js","sourceRoot":"","sources":["../../src/routes/modifications.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"modifications.js","sourceRoot":"","sources":["../../src/routes/modifications.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
// React DevTools instrumentation for Rivet
|
|
2
|
+
// Uses bippy library for reliable React Fiber tree access
|
|
3
|
+
(function () {
|
|
4
|
+
'use strict';
|
|
5
|
+
|
|
6
|
+
console.log('[Rivet] React instrumentation loaded');
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Check if React is present on the page by looking for React fiber on any element
|
|
10
|
+
*/
|
|
11
|
+
function detectReact() {
|
|
12
|
+
// Check if any DOM element has React fiber attached
|
|
13
|
+
const elements = document.querySelectorAll('*');
|
|
14
|
+
for (let i = 0; i < elements.length; i++) {
|
|
15
|
+
const element = elements[i];
|
|
16
|
+
const hasFiber = Object.keys(element).some(
|
|
17
|
+
(key) =>
|
|
18
|
+
key.startsWith('__reactFiber$') ||
|
|
19
|
+
key.startsWith('__reactInternalInstance$'),
|
|
20
|
+
);
|
|
21
|
+
if (hasFiber) {
|
|
22
|
+
console.log('[Rivet] React detected on page');
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Load bippy library dynamically
|
|
31
|
+
*/
|
|
32
|
+
let bippyLoading = null;
|
|
33
|
+
async function loadBippy() {
|
|
34
|
+
if (window.Bippy) {
|
|
35
|
+
return window.Bippy;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// If already loading, wait for it
|
|
39
|
+
if (bippyLoading) {
|
|
40
|
+
return bippyLoading;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
bippyLoading = new Promise((resolve, reject) => {
|
|
44
|
+
try {
|
|
45
|
+
// Load bippy from CDN (exposes window.Bippy)
|
|
46
|
+
const script = document.createElement('script');
|
|
47
|
+
script.src = 'https://unpkg.com/bippy';
|
|
48
|
+
|
|
49
|
+
script.onload = () => {
|
|
50
|
+
console.log('[Rivet] Bippy library loaded');
|
|
51
|
+
resolve(window.Bippy);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
script.onerror = () => {
|
|
55
|
+
console.error('[Rivet] Failed to load bippy');
|
|
56
|
+
reject(new Error('Failed to load bippy'));
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
document.head.appendChild(script);
|
|
60
|
+
} catch (error) {
|
|
61
|
+
console.error('[Rivet] Error loading bippy:', error);
|
|
62
|
+
reject(error);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
return bippyLoading;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Find the React Fiber node for a DOM element using bippy
|
|
71
|
+
*/
|
|
72
|
+
async function getFiberFromElement(element) {
|
|
73
|
+
if (!element) return null;
|
|
74
|
+
|
|
75
|
+
try {
|
|
76
|
+
const Bippy = await loadBippy();
|
|
77
|
+
|
|
78
|
+
if (Bippy && Bippy.getNearestHostFiber) {
|
|
79
|
+
const fiber = Bippy.getNearestHostFiber(element);
|
|
80
|
+
if (fiber) {
|
|
81
|
+
console.log('[Rivet] Got fiber from bippy');
|
|
82
|
+
return fiber;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
} catch (error) {
|
|
86
|
+
console.warn('[Rivet] Error using bippy, falling back to manual:', error);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// Fallback to manual method
|
|
90
|
+
console.log('[Rivet] Using manual fiber extraction');
|
|
91
|
+
const fiberKey = Object.keys(element).find(
|
|
92
|
+
(key) =>
|
|
93
|
+
key.startsWith('__reactFiber$') ||
|
|
94
|
+
key.startsWith('__reactInternalInstance$') ||
|
|
95
|
+
key.startsWith('__reactProps$'),
|
|
96
|
+
);
|
|
97
|
+
|
|
98
|
+
if (fiberKey && fiberKey.startsWith('__reactFiber')) {
|
|
99
|
+
return element[fiberKey];
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
if (fiberKey && fiberKey.startsWith('__reactProps')) {
|
|
103
|
+
const fiberId = fiberKey.replace('__reactProps$', '__reactFiber$');
|
|
104
|
+
if (element[fiberId]) {
|
|
105
|
+
return element[fiberId];
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Walk up the Fiber tree to collect ALL parent components with source locations
|
|
114
|
+
*/
|
|
115
|
+
async function findAllComponentsInTree(fiber) {
|
|
116
|
+
if (!fiber) return [];
|
|
117
|
+
|
|
118
|
+
const components = [];
|
|
119
|
+
let current = fiber;
|
|
120
|
+
const seenFiles = new Set(); // Avoid duplicates
|
|
121
|
+
let nodeCount = 0;
|
|
122
|
+
let debugInfo = { nodesChecked: 0, nodesWithSource: 0, nodesWithType: 0 };
|
|
123
|
+
|
|
124
|
+
console.log('[Rivet] Walking React Fiber tree...');
|
|
125
|
+
|
|
126
|
+
// Try to load bippy for better component names
|
|
127
|
+
let Bippy = null;
|
|
128
|
+
try {
|
|
129
|
+
Bippy = await loadBippy();
|
|
130
|
+
} catch (e) {
|
|
131
|
+
console.log('[Rivet] Bippy not available, using manual names');
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
while (current && nodeCount < 50) {
|
|
135
|
+
// Limit to prevent infinite loops
|
|
136
|
+
nodeCount++;
|
|
137
|
+
debugInfo.nodesChecked++;
|
|
138
|
+
|
|
139
|
+
// Log fiber node properties for debugging
|
|
140
|
+
if (nodeCount <= 5) {
|
|
141
|
+
console.log(`[Rivet] Fiber node ${nodeCount}:`, {
|
|
142
|
+
type:
|
|
143
|
+
current.type?.name ||
|
|
144
|
+
current.type?.displayName ||
|
|
145
|
+
typeof current.type,
|
|
146
|
+
tag: current.tag,
|
|
147
|
+
hasDebugSource: !!current._debugSource,
|
|
148
|
+
hasDebugOwner: !!current._debugOwner,
|
|
149
|
+
debugSourceFile: current._debugSource?.fileName,
|
|
150
|
+
debugOwnerSourceFile: current._debugOwner?._debugSource?.fileName,
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// Check if this fiber has debug source (component source location)
|
|
155
|
+
const source = current._debugSource || current._debugOwner?._debugSource;
|
|
156
|
+
|
|
157
|
+
if (source && source.fileName) {
|
|
158
|
+
debugInfo.nodesWithSource++;
|
|
159
|
+
|
|
160
|
+
// Get component name - try bippy first for better names
|
|
161
|
+
let componentName = null;
|
|
162
|
+
if (Bippy && Bippy.getDisplayName) {
|
|
163
|
+
try {
|
|
164
|
+
componentName = Bippy.getDisplayName(current);
|
|
165
|
+
} catch (e) {
|
|
166
|
+
// Bippy failed, fall through to manual
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
// Fallback to manual name extraction
|
|
171
|
+
if (!componentName) {
|
|
172
|
+
if (current.type) {
|
|
173
|
+
debugInfo.nodesWithType++;
|
|
174
|
+
componentName = current.type.name || current.type.displayName;
|
|
175
|
+
} else if (current._debugOwner?.type) {
|
|
176
|
+
componentName =
|
|
177
|
+
current._debugOwner.type.name ||
|
|
178
|
+
current._debugOwner.type.displayName;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
// Only add if we haven't seen this file yet
|
|
183
|
+
const fileKey = `${source.fileName}:${source.lineNumber}`;
|
|
184
|
+
if (!seenFiles.has(fileKey)) {
|
|
185
|
+
seenFiles.add(fileKey);
|
|
186
|
+
components.push({
|
|
187
|
+
filePath: source.fileName,
|
|
188
|
+
line: source.lineNumber,
|
|
189
|
+
column: source.columnNumber,
|
|
190
|
+
componentName: componentName || 'Unknown',
|
|
191
|
+
});
|
|
192
|
+
console.log(
|
|
193
|
+
`[Rivet] Found component: ${componentName || 'Unknown'} at ${source.fileName}:${source.lineNumber}`,
|
|
194
|
+
);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// Move up the tree (return fiber -> parent fiber)
|
|
199
|
+
current = current.return;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
console.log('[Rivet] Fiber tree walk complete:', debugInfo);
|
|
203
|
+
|
|
204
|
+
return components;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Extract component information from a DOM element
|
|
209
|
+
* Returns ALL parent components in the tree hierarchy
|
|
210
|
+
*/
|
|
211
|
+
async function getComponentInfo(element) {
|
|
212
|
+
if (!element || !(element instanceof HTMLElement)) {
|
|
213
|
+
return null;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
try {
|
|
217
|
+
// Find the fiber node for this element (async with bippy)
|
|
218
|
+
const fiber = await getFiberFromElement(element);
|
|
219
|
+
if (!fiber) {
|
|
220
|
+
console.warn('[Rivet] No fiber found for element:', element);
|
|
221
|
+
return null;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
// Find ALL components in the fiber tree (async with bippy)
|
|
225
|
+
const components = await findAllComponentsInTree(fiber);
|
|
226
|
+
if (components.length === 0) {
|
|
227
|
+
console.warn('[Rivet] No component source found for element:', element);
|
|
228
|
+
return null;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// Clean file paths for all components
|
|
232
|
+
const cleanedComponents = components.map((comp) => {
|
|
233
|
+
let filePath = comp.filePath;
|
|
234
|
+
|
|
235
|
+
// Remove webpack prefixes like "webpack://" or "webpack-internal:///"
|
|
236
|
+
filePath = filePath.replace(/^webpack(-internal)?:\/\/\//, '');
|
|
237
|
+
filePath = filePath.replace(/^\.\//, '');
|
|
238
|
+
|
|
239
|
+
// For Create React App and similar, remove the leading dot-slash
|
|
240
|
+
if (filePath.startsWith('./')) {
|
|
241
|
+
filePath = filePath.substring(2);
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
return {
|
|
245
|
+
filePath,
|
|
246
|
+
line: comp.line,
|
|
247
|
+
column: comp.column,
|
|
248
|
+
componentName: comp.componentName,
|
|
249
|
+
};
|
|
250
|
+
});
|
|
251
|
+
|
|
252
|
+
console.log(
|
|
253
|
+
`[Rivet] Found ${cleanedComponents.length} components in tree:`,
|
|
254
|
+
cleanedComponents,
|
|
255
|
+
);
|
|
256
|
+
|
|
257
|
+
// Return the component hierarchy
|
|
258
|
+
return {
|
|
259
|
+
components: cleanedComponents,
|
|
260
|
+
// Primary component is the first (closest to selected element)
|
|
261
|
+
primaryComponent: cleanedComponents[0],
|
|
262
|
+
};
|
|
263
|
+
} catch (error) {
|
|
264
|
+
console.error('[Rivet] Error extracting component info:', error);
|
|
265
|
+
return null;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
* Check if React is available
|
|
271
|
+
*/
|
|
272
|
+
function isReactAvailable() {
|
|
273
|
+
return detectReact();
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
// Try to detect React on page load
|
|
277
|
+
if (document.readyState === 'loading') {
|
|
278
|
+
document.addEventListener('DOMContentLoaded', () => {
|
|
279
|
+
if (detectReact()) {
|
|
280
|
+
console.log('[Rivet] React instrumentation ready');
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
} else {
|
|
284
|
+
// Page already loaded, check now
|
|
285
|
+
if (detectReact()) {
|
|
286
|
+
console.log('[Rivet] React instrumentation ready');
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
// Expose API on window
|
|
291
|
+
window.__RIVET_REACT__ = {
|
|
292
|
+
getComponentInfo,
|
|
293
|
+
isReactAvailable,
|
|
294
|
+
version: '1.0.0',
|
|
295
|
+
};
|
|
296
|
+
|
|
297
|
+
console.log(
|
|
298
|
+
'[Rivet] React instrumentation API exposed on window.__RIVET_REACT__',
|
|
299
|
+
);
|
|
300
|
+
})();
|
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import { ComponentMatch } from '../routes/components';
|
|
2
|
+
import { ComponentNode } from '../types/change-types';
|
|
2
3
|
export declare class ComponentSearchService {
|
|
3
4
|
private log;
|
|
4
5
|
/**
|
|
5
|
-
*
|
|
6
|
-
|
|
6
|
+
* Extract meaningful classNames from element, filtering out common utilities
|
|
7
|
+
*/
|
|
8
|
+
private extractMeaningfulClassNames;
|
|
9
|
+
/**
|
|
10
|
+
* Capitalize first letter for component name matching
|
|
11
|
+
*/
|
|
12
|
+
private capitalize;
|
|
13
|
+
/**
|
|
14
|
+
* Find component files by searching for component definitions
|
|
15
|
+
* Searches all tsx/jsx files for export patterns matching component names
|
|
16
|
+
*/
|
|
17
|
+
findComponentsByName(projectPath: string, componentTree: ComponentNode[]): Promise<ComponentMatch[]>;
|
|
18
|
+
/**
|
|
19
|
+
* Find components that contain the selected element's className, id, or tag
|
|
20
|
+
* Prioritizes Fiber-based component tree search when available
|
|
7
21
|
*/
|
|
8
22
|
findMatchingComponents(projectPath: string, element: any): Promise<ComponentMatch[]>;
|
|
9
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentSearchService.d.ts","sourceRoot":"","sources":["../../src/services/ComponentSearchService.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"ComponentSearchService.d.ts","sourceRoot":"","sources":["../../src/services/ComponentSearchService.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AA0BtD,qBAAa,sBAAsB;IACjC,OAAO,CAAC,GAAG,CAA0C;IAErD;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAcnC;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;;OAGG;IACG,oBAAoB,CACxB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,EAAE,GAC7B,OAAO,CAAC,cAAc,EAAE,CAAC;IAoG5B;;;OAGG;IACG,sBAAsB,CAC1B,WAAW,EAAE,MAAM,EAEnB,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,cAAc,EAAE,CAAC;CAwH7B"}
|