@opentiny/tiny-robot 0.4.0-alpha.2 → 0.4.0-alpha.4

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.
@@ -1,12 +1,14 @@
1
- import { B as b, a, b as r, c as u, d as B, u as l, e as t, f as n, g as d } from "../index2.js";
1
+ import { B as a, a as b, b as u, c as r, d as l, u as t, e as n, f as B, g as o, h as d, i } from "../index2.js";
2
2
  export {
3
- b as Bubble,
4
- a as BubbleList,
5
- r as BubbleProvider,
6
- u as BubbleRendererMatchPriority,
7
- B as BubbleRenderers,
8
- l as useBubbleBoxRenderer,
9
- t as useBubbleContentRenderer,
10
- n as useBubbleStateChangeFn,
11
- d as useOmitMessageFields
3
+ a as Bubble,
4
+ b as BubbleList,
5
+ u as BubbleProvider,
6
+ r as BubbleRendererMatchPriority,
7
+ l as BubbleRenderers,
8
+ t as useBubbleBoxRenderer,
9
+ n as useBubbleContentRenderer,
10
+ B as useBubbleStateChangeFn,
11
+ o as useMessageContent,
12
+ d as useOmitMessageFields,
13
+ i as useToolCall
12
14
  };
package/dist/index.d.ts CHANGED
@@ -52,7 +52,10 @@ contentIndex?: number;
52
52
  placement: "start" | "end";
53
53
  shape: "corner" | "rounded" | "none";
54
54
  contentRenderMode: "single" | "split";
55
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
55
+ contentResolver: (message: BubbleMessage) => ChatMessageContent | undefined;
56
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
57
+ bubbleRef: HTMLDivElement;
58
+ }, HTMLDivElement>;
56
59
 
57
60
  declare const __VLS_component_10: DefineComponent<__VLS_PublicProps_3, {
58
61
  children: ComputedRef<(HTMLElement | SVGElement)[]>;
@@ -225,6 +228,57 @@ declare const __VLS_component_13: DefineComponent<WelcomeProps, {}, {}, {}, {},
225
228
  align: "left" | "center" | "right" | string;
226
229
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
227
230
 
231
+ declare const __VLS_component_14: DefineComponent<__VLS_PublicProps_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
232
+ "update:visible": (value: boolean) => any;
233
+ } & {
234
+ refresh: (tab: "installed" | "market") => any;
235
+ "update:visible": (visible: boolean) => any;
236
+ "market-category-change": (category: string) => any;
237
+ "tab-change": (activeTab: "installed" | "market") => any;
238
+ "plugin-toggle": (plugin: PluginInfo, enabled: boolean) => any;
239
+ "plugin-delete": (plugin: PluginInfo) => any;
240
+ "plugin-add": (plugin: PluginInfo) => any;
241
+ "plugin-create": (type: "code" | "form", data: PluginCreationData) => any;
242
+ "tool-toggle": (plugin: PluginInfo, toolId: string, enabled: boolean) => any;
243
+ "update:activeCount": (count: number) => any;
244
+ }, string, PublicProps, Readonly<__VLS_PublicProps_6> & Readonly<{
245
+ onRefresh?: ((tab: "installed" | "market") => any) | undefined;
246
+ "onUpdate:visible"?: ((value: boolean) => any) | undefined;
247
+ "onMarket-category-change"?: ((category: string) => any) | undefined;
248
+ "onTab-change"?: ((activeTab: "installed" | "market") => any) | undefined;
249
+ "onPlugin-toggle"?: ((plugin: PluginInfo, enabled: boolean) => any) | undefined;
250
+ "onPlugin-delete"?: ((plugin: PluginInfo) => any) | undefined;
251
+ "onPlugin-add"?: ((plugin: PluginInfo) => any) | undefined;
252
+ "onPlugin-create"?: ((type: "code" | "form", data: PluginCreationData) => any) | undefined;
253
+ "onTool-toggle"?: ((plugin: PluginInfo, toolId: string, enabled: boolean) => any) | undefined;
254
+ "onUpdate:activeCount"?: ((count: number) => any) | undefined;
255
+ }>, {
256
+ title: string;
257
+ loading: boolean;
258
+ installedPlugins: PluginInfo[];
259
+ marketPlugins: PluginInfo[];
260
+ searchPlaceholder: string;
261
+ enableSearch: boolean;
262
+ installedSearchFn: (query: string, item: PluginInfo) => boolean;
263
+ marketSearchFn: (query: string, item: PluginInfo) => boolean;
264
+ marketCategoryOptions: MarketCategoryOption[];
265
+ marketCategoryPlaceholder: string;
266
+ enableMarketCategoryFilter: boolean;
267
+ defaultActiveTab: "installed" | "market";
268
+ showInstalledTab: boolean;
269
+ showMarketTab: boolean;
270
+ popupConfig: PopupConfig;
271
+ installedTabTitle: string;
272
+ marketTabTitle: string;
273
+ showCustomAddButton: boolean;
274
+ customAddButtonText: string;
275
+ allowPluginToggle: boolean;
276
+ allowToolToggle: boolean;
277
+ allowPluginDelete: boolean;
278
+ allowPluginAdd: boolean;
279
+ marketLoading: boolean;
280
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
281
+
228
282
  declare const __VLS_component_2: DefineComponent<BubbleListProps, {
229
283
  scrollToBottom: (behavior?: ScrollBehavior) => Promise<void>;
230
284
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
@@ -242,6 +296,7 @@ messageIndex: number;
242
296
  contentIndex?: number;
243
297
  }) => any) | undefined;
244
298
  }>, {
299
+ contentResolver: (message: BubbleMessage) => ChatMessageContent | undefined;
245
300
  groupStrategy: "consecutive" | "divider" | ((messages: BubbleMessage[], dividerRole?: string) => BubbleMessageGroup[]);
246
301
  dividerRole: string;
247
302
  fallbackRole: string;
@@ -982,7 +1037,9 @@ declare type __VLS_PublicProps_6 = {
982
1037
  declare function __VLS_template(): {
983
1038
  attrs: Partial<{}>;
984
1039
  slots: Readonly<BubbleSlots> & BubbleSlots;
985
- refs: {};
1040
+ refs: {
1041
+ bubbleRef: HTMLDivElement;
1042
+ };
986
1043
  rootEl: HTMLDivElement;
987
1044
  };
988
1045
 
@@ -1134,6 +1191,15 @@ declare function __VLS_template_13(): {
1134
1191
  rootEl: HTMLDivElement;
1135
1192
  };
1136
1193
 
1194
+ declare function __VLS_template_14(): {
1195
+ attrs: Partial<{}>;
1196
+ slots: {
1197
+ 'header-actions'?(_: {}): any;
1198
+ };
1199
+ refs: {};
1200
+ rootEl: any;
1201
+ };
1202
+
1137
1203
  declare function __VLS_template_2(): {
1138
1204
  attrs: Partial<{}>;
1139
1205
  slots: Readonly<BubbleListSlots> & BubbleListSlots;
@@ -1806,6 +1872,8 @@ declare type __VLS_TemplateResult_12 = ReturnType<typeof __VLS_template_12>;
1806
1872
 
1807
1873
  declare type __VLS_TemplateResult_13 = ReturnType<typeof __VLS_template_13>;
1808
1874
 
1875
+ declare type __VLS_TemplateResult_14 = ReturnType<typeof __VLS_template_14>;
1876
+
1809
1877
  declare type __VLS_TemplateResult_2 = ReturnType<typeof __VLS_template_2>;
1810
1878
 
1811
1879
  declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;
@@ -1852,6 +1920,12 @@ declare type __VLS_WithTemplateSlots_13<T, S> = T & {
1852
1920
  };
1853
1921
  };
1854
1922
 
1923
+ declare type __VLS_WithTemplateSlots_14<T, S> = T & {
1924
+ new (): {
1925
+ $slots: S;
1926
+ };
1927
+ };
1928
+
1855
1929
  declare type __VLS_WithTemplateSlots_2<T, S> = T & {
1856
1930
  new (): {
1857
1931
  $slots: S;
@@ -1980,7 +2054,14 @@ export { Bubble }
1980
2054
  export { Bubble as TrBubble }
1981
2055
 
1982
2056
  export declare type BubbleBoxRendererMatch = {
1983
- find: (messages: BubbleMessage[], contentIndex?: number) => boolean;
2057
+ /**
2058
+ * 匹配函数,用于判断是否应该使用此渲染器
2059
+ * @param messages - 消息数组
2060
+ * @param resolvedContents - 每个消息经过 contentResolver 解析后的内容数组,与 messages 一一对应
2061
+ * @param contentIndex - 内容索引,用于指定要渲染的内容项(当 content 为数组时)
2062
+ * @returns 如果匹配则返回 true,否则返回 false
2063
+ */
2064
+ find: (messages: BubbleMessage[], resolvedContents: BubbleMessage['content'][], contentIndex: number | undefined) => boolean;
1984
2065
  renderer: Component<BubbleBoxRendererProps>;
1985
2066
  priority?: number;
1986
2067
  attributes?: Record<string, string>;
@@ -1989,7 +2070,14 @@ export declare type BubbleBoxRendererMatch = {
1989
2070
  export declare type BubbleBoxRendererProps = Pick<BubbleProps, 'placement' | 'shape'>;
1990
2071
 
1991
2072
  export declare type BubbleContentRendererMatch = {
1992
- find: (message: BubbleMessage, contentIndex?: number) => boolean;
2073
+ /**
2074
+ * 匹配函数,用于判断是否应该使用此渲染器
2075
+ * @param message - 消息对象
2076
+ * @param resolvedContent - 消息经过 contentResolver 解析后的内容
2077
+ * @param contentIndex - 内容索引,用于指定要渲染的内容项(当 content 为数组时)
2078
+ * @returns 如果匹配则返回 true,否则返回 false
2079
+ */
2080
+ find: (message: BubbleMessage, resolvedContent: BubbleMessage['content'], contentIndex: number | undefined) => boolean;
1993
2081
  renderer: Component<BubbleContentRendererProps>;
1994
2082
  priority?: number;
1995
2083
  attributes?: Record<string, string>;
@@ -2044,6 +2132,7 @@ export declare interface BubbleListProps {
2044
2132
  */
2045
2133
  roleConfigs?: Record<string, BubbleRoleConfig>;
2046
2134
  contentRenderMode?: BubbleProps['contentRenderMode'];
2135
+ contentResolver?: BubbleProps['contentResolver'];
2047
2136
  /**
2048
2137
  * 是否自动滚动到底部。需要满足以下条件:
2049
2138
  * - BubbleList 是可滚动容器(需要 scrollHeight > clientHeight)
@@ -2086,6 +2175,7 @@ export declare type BubbleProps = BubbleMessage & {
2086
2175
  placement?: 'start' | 'end';
2087
2176
  shape?: 'corner' | 'rounded' | 'none';
2088
2177
  contentRenderMode?: 'single' | 'split';
2178
+ contentResolver?: (message: BubbleMessage) => ChatMessageContent | undefined;
2089
2179
  fallbackBoxRenderer?: Component<BubbleBoxRendererProps>;
2090
2180
  fallbackContentRenderer?: Component<BubbleContentRendererProps>;
2091
2181
  };
@@ -2103,7 +2193,7 @@ export declare interface BubbleProviderProps {
2103
2193
  contentRendererMatches?: BubbleContentRendererMatch[];
2104
2194
  fallbackBoxRenderer?: Component<BubbleBoxRendererProps>;
2105
2195
  fallbackContentRenderer?: Component<BubbleContentRendererProps>;
2106
- initialStore?: Record<string, unknown>;
2196
+ store?: Record<string, unknown>;
2107
2197
  }
2108
2198
 
2109
2199
  /**
@@ -2142,10 +2232,10 @@ export declare const BubbleRenderers: {
2142
2232
  };
2143
2233
  });
2144
2234
  Image: DefineComponent< {
2145
- message: BubbleMessage<ChatMessageContent, Record<string, unknown>>;
2235
+ message: BubbleMessage<ChatMessageContentItem[], Record<string, unknown>>;
2146
2236
  contentIndex?: number;
2147
2237
  }, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{
2148
- message: BubbleMessage<ChatMessageContent, Record<string, unknown>>;
2238
+ message: BubbleMessage<ChatMessageContentItem[], Record<string, unknown>>;
2149
2239
  contentIndex?: number;
2150
2240
  }> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLImageElement>;
2151
2241
  Loading: DefineComponent< {
@@ -2174,7 +2264,9 @@ export declare const BubbleRenderers: {
2174
2264
  open?: boolean;
2175
2265
  }>;
2176
2266
  contentIndex?: number;
2177
- }> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
2267
+ }> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
2268
+ detailRef: HTMLParagraphElement;
2269
+ }, any>;
2178
2270
  Text: DefineComponent< {
2179
2271
  message: BubbleMessage<ChatMessageContent, Record<string, unknown>>;
2180
2272
  contentIndex?: number;
@@ -2184,19 +2276,21 @@ export declare const BubbleRenderers: {
2184
2276
  }> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
2185
2277
  Tool: DefineComponent<BubbleContentRendererProps<ChatMessageContent, {
2186
2278
  toolCall?: Record<string, {
2187
- status?: "success" | "running" | "failed" | "cancelled";
2279
+ status?: ToolCallStatus;
2188
2280
  open?: boolean;
2189
2281
  }>;
2190
2282
  }> & {
2191
- toolIndex: number;
2283
+ toolCallIndex: number;
2192
2284
  }, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<BubbleContentRendererProps<ChatMessageContent, {
2193
2285
  toolCall?: Record<string, {
2194
- status?: "success" | "running" | "failed" | "cancelled";
2286
+ status?: ToolCallStatus;
2195
2287
  open?: boolean;
2196
2288
  }>;
2197
2289
  }> & {
2198
- toolIndex: number;
2199
- }> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2290
+ toolCallIndex: number;
2291
+ }> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
2292
+ detailRef: HTMLDivElement;
2293
+ }, HTMLDivElement>;
2200
2294
  ToolRole: DefineComponent< {
2201
2295
  message: BubbleMessage<string, Record<string, unknown>>;
2202
2296
  contentIndex?: number;
@@ -2441,56 +2535,7 @@ declare const _default_34: __VLS_WithTemplateSlots_12<typeof __VLS_component_12,
2441
2535
 
2442
2536
  declare const _default_35: __VLS_WithTemplateSlots_13<typeof __VLS_component_13, __VLS_TemplateResult_13["slots"]>;
2443
2537
 
2444
- declare const _default_36: DefineComponent<__VLS_PublicProps_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2445
- "update:visible": (value: boolean) => any;
2446
- } & {
2447
- refresh: (tab: "installed" | "market") => any;
2448
- "update:visible": (visible: boolean) => any;
2449
- "market-category-change": (category: string) => any;
2450
- "tab-change": (activeTab: "installed" | "market") => any;
2451
- "plugin-toggle": (plugin: PluginInfo, enabled: boolean) => any;
2452
- "plugin-delete": (plugin: PluginInfo) => any;
2453
- "plugin-add": (plugin: PluginInfo) => any;
2454
- "plugin-create": (type: "code" | "form", data: PluginCreationData) => any;
2455
- "tool-toggle": (plugin: PluginInfo, toolId: string, enabled: boolean) => any;
2456
- "update:activeCount": (count: number) => any;
2457
- }, string, PublicProps, Readonly<__VLS_PublicProps_6> & Readonly<{
2458
- onRefresh?: ((tab: "installed" | "market") => any) | undefined;
2459
- "onUpdate:visible"?: ((value: boolean) => any) | undefined;
2460
- "onMarket-category-change"?: ((category: string) => any) | undefined;
2461
- "onTab-change"?: ((activeTab: "installed" | "market") => any) | undefined;
2462
- "onPlugin-toggle"?: ((plugin: PluginInfo, enabled: boolean) => any) | undefined;
2463
- "onPlugin-delete"?: ((plugin: PluginInfo) => any) | undefined;
2464
- "onPlugin-add"?: ((plugin: PluginInfo) => any) | undefined;
2465
- "onPlugin-create"?: ((type: "code" | "form", data: PluginCreationData) => any) | undefined;
2466
- "onTool-toggle"?: ((plugin: PluginInfo, toolId: string, enabled: boolean) => any) | undefined;
2467
- "onUpdate:activeCount"?: ((count: number) => any) | undefined;
2468
- }>, {
2469
- title: string;
2470
- loading: boolean;
2471
- installedPlugins: PluginInfo[];
2472
- marketPlugins: PluginInfo[];
2473
- searchPlaceholder: string;
2474
- enableSearch: boolean;
2475
- installedSearchFn: (query: string, item: PluginInfo) => boolean;
2476
- marketSearchFn: (query: string, item: PluginInfo) => boolean;
2477
- marketCategoryOptions: MarketCategoryOption[];
2478
- marketCategoryPlaceholder: string;
2479
- enableMarketCategoryFilter: boolean;
2480
- defaultActiveTab: "installed" | "market";
2481
- showInstalledTab: boolean;
2482
- showMarketTab: boolean;
2483
- popupConfig: PopupConfig;
2484
- installedTabTitle: string;
2485
- marketTabTitle: string;
2486
- showCustomAddButton: boolean;
2487
- customAddButtonText: string;
2488
- allowPluginToggle: boolean;
2489
- allowToolToggle: boolean;
2490
- allowPluginDelete: boolean;
2491
- allowPluginAdd: boolean;
2492
- marketLoading: boolean;
2493
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
2538
+ declare const _default_36: __VLS_WithTemplateSlots_14<typeof __VLS_component_14, __VLS_TemplateResult_14["slots"]>;
2494
2539
 
2495
2540
  declare const _default_37: DefineComponent<McpAddFormProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2496
2541
  cancel: () => any;
@@ -3371,7 +3416,7 @@ export declare type ThemeType = 'light' | 'dark';
3371
3416
  /**
3372
3417
  * 工具调用接口(支持 OpenAI 格式)
3373
3418
  */
3374
- declare interface ToolCall {
3419
+ export declare interface ToolCall {
3375
3420
  id: string;
3376
3421
  type: 'function' | string;
3377
3422
  function: {
@@ -3381,6 +3426,10 @@ declare interface ToolCall {
3381
3426
  [x: string]: any;
3382
3427
  }
3383
3428
 
3429
+ declare type ToolCallStatus = (typeof toolCallStatus)[number];
3430
+
3431
+ declare const toolCallStatus: readonly ["running", "success", "failed", "cancelled"];
3432
+
3384
3433
  declare interface TooltipContentProps {
3385
3434
  show?: boolean;
3386
3435
  content: string;
@@ -3414,6 +3463,12 @@ export declare function useAutoScroll(target: MaybeComputedElementRef, source: M
3414
3463
  bottomThreshold?: number;
3415
3464
  }): {
3416
3465
  scrollToBottom: (behavior?: ScrollBehavior) => Promise<void>;
3466
+ arrivedState: {
3467
+ left: boolean;
3468
+ right: boolean;
3469
+ top: boolean;
3470
+ bottom: boolean;
3471
+ };
3417
3472
  };
3418
3473
 
3419
3474
  export declare function useBubbleBoxRenderer(messages: MaybeRefOrGetter<BubbleMessage[]>, contentIndex?: number): ComputedRef<{
@@ -3425,6 +3480,12 @@ export declare function useBubbleContentRenderer(message: MaybeRefOrGetter<Bubbl
3425
3480
 
3426
3481
  export declare function useBubbleStateChangeFn(): (key: string, _value: unknown) => void;
3427
3482
 
3483
+ export declare const useMessageContent: <T extends ChatMessageContent = ChatMessageContent>(props: Readonly<BubbleContentRendererProps<T>>) => {
3484
+ content: ComputedRef<ChatMessageContent | undefined>;
3485
+ contentItem: ComputedRef<ChatMessageContentItem | undefined>;
3486
+ contentText: ComputedRef<string>;
3487
+ };
3488
+
3428
3489
  /**
3429
3490
  * Omit specified fields from message and return computed props
3430
3491
  * @param props - The original props containing the message
@@ -3456,6 +3517,28 @@ export declare const useTheme: () => {
3456
3517
  setColorMode: (mode: ColorMode) => boolean;
3457
3518
  };
3458
3519
 
3520
+ export declare const useToolCall: (props: BubbleContentRendererProps<ChatMessageContent, {
3521
+ toolCall?: Record<string, {
3522
+ status?: ToolCallStatus;
3523
+ open?: boolean;
3524
+ }>;
3525
+ }> & {
3526
+ toolCallIndex: number;
3527
+ }) => {
3528
+ toolCall: ComputedRef<ToolCall | undefined>;
3529
+ toolCallWithResult: Readonly<Ref< {
3530
+ readonly arguments?: any;
3531
+ readonly result?: any;
3532
+ }, {
3533
+ readonly arguments?: any;
3534
+ readonly result?: any;
3535
+ }>>;
3536
+ state: ComputedRef< {
3537
+ status: "success" | "running" | "failed" | "cancelled" | undefined;
3538
+ open: boolean | undefined;
3539
+ }>;
3540
+ };
3541
+
3459
3542
  export declare function useTouchDevice(): {
3460
3543
  isTouchDevice: Ref<boolean, boolean>;
3461
3544
  };
package/dist/index.js CHANGED
@@ -1,20 +1,20 @@
1
1
  import z from "./attachments/index.js";
2
2
  import { B as b, a as x, b as S } from "./index2.js";
3
- import { c as ve, d as fe, h as _e, u as ge, e as he, f as De, g as Te } from "./index2.js";
3
+ import { c as ve, d as fe, j as _e, u as ge, e as he, f as De, g as Te, h as Fe, i as ze } from "./index2.js";
4
4
  import E from "./container/index.js";
5
5
  import P from "./conversations/index.js";
6
6
  import B from "./drag-overlay/index.js";
7
- import L from "./dropdown-menu/index.js";
8
- import y from "./feedback/index.js";
9
- import { H as C } from "./index3.js";
10
- import { u as ze } from "./index3.js";
7
+ import C from "./dropdown-menu/index.js";
8
+ import L from "./feedback/index.js";
9
+ import { H as y } from "./index3.js";
10
+ import { u as xe } from "./index3.js";
11
11
  import O from "./icon-button/index.js";
12
- import { Prompt as A, Prompts as H } from "./prompts/index.js";
13
- import M from "./sender/index.js";
14
- import j, { SuggestionPillButton as R } from "./suggestion-pills/index.js";
12
+ import { Prompt as M, Prompts as j } from "./prompts/index.js";
13
+ import A from "./sender/index.js";
14
+ import H, { SuggestionPillButton as R } from "./suggestion-pills/index.js";
15
15
  import w from "./suggestion-popover/index.js";
16
16
  import k from "./theme-provider/index.js";
17
- import { useTheme as xe } from "./theme-provider/index.js";
17
+ import { useTheme as Ee } from "./theme-provider/index.js";
18
18
  import W from "./welcome/index.js";
19
19
  import $ from "./mcp-server-picker/index.js";
20
20
  import I from "./mcp-add-form/index.js";
@@ -151,14 +151,14 @@ const ue = {
151
151
  E,
152
152
  P,
153
153
  B,
154
+ C,
154
155
  L,
155
156
  y,
156
- C,
157
157
  O,
158
- A,
159
- H,
160
158
  M,
161
159
  j,
160
+ A,
161
+ H,
162
162
  R,
163
163
  w,
164
164
  k,
@@ -183,17 +183,17 @@ export {
183
183
  E as Container,
184
184
  P as Conversations,
185
185
  B as DragOverlay,
186
- L as DropdownMenu,
187
- y as Feedback,
188
- C as History,
186
+ C as DropdownMenu,
187
+ L as Feedback,
188
+ y as History,
189
189
  O as IconButton,
190
190
  I as McpAddForm,
191
191
  $ as McpServerPicker,
192
- A as Prompt,
193
- H as Prompts,
194
- M as Sender,
192
+ M as Prompt,
193
+ j as Prompts,
194
+ A as Sender,
195
195
  R as SuggestionPillButton,
196
- j as SuggestionPills,
196
+ H as SuggestionPills,
197
197
  w as SuggestionPopover,
198
198
  k as ThemeProvider,
199
199
  z as TrAttachments,
@@ -203,17 +203,17 @@ export {
203
203
  E as TrContainer,
204
204
  P as TrConversations,
205
205
  B as TrDragOverlay,
206
- L as TrDropdownMenu,
207
- y as TrFeedback,
208
- C as TrHistory,
206
+ C as TrDropdownMenu,
207
+ L as TrFeedback,
208
+ y as TrHistory,
209
209
  O as TrIconButton,
210
210
  I as TrMcpAddForm,
211
211
  $ as TrMcpServerPicker,
212
- A as TrPrompt,
213
- H as TrPrompts,
214
- M as TrSender,
212
+ M as TrPrompt,
213
+ j as TrPrompts,
214
+ A as TrSender,
215
215
  R as TrSuggestionPillButton,
216
- j as TrSuggestionPills,
216
+ H as TrSuggestionPills,
217
217
  w as TrSuggestionPopover,
218
218
  k as TrThemeProvider,
219
219
  W as TrWelcome,
@@ -223,8 +223,10 @@ export {
223
223
  ge as useBubbleBoxRenderer,
224
224
  he as useBubbleContentRenderer,
225
225
  De as useBubbleStateChangeFn,
226
- Te as useOmitMessageFields,
227
- xe as useTheme,
228
- ze as useTouchDevice,
226
+ Te as useMessageContent,
227
+ Fe as useOmitMessageFields,
228
+ Ee as useTheme,
229
+ ze as useToolCall,
230
+ xe as useTouchDevice,
229
231
  ue as vDropzone
230
232
  };