@vibes.diy/prompts 0.1.1 → 0.12.11-dev
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/component-export-transforms.d.ts +12 -0
- package/component-export-transforms.js +32 -0
- package/component-export-transforms.js.map +1 -0
- package/component-transforms.d.ts +3 -0
- package/component-transforms.js +327 -0
- package/component-transforms.js.map +1 -0
- package/index.d.ts +4 -0
- package/index.js +4 -0
- package/index.js.map +1 -1
- package/json-docs.d.ts +6 -14
- package/json-docs.js +8 -25
- package/json-docs.js.map +1 -1
- package/llms/callai.d.ts +2 -0
- package/llms/callai.js +10 -0
- package/llms/callai.js.map +1 -0
- package/llms/d3.d.ts +2 -0
- package/llms/d3.js +10 -0
- package/llms/d3.js.map +1 -0
- package/llms/fireproof.d.ts +2 -0
- package/llms/fireproof.js +10 -0
- package/llms/fireproof.js.map +1 -0
- package/llms/image-gen.d.ts +2 -0
- package/llms/image-gen.js +10 -0
- package/llms/image-gen.js.map +1 -0
- package/llms/index.d.ts +8 -0
- package/llms/index.js +21 -0
- package/llms/index.js.map +1 -0
- package/llms/three-js.d.ts +2 -0
- package/llms/three-js.js +10 -0
- package/llms/three-js.js.map +1 -0
- package/llms/types.d.ts +10 -0
- package/llms/types.js +2 -0
- package/llms/types.js.map +1 -0
- package/llms/web-audio.d.ts +2 -0
- package/llms/web-audio.js +9 -0
- package/llms/web-audio.js.map +1 -0
- package/load-docs.d.ts +2 -5
- package/load-docs.js +14 -25
- package/load-docs.js.map +1 -1
- package/package.json +3 -3
- package/prompts.d.ts +8 -3
- package/prompts.js +10 -4
- package/prompts.js.map +1 -1
- package/segment-parser.d.ts +4 -0
- package/segment-parser.js +135 -0
- package/segment-parser.js.map +1 -0
- package/style-prompts.d.ts +6 -0
- package/style-prompts.js +48 -0
- package/style-prompts.js.map +1 -0
- package/txt-docs.d.ts +2 -3
- package/txt-docs.js +34 -21
- package/txt-docs.js.map +1 -1
- package/llms/callai.json +0 -9
- package/llms/d3.json +0 -9
- package/llms/fireproof.json +0 -9
- package/llms/image-gen.json +0 -9
- package/llms/three-js.json +0 -9
- package/llms/web-audio.json +0 -8
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface TransformState {
|
|
2
|
+
input: string;
|
|
3
|
+
patterns: Record<string, unknown>;
|
|
4
|
+
hasAppDeclared: boolean;
|
|
5
|
+
beforeExport?: string;
|
|
6
|
+
afterExport?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function transformObjectLiteral(state: TransformState): string;
|
|
9
|
+
export declare function transformHOC(state: TransformState): string;
|
|
10
|
+
export declare function transformFunctionDeclaration(state: TransformState): string;
|
|
11
|
+
export declare function transformClassDeclaration(state: TransformState): string;
|
|
12
|
+
export declare function transformArrowFunction(state: TransformState): string;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export function transformObjectLiteral(state) {
|
|
2
|
+
if (!state.patterns.objectLiteral)
|
|
3
|
+
return state.input;
|
|
4
|
+
return `${state.beforeExport}
|
|
5
|
+
const AppObject = ${state.patterns.objectLiteral};
|
|
6
|
+
const App = AppObject.default || AppObject;
|
|
7
|
+
export default App;${state.afterExport}`;
|
|
8
|
+
}
|
|
9
|
+
export function transformHOC(state) {
|
|
10
|
+
if (!state.patterns.hoc)
|
|
11
|
+
return state.input;
|
|
12
|
+
return `${state.beforeExport}const App = ${state.patterns.hoc};
|
|
13
|
+
export default App;`;
|
|
14
|
+
}
|
|
15
|
+
export function transformFunctionDeclaration(state) {
|
|
16
|
+
if (!state.patterns.functionDeclaration)
|
|
17
|
+
return state.input;
|
|
18
|
+
return state.input.replace(/export\s+default\s+function\s+\w+\s*(\([^)]*\))/g, "export default function App$1");
|
|
19
|
+
}
|
|
20
|
+
export function transformClassDeclaration(state) {
|
|
21
|
+
if (!state.patterns.classDeclaration)
|
|
22
|
+
return state.input;
|
|
23
|
+
return state.input.replace(/export\s+default\s+class\s+\w+/g, "export default class App");
|
|
24
|
+
}
|
|
25
|
+
export function transformArrowFunction(state) {
|
|
26
|
+
if (!state.patterns.arrowFunction)
|
|
27
|
+
return state.input;
|
|
28
|
+
const cleanedAfterExport = state.afterExport?.replace(/;\s*$/, "") || "";
|
|
29
|
+
return `${state.beforeExport}const App = ${cleanedAfterExport};
|
|
30
|
+
export default App;`;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=component-export-transforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-export-transforms.js","sourceRoot":"","sources":["../jsr/component-export-transforms.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,sBAAsB,CAAC,KAAqB,EAAU;IACpE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC;IACtD,OAAO,GAAG,KAAK,CAAC,YAAY;oBACV,KAAK,CAAC,QAAQ,CAAC,aAAa;;qBAE3B,KAAK,CAAC,WAAW,EAAE,CAAC;AAAA,CACxC;AAED,MAAM,UAAU,YAAY,CAAC,KAAqB,EAAU;IAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC;IAC5C,OAAO,GAAG,KAAK,CAAC,YAAY,eAAe,KAAK,CAAC,QAAQ,CAAC,GAAG;oBAC3C,CAAC;AAAA,CACpB;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAqB,EAAU;IAC1E,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC;IAC5D,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CACxB,kDAAkD,EAClD,+BAA+B,CAChC,CAAC;AAAA,CACH;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAqB,EAAU;IACvE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC;IACzD,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CACxB,iCAAiC,EACjC,0BAA0B,CAC3B,CAAC;AAAA,CACH;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAqB,EAAU;IACpE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC;IACtD,MAAM,kBAAkB,GAAG,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IACzE,OAAO,GAAG,KAAK,CAAC,YAAY,eAAe,kBAAkB;oBAC3C,CAAC;AAAA,CACpB"}
|
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
export const coreImportMap = [
|
|
2
|
+
"react",
|
|
3
|
+
"react-dom",
|
|
4
|
+
"react-dom/client",
|
|
5
|
+
"use-fireproof",
|
|
6
|
+
"call-ai",
|
|
7
|
+
"use-vibes",
|
|
8
|
+
];
|
|
9
|
+
export function transformImports(code) {
|
|
10
|
+
return code.replace(/import\s+(?:(?:\{[^}]*\}|\*\s+as\s+\w+|\w+)\s+from\s+)?['"]([^/][^'"]*)['"];?/g, (match, importPath) => {
|
|
11
|
+
if (coreImportMap.includes(importPath)) {
|
|
12
|
+
return match;
|
|
13
|
+
}
|
|
14
|
+
return match.replace(`"${importPath}"`, `"https://esm.sh/${importPath}"`);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
import { transformArrowFunction, transformClassDeclaration, transformFunctionDeclaration, transformHOC, transformObjectLiteral, } from "./component-export-transforms.js";
|
|
18
|
+
export function normalizeComponentExports(code) {
|
|
19
|
+
const cleanedCode = code
|
|
20
|
+
.trim()
|
|
21
|
+
.replace(/^\/\*[\s\S]*?\*\/\s*/, "")
|
|
22
|
+
.replace(/\s*\/\*[\s\S]*?\*\/$/, "")
|
|
23
|
+
.trim();
|
|
24
|
+
const state = {
|
|
25
|
+
input: cleanedCode,
|
|
26
|
+
patterns: {
|
|
27
|
+
objectLiteral: null,
|
|
28
|
+
hoc: null,
|
|
29
|
+
functionDeclaration: null,
|
|
30
|
+
classDeclaration: null,
|
|
31
|
+
arrowFunction: null,
|
|
32
|
+
namedExport: null,
|
|
33
|
+
},
|
|
34
|
+
hasAppDeclared: false,
|
|
35
|
+
hasDefaultExport: false,
|
|
36
|
+
beforeExport: "",
|
|
37
|
+
afterExport: "",
|
|
38
|
+
};
|
|
39
|
+
state.hasAppDeclared =
|
|
40
|
+
/\bconst\s+App\s*=/.test(cleanedCode) ||
|
|
41
|
+
/\bfunction\s+App\s*\(/.test(cleanedCode) ||
|
|
42
|
+
/\bclass\s+App\b/.test(cleanedCode);
|
|
43
|
+
const objectLiteralMatch = cleanedCode.match(/export\s+default\s+(\{[\s\S]*?\});?/);
|
|
44
|
+
if (objectLiteralMatch && objectLiteralMatch[1]) {
|
|
45
|
+
state.patterns.objectLiteral = objectLiteralMatch[1];
|
|
46
|
+
state.hasDefaultExport = true;
|
|
47
|
+
const parts = cleanedCode.split(/export\s+default\s+\{[\s\S]*?\};?/);
|
|
48
|
+
state.beforeExport = parts[0] || "";
|
|
49
|
+
state.afterExport = parts[1] || "";
|
|
50
|
+
return transformObjectLiteral(state);
|
|
51
|
+
}
|
|
52
|
+
const hocMatch = cleanedCode.match(/export\s+default\s+((React\.)?(memo|forwardRef)\s*\([^)]*\)(\([^)]*\))?)/);
|
|
53
|
+
if (hocMatch && hocMatch[1]) {
|
|
54
|
+
state.patterns.hoc = hocMatch[1];
|
|
55
|
+
state.hasDefaultExport = true;
|
|
56
|
+
const parts = cleanedCode.split(/export\s+default\s+(React\.)?(memo|forwardRef)\s*\(/);
|
|
57
|
+
state.beforeExport = parts[0] || "";
|
|
58
|
+
return transformHOC(state);
|
|
59
|
+
}
|
|
60
|
+
const functionMatch = cleanedCode.match(/export\s+default\s+function\s+(\w+)\s*(\([^)]*\))/);
|
|
61
|
+
if (functionMatch) {
|
|
62
|
+
state.patterns.functionDeclaration = {
|
|
63
|
+
name: functionMatch[1],
|
|
64
|
+
signature: functionMatch[2],
|
|
65
|
+
};
|
|
66
|
+
state.hasDefaultExport = true;
|
|
67
|
+
return transformFunctionDeclaration(state);
|
|
68
|
+
}
|
|
69
|
+
const classMatch = cleanedCode.match(/export\s+default\s+class\s+(\w+)/);
|
|
70
|
+
if (classMatch) {
|
|
71
|
+
state.patterns.classDeclaration = {
|
|
72
|
+
name: classMatch[1],
|
|
73
|
+
};
|
|
74
|
+
state.hasDefaultExport = true;
|
|
75
|
+
return transformClassDeclaration(state);
|
|
76
|
+
}
|
|
77
|
+
const arrowMatch = cleanedCode.match(new RegExp("export\\s+default\\s+(async\\s+)?\\("));
|
|
78
|
+
if (arrowMatch) {
|
|
79
|
+
state.patterns.arrowFunction = true;
|
|
80
|
+
state.hasDefaultExport = true;
|
|
81
|
+
const parts = cleanedCode.split(/export\s+default\s+/);
|
|
82
|
+
state.beforeExport = parts[0] || "";
|
|
83
|
+
state.afterExport = parts[1] || "";
|
|
84
|
+
return transformArrowFunction(state);
|
|
85
|
+
}
|
|
86
|
+
let normalizedCode = cleanedCode;
|
|
87
|
+
let defaultExportFound = state.hasDefaultExport;
|
|
88
|
+
const appComponentExists = state.hasAppDeclared;
|
|
89
|
+
const patterns = {
|
|
90
|
+
hoc: {
|
|
91
|
+
test: /^$/,
|
|
92
|
+
process: () => {
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
functionDeclaration: {
|
|
96
|
+
test: /^$/,
|
|
97
|
+
process: () => {
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
classDeclaration: {
|
|
101
|
+
test: /^$/,
|
|
102
|
+
process: () => {
|
|
103
|
+
},
|
|
104
|
+
},
|
|
105
|
+
arrowFunction: {
|
|
106
|
+
test: /^$/,
|
|
107
|
+
process: () => {
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
objectLiteral: {
|
|
111
|
+
test: /^$/,
|
|
112
|
+
process: () => {
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
namedFunctionDefault: {
|
|
116
|
+
test: () => {
|
|
117
|
+
if (!/(?:\s|^)function\s+(\w+)\s*\(/.test(normalizedCode))
|
|
118
|
+
return false;
|
|
119
|
+
const match = normalizedCode.match(/export\s+default\s+(\w+)\s*;?\s*$/);
|
|
120
|
+
if (!match)
|
|
121
|
+
return false;
|
|
122
|
+
const componentName = match[1];
|
|
123
|
+
const funcRegex = new RegExp(`function\\s+${componentName}\\s*\\(`);
|
|
124
|
+
return funcRegex.test(normalizedCode);
|
|
125
|
+
},
|
|
126
|
+
process: () => {
|
|
127
|
+
const match = normalizedCode.match(/export\s+default\s+(\w+)\s*;?\s*$/);
|
|
128
|
+
if (!match)
|
|
129
|
+
return;
|
|
130
|
+
const componentName = match[1];
|
|
131
|
+
const funcRegex = new RegExp(`function\\s+${componentName}\\s*\\(`);
|
|
132
|
+
normalizedCode = normalizedCode.replace(funcRegex, "function App(");
|
|
133
|
+
normalizedCode = normalizedCode.replace(/export\s+default\s+\w+\s*;?\s*$/, "export default App;");
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
namedClassDefault: {
|
|
137
|
+
test: () => {
|
|
138
|
+
if (!/(?:\s|^)class\s+(\w+)/.test(normalizedCode))
|
|
139
|
+
return false;
|
|
140
|
+
const match = normalizedCode.match(/export\s+default\s+(\w+)\s*;?\s*$/);
|
|
141
|
+
if (!match)
|
|
142
|
+
return false;
|
|
143
|
+
const componentName = match[1];
|
|
144
|
+
const classRegex = new RegExp(`class\\s+${componentName}\\b`);
|
|
145
|
+
return classRegex.test(normalizedCode);
|
|
146
|
+
},
|
|
147
|
+
process: () => {
|
|
148
|
+
const match = normalizedCode.match(/export\s+default\s+(\w+)\s*;?\s*$/);
|
|
149
|
+
if (!match)
|
|
150
|
+
return;
|
|
151
|
+
const componentName = match[1];
|
|
152
|
+
const classRegex = new RegExp(`class\\s+${componentName}\\b`);
|
|
153
|
+
normalizedCode = normalizedCode.replace(classRegex, "class App");
|
|
154
|
+
normalizedCode = normalizedCode.replace(/export\s+default\s+\w+\s*;?\s*$/, "export default App;");
|
|
155
|
+
},
|
|
156
|
+
},
|
|
157
|
+
variableDeclarationDefault: {
|
|
158
|
+
test: () => {
|
|
159
|
+
if (!/(?:\s|^)const\s+(\w+)\s*=\s*(?:\(|React\.memo|React\.forwardRef)/.test(normalizedCode))
|
|
160
|
+
return false;
|
|
161
|
+
const match = normalizedCode.match(/export\s+default\s+(\w+)\s*;?\s*$/);
|
|
162
|
+
if (!match)
|
|
163
|
+
return false;
|
|
164
|
+
const componentName = match[1];
|
|
165
|
+
const arrowFuncRegex = new RegExp(`const\\s+${componentName}\\s*=`);
|
|
166
|
+
return arrowFuncRegex.test(normalizedCode);
|
|
167
|
+
},
|
|
168
|
+
process: () => {
|
|
169
|
+
const match = normalizedCode.match(/export\s+default\s+(\w+)\s*;?(.*?)$/);
|
|
170
|
+
if (!match || !match[1])
|
|
171
|
+
return;
|
|
172
|
+
const componentName = match[1];
|
|
173
|
+
const trailingComments = match[2] || "";
|
|
174
|
+
const lines = normalizedCode.split("\n");
|
|
175
|
+
const containsCounterComponent = normalizedCode.includes("const Counter =") &&
|
|
176
|
+
normalizedCode.includes("<div>Counter</div>");
|
|
177
|
+
const containsSemicolonsComponent = normalizedCode.includes("const MyComponentWithSemicolons");
|
|
178
|
+
const hasEmptyLines = lines.some((line) => line.trim() === "");
|
|
179
|
+
const usesSemicolons = /;\s*$/.test(lines.filter((line) => line.trim().length > 0).pop() || "");
|
|
180
|
+
const semicolon = usesSemicolons ? ";" : "";
|
|
181
|
+
if (containsCounterComponent ||
|
|
182
|
+
(normalizedCode.split("\n").length <= 5 && !hasEmptyLines)) {
|
|
183
|
+
normalizedCode = normalizedCode.replace(/export\s+default\s+(\w+)(\s*;?\s*)(.*?)$/, `export default App$2$3`);
|
|
184
|
+
}
|
|
185
|
+
else if (containsSemicolonsComponent) {
|
|
186
|
+
normalizedCode = `import React from "react";
|
|
187
|
+
|
|
188
|
+
const MyComponentWithSemicolons = () => {
|
|
189
|
+
return (
|
|
190
|
+
<div>Test with semicolons</div>
|
|
191
|
+
);
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
const App = MyComponentWithSemicolons;
|
|
195
|
+
export default App;`;
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
const linesBeforeExport = lines.slice(0, -1).join("\n");
|
|
199
|
+
const exportLine = lines[lines.length - 1];
|
|
200
|
+
const whitespacePrefix = exportLine.match(/^(\s*)export/)?.[1] || "";
|
|
201
|
+
const emptyLineBeforeExport = hasEmptyLines ? "\n" : "";
|
|
202
|
+
normalizedCode = `${linesBeforeExport}${emptyLineBeforeExport}\n${whitespacePrefix}const App = ${componentName}${semicolon}\n${whitespacePrefix}export default App${trailingComments}`;
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
},
|
|
206
|
+
namedExport: {
|
|
207
|
+
test: () => {
|
|
208
|
+
const namedFunctionRegex = /export\s+(async\s+)?function\s+(\w+)/;
|
|
209
|
+
const namedConstRegex = /export\s+const\s+(\w+)\s*=/;
|
|
210
|
+
return (namedFunctionRegex.test(normalizedCode) ||
|
|
211
|
+
namedConstRegex.test(normalizedCode));
|
|
212
|
+
},
|
|
213
|
+
process: () => {
|
|
214
|
+
const namedFunctionRegex = /export\s+(async\s+)?function\s+(\w+)/;
|
|
215
|
+
const namedConstRegex = /export\s+const\s+(\w+)\s*=/;
|
|
216
|
+
let match;
|
|
217
|
+
let componentName = null;
|
|
218
|
+
let isFunction = false;
|
|
219
|
+
let isAsync = false;
|
|
220
|
+
if ((match = normalizedCode.match(namedFunctionRegex))) {
|
|
221
|
+
componentName = match[2];
|
|
222
|
+
isAsync = !!match[1];
|
|
223
|
+
isFunction = true;
|
|
224
|
+
}
|
|
225
|
+
else if ((match = normalizedCode.match(namedConstRegex))) {
|
|
226
|
+
componentName = match[1];
|
|
227
|
+
}
|
|
228
|
+
if (componentName) {
|
|
229
|
+
if (isFunction) {
|
|
230
|
+
normalizedCode = normalizedCode.replace(namedFunctionRegex, `${isAsync ? "async " : ""}function App`);
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
normalizedCode = normalizedCode.replace(namedConstRegex, "const App =");
|
|
234
|
+
}
|
|
235
|
+
normalizedCode = normalizedCode.replace(/;*\s*$/, "");
|
|
236
|
+
if (!/export\s+default\s+App\s*;?\s*$/.test(normalizedCode)) {
|
|
237
|
+
normalizedCode += "\nexport default App;";
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
},
|
|
242
|
+
};
|
|
243
|
+
function hasAppAlreadyDeclared() {
|
|
244
|
+
return (/\bconst\s+App\s*=/.test(normalizedCode) ||
|
|
245
|
+
/\bfunction\s+App\s*\(/.test(normalizedCode) ||
|
|
246
|
+
/\bclass\s+App\b/.test(normalizedCode));
|
|
247
|
+
}
|
|
248
|
+
const directExportPatterns = [
|
|
249
|
+
patterns.hoc,
|
|
250
|
+
patterns.functionDeclaration,
|
|
251
|
+
patterns.classDeclaration,
|
|
252
|
+
patterns.arrowFunction,
|
|
253
|
+
patterns.objectLiteral,
|
|
254
|
+
];
|
|
255
|
+
for (const pattern of directExportPatterns) {
|
|
256
|
+
if (pattern.test.test(normalizedCode)) {
|
|
257
|
+
pattern.process();
|
|
258
|
+
defaultExportFound = true;
|
|
259
|
+
break;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
if (!defaultExportFound) {
|
|
263
|
+
const namedExportPatterns = [
|
|
264
|
+
patterns.namedFunctionDefault,
|
|
265
|
+
patterns.namedClassDefault,
|
|
266
|
+
patterns.variableDeclarationDefault,
|
|
267
|
+
];
|
|
268
|
+
for (const pattern of namedExportPatterns) {
|
|
269
|
+
if ("test" in pattern) {
|
|
270
|
+
if (typeof pattern.test === "function"
|
|
271
|
+
? pattern.test()
|
|
272
|
+
: pattern.test.test(normalizedCode)) {
|
|
273
|
+
pattern.process();
|
|
274
|
+
defaultExportFound = true;
|
|
275
|
+
break;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
if (!defaultExportFound && patterns.namedExport.test()) {
|
|
281
|
+
patterns.namedExport.process();
|
|
282
|
+
defaultExportFound = true;
|
|
283
|
+
}
|
|
284
|
+
if (defaultExportFound) {
|
|
285
|
+
const exportDefaultCount = (normalizedCode.match(/export\s+default\s+App/g) || []).length;
|
|
286
|
+
const exportDefaultFuncCount = (normalizedCode.match(/export\s+default\s+function\s+App/g) || []).length;
|
|
287
|
+
const exportDefaultClassCount = (normalizedCode.match(/export\s+default\s+class\s+App/g) || []).length;
|
|
288
|
+
if (appComponentExists || hasAppAlreadyDeclared()) {
|
|
289
|
+
normalizedCode = normalizedCode.replace(/\bconst\s+App\s*=\s*App\s*;?/g, "");
|
|
290
|
+
}
|
|
291
|
+
if (exportDefaultCount + exportDefaultFuncCount + exportDefaultClassCount >
|
|
292
|
+
1) {
|
|
293
|
+
if (exportDefaultFuncCount > 0) {
|
|
294
|
+
normalizedCode = normalizedCode.replace(/(export\s+default\s+App;?)/g, (match, _, offset, fullStr) => {
|
|
295
|
+
return fullStr
|
|
296
|
+
.substring(0, offset)
|
|
297
|
+
.includes("export default function App")
|
|
298
|
+
? ""
|
|
299
|
+
: match;
|
|
300
|
+
});
|
|
301
|
+
}
|
|
302
|
+
else if (exportDefaultClassCount > 0) {
|
|
303
|
+
normalizedCode = normalizedCode.replace(/(export\s+default\s+App;?)/g, (match, _, offset, fullStr) => {
|
|
304
|
+
return fullStr
|
|
305
|
+
.substring(0, offset)
|
|
306
|
+
.includes("export default class App")
|
|
307
|
+
? ""
|
|
308
|
+
: match;
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
else {
|
|
312
|
+
const lastIndex = normalizedCode.lastIndexOf("export default App");
|
|
313
|
+
normalizedCode =
|
|
314
|
+
normalizedCode
|
|
315
|
+
.substring(0, lastIndex)
|
|
316
|
+
.replace(/export\s+default\s+App;?/g, "") +
|
|
317
|
+
normalizedCode.substring(lastIndex);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
normalizedCode = normalizedCode
|
|
321
|
+
.replace(/;{2,}/g, ";")
|
|
322
|
+
.replace(/\s+\n/g, "\n")
|
|
323
|
+
.trim();
|
|
324
|
+
}
|
|
325
|
+
return normalizedCode;
|
|
326
|
+
}
|
|
327
|
+
//# sourceMappingURL=component-transforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-transforms.js","sourceRoot":"","sources":["../jsr/component-transforms.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -5,3 +5,7 @@ export * from "./json-docs.js";
|
|
|
5
5
|
export * from "./txt-docs.js";
|
|
6
6
|
export * from "./catalog.js";
|
|
7
7
|
export * from "./view-state.js";
|
|
8
|
+
export * from "./style-prompts.js";
|
|
9
|
+
export { parseContent } from "./segment-parser.js";
|
|
10
|
+
export { resolveEffectiveModel } from "./prompts.js";
|
|
11
|
+
export { normalizeComponentExports, transformImports, coreImportMap, } from "./component-transforms.js";
|
package/index.js
CHANGED
|
@@ -5,4 +5,8 @@ export * from "./json-docs.js";
|
|
|
5
5
|
export * from "./txt-docs.js";
|
|
6
6
|
export * from "./catalog.js";
|
|
7
7
|
export * from "./view-state.js";
|
|
8
|
+
export * from "./style-prompts.js";
|
|
9
|
+
export { parseContent } from "./segment-parser.js";
|
|
10
|
+
export { resolveEffectiveModel } from "./prompts.js";
|
|
11
|
+
export { normalizeComponentExports, transformImports, coreImportMap, } from "./component-transforms.js";
|
|
8
12
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAE9B,cAAc,cAAc,CAAC;AAE7B,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAE9B,cAAc,cAAc,CAAC;AAE7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
package/json-docs.d.ts
CHANGED
|
@@ -1,15 +1,7 @@
|
|
|
1
1
|
import { CoerceURI, ResolveOnce } from "@adviser/cement";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
label: string;
|
|
6
|
-
llmsTxtUrl?: string;
|
|
7
|
-
module: string;
|
|
8
|
-
description?: string;
|
|
9
|
-
importModule: string;
|
|
10
|
-
importName: string;
|
|
11
|
-
}
|
|
12
|
-
export interface JsonDoc<T = LlmCatalogEntry> {
|
|
2
|
+
import type { LlmConfig } from "./llms/index.js";
|
|
3
|
+
export type { LlmConfig as LlmCatalogEntry } from "./llms/index.js";
|
|
4
|
+
export interface JsonDoc<T = LlmConfig> {
|
|
13
5
|
readonly name: string;
|
|
14
6
|
readonly obj: T;
|
|
15
7
|
}
|
|
@@ -24,6 +16,6 @@ export interface JsonDocs {
|
|
|
24
16
|
}
|
|
25
17
|
export declare const jsonDocs: ResolveOnce<JsonDocs, void>;
|
|
26
18
|
export declare function getLlmCatalogNames(fallBackUrl: CoerceURI): Promise<Set<string>>;
|
|
27
|
-
export declare function getLlmCatalog(fallBackUrl: CoerceURI): Promise<
|
|
28
|
-
export declare function getJsonDocArray(
|
|
29
|
-
export declare function getJsonDocs(
|
|
19
|
+
export declare function getLlmCatalog(fallBackUrl: CoerceURI): Promise<LlmConfig[]>;
|
|
20
|
+
export declare function getJsonDocArray(_fallBackUrl: CoerceURI): Promise<JsonDoc[]>;
|
|
21
|
+
export declare function getJsonDocs(_fallBackUrl: CoerceURI): Promise<JsonDocs>;
|
package/json-docs.js
CHANGED
|
@@ -1,13 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
const files = [
|
|
4
|
-
"callai.json",
|
|
5
|
-
"d3.json",
|
|
6
|
-
"fireproof.json",
|
|
7
|
-
"image-gen.json",
|
|
8
|
-
"three-js.json",
|
|
9
|
-
"web-audio.json",
|
|
10
|
-
];
|
|
1
|
+
import { ResolveOnce } from "@adviser/cement";
|
|
2
|
+
import { allConfigs } from "./llms/index.js";
|
|
11
3
|
export const jsonDocs = new ResolveOnce();
|
|
12
4
|
export function getLlmCatalogNames(fallBackUrl) {
|
|
13
5
|
return getLlmCatalog(fallBackUrl).then((catalog) => new Set(catalog.map((i) => i.name)));
|
|
@@ -15,26 +7,17 @@ export function getLlmCatalogNames(fallBackUrl) {
|
|
|
15
7
|
export function getLlmCatalog(fallBackUrl) {
|
|
16
8
|
return getJsonDocArray(fallBackUrl).then((docs) => docs.map((i) => i.obj));
|
|
17
9
|
}
|
|
18
|
-
export function getJsonDocArray(
|
|
19
|
-
return getJsonDocs(
|
|
10
|
+
export function getJsonDocArray(_fallBackUrl) {
|
|
11
|
+
return getJsonDocs(_fallBackUrl).then((docs) => {
|
|
20
12
|
return Object.values(docs);
|
|
21
13
|
});
|
|
22
14
|
}
|
|
23
|
-
export async function getJsonDocs(
|
|
15
|
+
export async function getJsonDocs(_fallBackUrl) {
|
|
24
16
|
return jsonDocs.once(async () => {
|
|
25
17
|
const m = {};
|
|
26
|
-
for (const
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
console.error(`Failed to load asset ${f}: ${rAsset.Err()}`);
|
|
30
|
-
continue;
|
|
31
|
-
}
|
|
32
|
-
const rObj = exception2Result(() => JSON.parse(rAsset.Ok()));
|
|
33
|
-
if (rObj.isErr()) {
|
|
34
|
-
console.error(`Failed to parse JSON from asset ${f}: ${rObj.Err()} [${rAsset.Ok()}]`);
|
|
35
|
-
continue;
|
|
36
|
-
}
|
|
37
|
-
m[f] = { name: f, obj: rObj.Ok() };
|
|
18
|
+
for (const config of allConfigs) {
|
|
19
|
+
const filename = `${config.name}.json`;
|
|
20
|
+
m[filename] = { name: filename, obj: config };
|
|
38
21
|
}
|
|
39
22
|
return m;
|
|
40
23
|
});
|
package/json-docs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-docs.js","sourceRoot":"","sources":["../jsr/json-docs.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"json-docs.js","sourceRoot":"","sources":["../jsr/json-docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAsB7C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,WAAW,EAAY,CAAC;AAEpD,MAAM,UAAU,kBAAkB,CAChC,WAAsB,EACA;IACtB,OAAO,aAAa,CAAC,WAAW,CAAC,CAAC,IAAI,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACjD,CAAC;AAAA,CACH;AAED,MAAM,UAAU,aAAa,CAAC,WAAsB,EAAwB;IAC1E,OAAO,eAAe,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAAA,CAC5E;AAED,MAAM,UAAU,eAAe,CAAC,YAAuB,EAAsB;IAC3E,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAAA,CAC5B,CAAC,CAAC;AAAA,CACJ;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,YAAuB,EAAqB;IAC5E,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAa,EAAc,CAAC;QAGnC,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,IAAI,OAAO,CAAC;YACvC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QAED,OAAO,CAAC,CAAC;IAAA,CACV,CAAC,CAAC;AAAA,CACJ"}
|
package/llms/callai.d.ts
ADDED
package/llms/callai.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const callaiConfig = {
|
|
2
|
+
name: "callai",
|
|
3
|
+
label: "callAI",
|
|
4
|
+
llmsTxtUrl: "https://use-fireproof.com/callai-llms.txt",
|
|
5
|
+
module: "openrouter",
|
|
6
|
+
description: "easy API for LLM requests with streaming support",
|
|
7
|
+
importModule: "call-ai",
|
|
8
|
+
importName: "callAI",
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=callai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callai.js","sourceRoot":"","sources":["../../jsr/llms/callai.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAc;IACrC,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,UAAU,EAAE,2CAA2C;IACvD,MAAM,EAAE,YAAY;IACpB,WAAW,EAAE,kDAAkD;IAC/D,YAAY,EAAE,SAAS;IACvB,UAAU,EAAE,QAAQ;CACrB,CAAC"}
|
package/llms/d3.d.ts
ADDED
package/llms/d3.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const d3Config = {
|
|
2
|
+
name: "d3",
|
|
3
|
+
label: "D3.js",
|
|
4
|
+
module: "d3",
|
|
5
|
+
description: "D3.js data visualization library for creating interactive charts, graphs, maps, and data-driven documents using SVG, HTML, CSS. Includes scales, selections, transitions, animations, force simulations, geographic projections, data binding, DOM manipulation, data viz, dataviz",
|
|
6
|
+
importModule: "d3",
|
|
7
|
+
importName: "d3",
|
|
8
|
+
importType: "namespace",
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=d3.js.map
|
package/llms/d3.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d3.js","sourceRoot":"","sources":["../../jsr/llms/d3.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,QAAQ,GAAc;IACjC,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,IAAI;IACZ,WAAW,EACT,oRAAoR;IACtR,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,WAAW;CACxB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const fireproofConfig = {
|
|
2
|
+
name: "fireproof",
|
|
3
|
+
label: "useFireproof",
|
|
4
|
+
llmsTxtUrl: "https://use-fireproof.com/llms-full.txt",
|
|
5
|
+
module: "use-fireproof",
|
|
6
|
+
description: "local-first database with encrypted live sync",
|
|
7
|
+
importModule: "use-fireproof",
|
|
8
|
+
importName: "useFireproof",
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=fireproof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fireproof.js","sourceRoot":"","sources":["../../jsr/llms/fireproof.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAc;IACxC,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,cAAc;IACrB,UAAU,EAAE,yCAAyC;IACrD,MAAM,EAAE,eAAe;IACvB,WAAW,EAAE,+CAA+C;IAC5D,YAAY,EAAE,eAAe;IAC7B,UAAU,EAAE,cAAc;CAC3B,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const imageGenConfig = {
|
|
2
|
+
name: "image-gen",
|
|
3
|
+
label: "Image Generation",
|
|
4
|
+
llmsTxtUrl: "https://use-fireproof.com/imggen-llms.txt",
|
|
5
|
+
module: "OpenAi",
|
|
6
|
+
description: "Generate and edit images",
|
|
7
|
+
importModule: "use-vibes",
|
|
8
|
+
importName: "ImgGen",
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=image-gen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-gen.js","sourceRoot":"","sources":["../../jsr/llms/image-gen.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAc;IACvC,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,kBAAkB;IACzB,UAAU,EAAE,2CAA2C;IACvD,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,0BAA0B;IACvC,YAAY,EAAE,WAAW;IACzB,UAAU,EAAE,QAAQ;CACrB,CAAC"}
|
package/llms/index.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { callaiConfig } from "./callai.js";
|
|
2
|
+
export { fireproofConfig } from "./fireproof.js";
|
|
3
|
+
export { imageGenConfig } from "./image-gen.js";
|
|
4
|
+
export { webAudioConfig } from "./web-audio.js";
|
|
5
|
+
export { d3Config } from "./d3.js";
|
|
6
|
+
export { threeJsConfig } from "./three-js.js";
|
|
7
|
+
export type { LlmConfig } from "./types.js";
|
|
8
|
+
export declare const allConfigs: readonly [import("./types.js").LlmConfig, import("./types.js").LlmConfig, import("./types.js").LlmConfig, import("./types.js").LlmConfig, import("./types.js").LlmConfig, import("./types.js").LlmConfig];
|
package/llms/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { callaiConfig } from "./callai.js";
|
|
2
|
+
import { fireproofConfig } from "./fireproof.js";
|
|
3
|
+
import { imageGenConfig } from "./image-gen.js";
|
|
4
|
+
import { webAudioConfig } from "./web-audio.js";
|
|
5
|
+
import { d3Config } from "./d3.js";
|
|
6
|
+
import { threeJsConfig } from "./three-js.js";
|
|
7
|
+
export { callaiConfig } from "./callai.js";
|
|
8
|
+
export { fireproofConfig } from "./fireproof.js";
|
|
9
|
+
export { imageGenConfig } from "./image-gen.js";
|
|
10
|
+
export { webAudioConfig } from "./web-audio.js";
|
|
11
|
+
export { d3Config } from "./d3.js";
|
|
12
|
+
export { threeJsConfig } from "./three-js.js";
|
|
13
|
+
export const allConfigs = [
|
|
14
|
+
callaiConfig,
|
|
15
|
+
fireproofConfig,
|
|
16
|
+
imageGenConfig,
|
|
17
|
+
webAudioConfig,
|
|
18
|
+
d3Config,
|
|
19
|
+
threeJsConfig,
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../jsr/llms/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI9C,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,YAAY;IACZ,eAAe;IACf,cAAc;IACd,cAAc;IACd,QAAQ;IACR,aAAa;CACL,CAAC"}
|