@ottocode/web-sdk 0.1.314 → 0.1.315

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.
@@ -0,0 +1,6 @@
1
+ export type StringEditPreview = {
2
+ oldString: string;
3
+ newString: string;
4
+ };
5
+ export declare function extractStreamingMultiEditPreviewEdits(buffer: string): StringEditPreview[];
6
+ //# sourceMappingURL=tool-preview-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-preview-helpers.d.ts","sourceRoot":"","sources":["../../src/hooks/tool-preview-helpers.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC;AAsEF,wBAAgB,qCAAqC,CACpD,MAAM,EAAE,MAAM,GACZ,iBAAiB,EAAE,CA8BrB"}
@@ -185,6 +185,7 @@ export declare function useSetDefaultAgent(): import("@tanstack/react-query").Us
185
185
  reasoningText?: boolean;
186
186
  reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
187
187
  theme?: "light" | "dark";
188
+ tuiTheme?: string;
188
189
  vimMode?: boolean;
189
190
  compactThread?: boolean;
190
191
  fontFamily?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"useAgents.d.ts","sourceRoot":"","sources":["../../src/hooks/useAgents.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG9E,YAAY,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,GAChB,MAAM,0BAA0B,CAAC;AAElC,UAAU,gBAAgB;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB;;;;;;;;mBAqIqzsC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UA1Gj2tC;AAED,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;;;;;;;;mBAwGktyC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;UA9FjvzC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB;;;;;;;;mBAwFozsC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UAjFj2tC;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,gBAAqB;;;mBA+E2i4C,CAAC;;;kBAA6R,CAAC;gBAA0D,CAAC;aAA4B,CAAC;;;UArE994C;AAED,wBAAgB,cAAc;;;;;;;;mBAmE6+1C,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UAhEl92C,MAAM;WAAS,gBAAgB;YAQtE;AAED,wBAAgB,cAAc;;;;;;;;;;mBAsDq4vC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UA7Cz4wC,MAAM;YACJ,OAAO,GAAG,QAAQ;YAmB5B;AAED,wBAAgB,kBAAkB;;;;;;oBAuB+/E,CAAC;kBAAsD,CAAC;qBAA2B,CAAC;sBAA4B,CAAC;aAAmE,CAAC;eAA8B,CAAC;qBAA2B,CAAC;kBAAwB,CAAC;kBAAuB,CAAC;qBAA2B,CAAC;wBAA8B,CAAC;kCAAwC,CAAC;uBAAmC,CAAC;mBAAyB,CAAC;;2BAbn+F;AAED,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,MAAM,CAQR"}
1
+ {"version":3,"file":"useAgents.d.ts","sourceRoot":"","sources":["../../src/hooks/useAgents.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG9E,YAAY,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,GAChB,MAAM,0BAA0B,CAAC;AAElC,UAAU,gBAAgB;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB;;;;;;;;mBAqIo1sC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UA1Gh4tC;AAED,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;;;;;;;;mBAwGivyC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;UA9FhxzC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB;;;;;;;;mBAwFm1sC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UAjFh4tC;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,gBAAqB;;;mBA+E0k4C,CAAC;;;kBAA6R,CAAC;gBAA0D,CAAC;aAA4B,CAAC;;;UArE7/4C;AAED,wBAAgB,cAAc;;;;;;;;mBAmE4g2C,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UAhEj/2C,MAAM;WAAS,gBAAgB;YAQtE;AAED,wBAAgB,cAAc;;;;;;;;;;mBAsDo6vC,CAAC;0BAAwC,CAAC;;sBAA8D,CAAC;oBAAyC,CAAC;;;sBAA2F,CAAC;oBAAyC,CAAC;;;sBAA0F,CAAC;oBAAyC,CAAC;;gBAAoD,CAAC;aAA2B,CAAC;;;;;;UA7Cx6wC,MAAM;YACJ,OAAO,GAAG,QAAQ;YAmB5B;AAED,wBAAgB,kBAAkB;;;;;;oBAuB0iF,CAAC;kBAAsD,CAAC;qBAA2B,CAAC;sBAA4B,CAAC;aAAmE,CAAC;gBAA+B,CAAC;eAAoB,CAAC;qBAA2B,CAAC;kBAAwB,CAAC;kBAAuB,CAAC;qBAA2B,CAAC;wBAA8B,CAAC;kCAAwC,CAAC;uBAAmC,CAAC;mBAAyB,CAAC;;2BAbpiG;AAED,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,MAAM,CAQR"}
@@ -25,6 +25,7 @@ export declare function useChatComposer({ sessionId, defaultAgent, }?: UseChatCo
25
25
  reasoningText?: boolean;
26
26
  reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
27
27
  theme?: "light" | "dark";
28
+ tuiTheme?: string;
28
29
  vimMode?: boolean;
29
30
  compactThread?: boolean;
30
31
  fontFamily?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"useChatComposer.d.ts","sourceRoot":"","sources":["../../src/hooks/useChatComposer.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,sBAAsB;IACtC,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,EAC/B,SAAS,EACT,YAAY,GACZ,GAAE,sBAA2B;;;;;;;;wBAoBJ,CAAC;sBACG,CAAC;yBAA2B,CAAC;0BACrC,CAAC;iBACkC,CAAC;mBAC7C,CAAC;yBAA2B,CAAC;sBACzB,CAAA;sBAAwB,CAAA;yBAEjC,CAAC;4BACI,CAAC;sCAAwC,CAAC;2BACvC,CAAC;uBAAyB,CAAC;;;;;;;;;;;;;;;+BA8B3B,MAAM;uCA+BD,OAAO;wCAgBN,MAAM;kCAUT,MAAM;6CAnBH,MAAM,YAAY,MAAM;EA+C7C"}
1
+ {"version":3,"file":"useChatComposer.d.ts","sourceRoot":"","sources":["../../src/hooks/useChatComposer.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,sBAAsB;IACtC,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,EAC/B,SAAS,EACT,YAAY,GACZ,GAAE,sBAA2B;;;;;;;;wBAoBJ,CAAC;sBACG,CAAC;yBAA2B,CAAC;0BACrC,CAAC;iBACkC,CAAC;oBAC5C,CAAC;mBAAoB,CAAC;yBACvB,CAAC;sBAAwB,CAAC;sBAErC,CAAC;yBACC,CAAC;4BAA8B,CAAC;sCAClC,CAAC;2BAAmC,CAAC;uBACtC,CAAD;;;;;;;;;;;;;;;+BA6BgB,MAAM;uCA+BD,OAAO;wCAgBN,MAAM;kCAUT,MAAM;6CAnBH,MAAM,YAAY,MAAM;EA+C7C"}
@@ -10,6 +10,7 @@ export declare function useConfig(): import("@tanstack/react-query").UseQueryRes
10
10
  reasoningText?: boolean;
11
11
  reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
12
12
  theme?: "light" | "dark";
13
+ tuiTheme?: string;
13
14
  vimMode?: boolean;
14
15
  compactThread?: boolean;
15
16
  fontFamily?: string;
@@ -52,6 +53,7 @@ export declare function useUpdateDefaults(): import("@tanstack/react-query").Use
52
53
  reasoningText?: boolean;
53
54
  reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
54
55
  theme?: "light" | "dark";
56
+ tuiTheme?: string;
55
57
  vimMode?: boolean;
56
58
  compactThread?: boolean;
57
59
  fontFamily?: string;
@@ -71,6 +73,7 @@ export declare function useUpdateDefaults(): import("@tanstack/react-query").Use
71
73
  reasoningText?: boolean;
72
74
  reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
73
75
  theme?: "light" | "dark";
76
+ tuiTheme?: string;
74
77
  vimMode?: boolean;
75
78
  compactThread?: boolean;
76
79
  fontFamily?: string;
@@ -94,6 +97,7 @@ export declare function useUpdateDefaults(): import("@tanstack/react-query").Use
94
97
  reasoningText?: boolean;
95
98
  reasoningLevel?: "minimal" | "low" | "medium" | "high" | "max" | "xhigh";
96
99
  theme?: "light" | "dark";
100
+ tuiTheme?: string;
97
101
  vimMode?: boolean;
98
102
  compactThread?: boolean;
99
103
  fontFamily?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"useConfig.d.ts","sourceRoot":"","sources":["../../src/hooks/useConfig.ts"],"names":[],"mappings":"AAKA,wBAAgB,SAAS;;;;;;;oBAoDK,CAAC;kBAEzB,CAAD;qBAA2B,CAAC;sBAA4B,CAAC;aAIhD,CAAC;eAA8B,CAAC;qBAC5B,CAAC;kBAEb,CAAH;kBAAuB,CAAC;qBACP,CAAC;wBAKjB,CAAC;kCAEM,CAAA;uBACL,CAAA;mBAA0B,CAAA;;UAhE/B;AAED,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM;;;;gBAuE6+C,CAAC;qBAA2B,CAAC;cAAoB,CAAC;kBAAwB,CAAC;YAAkB,CAAC;qBAA2B,CAAC;uBAA4B,CAAC;iBAAsB,CAAC;yBAA+B,CAAC;;;;;;UAjEruD;AAED,wBAAgB,YAAY,0FAK3B;AAED,wBAAgB,iBAAiB;;;;;;oBAwD4wJ,CAAC;kBAAsD,CAAC;qBAA2B,CAAC;sBAA4B,CAAC;aAAmE,CAAC;eAA8B,CAAC;qBAA2B,CAAC;kBAAwB,CAAC;kBAAuB,CAAC;qBAA2B,CAAC;wBAA8B,CAAC;kCAAwC,CAAC;uBAAmC,CAAC;mBAAyB,CAAC;;;YAnDruK,MAAM;eACH,MAAM;YACT,MAAM;mBACC,MAAM,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM;iBACvC,OAAO;oBACJ,OAAO;qBACN,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO;YAChE,OAAO,GAAG,MAAM;cACd,OAAO;oBACD,OAAO;iBACV,MAAM;iBACN,OAAO;oBACJ,OAAO;uBACJ,OAAO;iCACG,MAAM,GAAG,IAAI;sBACxB,OAAO;kBACX,OAAO;YACb,QAAQ;;;;;;;;;wBAOW,CAAC;sBAEzB,CAAD;yBAA2B,CAAC;0BAA4B,CAAC;iBAIhD,CAAC;mBAA8B,CAAC;yBAC5B,CAAC;sBAEb,CAAH;sBAAuB,CAAC;yBACP,CAAC;4BAKjB,CAAC;sCAEM,CAAA;2BACL,CAAA;uBAA0B,CAAA;;;GAQ/B"}
1
+ {"version":3,"file":"useConfig.d.ts","sourceRoot":"","sources":["../../src/hooks/useConfig.ts"],"names":[],"mappings":"AAKA,wBAAgB,SAAS;;;;;;;oBAqDjB,CAAC;kBACO,CAAC;qBACP,CAAC;sBAA6B,CAAA;aAEL,CAAC;gBAEZ,CAAC;eAAoB,CAAC;qBAC5B,CAAC;kBAEb,CAAH;kBAAuB,CAAC;qBACP,CAAC;wBAKjB,CAAC;kCAEM,CAAA;uBACL,CAAA;mBAA0B,CAAA;;UAjE/B;AAED,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM;;;;gBAwE6+C,CAAC;qBAA2B,CAAC;cAAoB,CAAC;kBAAwB,CAAC;YAAkB,CAAC;qBAA2B,CAAC;uBAA4B,CAAC;iBAAsB,CAAC;yBAA+B,CAAC;;;;;;UAlEruD;AAED,wBAAgB,YAAY,0FAK3B;AAED,wBAAgB,iBAAiB;;;;;;oBAyDiyJ,CAAC;kBAAsD,CAAC;qBAA2B,CAAC;sBAA4B,CAAC;aAAmE,CAAC;gBAA+B,CAAC;eAAoB,CAAC;qBAA2B,CAAC;kBAAwB,CAAC;kBAAuB,CAAC;qBAA2B,CAAC;wBAA8B,CAAC;kCAAwC,CAAC;uBAAmC,CAAC;mBAAyB,CAAC;;;YApDhxK,MAAM;eACH,MAAM;YACT,MAAM;mBACC,MAAM,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM;iBACvC,OAAO;oBACJ,OAAO;qBACN,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO;YAChE,OAAO,GAAG,MAAM;eACb,MAAM;cACP,OAAO;oBACD,OAAO;iBACV,MAAM;iBACN,OAAO;oBACJ,OAAO;uBACJ,OAAO;iCACG,MAAM,GAAG,IAAI;sBACxB,OAAO;kBACX,OAAO;YACb,QAAQ;;;;;;;;;wBAOX,CAAC;sBACO,CAAC;yBACP,CAAC;0BAA6B,CAAA;iBAEL,CAAC;oBAEZ,CAAC;mBAAoB,CAAC;yBAC5B,CAAC;sBAEb,CAAH;sBAAuB,CAAC;yBACP,CAAC;4BAKjB,CAAC;sCAEM,CAAA;2BACL,CAAA;uBAA0B,CAAA;;;GAQ/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSessionStream.d.ts","sourceRoot":"","sources":["../../src/hooks/useSessionStream.ts"],"names":[],"mappings":"AAwBA,wBAAgB,gBAAgB,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,UAAO,QAg+Dd"}
1
+ {"version":3,"file":"useSessionStream.d.ts","sourceRoot":"","sources":["../../src/hooks/useSessionStream.ts"],"names":[],"mappings":"AAyBA,wBAAgB,gBAAgB,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,UAAO,QAo+Dd"}
package/dist/index.js CHANGED
@@ -3970,7 +3970,6 @@ var providerLogos = {
3970
3970
  "zai-coding": zaiLogo,
3971
3971
  ottorouter: ottorouterLogo,
3972
3972
  minimax: minimaxLogo,
3973
- moonshot: kimiLogo,
3974
3973
  kimi: kimiLogo,
3975
3974
  opencode: opencodeLogo,
3976
3975
  copilot: copilotLogo
@@ -11669,6 +11668,78 @@ class SSEClient {
11669
11668
  }
11670
11669
  }
11671
11670
 
11671
+ // src/hooks/tool-preview-helpers.ts
11672
+ function bestEffortUnescapeJsonString(value) {
11673
+ try {
11674
+ return JSON.parse(`"${value.replace(/\\$/, "")}"`);
11675
+ } catch {
11676
+ return value.replace(/\\n/g, `
11677
+ `).replace(/\\t/g, "\t").replace(/\\r/g, "\r").replace(/\\"/g, '"').replace(/\\\\/g, "\\");
11678
+ }
11679
+ }
11680
+ function extractJsonStringFieldAt(text, field, startIndex, requireClosed = false) {
11681
+ const marker = `"${field}"`;
11682
+ const markerIndex = text.indexOf(marker, Math.max(0, startIndex));
11683
+ if (markerIndex === -1)
11684
+ return;
11685
+ const colonIndex = text.indexOf(":", markerIndex + marker.length);
11686
+ if (colonIndex === -1)
11687
+ return;
11688
+ const quoteIndex = text.indexOf('"', colonIndex + 1);
11689
+ if (quoteIndex === -1)
11690
+ return;
11691
+ let escaped = "";
11692
+ let escaping = false;
11693
+ let closed = false;
11694
+ let endIndex = text.length;
11695
+ for (let i = quoteIndex + 1;i < text.length; i += 1) {
11696
+ const char = text[i];
11697
+ if (escaping) {
11698
+ escaped += `\\${char}`;
11699
+ escaping = false;
11700
+ continue;
11701
+ }
11702
+ if (char === "\\") {
11703
+ escaping = true;
11704
+ continue;
11705
+ }
11706
+ if (char === '"') {
11707
+ closed = true;
11708
+ endIndex = i + 1;
11709
+ break;
11710
+ }
11711
+ escaped += char;
11712
+ }
11713
+ if (requireClosed && !closed)
11714
+ return;
11715
+ return {
11716
+ value: bestEffortUnescapeJsonString(escaped),
11717
+ endIndex,
11718
+ closed
11719
+ };
11720
+ }
11721
+ function extractStreamingMultiEditPreviewEdits(buffer) {
11722
+ const editsStart = buffer.indexOf('"edits"');
11723
+ if (editsStart === -1)
11724
+ return [];
11725
+ const edits = [];
11726
+ let cursor = editsStart;
11727
+ const maxPreviewEdits = 50;
11728
+ while (cursor < buffer.length && edits.length < maxPreviewEdits) {
11729
+ const oldString = extractJsonStringFieldAt(buffer, "oldString", cursor, true);
11730
+ if (!oldString)
11731
+ break;
11732
+ const newString = extractJsonStringFieldAt(buffer, "newString", oldString.endIndex, false);
11733
+ if (!newString)
11734
+ break;
11735
+ edits.push({ oldString: oldString.value, newString: newString.value });
11736
+ cursor = Math.max(newString.endIndex, oldString.endIndex + 1);
11737
+ if (!newString.closed)
11738
+ break;
11739
+ }
11740
+ return edits;
11741
+ }
11742
+
11672
11743
  // src/hooks/useSessionStream.ts
11673
11744
  var TOOL_PREVIEW_THROTTLE_MS = 500;
11674
11745
  var TOOL_PREVIEW_THROTTLE_MIN_CHARS = 8000;
@@ -11822,7 +11893,7 @@ ${value.slice(-STREAMING_TOOL_INPUT_TAIL_CHARS)}`;
11822
11893
  toolInputBuffersRef.current.set(key, next);
11823
11894
  return parseArgsRecord(next);
11824
11895
  };
11825
- const bestEffortUnescapeJsonString = (value) => {
11896
+ const bestEffortUnescapeJsonString2 = (value) => {
11826
11897
  try {
11827
11898
  return JSON.parse(`"${value.replace(/\\$/, "")}"`);
11828
11899
  } catch {
@@ -11863,7 +11934,7 @@ ${value.slice(-STREAMING_TOOL_INPUT_TAIL_CHARS)}`;
11863
11934
  }
11864
11935
  if (requireClosed && !closed)
11865
11936
  return;
11866
- return bestEffortUnescapeJsonString(escaped);
11937
+ return bestEffortUnescapeJsonString2(escaped);
11867
11938
  };
11868
11939
  const getBufferedToolInput = (payload) => {
11869
11940
  const key = getToolBufferKey(payload);
@@ -11900,7 +11971,7 @@ ${argContent.slice(-STREAMING_WRITE_CONTENT_PREVIEW_CHARS)}`;
11900
11971
  }
11901
11972
  const rawTail = buffer.slice(Math.max(valueStart, buffer.length - STREAMING_WRITE_CONTENT_PREVIEW_CHARS));
11902
11973
  return `… showing latest streamed content only …
11903
- ${bestEffortUnescapeJsonString(rawTail)}`;
11974
+ ${bestEffortUnescapeJsonString2(rawTail)}`;
11904
11975
  };
11905
11976
  const getStreamingPatchPreviewContent = (args, buffer) => {
11906
11977
  const argPatch = args?.patch;
@@ -11929,9 +12000,9 @@ ${argPatch.slice(-STREAMING_PATCH_PREVIEW_TAIL_CHARS)}`;
11929
12000
  }
11930
12001
  const rawHead = buffer.slice(valueStart, valueStart + STREAMING_PATCH_PREVIEW_HEAD_CHARS);
11931
12002
  const rawTail = buffer.slice(-STREAMING_PATCH_PREVIEW_TAIL_CHARS);
11932
- return `${bestEffortUnescapeJsonString(rawHead)}
12003
+ return `${bestEffortUnescapeJsonString2(rawHead)}
11933
12004
  … patch preview truncated while streaming …
11934
- ${bestEffortUnescapeJsonString(rawTail)}`;
12005
+ ${bestEffortUnescapeJsonString2(rawTail)}`;
11935
12006
  };
11936
12007
  const getResultRecord = (payload) => payload?.result && typeof payload.result === "object" && !Array.isArray(payload.result) ? payload.result : null;
11937
12008
  const getArtifactRecord = (payload) => {
@@ -12107,14 +12178,15 @@ ${bestEffortUnescapeJsonString(rawTail)}`;
12107
12178
  return lines.join(`
12108
12179
  `);
12109
12180
  };
12110
- const getMultiEditPreviewEdits = (args) => {
12181
+ const getMultiEditPreviewEdits = (args, buffer) => {
12111
12182
  const edits = Array.isArray(args?.edits) ? args.edits : [];
12112
- return edits.flatMap((edit) => {
12183
+ const parsedEdits = edits.flatMap((edit) => {
12113
12184
  if (!edit || typeof edit !== "object" || Array.isArray(edit))
12114
12185
  return [];
12115
12186
  const record = edit;
12116
12187
  return typeof record.oldString === "string" && typeof record.newString === "string" ? [{ oldString: record.oldString, newString: record.newString }] : [];
12117
12188
  });
12189
+ return parsedEdits.length > 0 ? parsedEdits : extractStreamingMultiEditPreviewEdits(buffer);
12118
12190
  };
12119
12191
  const getEditPreviewPatch = (toolName, path, args, buffer, artifact) => {
12120
12192
  if (typeof artifact?.patch === "string")
@@ -12124,7 +12196,7 @@ ${bestEffortUnescapeJsonString(rawTail)}`;
12124
12196
  const newString = getStringArg(args, buffer, "newString");
12125
12197
  return oldString !== undefined && newString !== undefined ? buildStringEditPatchPreview(path, [{ oldString, newString }]) : undefined;
12126
12198
  }
12127
- const edits = getMultiEditPreviewEdits(args);
12199
+ const edits = getMultiEditPreviewEdits(args, buffer);
12128
12200
  return buildStringEditPatchPreview(path, edits);
12129
12201
  };
12130
12202
  const handleReadToolActivity = (eventType, payload, delta) => {
@@ -41819,7 +41891,7 @@ var ProviderSetupStep = memo75(function ProviderSetupStep2({
41819
41891
  setOpenAICodeCopied(false);
41820
41892
  setOpenAIAuthMode("choice");
41821
41893
  setOpenAIModalOpen(true);
41822
- } else if (providerId === "moonshot" && onStartKimiDeviceFlow) {
41894
+ } else if (providerId === "kimi" && onStartKimiDeviceFlow) {
41823
41895
  setKimiPolling(false);
41824
41896
  setKimiDevice(null);
41825
41897
  setKimiError(null);
@@ -43224,7 +43296,7 @@ var ProviderSetupStep = memo75(function ProviderSetupStep2({
43224
43296
  className: "flex items-center gap-3 p-6 border-b border-border",
43225
43297
  children: [
43226
43298
  /* @__PURE__ */ jsx154(ProviderLogo, {
43227
- provider: "moonshot",
43299
+ provider: "kimi",
43228
43300
  size: 24
43229
43301
  }),
43230
43302
  /* @__PURE__ */ jsx154("h3", {
@@ -46568,4 +46640,4 @@ export {
46568
46640
  API_BASE_URL
46569
46641
  };
46570
46642
 
46571
- //# debugId=4C9DA905D9FFD34064756E2164756E21
46643
+ //# debugId=5221E4EC6E1F50B064756E2164756E21