@mcp-b/react-components 0.14.2 → 0.16.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AgentActivity-BNUNrP9O.d.ts +36 -0
- package/dist/{AgentChat-DQkqt82e.d.ts → AgentChat-CrlpbvQJ.d.ts} +58 -6
- package/dist/{CodeBlock-DUh9WOGo.d.ts → CodeBlock-BRajW4QU.d.ts} +1 -1
- package/dist/{CodeBlock-BUFXG8HW.js → CodeBlock-BmB4Xaqq.js} +15 -4
- package/dist/{FileTree-mpEIcfzA.js → FileTree-CkVbIMWV.js} +82 -89
- package/dist/Message-BkMdE3bS.js +375 -0
- package/dist/{ModelSelector-CPCpFAUt.js → ModelSelector-SlJNgwKY.js} +2 -2
- package/dist/{PromptInput-ClNqBiIw.d.ts → PromptInput-BWTuXMOD.d.ts} +123 -5
- package/dist/ResponsiveSidebarShell-Dd9DCcBT.d.ts +67 -0
- package/dist/{Select-Dl_vF_Bt.d.ts → Select-BeEsefzh.d.ts} +12 -2
- package/dist/{ThinkChat-BPcehdbP.js → ThinkChat-CzC-zNGA.js} +24 -36
- package/dist/{ThinkChatActivity-BmwuIigx.d.ts → ThinkChatActivity-BFQnb2ct.d.ts} +3 -10
- package/dist/ThinkChatActivitySummary-BPmu9a-c.d.ts +39 -0
- package/dist/{ThinkChatToolParts-CDEjqS6A.d.ts → ThinkChatToolParts-CSzVwMXf.d.ts} +13 -3
- package/dist/ThinkExecutionRun-ChhWhOoU.d.ts +30 -0
- package/dist/Toggle-CAAlNl-M.d.ts +69 -0
- package/dist/ToggleGroup-8hPv-b69.d.ts +73 -0
- package/dist/Workspace-D39LxGvP.d.ts +62 -0
- package/dist/WorkspaceFile-DOZkPwzu.d.ts +106 -0
- package/dist/WorkspaceFileView-rSN_yT0L.js +744 -0
- package/dist/WorkspaceLink-DIPbXrUM.js +337 -0
- package/dist/WorkspaceLink-DK1DWMHe.d.ts +89 -0
- package/dist/components/Activity.d.ts +27 -1
- package/dist/components/Activity.js +33 -15
- package/dist/components/AgentActivity.d.ts +2 -0
- package/dist/components/AgentActivity.js +45 -0
- package/dist/components/AgentActivityPreview.d.ts +46 -0
- package/dist/components/AgentActivityPreview.js +94 -0
- package/dist/components/AgentAttention.d.ts +73 -0
- package/dist/components/AgentAttention.js +85 -0
- package/dist/components/AgentChat.d.ts +2 -2
- package/dist/components/AgentChat.js +224 -200
- package/dist/components/AgentChatMessageEditor.d.ts +29 -0
- package/dist/components/AgentChatMessageEditor.js +92 -0
- package/dist/components/AgentChatTurnError.d.ts +17 -0
- package/dist/components/AgentChatTurnError.js +40 -0
- package/dist/components/AgentConnection.d.ts +12 -17
- package/dist/components/AgentConnection.js +99 -91
- package/dist/components/AppFrame.d.ts +24 -0
- package/dist/components/AppFrame.js +25 -0
- package/dist/components/AppTopBar.d.ts +71 -0
- package/dist/components/AppTopBar.js +82 -0
- package/dist/components/Artifact.js +1 -1
- package/dist/components/BrowserLiveView.js +1 -1
- package/dist/components/BrowserReplay.js +1 -1
- package/dist/components/BrowserRunPanel.js +1 -1
- package/dist/components/Card.d.ts +3 -0
- package/dist/components/Card.js +2 -1
- package/dist/components/ChainOfThought.d.ts +1 -1
- package/dist/components/ChainOfThought.js +1 -1
- package/dist/components/ChatGptSignInScreen.js +2 -2
- package/dist/components/Checkbox.js +5 -13
- package/dist/components/CheckboxGroup.d.ts +58 -2
- package/dist/components/CheckboxGroup.js +59 -1
- package/dist/components/CodeBlock.d.ts +1 -1
- package/dist/components/CodeBlock.js +1 -1
- package/dist/components/CodexModelSelector.js +1 -1
- package/dist/components/Commit.js +2 -2
- package/dist/components/ContextMenu.js +1 -1
- package/dist/components/Conversation.js +1 -1
- package/dist/components/DescriptionList.d.ts +12 -0
- package/dist/components/DescriptionList.js +11 -0
- package/dist/components/DescriptionListParts.d.ts +37 -0
- package/dist/components/DescriptionListParts.js +35 -0
- package/dist/components/EnvironmentVariables.js +2 -2
- package/dist/components/Fieldset.d.ts +13 -1
- package/dist/components/Fieldset.js +11 -2
- package/dist/components/FileTree.js +1 -1
- package/dist/components/IconButton.d.ts +33 -0
- package/dist/components/IconButton.js +27 -0
- package/dist/components/McpConnectionRequest.d.ts +44 -0
- package/dist/components/McpConnectionRequest.js +122 -0
- package/dist/components/McpServerPicker.d.ts +48 -23
- package/dist/components/McpServerPicker.js +238 -189
- package/dist/components/Menubar.js +1 -1
- package/dist/components/Message.d.ts +1 -0
- package/dist/components/Message.js +1 -285
- package/dist/components/MessageScroller.js +1 -1
- package/dist/components/ModelSelector.js +1 -1
- package/dist/components/Pricing.d.ts +37 -0
- package/dist/components/Pricing.js +17 -0
- package/dist/components/PricingBillingToggle.d.ts +23 -0
- package/dist/components/PricingBillingToggle.js +86 -0
- package/dist/components/PricingConfirmationDialog.d.ts +25 -0
- package/dist/components/PricingConfirmationDialog.js +57 -0
- package/dist/components/PricingFAQ.d.ts +18 -0
- package/dist/components/PricingFAQ.js +27 -0
- package/dist/components/PricingPage.d.ts +2 -38
- package/dist/components/PricingPage.js +39 -359
- package/dist/components/PricingPlanCard.d.ts +22 -0
- package/dist/components/PricingPlanCard.js +109 -0
- package/dist/components/PricingUsageCalculator.d.ts +22 -0
- package/dist/components/PricingUsageCalculator.js +96 -0
- package/dist/components/PromptInput.d.ts +2 -2
- package/dist/components/PromptInput.js +210 -15
- package/dist/components/Queue.js +1 -1
- package/dist/components/Reasoning.d.ts +2 -1
- package/dist/components/Reasoning.js +14 -29
- package/dist/components/ResizableSidePanel.d.ts +57 -0
- package/dist/components/ResizableSidePanel.js +151 -0
- package/dist/components/ResponsiveSidebarShell.d.ts +2 -0
- package/dist/components/ResponsiveSidebarShell.js +129 -0
- package/dist/components/Select.d.ts +2 -2
- package/dist/components/Select.js +11 -2
- package/dist/components/Slider.d.ts +13 -1
- package/dist/components/Slider.js +11 -0
- package/dist/components/Sources.js +1 -1
- package/dist/components/Stepper.d.ts +4 -0
- package/dist/components/Stepper.js +5 -3
- package/dist/components/SubagentRun.d.ts +18 -19
- package/dist/components/SubagentRun.js +25 -18
- package/dist/components/SubagentRunIndicator.d.ts +22 -0
- package/dist/components/SubagentRunIndicator.js +33 -0
- package/dist/components/SubagentRunList.d.ts +25 -0
- package/dist/components/SubagentRunList.js +26 -0
- package/dist/components/SubagentRunSelector.d.ts +47 -0
- package/dist/components/SubagentRunSelector.js +55 -0
- package/dist/components/Task.js +1 -1
- package/dist/components/Terminal.js +2 -2
- package/dist/components/TestResults.js +1 -1
- package/dist/components/Textarea.d.ts +21 -0
- package/dist/components/Textarea.js +19 -0
- package/dist/components/ThemeModeControl.d.ts +24 -0
- package/dist/components/ThemeModeControl.js +52 -0
- package/dist/components/ThemeProvider.d.ts +38 -0
- package/dist/components/ThemeProvider.js +80 -0
- package/dist/components/ThinkChat.d.ts +29 -6
- package/dist/components/ThinkChat.js +7 -4
- package/dist/components/ThinkChatActivity.d.ts +3 -2
- package/dist/components/ThinkChatActivity.js +12 -318
- package/dist/components/ThinkChatActivitySummary.d.ts +2 -0
- package/dist/components/ThinkChatActivitySummary.js +421 -0
- package/dist/components/ThinkChatToolPanels.d.ts +7 -5
- package/dist/components/ThinkChatToolPanels.js +70 -8
- package/dist/components/ThinkChatToolParts.d.ts +2 -2
- package/dist/components/ThinkChatToolParts.js +36 -10
- package/dist/components/ThinkExecutionDetail.d.ts +20 -0
- package/dist/components/ThinkExecutionDetail.js +80 -0
- package/dist/components/ThinkExecutionRun.d.ts +2 -0
- package/dist/components/ThinkExecutionRun.js +72 -0
- package/dist/components/ThinkExecutionStatus.d.ts +22 -0
- package/dist/components/ThinkExecutionStatus.js +36 -0
- package/dist/components/ThinkExecutionWorkbench.d.ts +7 -0
- package/dist/components/ThinkExecutionWorkbench.js +69 -225
- package/dist/components/ThinkFullApp.d.ts +58 -14
- package/dist/components/ThinkFullApp.js +154 -160
- package/dist/components/ThinkFullAppViewSwitch.d.ts +31 -0
- package/dist/components/ThinkFullAppViewSwitch.js +34 -0
- package/dist/components/ThinkRoutine.d.ts +36 -0
- package/dist/components/ThinkRoutine.js +15 -0
- package/dist/components/ThinkRoutineBrowser.d.ts +25 -0
- package/dist/components/ThinkRoutineBrowser.js +156 -0
- package/dist/components/ThinkRoutineDetail.d.ts +24 -0
- package/dist/components/ThinkRoutineDetail.js +102 -0
- package/dist/components/ThinkRoutineForm.d.ts +32 -0
- package/dist/components/ThinkRoutineForm.js +151 -0
- package/dist/components/ThinkRoutineLibrary.d.ts +74 -0
- package/dist/components/ThinkRoutineLibrary.js +178 -0
- package/dist/components/ThinkRoutineRuns.d.ts +24 -0
- package/dist/components/ThinkRoutineRuns.js +68 -0
- package/dist/components/ThinkThreadPicker.d.ts +18 -1
- package/dist/components/ThinkThreadPicker.js +51 -5
- package/dist/components/ThinkThreadShell.d.ts +12 -9
- package/dist/components/ThinkThreadShell.js +17 -137
- package/dist/components/Toggle.d.ts +1 -68
- package/dist/components/ToggleGroup.d.ts +1 -72
- package/dist/components/Tooltip.d.ts +3 -1
- package/dist/components/Tooltip.js +4 -2
- package/dist/components/WebPreview.js +1 -1
- package/dist/components/Workspace.d.ts +2 -0
- package/dist/components/Workspace.js +424 -0
- package/dist/components/WorkspaceBrowser.d.ts +32 -0
- package/dist/components/WorkspaceBrowser.js +103 -0
- package/dist/components/WorkspaceExplorer.d.ts +12 -79
- package/dist/components/WorkspaceExplorer.js +116 -330
- package/dist/components/WorkspaceFile.d.ts +2 -0
- package/dist/components/WorkspaceFile.js +195 -0
- package/dist/components/WorkspaceFileView.d.ts +26 -0
- package/dist/components/WorkspaceFileView.js +2 -0
- package/dist/components/WorkspaceHeader.d.ts +35 -0
- package/dist/components/WorkspaceHeader.js +51 -0
- package/dist/components/WorkspaceLink.d.ts +2 -0
- package/dist/components/WorkspaceLink.js +2 -0
- package/dist/components/icons.d.ts +2 -2
- package/dist/components/icons.js +2 -2
- package/dist/{copy-button-DUMLYdsk.js → copy-button-Dejn5heL.js} +1 -1
- package/dist/icons-CpfUer49.js +85 -0
- package/dist/{icons-CUCz_Sft.d.ts → icons-GQd1xF4e.d.ts} +51 -1
- package/dist/styles/activity-header.css +75 -0
- package/dist/styles/activity.css +49 -63
- package/dist/styles/agent-activity-preview-overlay.css +80 -0
- package/dist/styles/agent-activity-preview.css +233 -0
- package/dist/styles/agent-attention.css +128 -0
- package/dist/styles/agent-chat.css +133 -4
- package/dist/styles/agent-connection.css +9 -9
- package/dist/styles/alert-dialog.css +11 -11
- package/dist/styles/app-frame.css +15 -0
- package/dist/styles/app-top-bar.css +102 -0
- package/dist/styles/avatar.css +0 -1
- package/dist/styles/browser-control-overlay.css +184 -0
- package/dist/styles/card.css +29 -8
- package/dist/styles/chain-of-thought.css +5 -5
- package/dist/styles/checkbox-group.css +69 -0
- package/dist/styles/codex-model-selector.css +3 -3
- package/dist/styles/combobox.css +2 -1
- package/dist/styles/context-menu.css +1 -1
- package/dist/styles/description-list.css +50 -0
- package/dist/styles/dialog.css +11 -11
- package/dist/styles/field.css +14 -14
- package/dist/styles/fieldset.css +15 -4
- package/dist/styles/index.css +14 -2
- package/dist/styles/mcp-connection-request.css +60 -0
- package/dist/styles/mcp-server-picker.css +96 -68
- package/dist/styles/menu.css +1 -1
- package/dist/styles/message.css +4 -43
- package/dist/styles/model-selector.css +18 -12
- package/dist/styles/popover.css +9 -9
- package/dist/styles/preview-card.css +1 -1
- package/dist/styles/pricing-page.css +21 -27
- package/dist/styles/prompt-input.css +225 -32
- package/dist/styles/reasoning.css +1 -55
- package/dist/styles/recipes.css +50 -24
- package/dist/styles/resizable-side-panel.css +66 -0
- package/dist/styles/responsive-sidebar-shell.css +169 -0
- package/dist/styles/select.css +13 -3
- package/dist/styles/sources.css +6 -6
- package/dist/styles/stepper.css +13 -0
- package/dist/styles/streamdown.css +0 -4
- package/dist/styles/subagent-run.css +59 -42
- package/dist/styles/task.css +17 -10
- package/dist/styles/test-results.css +17 -10
- package/dist/styles/textarea.css +20 -0
- package/dist/styles/theme-mode-control.css +72 -0
- package/dist/styles/think-execution-status.css +49 -0
- package/dist/styles/think-execution-workbench.css +16 -80
- package/dist/styles/think-full-app.css +143 -128
- package/dist/styles/think-routine-library.css +491 -0
- package/dist/styles/think-thread-picker.css +47 -3
- package/dist/styles/toast.css +6 -6
- package/dist/styles/toggle-group.css +7 -0
- package/dist/styles/tooltip.css +1 -1
- package/dist/styles/workspace-explorer.css +516 -64
- package/dist/utils/mcp-server-catalog.d.ts +82 -78
- package/dist/utils/mcp-server-catalog.js +64 -41
- package/dist/utils/structured-code.d.ts +1 -1
- package/dist/utils/theme.d.ts +22 -0
- package/dist/utils/theme.js +55 -0
- package/package.json +34 -28
- package/dist/icons-Ba9THQKz.js +0 -64
- package/dist/styles/think-resize-handle.css +0 -33
- package/dist/styles/think-thread-shell.css +0 -219
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { UIMessage } from "ai";
|
|
3
|
+
import { AgentToolRunPart, AgentToolRunState } from "agents/agent-tools";
|
|
4
|
+
|
|
5
|
+
//#region src/components/SubagentRunList.d.ts
|
|
6
|
+
interface SubagentRunListProps<Part extends AgentToolRunPart = UIMessage["parts"][number]> extends Omit<React.HTMLAttributes<HTMLUListElement>, "children" | "onSelect"> {
|
|
7
|
+
/** Complete retained runs returned by `useAgentToolEvents()`, in display order. */
|
|
8
|
+
runs: readonly AgentToolRunState<Part>[];
|
|
9
|
+
selectedRunId?: string | null;
|
|
10
|
+
/** Called with the whole upstream run selected for the adjacent detail surface. */
|
|
11
|
+
onSelect?: (run: AgentToolRunState<Part>) => void;
|
|
12
|
+
}
|
|
13
|
+
/** Semantic, wrapping list of retained-run selectors. */
|
|
14
|
+
declare function SubagentRunList<Part extends AgentToolRunPart = UIMessage["parts"][number]>({
|
|
15
|
+
className,
|
|
16
|
+
onSelect,
|
|
17
|
+
runs,
|
|
18
|
+
selectedRunId,
|
|
19
|
+
ref,
|
|
20
|
+
...props
|
|
21
|
+
}: SubagentRunListProps<Part> & {
|
|
22
|
+
ref?: React.Ref<HTMLUListElement>;
|
|
23
|
+
}): React.JSX.Element;
|
|
24
|
+
//#endregion
|
|
25
|
+
export { SubagentRunList, SubagentRunListProps };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
+
import { SubagentRunSelector } from "./SubagentRunSelector.js";
|
|
3
|
+
import "react";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/SubagentRunList.tsx
|
|
6
|
+
/** Semantic, wrapping list of retained-run selectors. */
|
|
7
|
+
function SubagentRunList({ className, onSelect, runs, selectedRunId, ref, ...props }) {
|
|
8
|
+
return /* @__PURE__ */ jsx("ul", {
|
|
9
|
+
ref,
|
|
10
|
+
"data-slot": "subagent-run-list",
|
|
11
|
+
className: cx("subagent-run__list", className),
|
|
12
|
+
...props,
|
|
13
|
+
role: "list",
|
|
14
|
+
children: runs.map((run) => /* @__PURE__ */ jsx("li", {
|
|
15
|
+
className: "subagent-run__list-item",
|
|
16
|
+
children: /* @__PURE__ */ jsx(SubagentRunSelector, {
|
|
17
|
+
run,
|
|
18
|
+
naniteIndex: run.order,
|
|
19
|
+
selected: run.runId === selectedRunId,
|
|
20
|
+
onSelect
|
|
21
|
+
})
|
|
22
|
+
}, run.runId))
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
export { SubagentRunList };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { r as ButtonProps } from "../Button-FX_hpqxm.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { UIMessage } from "ai";
|
|
4
|
+
import { AgentToolRunPart, AgentToolRunState } from "agents/agent-tools";
|
|
5
|
+
|
|
6
|
+
//#region src/components/SubagentRunSelector.d.ts
|
|
7
|
+
interface SubagentRunSelectorProps<Part extends AgentToolRunPart = UIMessage["parts"][number]> extends Omit<ButtonProps, "children" | "className" | "color" | "onSelect" | "size" | "variant"> {
|
|
8
|
+
className?: string;
|
|
9
|
+
/** Complete retained-run state returned by `useAgentToolEvents()`. */
|
|
10
|
+
run?: AgentToolRunState<Part>;
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated Pass `run` so the selector derives its content from the whole
|
|
13
|
+
* upstream object. Retained for the pre-0.15 presentation-only API.
|
|
14
|
+
*/
|
|
15
|
+
children?: React.ReactNode;
|
|
16
|
+
naniteIndex?: number;
|
|
17
|
+
selected?: boolean;
|
|
18
|
+
/** Short supplementary status shown on hover and keyboard focus. `false` disables it. */
|
|
19
|
+
tooltip?: React.ReactNode | false;
|
|
20
|
+
/** Called with the whole upstream run when the selector is activated. */
|
|
21
|
+
onSelect?: (run: AgentToolRunState<Part>) => void;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Compact selector for a retained Cloudflare Agent Tool run.
|
|
25
|
+
*
|
|
26
|
+
* The component consumes `AgentToolRunState` whole and derives its label and
|
|
27
|
+
* status from upstream fields. Selecting it should route `run.subAgent` into
|
|
28
|
+
* an adjacent detail surface; it never invents a second transcript or expands
|
|
29
|
+
* child content inline.
|
|
30
|
+
*/
|
|
31
|
+
declare function SubagentRunSelector<Part extends AgentToolRunPart = UIMessage["parts"][number]>({
|
|
32
|
+
className,
|
|
33
|
+
children,
|
|
34
|
+
naniteIndex,
|
|
35
|
+
onClick,
|
|
36
|
+
onSelect,
|
|
37
|
+
run,
|
|
38
|
+
selected,
|
|
39
|
+
tooltip,
|
|
40
|
+
ref,
|
|
41
|
+
"aria-label": ariaLabel,
|
|
42
|
+
...props
|
|
43
|
+
}: SubagentRunSelectorProps<Part> & {
|
|
44
|
+
ref?: React.Ref<HTMLButtonElement>;
|
|
45
|
+
}): React.JSX.Element;
|
|
46
|
+
//#endregion
|
|
47
|
+
export { SubagentRunSelector, SubagentRunSelectorProps };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
+
import { Button } from "./Button.js";
|
|
3
|
+
import { Tooltip } from "./Tooltip.js";
|
|
4
|
+
import { NaniteMark } from "./NaniteScene.js";
|
|
5
|
+
import { SubagentRunIndicator, getSubagentRunName, getSubagentRunTooltip } from "./SubagentRunIndicator.js";
|
|
6
|
+
import "react";
|
|
7
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
//#region src/components/SubagentRunSelector.tsx
|
|
9
|
+
/**
|
|
10
|
+
* Compact selector for a retained Cloudflare Agent Tool run.
|
|
11
|
+
*
|
|
12
|
+
* The component consumes `AgentToolRunState` whole and derives its label and
|
|
13
|
+
* status from upstream fields. Selecting it should route `run.subAgent` into
|
|
14
|
+
* an adjacent detail surface; it never invents a second transcript or expands
|
|
15
|
+
* child content inline.
|
|
16
|
+
*/
|
|
17
|
+
function SubagentRunSelector({ className, children, naniteIndex = 0, onClick, onSelect, run, selected = false, tooltip, ref, "aria-label": ariaLabel, ...props }) {
|
|
18
|
+
const name = run ? getSubagentRunName(run) : void 0;
|
|
19
|
+
const button = /* @__PURE__ */ jsxs(Button, {
|
|
20
|
+
ref,
|
|
21
|
+
type: "button",
|
|
22
|
+
variant: "outline",
|
|
23
|
+
color: "neutral",
|
|
24
|
+
size: "xs",
|
|
25
|
+
"data-slot": "subagent-run-selector",
|
|
26
|
+
"data-status": run?.status,
|
|
27
|
+
className: cx("subagent-run__selector", className),
|
|
28
|
+
"aria-pressed": selected,
|
|
29
|
+
"aria-label": ariaLabel ?? (run ? `Open ${name}, ${run.status}` : void 0),
|
|
30
|
+
onClick: (event) => {
|
|
31
|
+
onClick?.(event);
|
|
32
|
+
if (!event.defaultPrevented && run) onSelect?.(run);
|
|
33
|
+
},
|
|
34
|
+
...props,
|
|
35
|
+
children: [/* @__PURE__ */ jsx(NaniteMark, { index: naniteIndex }), run ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("span", {
|
|
36
|
+
className: "subagent-run__title",
|
|
37
|
+
children: name
|
|
38
|
+
}), /* @__PURE__ */ jsx(SubagentRunIndicator, { run })] }) : /* @__PURE__ */ jsx("span", {
|
|
39
|
+
className: "subagent-run__trigger-content",
|
|
40
|
+
children
|
|
41
|
+
})]
|
|
42
|
+
});
|
|
43
|
+
const tooltipContent = tooltip === false ? null : tooltip ?? (run ? getSubagentRunTooltip(run) : null);
|
|
44
|
+
if (!tooltipContent) return button;
|
|
45
|
+
return /* @__PURE__ */ jsxs(Tooltip.Root, { children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
|
|
46
|
+
render: button,
|
|
47
|
+
delay: 0
|
|
48
|
+
}), /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, {
|
|
49
|
+
side: "top",
|
|
50
|
+
sideOffset: 6,
|
|
51
|
+
children: /* @__PURE__ */ jsx(Tooltip.Popup, { children: tooltipContent })
|
|
52
|
+
}) })] });
|
|
53
|
+
}
|
|
54
|
+
//#endregion
|
|
55
|
+
export { SubagentRunSelector };
|
package/dist/components/Task.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Collapsible } from "./Collapsible.js";
|
|
2
2
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
3
|
-
import {
|
|
3
|
+
import { R as SearchIcon, l as ChevronRightIcon, v as FileIcon } from "../icons-CpfUer49.js";
|
|
4
4
|
import "react";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
6
|
//#region src/components/Task.tsx
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
-
import {
|
|
2
|
+
import { G as TerminalIcon, Y as XIcon } from "../icons-CpfUer49.js";
|
|
3
3
|
import { Button } from "./Button.js";
|
|
4
4
|
import { Tooltip } from "./Tooltip.js";
|
|
5
|
-
import { t as CopyButton } from "../copy-button-
|
|
5
|
+
import { t as CopyButton } from "../copy-button-Dejn5heL.js";
|
|
6
6
|
import { Badge } from "./Badge.js";
|
|
7
7
|
import { ScrollArea } from "./ScrollArea.js";
|
|
8
8
|
import * as React from "react";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Collapsible } from "./Collapsible.js";
|
|
2
2
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
3
|
-
import {
|
|
3
|
+
import { B as SpinnerIcon, Y as XIcon, l as ChevronRightIcon, o as CheckIcon } from "../icons-CpfUer49.js";
|
|
4
4
|
import { Badge } from "./Badge.js";
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/components/Textarea.d.ts
|
|
4
|
+
interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
|
|
5
|
+
/** Allow the user to resize the control along the block axis. */
|
|
6
|
+
resize?: "none" | "vertical";
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Multiline text control that shares the design system's field recipe.
|
|
10
|
+
* Compose it through `Field.Control` when labeling or validation is needed.
|
|
11
|
+
*/
|
|
12
|
+
declare function Textarea({
|
|
13
|
+
className,
|
|
14
|
+
ref,
|
|
15
|
+
resize,
|
|
16
|
+
...props
|
|
17
|
+
}: TextareaProps & {
|
|
18
|
+
ref?: React.Ref<HTMLTextAreaElement>;
|
|
19
|
+
}): React.JSX.Element;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { Textarea, TextareaProps };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
//#region src/components/Textarea.tsx
|
|
5
|
+
/**
|
|
6
|
+
* Multiline text control that shares the design system's field recipe.
|
|
7
|
+
* Compose it through `Field.Control` when labeling or validation is needed.
|
|
8
|
+
*/
|
|
9
|
+
function Textarea({ className, ref, resize = "vertical", ...props }) {
|
|
10
|
+
return /* @__PURE__ */ jsx("textarea", {
|
|
11
|
+
ref,
|
|
12
|
+
"data-slot": "textarea",
|
|
13
|
+
"data-resize": resize,
|
|
14
|
+
className: cx("textarea", className),
|
|
15
|
+
...props
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//#endregion
|
|
19
|
+
export { Textarea };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
//#region src/components/ThemeModeControl.d.ts
|
|
2
|
+
interface ThemeModeControlProps {
|
|
3
|
+
/** Show text beside each icon. @default true */
|
|
4
|
+
showLabels?: boolean;
|
|
5
|
+
/** Accessible name for the radio group. @default "Theme" */
|
|
6
|
+
"aria-label"?: string;
|
|
7
|
+
/** Name used by the radio group's hidden form input. @default "theme" */
|
|
8
|
+
name?: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* A compact, mutually exclusive Light/Dark/System control modeled after the
|
|
14
|
+
* Codex Appearance settings. Arrow keys move and select within the group.
|
|
15
|
+
*/
|
|
16
|
+
declare function ThemeModeControl({
|
|
17
|
+
showLabels,
|
|
18
|
+
"aria-label": ariaLabel,
|
|
19
|
+
name,
|
|
20
|
+
disabled,
|
|
21
|
+
className
|
|
22
|
+
}: ThemeModeControlProps): import("react").JSX.Element;
|
|
23
|
+
//#endregion
|
|
24
|
+
export { ThemeModeControl, ThemeModeControlProps };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { A as MoonIcon, W as SunIcon, k as MonitorIcon } from "../icons-CpfUer49.js";
|
|
2
|
+
import { Radio, RadioGroup } from "./RadioGroup.js";
|
|
3
|
+
import { useTheme } from "./ThemeProvider.js";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/ThemeModeControl.tsx
|
|
6
|
+
const modes = [
|
|
7
|
+
{
|
|
8
|
+
value: "light",
|
|
9
|
+
label: "Light",
|
|
10
|
+
Icon: SunIcon
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
value: "dark",
|
|
14
|
+
label: "Dark",
|
|
15
|
+
Icon: MoonIcon
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
value: "system",
|
|
19
|
+
label: "System",
|
|
20
|
+
Icon: MonitorIcon
|
|
21
|
+
}
|
|
22
|
+
];
|
|
23
|
+
/**
|
|
24
|
+
* A compact, mutually exclusive Light/Dark/System control modeled after the
|
|
25
|
+
* Codex Appearance settings. Arrow keys move and select within the group.
|
|
26
|
+
*/
|
|
27
|
+
function ThemeModeControl({ showLabels = true, "aria-label": ariaLabel = "Theme", name = "theme", disabled = false, className = "" }) {
|
|
28
|
+
const { preference, setPreference } = useTheme();
|
|
29
|
+
const classes = [
|
|
30
|
+
"theme-mode-control",
|
|
31
|
+
!showLabels && "theme-mode-control--icons-only",
|
|
32
|
+
className
|
|
33
|
+
].filter(Boolean).join(" ");
|
|
34
|
+
return /* @__PURE__ */ jsx(RadioGroup.Root, {
|
|
35
|
+
value: preference,
|
|
36
|
+
onValueChange: (nextValue) => setPreference(nextValue),
|
|
37
|
+
name,
|
|
38
|
+
disabled,
|
|
39
|
+
orientation: "horizontal",
|
|
40
|
+
"aria-label": ariaLabel,
|
|
41
|
+
className: classes,
|
|
42
|
+
"data-slot": "theme-mode-control",
|
|
43
|
+
children: modes.map(({ value, label, Icon }) => /* @__PURE__ */ jsxs(Radio.Root, {
|
|
44
|
+
value,
|
|
45
|
+
"aria-label": showLabels ? void 0 : `Use ${label.toLowerCase()} theme`,
|
|
46
|
+
className: "theme-mode-control__item",
|
|
47
|
+
children: [/* @__PURE__ */ jsx(Icon, {}), showLabels ? /* @__PURE__ */ jsx("span", { children: label }) : null]
|
|
48
|
+
}, value))
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
//#endregion
|
|
52
|
+
export { ThemeModeControl };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { ResolvedTheme, ThemePreference } from "../utils/theme.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/components/ThemeProvider.d.ts
|
|
5
|
+
interface ThemeProviderProps {
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
/** Controlled theme preference. */
|
|
8
|
+
value?: ThemePreference;
|
|
9
|
+
/** Initial uncontrolled preference when no stored preference exists. @default "system" */
|
|
10
|
+
defaultValue?: ThemePreference;
|
|
11
|
+
/** Called when a descendant requests a preference change. */
|
|
12
|
+
onValueChange?: (preference: ThemePreference) => void;
|
|
13
|
+
/** localStorage key. Pass `null` when the application owns persistence. */
|
|
14
|
+
storageKey?: string | null;
|
|
15
|
+
}
|
|
16
|
+
interface ThemeContextValue {
|
|
17
|
+
preference: ThemePreference;
|
|
18
|
+
resolvedTheme: ResolvedTheme;
|
|
19
|
+
setPreference: (preference: ThemePreference) => void;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Owns the application-wide theme preference and keeps document metadata,
|
|
23
|
+
* storage, cross-tab changes, and operating-system changes synchronized.
|
|
24
|
+
*
|
|
25
|
+
* Add `<meta name="color-scheme" content="light dark">` before styles and use
|
|
26
|
+
* `getThemeInitializationScript()` in the document head to avoid a flash when
|
|
27
|
+
* a saved override differs from the operating-system preference.
|
|
28
|
+
*/
|
|
29
|
+
declare function ThemeProvider({
|
|
30
|
+
children,
|
|
31
|
+
value,
|
|
32
|
+
defaultValue,
|
|
33
|
+
onValueChange,
|
|
34
|
+
storageKey
|
|
35
|
+
}: ThemeProviderProps): React.JSX.Element;
|
|
36
|
+
declare function useTheme(): ThemeContextValue;
|
|
37
|
+
//#endregion
|
|
38
|
+
export { ThemeContextValue, ThemeProvider, ThemeProviderProps, useTheme };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { THEME_STORAGE_KEY, applyThemePreference, readThemePreference, resolveThemePreference, writeThemePreference } from "../utils/theme.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
//#region src/components/ThemeProvider.tsx
|
|
5
|
+
const ThemeContext = React.createContext(null);
|
|
6
|
+
const useClientLayoutEffect = typeof document === "undefined" ? React.useEffect : React.useLayoutEffect;
|
|
7
|
+
/**
|
|
8
|
+
* Owns the application-wide theme preference and keeps document metadata,
|
|
9
|
+
* storage, cross-tab changes, and operating-system changes synchronized.
|
|
10
|
+
*
|
|
11
|
+
* Add `<meta name="color-scheme" content="light dark">` before styles and use
|
|
12
|
+
* `getThemeInitializationScript()` in the document head to avoid a flash when
|
|
13
|
+
* a saved override differs from the operating-system preference.
|
|
14
|
+
*/
|
|
15
|
+
function ThemeProvider({ children, value, defaultValue = "system", onValueChange, storageKey = THEME_STORAGE_KEY }) {
|
|
16
|
+
const controlled = value !== void 0;
|
|
17
|
+
const [uncontrolledPreference, setUncontrolledPreference] = React.useState(defaultValue);
|
|
18
|
+
const preference = value ?? uncontrolledPreference;
|
|
19
|
+
const [resolvedTheme, setResolvedTheme] = React.useState(() => typeof window === "undefined" ? "light" : resolveThemePreference(preference));
|
|
20
|
+
const initialized = React.useRef(false);
|
|
21
|
+
useClientLayoutEffect(() => {
|
|
22
|
+
let initialPreference = preference;
|
|
23
|
+
if (!controlled && storageKey !== null) {
|
|
24
|
+
const storedPreference = readThemePreference(storageKey);
|
|
25
|
+
if (storedPreference !== "system" || defaultValue === "system") {
|
|
26
|
+
initialPreference = storedPreference;
|
|
27
|
+
setUncontrolledPreference(storedPreference);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
setResolvedTheme(applyThemePreference(initialPreference));
|
|
31
|
+
initialized.current = true;
|
|
32
|
+
}, []);
|
|
33
|
+
React.useEffect(() => {
|
|
34
|
+
if (!initialized.current) return;
|
|
35
|
+
setResolvedTheme(applyThemePreference(preference));
|
|
36
|
+
if (storageKey !== null) writeThemePreference(preference, storageKey);
|
|
37
|
+
}, [preference, storageKey]);
|
|
38
|
+
React.useEffect(() => {
|
|
39
|
+
if (preference !== "system") return;
|
|
40
|
+
const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
|
|
41
|
+
const handleChange = () => setResolvedTheme(mediaQuery.matches ? "dark" : "light");
|
|
42
|
+
mediaQuery.addEventListener("change", handleChange);
|
|
43
|
+
return () => mediaQuery.removeEventListener("change", handleChange);
|
|
44
|
+
}, [preference]);
|
|
45
|
+
React.useEffect(() => {
|
|
46
|
+
if (controlled || storageKey === null) return;
|
|
47
|
+
const handleStorage = (event) => {
|
|
48
|
+
if (event.key !== storageKey) return;
|
|
49
|
+
const nextPreference = readThemePreference(storageKey);
|
|
50
|
+
setUncontrolledPreference(nextPreference);
|
|
51
|
+
};
|
|
52
|
+
window.addEventListener("storage", handleStorage);
|
|
53
|
+
return () => window.removeEventListener("storage", handleStorage);
|
|
54
|
+
}, [controlled, storageKey]);
|
|
55
|
+
const setPreference = React.useCallback((nextPreference) => {
|
|
56
|
+
applyThemePreference(nextPreference);
|
|
57
|
+
if (!controlled) setUncontrolledPreference(nextPreference);
|
|
58
|
+
onValueChange?.(nextPreference);
|
|
59
|
+
}, [controlled, onValueChange]);
|
|
60
|
+
const contextValue = React.useMemo(() => ({
|
|
61
|
+
preference,
|
|
62
|
+
resolvedTheme,
|
|
63
|
+
setPreference
|
|
64
|
+
}), [
|
|
65
|
+
preference,
|
|
66
|
+
resolvedTheme,
|
|
67
|
+
setPreference
|
|
68
|
+
]);
|
|
69
|
+
return /* @__PURE__ */ jsx(ThemeContext.Provider, {
|
|
70
|
+
value: contextValue,
|
|
71
|
+
children
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
function useTheme() {
|
|
75
|
+
const context = React.useContext(ThemeContext);
|
|
76
|
+
if (!context) throw new Error("useTheme must be used within a ThemeProvider");
|
|
77
|
+
return context;
|
|
78
|
+
}
|
|
79
|
+
//#endregion
|
|
80
|
+
export { ThemeProvider, useTheme };
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as AgentChatProps, o as AgentChatRenderPartContext } from "../AgentChat-CrlpbvQJ.js";
|
|
2
2
|
import { n as BrowserLiveViewProps, t as BrowserLiveView } from "../BrowserLiveView-BV5qgFgI.js";
|
|
3
3
|
import { n as BrowserReplayProps, t as BrowserReplay } from "../BrowserReplay-xWvRjRAC.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { S as isThinkChatActivityPart } from "../ThinkChatToolParts-CSzVwMXf.js";
|
|
5
|
+
import { l as describeThinkChatActivityPart } from "../ThinkChatActivitySummary-BPmu9a-c.js";
|
|
6
|
+
import { a as ThinkChatToolRenderers, i as ThinkChatToolRenderer, n as ThinkChatActivityProps, o as createThinkChatActivityRenderer, r as ThinkChatActivityRendererOptions, s as renderThinkChatActivityPart, t as ThinkChatActivity } from "../ThinkChatActivity-BFQnb2ct.js";
|
|
6
7
|
import { n as ThinkChatValue } from "../ThinkChatContext-C3Eb1Xpi.js";
|
|
7
|
-
import {
|
|
8
|
+
import { d as inferWorkspaceLanguage, i as WorkspaceFileState } from "../WorkspaceFile-DOZkPwzu.js";
|
|
9
|
+
import { a as useWorkspace, i as WorkspaceState, n as WorkspaceInfo, r as WorkspaceSource, t as UseWorkspaceOptions } from "../Workspace-D39LxGvP.js";
|
|
10
|
+
import { WorkspaceExplorer, WorkspaceExplorerProps } from "./WorkspaceExplorer.js";
|
|
8
11
|
import * as React from "react";
|
|
9
12
|
import { UIMessage } from "ai";
|
|
10
13
|
import { UseAgentOptions } from "agents/react";
|
|
@@ -35,6 +38,20 @@ interface ThinkChatMessagesProps<MessageT extends UIMessage = UIMessage> extends
|
|
|
35
38
|
emptyState?: React.ReactNode;
|
|
36
39
|
/** Extra controls rendered inside the composer, next to the send button. */
|
|
37
40
|
composerTools?: React.ReactNode;
|
|
41
|
+
/** Keep submitting composed follow-ups through `chat.sendMessage()` while busy. */
|
|
42
|
+
allowSubmitWhileBusy?: AgentChatProps<MessageT>["allowSubmitWhileBusy"];
|
|
43
|
+
/** Authoritative queued messages rendered outside the transcript. */
|
|
44
|
+
queuedMessages?: AgentChatProps<MessageT>["queuedMessages"];
|
|
45
|
+
onSteerQueuedMessage?: AgentChatProps<MessageT>["onSteerQueuedMessage"];
|
|
46
|
+
onRemoveQueuedMessage?: AgentChatProps<MessageT>["onRemoveQueuedMessage"];
|
|
47
|
+
/** Host-owned slash-command catalog and selection policy. */
|
|
48
|
+
slashCommands?: AgentChatProps<MessageT>["slashCommands"];
|
|
49
|
+
/** Controlled MCP catalog revealed by `@`; selections become composer references. */
|
|
50
|
+
mentionCommands?: AgentChatProps<MessageT>["mentionCommands"];
|
|
51
|
+
/** Controlled folder or working-context picker in the composer footer. */
|
|
52
|
+
contextSelector?: AgentChatProps<MessageT>["contextSelector"];
|
|
53
|
+
/** Extra controls rendered at the trailing edge, before dictation and submit. */
|
|
54
|
+
composerEndTools?: React.ReactNode;
|
|
38
55
|
/** Whole upstream `useVoiceInput` result for the built-in microphone recorder. */
|
|
39
56
|
voiceInput?: UseVoiceInputReturn;
|
|
40
57
|
/** Host prerequisite run before the built-in recorder calls `voiceInput.start()`. */
|
|
@@ -57,10 +74,16 @@ interface ThinkChatMessagesProps<MessageT extends UIMessage = UIMessage> extends
|
|
|
57
74
|
* `isRecovering`/`connectionError`) shown between transcript and composer.
|
|
58
75
|
*/
|
|
59
76
|
notice?: AgentChatProps<MessageT>["notice"];
|
|
60
|
-
/**
|
|
77
|
+
/**
|
|
78
|
+
* Extends the built-in Think activity renderer. Returning `undefined` keeps
|
|
79
|
+
* the built-in result; `defaultRender()` renders that same result on demand.
|
|
80
|
+
* Return `null` only when the part should be intentionally hidden.
|
|
81
|
+
*/
|
|
61
82
|
renderPart?: AgentChatProps<MessageT>["renderPart"];
|
|
62
83
|
/** Whole upstream Think stub. `ThinkChat.Root` wires `agent.stub` automatically. */
|
|
63
84
|
thinkStub?: AgentStub<Think>;
|
|
85
|
+
/** Parent-owned Ask/Bypass policy; omit to keep AgentChat's session-local mode. */
|
|
86
|
+
permissionModeControl?: AgentChatProps<MessageT>["permissionModeControl"];
|
|
64
87
|
/** Called after a Think approve/reject RPC settles. Root uses this to refresh approvals. */
|
|
65
88
|
onExecutionSettled?: AgentChatProps<MessageT>["onExecutionSettled"];
|
|
66
89
|
/** Think durable-pause approvals from `pendingApprovals()`. */
|
|
@@ -161,4 +184,4 @@ declare const ThinkChat: {
|
|
|
161
184
|
createActivityRenderer: typeof createThinkChatActivityRenderer;
|
|
162
185
|
};
|
|
163
186
|
//#endregion
|
|
164
|
-
export { BrowserLiveView, type BrowserLiveViewProps, BrowserReplay, type BrowserReplayProps,
|
|
187
|
+
export { BrowserLiveView, type BrowserLiveViewProps, BrowserReplay, type BrowserReplayProps, ThinkChat, ThinkChatActivity, type ThinkChatActivityProps, type ThinkChatActivityRendererOptions, ThinkChatMessages, ThinkChatMessagesProps, ThinkChatProvider, ThinkChatProviderProps, ThinkChatRoot, ThinkChatRootProps, type ThinkChatToolRenderer, type ThinkChatToolRenderers, type UseWorkspaceOptions, WorkspaceExplorer, type WorkspaceExplorerProps, type WorkspaceFileState, type WorkspaceInfo, type WorkspaceSource, type WorkspaceState, createThinkChatActivityRenderer, describeThinkChatActivityPart, inferWorkspaceLanguage, isThinkChatActivityPart, renderThinkChatActivityPart, useThinkChat, useThinkPendingApprovals, useWorkspace };
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import { isThinkChatActivityPart } from "./ThinkChatToolParts.js";
|
|
1
2
|
import { BrowserLiveView } from "./BrowserLiveView.js";
|
|
2
3
|
import { BrowserReplay } from "./BrowserReplay.js";
|
|
3
|
-
import {
|
|
4
|
-
import { ThinkChatActivity, createThinkChatActivityRenderer,
|
|
5
|
-
import { a as useThinkChat, i as ThinkChatRoot, n as ThinkChatMessages, o as useThinkPendingApprovals, r as ThinkChatProvider, t as ThinkChat } from "../ThinkChat-
|
|
6
|
-
import {
|
|
4
|
+
import { describeThinkChatActivityPart } from "./ThinkChatActivitySummary.js";
|
|
5
|
+
import { ThinkChatActivity, createThinkChatActivityRenderer, renderThinkChatActivityPart } from "./ThinkChatActivity.js";
|
|
6
|
+
import { a as useThinkChat, i as ThinkChatRoot, n as ThinkChatMessages, o as useThinkPendingApprovals, r as ThinkChatProvider, t as ThinkChat } from "../ThinkChat-CzC-zNGA.js";
|
|
7
|
+
import { inferWorkspaceLanguage } from "./WorkspaceFile.js";
|
|
8
|
+
import { useWorkspace } from "./Workspace.js";
|
|
9
|
+
import { WorkspaceExplorer } from "./WorkspaceExplorer.js";
|
|
7
10
|
export { BrowserLiveView, BrowserReplay, ThinkChat, ThinkChatActivity, ThinkChatMessages, ThinkChatProvider, ThinkChatRoot, WorkspaceExplorer, createThinkChatActivityRenderer, describeThinkChatActivityPart, inferWorkspaceLanguage, isThinkChatActivityPart, renderThinkChatActivityPart, useThinkChat, useThinkPendingApprovals, useWorkspace };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { S as isThinkChatActivityPart } from "../ThinkChatToolParts-CSzVwMXf.js";
|
|
2
|
+
import { l as describeThinkChatActivityPart } from "../ThinkChatActivitySummary-BPmu9a-c.js";
|
|
3
|
+
import { a as ThinkChatToolRenderers, i as ThinkChatToolRenderer, n as ThinkChatActivityProps, o as createThinkChatActivityRenderer, r as ThinkChatActivityRendererOptions, s as renderThinkChatActivityPart, t as ThinkChatActivity } from "../ThinkChatActivity-BFQnb2ct.js";
|
|
3
4
|
export { ThinkChatActivity, ThinkChatActivityProps, ThinkChatActivityRendererOptions, ThinkChatToolRenderer, ThinkChatToolRenderers, createThinkChatActivityRenderer, describeThinkChatActivityPart, isThinkChatActivityPart, renderThinkChatActivityPart };
|