@vibes.diy/api-svc 14.3.20 → 14.3.22

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.
Files changed (110) hide show
  1. package/create-handler.d.ts +2 -0
  2. package/create-handler.js +1 -0
  3. package/create-handler.js.map +1 -1
  4. package/index.d.ts +2 -0
  5. package/index.js +2 -0
  6. package/index.js.map +1 -1
  7. package/intern/agent-assembly.d.ts +2 -0
  8. package/intern/agent-assembly.js +2 -2
  9. package/intern/agent-assembly.js.map +1 -1
  10. package/intern/agent-build-tools.d.ts +7 -0
  11. package/intern/agent-build-tools.js +14 -3
  12. package/intern/agent-build-tools.js.map +1 -1
  13. package/intern/agent-dispatcher.js +66 -25
  14. package/intern/agent-dispatcher.js.map +1 -1
  15. package/intern/agent-request-frame.d.ts +9 -0
  16. package/intern/agent-request-frame.js +14 -0
  17. package/intern/agent-request-frame.js.map +1 -1
  18. package/intern/agent-router.js +1 -1
  19. package/intern/agent-router.js.map +1 -1
  20. package/intern/agent-session.d.ts +1 -1
  21. package/intern/agent-session.js +1 -1
  22. package/intern/agent-session.js.map +1 -1
  23. package/intern/attach-draft-handle.js +51 -8
  24. package/intern/attach-draft-handle.js.map +1 -1
  25. package/intern/draft-lane-autofix.d.ts +8 -0
  26. package/intern/draft-lane-autofix.js +8 -0
  27. package/intern/draft-lane-autofix.js.map +1 -0
  28. package/intern/draft-lane-classify.d.ts +55 -0
  29. package/intern/draft-lane-classify.js +168 -0
  30. package/intern/draft-lane-classify.js.map +1 -0
  31. package/intern/draft-lane-config.d.ts +16 -0
  32. package/intern/draft-lane-config.js +25 -0
  33. package/intern/draft-lane-config.js.map +1 -0
  34. package/intern/draft-lane-exports.d.ts +7 -0
  35. package/intern/draft-lane-exports.js +102 -0
  36. package/intern/draft-lane-exports.js.map +1 -0
  37. package/intern/draft-lane-imports.d.ts +6 -0
  38. package/intern/draft-lane-imports.js +180 -0
  39. package/intern/draft-lane-imports.js.map +1 -0
  40. package/intern/draft-lane-opens.d.ts +6 -0
  41. package/intern/draft-lane-opens.js +173 -0
  42. package/intern/draft-lane-opens.js.map +1 -0
  43. package/intern/draft-lane-parse.d.ts +16 -0
  44. package/intern/draft-lane-parse.js +104 -0
  45. package/intern/draft-lane-parse.js.map +1 -0
  46. package/intern/draft-lane-persist.d.ts +26 -0
  47. package/intern/draft-lane-persist.js +92 -0
  48. package/intern/draft-lane-persist.js.map +1 -0
  49. package/intern/draft-lane-prompt.d.ts +16 -0
  50. package/intern/draft-lane-prompt.js +59 -0
  51. package/intern/draft-lane-prompt.js.map +1 -0
  52. package/intern/draft-lane-store.d.ts +36 -0
  53. package/intern/draft-lane-store.js +5 -0
  54. package/intern/draft-lane-store.js.map +1 -0
  55. package/intern/draft-lane-transport.d.ts +3 -0
  56. package/intern/draft-lane-transport.js +58 -0
  57. package/intern/draft-lane-transport.js.map +1 -0
  58. package/intern/draft-lane-worker.d.ts +37 -0
  59. package/intern/draft-lane-worker.js +156 -0
  60. package/intern/draft-lane-worker.js.map +1 -0
  61. package/intern/draft-lane.d.ts +60 -0
  62. package/intern/draft-lane.js +148 -0
  63. package/intern/draft-lane.js.map +1 -0
  64. package/intern/eval-handles.d.ts +2 -1
  65. package/intern/eval-handles.js +2 -1
  66. package/intern/eval-handles.js.map +1 -1
  67. package/intern/first-build-request.js +5 -1
  68. package/intern/first-build-request.js.map +1 -1
  69. package/intern/import-synth.d.ts +25 -0
  70. package/intern/import-synth.js +456 -0
  71. package/intern/import-synth.js.map +1 -0
  72. package/intern/inline-build-pass.d.ts +23 -0
  73. package/intern/inline-build-pass.js +27 -0
  74. package/intern/inline-build-pass.js.map +1 -0
  75. package/intern/look-lint-engine.d.ts +9 -0
  76. package/intern/look-lint-engine.js +22 -0
  77. package/intern/look-lint-engine.js.map +1 -1
  78. package/intern/look-lint.d.ts +1 -0
  79. package/intern/look-lint.js +4 -1
  80. package/intern/look-lint.js.map +1 -1
  81. package/intern/mint-job-store.d.ts +50 -2
  82. package/intern/mint-job-store.js +149 -4
  83. package/intern/mint-job-store.js.map +1 -1
  84. package/intern/opens-check.d.ts +14 -0
  85. package/intern/opens-check.js +1044 -0
  86. package/intern/opens-check.js.map +1 -0
  87. package/intern/prompt-assembly.d.ts +19 -0
  88. package/intern/prompt-assembly.js +7 -4
  89. package/intern/prompt-assembly.js.map +1 -1
  90. package/intern/save-build-pass.d.ts +15 -0
  91. package/intern/save-build-pass.js +53 -0
  92. package/intern/save-build-pass.js.map +1 -0
  93. package/package.json +13 -12
  94. package/public/agent-turn-assembly.js +16 -0
  95. package/public/agent-turn-assembly.js.map +1 -1
  96. package/public/handle-prompt-context.d.ts +3 -1
  97. package/public/handle-prompt-context.js +39 -4
  98. package/public/handle-prompt-context.js.map +1 -1
  99. package/public/home-feed-common.js +2 -2
  100. package/public/home-feed-common.js.map +1 -1
  101. package/public/open-chat.d.ts +2 -0
  102. package/public/open-chat.js +80 -11
  103. package/public/open-chat.js.map +1 -1
  104. package/public/related-vibes.js +9 -3
  105. package/public/related-vibes.js.map +1 -1
  106. package/public/shared-mint.d.ts +5 -0
  107. package/public/shared-mint.js +15 -0
  108. package/public/shared-mint.js.map +1 -1
  109. package/types.d.ts +2 -0
  110. package/types.js.map +1 -1
@@ -0,0 +1,456 @@
1
+ import { exception2Result } from "@adviser/cement";
2
+ import { tokenizer, tokTypes } from "acorn";
3
+ import { transform } from "sucrase";
4
+ import { normalizeModuleId, resolveModuleId } from "./bundle-vibe-source.js";
5
+ export const LOOK_EXPORTS = [
6
+ "Button",
7
+ "Card",
8
+ "CardHeader",
9
+ "CardTitle",
10
+ "CardDescription",
11
+ "CardContent",
12
+ "CardFooter",
13
+ "Input",
14
+ "Textarea",
15
+ "Label",
16
+ "Badge",
17
+ "Tabs",
18
+ "TabsList",
19
+ "TabsTrigger",
20
+ "TabsContent",
21
+ "Separator",
22
+ "Skeleton",
23
+ "Table",
24
+ "TableHeader",
25
+ "TableBody",
26
+ "TableRow",
27
+ "TableHead",
28
+ "TableCell",
29
+ "Avatar",
30
+ "AvatarFallback",
31
+ "Progress",
32
+ "cn",
33
+ ];
34
+ export const LOOK_EXTRA_EXPORTS = ["LOOK_CLASS_CANDIDATES"];
35
+ export const OVERLAY_EXPORTS = [
36
+ "Dialog",
37
+ "DialogTrigger",
38
+ "DialogContent",
39
+ "DialogHeader",
40
+ "DialogTitle",
41
+ "DialogDescription",
42
+ "DialogFooter",
43
+ "Sheet",
44
+ "SheetTrigger",
45
+ "SheetContent",
46
+ "SheetHeader",
47
+ "SheetTitle",
48
+ "SheetDescription",
49
+ "SheetFooter",
50
+ "Popover",
51
+ "PopoverTrigger",
52
+ "PopoverContent",
53
+ "Select",
54
+ "SelectTrigger",
55
+ "SelectContent",
56
+ "SelectItem",
57
+ "SelectValue",
58
+ "DropdownMenu",
59
+ "DropdownMenuTrigger",
60
+ "DropdownMenuContent",
61
+ "DropdownMenuItem",
62
+ "Tooltip",
63
+ "TooltipTrigger",
64
+ "TooltipContent",
65
+ "TooltipProvider",
66
+ ];
67
+ export const RUNTIME_HOMES = {
68
+ useFireproof: "use-fireproof",
69
+ fireproof: "use-fireproof",
70
+ useVibe: "use-vibes",
71
+ useViewer: "use-vibes",
72
+ ViewerTag: "use-vibes",
73
+ HandleInput: "use-vibes",
74
+ ImgGen: "use-vibes",
75
+ useImgGen: "use-vibes",
76
+ imgGen: "use-vibes",
77
+ useSocial: "use-vibes",
78
+ useConnection: "use-vibes",
79
+ callAI: "call-ai",
80
+ callAi: "call-ai",
81
+ };
82
+ export const REACT_NAMES = [
83
+ "useState",
84
+ "useEffect",
85
+ "useRef",
86
+ "useMemo",
87
+ "useCallback",
88
+ "useReducer",
89
+ "useContext",
90
+ "useLayoutEffect",
91
+ "useId",
92
+ "useTransition",
93
+ "createContext",
94
+ "forwardRef",
95
+ "memo",
96
+ "Fragment",
97
+ ];
98
+ const LOOK = "@vibes.diy/look";
99
+ const OVERLAY = "@vibes.diy/look/overlay";
100
+ const MODULE_ORDER = ["react", LOOK, OVERLAY, "use-fireproof", "use-vibes", "call-ai"];
101
+ function managedModule(mod) {
102
+ return MODULE_ORDER.find((m) => m === mod);
103
+ }
104
+ export function importSynthEnabled(flag) {
105
+ return flag === "on";
106
+ }
107
+ export function synthesizeImports(args) {
108
+ const out = new Map(args.vfs);
109
+ const notes = [];
110
+ const ids = new Set([...args.vfs.keys()].map(normalizeModuleId));
111
+ const targets = args.paths ?? [...args.vfs.keys()];
112
+ for (const path of targets) {
113
+ const src = args.vfs.get(path);
114
+ if (src === undefined || /\.(jsx?|tsx?)$/.test(path) === false)
115
+ continue;
116
+ const file = synthesizeFile({ path, src, ids });
117
+ out.set(path, file.src);
118
+ notes.push(...file.notes.map((note) => `${path}: ${note}`));
119
+ }
120
+ return { vfs: out, notes };
121
+ }
122
+ export function autofixTurnFiles(args) {
123
+ if (importSynthEnabled(args.importSynthFlag) === false || args.changedPaths.length === 0)
124
+ return { files: args.files, notes: [] };
125
+ const sources = new Map();
126
+ for (const file of args.files) {
127
+ if (file.type === "code-block" && file.filename.startsWith("/~~") === false)
128
+ sources.set(file.filename, file.content);
129
+ }
130
+ const synth = synthesizeImports({ vfs: sources, paths: args.changedPaths.filter((path) => sources.has(path)) });
131
+ if (synth.notes.length === 0)
132
+ return { files: args.files, notes: [] };
133
+ const files = args.files.map((file) => {
134
+ if (file.type !== "code-block")
135
+ return file;
136
+ const content = synth.vfs.get(file.filename);
137
+ return content === undefined || content === file.content ? file : { ...file, content };
138
+ });
139
+ return { files, notes: synth.notes };
140
+ }
141
+ const IDENT = "[A-Za-z_$][\\w$]*";
142
+ function parseSpecifier(text) {
143
+ const m = new RegExp(`^(type\\s+)?(${IDENT})(?:\\s+as\\s+(${IDENT}))?$`).exec(text);
144
+ if (m === null)
145
+ return undefined;
146
+ return { imported: m[2], local: m[3] ?? m[2], typeOnly: m[1] !== undefined, text };
147
+ }
148
+ function parseClause(raw) {
149
+ const clause = raw.trim();
150
+ const braced = /\{([^}]*)\}\s*$/.exec(clause);
151
+ const head = (braced === null ? clause : clause.slice(0, braced.index)).trim().replace(/,$/, "").trim();
152
+ let defaultLocal;
153
+ let namespaceLocal;
154
+ for (const part of head === "" ? [] : head.split(",").map((p) => p.trim())) {
155
+ const ns = new RegExp(`^\\*\\s*as\\s+(${IDENT})$`).exec(part);
156
+ if (ns !== null)
157
+ namespaceLocal = ns[1];
158
+ else if (new RegExp(`^${IDENT}$`).test(part))
159
+ defaultLocal = part;
160
+ else
161
+ return undefined;
162
+ }
163
+ if (braced === null)
164
+ return { defaultLocal, namespaceLocal };
165
+ const named = [];
166
+ for (const part of braced[1].split(",").map((p) => p.trim())) {
167
+ if (part === "")
168
+ continue;
169
+ const spec = parseSpecifier(part);
170
+ if (spec === undefined)
171
+ return undefined;
172
+ named.push(spec);
173
+ }
174
+ return { defaultLocal, namespaceLocal, named };
175
+ }
176
+ function moduleSyntaxLines(path, src) {
177
+ const transforms = [];
178
+ if (/\.tsx?$/.test(path))
179
+ transforms.push("typescript");
180
+ if (/\.(jsx|tsx|js)$/.test(path))
181
+ transforms.push("jsx");
182
+ return exception2Result(() => {
183
+ const js = transform(src, { transforms, jsxRuntime: "automatic", production: true, keepUnusedImports: true }).code;
184
+ const tokens = [...tokenizer(js, { ecmaVersion: "latest", sourceType: "module", locations: true })];
185
+ const importStarts = new Set();
186
+ const specifiers = new Set();
187
+ tokens.forEach((token, idx) => {
188
+ const line = token.loc?.start.line ?? 0;
189
+ const next = tokens[idx + 1]?.type.label;
190
+ const prev = tokens[idx - 1];
191
+ if (token.type === tokTypes._import && next !== "(" && next !== "." && next !== ":")
192
+ importStarts.add(line);
193
+ if (token.type === tokTypes.string &&
194
+ prev !== undefined &&
195
+ (prev.type === tokTypes._import || (prev.type === tokTypes.name && js.slice(prev.start, prev.end) === "from")))
196
+ specifiers.add(line);
197
+ });
198
+ return { importStarts, specifiers };
199
+ });
200
+ }
201
+ function lineAt(src, index) {
202
+ let line = 1;
203
+ for (let i = 0; i < index; i++)
204
+ if (src.charCodeAt(i) === 10)
205
+ line++;
206
+ return line;
207
+ }
208
+ function parseDecls(src, declLines) {
209
+ const decls = [];
210
+ const re = /^([ \t]*)import[ \t]+(?!type[\s{])([\w$*{},\s]+?)\s*from[ \t]*(["'])([^"'\n]+)\3[ \t]*(;?)/gm;
211
+ for (const m of src.matchAll(re)) {
212
+ if (declLines.has(lineAt(src, m.index ?? 0)) === false)
213
+ continue;
214
+ const start = (m.index ?? 0) + m[1].length;
215
+ decls.push({
216
+ start,
217
+ end: (m.index ?? 0) + m[0].length,
218
+ module: m[4],
219
+ quote: m[3],
220
+ semicolon: m[5] === ";",
221
+ clause: parseClause(m[2]),
222
+ });
223
+ }
224
+ return decls;
225
+ }
226
+ function localsOf(clause) {
227
+ return [
228
+ ...(clause.defaultLocal === undefined ? [] : [clause.defaultLocal]),
229
+ ...(clause.namespaceLocal === undefined ? [] : [clause.namespaceLocal]),
230
+ ...(clause.named ?? []).map((s) => s.local),
231
+ ];
232
+ }
233
+ function homeOf(mod, name) {
234
+ switch (true) {
235
+ case mod === "react":
236
+ return "react";
237
+ case mod === LOOK:
238
+ return LOOK_EXPORTS.includes(name) || LOOK_EXTRA_EXPORTS.includes(name) || OVERLAY_EXPORTS.includes(name) ? LOOK : undefined;
239
+ case mod === OVERLAY:
240
+ if (OVERLAY_EXPORTS.includes(name))
241
+ return OVERLAY;
242
+ if (LOOK_EXPORTS.includes(name) || LOOK_EXTRA_EXPORTS.includes(name))
243
+ return LOOK;
244
+ return undefined;
245
+ default:
246
+ return RUNTIME_HOMES[name] ?? mod;
247
+ }
248
+ }
249
+ function completeRelative(args) {
250
+ if (args.spec.endsWith("/"))
251
+ return args.spec;
252
+ const from = normalizeModuleId(args.path);
253
+ const base = normalizeModuleId(from.slice(0, from.lastIndexOf("/")) + "/" + args.spec);
254
+ const resolved = resolveModuleId(from, args.spec, new Set(args.ids));
255
+ if (resolved === undefined || resolved === base || resolved.startsWith(base) === false)
256
+ return args.spec;
257
+ return args.spec + resolved.slice(base.length);
258
+ }
259
+ function declaredNames(body) {
260
+ const names = new Set();
261
+ for (const m of body.matchAll(new RegExp(`(?<![\\w$.])(?:function\\*?|class|const|let|var)\\s+(${IDENT})`, "g")))
262
+ names.add(m[1]);
263
+ for (const m of body.matchAll(/(?<![\w$.])(?:const|let|var)\s*(?:\{([^}]*)\}|\[([^\]]*)\])\s*=/g)) {
264
+ for (const part of (m[1] ?? m[2] ?? "").split(",")) {
265
+ const local = (part.includes(":") ? part.slice(part.indexOf(":") + 1) : part).split("=")[0].replace("...", "").trim();
266
+ if (new RegExp(`^${IDENT}$`).test(local))
267
+ names.add(local);
268
+ }
269
+ }
270
+ return names;
271
+ }
272
+ function usedAsCall(body, name) {
273
+ return new RegExp(`(?<![\\w$.])${name.replace("$", "\\$")}\\s*\\(`).test(body);
274
+ }
275
+ function hasJsx(body) {
276
+ return /<\/[A-Za-z][\w.$-]*\s*>|<[A-Za-z][\w.$-]*(?:\s[^<>]*)?\/>|<\/>/.test(body);
277
+ }
278
+ function renderDecl(decl, state) {
279
+ const parts = [
280
+ ...(state.defaultLocal === undefined ? [] : [state.defaultLocal]),
281
+ ...(state.namespaceLocal === undefined ? [] : [`* as ${state.namespaceLocal}`]),
282
+ ...(state.named.length > 0 ? [`{ ${state.named.map((s) => s.text).join(", ")} }`] : []),
283
+ ];
284
+ return `import ${parts.join(", ")} from ${decl.quote}${decl.module}${decl.quote}${decl.semicolon ? ";" : ""}`;
285
+ }
286
+ function renderNew(mod, defaultLocal, named) {
287
+ const parts = [
288
+ ...(defaultLocal === undefined ? [] : [defaultLocal]),
289
+ ...(named.length > 0 ? [`{ ${named.map((s) => s.text).join(", ")} }`] : []),
290
+ ];
291
+ return `import ${parts.join(", ")} from "${mod}";`;
292
+ }
293
+ function synthesizeFile(args) {
294
+ const notes = [];
295
+ const rLines = moduleSyntaxLines(args.path, args.src);
296
+ if (rLines.isErr())
297
+ return { src: args.src, notes };
298
+ const lines = rLines.Ok();
299
+ const src = args.src.replace(/(\bfrom\s*|\bimport\s+)(["'])(\.{1,2}\/[^"'\n]*)\2/g, (whole, lead, quote, spec, offset, all) => {
300
+ if (lines.specifiers.has(lineAt(all, offset)) === false)
301
+ return whole;
302
+ const completed = completeRelative({ path: args.path, spec, ids: args.ids });
303
+ if (completed === spec)
304
+ return whole;
305
+ notes.push(`ext ${spec} -> ${completed}`);
306
+ return `${lead}${quote}${completed}${quote}`;
307
+ });
308
+ const decls = parseDecls(src, lines.importStarts);
309
+ const states = new Map();
310
+ const bound = new Set();
311
+ const moved = [];
312
+ decls.forEach((decl, idx) => {
313
+ const mod = managedModule(decl.module);
314
+ const clause = decl.clause;
315
+ if (clause === undefined)
316
+ return;
317
+ if (mod === undefined || clause.namespaceLocal !== undefined) {
318
+ for (const local of localsOf(clause))
319
+ bound.add(local);
320
+ return;
321
+ }
322
+ const state = { named: [], hadBraces: clause.named !== undefined, changed: false };
323
+ if (clause.defaultLocal !== undefined) {
324
+ if (bound.has(clause.defaultLocal)) {
325
+ notes.push(`dedupe ${clause.defaultLocal}`);
326
+ state.changed = true;
327
+ }
328
+ else {
329
+ state.defaultLocal = clause.defaultLocal;
330
+ bound.add(clause.defaultLocal);
331
+ }
332
+ }
333
+ for (const spec of clause.named ?? []) {
334
+ const home = spec.typeOnly ? mod : homeOf(mod, spec.imported);
335
+ switch (true) {
336
+ case home === undefined:
337
+ notes.push(`drop ${spec.imported} from ${mod}`);
338
+ state.changed = true;
339
+ break;
340
+ case home !== mod && home !== undefined:
341
+ notes.push(`move ${spec.imported} to ${home}`);
342
+ moved.push({ mod: home, spec });
343
+ state.changed = true;
344
+ break;
345
+ case bound.has(spec.local):
346
+ notes.push(`dedupe ${spec.local}`);
347
+ state.changed = true;
348
+ break;
349
+ default:
350
+ state.named.push(spec);
351
+ bound.add(spec.local);
352
+ }
353
+ }
354
+ states.set(idx, state);
355
+ });
356
+ let body = "";
357
+ let cursor = 0;
358
+ for (const decl of decls) {
359
+ body += src.slice(cursor, decl.start);
360
+ cursor = decl.end;
361
+ }
362
+ body += src.slice(cursor);
363
+ for (const name of declaredNames(body))
364
+ bound.add(name);
365
+ const additions = new Map();
366
+ let addReactDefault = false;
367
+ function add(mod, spec, note) {
368
+ if (bound.has(spec.local))
369
+ return;
370
+ bound.add(spec.local);
371
+ additions.set(mod, [...(additions.get(mod) ?? []), spec]);
372
+ if (note !== undefined)
373
+ notes.push(note);
374
+ }
375
+ const plain = (name) => ({ imported: name, local: name, typeOnly: false, text: name });
376
+ for (const { mod, spec } of moved)
377
+ add(mod, spec, undefined);
378
+ if (bound.has("React") === false && (/(?<![\w$.])React\s*\./.test(body) || (/\.[jt]sx$|\.js$/.test(args.path) && hasJsx(body)))) {
379
+ addReactDefault = true;
380
+ bound.add("React");
381
+ notes.push("add React from react");
382
+ }
383
+ for (const name of REACT_NAMES) {
384
+ if (usedAsCall(body, name) || new RegExp(`(?<![\\w$])<${name}[\\s>/]`).test(body))
385
+ add("react", plain(name), `add ${name} from react`);
386
+ }
387
+ for (const m of body.matchAll(/(?<![\w$])<([A-Z][\w$]*)/g)) {
388
+ const name = m[1];
389
+ const home = LOOK_EXPORTS.includes(name)
390
+ ? LOOK
391
+ : OVERLAY_EXPORTS.includes(name)
392
+ ? OVERLAY
393
+ : RUNTIME_HOMES[name];
394
+ if (home !== undefined)
395
+ add(home, plain(name), `add ${name} from ${home}`);
396
+ }
397
+ if (usedAsCall(body, "cn"))
398
+ add(LOOK, plain("cn"), `add cn from ${LOOK}`);
399
+ for (const [name, home] of Object.entries(RUNTIME_HOMES)) {
400
+ if (usedAsCall(body, name))
401
+ add(home, plain(name), `add ${name} from ${home}`);
402
+ }
403
+ if (notes.length === 0)
404
+ return { src: args.src, notes };
405
+ const newLines = [];
406
+ for (const mod of MODULE_ORDER) {
407
+ const specs = additions.get(mod) ?? [];
408
+ const wantDefault = mod === "react" && addReactDefault;
409
+ if (specs.length === 0 && wantDefault === false)
410
+ continue;
411
+ const targetIdx = decls.findIndex((d, idx) => d.module === mod && states.has(idx));
412
+ const target = states.get(targetIdx);
413
+ if (target !== undefined) {
414
+ target.named.push(...specs);
415
+ if (wantDefault)
416
+ target.defaultLocal = "React";
417
+ target.changed = true;
418
+ }
419
+ else {
420
+ newLines.push(renderNew(mod, wantDefault ? "React" : undefined, specs));
421
+ }
422
+ }
423
+ const edits = [];
424
+ decls.forEach((decl, idx) => {
425
+ const state = states.get(idx);
426
+ if (state === undefined || state.changed === false)
427
+ return;
428
+ const empty = state.defaultLocal === undefined && state.named.length === 0;
429
+ const end = empty && src[decl.end] === "\n" ? decl.end + 1 : decl.end;
430
+ edits.push({ start: decl.start, end, text: empty ? "" : renderDecl(decl, state) });
431
+ });
432
+ if (newLines.length > 0) {
433
+ const block = newLines.join("\n");
434
+ const last = decls[decls.length - 1];
435
+ const lastEdit = last === undefined ? undefined : edits.find((e) => e.start === last.start);
436
+ switch (true) {
437
+ case last === undefined:
438
+ edits.push({ start: 0, end: 0, text: block + "\n" });
439
+ break;
440
+ case lastEdit !== undefined && lastEdit.text === "":
441
+ lastEdit.text = lastEdit.end > (last?.end ?? 0) ? block + "\n" : block;
442
+ break;
443
+ case lastEdit !== undefined:
444
+ lastEdit.text = lastEdit.text + "\n" + block;
445
+ break;
446
+ default:
447
+ edits.push({ start: last?.end ?? 0, end: last?.end ?? 0, text: "\n" + block });
448
+ }
449
+ }
450
+ let rewritten = src;
451
+ for (const edit of [...edits].sort((a, b) => b.start - a.start)) {
452
+ rewritten = rewritten.slice(0, edit.start) + edit.text + rewritten.slice(edit.end);
453
+ }
454
+ return { src: rewritten, notes };
455
+ }
456
+ //# sourceMappingURL=import-synth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-synth.js","sourceRoot":"","sources":["../../jsr/intern/import-synth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { LookLintFileFinding } from "./look-lint-engine.js";
2
+ import { type OpensVerdict } from "./opens-check.js";
3
+ import { type ImportSynthResult } from "./import-synth.js";
4
+ export type SynthesizeImports = (args: {
5
+ readonly vfs: ReadonlyMap<string, string>;
6
+ readonly paths?: readonly string[];
7
+ }) => ImportSynthResult;
8
+ export declare function __setImportSynthesizerForTests(synthesize: SynthesizeImports | undefined): void;
9
+ export interface InlineBuildVerdict extends OpensVerdict {
10
+ readonly lint?: readonly LookLintFileFinding[];
11
+ }
12
+ export interface InlineBuildPassResult {
13
+ readonly vfs: ReadonlyMap<string, string>;
14
+ readonly fixes: readonly string[];
15
+ readonly verdict: InlineBuildVerdict;
16
+ }
17
+ export interface InlineBuildPassArgs {
18
+ readonly vfs: ReadonlyMap<string, string>;
19
+ readonly lintLook: boolean;
20
+ readonly paths?: readonly string[];
21
+ readonly synthesizeImports?: SynthesizeImports | false;
22
+ }
23
+ export declare function runInlineBuildPass(args: InlineBuildPassArgs): Promise<InlineBuildPassResult>;
@@ -0,0 +1,27 @@
1
+ import { loadLookLintEngine } from "./look-lint.js";
2
+ import { checkOpens } from "./opens-check.js";
3
+ import { synthesizeImports } from "./import-synth.js";
4
+ let importSynthesizerOverride;
5
+ export function __setImportSynthesizerForTests(synthesize) {
6
+ importSynthesizerOverride = synthesize;
7
+ }
8
+ export async function runInlineBuildPass(args) {
9
+ const synthesize = args.synthesizeImports ?? importSynthesizerOverride ?? synthesizeImports;
10
+ const synthesized = synthesize === false ? { vfs: args.vfs, notes: [] } : synthesize({ vfs: args.vfs, paths: args.paths });
11
+ const fixes = [...synthesized.notes];
12
+ let fixedVfs = synthesized.vfs;
13
+ let lint;
14
+ if (args.lintLook) {
15
+ const engine = await loadLookLintEngine();
16
+ const linted = engine.lintAndFixLookSource(Object.fromEntries(fixedVfs));
17
+ if (linted.fixed.length > 0) {
18
+ fixedVfs = new Map(Object.entries(linted.files));
19
+ for (const path of linted.fixed)
20
+ fixes.push(`${path}: design-system lint autofix`);
21
+ }
22
+ lint = linted.findings;
23
+ }
24
+ const opens = checkOpens(fixedVfs);
25
+ return { vfs: fixedVfs, fixes, verdict: { ...opens, ...(lint === undefined ? {} : { lint }) } };
26
+ }
27
+ //# sourceMappingURL=inline-build-pass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-build-pass.js","sourceRoot":"","sources":["../../jsr/intern/inline-build-pass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAqB,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAA0B,MAAM,mBAAmB,CAAC;AAsC9E,IAAI,yBAAwD,CAAC;AAC7D,MAAM,UAAU,8BAA8B,CAAC,UAAyC;IACtF,yBAAyB,GAAG,UAAU,CAAC;AACzC,CAAC;AAmCD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAyB;IAEhE,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,IAAI,yBAAyB,IAAI,iBAAiB,CAAC;IAC5F,MAAM,WAAW,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3H,MAAM,KAAK,GAAa,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,QAAQ,GAAgC,WAAW,CAAC,GAAG,CAAC;IAG5D,IAAI,IAAgD,CAAC;IACrD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,8BAA8B,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC;IACzB,CAAC;IAGD,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAGnC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;AAClG,CAAC"}
@@ -5,3 +5,12 @@ export interface LookLintFinding {
5
5
  }
6
6
  export declare function rewriteRestyleMessage(message: string): string;
7
7
  export declare function lintLookSource(files: Readonly<Record<string, string>>): readonly LookLintFinding[];
8
+ export interface LookLintFileFinding extends LookLintFinding {
9
+ readonly file: string;
10
+ }
11
+ export interface LookLintFixResult {
12
+ readonly files: Readonly<Record<string, string>>;
13
+ readonly fixed: readonly string[];
14
+ readonly findings: readonly LookLintFileFinding[];
15
+ }
16
+ export declare function lintAndFixLookSource(files: Readonly<Record<string, string>>): LookLintFixResult;
@@ -44,4 +44,26 @@ export function lintLookSource(files) {
44
44
  }
45
45
  return findings;
46
46
  }
47
+ export function lintAndFixLookSource(files) {
48
+ const linter = new Linter({ configType: "flat", cwd: NOWHERE });
49
+ const out = { ...files };
50
+ const fixed = [];
51
+ const findings = [];
52
+ for (const [path, src] of Object.entries(files)) {
53
+ if (/\.(?:jsx|js)$/.test(path) === false)
54
+ continue;
55
+ const report = linter.verifyAndFix(src, LOOK_LINT_CONFIG, { filename: `${NOWHERE}/${path}`, fix: true });
56
+ if (report.fixed === true) {
57
+ out[path] = report.output;
58
+ fixed.push(path);
59
+ }
60
+ for (const msg of report.messages) {
61
+ if (isLookRule(msg.ruleId) === false)
62
+ continue;
63
+ const message = msg.ruleId === "shadcn/no-restyle" ? rewriteRestyleMessage(msg.message) : msg.message;
64
+ findings.push({ ruleId: msg.ruleId, line: msg.line, message, file: path });
65
+ }
66
+ }
67
+ return { files: out, fixed, findings };
68
+ }
47
69
  //# sourceMappingURL=look-lint-engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"look-lint-engine.js","sourceRoot":"","sources":["../../jsr/intern/look-lint-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,MAAM,MAAM,cAAc,CAAC;AAoClC,MAAM,gBAAgB,GAAoB;IACxC;QACE,KAAK,EAAE,CAAC,eAAe,CAAC;QACxB,eAAe,EAAE,EAAE,aAAa,EAAE,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;QACnE,OAAO,EAAE,EAAE,MAAM,EAAE;QACnB,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,CAAC,yBAAyB,CAAC,EAAE,EAAE;QACvE,KAAK,EAAE;YACL,mBAAmB,EAAE,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,sBAAsB,EAAE,OAAO;YAC/B,4BAA4B,EAAE,OAAO;YACrC,yBAAyB,EAAE,OAAO;YAClC,2BAA2B,EAAE,OAAO;YACpC,+BAA+B,EAAE,OAAO;SACzC;KACF;CACF,CAAC;AAIF,MAAM,OAAO,GAAG,cAAc,CAAC;AAG/B,SAAS,UAAU,CAAC,MAAiC;IACnD,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACpE,CAAC;AAaD,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAU,EAAE,CACnD,GAAG,SAAS,gGAAgG;IAC5G,+IAA+I;IAC/I,2EAA2E,CAAC;AAG9E,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,MAAM,CAAC,GAAG,sCAAsC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IAC/B,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAMD,MAAM,UAAU,cAAc,CAAC,KAAuC;IACpE,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QAC1C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,QAAQ,EAAE,GAAG,OAAO,IAAI,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;YAI3F,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK;gBAAE,SAAS;YAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,KAAK,mBAAmB,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;YACtG,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"look-lint-engine.js","sourceRoot":"","sources":["../../jsr/intern/look-lint-engine.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export interface LookLintResult {
4
4
  readonly total: number;
5
5
  readonly rules: Record<string, number>;
6
6
  }
7
+ export declare function loadLookLintEngine(): Promise<typeof import("./look-lint-engine.js")>;
7
8
  export declare function lintTurnFiles(files: Readonly<Record<string, string>>): Promise<LookLintResult>;
8
9
  export declare function lookLintProperties(lookLint: LookLintResult): Record<string, unknown>;
9
10
  export type LookLintCtx = VibesApiSQLCtx;
@@ -2,8 +2,11 @@ import { eq } from "drizzle-orm";
2
2
  import { DERIVED_MANIFEST_PREFIX, fileSystemItem, parseArray } from "@vibes.diy/api-types";
3
3
  import { resolveVfsFromFileSystem } from "./version-timeline.js";
4
4
  export const LOOK_LINT_THEME = "house";
5
+ export async function loadLookLintEngine() {
6
+ return import("./look-lint-engine.js");
7
+ }
5
8
  export async function lintTurnFiles(files) {
6
- const { lintLookSource } = await import("./look-lint-engine.js");
9
+ const { lintLookSource } = await loadLookLintEngine();
7
10
  const rules = {};
8
11
  let total = 0;
9
12
  for (const finding of lintLookSource(files)) {
@@ -1 +1 @@
1
- {"version":3,"file":"look-lint.js","sourceRoot":"","sources":["../../jsr/intern/look-lint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"look-lint.js","sourceRoot":"","sources":["../../jsr/intern/look-lint.ts"],"names":[],"mappings":"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"}