@vibes.diy/call-ai-v2 2.2.1-dev.1 → 2.2.1

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 CHANGED
@@ -179,23 +179,6 @@ Parses markdown structure from accumulated content, detecting code fences and im
179
179
  **Input:** `DeltaStreamMsg`
180
180
  **Messages:** `block.begin`, `block.toplevel.begin/line/end`, `block.code.begin/line/end`, `block.image`, `block.end`, `block.stats`
181
181
 
182
- `block.code.*` carries an optional `path` field, derived aider-style from the most-recent non-blank toplevel line preceding the fence (if it looks like a relative path with a recognized extension). Falls back to `App.jsx` otherwise.
183
-
184
- ### fence-body-parser.ts
185
-
186
- Pure function that turns the lines inside a code fence into `Edit[]`. A body with no markers is a single `create`. A body with `<<<<<<< SEARCH` / `=======` / `>>>>>>> REPLACE` markers becomes one or more `replace` edits (multiple sections allowed in one fence).
187
-
188
- ### apply-edits.ts
189
-
190
- Pure helpers `applyReplace` and `applyEdits`. `applyReplace` first tries an exact match; on failure it falls back to a trailing-whitespace-tolerant match. Result reports `matchKind` (`exact` | `trailing-ws`).
191
-
192
- ### filesystem-stream.ts
193
-
194
- Aider-style virtual filesystem stage. Sits after `sections-stream`. Owns a `VirtualFS = Map<path, string>` for the life of one streamed turn, seeded from the caller-supplied `seed` (typically the saved `App.jsx`). Each `block.code.end` is parsed via `parseFenceBody`; the resulting edits are applied with `applyEdits`. On success, emits `fs.file.snapshot`. Failed sections (parse errors, missing or ambiguous SEARCH) emit `fs.apply.error` and leave the VFS unchanged. On `block.end`, emits `fs.turn.end` with the final files map.
195
-
196
- **Input:** `BlockStreamMsg`
197
- **Messages added:** `fs.file.snapshot`, `fs.apply.error`, `fs.turn.end`
198
-
199
182
  ## The Passthrough Pattern
200
183
 
201
184
  Streams use `passthrough()` to automatically forward all upstream messages while adding their own:
@@ -263,41 +246,21 @@ if (isDeltaStats(msg)) console.log("Delta stats:", msg.stats);
263
246
  if (isBlockStats(msg)) console.log("Block stats:", msg.stats);
264
247
  ```
265
248
 
266
- ## Filesystem stage usage
267
-
268
- ```typescript
269
- import { createSectionsStream, createFileSystemStream, isFsFileSnapshot, isFsTurnEnd } from "call-ai/v2";
270
-
271
- const seed = new Map([["App.jsx", priorAppJsx]]);
272
-
273
- const pipeline = response.body
274
- // …line/data/sse/delta stages…
275
- .pipeThrough(createSectionsStream(streamId, createId))
276
- .pipeThrough(createFileSystemStream({ streamId, createId, seed }));
277
-
278
- for await (const msg of pipeline) {
279
- if (isFsFileSnapshot(msg)) {
280
- // Update live preview with msg.content for msg.path
281
- }
282
- if (isFsTurnEnd(msg)) {
283
- // Persist msg.files to the session doc
284
- }
285
- }
286
- ```
287
-
288
249
  ## Current Status
289
250
 
290
- Production: this pipeline is the live streaming path for vibes.diy chat
291
- ([`prompt-chat-section.ts`](../../vibes.diy/api/svc/public/prompt-chat-section.ts)
292
- pipes the LLM response body through line → data → sse → delta → sections, and
293
- the client reducer consumes the typed block messages directly).
251
+ Currently used by:
252
+
253
+ - CLI tool (`cli.ts`) for testing and debugging
254
+ - Unit tests
294
255
 
295
- Also used by:
256
+ Integration plans (not part of this package):
296
257
 
297
- - CLI tool (`cli.ts`) for replay/debugging captured SSE files
298
- - Unit tests across the v2 modules
258
+ - vibes.diy chat using advanced API
259
+ - Auth for vibes iframe runtime
260
+ - Generated vibes legacy callAI wrapper
299
261
 
300
262
  ## TODO
301
263
 
302
264
  - [ ] **Chunked image decoding**: Add `createImageDecodeStream` that fetches image URLs, decodes to bytes, and emits `image.begin`/`image.fragment`/`image.end` with shared `imageId` for streaming large images in fixed-size chunks
303
265
  - [ ] **Production worker**: Deploy pipeline to Cloudflare Worker with events as network transport, client consumes typed events directly instead of raw SSE
266
+ - [ ] **Migrate vibes.diy chat**: Replace `call-ai` v1 + `segment-parser.ts` with v2 pipeline, consuming typed `isCodeLine`/`isToplevelLine` events instead of regex parsing
package/block-stream.d.ts CHANGED
@@ -180,7 +180,6 @@ export declare const CodeBeginMsg: import("arktype/internal/variants/object.ts")
180
180
  type: "block.code.begin";
181
181
  sectionId: string;
182
182
  lang: string;
183
- path?: string | undefined;
184
183
  }, {}>;
185
184
  export declare const CodeLineMsg: import("arktype/internal/variants/object.ts").ObjectType<{
186
185
  blockId: string;
@@ -193,7 +192,6 @@ export declare const CodeLineMsg: import("arktype/internal/variants/object.ts").
193
192
  type: "block.code.line";
194
193
  sectionId: string;
195
194
  lang: string;
196
- path?: string | undefined;
197
195
  }, {}>;
198
196
  export declare const CodeEndMsg: import("arktype/internal/variants/object.ts").ObjectType<{
199
197
  blockId: string;
@@ -209,7 +207,6 @@ export declare const CodeEndMsg: import("arktype/internal/variants/object.ts").O
209
207
  type: "block.code.end";
210
208
  sectionId: string;
211
209
  lang: string;
212
- path?: string | undefined;
213
210
  }, {}>;
214
211
  export declare const BlockImageMsg: import("arktype/internal/variants/object.ts").ObjectType<{
215
212
  blockId: string;
@@ -302,7 +299,6 @@ export declare const CodeMsg: import("arktype/internal/variants/object.ts").Obje
302
299
  type: "block.code.begin";
303
300
  sectionId: string;
304
301
  lang: string;
305
- path?: string | undefined;
306
302
  } | {
307
303
  blockId: string;
308
304
  streamId: string;
@@ -314,7 +310,6 @@ export declare const CodeMsg: import("arktype/internal/variants/object.ts").Obje
314
310
  type: "block.code.line";
315
311
  sectionId: string;
316
312
  lang: string;
317
- path?: string | undefined;
318
313
  } | {
319
314
  blockId: string;
320
315
  streamId: string;
@@ -329,7 +324,6 @@ export declare const CodeMsg: import("arktype/internal/variants/object.ts").Obje
329
324
  type: "block.code.end";
330
325
  sectionId: string;
331
326
  lang: string;
332
- path?: string | undefined;
333
327
  }, {}>;
334
328
  export declare const LineMsg: import("arktype/internal/variants/object.ts").ObjectType<{
335
329
  blockId: string;
@@ -352,7 +346,6 @@ export declare const LineMsg: import("arktype/internal/variants/object.ts").Obje
352
346
  type: "block.code.line";
353
347
  sectionId: string;
354
348
  lang: string;
355
- path?: string | undefined;
356
349
  }, {}>;
357
350
  export declare const BeginMsg: import("arktype/internal/variants/object.ts").ObjectType<{
358
351
  blockId: string;
@@ -371,7 +364,6 @@ export declare const BeginMsg: import("arktype/internal/variants/object.ts").Obj
371
364
  type: "block.code.begin";
372
365
  sectionId: string;
373
366
  lang: string;
374
- path?: string | undefined;
375
367
  }, {}>;
376
368
  export declare const BlockStreamMsg: import("arktype/internal/variants/object.ts").ObjectType<{
377
369
  blockId: string;
@@ -467,7 +459,6 @@ export declare const BlockStreamMsg: import("arktype/internal/variants/object.ts
467
459
  type: "block.code.begin";
468
460
  sectionId: string;
469
461
  lang: string;
470
- path?: string | undefined;
471
462
  } | {
472
463
  blockId: string;
473
464
  streamId: string;
@@ -479,7 +470,6 @@ export declare const BlockStreamMsg: import("arktype/internal/variants/object.ts
479
470
  type: "block.code.line";
480
471
  sectionId: string;
481
472
  lang: string;
482
- path?: string | undefined;
483
473
  } | {
484
474
  blockId: string;
485
475
  streamId: string;
@@ -494,7 +484,6 @@ export declare const BlockStreamMsg: import("arktype/internal/variants/object.ts
494
484
  type: "block.code.end";
495
485
  sectionId: string;
496
486
  lang: string;
497
- path?: string | undefined;
498
487
  } | {
499
488
  blockId: string;
500
489
  streamId: string;
@@ -638,7 +627,6 @@ export declare const BlockMsgs: import("arktype/internal/variants/object.ts").Ob
638
627
  type: "block.code.begin";
639
628
  sectionId: string;
640
629
  lang: string;
641
- path?: string | undefined;
642
630
  } | {
643
631
  blockId: string;
644
632
  streamId: string;
@@ -650,7 +638,6 @@ export declare const BlockMsgs: import("arktype/internal/variants/object.ts").Ob
650
638
  type: "block.code.line";
651
639
  sectionId: string;
652
640
  lang: string;
653
- path?: string | undefined;
654
641
  } | {
655
642
  blockId: string;
656
643
  streamId: string;
@@ -665,7 +652,6 @@ export declare const BlockMsgs: import("arktype/internal/variants/object.ts").Ob
665
652
  type: "block.code.end";
666
653
  sectionId: string;
667
654
  lang: string;
668
- path?: string | undefined;
669
655
  } | {
670
656
  blockId: string;
671
657
  streamId: string;
package/block-stream.js CHANGED
@@ -87,13 +87,11 @@ export const CodeBeginMsg = type({
87
87
  type: "'block.code.begin'",
88
88
  sectionId: "string",
89
89
  lang: "string",
90
- "path?": "string",
91
90
  }).and(BlockBase);
92
91
  export const CodeLineMsg = type({
93
92
  type: "'block.code.line'",
94
93
  sectionId: "string",
95
94
  lang: "string",
96
- "path?": "string",
97
95
  })
98
96
  .and(BlockBase)
99
97
  .and(BlockLine);
@@ -101,7 +99,6 @@ export const CodeEndMsg = type({
101
99
  type: "'block.code.end'",
102
100
  sectionId: "string",
103
101
  lang: "string",
104
- "path?": "string",
105
102
  })
106
103
  .and(BlockBase)
107
104
  .and(BlockStatsBox);
@@ -141,8 +138,6 @@ export const isBlockImage = (msg, streamId) => !(BlockImageMsg(msg) instanceof t
141
138
  export const isBlockStreamMsg = (msg, streamId) => !(BlockStreamMsg(msg) instanceof type.errors) && (!streamId || msg.streamId === streamId);
142
139
  const CODE_FENCE_START = /^```(\w*)$/;
143
140
  const CODE_FENCE_END = /^```$/;
144
- const PATH_LINE = /^[\w\-./]+\.(?:jsx?|tsx?|mjs|cjs|md|json|html|css)$/;
145
- const DEFAULT_PATH = "App.jsx";
146
141
  function addStat(target, source) {
147
142
  target.lines += source.lines;
148
143
  target.bytes += source.bytes;
@@ -158,8 +153,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
158
153
  let sectionStarted = false;
159
154
  let currentLang = "";
160
155
  let currentSectionId = "";
161
- let currentPath = DEFAULT_PATH;
162
- let lastToplevelLine = "";
163
156
  const toplevelStat = { lines: 0, bytes: 0, cnt: 0 };
164
157
  const codeStat = { lines: 0, bytes: 0, cnt: 0 };
165
158
  const imageStat = { lines: 0, bytes: 0, cnt: 0 };
@@ -253,9 +246,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
253
246
  }
254
247
  mode = "code";
255
248
  currentLang = fenceStartMatch[1] || "";
256
- const trimmedPath = lastToplevelLine.trim();
257
- currentPath = PATH_LINE.test(trimmedPath) ? trimmedPath : DEFAULT_PATH;
258
- lastToplevelLine = "";
259
249
  sectionStarted = true;
260
250
  currentSectionId = createId();
261
251
  blockStat = { lines: 0, bytes: 0, cnt: 0 };
@@ -263,7 +253,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
263
253
  controller.enqueue({
264
254
  type: "block.code.begin",
265
255
  lang: currentLang.toLowerCase(),
266
- path: currentPath,
267
256
  timestamp: new Date(),
268
257
  sectionId: currentSectionId,
269
258
  blockId,
@@ -288,8 +277,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
288
277
  });
289
278
  }
290
279
  blockStat.bytes += content.length;
291
- if (content.trim().length > 0)
292
- lastToplevelLine = content;
293
280
  controller.enqueue({
294
281
  type: "block.toplevel.line",
295
282
  timestamp: new Date(),
@@ -319,7 +306,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
319
306
  seq: seq++,
320
307
  blockNr: blockNr++,
321
308
  lang: currentLang.toLowerCase(),
322
- path: currentPath,
323
309
  stats: blockStat,
324
310
  });
325
311
  mode = "toplevel";
@@ -330,7 +316,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
330
316
  controller.enqueue({
331
317
  type: "block.code.line",
332
318
  lang: currentLang.toLowerCase(),
333
- path: currentPath,
334
319
  timestamp: new Date(),
335
320
  sectionId: currentSectionId,
336
321
  lineNr: blockStat.lines++,
@@ -374,7 +359,6 @@ export function createBlockStream(streamId, innerStreamId, createId) {
374
359
  blockId,
375
360
  streamId,
376
361
  lang: currentLang.toLowerCase(),
377
- path: currentPath,
378
362
  sectionId: currentSectionId,
379
363
  seq: seq++,
380
364
  blockNr: blockNr++,
@@ -1 +1 @@
1
- {"version":3,"file":"block-stream.js","sourceRoot":"","sources":["../jsr/block-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block-stream.js","sourceRoot":"","sources":["../jsr/block-stream.ts"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -6,7 +6,4 @@ export * from "./data-stream.js";
6
6
  export * from "./sse-stream.js";
7
7
  export * from "./delta-stream.js";
8
8
  export * from "./block-stream.js";
9
- export * from "./apply-edits.js";
10
- export * from "./fence-body-parser.js";
11
- export * from "./filesystem-stream.js";
12
9
  export * from "./passthrough.js";
package/index.js CHANGED
@@ -6,8 +6,5 @@ export * from "./data-stream.js";
6
6
  export * from "./sse-stream.js";
7
7
  export * from "./delta-stream.js";
8
8
  export * from "./block-stream.js";
9
- export * from "./apply-edits.js";
10
- export * from "./fence-body-parser.js";
11
- export * from "./filesystem-stream.js";
12
9
  export * from "./passthrough.js";
13
10
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/call-ai-v2",
3
- "version": "2.2.1-dev.1",
3
+ "version": "2.2.1",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "index.js",
package/apply-edits.d.ts DELETED
@@ -1,39 +0,0 @@
1
- export interface ApplyReplaceInput {
2
- readonly source: string;
3
- readonly search: string;
4
- readonly replace: string;
5
- }
6
- export interface ApplyEditOk {
7
- readonly ok: true;
8
- readonly content: string;
9
- readonly matchKind: "exact" | "trailing-ws";
10
- }
11
- export type ApplyEditErrReason = "no-match" | "multiple-match";
12
- export interface ApplyEditErr {
13
- readonly ok: false;
14
- readonly reason: ApplyEditErrReason;
15
- readonly matchCount: number;
16
- }
17
- export type ApplyEditResult = ApplyEditOk | ApplyEditErr;
18
- export declare function applyReplace(input: ApplyReplaceInput): ApplyEditResult;
19
- export interface ReplaceEdit {
20
- readonly op: "replace";
21
- readonly search: string;
22
- readonly replace: string;
23
- }
24
- export interface CreateEdit {
25
- readonly op: "create";
26
- readonly content: string;
27
- }
28
- export type Edit = ReplaceEdit | CreateEdit;
29
- export interface ApplyEditsError {
30
- readonly index: number;
31
- readonly reason: ApplyEditErrReason;
32
- readonly matchCount: number;
33
- readonly search: string;
34
- }
35
- export interface ApplyEditsResult {
36
- readonly content: string;
37
- readonly errors: readonly ApplyEditsError[];
38
- }
39
- export declare function applyEdits(seed: string, edits: readonly Edit[]): ApplyEditsResult;
package/apply-edits.js DELETED
@@ -1,76 +0,0 @@
1
- function rstripLines(s) {
2
- return s
3
- .split("\n")
4
- .map((l) => l.replace(/[ \t]+$/, ""))
5
- .join("\n");
6
- }
7
- function findAllOccurrences(haystack, needle) {
8
- const hits = [];
9
- if (needle.length === 0)
10
- return hits;
11
- let from = 0;
12
- while (true) {
13
- const idx = haystack.indexOf(needle, from);
14
- if (idx === -1)
15
- break;
16
- hits.push(idx);
17
- from = idx + needle.length;
18
- }
19
- return hits;
20
- }
21
- export function applyReplace(input) {
22
- const { source, search, replace } = input;
23
- if (search.length === 0) {
24
- return { ok: false, reason: "no-match", matchCount: 0 };
25
- }
26
- const exact = findAllOccurrences(source, search);
27
- if (exact.length === 1) {
28
- const idx = exact[0];
29
- return {
30
- ok: true,
31
- matchKind: "exact",
32
- content: source.slice(0, idx) + replace + source.slice(idx + search.length),
33
- };
34
- }
35
- if (exact.length > 1) {
36
- return { ok: false, reason: "multiple-match", matchCount: exact.length };
37
- }
38
- const sourceTrimmed = rstripLines(source);
39
- const searchTrimmed = rstripLines(search);
40
- const tolerant = findAllOccurrences(sourceTrimmed, searchTrimmed);
41
- if (tolerant.length === 1) {
42
- const idx = tolerant[0];
43
- return {
44
- ok: true,
45
- matchKind: "trailing-ws",
46
- content: sourceTrimmed.slice(0, idx) + replace + sourceTrimmed.slice(idx + searchTrimmed.length),
47
- };
48
- }
49
- if (tolerant.length > 1) {
50
- return { ok: false, reason: "multiple-match", matchCount: tolerant.length };
51
- }
52
- return { ok: false, reason: "no-match", matchCount: 0 };
53
- }
54
- export function applyEdits(seed, edits) {
55
- let content = seed;
56
- const errors = [];
57
- edits.forEach((edit, index) => {
58
- if (edit.op === "create") {
59
- content = edit.content;
60
- return;
61
- }
62
- const r = applyReplace({ source: content, search: edit.search, replace: edit.replace });
63
- if (r.ok) {
64
- content = r.content;
65
- return;
66
- }
67
- errors.push({
68
- index,
69
- reason: r.reason,
70
- matchCount: r.matchCount,
71
- search: edit.search,
72
- });
73
- });
74
- return { content, errors };
75
- }
76
- //# sourceMappingURL=apply-edits.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apply-edits.js","sourceRoot":"","sources":["../jsr/apply-edits.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,85 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { applyEdits, applyReplace } from "./apply-edits.js";
3
- describe("applyReplace", () => {
4
- it("replaces a unique exact match", () => {
5
- const r = applyReplace({ source: "hello world", search: "world", replace: "there" });
6
- expect(r).toEqual({ ok: true, matchKind: "exact", content: "hello there" });
7
- });
8
- it("fails with no-match when search is absent", () => {
9
- const r = applyReplace({ source: "hello world", search: "xyz", replace: "abc" });
10
- expect(r).toEqual({ ok: false, reason: "no-match", matchCount: 0 });
11
- });
12
- it("fails with multiple-match when search appears twice", () => {
13
- const r = applyReplace({ source: "ab ab", search: "ab", replace: "cd" });
14
- expect(r.ok).toBe(false);
15
- if (r.ok === false) {
16
- expect(r.reason).toBe("multiple-match");
17
- expect(r.matchCount).toBe(2);
18
- }
19
- });
20
- it("treats empty search as no-match", () => {
21
- const r = applyReplace({ source: "hello", search: "", replace: "x" });
22
- expect(r).toEqual({ ok: false, reason: "no-match", matchCount: 0 });
23
- });
24
- it("preserves whitespace and indentation on exact match", () => {
25
- const r = applyReplace({
26
- source: "line1\n line2\nline3",
27
- search: " line2",
28
- replace: " LINE2",
29
- });
30
- expect(r).toEqual({ ok: true, matchKind: "exact", content: "line1\n LINE2\nline3" });
31
- });
32
- it("falls back to trailing-whitespace-tolerant match", () => {
33
- const r = applyReplace({ source: "foo \nbar\nbaz", search: "foo\nbar", replace: "FOO\nBAR" });
34
- expect(r.ok).toBe(true);
35
- if (r.ok === true) {
36
- expect(r.matchKind).toBe("trailing-ws");
37
- expect(r.content).toBe("FOO\nBAR\nbaz");
38
- }
39
- });
40
- it("tolerant fallback still reports multiple-match", () => {
41
- const r = applyReplace({ source: "foo \nfoo\t\nend", search: "foo", replace: "X" });
42
- expect(r.ok).toBe(false);
43
- if (r.ok === false)
44
- expect(r.reason).toBe("multiple-match");
45
- });
46
- });
47
- describe("applyEdits", () => {
48
- it("applies a create then a sequence of replaces", () => {
49
- const edits = [
50
- { op: "create", content: "const a = 1;\nconst b = 2;\n" },
51
- { op: "replace", search: "const a = 1;", replace: "const a = 10;" },
52
- { op: "replace", search: "const b = 2;", replace: "const b = 20;" },
53
- ];
54
- const r = applyEdits("", edits);
55
- expect(r.content).toBe("const a = 10;\nconst b = 20;\n");
56
- expect(r.errors).toEqual([]);
57
- });
58
- it("uses seed when first edit is a replace", () => {
59
- const seed = "hello world";
60
- const r = applyEdits(seed, [{ op: "replace", search: "world", replace: "there" }]);
61
- expect(r.content).toBe("hello there");
62
- expect(r.errors).toEqual([]);
63
- });
64
- it("collects failures and continues with unchanged source", () => {
65
- const seed = "one two three";
66
- const r = applyEdits(seed, [
67
- { op: "replace", search: "missing", replace: "x" },
68
- { op: "replace", search: "two", replace: "TWO" },
69
- { op: "replace", search: "e", replace: "E" },
70
- ]);
71
- expect(r.content).toBe("one TWO three");
72
- expect(r.errors).toHaveLength(2);
73
- expect(r.errors[0]).toMatchObject({ index: 0, reason: "no-match" });
74
- expect(r.errors[1]).toMatchObject({ index: 2, reason: "multiple-match" });
75
- });
76
- it("create after replaces resets content", () => {
77
- const r = applyEdits("original", [
78
- { op: "replace", search: "original", replace: "edited" },
79
- { op: "create", content: "fresh" },
80
- ]);
81
- expect(r.content).toBe("fresh");
82
- expect(r.errors).toEqual([]);
83
- });
84
- });
85
- //# sourceMappingURL=apply-edits.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apply-edits.test.js","sourceRoot":"","sources":["../jsr/apply-edits.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};