@deep-eye/core 1.3.6 → 1.3.7

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 (144) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/components/chat/ChatApp.vue.d.ts +29 -11
  3. package/dist/components/chat/ChatApp.vue.d.ts.map +1 -1
  4. package/dist/components/chat/ChatBot.vue.d.ts +16 -0
  5. package/dist/components/chat/ChatBot.vue.d.ts.map +1 -1
  6. package/dist/components/chat/attachments.d.ts.map +1 -1
  7. package/dist/components/chat/buildTimelineSegments.d.ts.map +1 -1
  8. package/dist/components/chat/chatContext.d.ts +5 -1
  9. package/dist/components/chat/chatContext.d.ts.map +1 -1
  10. package/dist/components/chat/components/ArtifactPreview.vue.d.ts.map +1 -1
  11. package/dist/components/chat/components/ChatActionbar.vue.d.ts +3 -3
  12. package/dist/components/chat/components/ChatActionbar.vue.d.ts.map +1 -1
  13. package/dist/components/chat/components/ChatFileCard.vue.d.ts.map +1 -1
  14. package/dist/components/chat/components/ChatFilePreview.vue.d.ts +18 -0
  15. package/dist/components/chat/components/ChatFilePreview.vue.d.ts.map +1 -1
  16. package/dist/components/chat/components/ChatFilePreviewPanel.vue.d.ts +9 -1
  17. package/dist/components/chat/components/ChatFilePreviewPanel.vue.d.ts.map +1 -1
  18. package/dist/components/chat/components/ChatMessage.vue.d.ts +9 -0
  19. package/dist/components/chat/components/ChatMessage.vue.d.ts.map +1 -1
  20. package/dist/components/chat/components/ChatProvider.vue.d.ts.map +1 -1
  21. package/dist/components/chat/components/ChatReasoning.vue.d.ts +4 -1
  22. package/dist/components/chat/components/ChatReasoning.vue.d.ts.map +1 -1
  23. package/dist/components/chat/components/ChatSender.vue.d.ts +46 -3
  24. package/dist/components/chat/components/ChatSender.vue.d.ts.map +1 -1
  25. package/dist/components/chat/components/ChatSessionHistoryItem.vue.d.ts.map +1 -1
  26. package/dist/components/chat/components/ChatSkillPanel.vue.d.ts +3 -0
  27. package/dist/components/chat/components/ChatSkillPanel.vue.d.ts.map +1 -1
  28. package/dist/components/chat/components/ChatTipMenu.vue.d.ts +22 -12
  29. package/dist/components/chat/components/ChatTipMenu.vue.d.ts.map +1 -1
  30. package/dist/components/chat/components/ConversationList.vue.d.ts.map +1 -1
  31. package/dist/components/chat/components/InputContentParts.vue.d.ts.map +1 -1
  32. package/dist/components/chat/components/MessageBubble.vue.d.ts +9 -0
  33. package/dist/components/chat/components/MessageBubble.vue.d.ts.map +1 -1
  34. package/dist/components/chat/components/ProcessStepGroup.vue.d.ts +11 -2
  35. package/dist/components/chat/components/ProcessStepGroup.vue.d.ts.map +1 -1
  36. package/dist/components/chat/components/ReasoningMarkdown.vue.d.ts +8 -0
  37. package/dist/components/chat/components/ReasoningMarkdown.vue.d.ts.map +1 -0
  38. package/dist/components/chat/components/SubagentRunDialog.vue.d.ts +20 -0
  39. package/dist/components/chat/components/SubagentRunDialog.vue.d.ts.map +1 -0
  40. package/dist/components/chat/components/SubagentRunsPanel.vue.d.ts +9 -0
  41. package/dist/components/chat/components/SubagentRunsPanel.vue.d.ts.map +1 -0
  42. package/dist/components/chat/components/TextReferenceChip.vue.d.ts +20 -0
  43. package/dist/components/chat/components/TextReferenceChip.vue.d.ts.map +1 -0
  44. package/dist/components/chat/components/ToolCallPart.vue.d.ts.map +1 -1
  45. package/dist/components/chat/components/WebSearchProcessRow.vue.d.ts +9 -0
  46. package/dist/components/chat/components/WebSearchProcessRow.vue.d.ts.map +1 -0
  47. package/dist/components/chat/components/document-viewer/DocViewerToolbar.vue.d.ts +3 -0
  48. package/dist/components/chat/components/document-viewer/DocViewerToolbar.vue.d.ts.map +1 -1
  49. package/dist/components/chat/components/document-viewer/DocumentAskPopup.vue.d.ts +17 -0
  50. package/dist/components/chat/components/document-viewer/DocumentAskPopup.vue.d.ts.map +1 -0
  51. package/dist/components/chat/components/document-viewer/DocumentViewer.vue.d.ts +8 -1
  52. package/dist/components/chat/components/document-viewer/DocumentViewer.vue.d.ts.map +1 -1
  53. package/dist/components/chat/components/document-viewer/ScreenshotCropOverlay.vue.d.ts.map +1 -1
  54. package/dist/components/chat/components/document-viewer/TextSelectionAskOverlay.vue.d.ts +16 -0
  55. package/dist/components/chat/components/document-viewer/TextSelectionAskOverlay.vue.d.ts.map +1 -0
  56. package/dist/components/chat/components/document-viewer/adapter.d.ts +4 -5
  57. package/dist/components/chat/components/document-viewer/adapter.d.ts.map +1 -1
  58. package/dist/components/chat/components/document-viewer/displayCapture.d.ts +28 -0
  59. package/dist/components/chat/components/document-viewer/displayCapture.d.ts.map +1 -0
  60. package/dist/components/chat/components/document-viewer/html/HtmlRenderer.vue.d.ts.map +1 -1
  61. package/dist/components/chat/components/document-viewer/office/DocxPreviewEngine.vue.d.ts +14 -0
  62. package/dist/components/chat/components/document-viewer/office/DocxPreviewEngine.vue.d.ts.map +1 -0
  63. package/dist/components/chat/components/document-viewer/office/OfficeDocumentViewer.vue.d.ts +5 -1
  64. package/dist/components/chat/components/document-viewer/office/OfficeDocumentViewer.vue.d.ts.map +1 -1
  65. package/dist/components/chat/components/document-viewer/office/docxChrome.d.ts +45 -0
  66. package/dist/components/chat/components/document-viewer/office/docxChrome.d.ts.map +1 -0
  67. package/dist/components/chat/components/document-viewer/office/domNav.d.ts.map +1 -1
  68. package/dist/components/chat/components/document-viewer/office/fitDocx.d.ts +8 -0
  69. package/dist/components/chat/components/document-viewer/office/fitDocx.d.ts.map +1 -0
  70. package/dist/components/chat/components/document-viewer/office/officePreviewUrl.d.ts +28 -0
  71. package/dist/components/chat/components/document-viewer/office/officePreviewUrl.d.ts.map +1 -0
  72. package/dist/components/chat/components/document-viewer/screenshotCapture.d.ts +27 -11
  73. package/dist/components/chat/components/document-viewer/screenshotCapture.d.ts.map +1 -1
  74. package/dist/components/chat/components/document-viewer/tabCaptureSession.d.ts +17 -0
  75. package/dist/components/chat/components/document-viewer/tabCaptureSession.d.ts.map +1 -0
  76. package/dist/components/chat/components/document-viewer/textSelection.d.ts +20 -0
  77. package/dist/components/chat/components/document-viewer/textSelection.d.ts.map +1 -0
  78. package/dist/components/chat/components/index.d.ts +2 -0
  79. package/dist/components/chat/components/index.d.ts.map +1 -1
  80. package/dist/components/chat/composables/useChatSessionSwitch.d.ts.map +1 -1
  81. package/dist/components/chat/composables/useChatSkillTipMenu.d.ts +4 -2
  82. package/dist/components/chat/composables/useChatSkillTipMenu.d.ts.map +1 -1
  83. package/dist/components/chat/composables/useChatTipMenu.d.ts +8 -2
  84. package/dist/components/chat/composables/useChatTipMenu.d.ts.map +1 -1
  85. package/dist/components/chat/harness/DisclosureRow.vue.d.ts +1 -0
  86. package/dist/components/chat/harness/DisclosureRow.vue.d.ts.map +1 -1
  87. package/dist/components/chat/htmlPreview.d.ts +7 -2
  88. package/dist/components/chat/htmlPreview.d.ts.map +1 -1
  89. package/dist/components/chat/hydrateHistory.d.ts +3 -1
  90. package/dist/components/chat/hydrateHistory.d.ts.map +1 -1
  91. package/dist/components/chat/index.d.ts +4 -1
  92. package/dist/components/chat/index.d.ts.map +1 -1
  93. package/dist/components/chat/mdoc/ArtifactBlock.vue.d.ts.map +1 -1
  94. package/dist/components/chat/mdoc/chatOccurrenceKey.d.ts +4 -0
  95. package/dist/components/chat/mdoc/chatOccurrenceKey.d.ts.map +1 -0
  96. package/dist/components/chat/mdoc/latexDelimiters.d.ts +14 -0
  97. package/dist/components/chat/mdoc/latexDelimiters.d.ts.map +1 -0
  98. package/dist/components/chat/mdoc/sessionArtifacts.d.ts +1 -1
  99. package/dist/components/chat/mdoc/sessionArtifacts.d.ts.map +1 -1
  100. package/dist/components/chat/mdoc/textContent.d.ts +0 -7
  101. package/dist/components/chat/mdoc/textContent.d.ts.map +1 -1
  102. package/dist/components/chat/messageChrome.d.ts +10 -3
  103. package/dist/components/chat/messageChrome.d.ts.map +1 -1
  104. package/dist/components/chat/processGroupSummary.d.ts +6 -4
  105. package/dist/components/chat/processGroupSummary.d.ts.map +1 -1
  106. package/dist/components/chat/reasoningDisplay.d.ts +6 -0
  107. package/dist/components/chat/reasoningDisplay.d.ts.map +1 -0
  108. package/dist/components/chat/responseStream.d.ts.map +1 -1
  109. package/dist/components/chat/sidebarMotion.d.ts +1 -1
  110. package/dist/components/chat/sidebarMotion.d.ts.map +1 -1
  111. package/dist/components/chat/subagentAggregate.d.ts +38 -0
  112. package/dist/components/chat/subagentAggregate.d.ts.map +1 -0
  113. package/dist/components/chat/subagentDisplay.d.ts +22 -0
  114. package/dist/components/chat/subagentDisplay.d.ts.map +1 -0
  115. package/dist/components/chat/textReference.d.ts +20 -0
  116. package/dist/components/chat/textReference.d.ts.map +1 -0
  117. package/dist/components/chat/toolLabels.d.ts +2 -0
  118. package/dist/components/chat/toolLabels.d.ts.map +1 -1
  119. package/dist/components/chat/types.d.ts +142 -9
  120. package/dist/components/chat/types.d.ts.map +1 -1
  121. package/dist/components/chat/useProcessGroupTimer.d.ts +2 -1
  122. package/dist/components/chat/useProcessGroupTimer.d.ts.map +1 -1
  123. package/dist/components/chat/utils/tipMenuBuiltin.d.ts +6 -0
  124. package/dist/components/chat/utils/tipMenuBuiltin.d.ts.map +1 -1
  125. package/dist/components/skill/components/ChatSkillCard.vue.d.ts.map +1 -1
  126. package/dist/components/skill/composables/useChatSkills.d.ts +1 -0
  127. package/dist/components/skill/composables/useChatSkills.d.ts.map +1 -1
  128. package/dist/components/skill/types.d.ts +20 -1
  129. package/dist/components/skill/types.d.ts.map +1 -1
  130. package/dist/components/ui/components/UiMenu.vue.d.ts +5 -1
  131. package/dist/components/ui/components/UiMenu.vue.d.ts.map +1 -1
  132. package/dist/index-AMv4u6wW.cjs +1065 -0
  133. package/dist/{index-BKxbaGuU.js → index-BCh0W7hP.js} +7664 -7648
  134. package/dist/{index-CT4dZd6h.js → index-DDlS9QfJ.js} +81798 -73873
  135. package/dist/{index-BvdV0Eu0.cjs → index-Ds5qv-tF.cjs} +44 -44
  136. package/dist/index.cjs +1 -1
  137. package/dist/index.js +312 -300
  138. package/dist/style.css +2 -2
  139. package/package.json +2 -2
  140. package/dist/index-Bh4xn5LB.cjs +0 -1
  141. package/dist/index-BuN8GnS7.js +0 -22
  142. package/dist/index-CPq9HVwe.cjs +0 -892
  143. package/dist/index-DHbY1Eq1.cjs +0 -33
  144. package/dist/index-YIVH2TCo.js +0 -5072
@@ -0,0 +1,28 @@
1
+ import type { ChatResourceFile } from '../../../types';
2
+ /** Enterprise OnlyOffice (kkFileView) preview endpoint. */
3
+ export declare const OFFICE_PREVIEW_ENDPOINT = "https://api.yxuer.com:8443/officeView/onlinePreview";
4
+ /**
5
+ * Percent-encode each path segment so Chinese filenames become `%E8%83%8C...`
6
+ * before Base64 — matching the known-good enterprise preview URL.
7
+ * Already-encoded segments are normalized (decode → encode), not double-encoded.
8
+ */
9
+ export declare function encodeOfficeFileUrl(fileUrl: string): string;
10
+ /**
11
+ * `fileName` + `.` + `fileExt` from the Android snippet, without doubling
12
+ * the extension when `fileName` already ends with it.
13
+ */
14
+ export declare function officePreviewFullFilename(fileName: string, fileExt: string): string;
15
+ /**
16
+ * Builds the enterprise OnlyOffice preview URL.
17
+ *
18
+ * Known-good production form:
19
+ * `onlinePreview?url=<Base64(percentEncodedFileUrl)>&officePreviewType=pdf`
20
+ *
21
+ * When the file URL has no usable extension, also appends
22
+ * `&fullfilename=name.ext` inside the Base64 payload (kkFileView / Android contract).
23
+ */
24
+ export declare function buildOfficePreviewUrl(fileUrl: string, fileName: string, fileExt: string, endpoint?: string): string;
25
+ export declare function buildOfficePreviewUrlFromResource(resource: ChatResourceFile, endpoint?: string): string;
26
+ /** Test / debug helper: reverse the `url` query param back to the raw payload. */
27
+ export declare function decodeOfficePreviewPayload(previewUrl: string): string;
28
+ //# sourceMappingURL=officePreviewUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"officePreviewUrl.d.ts","sourceRoot":"","sources":["../../../../../../src/components/chat/components/document-viewer/office/officePreviewUrl.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEtD,2DAA2D;AAC3D,eAAO,MAAM,uBAAuB,wDAAwD,CAAA;AAiB5F;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkB3D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAMnF;AAYD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,SAA0B,GACjC,MAAM,CAQR;AAED,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,SAA0B,GACjC,MAAM,CAGR;AAED,kFAAkF;AAClF,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAIrE"}
@@ -1,13 +1,14 @@
1
1
  /**
2
- * Helpers behind the toolbar's "截图提问" crop tool. Two outcomes for a
3
- * dragged rectangle (all coordinates are viewport/client-space, matching
4
- * `PointerEvent.clientX/clientY` and `Element.getBoundingClientRect()`):
2
+ * Helpers behind the toolbar's "截图提问" crop tool. A dragged rectangle
3
+ * (viewport/client-space, matching `PointerEvent.clientX/clientY`) always
4
+ * becomes a PNG. Native 划词 ("问问 AI") is a separate overlay and is the
5
+ * only path that returns plain text.
5
6
  *
6
- * 1. The rectangle overlaps real selectable text (html/markdown/text/xlsx
7
- * cells, or a PDF text layer) extract it and hand back plain text.
8
- * 2. Otherwise crop the region as PNG: PDF pages use their `<canvas>`
9
- * directly; everything else falls back to lazy-loaded `html2canvas`.
7
+ * HTML/Word/Excel/Markdown go through Chrome Element/Region Capture of the
8
+ * live tab (compositor pixels, including sandboxed iframes). html2canvas is
9
+ * only a fallback when the user declines screen sharing or the API is missing.
10
10
  */
11
+ import type { TabElementCapture } from './displayCapture';
11
12
  import type { DocumentScreenshotResult } from './adapter';
12
13
  export interface ViewportRect {
13
14
  left: number;
@@ -16,15 +17,18 @@ export interface ViewportRect {
16
17
  height: number;
17
18
  }
18
19
  export interface ResolveCropOptions {
19
- /** When true, try PDF text-layer extraction and direct canvas crop before html2canvas. */
20
+ /** When true, crop PDF page canvases directly before falling back. */
20
21
  pdf?: boolean;
22
+ /** Live tab capture pinned to the preview element (Chrome Element/Region Capture). */
23
+ displayCapture?: TabElementCapture | null;
21
24
  }
22
25
  /** Warm up html2canvas while the user is drawing their selection. */
23
26
  export declare function preloadHtml2Canvas(): void;
24
27
  /**
25
28
  * Tries the main document first, then any iframe whose box intersects `rect`.
26
- * Note: HTML previews use `sandbox="allow-scripts"` only, so their
27
- * `contentDocument` is not reachable text extraction falls back to html2canvas.
29
+ * HTML previews use `sandbox="allow-scripts"` only, so `contentDocument` is
30
+ * null opaque frames are not readable here. 划词 uses `readDocumentSelection`
31
+ * instead of this helper.
28
32
  */
29
33
  export declare function extractTextInRect(rect: ViewportRect, iframes?: readonly HTMLIFrameElement[]): string;
30
34
  /**
@@ -37,13 +41,25 @@ export declare function extractPdfTextInRect(containerEl: HTMLElement, rect: Vie
37
41
  * re-rasterizing the whole viewer through html2canvas.
38
42
  */
39
43
  export declare function capturePdfCanvasInRect(containerEl: HTMLElement, rect: ViewportRect, filename: string): Promise<File | null>;
44
+ /**
45
+ * `OfficeDocumentViewer` fits Word pages with inline `transform: scale(...)`.
46
+ * html2canvas cannot paint that transform (the clone comes out empty, and
47
+ * against a dark chat canvas that reads as an all-black PNG), so callers
48
+ * flatten it in `onclone` and pass crop coordinates in unscaled layout space.
49
+ */
50
+ export declare function readCssScale(el: HTMLElement): number;
40
51
  /**
41
52
  * Rasterizes just the `rect` region of `containerEl` via html2canvas.
42
53
  * Returns `null` if the crop ends up empty/degenerate.
54
+ *
55
+ * Word pages are captured from `section.docx` (not the crop overlay) with
56
+ * CSS scale flattened; otherwise html2canvas paints an all-black image.
43
57
  */
44
58
  export declare function captureImageInRect(containerEl: HTMLElement, rect: ViewportRect, filename: string): Promise<File | null>;
45
59
  /**
46
- * Full crop resolution: text extraction PDF-specific paths html2canvas.
60
+ * Full crop resolution: PDF canvas (already compositor-backed)live tab
61
+ * capture of the preview element → iframe snapshot / html2canvas fallback.
62
+ * Always a PNG — text excerpts come from 划词, not this tool.
47
63
  */
48
64
  export declare function resolveDocumentCropResult(containerEl: HTMLElement, rect: ViewportRect, filename: string, options?: ResolveCropOptions): Promise<DocumentScreenshotResult | null>;
49
65
  //# sourceMappingURL=screenshotCapture.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"screenshotCapture.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/components/document-viewer/screenshotCapture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEzD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,0FAA0F;IAC1F,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAMD,qEAAqE;AACrE,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AA+DD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,SAAS,iBAAiB,EAAO,GACzC,MAAM,CAqBR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CA+BzF;AAUD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAuDtB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAsBtB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAe1C"}
1
+ {"version":3,"file":"screenshotCapture.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/components/document-viewer/screenshotCapture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEzD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEzD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,sFAAsF;IACtF,cAAc,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAA;CAC1C;AAMD,qEAAqE;AACrE,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AA+DD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,SAAS,iBAAiB,EAAO,GACzC,MAAM,CAqBR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CA+BzF;AA8BD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAuDtB;AAYD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,WAAW,GAAG,MAAM,CAepD;AAgCD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAoDtB;AA2LD;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAqB1C"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Crop-session wrapper around `startTabElementCapture`. Lives in its own
3
+ * module so viewer tests can mock `displayCapture` and still intercept the
4
+ * live-tab prompt (same-file calls would not see a `vi.spyOn`).
5
+ *
6
+ * `start` must run from the toolbar click (transient user activation). It
7
+ * sets `inflight` before returning so a fast "问问 AI" can `ready()`-wait
8
+ * for compositor pixels instead of racing into html2canvas.
9
+ */
10
+ import { type TabElementCapture } from './displayCapture';
11
+ export type TabCaptureSession = ReturnType<typeof createTabCaptureSession>;
12
+ export declare function createTabCaptureSession(): {
13
+ start(element: HTMLElement | null | undefined): Promise<void>;
14
+ stop(): void;
15
+ ready(): Promise<TabElementCapture | null>;
16
+ };
17
+ //# sourceMappingURL=tabCaptureSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabCaptureSession.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/components/document-viewer/tabCaptureSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEjF,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE1E,wBAAgB,uBAAuB;mBAMd,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;YAiB3D,IAAI;aAKG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;EAMnD"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Native text selection inside the document viewer ("划词提问").
3
+ * Complements the crop tool: screenshot-ask always captures a PNG;
4
+ * highlighting real text skips html2canvas and hands the string to the
5
+ * same `screenshot-result` path.
6
+ */
7
+ import type { ViewportRect } from './screenshotCapture';
8
+ export interface DocumentTextSelection {
9
+ text: string;
10
+ rect: ViewportRect;
11
+ }
12
+ /**
13
+ * Reads the current native selection if it lives inside `root` (or a
14
+ * same-origin iframe nested in `root`). Coordinates are viewport/client-space.
15
+ */
16
+ export declare function readDocumentSelection(root: HTMLElement): DocumentTextSelection | null;
17
+ export declare function clearDocumentSelection(root: HTMLElement | null | undefined): void;
18
+ /** Position a floating ask/copy popup relative to `origin` (the overlay host). */
19
+ export declare function popupStyleForRect(origin: DOMRect, rect: ViewportRect, popupHeight?: number): Record<string, string>;
20
+ //# sourceMappingURL=textSelection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textSelection.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/components/document-viewer/textSelection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,YAAY,CAAA;CACnB;AAyDD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,WAAW,GAAG,qBAAqB,GAAG,IAAI,CAuBrF;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAUjF;AAED,kFAAkF;AAClF,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,YAAY,EAClB,WAAW,SAAK,GACf,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUxB"}
@@ -35,6 +35,8 @@ export { default as OpenGenerativeUiThemeRenderer } from './OpenGenerativeUiThem
35
35
  export { default as OpenGenUIToolRenderer } from './OpenGenUIToolRenderer.vue';
36
36
  export { default as ProcessResultCard } from './ProcessResultCard.vue';
37
37
  export { default as ProcessStepGroup } from './ProcessStepGroup.vue';
38
+ export { default as SubagentRunsPanel } from './SubagentRunsPanel.vue';
39
+ export { default as WebSearchProcessRow } from './WebSearchProcessRow.vue';
38
40
  export { default as ThinkingOrb } from './ThinkingOrb.vue';
39
41
  export { default as SearchToolRenderer } from './SearchToolRenderer.vue';
40
42
  export { default as EmptyState } from './EmptyState.vue';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useChatSessionSwitch.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatSessionSwitch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;IAC3B,UAAU,EAAE,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IACrC,cAAc,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAClC,OAAO,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IAChC,mBAAmB,EAAE,MAAM,IAAI,CAAA;CAChC;AAUD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B;;;;;gCAcpC,MAAM,KAAG,OAAO;iCAmFT,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;8BAZjC,IAAI;mCAiHS,MAAM,GAAG,IAAI,SAAS,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;gCAjL9D,IAAI;EA4MtC"}
1
+ {"version":3,"file":"useChatSessionSwitch.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatSessionSwitch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;IAC3B,UAAU,EAAE,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IACrC,cAAc,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAClC,OAAO,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IAChC,mBAAmB,EAAE,MAAM,IAAI,CAAA;CAChC;AAUD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B;;;;;gCAcpC,MAAM,KAAG,OAAO;iCAmFT,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;8BAZjC,IAAI;mCAoHS,MAAM,GAAG,IAAI,SAAS,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;gCApL9D,IAAI;EA+MtC"}
@@ -5,6 +5,8 @@ export interface UseChatSkillTipMenuOptions {
5
5
  open: Ref<boolean>;
6
6
  fetchConfig: Ref<ChatSkillFetchConfig | undefined> | ComputedRef<ChatSkillFetchConfig | undefined>;
7
7
  tipMenuItems: Ref<ChatTipMenuItems> | ComputedRef<ChatTipMenuItems>;
8
+ /** false 时隐藏全部 builtin 子菜单搜索框(可被单项 searchable: false 叠加) */
9
+ submenuSearchable?: Ref<boolean> | ComputedRef<boolean>;
8
10
  onUpload: () => void;
9
11
  onScreenshot: () => void;
10
12
  onSelectExpert: (item: ChatTipMenuSubItem) => void;
@@ -23,8 +25,8 @@ declare const SUBMENU_ITEM_IDS: {
23
25
  type SubmenuItemId = (typeof SUBMENU_ITEM_IDS)[keyof typeof SUBMENU_ITEM_IDS];
24
26
  export declare function useChatSkillTipMenu(options: UseChatSkillTipMenuOptions): {
25
27
  builtinMenuItems: ComputedRef<UiMenuItem[]>;
26
- searchActiveItem: (itemId: string, keyword: string) => void;
27
- onSubmenuOpen: (itemId: string) => void;
28
+ searchActiveItem: (submenuId: string, keyword: string) => void;
29
+ onSubmenuOpen: (itemId: string, path?: string) => void;
28
30
  loadMoreItem: (itemId: string) => void;
29
31
  handleSubmenuSelect: (itemId: string, subItem: ChatTipMenuSubItem) => void;
30
32
  addSubmenuSelection: (itemId: SubmenuItemId, subItemId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useChatSkillTipMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatSkillTipMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,WAAW,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AACtE,OAAO,EAUL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAGxB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,gBAAgB,CAAA;AAE/D,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAClB,WAAW,EAAE,GAAG,CAAC,oBAAoB,GAAG,SAAS,CAAC,GAAG,WAAW,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAA;IAClG,YAAY,EAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAA;IACnE,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,cAAc,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IAClD,aAAa,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACjD,iBAAiB,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACrD,eAAe,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACnD,mBAAmB,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACvD,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,QAAA,MAAM,gBAAgB;;;;CAIZ,CAAA;AAEV,KAAK,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAA;AAU7E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B;;+BAySnC,MAAM,WAAW,MAAM;4BAlD1B,MAAM;2BA2BP,MAAM;kCAyHC,MAAM,WAAW,kBAAkB;kCAyCnC,aAAa,aAAa,MAAM;oCAY9B,aAAa,cAAc,MAAM;;;EAmCzE;AAED,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"useChatSkillTipMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatSkillTipMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,WAAW,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AACtE,OAAO,EAWL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAKxB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,UAAU,EAAgC,MAAM,gBAAgB,CAAA;AAE9E,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAClB,WAAW,EAAE,GAAG,CAAC,oBAAoB,GAAG,SAAS,CAAC,GAAG,WAAW,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAA;IAClG,YAAY,EAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAA;IACnE,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACvD,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,cAAc,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IAClD,aAAa,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACjD,iBAAiB,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACrD,eAAe,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACnD,mBAAmB,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACvD,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,QAAA,MAAM,gBAAgB;;;;CAIZ,CAAA;AAEV,KAAK,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAA;AAU7E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B;;kCAgZhC,MAAM,WAAW,MAAM;4BApD7B,MAAM,SAAS,MAAM;2BA6BtB,MAAM;kCA0JC,MAAM,WAAW,kBAAkB;kCAyCnC,aAAa,aAAa,MAAM;oCAY9B,aAAa,cAAc,MAAM;;;EAmCzE;AAED,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
@@ -2,6 +2,7 @@ import { type ComputedRef, type MaybeRefOrGetter, type Ref } from 'vue';
2
2
  import type { UiDropdownMenuItem } from '../../ui/types';
3
3
  import { type ChatSkillFetchConfig, type ChatTipMenuItems, type ChatTipMenuSubItem } from '../../skill';
4
4
  import type { UiMenuPlacement } from '../../ui/composables';
5
+ import type { ChatTipMenuUiMenuProps, ChatTipMenuBuiltinKind } from '../types';
5
6
  export interface UseChatTipMenuOptions {
6
7
  fetchConfig?: MaybeRefOrGetter<ChatSkillFetchConfig | undefined>;
7
8
  tipMenuItems?: MaybeRefOrGetter<ChatTipMenuItems>;
@@ -13,6 +14,8 @@ export interface UseChatTipMenuOptions {
13
14
  open?: Ref<boolean>;
14
15
  /** 与宿主共享 trigger 元素(绑定到 button ref) */
15
16
  triggerRef?: Ref<HTMLElement | null>;
17
+ /** 透传给内层 `UiMenu`;与 `placement` / `submenuPlacement` 合并,单独字段优先。 */
18
+ menuProps?: MaybeRefOrGetter<ChatTipMenuUiMenuProps | undefined>;
16
19
  placement?: MaybeRefOrGetter<UiMenuPlacement>;
17
20
  submenuPlacement?: MaybeRefOrGetter<UiMenuPlacement>;
18
21
  onUpload?: () => void;
@@ -25,6 +28,8 @@ export interface UseChatTipMenuOptions {
25
28
  onMenuItemClick?: (itemId: string) => void;
26
29
  /** custom 项子菜单展开时回调(含多级 path,如 `move/folder1`) */
27
30
  onCustomSubmenuOpen?: (itemId: string, path?: string) => void;
31
+ /** custom 子菜单搜索(含多级 path,如 `knowledge/type-2`) */
32
+ onCustomSubmenuSearch?: (submenuId: string, keyword: string) => void;
28
33
  onOpen?: () => void;
29
34
  onClose?: () => void;
30
35
  }
@@ -46,8 +51,9 @@ export declare function useChatTipMenu(options: UseChatTipMenuOptions): {
46
51
  close: () => void;
47
52
  openMenu: () => void;
48
53
  triggerAttrs: ComputedRef<ChatTipMenuTriggerAttrs>;
49
- addSubmenuSelection: (itemId: "skill" | "expert" | "knowledge", subItemId: string) => void;
50
- clearSubmenuSelection: (itemId: "skill" | "expert" | "knowledge", subItemId?: string) => void;
54
+ addSubmenuSelection: (itemId: "skill" | "knowledge" | "expert", subItemId: string) => void;
55
+ clearSubmenuSelection: (itemId: "skill" | "knowledge" | "expert", subItemId?: string) => void;
56
+ searchTipMenu: (submenuId: ChatTipMenuBuiltinKind | string, keyword: string) => void;
51
57
  };
52
58
  export type UseChatTipMenuReturn = ReturnType<typeof useChatTipMenu>;
53
59
  //# sourceMappingURL=useChatTipMenu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useChatTipMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatTipMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,GAAG,EACT,MAAM,KAAK,CAAA;AAGZ,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAc3D,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAA;IAChE,YAAY,CAAC,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;IACjD,+EAA+E;IAC/E,OAAO,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;IACnC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;IACpC,eAAe,CAAC,EAAE,gBAAgB,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAA;IACjE,gDAAgD;IAChD,IAAI,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACnB,uCAAuC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACpC,SAAS,CAAC,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAA;IAC7C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAA;IACpD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACnD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IAClD,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACtD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACpD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACxD,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1C,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7D,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,OAAO,CAAA;CACzB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB;;;;;;;;;;;;;;;;EA4G5D;AAED,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA"}
1
+ {"version":3,"file":"useChatTipMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatTipMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,GAAG,EACT,MAAM,KAAK,CAAA;AAIZ,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAc9E,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAA;IAChE,YAAY,CAAC,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;IACjD,+EAA+E;IAC/E,OAAO,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;IACnC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;IACpC,eAAe,CAAC,EAAE,gBAAgB,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAA;IACjE,gDAAgD;IAChD,IAAI,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACnB,uCAAuC;IACvC,UAAU,CAAC,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACpC,mEAAmE;IACnE,SAAS,CAAC,EAAE,gBAAgB,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAA;IAChE,SAAS,CAAC,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAA;IAC7C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAA;IACpD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACnD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IAClD,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACtD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACpD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACxD,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1C,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7D,kDAAkD;IAClD,qBAAqB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACpE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,OAAO,CAAA;CACzB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB;;;;;;;;;;;;;;;;+BA2EzB,sBAAsB,GAAG,MAAM,WAAW,MAAM;EA2DnF;AAED,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -14,6 +14,7 @@ type __VLS_Slots = {
14
14
  icon?: () => VNode;
15
15
  leading?: () => VNode;
16
16
  collapsed?: () => VNode;
17
+ meta?: () => VNode;
17
18
  default?: () => VNode;
18
19
  };
19
20
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1 +1 @@
1
- {"version":3,"file":"DisclosureRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/harness/DisclosureRow.vue"],"names":[],"mappings":"AAsOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,CAAA;AAEhC,OAAO,6BAA6B,CAAA;AAIpC,KAAK,WAAW,GAAG;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,OAAO,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;CAC1C,CAAC;AAeJ,KAAK,WAAW,GAAG;IACjB,IAAI,CAAC,EAAE,MAAM,KAAK,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,KAAK,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,KAAK,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,KAAK,CAAA;CACtB,CAAC;AAuQF,QAAA,MAAM,UAAU;;;;;gBAjSC,OAAO;sBACD,OAAO;oBACT,OAAO;yBACF,OAAO;sBAEV,SAAS,GAAG,UAAU;6EAgS3C,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"DisclosureRow.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/harness/DisclosureRow.vue"],"names":[],"mappings":"AAkPA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,CAAA;AAEhC,OAAO,6BAA6B,CAAA;AAIpC,KAAK,WAAW,GAAG;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,OAAO,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;CAC1C,CAAC;AAeJ,KAAK,WAAW,GAAG;IACjB,IAAI,CAAC,EAAE,MAAM,KAAK,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,KAAK,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,KAAK,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,KAAK,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,KAAK,CAAA;CACtB,CAAC;AAwRF,QAAA,MAAM,UAAU;;;;;gBAnTC,OAAO;sBACD,OAAO;oBACT,OAAO;yBACF,OAAO;sBAEV,SAAS,GAAG,UAAU;6EAkT3C,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1,4 +1,7 @@
1
1
  import type { OutlineNode } from './components/document-viewer/adapter';
2
+ export declare const HTML_SCROLL_TO_OUTLINE_TYPE = "html-scroll-to-outline";
3
+ export declare const HTML_SCREENSHOT_REQUEST_TYPE = "html-screenshot-request";
4
+ export declare const HTML_SCREENSHOT_RESULT_TYPE = "html-screenshot-result";
2
5
  export declare function escapeHtmlAttribute(value: string): string;
3
6
  /**
4
7
  * Remote HTML is often served as `application/octet-stream` with
@@ -8,8 +11,10 @@ export declare function escapeHtmlAttribute(value: string): string;
8
11
  */
9
12
  export declare function injectHtmlBaseHref(html: string, src: string): string;
10
13
  /**
11
- * Assign stable heading ids, build the outline, and inject a scroll bridge so
12
- * the host can drive `scrollToOutline` without `allow-same-origin`.
14
+ * Assign stable heading ids, build the outline, and inject a host bridge so
15
+ * the parent can drive `scrollToOutline` and screenshot-ask without
16
+ * `allow-same-origin`. Screenshot-ask always serializes a live DOM snapshot
17
+ * (never extracted text — 划词 is a separate overlay).
13
18
  *
14
19
  * Existing heading `id`s are kept — many interactive HTML artifacts fill
15
20
  * `#prob-title` / similar anchors from a data island on load, and overwriting
@@ -1 +1 @@
1
- {"version":3,"file":"htmlPreview.d.ts","sourceRoot":"","sources":["../../../src/components/chat/htmlPreview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAiBvE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOzD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBpE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CA+B7F"}
1
+ {"version":3,"file":"htmlPreview.d.ts","sourceRoot":"","sources":["../../../src/components/chat/htmlPreview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAKvE,eAAO,MAAM,2BAA2B,2BAA2B,CAAA;AACnE,eAAO,MAAM,4BAA4B,4BAA4B,CAAA;AACrE,eAAO,MAAM,2BAA2B,2BAA2B,CAAA;AAiEnE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOzD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBpE;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CA+B7F"}
@@ -31,7 +31,9 @@ export declare function normalizeHistoryResourceFile(raw: unknown): ChatResource
31
31
  *
32
32
  * - Drops `system` roles (not part of restored agent transcripts).
33
33
  * - Assistant: builds flat `content` / `reasoning_content` / `tool_calls` from `steps`,
34
- * and attaches `steps` when `shouldEmitAssistantSteps` says so. Step `usage` is ignored.
34
+ * nests history `run_subagents` + `子智能体 N/M` reasonings into a `subagents` step
35
+ * (same shape as the stream aggregator), and attaches `steps` when
36
+ * `shouldEmitAssistantSteps` says so. Step `usage` is ignored.
35
37
  * - User: string `content` kept; Responses `{ type: "input_text", text }` flattened to text;
36
38
  * `output_text` / `reasoning_text` treated as text; `input_image` / `input_video` /
37
39
  * `input_file` / flat `input_audio` mapped to UI parts;
@@ -1 +1 @@
1
- {"version":3,"file":"hydrateHistory.d.ts","sourceRoot":"","sources":["../../../src/components/chat/hydrateHistory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,gBAAgB,EAMhB,mBAAmB,EAMpB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,qBAAqB;IACpC,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,iFAAiF;IACjF,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,mBAAmB,EAAE,CAAA;IACpD,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B,OAAO,CAAC,EAAE,qBAAqB,CAAA;CAChC;AAiBD;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAoClF;AAiVD;;;;;;;;;;;GAWG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,mBAAmB,EAAE,GACnD,mBAAmB,EAAE,CAyBvB"}
1
+ {"version":3,"file":"hydrateHistory.d.ts","sourceRoot":"","sources":["../../../src/components/chat/hydrateHistory.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAKV,gBAAgB,EAMhB,mBAAmB,EAUpB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,qBAAqB;IACpC,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,iFAAiF;IACjF,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,mBAAmB,EAAE,CAAA;IACpD,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B,OAAO,CAAC,EAAE,qBAAqB,CAAA;CAChC;AAiBD;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAoClF;AAycD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,mBAAmB,EAAE,GACnD,mBAAmB,EAAE,CAyBvB"}
@@ -25,7 +25,7 @@ export { createChatAttachmentController } from './attachmentController';
25
25
  export { getChatFileIconSrc } from './fileIcons';
26
26
  export { getFilesFromDataTransfer, hasFileDrag } from './fileDrop';
27
27
  export { editChatQueueItem, enqueueChatPayload, moveChatQueueItem, removeChatQueueItem, } from './chatQueue';
28
- export { resolveChatAttachmentLimits, useChatContext } from './chatContext';
28
+ export { resolveChatAttachmentLimits, useChatContext, useChatSender } from './chatContext';
29
29
  export { DEFAULT_ABORT_URL, DEFAULT_CHAT_API_URL, DEFAULT_HISTORY_FIND_BY_SESSION_URL, DEFAULT_HISTORY_FIND_BY_USER_URL, DEFAULT_HISTORY_VIEWED_URL, DEFAULT_HISTORY_RENAME_URL, DEFAULT_HISTORY_DELETE_URL, DEFAULT_LAST_SESSION_URL, DEFAULT_RESUME_URL, buildCloudAuthHeaders, mergeChatCloudConfig, resolveCloudHeaders, toSkillFetchConfig, toUploadConfig, } from './cloudConfig';
30
30
  export type { ChatApiRequestContext, ChatApiRequestParams, ChatCloudAuth, ChatCloudChatConfig, ChatCloudConfig, ChatCloudHistoryConfig, ChatCloudSkillsConfig, ChatCloudUploadConfig, } from './cloudConfig';
31
31
  export { checkLastSession, fetchAbortSession, fetchChatApi, fetchResume, } from './composables/chatApiRequest';
@@ -37,9 +37,12 @@ export { DEFAULT_MODEL_LIST_URL, fetchModelList, formatModelLabel, formatModelPr
37
37
  export type { ModelListPricing, ModelListResponse, ParsedModelId, } from './composables/fetchModelList';
38
38
  export { getQiniuUploadCredential, uploadFile, uploadFileToQiniu } from './qiniuUpload';
39
39
  export { getChatPreviewKind, registerChatPreviewRenderer, resolveChatPreviewRenderer, } from './previewRenderers';
40
+ export { OFFICE_PREVIEW_ENDPOINT, buildOfficePreviewUrl, buildOfficePreviewUrlFromResource, } from './components/document-viewer/office/officePreviewUrl';
40
41
  export { resolveArtifactOpenStrategy, resolveArtifactPreviewKind, artifactToChatResource, openArtifactInNewTab, downloadArtifact, isTextArtifactType, collectSessionArtifacts, sessionArtifactToAction, } from './mdoc';
41
42
  export type { ArtifactOpenMode, SessionArtifact } from './mdoc';
42
43
  export { registerToolRenderer, resolveToolRenderer } from './toolRenderers';
44
+ export { wrapTextReference, splitTextReference, hasTextReference, TEXT_REF_START, TEXT_REF_END, } from './textReference';
45
+ export type { SplitTextReference } from './textReference';
43
46
  export { classifyChatError } from './chatErrors';
44
47
  export type { ChatErrorKind, ClassifiedChatError } from './chatErrors';
45
48
  export { normalizeAgentHistoryMessages, normalizeHistoryResourceFile } from './hydrateHistory';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chat/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ArtifactBlock.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/ArtifactBlock.vue"],"names":[],"mappings":"AAgfA,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,UAAU,CAAA;AAQtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAKjD,KAAK,WAAW,GAAG;IACf,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC5B,CAAC;AA2TJ,QAAA,MAAM,YAAY;;;;;aA5TJ,QAAQ,GAAG,MAAM;6EAgU7B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ArtifactBlock.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/ArtifactBlock.vue"],"names":[],"mappings":"AAufA,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,UAAU,CAAA;AAQtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAMjD,KAAK,WAAW,GAAG;IACf,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC5B,CAAC;AAiUJ,QAAA,MAAM,YAAY;;;;;aAlUJ,QAAQ,GAAG,MAAM;6EAsU7B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,4 @@
1
+ import type { ComputedRef, InjectionKey } from 'vue';
2
+ /** Per-message prefix so two `{% artifact %}` cards can share a filename / src. */
3
+ export declare const chatOccurrenceKey: InjectionKey<ComputedRef<string> | string>;
4
+ //# sourceMappingURL=chatOccurrenceKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatOccurrenceKey.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/chatOccurrenceKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AAEpD,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,CAC5C,CAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Rewrite TeX-style `\(...\)` / `\[...\]` delimiters to `$...$` / `$$...$$`
3
+ * before md4x.
4
+ *
5
+ * Models (DeepSeek, GPT, Claude, …) often emit the parenthesis form. md4x only
6
+ * parses dollar math, and CommonMark would otherwise treat `\(` as an escaped
7
+ * parenthesis and drop the backslash — leaving raw `\frac{…}` in the bubble.
8
+ *
9
+ * Code spans and fenced code blocks are left untouched so examples that
10
+ * mention the delimiters stay literal. Inner whitespace is trimmed because
11
+ * md4x (like Pandoc) rejects `$` delimiters that sit next to a space.
12
+ */
13
+ export declare function convertLatexDelimiters(markdown: string): string;
14
+ //# sourceMappingURL=latexDelimiters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"latexDelimiters.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/latexDelimiters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAkC/D"}
@@ -14,7 +14,7 @@ export interface SessionArtifact {
14
14
  export declare function sessionArtifactToAction(item: SessionArtifact): ConversationUiAction;
15
15
  /** Rebuild an mdoc node so list cards can reuse `ArtifactBlock`. */
16
16
  export declare function sessionArtifactToNode(item: SessionArtifact): MdocComponentNode;
17
- export declare function artifactNodeToSessionArtifact(node: MdocComponentNode): SessionArtifact;
17
+ export declare function artifactNodeToSessionArtifact(node: MdocComponentNode, occurrenceKey?: string): SessionArtifact;
18
18
  /** Collect every `{% artifact %}` card in the conversation, in appearance order. */
19
19
  export declare function collectSessionArtifacts(messages: readonly ConversationMessage[]): SessionArtifact[];
20
20
  //# sourceMappingURL=sessionArtifacts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessionArtifacts.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/sessionArtifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAElE,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,eAAe,GAAG,oBAAoB,CAWnF;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,eAAe,GAAG,iBAAiB,CAmB9E;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,iBAAiB,GAAG,eAAe,CAoBtF;AAkCD,oFAAoF;AACpF,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GACvC,eAAe,EAAE,CAanB"}
1
+ {"version":3,"file":"sessionArtifacts.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/sessionArtifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAElE,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,eAAe,GAAG,oBAAoB,CAWnF;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,eAAe,GAAG,iBAAiB,CAmB9E;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,iBAAiB,EACvB,aAAa,CAAC,EAAE,MAAM,GACrB,eAAe,CAqBjB;AAqDD,oFAAoF;AACpF,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GACvC,eAAe,EAAE,CAUnB"}
@@ -47,13 +47,6 @@ export declare function findIncompleteMediaMarker(content: string): {
47
47
  mediaType: 'image' | 'video' | 'audio';
48
48
  startIndex: number;
49
49
  } | null;
50
- /**
51
- * Turn a markdown text blob into renderable segments (html + media).
52
- * Markdown parsing (incl. tables and math) is fully delegated to md4x;
53
- * `streaming` turns on md4x's heal pass so unclosed constructs (e.g. `**bold`)
54
- * render cleanly mid-stream. Code fences stay as plain
55
- * &lt;pre&gt;&lt;code&gt; from md4x (no Shiki).
56
- */
57
50
  export declare function renderTextToSegments(markdown: string, options?: {
58
51
  streaming?: boolean;
59
52
  }): TextSegment[];
@@ -1 +1 @@
1
- {"version":3,"file":"textContent.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/textContent.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAE3D,QAAA,MAAM,aAAa,qCAAa,CAAA;AAGhC,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAYnD;AAID,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,OAAO,EAAE,aAAa,IAAI,aAAa,EAAE,CAAA;AAEzC,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAChF;IACE,IAAI,EAAE,aAAa,CAAA;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxD,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,GACD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;CAAE,CAAA;AA4DjF;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG;IAC1D,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;IACtC,UAAU,EAAE,MAAM,CAAA;CACnB,GAAG,IAAI,CAeP;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GACpC,WAAW,EAAE,CAgFf"}
1
+ {"version":3,"file":"textContent.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/textContent.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAE3D,QAAA,MAAM,aAAa,qCAAa,CAAA;AAGhC,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAYnD;AAID,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,OAAO,EAAE,aAAa,IAAI,aAAa,EAAE,CAAA;AAEzC,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAChF;IACE,IAAI,EAAE,aAAa,CAAA;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxD,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,GACD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;CAAE,CAAA;AA4DjF;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG;IAC1D,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;IACtC,UAAU,EAAE,MAAM,CAAA;CACnB,GAAG,IAAI,CAeP;AAyBD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GACpC,WAAW,EAAE,CAkFf"}
@@ -1,4 +1,4 @@
1
- /** Shared time-label helpers for assistant MessageIconActions chrome. */
1
+ import type { AssistantMessage } from './types';
2
2
  /**
3
3
  * Responses / GA may send epoch seconds or ms. Values below 1e12 (~2001 in ms)
4
4
  * are treated as seconds.
@@ -6,12 +6,19 @@
6
6
  export declare function normalizeEpochMs(value: number): number;
7
7
  /** Compact local clock: same day → `HH:mm`; else `M/D HH:mm` or `Y/M/D HH:mm`. */
8
8
  export declare function formatMessageClock(time: number, now?: number): string;
9
- /** Whole-second run duration: `Ns` / `NmSs` / `NhNmSs`. */
9
+ /** Whole-second run duration: `N秒` / `N分N秒` / `N时N分N秒`. */
10
10
  export declare function formatRunDuration(ms: number): string;
11
- /** In-progress elapsed label: `s` under 1 minute, then `m`, then `h`. */
11
+ /** In-progress elapsed label: `秒` under 1 minute, then `分`, then `时`. */
12
12
  export declare function formatElapsedSeconds(totalSec: number): string;
13
13
  /** TTFT figure: one decimal under 10s, whole seconds beyond. */
14
14
  export declare function formatLatencySeconds(ms: number): string;
15
15
  /** Decode throughput: whole tokens from 10 up, one decimal below. */
16
16
  export declare function formatTokensPerSecond(tps: number): string;
17
+ /** Prefer persisted `run_ms`; otherwise `completed_at - created_at`. */
18
+ export declare function resolveAssistantRunMs(message: Pick<AssistantMessage, 'run_ms' | 'created_at' | 'completed_at'>): number | undefined;
19
+ /**
20
+ * Fill `completed_at` / `run_ms` when a turn ends.
21
+ * Uses `created_at` when it looks like a real wall clock; otherwise `startedAtMs`.
22
+ */
23
+ export declare function stampAssistantCompletedTiming(message: AssistantMessage, now?: number, startedAtMs?: number): AssistantMessage;
17
24
  //# sourceMappingURL=messageChrome.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageChrome.d.ts","sourceRoot":"","sources":["../../../src/components/chat/messageChrome.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAMzE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,MAAM,CAejF;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiB7D;AAED,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED,qEAAqE;AACrE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAGzD"}
1
+ {"version":3,"file":"messageChrome.d.ts","sourceRoot":"","sources":["../../../src/components/chat/messageChrome.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAW/C;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,MAAM,CAejF;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiB7D;AAED,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED,qEAAqE;AACrE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAGzD;AAUD,wEAAwE;AACxE,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,YAAY,GAAG,cAAc,CAAC,GACxE,MAAM,GAAG,SAAS,CAMpB;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,gBAAgB,EACzB,GAAG,GAAE,MAAmB,EACxB,WAAW,CAAC,EAAE,MAAM,GACnB,gBAAgB,CAsBlB"}
@@ -1,5 +1,5 @@
1
- import type { AssistantReasoningStep, AssistantToolCallsStep, ChatToolStates, ToolMessage } from './types';
2
- export type ProcessGroupStep = AssistantReasoningStep | AssistantToolCallsStep;
1
+ import type { AssistantReasoningStep, AssistantSubagentsStep, AssistantToolCallsStep, AssistantWebSearchStep, ChatToolStates, ToolMessage } from './types';
2
+ export type ProcessGroupStep = AssistantReasoningStep | AssistantToolCallsStep | AssistantWebSearchStep | AssistantSubagentsStep;
3
3
  /** Max length for a reasoning first-line used as the collapsed group summary. */
4
4
  export declare const PROCESS_GROUP_REASONING_SUMMARY_MAX = 120;
5
5
  /**
@@ -16,14 +16,16 @@ export interface ResolveProcessGroupSummaryInput {
16
16
  /** Group still streaming or has in-flight tools. */
17
17
  inProgress: boolean;
18
18
  /**
19
- * @deprecated Doubao-style titles omit elapsed duration. Kept for call-site compat.
19
+ * Optional elapsed seconds. The group title itself stays semantic;
20
+ * `ProcessStepGroup` renders `· 已用时 …` in a separate meta slot.
20
21
  */
21
22
  elapsedSec?: number;
22
23
  providerSummary?: string;
23
24
  steps: readonly ProcessGroupStep[];
24
25
  }
25
26
  /**
26
- * Collapsed group title (Claude-style status chip, no elapsed timer).
27
+ * Collapsed group title (semantic status chip).
28
+ * Elapsed duration is rendered beside the title by `ProcessStepGroup`.
27
29
  * In progress: provider → tool verb → 思考中 (never mirrors reasoning body).
28
30
  * Complete: provider → reasoning first line → step count.
29
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"processGroupSummary.d.ts","sourceRoot":"","sources":["../../../src/components/chat/processGroupSummary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,WAAW,EACZ,MAAM,SAAS,CAAA;AAIhB,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,sBAAsB,CAAA;AAE9E,iFAAiF;AACjF,eAAO,MAAM,mCAAmC,MAAM,CAAA;AAEtD;;;GAGG;AACH,eAAO,MAAM,kCAAkC,MAAsC,CAAA;AAErF,yFAAyF;AACzF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAK/D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAOjF;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAI1D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAMjF;AAmBD,MAAM,WAAW,+BAA+B;IAC9C,oDAAoD;IACpD,UAAU,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAA;CACnC;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,UAAU,EACV,eAAe,EACf,KAAK,GACN,EAAE,+BAA+B,GAAG,MAAM,CAsB1C;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAA;IAClC,YAAY,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IACrC,UAAU,CAAC,EAAE,cAAc,CAAA;CAC5B;AAED,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,KAAK,EACL,YAAY,EACZ,UAAU,GACX,EAAE,6BAA6B,GAAG,OAAO,CAoBzC"}
1
+ {"version":3,"file":"processGroupSummary.d.ts","sourceRoot":"","sources":["../../../src/components/chat/processGroupSummary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,WAAW,EACZ,MAAM,SAAS,CAAA;AAKhB,MAAM,MAAM,gBAAgB,GACxB,sBAAsB,GACtB,sBAAsB,GACtB,sBAAsB,GACtB,sBAAsB,CAAA;AAE1B,iFAAiF;AACjF,eAAO,MAAM,mCAAmC,MAAM,CAAA;AAEtD;;;GAGG;AACH,eAAO,MAAM,kCAAkC,MAAsC,CAAA;AAErF,yFAAyF;AACzF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAK/D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAYjF;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAI1D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAMjF;AAmCD,MAAM,WAAW,+BAA+B;IAC9C,oDAAoD;IACpD,UAAU,EAAE,OAAO,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAA;CACnC;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,UAAU,EACV,eAAe,EACf,KAAK,GACN,EAAE,+BAA+B,GAAG,MAAM,CA4B1C;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAA;IAClC,YAAY,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IACrC,UAAU,CAAC,EAAE,cAAc,CAAA;CAC5B;AAED,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,KAAK,EACL,YAAY,EACZ,UAAU,GACX,EAAE,6BAA6B,GAAG,OAAO,CAsCzC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Collapse markdown markers so one-line reasoning summaries stay readable
3
+ * (the expanded body is rendered as Markdown separately).
4
+ */
5
+ export declare function stripMarkdownInline(text: string): string;
6
+ //# sourceMappingURL=reasoningDisplay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoningDisplay.d.ts","sourceRoot":"","sources":["../../../src/components/chat/reasoningDisplay.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAaxD"}
@@ -1 +1 @@
1
- {"version":3,"file":"responseStream.d.ts","sourceRoot":"","sources":["../../../src/components/chat/responseStream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EAGrB,cAAc,EACd,kBAAkB,EAOlB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAuChB,qBAAa,2BAA4B,SAAQ,KAAK;IACpD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;gBAEH,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAM5D;AAED,UAAU,gBAAiB,SAAQ,qBAAqB;IACtD,QAAQ,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAA;CAC/E;AAED,UAAU,aAAa;IACrB,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,CAAA;IAC9C,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAA;CAChC;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,aAAa,CAAC,CAsXxB;AAED,sFAAsF;AACtF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,OAAO,CAqBjF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,gBAAgB,CAoE/F"}
1
+ {"version":3,"file":"responseStream.d.ts","sourceRoot":"","sources":["../../../src/components/chat/responseStream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EAEb,qBAAqB,EAGrB,cAAc,EACd,kBAAkB,EAQlB,oBAAoB,EAGrB,MAAM,SAAS,CAAA;AAuDhB,qBAAa,2BAA4B,SAAQ,KAAK;IACpD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;gBAEH,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAM5D;AAED,UAAU,gBAAiB,SAAQ,qBAAqB;IACtD,QAAQ,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAA;CAC/E;AAED,UAAU,aAAa;IACrB,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,CAAA;IAC9C,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAA;CAChC;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,aAAa,CAAC,CAgbxB;AAED,sFAAsF;AACtF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,OAAO,CAsBjF;AAcD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,gBAAgB,CAqI/F"}
@@ -7,5 +7,5 @@ export declare function animateSidebarLayoutFrom(root: Element, fromRect: DOMRec
7
7
  done?: () => void;
8
8
  }): void;
9
9
  export declare function animateSidebarEnter(el: Element, done: () => void): void;
10
- export declare function animateSidebarLeave(el: Element, done: () => void): void;
10
+ export declare function animateSidebarLeave(el: Element, done: () => void, immediate?: boolean): void;
11
11
  //# sourceMappingURL=sidebarMotion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebarMotion.d.ts","sourceRoot":"","sources":["../../../src/components/chat/sidebarMotion.ts"],"names":[],"mappings":"AAaA,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAGjD;AAoBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAGxE;AAMD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,CAInF;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;CAAO,GACvD,IAAI,CA4FN;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,IAAI,CA6CvE;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,IAAI,CAgCvE"}
1
+ {"version":3,"file":"sidebarMotion.d.ts","sourceRoot":"","sources":["../../../src/components/chat/sidebarMotion.ts"],"names":[],"mappings":"AAaA,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAGjD;AAoBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAGxE;AAMD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,CAInF;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;CAAO,GACvD,IAAI,CA4FN;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,IAAI,CA6CvE;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,SAAS,UAAQ,GAAG,IAAI,CAgC1F"}