@deep-eye/core 1.2.60 → 1.2.64

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 (34) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/README.md +1 -1
  3. package/dist/components/chat/ChatBot.vue.d.ts +2 -2
  4. package/dist/components/chat/askUser.d.ts +81 -0
  5. package/dist/components/chat/askUser.d.ts.map +1 -0
  6. package/dist/components/chat/assistantDisplay.d.ts +6 -0
  7. package/dist/components/chat/assistantDisplay.d.ts.map +1 -1
  8. package/dist/components/chat/components/ChatMessage.vue.d.ts +2 -2
  9. package/dist/components/chat/components/ChatToolGroup.vue.d.ts +6 -0
  10. package/dist/components/chat/components/ChatToolGroup.vue.d.ts.map +1 -1
  11. package/dist/components/chat/components/ConversationList.vue.d.ts +8 -7
  12. package/dist/components/chat/components/ConversationList.vue.d.ts.map +1 -1
  13. package/dist/components/chat/components/MessageBubble.vue.d.ts +2 -2
  14. package/dist/components/chat/components/MessageBubble.vue.d.ts.map +1 -1
  15. package/dist/components/chat/components/ToolCallPart.vue.d.ts.map +1 -1
  16. package/dist/components/chat/formatToolArguments.d.ts +9 -5
  17. package/dist/components/chat/formatToolArguments.d.ts.map +1 -1
  18. package/dist/components/chat/index.d.ts +2 -2
  19. package/dist/components/chat/index.d.ts.map +1 -1
  20. package/dist/components/chat/mdoc/AskUserForm.vue.d.ts +4 -9
  21. package/dist/components/chat/mdoc/AskUserForm.vue.d.ts.map +1 -1
  22. package/dist/components/chat/mdoc/builtInRegistry.d.ts +4 -3
  23. package/dist/components/chat/mdoc/builtInRegistry.d.ts.map +1 -1
  24. package/dist/components/chat/mdoc/extractAskForms.d.ts +3 -20
  25. package/dist/components/chat/mdoc/extractAskForms.d.ts.map +1 -1
  26. package/dist/components/chat/mdoc/index.d.ts +2 -2
  27. package/dist/components/chat/mdoc/index.d.ts.map +1 -1
  28. package/dist/components/chat/responseStream.d.ts.map +1 -1
  29. package/dist/components/chat/types.d.ts +14 -16
  30. package/dist/components/chat/types.d.ts.map +1 -1
  31. package/dist/index.cjs +114 -110
  32. package/dist/index.js +13935 -13811
  33. package/dist/style.css +1 -1
  34. package/package.json +6 -4
package/CHANGELOG.md CHANGED
@@ -2,6 +2,50 @@
2
2
 
3
3
  `@deep-eye/core` 的用户可见变更(语义化版本)。
4
4
 
5
+ ## [1.2.64] - 2026-08-17
6
+
7
+ ### Breaking
8
+
9
+ - `ask_user` 全面改为结构化协议:`arguments` 为 `{ desc, questions }`(不再使用 `mdoc`)。
10
+ - `@action`:`source` 改为 `'ask-user'`;`answers` 为 `{ id, selected, custom? }[]`。
11
+ - `pendingAskFormMdoc` 重命名为 `pendingAskUser`(`AskUserPayload`)。
12
+ - 新增 `buildAskUserFunctionCallOutput` / `serializeAskUserOutput` 供宿主续接 `function_call_output`。
13
+
14
+ ### Changed
15
+
16
+ - `AskUserForm` 直接消费 `AskUserQuestion`;正文 `{% ask-form %}` 仅在 dock 边界转为结构化模型。
17
+ - `ASK_USER_FORM_SYSTEM_PROMPT` 改为描述结构化 `ask_user` + `function_call_output`。
18
+ - 文档(`guide/advanced`、Chat demos、README)对齐新协议与宿主续接示例。
19
+
20
+ ### Migration(宿主)
21
+
22
+ 1. 监听 `action.source === 'ask-user'`。
23
+ 2. 用 `buildAskUserFunctionCallOutput(action.toolCallId, action.answers)` 组装 `input`,同一 `session_id` 再调 `/generic/responses`。
24
+ 3. 将 `pendingAskFormMdoc` 替换为 `pendingAskUser`。
25
+
26
+ ## [1.2.63] - 2026-08-17
27
+
28
+ ### Changed
29
+
30
+ - 发布脚本与双 registry(npmjs + Nexus)流程调整。
31
+
32
+ ## [1.2.62] - 2026-08-17
33
+
34
+ ### Changed
35
+
36
+ - 发布目标改为公司 Nexus:`https://nexus.yxuer.com/repository/npm-host/`。
37
+
38
+ ## [1.2.61] - 2026-08-17
39
+
40
+ ### Fixed
41
+
42
+ - `consumeResponseStream`:为空字段兜底——`reasoning.summary` / `message.content` / `function_call.arguments` 为 `null`,以及 `reasoning_summary_part` / `content_part` 的 `text: null`,避免协议校验中断。
43
+ - `ToolCallPart`:`tool-call-part__summary` 改为 `flex: 0 1 auto` + `text-align: start`,并接入 `--tool-name-col-width`,避免多段 detail 被拉开到两端。
44
+
45
+ ### Changed
46
+
47
+ - Provider Action Protocol `<summary>`:正文仍剥离;有后续工具调用时,摘要显示在 `ChatToolGroup` 顶部一行(`chat-tool-group__summary`),**不**占用每行 `tool-call-part__summary`(该槽位继续展示工具参数)。
48
+
5
49
  ## [1.2.60] - 2026-08-17
6
50
 
7
51
  ### Fixed
package/README.md CHANGED
@@ -150,7 +150,7 @@ const data = {
150
150
  </template>
151
151
  ```
152
152
 
153
- assistant `content` 原生支持 GFM、代码高亮、KaTeX 公式、图片/视频/音频,以及组件库定义的 mdoc 标签(工件卡片、Ask Form 表单、Chart 图表、Action Bar 行动条)。将 `ARTIFACT_BLOCK_SYSTEM_PROMPT`、`ASK_USER_FORM_SYSTEM_PROMPT`、`CHART_BLOCK_SYSTEM_PROMPT` 或 `ACTION_BAR_SYSTEM_PROMPT` 加入模型的 system prompt,即可引导模型输出对应语法;`ChatBot` 会自动把 Ask Form 固定在底部 dock,在点击工件卡片时打开侧边栏预览,并在消息内渲染 `{% chart %}` 图表与 `{% action-bar %}` 行动条。
153
+ assistant `content` 原生支持 GFM、代码高亮、KaTeX 公式、图片/视频/音频,以及组件库定义的 mdoc 标签(工件卡片、ChartAction Bar)。询问用户优先走 `ask_user` tool(`arguments: { desc, questions }`);正文仍可写 `{% ask-form %}` 作兼容。将 `ARTIFACT_BLOCK_SYSTEM_PROMPT`、`ASK_USER_FORM_SYSTEM_PROMPT`、`CHART_BLOCK_SYSTEM_PROMPT` 或 `ACTION_BAR_SYSTEM_PROMPT` 加入 system prompt 可引导模型;`ChatBot` 会自动 dock Ask Form,提交后宿主用 `buildAskUserFunctionCallOutput` 续接 `function_call_output`。点击工件卡片打开侧边栏预览,消息内渲染 `{% chart %}` `{% action-bar %}`。
154
154
 
155
155
  ## 进阶能力
156
156
 
@@ -68,8 +68,8 @@ type __VLS_Slots = {
68
68
  declare const __VLS_base: import("vue").DefineComponent<ChatBotProps, ChatBotExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
69
69
  stop: () => any;
70
70
  copy: (payload: ChatActionbarCopyPayload) => any;
71
- retry: (payload: ChatSendPayload | null, error: Error) => any;
72
71
  action: (payload: ConversationUiAction) => any;
72
+ retry: (payload: ChatSendPayload | null, error: Error) => any;
73
73
  "tool-action": (payload: ChatToolActionPayload) => any;
74
74
  send: (payload: ChatSendPayload) => any;
75
75
  "update:draft": (draft: string) => any;
@@ -120,8 +120,8 @@ declare const __VLS_base: import("vue").DefineComponent<ChatBotProps, ChatBotExp
120
120
  }, string, import("vue").PublicProps, Readonly<ChatBotProps> & Readonly<{
121
121
  onStop?: (() => any) | undefined;
122
122
  onCopy?: ((payload: ChatActionbarCopyPayload) => any) | undefined;
123
- onRetry?: ((payload: ChatSendPayload | null, error: Error) => any) | undefined;
124
123
  onAction?: ((payload: ConversationUiAction) => any) | undefined;
124
+ onRetry?: ((payload: ChatSendPayload | null, error: Error) => any) | undefined;
125
125
  "onTool-action"?: ((payload: ChatToolActionPayload) => any) | undefined;
126
126
  onSend?: ((payload: ChatSendPayload) => any) | undefined;
127
127
  "onUpdate:draft"?: ((draft: string) => any) | undefined;
@@ -0,0 +1,81 @@
1
+ import type { ConversationToolCall } from './types';
2
+ export interface AskUserOption {
3
+ value: string;
4
+ label: string;
5
+ /** Visual hint only; never auto-selected. */
6
+ recommended?: boolean;
7
+ description?: string;
8
+ }
9
+ export interface AskUserQuestion {
10
+ id: string;
11
+ question: string;
12
+ options: AskUserOption[];
13
+ multi_select: boolean;
14
+ required: boolean;
15
+ /** Optional eyebrow (content-tag legacy / host override). */
16
+ header?: string;
17
+ }
18
+ export interface AskUserPayload {
19
+ desc: string;
20
+ questions: AskUserQuestion[];
21
+ }
22
+ /** Per-question answer for function_call_output. */
23
+ export interface AskUserAnswer {
24
+ id: string;
25
+ selected: string[];
26
+ custom?: string;
27
+ }
28
+ export interface AskUserOutput {
29
+ answers: AskUserAnswer[];
30
+ }
31
+ export interface AskUserFunctionCallOutput {
32
+ type: 'function_call_output';
33
+ call_id: string;
34
+ /** JSON string of {@link AskUserOutput}. */
35
+ output: string;
36
+ }
37
+ export type AskUserToolExtract = {
38
+ payload: AskUserPayload;
39
+ toolCallId: string;
40
+ };
41
+ export declare function isAskUserToolName(name: string): boolean;
42
+ /** @deprecated Prefer {@link isAskUserToolName}. */
43
+ export declare const isAskFormToolName: typeof isAskUserToolName;
44
+ export declare function normalizeAskUserQuestion(raw: Partial<AskUserQuestion> & {
45
+ question?: string;
46
+ id?: string;
47
+ }): AskUserQuestion | null;
48
+ export declare function normalizeAskUserPayload(raw: unknown): AskUserPayload | null;
49
+ /** True when tool arguments are structured ask_user (`desc` + `questions`). */
50
+ export declare function isAskUserShapedArguments(raw: string): boolean;
51
+ export declare function parseAskUserPayloadFromArguments(raw: string): AskUserPayload | null;
52
+ export declare function extractAskUserFromToolCall(call: ConversationToolCall): AskUserPayload | null;
53
+ /** Prefer the last ask_user tool call on the message (latest interrupt wins). */
54
+ export declare function extractAskUserFromToolCalls(calls: readonly ConversationToolCall[] | undefined): AskUserToolExtract | null;
55
+ /** @deprecated Prefer {@link extractAskUserFromToolCalls}. */
56
+ export declare function extractAskFormMdocFromToolCalls(calls: readonly ConversationToolCall[] | undefined): AskUserToolExtract | null;
57
+ export declare function filterOutAskUserToolCalls(calls: readonly ConversationToolCall[] | undefined): ConversationToolCall[];
58
+ /** @deprecated Prefer {@link filterOutAskUserToolCalls}. */
59
+ export declare const filterOutAskFormToolCalls: typeof filterOutAskUserToolCalls;
60
+ /**
61
+ * Parse assistant content `{% ask-form %}` tags into structured questions.
62
+ * Content tags are a docs/demo input format; the UI always uses {@link AskUserQuestion}.
63
+ */
64
+ export declare function extractAskUserQuestionsFromContent(content: string | undefined, options?: {
65
+ isStreaming?: boolean;
66
+ }): AskUserQuestion[];
67
+ /** @deprecated Prefer {@link extractAskUserQuestionsFromContent}. */
68
+ export declare function extractAskFormNodes(content: string | undefined, options?: {
69
+ isStreaming?: boolean;
70
+ }): AskUserQuestion[];
71
+ /** Strip legacy `(推荐)` / `(recommended)` label suffixes used before `recommended` boolean. */
72
+ export declare function parseRecommendedLabelSuffix(label: string): {
73
+ label: string;
74
+ recommended: boolean;
75
+ };
76
+ export declare function serializeAskUserOutput(answers: AskUserAnswer[]): string;
77
+ export declare function buildAskUserFunctionCallOutput(callId: string, answers: AskUserAnswer[]): AskUserFunctionCallOutput;
78
+ /** Display label for history / chat bubble (not sent as tool output). */
79
+ export declare function formatAskUserAnswersLabel(questions: readonly AskUserQuestion[], answers: readonly AskUserAnswer[]): string;
80
+ export declare function isAskUserAnswerComplete(question: AskUserQuestion, answer: AskUserAnswer | undefined): boolean;
81
+ //# sourceMappingURL=askUser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"askUser.d.ts","sourceRoot":"","sources":["../../../src/components/chat/askUser.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,10 @@
3
3
  * blocks so Markdown renders correctly and runtime markers never flash.
4
4
  */
5
5
  export declare function getAssistantDisplayContent(content: string | undefined): string;
6
+ /**
7
+ * Extract the Action Protocol `<summary>…</summary>` snapshot from assistant
8
+ * `output_text`. Used as a one-line intent above a following tool group — not
9
+ * as per-tool `tool-call-part__summary` (that slot stays reserved for args).
10
+ */
11
+ export declare function extractAssistantProviderSummary(content: string | undefined): string;
6
12
  //# sourceMappingURL=assistantDisplay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assistantDisplay.d.ts","sourceRoot":"","sources":["../../../src/components/chat/assistantDisplay.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAG9E"}
1
+ {"version":3,"file":"assistantDisplay.d.ts","sourceRoot":"","sources":["../../../src/components/chat/assistantDisplay.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAG9E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAInF"}
@@ -59,9 +59,9 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
59
59
  };
60
60
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
61
61
  copy: (payload: ChatActionbarCopyPayload) => any;
62
+ action: (payload: ConversationUiAction) => any;
62
63
  feedback: (payload: ChatActionbarFeedbackPayload) => any;
63
64
  branch: (payload: ChatActionbarBranchPayload) => any;
64
- action: (payload: ConversationUiAction) => any;
65
65
  "tool-action": (payload: ChatToolActionPayload) => any;
66
66
  "attachment-preview": (resource: ChatResourceFile) => any;
67
67
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -103,9 +103,9 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
103
103
  };
104
104
  }>> & Readonly<{
105
105
  onCopy?: ((payload: ChatActionbarCopyPayload) => any) | undefined;
106
+ onAction?: ((payload: ConversationUiAction) => any) | undefined;
106
107
  onFeedback?: ((payload: ChatActionbarFeedbackPayload) => any) | undefined;
107
108
  onBranch?: ((payload: ChatActionbarBranchPayload) => any) | undefined;
108
- onAction?: ((payload: ConversationUiAction) => any) | undefined;
109
109
  "onTool-action"?: ((payload: ChatToolActionPayload) => any) | undefined;
110
110
  "onAttachment-preview"?: ((resource: ChatResourceFile) => any) | undefined;
111
111
  }>, {
@@ -5,6 +5,12 @@ type __VLS_Props = {
5
5
  toolMessages?: readonly ToolMessage[];
6
6
  toolStates?: ChatToolStates;
7
7
  streaming?: boolean;
8
+ /**
9
+ * Action Protocol `<summary>` peeled from the preceding content step.
10
+ * Shown once above the rows — not on each `tool-call-part__summary`
11
+ * (that stays reserved for tool-argument detail).
12
+ */
13
+ summary?: string;
8
14
  };
9
15
  type __VLS_Slots = {
10
16
  default?: (props: {
@@ -1 +1 @@
1
- {"version":3,"file":"ChatToolGroup.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ChatToolGroup.vue"],"names":[],"mappings":"AAoGA,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,WAAW,EACZ,MAAM,UAAU,CAAA;AAEjB,OAAO,6BAA6B,CAAA;AAEpC,KAAK,WAAW,GAAG;IACjB,SAAS,EAAE,SAAS,oBAAoB,EAAE,CAAA;IAC1C,YAAY,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IACrC,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAC;AAGF,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,QAAQ,EAAE,oBAAoB,CAAA;QAC9B,WAAW,CAAC,EAAE,WAAW,CAAA;QACzB,SAAS,EAAE,OAAO,CAAA;KACnB,KAAK,OAAO,CAAA;CACd,CAAC;AAyHF,QAAA,MAAM,UAAU;;;;kFAGd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"ChatToolGroup.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ChatToolGroup.vue"],"names":[],"mappings":"AAuHA,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,WAAW,EACZ,MAAM,UAAU,CAAA;AAEjB,OAAO,6BAA6B,CAAA;AAEpC,KAAK,WAAW,GAAG;IACjB,SAAS,EAAE,SAAS,oBAAoB,EAAE,CAAA;IAC1C,YAAY,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IACrC,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAC;AAGF,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,QAAQ,EAAE,oBAAoB,CAAA;QAC9B,WAAW,CAAC,EAAE,WAAW,CAAA;QACzB,SAAS,EAAE,OAAO,CAAA;KACnB,KAAK,OAAO,CAAA;CACd,CAAC;AAkIF,QAAA,MAAM,UAAU;;;;kFAGd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { PropType } from 'vue';
2
+ import { type AskUserPayload } from '../askUser';
2
3
  import { type ClassifiedChatError } from '../chatErrors';
3
4
  import type { ChatActionbarBranchPayload, ChatActionbarCopyPayload, ChatActionbarFeedbackPayload, ChatMessageProps, ChatResourceFile, ChatToolActionPayload, ChatToolStates, AutoScrollMode, ConversationListExpose, ConversationMessage, ConversationStreamStatus, ConversationToolCall, ConversationTheme, ConversationUiAction, ToolMessage } from '../types';
4
5
  import '../harnessProcessTokens.css';
@@ -80,16 +81,16 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
80
81
  type: PropType<string[]>;
81
82
  default: undefined;
82
83
  };
83
- pendingAskFormMdoc: {
84
- type: StringConstructor;
84
+ pendingAskUser: {
85
+ type: PropType<AskUserPayload | null>;
85
86
  default: undefined;
86
87
  };
87
88
  }>, ConversationListExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
88
89
  copy: (payload: ChatActionbarCopyPayload) => any;
90
+ action: (payload: ConversationUiAction) => any;
89
91
  retry: () => any;
90
92
  feedback: (payload: ChatActionbarFeedbackPayload) => any;
91
93
  branch: (payload: ChatActionbarBranchPayload) => any;
92
- action: (payload: ConversationUiAction) => any;
93
94
  "tool-action": (payload: ChatToolActionPayload) => any;
94
95
  "attachment-preview": (resource: ChatResourceFile) => any;
95
96
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -133,16 +134,16 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
133
134
  type: PropType<string[]>;
134
135
  default: undefined;
135
136
  };
136
- pendingAskFormMdoc: {
137
- type: StringConstructor;
137
+ pendingAskUser: {
138
+ type: PropType<AskUserPayload | null>;
138
139
  default: undefined;
139
140
  };
140
141
  }>> & Readonly<{
141
142
  onCopy?: ((payload: ChatActionbarCopyPayload) => any) | undefined;
143
+ onAction?: ((payload: ConversationUiAction) => any) | undefined;
142
144
  onRetry?: (() => any) | undefined;
143
145
  onFeedback?: ((payload: ChatActionbarFeedbackPayload) => any) | undefined;
144
146
  onBranch?: ((payload: ChatActionbarBranchPayload) => any) | undefined;
145
- onAction?: ((payload: ConversationUiAction) => any) | undefined;
146
147
  "onTool-action"?: ((payload: ChatToolActionPayload) => any) | undefined;
147
148
  "onAttachment-preview"?: ((resource: ChatResourceFile) => any) | undefined;
148
149
  }>, {
@@ -155,7 +156,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
155
156
  assistantAvatar: string;
156
157
  followUps: string[];
157
158
  autoScroll: AutoScrollMode;
158
- pendingAskFormMdoc: string;
159
+ pendingAskUser: AskUserPayload | null;
159
160
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
160
161
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
161
162
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationList.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ConversationList.vue"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationList.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ConversationList.vue"],"names":[],"mappings":"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"}
@@ -60,9 +60,9 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
60
60
  };
61
61
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
62
62
  copy: (payload: ChatActionbarCopyPayload) => any;
63
+ action: (payload: ConversationUiAction) => any;
63
64
  feedback: (payload: ChatActionbarFeedbackPayload) => any;
64
65
  branch: (payload: ChatActionbarBranchPayload) => any;
65
- action: (payload: ConversationUiAction) => any;
66
66
  "tool-action": (payload: ChatToolActionPayload) => any;
67
67
  "attachment-preview": (resource: ChatResourceFile) => any;
68
68
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -104,9 +104,9 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
104
104
  };
105
105
  }>> & Readonly<{
106
106
  onCopy?: ((payload: ChatActionbarCopyPayload) => any) | undefined;
107
+ onAction?: ((payload: ConversationUiAction) => any) | undefined;
107
108
  onFeedback?: ((payload: ChatActionbarFeedbackPayload) => any) | undefined;
108
109
  onBranch?: ((payload: ChatActionbarBranchPayload) => any) | undefined;
109
- onAction?: ((payload: ConversationUiAction) => any) | undefined;
110
110
  "onTool-action"?: ((payload: ChatToolActionPayload) => any) | undefined;
111
111
  "onAttachment-preview"?: ((resource: ChatResourceFile) => any) | undefined;
112
112
  }>, {
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBubble.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/MessageBubble.vue"],"names":[],"mappings":"AAklBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AASnC,OAAO,6BAA6B,CAAA;AACpC,OAAO,KAAK,EACV,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EAId,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,EACZ,MAAM,UAAU,CAAA;AA4CjB,KAAK,WAAW,GAAG;IACjB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAA;IAC7B,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAA;IAClC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,OAAO,EAAE,mBAAmB,CAAA;QAC5B,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,EAAE,OAAO,CAAA;KACrB,KAAK,OAAO,CAAA;IACb,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAClB,OAAO,EAAE,mBAAmB,CAAA;QAC5B,MAAM,EAAE,OAAO,CAAA;QACf,UAAU,EAAE,OAAO,CAAA;QACnB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAC1B,KAAK,OAAO,CAAA;IACb,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QACb,QAAQ,EAAE,oBAAoB,CAAA;QAC9B,WAAW,CAAC,EAAE,WAAW,CAAA;QACzB,SAAS,EAAE,OAAO,CAAA;KACnB,KAAK,OAAO,CAAA;CACd,CAAC;AA6pBF,QAAA,MAAM,UAAU;;cAII,QAAQ,CAAC,mBAAmB,CAAC;;;;;;;;cAQ9B,QAAQ,CAAC,SAAS,WAAW,EAAE,CAAC;;;;cAI/B,QAAQ,CAAC,iBAAiB,CAAC;;;;;;;;;;;;cAY3B,QAAQ,CAAC,cAAc,CAAC;;;;cAIzB,QAAQ,CAAC,MAAM,EAAE,CAAC;;;;;;;;;;;;;;;;cA5BjB,QAAQ,CAAC,mBAAmB,CAAC;;;;;;;;cAQ9B,QAAQ,CAAC,SAAS,WAAW,EAAE,CAAC;;;;cAI/B,QAAQ,CAAC,iBAAiB,CAAC;;;;;;;;;;;;cAY3B,QAAQ,CAAC,cAAc,CAAC;;;;cAIzB,QAAQ,CAAC,MAAM,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;4EAQnC,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"MessageBubble.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/MessageBubble.vue"],"names":[],"mappings":"AAumBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AASnC,OAAO,6BAA6B,CAAA;AACpC,OAAO,KAAK,EACV,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EAKd,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,EACZ,MAAM,UAAU,CAAA;AA4CjB,KAAK,WAAW,GAAG;IACjB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAA;IAC7B,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAA;IAClC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,OAAO,EAAE,mBAAmB,CAAA;QAC5B,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,EAAE,OAAO,CAAA;KACrB,KAAK,OAAO,CAAA;IACb,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAClB,OAAO,EAAE,mBAAmB,CAAA;QAC5B,MAAM,EAAE,OAAO,CAAA;QACf,UAAU,EAAE,OAAO,CAAA;QACnB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAC1B,KAAK,OAAO,CAAA;IACb,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QACb,QAAQ,EAAE,oBAAoB,CAAA;QAC9B,WAAW,CAAC,EAAE,WAAW,CAAA;QACzB,SAAS,EAAE,OAAO,CAAA;KACnB,KAAK,OAAO,CAAA;CACd,CAAC;AAorBF,QAAA,MAAM,UAAU;;cAII,QAAQ,CAAC,mBAAmB,CAAC;;;;;;;;cAQ9B,QAAQ,CAAC,SAAS,WAAW,EAAE,CAAC;;;;cAI/B,QAAQ,CAAC,iBAAiB,CAAC;;;;;;;;;;;;cAY3B,QAAQ,CAAC,cAAc,CAAC;;;;cAIzB,QAAQ,CAAC,MAAM,EAAE,CAAC;;;;;;;;;;;;;;;;cA5BjB,QAAQ,CAAC,mBAAmB,CAAC;;;;;;;;cAQ9B,QAAQ,CAAC,SAAS,WAAW,EAAE,CAAC;;;;cAI/B,QAAQ,CAAC,iBAAiB,CAAC;;;;;;;;;;;;cAY3B,QAAQ,CAAC,cAAc,CAAC;;;;cAIzB,QAAQ,CAAC,MAAM,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;4EAQnC,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCallPart.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ToolCallPart.vue"],"names":[],"mappings":"AAw8BA,OAAO,EAAyC,KAAK,SAAS,EAAE,MAAM,KAAK,CAAA;AAgB3E,OAAO,KAAK,EACV,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EAEpB,WAAW,EACZ,MAAM,UAAU,CAAA;AACjB,OAAO,yBAAyB,CAAA;AAiBhC,OAAO,6BAA6B,CAAA;AAMpC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAC;AA6xBF,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ToolCallPart.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ToolCallPart.vue"],"names":[],"mappings":"AA88BA,OAAO,EAAyC,KAAK,SAAS,EAAE,MAAM,KAAK,CAAA;AAgB3E,OAAO,KAAK,EACV,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EAEpB,WAAW,EACZ,MAAM,UAAU,CAAA;AACjB,OAAO,yBAAyB,CAAA;AAiBhC,OAAO,6BAA6B,CAAA;AAMpC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAC;AA6xBF,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -3,7 +3,8 @@
3
3
  * states share one layout: a single monospace block that already shows real
4
4
  * newlines instead of jumping from `\n` escapes to pretty JSON.
5
5
  *
6
- * Payloads shaped like ask_form (`mdoc` + optional `desc`) never dump `mdoc`.
6
+ * ask_user payloads (`desc` + `questions`) never dump the questions array —
7
+ * tool-chain UI shows only `desc`.
7
8
  */
8
9
  export declare function formatToolArgumentsDisplay(raw: string): string;
9
10
  /**
@@ -12,13 +13,16 @@ export declare function formatToolArgumentsDisplay(raw: string): string;
12
13
  * stringify an already-stringified arguments payload).
13
14
  */
14
15
  export declare function parseToolCallArgumentsObject(raw: string): Record<string, unknown> | null;
15
- /** True when arguments look like ask_form / ask_user payload (`mdoc` holds ask-form tags). */
16
+ /** True when arguments look like ask_user (`questions` array). */
17
+ export declare function isAskUserShapedArguments(raw: string): boolean;
18
+ /** @deprecated Prefer {@link isAskUserShapedArguments}. */
16
19
  export declare function isAskFormShapedArguments(raw: string): boolean;
17
20
  /**
18
- * ask_form tool args are `{ desc, mdoc }`. Tool-chain UI shows only `desc`
19
- * (human label); never dump the mdoc payload.
21
+ * ask_user tool args are `{ desc, questions }`. Tool-chain UI shows only `desc`.
20
22
  */
21
- export declare function formatAskFormToolArgumentsDisplay(raw: string): string;
23
+ export declare function formatAskUserToolArgumentsDisplay(raw: string): string;
24
+ /** @deprecated Prefer {@link formatAskUserToolArgumentsDisplay}. */
25
+ export declare const formatAskFormToolArgumentsDisplay: typeof formatAskUserToolArgumentsDisplay;
22
26
  /** Pull a completed `"field":"..."` string from incomplete streamed JSON. */
23
27
  export declare function extractPartialJsonStringField(raw: string, field: string): string | null;
24
28
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"formatToolArguments.d.ts","sourceRoot":"","sources":["../../../src/components/chat/formatToolArguments.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgB9D;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAkBxF;AAED,8FAA8F;AAC9F,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAW7D;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQrE;AAED,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASvF;AA6CD;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAoDlE"}
1
+ {"version":3,"file":"formatToolArguments.d.ts","sourceRoot":"","sources":["../../../src/components/chat/formatToolArguments.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgB9D;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAkBxF;AAED,kEAAkE;AAClE,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQ7D;AAED,2DAA2D;AAC3D,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQrE;AAED,oEAAoE;AACpE,eAAO,MAAM,iCAAiC,0CAAoC,CAAA;AAElF,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASvF;AAsCD;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAoDlE"}
@@ -4,9 +4,9 @@ export { default as ChatBot } from './ChatBot.vue';
4
4
  export * from './components';
5
5
  export { ChatSenderAppendIcon, ChatSenderAtIcon, ChatSenderCheckIcon, ChatSenderClickIcon, ChatSenderLinkIcon, ChatSenderMicIcon, ChatSenderMicOffIcon, ChatSenderMoreIcon, } from './icons';
6
6
  export { ACTION_BAR_SYSTEM_PROMPT, ARTIFACT_BLOCK_SYSTEM_PROMPT, ASK_USER_FORM_SYSTEM_PROMPT, CHART_BLOCK_SYSTEM_PROMPT, } from './mdoc/builtInRegistry';
7
- export { extractAskFormNodes, extractAskFormMdocFromToolCall, extractAskFormMdocFromToolCalls, filterOutAskFormToolCalls, isAskFormToolName, } from './mdoc/extractAskForms';
7
+ export { buildAskUserFunctionCallOutput, extractAskUserFromToolCall, extractAskUserFromToolCalls, extractAskUserQuestionsFromContent, filterOutAskUserToolCalls, formatAskUserAnswersLabel, isAskUserAnswerComplete, isAskUserShapedArguments, isAskUserToolName, normalizeAskUserPayload, normalizeAskUserQuestion, parseAskUserPayloadFromArguments, serializeAskUserOutput, extractAskFormNodes, extractAskFormMdocFromToolCalls, filterOutAskFormToolCalls, isAskFormToolName, } from './askUser';
8
+ export type { AskUserAnswer, AskUserFunctionCallOutput, AskUserOption, AskUserOutput, AskUserPayload, AskUserQuestion, AskUserToolExtract, } from './askUser';
8
9
  export { convertReferenceMarkers } from './mdoc/referenceMarkup';
9
- export type { AskFormToolMdoc } from './mdoc/extractAskForms';
10
10
  export { ACTION_BAR_ICON_NAMES, isActionBarReady, resolveActionBarIcon, } from './mdoc/actionBarIcons';
11
11
  export type { ActionBarIconName } from './mdoc/actionBarIcons';
12
12
  export { CHART_TYPES, isChartType } from './mdoc/chart/schema';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,eAAe,CAAA;AAClD,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAEhB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAC9D,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,mBAAmB,SAAS,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAClD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACvF,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,eAAe,CAAA;AAClD,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAEhB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,8BAA8B,EAC9B,0BAA0B,EAC1B,2BAA2B,EAC3B,kCAAkC,EAClC,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EAEtB,mBAAmB,EACnB,+BAA+B,EAC/B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,WAAW,CAAA;AAClB,YAAY,EACV,aAAa,EACb,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAC9D,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,mBAAmB,SAAS,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAClD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACvF,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA"}
@@ -1,13 +1,8 @@
1
1
  import '../harnessProcessTokens.css';
2
+ import type { AskUserAnswer, AskUserQuestion } from '../askUser';
2
3
  import type { ConversationUiAction } from '../types';
3
- import type { MdocComponentNode } from './parser';
4
- type AskFormDraft = {
5
- value: string;
6
- label?: string;
7
- skipped?: boolean;
8
- };
9
4
  type __VLS_Props = {
10
- node: MdocComponentNode;
5
+ question: AskUserQuestion;
11
6
  questionIndex?: number;
12
7
  questionCount?: number;
13
8
  groupCanSubmit?: boolean;
@@ -17,14 +12,14 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
17
12
  previous: () => any;
18
13
  next: () => any;
19
14
  dismiss: () => any;
20
- answerChange: (payload: AskFormDraft | null) => any;
15
+ answerChange: (payload: AskUserAnswer | null) => any;
21
16
  submitGroup: () => any;
22
17
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
23
18
  onAction?: ((payload: ConversationUiAction) => any) | undefined;
24
19
  onPrevious?: (() => any) | undefined;
25
20
  onNext?: (() => any) | undefined;
26
21
  onDismiss?: (() => any) | undefined;
27
- onAnswerChange?: ((payload: AskFormDraft | null) => any) | undefined;
22
+ onAnswerChange?: ((payload: AskUserAnswer | null) => any) | undefined;
28
23
  onSubmitGroup?: (() => any) | undefined;
29
24
  }>, {
30
25
  questionIndex: number;
@@ -1 +1 @@
1
- {"version":3,"file":"AskUserForm.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/AskUserForm.vue"],"names":[],"mappings":"AA8yBA,OAAO,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAEjD,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAID,KAAK,WAAW,GAAG;IACf,IAAI,EAAE,iBAAiB,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAC;AA2nBJ,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;mBA9nBE,MAAM;mBACN,MAAM;oBACL,OAAO;6EAgoB1B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"AskUserForm.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/AskUserForm.vue"],"names":[],"mappings":"AAytBA,OAAO,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,aAAa,EAAiB,eAAe,EAAE,MAAM,YAAY,CAAA;AAC/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAIpD,KAAK,WAAW,GAAG;IACf,QAAQ,EAAE,eAAe,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAC;AAylBJ,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;mBA5lBE,MAAM;mBACN,MAAM;oBACL,OAAO;6EA8lB1B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1,9 +1,10 @@
1
1
  export declare const builtInRegistry: import("./registry").Registry;
2
2
  /**
3
- * AskUserForm system prompt 片段。
4
- * 宿主拼进 LLM system;后续其它交互标签会各自导出对应常量,再按需拼接。
3
+ * Host-side system prompt when the model itself emits ask_user tool calls.
4
+ * Backend-managed agents usually define the tool schema server-side — then this
5
+ * constant is unused.
5
6
  */
6
- export declare const ASK_USER_FORM_SYSTEM_PROMPT: string;
7
+ export declare const ASK_USER_FORM_SYSTEM_PROMPT = "\u5F53\u9700\u8981\u7528\u6237\u4ECE\u9009\u9879\u4E2D\u9009\u62E9\u65F6\uFF0C\u8C03\u7528 ask_user tool\u3002arguments \u4E3A JSON\uFF1Adesc\uFF08\u5DE5\u5177\u94FE\u77ED\u63CF\u8FF0\uFF09+ questions\uFF081\uFF5E4 \u9898\uFF09\u3002\u7981\u6B62\u7528\u7EAF\u6587\u672C ABCD \u4EE3\u66FF\uFF0C\u4E0D\u8981\u628A\u8868\u5355\u5199\u8FDB\u52A9\u624B\u6B63\u6587\u3002\n\n\u6BCF\u9898\u5B57\u6BB5\uFF1A\n- id\uFF1A\u7A33\u5B9A\u552F\u4E00\n- question\uFF1A\u5C55\u793A\u6587\u6848\n- options\uFF1A0\uFF5E4 \u9879\uFF1B\u7A7A\u6570\u7EC4\u8868\u793A\u7EAF\u6587\u672C\u9898\u3002\u6BCF\u9879 { value, label, recommended? }\uFF1B\u6709\u9009\u9879\u65F6\u6070\u597D\u4E00\u4E2A recommended=true\uFF0C\u4E14\u63A8\u8350\u9879\u6392\u7B2C\u4E00\n- multi_select\uFF1A\u591A\u9009\u65F6 true\uFF0C\u7F3A\u7701 false\n- required\uFF1A\u7F3A\u7701 true\uFF1B\u53EF\u8DF3\u8FC7\u65F6 false\n- \u7981\u6B62\u624B\u5199\u300C\u5176\u4ED6/\u5176\u5B83/Other\u300D\u9009\u9879\u2014\u2014\u524D\u7AEF\u56FA\u5B9A\u8FFD\u52A0\u81EA\u5B9A\u4E49\u8F93\u5165\n\n\u793A\u4F8B\uFF1A\n{\n \"desc\": \"\u786E\u8BA4\u6280\u672F\u6808\",\n \"questions\": [\n {\n \"id\": \"stack\",\n \"question\": \"\u9009\u4E00\u4E2A\u6280\u672F\u6808\",\n \"options\": [\n { \"value\": \"vue\", \"label\": \"Vue\", \"recommended\": true },\n { \"value\": \"react\", \"label\": \"React\", \"recommended\": false }\n ]\n }\n ]\n}\n\n\u7528\u6237\u63D0\u4EA4\u540E\u7531\u524D\u7AEF\u4EE5 function_call_output\uFF08call_id + output JSON \u5B57\u7B26\u4E32 { answers: [{ id, selected, custom? }] }\uFF09\u7EED\u63A5\u3002";
7
8
  /**
8
9
  * ArtifactBlock 的 system prompt 片段。
9
10
  * 宿主拼进 LLM system,与 ASK_USER_FORM_SYSTEM_PROMPT 一样共享同一 registry。
@@ -1 +1 @@
1
- {"version":3,"file":"builtInRegistry.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/builtInRegistry.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe,+BA+C1B,CAAA;AAyBF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,QAEtC,CAAA;AAuBF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,QAEvC,CAAA;AAoCF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,QAEpC,CAAA;AAeF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAEnC,CAAA"}
1
+ {"version":3,"file":"builtInRegistry.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/builtInRegistry.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe,+BA+C1B,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,ylDAyB8D,CAAA;AAuBtG;;;GAGG;AACH,eAAO,MAAM,4BAA4B,QAEvC,CAAA;AAoCF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,QAEpC,CAAA;AAeF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAEnC,CAAA"}
@@ -1,23 +1,6 @@
1
- import { type MdocComponentNode } from './parser';
2
- import type { ConversationToolCall } from '../types';
3
- /** Parse message content and return complete ask-form nodes (for bottom dock). */
4
- export declare function extractAskFormNodes(content: string | undefined, options?: {
5
- isStreaming?: boolean;
6
- }): MdocComponentNode[];
7
- export declare function isAskFormToolName(name: string): boolean;
8
1
  /**
9
- * Pull mdoc string from a tool call (`arguments.mdoc`).
10
- * Accepts known ask_* tool names, or any tool whose mdoc contains ask-form tags.
11
- * Unwraps double-encoded JSON arguments (stringified twice).
12
- * Returns null while arguments are incomplete / unparsable JSON.
2
+ * @deprecated Import from `../askUser` instead. Kept as a thin re-export surface
3
+ * for older relative imports within mdoc/.
13
4
  */
14
- export declare function extractAskFormMdocFromToolCall(call: ConversationToolCall): string | null;
15
- export type AskFormToolMdoc = {
16
- mdoc: string;
17
- toolCallId: string;
18
- };
19
- /** Prefer the last ask_form tool call on the message (latest interrupt wins). */
20
- export declare function extractAskFormMdocFromToolCalls(calls: readonly ConversationToolCall[] | undefined): AskFormToolMdoc | null;
21
- /** @deprecated ask_form tools are shown in the tool chain with `desc`; prefer not filtering them out. */
22
- export declare function filterOutAskFormToolCalls(calls: readonly ConversationToolCall[] | undefined): ConversationToolCall[];
5
+ export { extractAskUserQuestionsFromContent as extractAskFormNodes, extractAskUserFromToolCall as extractAskFormMdocFromToolCall, extractAskUserFromToolCalls as extractAskFormMdocFromToolCalls, filterOutAskUserToolCalls as filterOutAskFormToolCalls, isAskUserToolName as isAskFormToolName, type AskUserToolExtract as AskFormToolMdoc, } from '../askUser';
23
6
  //# sourceMappingURL=extractAskForms.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extractAskForms.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/extractAskForms.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAElE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEpD,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GACtC,iBAAiB,EAAE,CAWrB;AAKD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,GAAG,IAAI,CASxF;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,iFAAiF;AACjF,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,GACjD,eAAe,GAAG,IAAI,CAQxB;AAED,yGAAyG;AACzG,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,GACjD,oBAAoB,EAAE,CAGxB"}
1
+ {"version":3,"file":"extractAskForms.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/extractAskForms.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,kCAAkC,IAAI,mBAAmB,EACzD,0BAA0B,IAAI,8BAA8B,EAC5D,2BAA2B,IAAI,+BAA+B,EAC9D,yBAAyB,IAAI,yBAAyB,EACtD,iBAAiB,IAAI,iBAAiB,EACtC,KAAK,kBAAkB,IAAI,eAAe,GAC3C,MAAM,YAAY,CAAA"}
@@ -9,7 +9,7 @@ export { ACTION_BAR_ICON_NAMES, isActionBarReady, resolveActionBarIcon } from '.
9
9
  export type { ActionBarIconName } from './actionBarIcons';
10
10
  export { CHART_TYPES, isChartType } from './chart/schema';
11
11
  export type { ChartType } from './chart/schema';
12
- export { extractAskFormNodes, extractAskFormMdocFromToolCall, extractAskFormMdocFromToolCalls, filterOutAskFormToolCalls, isAskFormToolName, } from './extractAskForms';
13
- export type { AskFormToolMdoc } from './extractAskForms';
12
+ export { extractAskUserQuestionsFromContent as extractAskFormNodes, extractAskUserFromToolCall as extractAskFormMdocFromToolCall, extractAskUserFromToolCalls as extractAskFormMdocFromToolCalls, filterOutAskUserToolCalls as filterOutAskFormToolCalls, isAskUserToolName as isAskFormToolName, } from '../askUser';
13
+ export type { AskUserToolExtract as AskFormToolMdoc } from '../askUser';
14
14
  export { convertReferenceMarkers } from './referenceMarkup';
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,YAAY,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAChG,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,YAAY,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAChG,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EACL,kCAAkC,IAAI,mBAAmB,EACzD,0BAA0B,IAAI,8BAA8B,EAC5D,2BAA2B,IAAI,+BAA+B,EAC9D,yBAAyB,IAAI,yBAAyB,EACtD,iBAAiB,IAAI,iBAAiB,GACvC,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,kBAAkB,IAAI,eAAe,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA"}
@@ -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;AAqChB,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,CAyTxB;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,EACb,qBAAqB,EAGrB,cAAc,EACd,kBAAkB,EAOlB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAqChB,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,CAuTxB;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"}
@@ -364,22 +364,21 @@ export interface ChatTheme {
364
364
  buttonSecondaryColor?: string;
365
365
  }
366
366
  export type ConversationTheme = ChatTheme;
367
- export interface ConversationAskFormAnswer {
368
- formId: string;
369
- question: string;
370
- value: string;
371
- label?: string;
372
- skipped?: boolean;
373
- }
367
+ /** @deprecated Use {@link import('./askUser').AskUserAnswer}. */
368
+ export type ConversationAskFormAnswer = import('./askUser').AskUserAnswer;
374
369
  export interface ConversationUiAction {
375
370
  type: 'submit' | 'open-artifact' | 'action-bar';
371
+ /** @deprecated Prefer protocol `answers` for ask-user submits. */
376
372
  value?: string;
373
+ /** Human-readable summary (history / bubble); not the tool output. */
377
374
  label?: string;
375
+ /** Ask-user dock submits use `'ask-user'`. */
378
376
  source?: string;
379
377
  formId?: string;
380
378
  question?: string;
381
- answers?: ConversationAskFormAnswer[];
382
- /** When the docked form came from an ask_form tool call, its call id for tool-result resume. */
379
+ /** Protocol answers for ask_user `function_call_output`. */
380
+ answers?: import('./askUser').AskUserAnswer[];
381
+ /** `call_id` from the ask_user function call — host resumes with function_call_output. */
383
382
  toolCallId?: string;
384
383
  artifactId?: string;
385
384
  title?: string;
@@ -406,11 +405,10 @@ export interface ConversationListConfig {
406
405
  toolStates?: ChatToolStates;
407
406
  followUps?: string[];
408
407
  /**
409
- * Optional override for ask-form mdoc. When non-empty, takes priority over
410
- * auto-extracting from assistant `tool_calls` / content. Normal ask_form
411
- * tool flows do not need this — the library docks from `arguments.mdoc`.
408
+ * Optional structured ask_user override. When set, takes priority over
409
+ * auto-extracting from assistant `tool_calls` / content.
412
410
  */
413
- pendingAskFormMdoc?: string;
411
+ pendingAskUser?: import('./askUser').AskUserPayload | null;
414
412
  }
415
413
  export interface ConversationErrorSlotProps {
416
414
  error: Error;
@@ -685,10 +683,10 @@ export interface ChatBotProps {
685
683
  toolStates?: ChatToolStates;
686
684
  followUps?: string[];
687
685
  /**
688
- * Optional ask-form mdoc override (also via `conversationConfig.pendingAskFormMdoc`).
689
- * Prefer leaving unset: ChatBot auto-docks from `ask_form` tool_calls.
686
+ * Optional structured ask_user override (also via `conversationConfig.pendingAskUser`).
687
+ * Prefer leaving unset: ChatBot auto-docks from `ask_user` tool_calls.
690
688
  */
691
- pendingAskFormMdoc?: string;
689
+ pendingAskUser?: import('./askUser').AskUserPayload | null;
692
690
  }
693
691
  export interface ChatBotExpose {
694
692
  consume: (input: ResponseStreamSource, options?: ChatBotConsumeOptions) => Promise<void>;