rivet-design 0.21.9 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/README.npm.md +5 -1
- package/bin/rivet.js +4 -0
- package/dist/agent-variants/PreviewRuntime.d.ts.map +1 -1
- package/dist/agent-variants/PreviewRuntime.js +3 -5
- package/dist/agent-variants/PreviewRuntime.js.map +1 -1
- package/dist/agent-variants/SessionStore.d.ts +21 -2
- package/dist/agent-variants/SessionStore.d.ts.map +1 -1
- package/dist/agent-variants/SessionStore.js +88 -71
- package/dist/agent-variants/SessionStore.js.map +1 -1
- package/dist/agent-variants/VariantWorkspaceManager.d.ts.map +1 -1
- package/dist/agent-variants/VariantWorkspaceManager.js +8 -14
- package/dist/agent-variants/VariantWorkspaceManager.js.map +1 -1
- package/dist/agent-variants/WorkspaceProvisioning.d.ts.map +1 -1
- package/dist/agent-variants/WorkspaceProvisioning.js +32 -21
- package/dist/agent-variants/WorkspaceProvisioning.js.map +1 -1
- package/dist/agent-variants/WorktreeOrchestrator.d.ts +7 -37
- package/dist/agent-variants/WorktreeOrchestrator.d.ts.map +1 -1
- package/dist/agent-variants/WorktreeOrchestrator.js +148 -103
- package/dist/agent-variants/WorktreeOrchestrator.js.map +1 -1
- package/dist/agent-variants/contextAssets.d.ts.map +1 -1
- package/dist/agent-variants/contextAssets.js +2 -8
- package/dist/agent-variants/contextAssets.js.map +1 -1
- package/dist/agent-variants/contracts.d.ts +103 -63
- package/dist/agent-variants/contracts.d.ts.map +1 -1
- package/dist/agent-variants/contracts.js.map +1 -1
- package/dist/agent-variants/staticPreviewFiles.d.ts +33 -0
- package/dist/agent-variants/staticPreviewFiles.d.ts.map +1 -0
- package/dist/agent-variants/staticPreviewFiles.js +109 -0
- package/dist/agent-variants/staticPreviewFiles.js.map +1 -0
- package/dist/agent-variants/staticPreviewRefinements.d.ts.map +1 -1
- package/dist/agent-variants/staticPreviewRefinements.js +3 -3
- package/dist/agent-variants/staticPreviewRefinements.js.map +1 -1
- package/dist/agent-variants/variantContext.d.ts.map +1 -1
- package/dist/agent-variants/variantContext.js +2 -8
- package/dist/agent-variants/variantContext.js.map +1 -1
- package/dist/agent-variants/variantWorkspaceFiles.d.ts +0 -1
- package/dist/agent-variants/variantWorkspaceFiles.d.ts.map +1 -1
- package/dist/agent-variants/variantWorkspaceFiles.js +5 -10
- package/dist/agent-variants/variantWorkspaceFiles.js.map +1 -1
- package/dist/agent-variants/workItemBriefing.d.ts.map +1 -1
- package/dist/agent-variants/workItemBriefing.js +4 -0
- package/dist/agent-variants/workItemBriefing.js.map +1 -1
- package/dist/agent-variants/workItemInput.d.ts +5950 -0
- package/dist/agent-variants/workItemInput.d.ts.map +1 -0
- package/dist/agent-variants/workItemInput.js +76 -0
- package/dist/agent-variants/workItemInput.js.map +1 -0
- package/dist/agent-variants/workItemPreviewRoutes.d.ts +23 -0
- package/dist/agent-variants/workItemPreviewRoutes.d.ts.map +1 -0
- package/dist/agent-variants/workItemPreviewRoutes.js +95 -0
- package/dist/agent-variants/workItemPreviewRoutes.js.map +1 -0
- package/dist/cli/handoff.d.ts +5 -0
- package/dist/cli/handoff.d.ts.map +1 -1
- package/dist/cli/handoff.js +13 -10
- package/dist/cli/handoff.js.map +1 -1
- package/dist/config/proxy.d.ts +3 -0
- package/dist/config/proxy.d.ts.map +1 -1
- package/dist/config/proxy.js +7 -5
- package/dist/config/proxy.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +46 -7
- package/dist/index.js.map +1 -1
- package/dist/install/agentSkill.d.ts +16 -0
- package/dist/install/agentSkill.d.ts.map +1 -0
- package/dist/install/agentSkill.js +54 -0
- package/dist/install/agentSkill.js.map +1 -0
- package/dist/install/allowlists.d.ts +3 -1
- package/dist/install/allowlists.d.ts.map +1 -1
- package/dist/install/allowlists.js +89 -27
- package/dist/install/allowlists.js.map +1 -1
- package/dist/install/automaticCliUpdate.d.ts.map +1 -1
- package/dist/install/automaticCliUpdate.js +6 -11
- package/dist/install/automaticCliUpdate.js.map +1 -1
- package/dist/install/channelCli.d.ts.map +1 -1
- package/dist/install/channelCli.js +2 -37
- package/dist/install/channelCli.js.map +1 -1
- package/dist/install/channelManager.d.ts +2 -1
- package/dist/install/channelManager.d.ts.map +1 -1
- package/dist/install/channelManager.js +23 -20
- package/dist/install/channelManager.js.map +1 -1
- package/dist/install/codexSkill.d.ts +1 -8
- package/dist/install/codexSkill.d.ts.map +1 -1
- package/dist/install/codexSkill.js +9 -50
- package/dist/install/codexSkill.js.map +1 -1
- package/dist/install/cursorSkill.d.ts +6 -0
- package/dist/install/cursorSkill.d.ts.map +1 -0
- package/dist/install/cursorSkill.js +36 -0
- package/dist/install/cursorSkill.js.map +1 -0
- package/dist/install/globalBootstrap.d.ts +3 -2
- package/dist/install/globalBootstrap.d.ts.map +1 -1
- package/dist/install/globalBootstrap.js +9 -41
- package/dist/install/globalBootstrap.js.map +1 -1
- package/dist/install/harnesses.d.ts +27 -0
- package/dist/install/harnesses.d.ts.map +1 -1
- package/dist/install/harnesses.js +174 -76
- package/dist/install/harnesses.js.map +1 -1
- package/dist/library/importFiles.d.ts.map +1 -1
- package/dist/library/importFiles.js +3 -3
- package/dist/library/importFiles.js.map +1 -1
- package/dist/prototype-host.js +2 -1
- package/dist/prototype-host.js.map +1 -1
- package/dist/proxy-middleware/proxy-config.d.ts +10 -0
- package/dist/proxy-middleware/proxy-config.d.ts.map +1 -1
- package/dist/proxy-middleware/proxy-config.js +20 -29
- package/dist/proxy-middleware/proxy-config.js.map +1 -1
- package/dist/routes/agentVariants.d.ts +1 -5
- package/dist/routes/agentVariants.d.ts.map +1 -1
- package/dist/routes/agentVariants.js +42 -85
- package/dist/routes/agentVariants.js.map +1 -1
- package/dist/routes/library/staticPreview.d.ts.map +1 -1
- package/dist/routes/library/staticPreview.js +9 -7
- package/dist/routes/library/staticPreview.js.map +1 -1
- package/dist/routes/prototypeHost.d.ts.map +1 -1
- package/dist/routes/prototypeHost.js +3 -3
- package/dist/routes/prototypeHost.js.map +1 -1
- package/dist/routes/staticPreviewPolicy.d.ts +13 -0
- package/dist/routes/staticPreviewPolicy.d.ts.map +1 -0
- package/dist/routes/staticPreviewPolicy.js +61 -0
- package/dist/routes/staticPreviewPolicy.js.map +1 -0
- package/dist/routes/variantRequestSchema.d.ts +4 -4
- package/dist/services/AuthService.js +3 -3
- package/dist/services/AuthService.js.map +1 -1
- package/dist/services/BundleStore.d.ts.map +1 -1
- package/dist/services/BundleStore.js +4 -8
- package/dist/services/BundleStore.js.map +1 -1
- package/dist/services/DependencyPreparationService.d.ts.map +1 -1
- package/dist/services/DependencyPreparationService.js +4 -3
- package/dist/services/DependencyPreparationService.js.map +1 -1
- package/dist/services/OperatingSystemServices.d.ts +5 -0
- package/dist/services/OperatingSystemServices.d.ts.map +1 -1
- package/dist/services/OperatingSystemServices.js +9 -3
- package/dist/services/OperatingSystemServices.js.map +1 -1
- package/dist/services/ProjectImport.d.ts.map +1 -1
- package/dist/services/ProjectImport.js +2 -1
- package/dist/services/ProjectImport.js.map +1 -1
- package/dist/services/ProjectPackageManager.d.ts +0 -1
- package/dist/services/ProjectPackageManager.d.ts.map +1 -1
- package/dist/services/ProjectPackageManager.js +5 -12
- package/dist/services/ProjectPackageManager.js.map +1 -1
- package/dist/services/PrototypeBuildService.d.ts.map +1 -1
- package/dist/services/PrototypeBuildService.js +10 -6
- package/dist/services/PrototypeBuildService.js.map +1 -1
- package/dist/services/VariantHistoryService.d.ts +3 -0
- package/dist/services/VariantHistoryService.d.ts.map +1 -1
- package/dist/services/VariantHistoryService.js +36 -12
- package/dist/services/VariantHistoryService.js.map +1 -1
- package/dist/services/WorktreeManager.d.ts.map +1 -1
- package/dist/services/WorktreeManager.js +4 -4
- package/dist/services/WorktreeManager.js.map +1 -1
- package/dist/services/packageManagerProcess.d.ts +20 -0
- package/dist/services/packageManagerProcess.d.ts.map +1 -0
- package/dist/services/packageManagerProcess.js +55 -0
- package/dist/services/packageManagerProcess.js.map +1 -0
- package/dist/services/referenceImages.d.ts.map +1 -1
- package/dist/services/referenceImages.js +4 -4
- package/dist/services/referenceImages.js.map +1 -1
- package/dist/services/staticProjectTarget.d.ts.map +1 -1
- package/dist/services/staticProjectTarget.js +3 -5
- package/dist/services/staticProjectTarget.js.map +1 -1
- package/dist/storage/library/ProjectPreviewCache.d.ts +2 -2
- package/dist/types/preview-routes.d.ts +6 -0
- package/dist/types/preview-routes.d.ts.map +1 -0
- package/dist/types/preview-routes.js +35 -0
- package/dist/types/preview-routes.js.map +1 -0
- package/dist/types/variant-history.d.ts +6 -0
- package/dist/types/variant-history.d.ts.map +1 -1
- package/dist/utils/pathContainment.d.ts +15 -0
- package/dist/utils/pathContainment.d.ts.map +1 -0
- package/dist/utils/pathContainment.js +46 -0
- package/dist/utils/pathContainment.js.map +1 -0
- package/dist/utils/skillWriter.d.ts +5 -2
- package/dist/utils/skillWriter.d.ts.map +1 -1
- package/dist/utils/skillWriter.js +93 -34
- package/dist/utils/skillWriter.js.map +1 -1
- package/dist/utils/staticPreviewPage.d.ts +11 -0
- package/dist/utils/staticPreviewPage.d.ts.map +1 -0
- package/dist/utils/staticPreviewPage.js +40 -0
- package/dist/utils/staticPreviewPage.js.map +1 -0
- package/package.json +6 -2
- package/src/ui/dist/assets/{LibraryEntry-BaphzdNv.js → LibraryEntry-CjxmVfhv.js} +8 -8
- package/src/ui/dist/assets/main-CdSzrhWD.js +435 -0
- package/src/ui/dist/assets/main-DVb3ws41.css +1 -0
- package/src/ui/dist/index.html +2 -2
- package/dist/agent-variants/elementRefToTarget.d.ts +0 -4
- package/dist/agent-variants/elementRefToTarget.d.ts.map +0 -1
- package/dist/agent-variants/elementRefToTarget.js +0 -30
- package/dist/agent-variants/elementRefToTarget.js.map +0 -1
- package/dist/prompts/commentVariationPromptConfig.d.ts +0 -7
- package/dist/prompts/commentVariationPromptConfig.d.ts.map +0 -1
- package/dist/prompts/commentVariationPromptConfig.js +0 -12
- package/dist/prompts/commentVariationPromptConfig.js.map +0 -1
- package/dist/prompts/commentVariationPromptSnapshot.d.ts +0 -3
- package/dist/prompts/commentVariationPromptSnapshot.d.ts.map +0 -1
- package/dist/prompts/commentVariationPromptSnapshot.js +0 -31
- package/dist/prompts/commentVariationPromptSnapshot.js.map +0 -1
- package/dist/prompts/commentVariationPrompts.d.ts +0 -7
- package/dist/prompts/commentVariationPrompts.d.ts.map +0 -1
- package/dist/prompts/commentVariationPrompts.js +0 -54
- package/dist/prompts/commentVariationPrompts.js.map +0 -1
- package/dist/services/adapters/TailwindTokenAdapter.d.ts +0 -17
- package/dist/services/adapters/TailwindTokenAdapter.d.ts.map +0 -1
- package/dist/services/adapters/TailwindTokenAdapter.js +0 -284
- package/dist/services/adapters/TailwindTokenAdapter.js.map +0 -1
- package/dist/services/extractors/CSSVariableExtractor.d.ts +0 -10
- package/dist/services/extractors/CSSVariableExtractor.d.ts.map +0 -1
- package/dist/services/extractors/CSSVariableExtractor.js +0 -110
- package/dist/services/extractors/CSSVariableExtractor.js.map +0 -1
- package/dist/services/staticStarter.d.ts +0 -3
- package/dist/services/staticStarter.d.ts.map +0 -1
- package/dist/services/staticStarter.js +0 -129
- package/dist/services/staticStarter.js.map +0 -1
- package/dist/utils/elementFileHintSignals.d.ts +0 -3
- package/dist/utils/elementFileHintSignals.d.ts.map +0 -1
- package/dist/utils/elementFileHintSignals.js +0 -35
- package/dist/utils/elementFileHintSignals.js.map +0 -1
- package/dist/utils/formatElementTargetingContext.d.ts +0 -28
- package/dist/utils/formatElementTargetingContext.d.ts.map +0 -1
- package/dist/utils/formatElementTargetingContext.js +0 -82
- package/dist/utils/formatElementTargetingContext.js.map +0 -1
- package/dist/utils/variantPreviewPort.d.ts +0 -15
- package/dist/utils/variantPreviewPort.d.ts.map +0 -1
- package/dist/utils/variantPreviewPort.js +0 -25
- package/dist/utils/variantPreviewPort.js.map +0 -1
- package/src/ui/dist/assets/main-CVCXVenP.js +0 -435
- package/src/ui/dist/assets/main-vcYlLdli.css +0 -1
|
@@ -1,284 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.TailwindTokenAdapter = void 0;
|
|
37
|
-
const ts = __importStar(require("typescript"));
|
|
38
|
-
const fs = __importStar(require("fs"));
|
|
39
|
-
const path = __importStar(require("path"));
|
|
40
|
-
const glob_1 = require("glob");
|
|
41
|
-
const logger_1 = require("../../utils/logger");
|
|
42
|
-
const CSSVariableExtractor_1 = require("../extractors/CSSVariableExtractor");
|
|
43
|
-
const log = (0, logger_1.createLogger)('TailwindTokenAdapter');
|
|
44
|
-
class TailwindTokenAdapter {
|
|
45
|
-
CONFIG_FILENAMES = [
|
|
46
|
-
'tailwind.config.ts',
|
|
47
|
-
'tailwind.config.js',
|
|
48
|
-
'tailwind.config.cjs',
|
|
49
|
-
'tailwind.config.mjs',
|
|
50
|
-
];
|
|
51
|
-
SUPPORTED_CATEGORIES = [
|
|
52
|
-
'colors',
|
|
53
|
-
'spacing',
|
|
54
|
-
'fontSize',
|
|
55
|
-
'borderRadius',
|
|
56
|
-
'boxShadow',
|
|
57
|
-
'fontFamily',
|
|
58
|
-
];
|
|
59
|
-
detect(projectRoot) {
|
|
60
|
-
try {
|
|
61
|
-
const pattern = '**/tailwind.config.{js,ts,cjs,mjs}';
|
|
62
|
-
const matches = glob_1.glob.sync(pattern, {
|
|
63
|
-
cwd: projectRoot,
|
|
64
|
-
ignore: [
|
|
65
|
-
'**/node_modules/**',
|
|
66
|
-
'**/.git/**',
|
|
67
|
-
'**/dist/**',
|
|
68
|
-
'**/build/**',
|
|
69
|
-
],
|
|
70
|
-
nodir: true,
|
|
71
|
-
});
|
|
72
|
-
return matches.length > 0;
|
|
73
|
-
}
|
|
74
|
-
catch (error) {
|
|
75
|
-
log.warn('Error detecting Tailwind config:', error);
|
|
76
|
-
return false;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
extract(projectRoot, configPath) {
|
|
80
|
-
const resolvedConfigPath = configPath
|
|
81
|
-
? path.resolve(projectRoot, configPath)
|
|
82
|
-
: this.findConfigPath(projectRoot);
|
|
83
|
-
if (!resolvedConfigPath) {
|
|
84
|
-
log.warn('No Tailwind config file found');
|
|
85
|
-
return null;
|
|
86
|
-
}
|
|
87
|
-
try {
|
|
88
|
-
log.info(`Parsing Tailwind config: ${resolvedConfigPath}`);
|
|
89
|
-
const sourceCode = fs.readFileSync(resolvedConfigPath, 'utf-8');
|
|
90
|
-
const sourceFile = ts.createSourceFile(resolvedConfigPath, sourceCode, ts.ScriptTarget.Latest, true);
|
|
91
|
-
const themeExtend = this.extractThemeExtend(sourceFile);
|
|
92
|
-
if (!themeExtend) {
|
|
93
|
-
log.warn('No theme.extend found in Tailwind config');
|
|
94
|
-
return null;
|
|
95
|
-
}
|
|
96
|
-
const registry = this.buildTokenRegistry(themeExtend);
|
|
97
|
-
const cssExtractor = new CSSVariableExtractor_1.CSSVariableExtractor(projectRoot);
|
|
98
|
-
const cssVariables = cssExtractor.extract();
|
|
99
|
-
if (cssVariables.size > 0) {
|
|
100
|
-
log.info(`Resolving CSS variables (${cssVariables.size} variables found)`);
|
|
101
|
-
this.resolveCSSVariables(registry, cssVariables, cssExtractor);
|
|
102
|
-
}
|
|
103
|
-
return registry;
|
|
104
|
-
}
|
|
105
|
-
catch (error) {
|
|
106
|
-
log.warn('Failed to parse Tailwind config:', error);
|
|
107
|
-
return null;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
getFramework() {
|
|
111
|
-
return 'tailwind';
|
|
112
|
-
}
|
|
113
|
-
getConfigPath(projectRoot, configPath) {
|
|
114
|
-
return configPath
|
|
115
|
-
? path.resolve(projectRoot, configPath)
|
|
116
|
-
: this.findConfigPath(projectRoot);
|
|
117
|
-
}
|
|
118
|
-
findConfigPath(projectRoot) {
|
|
119
|
-
try {
|
|
120
|
-
const pattern = '**/tailwind.config.{js,ts,cjs,mjs}';
|
|
121
|
-
const matches = glob_1.glob.sync(pattern, {
|
|
122
|
-
cwd: projectRoot,
|
|
123
|
-
absolute: true,
|
|
124
|
-
ignore: [
|
|
125
|
-
'**/node_modules/**',
|
|
126
|
-
'**/.git/**',
|
|
127
|
-
'**/dist/**',
|
|
128
|
-
'**/build/**',
|
|
129
|
-
],
|
|
130
|
-
nodir: true,
|
|
131
|
-
});
|
|
132
|
-
if (matches.length === 0) {
|
|
133
|
-
return null;
|
|
134
|
-
}
|
|
135
|
-
const rootConfig = matches.find((match) => {
|
|
136
|
-
const relativePath = path.relative(projectRoot, match);
|
|
137
|
-
return !relativePath.includes(path.sep);
|
|
138
|
-
});
|
|
139
|
-
return rootConfig || matches[0];
|
|
140
|
-
}
|
|
141
|
-
catch (error) {
|
|
142
|
-
log.warn('Error searching for Tailwind config:', error);
|
|
143
|
-
return null;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
extractThemeExtend(sourceFile) {
|
|
147
|
-
let themeExtendNode = null;
|
|
148
|
-
const visit = (node) => {
|
|
149
|
-
if (ts.isPropertyAssignment(node)) {
|
|
150
|
-
const name = node.name.getText(sourceFile);
|
|
151
|
-
if (name === 'theme' &&
|
|
152
|
-
ts.isObjectLiteralExpression(node.initializer)) {
|
|
153
|
-
node.initializer.properties.forEach((prop) => {
|
|
154
|
-
if (ts.isPropertyAssignment(prop) &&
|
|
155
|
-
prop.name.getText(sourceFile) === 'extend' &&
|
|
156
|
-
ts.isObjectLiteralExpression(prop.initializer)) {
|
|
157
|
-
themeExtendNode = prop.initializer;
|
|
158
|
-
}
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
ts.forEachChild(node, visit);
|
|
163
|
-
};
|
|
164
|
-
visit(sourceFile);
|
|
165
|
-
return themeExtendNode;
|
|
166
|
-
}
|
|
167
|
-
buildTokenRegistry(themeExtend) {
|
|
168
|
-
const registry = {
|
|
169
|
-
colors: {},
|
|
170
|
-
spacing: {},
|
|
171
|
-
fontSize: {},
|
|
172
|
-
borderRadius: {},
|
|
173
|
-
boxShadow: {},
|
|
174
|
-
fontFamily: {},
|
|
175
|
-
};
|
|
176
|
-
themeExtend.properties.forEach((prop) => {
|
|
177
|
-
if (!ts.isPropertyAssignment(prop))
|
|
178
|
-
return;
|
|
179
|
-
const categoryName = prop.name.getText();
|
|
180
|
-
if (!this.SUPPORTED_CATEGORIES.includes(categoryName))
|
|
181
|
-
return;
|
|
182
|
-
const category = categoryName;
|
|
183
|
-
const tokens = this.parseTokenCategory(prop.initializer);
|
|
184
|
-
if (tokens) {
|
|
185
|
-
registry[category] = tokens;
|
|
186
|
-
}
|
|
187
|
-
});
|
|
188
|
-
return registry;
|
|
189
|
-
}
|
|
190
|
-
parseTokenCategory(node) {
|
|
191
|
-
if (!ts.isObjectLiteralExpression(node))
|
|
192
|
-
return null;
|
|
193
|
-
const tokens = {};
|
|
194
|
-
node.properties.forEach((prop) => {
|
|
195
|
-
if (!ts.isPropertyAssignment(prop))
|
|
196
|
-
return;
|
|
197
|
-
const tokenName = this.getPropertyName(prop.name);
|
|
198
|
-
if (!tokenName)
|
|
199
|
-
return;
|
|
200
|
-
const value = this.parseTokenValue(prop.initializer);
|
|
201
|
-
if (value !== null) {
|
|
202
|
-
tokens[tokenName] = value;
|
|
203
|
-
}
|
|
204
|
-
});
|
|
205
|
-
return tokens;
|
|
206
|
-
}
|
|
207
|
-
parseTokenValue(node) {
|
|
208
|
-
if (ts.isStringLiteral(node)) {
|
|
209
|
-
return node.text;
|
|
210
|
-
}
|
|
211
|
-
if (ts.isNoSubstitutionTemplateLiteral(node)) {
|
|
212
|
-
return node.text;
|
|
213
|
-
}
|
|
214
|
-
if (ts.isTemplateExpression(node)) {
|
|
215
|
-
let result = node.head.text;
|
|
216
|
-
for (const span of node.templateSpans) {
|
|
217
|
-
result += span.literal.text;
|
|
218
|
-
}
|
|
219
|
-
return result;
|
|
220
|
-
}
|
|
221
|
-
if (ts.isArrayLiteralExpression(node)) {
|
|
222
|
-
const elements = [];
|
|
223
|
-
for (const element of node.elements) {
|
|
224
|
-
if (ts.isStringLiteral(element)) {
|
|
225
|
-
elements.push(element.text);
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
return elements.length > 0 ? elements.join(', ') : null;
|
|
229
|
-
}
|
|
230
|
-
if (ts.isObjectLiteralExpression(node)) {
|
|
231
|
-
const nested = {};
|
|
232
|
-
node.properties.forEach((prop) => {
|
|
233
|
-
if (!ts.isPropertyAssignment(prop))
|
|
234
|
-
return;
|
|
235
|
-
const key = this.getPropertyName(prop.name);
|
|
236
|
-
if (!key)
|
|
237
|
-
return;
|
|
238
|
-
const value = this.parseTokenValue(prop.initializer);
|
|
239
|
-
if (typeof value === 'string') {
|
|
240
|
-
nested[key] = value;
|
|
241
|
-
}
|
|
242
|
-
});
|
|
243
|
-
return Object.keys(nested).length > 0 ? nested : null;
|
|
244
|
-
}
|
|
245
|
-
return null;
|
|
246
|
-
}
|
|
247
|
-
getPropertyName(name) {
|
|
248
|
-
if (ts.isIdentifier(name)) {
|
|
249
|
-
return name.text;
|
|
250
|
-
}
|
|
251
|
-
if (ts.isStringLiteral(name)) {
|
|
252
|
-
return name.text;
|
|
253
|
-
}
|
|
254
|
-
if (ts.isNumericLiteral(name)) {
|
|
255
|
-
return name.text;
|
|
256
|
-
}
|
|
257
|
-
return null;
|
|
258
|
-
}
|
|
259
|
-
resolveCSSVariables(registry, variables, extractor) {
|
|
260
|
-
for (const category of Object.keys(registry)) {
|
|
261
|
-
const tokens = registry[category];
|
|
262
|
-
for (const [tokenName, tokenValue] of Object.entries(tokens)) {
|
|
263
|
-
if (typeof tokenValue === 'string') {
|
|
264
|
-
const resolved = extractor.resolveValue(tokenValue, variables);
|
|
265
|
-
if (resolved !== tokenValue) {
|
|
266
|
-
tokens[tokenName] = resolved;
|
|
267
|
-
log.debug(`Resolved ${category}.${tokenName}: ${tokenValue} -> ${resolved}`);
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
else if (typeof tokenValue === 'object') {
|
|
271
|
-
for (const [shade, shadeValue] of Object.entries(tokenValue)) {
|
|
272
|
-
const resolved = extractor.resolveValue(shadeValue, variables);
|
|
273
|
-
if (resolved !== shadeValue) {
|
|
274
|
-
tokenValue[shade] = resolved;
|
|
275
|
-
log.debug(`Resolved ${category}.${tokenName}.${shade}: ${shadeValue} -> ${resolved}`);
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
exports.TailwindTokenAdapter = TailwindTokenAdapter;
|
|
284
|
-
//# sourceMappingURL=TailwindTokenAdapter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TailwindTokenAdapter.js","sourceRoot":"","sources":["../../../src/services/adapters/TailwindTokenAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export declare class CSSVariableExtractor {
|
|
2
|
-
private projectRoot;
|
|
3
|
-
constructor(projectRoot: string);
|
|
4
|
-
extract(): Map<string, string>;
|
|
5
|
-
private findCSSFiles;
|
|
6
|
-
private parseCSSVariables;
|
|
7
|
-
private extractVariablesFromBlock;
|
|
8
|
-
resolveValue(tokenValue: string, variables: Map<string, string>): string;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=CSSVariableExtractor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CSSVariableExtractor.d.ts","sourceRoot":"","sources":["../../../src/services/extractors/CSSVariableExtractor.ts"],"names":[],"mappings":"AAOA,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM;IAI/B,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IA0B9B,OAAO,CAAC,YAAY;IAsCpB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,yBAAyB;IAejC,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM;CAczE"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CSSVariableExtractor = void 0;
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const logger_1 = require("../../utils/logger");
|
|
10
|
-
const log = (0, logger_1.createLogger)('CSSVariableExtractor');
|
|
11
|
-
class CSSVariableExtractor {
|
|
12
|
-
projectRoot;
|
|
13
|
-
constructor(projectRoot) {
|
|
14
|
-
this.projectRoot = projectRoot;
|
|
15
|
-
}
|
|
16
|
-
extract() {
|
|
17
|
-
const cssFiles = this.findCSSFiles();
|
|
18
|
-
const variables = new Map();
|
|
19
|
-
for (const filePath of cssFiles) {
|
|
20
|
-
try {
|
|
21
|
-
const content = fs_1.default.readFileSync(filePath, 'utf8');
|
|
22
|
-
const fileVariables = this.parseCSSVariables(content);
|
|
23
|
-
for (const [name, value] of fileVariables) {
|
|
24
|
-
variables.set(name, value);
|
|
25
|
-
}
|
|
26
|
-
if (fileVariables.size > 0) {
|
|
27
|
-
log.info(`Found ${fileVariables.size} CSS variables in ${path_1.default.relative(this.projectRoot, filePath)}`);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
log.debug(`Could not read CSS file ${filePath}:`, error);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return variables;
|
|
35
|
-
}
|
|
36
|
-
findCSSFiles() {
|
|
37
|
-
const possiblePaths = [
|
|
38
|
-
'globals.css',
|
|
39
|
-
'index.css',
|
|
40
|
-
'styles.css',
|
|
41
|
-
'app/globals.css',
|
|
42
|
-
'app/layout.css',
|
|
43
|
-
'src/globals.css',
|
|
44
|
-
'src/index.css',
|
|
45
|
-
'src/styles.css',
|
|
46
|
-
'src/app/globals.css',
|
|
47
|
-
'styles/globals.css',
|
|
48
|
-
'styles/index.css',
|
|
49
|
-
'src/styles/globals.css',
|
|
50
|
-
'src/styles/index.css',
|
|
51
|
-
'app/styles/globals.css',
|
|
52
|
-
'src/ui/src/index.css',
|
|
53
|
-
'src/ui/src/globals.css',
|
|
54
|
-
'packages/ui/src/index.css',
|
|
55
|
-
'packages/ui/src/globals.css',
|
|
56
|
-
];
|
|
57
|
-
const found = [];
|
|
58
|
-
for (const relativePath of possiblePaths) {
|
|
59
|
-
const fullPath = path_1.default.join(this.projectRoot, relativePath);
|
|
60
|
-
if (fs_1.default.existsSync(fullPath)) {
|
|
61
|
-
found.push(fullPath);
|
|
62
|
-
log.debug(`Found CSS file: ${relativePath}`);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (found.length === 0) {
|
|
66
|
-
log.debug('No global CSS files found in common locations');
|
|
67
|
-
}
|
|
68
|
-
return found;
|
|
69
|
-
}
|
|
70
|
-
parseCSSVariables(content) {
|
|
71
|
-
const variables = new Map();
|
|
72
|
-
const rootBlockRegex = /:root\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/gs;
|
|
73
|
-
const matches = content.matchAll(rootBlockRegex);
|
|
74
|
-
for (const match of matches) {
|
|
75
|
-
const blockContent = match[1];
|
|
76
|
-
this.extractVariablesFromBlock(blockContent, variables);
|
|
77
|
-
}
|
|
78
|
-
const htmlBlockRegex = /html\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/gs;
|
|
79
|
-
const htmlMatches = content.matchAll(htmlBlockRegex);
|
|
80
|
-
for (const match of htmlMatches) {
|
|
81
|
-
const blockContent = match[1];
|
|
82
|
-
this.extractVariablesFromBlock(blockContent, variables);
|
|
83
|
-
}
|
|
84
|
-
return variables;
|
|
85
|
-
}
|
|
86
|
-
extractVariablesFromBlock(blockContent, variables) {
|
|
87
|
-
const variableRegex = /--([\w-]+)\s*:\s*([^;]+);/g;
|
|
88
|
-
const varMatches = blockContent.matchAll(variableRegex);
|
|
89
|
-
for (const varMatch of varMatches) {
|
|
90
|
-
const name = varMatch[1].trim();
|
|
91
|
-
const value = varMatch[2].trim();
|
|
92
|
-
variables.set(name, value);
|
|
93
|
-
log.debug(`Extracted CSS variable: --${name}: ${value}`);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
resolveValue(tokenValue, variables) {
|
|
97
|
-
const varRegex = /var\(--([^)]+)\)/g;
|
|
98
|
-
return tokenValue.replace(varRegex, (match, varName) => {
|
|
99
|
-
const resolvedValue = variables.get(varName.trim());
|
|
100
|
-
if (resolvedValue) {
|
|
101
|
-
log.debug(`Resolved var(--${varName}) to ${resolvedValue}`);
|
|
102
|
-
return resolvedValue;
|
|
103
|
-
}
|
|
104
|
-
log.warn(`Could not resolve CSS variable: --${varName}`);
|
|
105
|
-
return match;
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
exports.CSSVariableExtractor = CSSVariableExtractor;
|
|
110
|
-
//# sourceMappingURL=CSSVariableExtractor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CSSVariableExtractor.js","sourceRoot":"","sources":["../../../src/services/extractors/CSSVariableExtractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export declare const STATIC_STARTER_HTML = "<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <title>New Rivet project</title>\n <style>\n * { box-sizing: border-box; margin: 0; padding: 0; }\n html, body { height: 100%; }\n body {\n font-family: system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica,\n Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n background: #f3ede3;\n color: #1a1a17;\n min-height: 100vh;\n display: flex;\n flex-direction: column;\n }\n header { padding: 28px clamp(24px, 6vw, 56px); }\n .wordmark {\n display: inline-flex;\n align-items: center;\n gap: 10px;\n font-weight: 800;\n font-size: 19px;\n letter-spacing: -0.02em;\n }\n .wordmark .dot {\n width: 13px;\n height: 13px;\n border-radius: 3px;\n background: #ff3300;\n box-shadow: 0 0 0 4px rgba(255, 90, 30, 0.18);\n }\n main {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 24px clamp(24px, 6vw, 56px) 72px;\n }\n .eyebrow {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n font-size: 12.5px;\n font-weight: 600;\n letter-spacing: 0.05em;\n text-transform: uppercase;\n color: #a4441f;\n background: rgba(255, 90, 30, 0.1);\n border: 1px solid rgba(255, 90, 30, 0.22);\n padding: 6px 14px;\n border-radius: 999px;\n margin-bottom: 26px;\n }\n .eyebrow .pulse {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n background: #ff3300;\n }\n h1 {\n font-size: clamp(34px, 6vw, 60px);\n line-height: 1.05;\n letter-spacing: -0.035em;\n font-weight: 820;\n max-width: 16ch;\n }\n h1 .accent { color: #ff3300; }\n p {\n margin-top: 20px;\n font-size: clamp(15px, 1.8vw, 19px);\n line-height: 1.55;\n max-width: 46ch;\n color: #54504a;\n }\n footer {\n padding: 24px clamp(24px, 6vw, 56px);\n text-align: center;\n font-size: 13px;\n color: #8c877f;\n }\n </style>\n </head>\n <body>\n <header>\n <span class=\"wordmark\"><span class=\"dot\"></span>Rivet</span>\n </header>\n <main>\n <span class=\"eyebrow\"><span class=\"pulse\"></span>Empty project</span>\n <h1>Your <span class=\"accent\">blank canvas</span></h1>\n <p>Point and click to edit this page in Rivet, or ask Claude to build something here.</p>\n </main>\n <footer>Make it yours.</footer>\n </body>\n</html>\n";
|
|
2
|
-
export declare function ensureStaticStarterCanvas(projectPath: string): boolean;
|
|
3
|
-
//# sourceMappingURL=staticStarter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"staticStarter.d.ts","sourceRoot":"","sources":["../../src/services/staticStarter.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,k1FAoG/B,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAiBtE"}
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.STATIC_STARTER_HTML = void 0;
|
|
7
|
-
exports.ensureStaticStarterCanvas = ensureStaticStarterCanvas;
|
|
8
|
-
const fs_1 = __importDefault(require("fs"));
|
|
9
|
-
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const logger_1 = require("../utils/logger");
|
|
11
|
-
const staticProjectTarget_1 = require("./staticProjectTarget");
|
|
12
|
-
const log = (0, logger_1.createLogger)('staticStarter');
|
|
13
|
-
exports.STATIC_STARTER_HTML = `<!doctype html>
|
|
14
|
-
<html lang="en">
|
|
15
|
-
<head>
|
|
16
|
-
<meta charset="utf-8" />
|
|
17
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
18
|
-
<title>New Rivet project</title>
|
|
19
|
-
<style>
|
|
20
|
-
* { box-sizing: border-box; margin: 0; padding: 0; }
|
|
21
|
-
html, body { height: 100%; }
|
|
22
|
-
body {
|
|
23
|
-
font-family: system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica,
|
|
24
|
-
Arial, sans-serif;
|
|
25
|
-
-webkit-font-smoothing: antialiased;
|
|
26
|
-
background: #f3ede3;
|
|
27
|
-
color: #1a1a17;
|
|
28
|
-
min-height: 100vh;
|
|
29
|
-
display: flex;
|
|
30
|
-
flex-direction: column;
|
|
31
|
-
}
|
|
32
|
-
header { padding: 28px clamp(24px, 6vw, 56px); }
|
|
33
|
-
.wordmark {
|
|
34
|
-
display: inline-flex;
|
|
35
|
-
align-items: center;
|
|
36
|
-
gap: 10px;
|
|
37
|
-
font-weight: 800;
|
|
38
|
-
font-size: 19px;
|
|
39
|
-
letter-spacing: -0.02em;
|
|
40
|
-
}
|
|
41
|
-
.wordmark .dot {
|
|
42
|
-
width: 13px;
|
|
43
|
-
height: 13px;
|
|
44
|
-
border-radius: 3px;
|
|
45
|
-
background: #ff3300;
|
|
46
|
-
box-shadow: 0 0 0 4px rgba(255, 90, 30, 0.18);
|
|
47
|
-
}
|
|
48
|
-
main {
|
|
49
|
-
flex: 1;
|
|
50
|
-
display: flex;
|
|
51
|
-
flex-direction: column;
|
|
52
|
-
align-items: center;
|
|
53
|
-
justify-content: center;
|
|
54
|
-
text-align: center;
|
|
55
|
-
padding: 24px clamp(24px, 6vw, 56px) 72px;
|
|
56
|
-
}
|
|
57
|
-
.eyebrow {
|
|
58
|
-
display: inline-flex;
|
|
59
|
-
align-items: center;
|
|
60
|
-
gap: 8px;
|
|
61
|
-
font-size: 12.5px;
|
|
62
|
-
font-weight: 600;
|
|
63
|
-
letter-spacing: 0.05em;
|
|
64
|
-
text-transform: uppercase;
|
|
65
|
-
color: #a4441f;
|
|
66
|
-
background: rgba(255, 90, 30, 0.1);
|
|
67
|
-
border: 1px solid rgba(255, 90, 30, 0.22);
|
|
68
|
-
padding: 6px 14px;
|
|
69
|
-
border-radius: 999px;
|
|
70
|
-
margin-bottom: 26px;
|
|
71
|
-
}
|
|
72
|
-
.eyebrow .pulse {
|
|
73
|
-
width: 7px;
|
|
74
|
-
height: 7px;
|
|
75
|
-
border-radius: 50%;
|
|
76
|
-
background: #ff3300;
|
|
77
|
-
}
|
|
78
|
-
h1 {
|
|
79
|
-
font-size: clamp(34px, 6vw, 60px);
|
|
80
|
-
line-height: 1.05;
|
|
81
|
-
letter-spacing: -0.035em;
|
|
82
|
-
font-weight: 820;
|
|
83
|
-
max-width: 16ch;
|
|
84
|
-
}
|
|
85
|
-
h1 .accent { color: #ff3300; }
|
|
86
|
-
p {
|
|
87
|
-
margin-top: 20px;
|
|
88
|
-
font-size: clamp(15px, 1.8vw, 19px);
|
|
89
|
-
line-height: 1.55;
|
|
90
|
-
max-width: 46ch;
|
|
91
|
-
color: #54504a;
|
|
92
|
-
}
|
|
93
|
-
footer {
|
|
94
|
-
padding: 24px clamp(24px, 6vw, 56px);
|
|
95
|
-
text-align: center;
|
|
96
|
-
font-size: 13px;
|
|
97
|
-
color: #8c877f;
|
|
98
|
-
}
|
|
99
|
-
</style>
|
|
100
|
-
</head>
|
|
101
|
-
<body>
|
|
102
|
-
<header>
|
|
103
|
-
<span class="wordmark"><span class="dot"></span>Rivet</span>
|
|
104
|
-
</header>
|
|
105
|
-
<main>
|
|
106
|
-
<span class="eyebrow"><span class="pulse"></span>Empty project</span>
|
|
107
|
-
<h1>Your <span class="accent">blank canvas</span></h1>
|
|
108
|
-
<p>Point and click to edit this page in Rivet, or ask Claude to build something here.</p>
|
|
109
|
-
</main>
|
|
110
|
-
<footer>Make it yours.</footer>
|
|
111
|
-
</body>
|
|
112
|
-
</html>
|
|
113
|
-
`;
|
|
114
|
-
function ensureStaticStarterCanvas(projectPath) {
|
|
115
|
-
try {
|
|
116
|
-
if ((0, staticProjectTarget_1.listStaticHtmlEntryFiles)(projectPath).length > 0)
|
|
117
|
-
return false;
|
|
118
|
-
if (fs_1.default.existsSync(path_1.default.join(projectPath, '.rivet')))
|
|
119
|
-
return false;
|
|
120
|
-
fs_1.default.writeFileSync(path_1.default.join(projectPath, 'index.html'), exports.STATIC_STARTER_HTML, 'utf8');
|
|
121
|
-
log.info(`Wrote starter index.html into empty static workspace: ${projectPath}`);
|
|
122
|
-
return true;
|
|
123
|
-
}
|
|
124
|
-
catch (err) {
|
|
125
|
-
log.warn(`Failed to write starter index.html at ${projectPath}:`, err);
|
|
126
|
-
return false;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
//# sourceMappingURL=staticStarter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"staticStarter.js","sourceRoot":"","sources":["../../src/services/staticStarter.ts"],"names":[],"mappings":";;;;;;AA6GA,8DAiBC;AA9HD,4CAAoB;AACpB,gDAAwB;AACxB,4CAA+C;AAC/C,+DAAiE;AAEjE,MAAM,GAAG,GAAG,IAAA,qBAAY,EAAC,eAAe,CAAC,CAAC;AAE7B,QAAA,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoGlC,CAAC;AAEF,SAAgB,yBAAyB,CAAC,WAAmB;IAC3D,IAAI,CAAC;QACH,IAAI,IAAA,8CAAwB,EAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QACnE,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAClE,YAAE,CAAC,aAAa,CACd,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EACpC,2BAAmB,EACnB,MAAM,CACP,CAAC;QACF,GAAG,CAAC,IAAI,CACN,yDAAyD,WAAW,EAAE,CACvE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,yCAAyC,WAAW,GAAG,EAAE,GAAG,CAAC,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"elementFileHintSignals.d.ts","sourceRoot":"","sources":["../../src/utils/elementFileHintSignals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAwBhE,eAAO,MAAM,4BAA4B,GAAI,SAAS,UAAU,KAAG,OAelE,CAAC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.shouldSearchElementFileHints = void 0;
|
|
4
|
-
const GENERIC_SVG_TAGS = new Set([
|
|
5
|
-
'circle',
|
|
6
|
-
'ellipse',
|
|
7
|
-
'g',
|
|
8
|
-
'line',
|
|
9
|
-
'path',
|
|
10
|
-
'polygon',
|
|
11
|
-
'polyline',
|
|
12
|
-
'rect',
|
|
13
|
-
'svg',
|
|
14
|
-
]);
|
|
15
|
-
const IDENTIFYING_ATTRS = ['href', 'data-testid', 'aria-label', 'name'];
|
|
16
|
-
const UTILITY_CLASS_PATTERN = /^(flex|grid|block|inline|hidden|p-\d+|px-\d+|py-\d+|m-\d+|mx-\d+|my-\d+|text-|bg-|w-\d+|h-\d+|rounded|border|shadow|hover:|focus:|active:|disabled:|opacity-|z-\d+|gap-\d+|space-|justify-|items-|cursor-|overflow-|relative|absolute|fixed|top-|left-|right-|bottom-)/;
|
|
17
|
-
const hasUsefulClassName = (className) => className
|
|
18
|
-
.trim()
|
|
19
|
-
.split(/\s+/)
|
|
20
|
-
.some((token) => token.length > 2 && !UTILITY_CLASS_PATTERN.test(token));
|
|
21
|
-
const shouldSearchElementFileHints = (element) => {
|
|
22
|
-
const tagName = element.tagName.toLowerCase();
|
|
23
|
-
const hasSpecificSignal = Boolean(element.rivetId?.trim()) ||
|
|
24
|
-
Boolean(element.id?.trim()) ||
|
|
25
|
-
hasUsefulClassName(element.className) ||
|
|
26
|
-
Boolean(element.textContent?.trim()) ||
|
|
27
|
-
Boolean(element.componentTree?.length) ||
|
|
28
|
-
IDENTIFYING_ATTRS.some((attr) => Boolean(element.attributes?.[attr]));
|
|
29
|
-
if (GENERIC_SVG_TAGS.has(tagName)) {
|
|
30
|
-
return hasSpecificSignal;
|
|
31
|
-
}
|
|
32
|
-
return true;
|
|
33
|
-
};
|
|
34
|
-
exports.shouldSearchElementFileHints = shouldSearchElementFileHints;
|
|
35
|
-
//# sourceMappingURL=elementFileHintSignals.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"elementFileHintSignals.js","sourceRoot":"","sources":["../../src/utils/elementFileHintSignals.ts"],"names":[],"mappings":";;;AAEA,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,QAAQ;IACR,SAAS;IACT,GAAG;IACH,MAAM;IACN,MAAM;IACN,SAAS;IACT,UAAU;IACV,MAAM;IACN,KAAK;CACN,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AACxE,MAAM,qBAAqB,GACzB,wQAAwQ,CAAC;AAE3Q,MAAM,kBAAkB,GAAG,CAAC,SAAiB,EAAW,EAAE,CACxD,SAAS;KACN,IAAI,EAAE;KACN,KAAK,CAAC,KAAK,CAAC;KACZ,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAEtE,MAAM,4BAA4B,GAAG,CAAC,OAAmB,EAAW,EAAE;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC9C,MAAM,iBAAiB,GACrB,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;QAChC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC;QAC3B,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC;QACrC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC;QACtC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAExE,IAAI,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAfW,QAAA,4BAA4B,gCAevC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
type TargetingFilePath = string | {
|
|
2
|
-
filePath: string;
|
|
3
|
-
};
|
|
4
|
-
export type TargetingElementContext = {
|
|
5
|
-
tagName: string;
|
|
6
|
-
className?: string;
|
|
7
|
-
id?: string;
|
|
8
|
-
textContent?: string;
|
|
9
|
-
componentTree?: Array<{
|
|
10
|
-
name: string;
|
|
11
|
-
}>;
|
|
12
|
-
attributes?: Record<string, string>;
|
|
13
|
-
parentElementSummary?: {
|
|
14
|
-
tagName: string;
|
|
15
|
-
className: string;
|
|
16
|
-
textSnippet: string;
|
|
17
|
-
};
|
|
18
|
-
filePaths?: TargetingFilePath[];
|
|
19
|
-
};
|
|
20
|
-
export type ElementTargetingFormatOptions = {
|
|
21
|
-
includeFilePaths?: boolean;
|
|
22
|
-
markUntrusted?: boolean;
|
|
23
|
-
};
|
|
24
|
-
export declare const formatUntrustedValue: (value: string, maxLength: number) => string;
|
|
25
|
-
export declare const buildElementSelector: (ctx: Pick<TargetingElementContext, "tagName" | "className" | "id">) => string;
|
|
26
|
-
export declare const formatElementTargetingLines: (ctx: TargetingElementContext, options?: ElementTargetingFormatOptions) => string[];
|
|
27
|
-
export {};
|
|
28
|
-
//# sourceMappingURL=formatElementTargetingContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"formatElementTargetingContext.d.ts","sourceRoot":"","sources":["../../src/utils/formatElementTargetingContext.ts"],"names":[],"mappings":"AAQA,KAAK,iBAAiB,GAAG,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvD,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,oBAAoB,CAAC,EAAE;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,SAAS,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,EACb,WAAW,MAAM,KAChB,MAA0D,CAAC;AAE9D,eAAO,MAAM,oBAAoB,GAC/B,KAAK,IAAI,CAAC,uBAAuB,EAAE,SAAS,GAAG,WAAW,GAAG,IAAI,CAAC,KACjE,MAWF,CAAC;AAKF,eAAO,MAAM,2BAA2B,GACtC,KAAK,uBAAuB,EAC5B,UAAS,6BAAkC,KAC1C,MAAM,EA0FR,CAAC"}
|