@mcp-b/react-components 0.34.1 → 0.36.0
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/{AgentChat-CV-GuYA6.d.ts → AgentChat-CVO7xyLC.d.ts} +22 -3
- package/dist/{CodeBlock-CM5gfmdq.js → CodeBlock-Bk4nn7l-.js} +4 -3
- package/dist/{CodeBlock-DzGhYyNe.d.ts → CodeBlock-C380GD5t.d.ts} +2 -5
- package/dist/{Dialog-DeOSJ0Oy.d.ts → Dialog-B_FhRWaz.d.ts} +22 -37
- package/dist/{Menu-DVmjBIuM.d.ts → Menu-yb6QXWA3.d.ts} +64 -75
- package/dist/{PromptInput-DOyee1kM.d.ts → PromptInput-BRX7FhjH.d.ts} +7 -272
- package/dist/ResponsiveSidebarShell-DWjULskY.d.ts +68 -0
- package/dist/{Select-D96d09ww.d.ts → Select-RrceeEIe.d.ts} +17 -52
- package/dist/{ThinkChat-en0UbkVv.js → ThinkChat-ByR-QT_D.js} +19 -12
- package/dist/{ThinkChatActivity-CgqpROz_.d.ts → ThinkChatActivity-Dkmm2pIj.d.ts} +1 -1
- package/dist/{ToggleGroup-CSBWfPXo.d.ts → ToggleGroup-BrQZOQn_.d.ts} +4 -6
- package/dist/{WorkspaceFile-C8Riev9j.d.ts → WorkspaceFile-BLaFmMrt.d.ts} +18 -2
- package/dist/{WorkspaceFileView-BtzVKAed.js → WorkspaceFileView-DTHJLKW_.js} +11 -17
- package/dist/components/agents-sdk/AgentChat.d.ts +2 -2
- package/dist/components/agents-sdk/AgentChat.js +47 -26
- package/dist/components/agents-sdk/BrowserLiveView.d.ts +47 -1
- package/dist/components/agents-sdk/BrowserReplay.d.ts +40 -1
- package/dist/components/agents-sdk/BrowserReplay.js +1 -1
- package/dist/components/agents-sdk/McpConnectionRequest.js +14 -15
- package/dist/components/agents-sdk/McpConnectorForm.js +1 -1
- package/dist/components/agents-sdk/McpPluginCatalog.d.ts +1 -1
- package/dist/components/agents-sdk/McpPluginCatalog.js +17 -24
- package/dist/components/agents-sdk/McpServerPicker.d.ts +2 -2
- package/dist/components/agents-sdk/McpServerPicker.js +19 -17
- package/dist/components/agents-sdk/ModelSelector.d.ts +9 -9
- package/dist/components/agents-sdk/ModelSelector.js +504 -1
- package/dist/components/agents-sdk/PromptInputCommands.d.ts +1 -1
- package/dist/components/agents-sdk/SubagentRunDetails.js +1 -1
- package/dist/components/agents-sdk/ThinkChat.d.ts +18 -95
- package/dist/components/agents-sdk/ThinkChat.js +2 -12
- package/dist/components/agents-sdk/ThinkChatActivity.d.ts +2 -4
- package/dist/components/agents-sdk/ThinkChatActivity.js +1 -1
- package/dist/components/agents-sdk/ThinkChatActivitySummary.js +1 -1
- package/dist/components/agents-sdk/ThinkChatToolPanels.js +3 -8
- package/dist/components/agents-sdk/ThinkExecutionDetail.js +5 -3
- package/dist/components/agents-sdk/ThinkExecutionRun.js +1 -1
- package/dist/components/agents-sdk/ThinkExecutionWorkbench.js +2 -2
- package/dist/components/agents-sdk/ThinkFullApp.d.ts +4 -4
- package/dist/components/agents-sdk/ThinkFullApp.js +12 -14
- package/dist/components/agents-sdk/ThinkFullAppViewSwitch.d.ts +1 -1
- package/dist/components/agents-sdk/ThinkPendingApproval.js +3 -3
- package/dist/components/agents-sdk/ThinkRoutineBrowser.js +5 -4
- package/dist/components/agents-sdk/ThinkRoutineForm.js +1 -1
- package/dist/components/agents-sdk/ThinkRoutineLibrary.d.ts +2 -3
- package/dist/components/agents-sdk/ThinkRoutineLibrary.js +11 -15
- package/dist/components/agents-sdk/ThinkThreadPicker.js +3 -4
- package/dist/components/agents-sdk/ThinkThreadShell.d.ts +1 -1
- package/dist/components/agents-sdk/Workspace.d.ts +140 -2
- package/dist/components/agents-sdk/Workspace.js +1 -1
- package/dist/components/agents-sdk/WorkspaceBrowser.d.ts +1 -1
- package/dist/components/agents-sdk/WorkspaceExplorer.d.ts +32 -5
- package/dist/components/agents-sdk/WorkspaceExplorer.js +3 -5
- package/dist/components/agents-sdk/WorkspaceFile.d.ts +2 -2
- package/dist/components/agents-sdk/WorkspaceFile.js +41 -4
- package/dist/components/agents-sdk/WorkspaceFileView.d.ts +1 -1
- package/dist/components/agents-sdk/WorkspaceFileView.js +1 -1
- package/dist/components/ai-sdk/Activity.d.ts +5 -0
- package/dist/components/ai-sdk/Activity.js +33 -13
- package/dist/components/ai-sdk/Approval.d.ts +1 -2
- package/dist/components/ai-sdk/Approval.js +4 -7
- package/dist/components/ai-sdk/CodeBlock.d.ts +1 -1
- package/dist/components/ai-sdk/CodeBlock.js +1 -1
- package/dist/components/ai-sdk/Context.js +1 -1
- package/dist/components/ai-sdk/Goal.js +1 -1
- package/dist/components/ai-sdk/Message.js +2 -6
- package/dist/components/ai-sdk/MessageScroller.d.ts +5 -0
- package/dist/components/ai-sdk/MessageScroller.js +18 -12
- package/dist/components/ai-sdk/MessageScrollerVirtual.js +18 -10
- package/dist/components/ai-sdk/Plan.js +1 -1
- package/dist/components/ai-sdk/PromptInput.d.ts +2 -2
- package/dist/components/ai-sdk/PromptInput.js +124 -127
- package/dist/components/ai-sdk/Queue.js +1 -1
- package/dist/components/ai-sdk/Reasoning.d.ts +3 -4
- package/dist/components/ai-sdk/Reasoning.js +29 -13
- package/dist/components/ai-sdk/ToolInvocation.d.ts +3 -5
- package/dist/components/ai-sdk/ToolInvocation.js +2 -2
- package/dist/components/extension/ChatGptSignInScreen.js +2 -2
- package/dist/components/extension/CodexModelSelector.d.ts +1 -1
- package/dist/components/extension/CodexModelSelector.js +1 -1
- package/dist/components/extension/ConversationTabPicker.js +1 -1
- package/dist/components/foundations/Accordion.d.ts +1 -3
- package/dist/components/foundations/Accordion.js +1 -3
- package/dist/components/foundations/AlertDialog.d.ts +16 -36
- package/dist/components/foundations/Autocomplete.d.ts +12 -33
- package/dist/components/foundations/Autocomplete.js +2 -1
- package/dist/components/foundations/Combobox.d.ts +119 -2
- package/dist/components/foundations/Combobox.js +6 -23
- package/dist/components/foundations/ContextMenu.d.ts +50 -57
- package/dist/components/foundations/ContextMenu.js +4 -28
- package/dist/components/foundations/DescriptionList.d.ts +34 -2
- package/dist/components/foundations/DescriptionList.js +33 -2
- package/dist/components/foundations/Dialog.d.ts +1 -1
- package/dist/components/foundations/Dialog.js +2 -1
- package/dist/components/foundations/EmptyState.d.ts +5 -2
- package/dist/components/foundations/EmptyState.js +11 -7
- package/dist/components/foundations/Menu.d.ts +1 -1
- package/dist/components/foundations/Menu.js +3 -21
- package/dist/components/foundations/Menubar.d.ts +35 -64
- package/dist/components/foundations/Menubar.js +3 -22
- package/dist/components/foundations/Popover.d.ts +8 -21
- package/dist/components/foundations/Popover.js +3 -48
- package/dist/components/foundations/PreviewCard.d.ts +44 -29
- package/dist/components/foundations/PreviewCard.js +3 -6
- package/dist/components/foundations/RadioGroup.d.ts +4 -6
- package/dist/components/foundations/Select.d.ts +1 -1
- package/dist/components/foundations/Select.js +7 -21
- package/dist/components/foundations/Slider.d.ts +31 -44
- package/dist/components/foundations/Slider.js +26 -25
- package/dist/components/foundations/Stepper.d.ts +3 -3
- package/dist/components/foundations/Stepper.js +5 -6
- package/dist/components/foundations/ToggleGroup.d.ts +1 -1
- package/dist/components/foundations/Tooltip.d.ts +6 -8
- package/dist/components/foundations/Tooltip.js +4 -3
- package/dist/components/general-purpose/Commit.js +1 -1
- package/dist/components/general-purpose/EnvironmentVariables.js +1 -1
- package/dist/components/general-purpose/PricingBillingToggle.d.ts +2 -3
- package/dist/components/general-purpose/PricingBillingToggle.js +4 -22
- package/dist/components/general-purpose/PricingPage.d.ts +3 -4
- package/dist/components/general-purpose/ResizableSidePanel.js +1 -1
- package/dist/components/general-purpose/ResponsiveSidebarShell.d.ts +1 -67
- package/dist/components/general-purpose/ResponsiveSidebarShell.js +1 -1
- package/dist/components/general-purpose/SettingsFormDialog.d.ts +7 -2
- package/dist/components/general-purpose/SettingsFormDialog.js +18 -3
- package/dist/components/general-purpose/Terminal.js +3 -3
- package/dist/components/general-purpose/ThemeModeControl.js +1 -1
- package/dist/components/general-purpose/WebPreview.js +4 -4
- package/dist/components/nanites/AgentConnection.js +16 -11
- package/dist/components/nanites/AgentToolDetail.js +6 -7
- package/dist/{format-CmopcfqJ.js → format-DB2mX9DA.js} +16 -1
- package/dist/{mcp-server-U71zhxFF.js → mcp-server-SD_S-IpB.js} +18 -2
- package/dist/message-scroller-C8cplcQO.js +32 -0
- package/dist/{progress-ring-Dz_ztrW2.js → progress-ring-BEocM1e3.js} +1 -1
- package/dist/provider-logos-zjZycgV6.js +74 -0
- package/dist/styles/agent-chat.css +25 -0
- package/dist/styles/agent-connection.css +4 -31
- package/dist/styles/agent-tool-detail.css +0 -7
- package/dist/styles/alert-dialog.css +0 -2
- package/dist/styles/base-ui-motion.css +7 -5
- package/dist/styles/chatgpt-sign-in-screen.css +5 -3
- package/dist/styles/dialog.css +0 -2
- package/dist/styles/field.css +2 -2
- package/dist/styles/model-selector.css +30 -12
- package/dist/styles/popover.css +0 -1
- package/dist/styles/preview-card.css +0 -4
- package/dist/styles/pricing-page.css +1 -13
- package/dist/styles/prompt-input.css +12 -10
- package/dist/styles/recipes.css +22 -14
- package/dist/styles/slider.css +2 -2
- package/dist/styles/think-execution-workbench.css +9 -13
- package/dist/styles/think-routine-library.css +2 -30
- package/dist/styles/tooltip.css +0 -1
- package/dist/utils/structured-code.d.ts +1 -1
- package/package.json +17 -7
- package/dist/BrowserLiveView-tJTWkoyu.d.ts +0 -48
- package/dist/BrowserReplay-B0BQZr-N.d.ts +0 -41
- package/dist/Combobox-WrrDDaEv.d.ts +0 -154
- package/dist/ModelSelector-DzdEs2fX.js +0 -504
- package/dist/Workspace-EhvvlHOB.d.ts +0 -278
- package/dist/WorkspaceExplorer-DygQnEyi.d.ts +0 -32
- package/dist/components/foundations/DescriptionListParts.d.ts +0 -37
- package/dist/components/foundations/DescriptionListParts.js +0 -35
|
@@ -8,28 +8,30 @@ import { Slider as Slider$1 } from "@base-ui/react/slider";
|
|
|
8
8
|
*
|
|
9
9
|
* @example
|
|
10
10
|
* ```tsx
|
|
11
|
-
* <Slider defaultValue={50}>
|
|
12
|
-
* <
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* <
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
11
|
+
* <Slider.Root defaultValue={50}>
|
|
12
|
+
* <Slider.Label>Volume</Slider.Label>
|
|
13
|
+
* <Slider.Control>
|
|
14
|
+
* <Slider.Track>
|
|
15
|
+
* <Slider.Indicator />
|
|
16
|
+
* <Slider.Thumb />
|
|
17
|
+
* </Slider.Track>
|
|
18
|
+
* </Slider.Control>
|
|
19
|
+
* </Slider.Root>
|
|
19
20
|
* ```
|
|
20
21
|
*
|
|
21
22
|
* @example
|
|
22
23
|
* ```tsx
|
|
23
24
|
* // With output value display
|
|
24
|
-
* <Slider defaultValue={50}>
|
|
25
|
-
* <
|
|
26
|
-
* <
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* <
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
25
|
+
* <Slider.Root defaultValue={50}>
|
|
26
|
+
* <Slider.Label>Volume</Slider.Label>
|
|
27
|
+
* <Slider.Value />
|
|
28
|
+
* <Slider.Control>
|
|
29
|
+
* <Slider.Track>
|
|
30
|
+
* <Slider.Indicator />
|
|
31
|
+
* <Slider.Thumb />
|
|
32
|
+
* </Slider.Track>
|
|
33
|
+
* </Slider.Control>
|
|
34
|
+
* </Slider.Root>
|
|
33
35
|
* ```
|
|
34
36
|
*
|
|
35
37
|
* @see {@link https://base-ui.com/react/components/slider | Base UI Slider}
|
|
@@ -74,7 +76,7 @@ function SliderIndicator({ className, ref, ...props }) {
|
|
|
74
76
|
const classes = mergeBaseClassName("slider__indicator", className);
|
|
75
77
|
return /* @__PURE__ */ jsx(Slider$1.Indicator, {
|
|
76
78
|
ref,
|
|
77
|
-
"data-slot": "slider-
|
|
79
|
+
"data-slot": "slider-indicator",
|
|
78
80
|
className: classes,
|
|
79
81
|
...props
|
|
80
82
|
});
|
|
@@ -95,19 +97,18 @@ function SliderThumb({ className, ref, ...props }) {
|
|
|
95
97
|
* Displays the current value of the Slider.
|
|
96
98
|
* Note: This must be used inside a Slider component to access the value context.
|
|
97
99
|
*/
|
|
98
|
-
function
|
|
99
|
-
const classes = mergeBaseClassName("
|
|
100
|
+
function SliderValue({ className, ref, ...props }) {
|
|
101
|
+
const classes = mergeBaseClassName("slider__value", className);
|
|
100
102
|
return /* @__PURE__ */ jsx(Slider$1.Value, {
|
|
101
103
|
ref,
|
|
102
|
-
"data-slot": "slider-
|
|
104
|
+
"data-slot": "slider-value",
|
|
103
105
|
className: classes,
|
|
104
|
-
...props
|
|
105
|
-
children: (formattedValues, values) => typeof children === "function" ? children(values[0] ?? 0, values, formattedValues) : formattedValues.join(" - ")
|
|
106
|
+
...props
|
|
106
107
|
});
|
|
107
108
|
}
|
|
108
109
|
/** Visible label that participates in Base UI's slider naming relationship. */
|
|
109
110
|
function SliderLabel({ className, ref, ...props }) {
|
|
110
|
-
const classes = mergeBaseClassName("slider__label", className);
|
|
111
|
+
const classes = mergeBaseClassName("label slider__label", className);
|
|
111
112
|
return /* @__PURE__ */ jsx(Slider$1.Label, {
|
|
112
113
|
ref,
|
|
113
114
|
"data-slot": "slider-label",
|
|
@@ -118,7 +119,7 @@ function SliderLabel({ className, ref, ...props }) {
|
|
|
118
119
|
const Slider = {
|
|
119
120
|
Root: SliderRoot,
|
|
120
121
|
Label: SliderLabel,
|
|
121
|
-
Value:
|
|
122
|
+
Value: SliderValue,
|
|
122
123
|
Control: SliderControl,
|
|
123
124
|
Track: SliderTrack,
|
|
124
125
|
Indicator: SliderIndicator,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { r as Tabs } from "../../Tabs-Ptrbaynh.js";
|
|
1
|
+
import { o as TabsProps, r as Tabs } from "../../Tabs-Ptrbaynh.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/foundations/Stepper.d.ts
|
|
5
5
|
type StepperOrientation = "horizontal" | "vertical";
|
|
6
6
|
type StepperState = "active" | "completed" | "inactive" | "loading";
|
|
7
|
+
type StepperChangeEventDetails = Parameters<NonNullable<TabsProps["onValueChange"]>>[1];
|
|
7
8
|
type StepIndicators = {
|
|
8
9
|
active?: React.ReactNode;
|
|
9
10
|
completed?: React.ReactNode;
|
|
@@ -12,7 +13,6 @@ type StepIndicators = {
|
|
|
12
13
|
};
|
|
13
14
|
interface StepperContextValue {
|
|
14
15
|
activeStep: number;
|
|
15
|
-
setActiveStep: (step: number) => void;
|
|
16
16
|
orientation: StepperOrientation;
|
|
17
17
|
indicators: StepIndicators;
|
|
18
18
|
}
|
|
@@ -37,7 +37,7 @@ interface StepperProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
37
37
|
/**
|
|
38
38
|
* Called when a trigger requests a new active step.
|
|
39
39
|
*/
|
|
40
|
-
onValueChange?: (value: number) => void;
|
|
40
|
+
onValueChange?: (value: number, eventDetails: StepperChangeEventDetails) => void;
|
|
41
41
|
/**
|
|
42
42
|
* The layout direction of the step navigation.
|
|
43
43
|
* @default "horizontal"
|
|
@@ -40,27 +40,26 @@ function useStepItem() {
|
|
|
40
40
|
function Stepper({ defaultValue = 1, value, onValueChange, orientation = "horizontal", indicators = EMPTY_STEP_INDICATORS, className, children, ref, ...props }) {
|
|
41
41
|
const [uncontrolledValue, setUncontrolledValue] = React.useState(defaultValue);
|
|
42
42
|
const activeStep = value ?? uncontrolledValue;
|
|
43
|
-
const
|
|
43
|
+
const handleValueChange = React.useCallback((step, eventDetails) => {
|
|
44
|
+
onValueChange?.(step, eventDetails);
|
|
45
|
+
if (eventDetails.isCanceled) return;
|
|
44
46
|
if (value === void 0) setUncontrolledValue(step);
|
|
45
|
-
onValueChange?.(step);
|
|
46
47
|
}, [onValueChange, value]);
|
|
47
48
|
const contextValue = React.useMemo(() => ({
|
|
48
49
|
activeStep,
|
|
49
|
-
setActiveStep,
|
|
50
50
|
orientation,
|
|
51
51
|
indicators
|
|
52
52
|
}), [
|
|
53
53
|
activeStep,
|
|
54
54
|
indicators,
|
|
55
|
-
orientation
|
|
56
|
-
setActiveStep
|
|
55
|
+
orientation
|
|
57
56
|
]);
|
|
58
57
|
return /* @__PURE__ */ jsx(StepperContext.Provider, {
|
|
59
58
|
value: contextValue,
|
|
60
59
|
children: /* @__PURE__ */ jsx(Tabs.Root, {
|
|
61
60
|
ref,
|
|
62
61
|
value: activeStep,
|
|
63
|
-
onValueChange:
|
|
62
|
+
onValueChange: handleValueChange,
|
|
64
63
|
orientation,
|
|
65
64
|
className: mergeBaseClassName("stepper", className),
|
|
66
65
|
"data-slot": "stepper",
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as ToggleGroupItemProps, r as ToggleGroupProps, t as ToggleGroup } from "../../ToggleGroup-
|
|
1
|
+
import { n as ToggleGroupItemProps, r as ToggleGroupProps, t as ToggleGroup } from "../../ToggleGroup-BrQZOQn_.js";
|
|
2
2
|
export { ToggleGroup, ToggleGroupItemProps, ToggleGroupProps };
|
|
@@ -2,13 +2,11 @@ import * as React from "react";
|
|
|
2
2
|
import { Tooltip as Tooltip$1 } from "@base-ui/react/tooltip";
|
|
3
3
|
|
|
4
4
|
//#region src/components/foundations/Tooltip.d.ts
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
type TooltipProps<Payload = unknown> = Tooltip$1.Root.Props<Payload>;
|
|
6
|
+
type TooltipTriggerProps<Payload = unknown> = Tooltip$1.Trigger.Props<Payload> & React.RefAttributes<HTMLElement>;
|
|
7
7
|
interface TooltipPortalProps extends Tooltip$1.Portal.Props {}
|
|
8
8
|
interface TooltipPositionerProps extends Tooltip$1.Positioner.Props {}
|
|
9
|
-
|
|
10
|
-
delayDuration?: number;
|
|
11
|
-
}
|
|
9
|
+
type TooltipProviderProps = Tooltip$1.Provider.Props;
|
|
12
10
|
interface TooltipPopupProps extends Tooltip$1.Popup.Props {}
|
|
13
11
|
interface TooltipViewportProps extends Tooltip$1.Viewport.Props {}
|
|
14
12
|
interface TooltipArrowProps extends Tooltip$1.Arrow.Props {}
|
|
@@ -33,15 +31,15 @@ interface TooltipArrowProps extends Tooltip$1.Arrow.Props {}
|
|
|
33
31
|
* @see {@link https://base-ui.com/react/components/tooltip | Base UI Tooltip}
|
|
34
32
|
*/
|
|
35
33
|
declare function TooltipProvider({
|
|
36
|
-
delayDuration,
|
|
37
34
|
delay,
|
|
38
35
|
...props
|
|
39
36
|
}: TooltipProviderProps): React.JSX.Element;
|
|
40
|
-
declare function TooltipTrigger({
|
|
37
|
+
declare function TooltipTrigger<Payload>({
|
|
41
38
|
render,
|
|
42
39
|
className,
|
|
40
|
+
ref,
|
|
43
41
|
...props
|
|
44
|
-
}: TooltipTriggerProps): React.JSX.Element;
|
|
42
|
+
}: TooltipTriggerProps<Payload>): React.JSX.Element;
|
|
45
43
|
declare function TooltipPositioner({
|
|
46
44
|
className,
|
|
47
45
|
ref,
|
|
@@ -24,13 +24,13 @@ import { Tooltip as Tooltip$1 } from "@base-ui/react/tooltip";
|
|
|
24
24
|
*
|
|
25
25
|
* @see {@link https://base-ui.com/react/components/tooltip | Base UI Tooltip}
|
|
26
26
|
*/
|
|
27
|
-
function TooltipProvider({
|
|
27
|
+
function TooltipProvider({ delay = 0, ...props }) {
|
|
28
28
|
return /* @__PURE__ */ jsx(Tooltip$1.Provider, {
|
|
29
|
-
delay
|
|
29
|
+
delay,
|
|
30
30
|
...props
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
-
function TooltipTrigger({ render, className, ...props }) {
|
|
33
|
+
function TooltipTrigger({ render, className, ref, ...props }) {
|
|
34
34
|
const classes = mergeBaseClassName(render == null ? buttonVariants({
|
|
35
35
|
variant: "ghost",
|
|
36
36
|
color: "neutral",
|
|
@@ -38,6 +38,7 @@ function TooltipTrigger({ render, className, ...props }) {
|
|
|
38
38
|
className: "tooltip__trigger"
|
|
39
39
|
}) : "tooltip__trigger", className);
|
|
40
40
|
return /* @__PURE__ */ jsx(Tooltip$1.Trigger, {
|
|
41
|
+
ref,
|
|
41
42
|
"data-slot": "tooltip-trigger",
|
|
42
43
|
render,
|
|
43
44
|
className: classes,
|
|
@@ -2,8 +2,8 @@ import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
|
2
2
|
import { C as FileIcon, m as ChevronRightIcon } from "../../icons-B1Qw05te.js";
|
|
3
3
|
import { Collapsible } from "../foundations/Collapsible.js";
|
|
4
4
|
import { Avatar } from "../foundations/Avatar.js";
|
|
5
|
-
import { t as CopyButton } from "../../copy-button-CsNSSKYG.js";
|
|
6
5
|
import { Badge } from "../foundations/Badge.js";
|
|
6
|
+
import { t as CopyButton } from "../../copy-button-CsNSSKYG.js";
|
|
7
7
|
import "react";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
//#region src/components/general-purpose/Commit.tsx
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
2
|
import { S as EyeOffIcon, x as EyeIcon } from "../../icons-B1Qw05te.js";
|
|
3
|
-
import { t as CopyButton } from "../../copy-button-CsNSSKYG.js";
|
|
4
3
|
import { Badge } from "../foundations/Badge.js";
|
|
4
|
+
import { t as CopyButton } from "../../copy-button-CsNSSKYG.js";
|
|
5
5
|
import { Switch } from "../foundations/Switch.js";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { PricingBillingPeriod } from "./Pricing.js";
|
|
2
|
-
import * as React from "react";
|
|
3
2
|
|
|
4
3
|
//#region src/components/general-purpose/PricingBillingToggle.d.ts
|
|
5
4
|
interface PricingBillingToggleProps {
|
|
6
5
|
value: PricingBillingPeriod;
|
|
7
6
|
onValueChange: (value: PricingBillingPeriod) => void;
|
|
8
7
|
yearlySavingsPercent: number;
|
|
9
|
-
/**
|
|
8
|
+
/** Billing control presentation. Defaults to the compact switch. */
|
|
10
9
|
variant?: "switch" | "buttons";
|
|
11
10
|
/** Additional class name for placement in a consuming layout. */
|
|
12
11
|
className?: string;
|
|
@@ -18,6 +17,6 @@ declare function PricingBillingToggle({
|
|
|
18
17
|
yearlySavingsPercent,
|
|
19
18
|
variant,
|
|
20
19
|
className
|
|
21
|
-
}: PricingBillingToggleProps):
|
|
20
|
+
}: PricingBillingToggleProps): import("react").JSX.Element;
|
|
22
21
|
//#endregion
|
|
23
22
|
export { PricingBillingToggle, PricingBillingToggleProps };
|
|
@@ -2,32 +2,14 @@ import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
|
2
2
|
import { Badge } from "../foundations/Badge.js";
|
|
3
3
|
import { ToggleGroup } from "../foundations/ToggleGroup.js";
|
|
4
4
|
import { Switch } from "../foundations/Switch.js";
|
|
5
|
-
import { Checkbox } from "../foundations/Checkbox.js";
|
|
6
|
-
import { Label } from "../foundations/Label.js";
|
|
7
|
-
import * as React from "react";
|
|
8
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
6
|
//#region src/components/general-purpose/PricingBillingToggle.tsx
|
|
10
7
|
/** Controlled billing-period selector composed from the shared Switch or ToggleGroup. */
|
|
11
|
-
function PricingBillingToggle({ value, onValueChange, yearlySavingsPercent, variant, className }) {
|
|
12
|
-
const [demoVariant, setDemoVariant] = React.useState("switch");
|
|
13
|
-
const demoToggleId = React.useId();
|
|
14
|
-
const resolvedVariant = variant ?? demoVariant;
|
|
8
|
+
function PricingBillingToggle({ value, onValueChange, yearlySavingsPercent, variant = "switch", className }) {
|
|
15
9
|
const isYearly = value === "yearly";
|
|
16
|
-
return /* @__PURE__ */
|
|
10
|
+
return /* @__PURE__ */ jsx("div", {
|
|
17
11
|
className: cx("pricing-page__billing-toggle", className),
|
|
18
|
-
children:
|
|
19
|
-
className: "pricing-page__toggle-options",
|
|
20
|
-
children: [/* @__PURE__ */ jsx(Checkbox.Root, {
|
|
21
|
-
checked: demoVariant === "switch",
|
|
22
|
-
onCheckedChange: (checked) => setDemoVariant(checked ? "switch" : "buttons"),
|
|
23
|
-
id: demoToggleId,
|
|
24
|
-
children: /* @__PURE__ */ jsx(Checkbox.Indicator, {})
|
|
25
|
-
}), /* @__PURE__ */ jsx(Label, {
|
|
26
|
-
htmlFor: demoToggleId,
|
|
27
|
-
className: "pricing-page__toggle-label",
|
|
28
|
-
children: "Use switch style"
|
|
29
|
-
})]
|
|
30
|
-
}) : null, resolvedVariant === "switch" ? /* @__PURE__ */ jsxs("div", {
|
|
12
|
+
children: variant === "switch" ? /* @__PURE__ */ jsxs("div", {
|
|
31
13
|
className: "pricing-page__switch-container",
|
|
32
14
|
children: [
|
|
33
15
|
/* @__PURE__ */ jsx("span", {
|
|
@@ -80,7 +62,7 @@ function PricingBillingToggle({ value, onValueChange, yearlySavingsPercent, vari
|
|
|
80
62
|
]
|
|
81
63
|
})]
|
|
82
64
|
})]
|
|
83
|
-
})
|
|
65
|
+
})
|
|
84
66
|
});
|
|
85
67
|
}
|
|
86
68
|
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FAQItem, Plan,
|
|
1
|
+
import { FAQItem, Plan, UsageTier } from "./Pricing.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/general-purpose/PricingPage.d.ts
|
|
@@ -53,8 +53,7 @@ interface PricingPageProps {
|
|
|
53
53
|
className?: string;
|
|
54
54
|
/**
|
|
55
55
|
* Style variant for the billing period toggle.
|
|
56
|
-
*
|
|
57
|
-
* @default undefined (shows style switcher for demos)
|
|
56
|
+
* @default "switch"
|
|
58
57
|
*/
|
|
59
58
|
billingToggleVariant?: "switch" | "buttons";
|
|
60
59
|
/**
|
|
@@ -170,4 +169,4 @@ declare function PricingPage({
|
|
|
170
169
|
onPortalRedirect
|
|
171
170
|
}: PricingPageProps): React.JSX.Element;
|
|
172
171
|
//#endregion
|
|
173
|
-
export {
|
|
172
|
+
export { PricingPage, PricingPageProps };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as mergeBaseClassName, t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import { n as clamp } from "../../format-
|
|
2
|
+
import { n as clamp } from "../../format-DB2mX9DA.js";
|
|
3
3
|
import { Separator } from "../foundations/Separator.js";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -1,68 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
//#region src/components/general-purpose/ResponsiveSidebarShell.d.ts
|
|
4
|
-
interface ResponsiveSidebarShellControls {
|
|
5
|
-
/** Close the sidebar and move focus to the main content. */
|
|
6
|
-
closeSidebar: () => void;
|
|
7
|
-
/** Close only when the shell is currently using its compact drawer layout. */
|
|
8
|
-
closeSidebarOnCompact: () => void;
|
|
9
|
-
}
|
|
10
|
-
interface ResponsiveSidebarShellTopBarControls {
|
|
11
|
-
/** The shell-owned, labelled sidebar toggle to place in a top-bar slot. */
|
|
12
|
-
sidebarToggle: React.ReactNode;
|
|
13
|
-
/** Stable id for a caller-composed compact disclosure trigger. */
|
|
14
|
-
sidebarId: string;
|
|
15
|
-
/** Whether the shared sidebar surface is currently visible. */
|
|
16
|
-
sidebarOpen: boolean;
|
|
17
|
-
/** Toggle the sidebar and remember the invoking control for Escape focus restoration. */
|
|
18
|
-
toggleSidebar: (trigger?: HTMLElement) => void;
|
|
19
|
-
}
|
|
20
|
-
interface ResponsiveSidebarShellProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
21
|
-
/** Navigation or other secondary surface shown beside the selected content. */
|
|
22
|
-
sidebar: React.ReactNode | ((controls: ResponsiveSidebarShellControls) => React.ReactNode);
|
|
23
|
-
/**
|
|
24
|
-
* Optional composable application bar. The render form receives the
|
|
25
|
-
* shell-owned sidebar toggle so callers can place it beside their own icon
|
|
26
|
-
* groups without duplicating drawer behavior.
|
|
27
|
-
*/
|
|
28
|
-
topBar?: React.ReactNode | ((controls: ResponsiveSidebarShellTopBarControls) => React.ReactNode);
|
|
29
|
-
/** Short noun used by the toggle and resize control, such as “threads” or “schedules”. */
|
|
30
|
-
sidebarLabel: string;
|
|
31
|
-
/** Whether the sidebar is open. Omit for internal state. */
|
|
32
|
-
sidebarOpen?: boolean;
|
|
33
|
-
/** Initial sidebar state when `sidebarOpen` is uncontrolled. */
|
|
34
|
-
defaultSidebarOpen?: boolean;
|
|
35
|
-
/** Initial desktop sidebar width in CSS pixels. */
|
|
36
|
-
defaultSidebarWidth?: number;
|
|
37
|
-
/** Called when the sidebar is opened or closed. */
|
|
38
|
-
onSidebarOpenChange?: (open: boolean) => void;
|
|
39
|
-
/** Accessible name for the toolbar containing the sidebar toggle. */
|
|
40
|
-
toolbarLabel?: string;
|
|
41
|
-
/** Accessible name for the mobile preview target that returns to the main content. */
|
|
42
|
-
showMainLabel?: string;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Responsive master-detail shell with a resizable desktop sidebar and a compact
|
|
46
|
-
* floating sidebar that leaves the main content in place as a dismiss target.
|
|
47
|
-
* The root exposes `data-sidebar-open="true" | "false"` as its public styling hook.
|
|
48
|
-
*/
|
|
49
|
-
declare function ResponsiveSidebarShell({
|
|
50
|
-
sidebar,
|
|
51
|
-
topBar,
|
|
52
|
-
sidebarLabel,
|
|
53
|
-
sidebarOpen,
|
|
54
|
-
defaultSidebarOpen,
|
|
55
|
-
defaultSidebarWidth,
|
|
56
|
-
onSidebarOpenChange,
|
|
57
|
-
toolbarLabel,
|
|
58
|
-
showMainLabel,
|
|
59
|
-
className,
|
|
60
|
-
children,
|
|
61
|
-
ref,
|
|
62
|
-
style,
|
|
63
|
-
...props
|
|
64
|
-
}: ResponsiveSidebarShellProps & {
|
|
65
|
-
ref?: React.Ref<HTMLDivElement>;
|
|
66
|
-
}): React.JSX.Element;
|
|
67
|
-
//#endregion
|
|
1
|
+
import { i as ResponsiveSidebarShellTopBarControls, n as ResponsiveSidebarShellControls, r as ResponsiveSidebarShellProps, t as ResponsiveSidebarShell } from "../../ResponsiveSidebarShell-DWjULskY.js";
|
|
68
2
|
export { ResponsiveSidebarShell, ResponsiveSidebarShellControls, ResponsiveSidebarShellProps, ResponsiveSidebarShellTopBarControls };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
2
|
import { K as SidebarIcon } from "../../icons-B1Qw05te.js";
|
|
3
3
|
import { Button } from "../foundations/Button.js";
|
|
4
|
-
import { t as capitalize } from "../../format-
|
|
4
|
+
import { t as capitalize } from "../../format-DB2mX9DA.js";
|
|
5
5
|
import { n as mergeRefs } from "../../merge-refs-DF_7w2x_.js";
|
|
6
6
|
import { AppTopBar } from "./AppTopBar.js";
|
|
7
7
|
import { ResizableSidePanel } from "./ResizableSidePanel.js";
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/components/general-purpose/SettingsFormDialog.d.ts
|
|
4
|
-
type SettingsFormFieldType = "email" | "password" | "search" | "tel" | "text" | "url";
|
|
4
|
+
type SettingsFormFieldType = "checkbox" | "email" | "password" | "search" | "tel" | "text" | "url";
|
|
5
|
+
/**
|
|
6
|
+
* A checked box submits this, an unchecked one submits the empty string, so
|
|
7
|
+
* `SettingsFormValues` stays all-strings for every field type.
|
|
8
|
+
*/
|
|
9
|
+
declare const SETTINGS_FORM_CHECKED = "true";
|
|
5
10
|
interface SettingsFormField {
|
|
6
11
|
name: string;
|
|
7
12
|
label: string;
|
|
@@ -40,4 +45,4 @@ declare function SettingsFormDialog({
|
|
|
40
45
|
...contentProps
|
|
41
46
|
}: SettingsFormDialogProps): React.JSX.Element;
|
|
42
47
|
//#endregion
|
|
43
|
-
export { SettingsFormDialog, SettingsFormDialogProps, SettingsFormField, SettingsFormFieldType, SettingsFormValues };
|
|
48
|
+
export { SETTINGS_FORM_CHECKED, SettingsFormDialog, SettingsFormDialogProps, SettingsFormField, SettingsFormFieldType, SettingsFormValues };
|
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
import { Button } from "../foundations/Button.js";
|
|
2
2
|
import { Dialog } from "../foundations/Dialog.js";
|
|
3
|
-
import { i as formatErrorMessage } from "../../format-
|
|
3
|
+
import { i as formatErrorMessage } from "../../format-DB2mX9DA.js";
|
|
4
4
|
import { Field } from "../foundations/Field.js";
|
|
5
5
|
import { Form } from "../foundations/Form.js";
|
|
6
|
+
import { Checkbox } from "../foundations/Checkbox.js";
|
|
6
7
|
import * as React from "react";
|
|
7
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
9
|
//#region src/components/general-purpose/SettingsFormDialog.tsx
|
|
10
|
+
/**
|
|
11
|
+
* A checked box submits this, an unchecked one submits the empty string, so
|
|
12
|
+
* `SettingsFormValues` stays all-strings for every field type.
|
|
13
|
+
*/
|
|
14
|
+
const SETTINGS_FORM_CHECKED = "true";
|
|
9
15
|
function readSettingsValues(data, fields) {
|
|
10
16
|
return Object.fromEntries(fields.map((field) => {
|
|
11
17
|
const value = data[field.name];
|
|
18
|
+
if (field.type === "checkbox") return [field.name, value === true ? SETTINGS_FORM_CHECKED : ""];
|
|
12
19
|
return [field.name, typeof value === "string" ? value.trim() : ""];
|
|
13
20
|
}));
|
|
14
21
|
}
|
|
@@ -51,7 +58,15 @@ function SettingsFormDialogContent({ fields, initialValues, submitLabel, submitt
|
|
|
51
58
|
return /* @__PURE__ */ jsxs(Form, {
|
|
52
59
|
onFormSubmit: submit,
|
|
53
60
|
children: [
|
|
54
|
-
fields.map((field) => /* @__PURE__ */ jsxs(Field.Root, {
|
|
61
|
+
fields.map((field) => field.type === "checkbox" ? /* @__PURE__ */ jsxs(Field.Root, {
|
|
62
|
+
name: field.name,
|
|
63
|
+
orientation: "horizontal",
|
|
64
|
+
children: [/* @__PURE__ */ jsx(Checkbox.Root, {
|
|
65
|
+
defaultChecked: initialValues?.[field.name] === SETTINGS_FORM_CHECKED,
|
|
66
|
+
disabled: field.readOnly,
|
|
67
|
+
children: /* @__PURE__ */ jsx(Checkbox.Indicator, {})
|
|
68
|
+
}), /* @__PURE__ */ jsxs(Field.Content, { children: [/* @__PURE__ */ jsx(Field.Label, { children: field.label }), field.description ? /* @__PURE__ */ jsx(Field.Description, { children: field.description }) : null] })]
|
|
69
|
+
}, field.name) : /* @__PURE__ */ jsxs(Field.Root, {
|
|
55
70
|
name: field.name,
|
|
56
71
|
children: [
|
|
57
72
|
/* @__PURE__ */ jsx(Field.Label, { children: field.label }),
|
|
@@ -108,4 +123,4 @@ function SettingsFormDialog({ open, onOpenChange, title, description, ...content
|
|
|
108
123
|
});
|
|
109
124
|
}
|
|
110
125
|
//#endregion
|
|
111
|
-
export { SettingsFormDialog };
|
|
126
|
+
export { SETTINGS_FORM_CHECKED, SettingsFormDialog };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
2
|
import { $ as TerminalIcon, rt as XIcon } from "../../icons-B1Qw05te.js";
|
|
3
3
|
import { IconButton } from "../foundations/IconButton.js";
|
|
4
|
-
import { t as CopyButton } from "../../copy-button-CsNSSKYG.js";
|
|
5
4
|
import { Badge } from "../foundations/Badge.js";
|
|
6
5
|
import { ScrollArea } from "../foundations/ScrollArea.js";
|
|
6
|
+
import { t as CopyButton } from "../../copy-button-CsNSSKYG.js";
|
|
7
7
|
import * as React from "react";
|
|
8
8
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
import Anser from "anser";
|
|
@@ -175,7 +175,7 @@ function TerminalContent({ className, ref, ...props }) {
|
|
|
175
175
|
ref: viewportRef,
|
|
176
176
|
className: "terminal__content-viewport",
|
|
177
177
|
onScroll: handleScroll,
|
|
178
|
-
children: /* @__PURE__ */ jsxs("pre", {
|
|
178
|
+
children: /* @__PURE__ */ jsx(ScrollArea.Content, { children: /* @__PURE__ */ jsxs("pre", {
|
|
179
179
|
className: "terminal__output",
|
|
180
180
|
children: [segments.map((seg, i) => /* @__PURE__ */ jsx("span", {
|
|
181
181
|
style: {
|
|
@@ -191,7 +191,7 @@ function TerminalContent({ className, ref, ...props }) {
|
|
|
191
191
|
className: "terminal__cursor",
|
|
192
192
|
"aria-hidden": "true"
|
|
193
193
|
}) : null]
|
|
194
|
-
})
|
|
194
|
+
}) })
|
|
195
195
|
}), /* @__PURE__ */ jsx(ScrollArea.Scrollbar, {
|
|
196
196
|
orientation: "vertical",
|
|
197
197
|
children: /* @__PURE__ */ jsx(ScrollArea.Thumb, {})
|
|
@@ -33,7 +33,7 @@ function ThemeModeControl({ showLabels = true, "aria-label": ariaLabel = "Theme"
|
|
|
33
33
|
].filter(Boolean).join(" ");
|
|
34
34
|
return /* @__PURE__ */ jsx(RadioGroup.Root, {
|
|
35
35
|
value: preference,
|
|
36
|
-
onValueChange:
|
|
36
|
+
onValueChange: setPreference,
|
|
37
37
|
name,
|
|
38
38
|
disabled,
|
|
39
39
|
orientation: "horizontal",
|
|
@@ -3,8 +3,8 @@ import { W as RefreshIcon, f as ChevronDownIcon, i as ArrowRightIcon, r as Arrow
|
|
|
3
3
|
import { Collapsible } from "../foundations/Collapsible.js";
|
|
4
4
|
import { IconButton } from "../foundations/IconButton.js";
|
|
5
5
|
import { Badge } from "../foundations/Badge.js";
|
|
6
|
-
import { Input } from "../foundations/Input.js";
|
|
7
6
|
import { ScrollArea } from "../foundations/ScrollArea.js";
|
|
7
|
+
import { Input } from "../foundations/Input.js";
|
|
8
8
|
import * as React from "react";
|
|
9
9
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
10
10
|
//#region src/components/general-purpose/WebPreview.tsx
|
|
@@ -262,9 +262,9 @@ function WebPreviewConsole({ className, logs = [], children, ref, ...props }) {
|
|
|
262
262
|
unstyled: true,
|
|
263
263
|
children: /* @__PURE__ */ jsxs(ScrollArea.Root, {
|
|
264
264
|
className: "web-preview__console-scroll",
|
|
265
|
-
children: [/* @__PURE__ */
|
|
265
|
+
children: [/* @__PURE__ */ jsx(ScrollArea.Viewport, {
|
|
266
266
|
className: "web-preview__console-viewport",
|
|
267
|
-
children: [/* @__PURE__ */ jsx("ul", {
|
|
267
|
+
children: /* @__PURE__ */ jsxs(ScrollArea.Content, { children: [/* @__PURE__ */ jsx("ul", {
|
|
268
268
|
className: "web-preview__console-list sigvelo-stack-list",
|
|
269
269
|
children: logs.length === 0 ? /* @__PURE__ */ jsx("li", {
|
|
270
270
|
className: "web-preview__console-empty",
|
|
@@ -287,7 +287,7 @@ function WebPreviewConsole({ className, logs = [], children, ref, ...props }) {
|
|
|
287
287
|
})
|
|
288
288
|
]
|
|
289
289
|
}, index))
|
|
290
|
-
}), children]
|
|
290
|
+
}), children] })
|
|
291
291
|
}), /* @__PURE__ */ jsx(ScrollArea.Scrollbar, {
|
|
292
292
|
orientation: "vertical",
|
|
293
293
|
children: /* @__PURE__ */ jsx(ScrollArea.Thumb, {})
|
|
@@ -2,7 +2,8 @@ import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
|
2
2
|
import { k as LinkIcon } from "../../icons-B1Qw05te.js";
|
|
3
3
|
import { Button } from "../foundations/Button.js";
|
|
4
4
|
import { Popover } from "../foundations/Popover.js";
|
|
5
|
-
import { a as CodeBlockCopyButton, i as CodeBlockContent, n as CodeBlockActions, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock } from "../../CodeBlock-
|
|
5
|
+
import { a as CodeBlockCopyButton, i as CodeBlockContent, n as CodeBlockActions, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock } from "../../CodeBlock-Bk4nn7l-.js";
|
|
6
|
+
import { ToggleGroup } from "../foundations/ToggleGroup.js";
|
|
6
7
|
import * as React from "react";
|
|
7
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
9
|
//#region src/components/nanites/AgentConnection.tsx
|
|
@@ -103,6 +104,7 @@ function AgentConnectionPanel({ className, commands: commandsProp, defaultTarget
|
|
|
103
104
|
const Heading = headingLevel === 3 ? "h3" : "h2";
|
|
104
105
|
const Wrapper = section ? "section" : "div";
|
|
105
106
|
if (!selected) return null;
|
|
107
|
+
const selectedIndex = commands.indexOf(selected);
|
|
106
108
|
return /* @__PURE__ */ jsxs(Wrapper, {
|
|
107
109
|
className: cx("agent-connect", className),
|
|
108
110
|
children: [
|
|
@@ -120,21 +122,24 @@ function AgentConnectionPanel({ className, commands: commandsProp, defaultTarget
|
|
|
120
122
|
children: [/* @__PURE__ */ jsx(Heading, { children: "Connect Agent" }), /* @__PURE__ */ jsx("p", { children: selected.description })]
|
|
121
123
|
})]
|
|
122
124
|
}),
|
|
123
|
-
/* @__PURE__ */ jsxs(
|
|
125
|
+
/* @__PURE__ */ jsxs(ToggleGroup.Root, {
|
|
126
|
+
render: /* @__PURE__ */ jsx("fieldset", {}),
|
|
124
127
|
className: "agent-connect__targets",
|
|
128
|
+
size: "sm",
|
|
129
|
+
spacing: 1,
|
|
130
|
+
value: [String(selectedIndex)],
|
|
131
|
+
onValueChange: (nextValue) => {
|
|
132
|
+
const nextIndex = nextValue[0];
|
|
133
|
+
const nextCommand = nextIndex === void 0 ? void 0 : commands[Number(nextIndex)];
|
|
134
|
+
if (nextCommand) setTarget(nextCommand.target);
|
|
135
|
+
},
|
|
125
136
|
children: [/* @__PURE__ */ jsx("legend", {
|
|
126
137
|
className: "agent-connect__legend sigvelo-visually-hidden",
|
|
127
138
|
children: "Agent connection target"
|
|
128
|
-
}), commands.map((command) => /* @__PURE__ */ jsx(
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
size: "sm",
|
|
132
|
-
"aria-pressed": command.target === selected.target,
|
|
133
|
-
"data-selected": command.target === selected.target,
|
|
139
|
+
}), commands.map((command, index) => /* @__PURE__ */ jsx(ToggleGroup.Item, {
|
|
140
|
+
type: "button",
|
|
141
|
+
value: String(index),
|
|
134
142
|
className: "agent-connect__target",
|
|
135
|
-
onClick: () => {
|
|
136
|
-
setTarget(command.target);
|
|
137
|
-
},
|
|
138
143
|
children: command.label
|
|
139
144
|
}, command.target))]
|
|
140
145
|
}),
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { t as cx } from "../../class-names-BiMDVpUo.js";
|
|
2
|
-
import {
|
|
2
|
+
import { r as ArrowLeftIcon } from "../../icons-B1Qw05te.js";
|
|
3
3
|
import { TransitionSurface } from "../foundations/TransitionSurface.js";
|
|
4
4
|
import { SubagentRunActions, SubagentRunMilestone, SubagentRunMilestones, SubagentRunProgress } from "../agents-sdk/SubagentRunDetails.js";
|
|
5
5
|
import { SubagentRunIndicator, getSubagentRunName } from "../agents-sdk/SubagentRunIndicator.js";
|
|
6
|
-
import { t as ThinkChat } from "../../ThinkChat-
|
|
6
|
+
import { t as ThinkChat } from "../../ThinkChat-ByR-QT_D.js";
|
|
7
7
|
import { AppTopBar } from "../general-purpose/AppTopBar.js";
|
|
8
8
|
import { NaniteMark } from "./NaniteScene.js";
|
|
9
9
|
import * as React from "react";
|
|
@@ -75,11 +75,10 @@ function AgentToolDetail({ actions, backLink, chat, className, messages, ref, ru
|
|
|
75
75
|
...messages,
|
|
76
76
|
showComposer: false
|
|
77
77
|
})
|
|
78
|
-
}) : /* @__PURE__ */ jsx(
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
children: /* @__PURE__ */ jsx(SpinnerIcon, {})
|
|
78
|
+
}) : /* @__PURE__ */ jsx(ThinkChat.Messages, {
|
|
79
|
+
...messages,
|
|
80
|
+
showComposer: false,
|
|
81
|
+
loading: true
|
|
83
82
|
})
|
|
84
83
|
}),
|
|
85
84
|
actions ? /* @__PURE__ */ jsx(SubagentRunActions, { children: actions }) : null
|