@mcp-b/react-components 0.7.0 → 0.7.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/AgentChat-403mckDG.d.ts +101 -0
- package/dist/BrowserLiveView-ZktFZiMD.d.ts +47 -0
- package/dist/BrowserReplay-6G-mnwcn.d.ts +40 -0
- package/dist/{CodeBlock-BK0sOAbV.js → CodeBlock-D9koxDA7.js} +1 -1
- package/dist/{FileTree-BWQZ0FSi.js → FileTree-BdK93Uuu.js} +1 -1
- package/dist/ModelSelector-MQvK-pNb.js +306 -0
- package/dist/ThinkChatActivity-CeHzk6-K.d.ts +73 -0
- package/dist/ThinkChatContext-CC94HL4u.d.ts +28 -0
- package/dist/components/Activity.js +1 -1
- package/dist/components/AgentChat.d.ts +1 -100
- package/dist/components/AgentChat.js +1 -1
- package/dist/components/AgentConnection.d.ts +43 -2
- package/dist/components/AgentConnection.js +154 -3
- package/dist/components/Artifact.js +1 -1
- package/dist/components/BrowserLiveView.d.ts +1 -46
- package/dist/components/BrowserLiveView.js +1 -1
- package/dist/components/BrowserReplay.d.ts +1 -39
- package/dist/components/BrowserReplay.js +1 -1
- package/dist/components/ChainOfThought.d.ts +1 -1
- package/dist/components/ChainOfThought.js +1 -1
- package/dist/components/ChatGptSignInScreen.d.ts +38 -0
- package/dist/components/ChatGptSignInScreen.js +201 -0
- package/dist/components/CodeBlock.js +1 -1
- package/dist/components/Commit.js +1 -1
- package/dist/components/ContextMenu.js +1 -1
- package/dist/components/Conversation.js +1 -1
- package/dist/components/Dialog.js +1 -1
- package/dist/components/EnvironmentVariables.js +1 -1
- package/dist/components/FileTree.js +1 -1
- package/dist/components/McpServerPicker.js +1 -1
- package/dist/components/Menubar.js +1 -1
- package/dist/components/Message.js +1 -1
- package/dist/components/MessageScroller.js +2 -2
- package/dist/components/ModelSelector.js +1 -305
- package/dist/components/NavigationMenu.js +1 -1
- package/dist/components/PromptInput.js +1 -1
- package/dist/components/Queue.js +1 -1
- package/dist/components/Reasoning.js +1 -1
- package/dist/components/Select.js +1 -1
- package/dist/components/Sources.js +1 -1
- package/dist/components/Stepper.js +1 -1
- package/dist/components/Task.js +1 -1
- package/dist/components/Terminal.js +2 -2
- package/dist/components/TestResults.js +1 -1
- package/dist/components/ThinkChat.d.ts +16 -6
- package/dist/components/ThinkChat.js +1 -1
- package/dist/components/ThinkChatActivity.d.ts +2 -72
- package/dist/components/ThinkChatActivity.js +1 -1
- package/dist/components/ThinkChatContext.d.ts +1 -27
- package/dist/components/ThinkChatToolPanels.js +1 -1
- package/dist/components/ThinkFullApp.d.ts +23 -0
- package/dist/components/ThinkFullApp.js +175 -0
- package/dist/components/WebPreview.js +1 -1
- package/dist/components/WorkspaceExplorer.js +3 -3
- package/dist/components/icons.d.ts +2 -2
- package/dist/components/icons.js +2 -2
- package/dist/{copy-button-CB2MWcau.js → copy-button-TVhDAroI.js} +1 -1
- package/dist/{icons-BCNawx-T.js → icons-BAlTbWWP.js} +27 -1
- package/dist/{icons-BYpJY6L2.d.ts → icons-BRI54ATJ.d.ts} +2 -1
- package/dist/styles/agent-connection.css +33 -5
- package/dist/styles/chatgpt-sign-in-screen.css +224 -0
- package/dist/styles/code-block.css +3 -1
- package/dist/styles/index.css +2 -0
- package/dist/styles/message-scroller.css +24 -1
- package/dist/styles/prompt-input.css +1 -0
- package/dist/styles/think-full-app.css +318 -0
- package/dist/utils/mcp-server-catalog.d.ts +23 -1
- package/dist/utils/mcp-server-catalog.js +27 -1
- package/package.json +2 -2
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
+
import { j as SpinnerIcon } from "../icons-BAlTbWWP.js";
|
|
3
|
+
import { Button } from "./Button.js";
|
|
4
|
+
import { l as ModelSelectorLogo } from "../ModelSelector-MQvK-pNb.js";
|
|
5
|
+
import "react";
|
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
//#region src/components/ChatGptSignInScreen.tsx
|
|
8
|
+
/** Full-screen ChatGPT authentication prompt for MCP-B onboarding. */
|
|
9
|
+
function ChatGptSignInScreen({ busy = false, error = false, label = "Sign in with ChatGPT", title = "Welcome to MCP-B", brandName = "SigVelo", brandLogo = /* @__PURE__ */ jsx(SigVeloMark, {}), className, onPointerLeave, onPointerMove, onSignIn, ref, ...props }) {
|
|
10
|
+
const handlePointerMove = (event) => {
|
|
11
|
+
onPointerMove?.(event);
|
|
12
|
+
setPointerPosition(event.currentTarget, event, "chatgpt-sign-in-pointer");
|
|
13
|
+
event.currentTarget.dataset.pointerActive = "true";
|
|
14
|
+
};
|
|
15
|
+
const handlePointerLeave = (event) => {
|
|
16
|
+
onPointerLeave?.(event);
|
|
17
|
+
delete event.currentTarget.dataset.pointerActive;
|
|
18
|
+
};
|
|
19
|
+
const handleButtonPointerMove = (event) => {
|
|
20
|
+
setPointerPosition(event.currentTarget, event, "chatgpt-sign-in-button");
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */ jsx("main", {
|
|
23
|
+
ref,
|
|
24
|
+
className: cx("chatgpt-sign-in", className),
|
|
25
|
+
"aria-label": "ChatGPT authentication",
|
|
26
|
+
onPointerLeave: handlePointerLeave,
|
|
27
|
+
onPointerMove: handlePointerMove,
|
|
28
|
+
...props,
|
|
29
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
30
|
+
className: "chatgpt-sign-in__panel",
|
|
31
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
32
|
+
className: "chatgpt-sign-in__brand",
|
|
33
|
+
children: [/* @__PURE__ */ jsx("h1", { children: title }), /* @__PURE__ */ jsxs("p", { children: [
|
|
34
|
+
"by ",
|
|
35
|
+
brandLogo ? /* @__PURE__ */ jsx("span", {
|
|
36
|
+
className: "chatgpt-sign-in__brand-mark",
|
|
37
|
+
children: brandLogo
|
|
38
|
+
}) : null,
|
|
39
|
+
/* @__PURE__ */ jsx("span", { children: brandName })
|
|
40
|
+
] })]
|
|
41
|
+
}), /* @__PURE__ */ jsxs(Button, {
|
|
42
|
+
type: "button",
|
|
43
|
+
variant: "default",
|
|
44
|
+
color: error ? "destructive" : "primary",
|
|
45
|
+
size: "lg",
|
|
46
|
+
className: "chatgpt-sign-in__button",
|
|
47
|
+
"data-busy": busy ? "true" : void 0,
|
|
48
|
+
disabled: busy,
|
|
49
|
+
onClick: onSignIn,
|
|
50
|
+
onPointerMove: handleButtonPointerMove,
|
|
51
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
52
|
+
className: "chatgpt-sign-in__button-icon",
|
|
53
|
+
children: busy ? /* @__PURE__ */ jsx(SpinnerIcon, { size: 16 }) : /* @__PURE__ */ jsx(ModelSelectorLogo, {
|
|
54
|
+
provider: "openai",
|
|
55
|
+
className: "chatgpt-sign-in__logo"
|
|
56
|
+
})
|
|
57
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
58
|
+
className: "chatgpt-sign-in__button-label",
|
|
59
|
+
children: label
|
|
60
|
+
})]
|
|
61
|
+
})]
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function setPointerPosition(element, event, name) {
|
|
66
|
+
const rect = element.getBoundingClientRect();
|
|
67
|
+
if (rect.width === 0 || rect.height === 0) return;
|
|
68
|
+
element.style.setProperty(`--${name}-x`, `${(event.clientX - rect.left) / rect.width * 100}%`);
|
|
69
|
+
element.style.setProperty(`--${name}-y`, `${(event.clientY - rect.top) / rect.height * 100}%`);
|
|
70
|
+
}
|
|
71
|
+
function SigVeloMark() {
|
|
72
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
73
|
+
viewBox: "430 310 360 400",
|
|
74
|
+
fill: "none",
|
|
75
|
+
"aria-hidden": "true",
|
|
76
|
+
focusable: "false",
|
|
77
|
+
children: [
|
|
78
|
+
/* @__PURE__ */ jsxs("defs", { children: [/* @__PURE__ */ jsxs("linearGradient", {
|
|
79
|
+
id: "chatgpt-sign-in-mark-a",
|
|
80
|
+
x1: "756.23",
|
|
81
|
+
y1: "475.14",
|
|
82
|
+
x2: "608.29",
|
|
83
|
+
y2: "352.58",
|
|
84
|
+
gradientUnits: "userSpaceOnUse",
|
|
85
|
+
children: [
|
|
86
|
+
/* @__PURE__ */ jsx("stop", {
|
|
87
|
+
offset: "0",
|
|
88
|
+
stopColor: "#00ebff"
|
|
89
|
+
}),
|
|
90
|
+
/* @__PURE__ */ jsx("stop", {
|
|
91
|
+
offset: ".17",
|
|
92
|
+
stopColor: "#00e7fe"
|
|
93
|
+
}),
|
|
94
|
+
/* @__PURE__ */ jsx("stop", {
|
|
95
|
+
offset: ".32",
|
|
96
|
+
stopColor: "#01dcfd"
|
|
97
|
+
}),
|
|
98
|
+
/* @__PURE__ */ jsx("stop", {
|
|
99
|
+
offset: ".46",
|
|
100
|
+
stopColor: "#04cbfa"
|
|
101
|
+
}),
|
|
102
|
+
/* @__PURE__ */ jsx("stop", {
|
|
103
|
+
offset: ".59",
|
|
104
|
+
stopColor: "#08b2f6"
|
|
105
|
+
}),
|
|
106
|
+
/* @__PURE__ */ jsx("stop", {
|
|
107
|
+
offset: ".72",
|
|
108
|
+
stopColor: "#0c91f2"
|
|
109
|
+
}),
|
|
110
|
+
/* @__PURE__ */ jsx("stop", {
|
|
111
|
+
offset: ".85",
|
|
112
|
+
stopColor: "#1269ec"
|
|
113
|
+
}),
|
|
114
|
+
/* @__PURE__ */ jsx("stop", {
|
|
115
|
+
offset: ".98",
|
|
116
|
+
stopColor: "#183be6"
|
|
117
|
+
}),
|
|
118
|
+
/* @__PURE__ */ jsx("stop", {
|
|
119
|
+
offset: "1",
|
|
120
|
+
stopColor: "#1a32e5"
|
|
121
|
+
})
|
|
122
|
+
]
|
|
123
|
+
}), /* @__PURE__ */ jsxs("linearGradient", {
|
|
124
|
+
id: "chatgpt-sign-in-mark-b",
|
|
125
|
+
x1: "452.57",
|
|
126
|
+
y1: "524.29",
|
|
127
|
+
x2: "583.8",
|
|
128
|
+
y2: "641.28",
|
|
129
|
+
gradientUnits: "userSpaceOnUse",
|
|
130
|
+
children: [
|
|
131
|
+
/* @__PURE__ */ jsx("stop", {
|
|
132
|
+
offset: "0",
|
|
133
|
+
stopColor: "#00ebff"
|
|
134
|
+
}),
|
|
135
|
+
/* @__PURE__ */ jsx("stop", {
|
|
136
|
+
offset: ".24",
|
|
137
|
+
stopColor: "#00e8ff"
|
|
138
|
+
}),
|
|
139
|
+
/* @__PURE__ */ jsx("stop", {
|
|
140
|
+
offset: ".38",
|
|
141
|
+
stopColor: "#00e0ff"
|
|
142
|
+
}),
|
|
143
|
+
/* @__PURE__ */ jsx("stop", {
|
|
144
|
+
offset: ".5",
|
|
145
|
+
stopColor: "#00d1ff"
|
|
146
|
+
}),
|
|
147
|
+
/* @__PURE__ */ jsx("stop", {
|
|
148
|
+
offset: ".61",
|
|
149
|
+
stopColor: "#00bdff"
|
|
150
|
+
}),
|
|
151
|
+
/* @__PURE__ */ jsx("stop", {
|
|
152
|
+
offset: ".71",
|
|
153
|
+
stopColor: "#00a3ff"
|
|
154
|
+
}),
|
|
155
|
+
/* @__PURE__ */ jsx("stop", {
|
|
156
|
+
offset: ".8",
|
|
157
|
+
stopColor: "#0082ff"
|
|
158
|
+
}),
|
|
159
|
+
/* @__PURE__ */ jsx("stop", {
|
|
160
|
+
offset: ".88",
|
|
161
|
+
stopColor: "#005cff"
|
|
162
|
+
}),
|
|
163
|
+
/* @__PURE__ */ jsx("stop", {
|
|
164
|
+
offset: ".96",
|
|
165
|
+
stopColor: "#0030ff"
|
|
166
|
+
}),
|
|
167
|
+
/* @__PURE__ */ jsx("stop", {
|
|
168
|
+
offset: "1",
|
|
169
|
+
stopColor: "#0118ff"
|
|
170
|
+
})
|
|
171
|
+
]
|
|
172
|
+
})] }),
|
|
173
|
+
/* @__PURE__ */ jsx("path", {
|
|
174
|
+
fill: "url(#chatgpt-sign-in-mark-a)",
|
|
175
|
+
d: "M746.99,482.75l-145.57-84.52,60.02-34.87,71.05,41.28c8.95,5.2,14.47,14.78,14.47,25.13l.03,52.97Z"
|
|
176
|
+
}),
|
|
177
|
+
/* @__PURE__ */ jsx("path", {
|
|
178
|
+
fill: "url(#chatgpt-sign-in-mark-b)",
|
|
179
|
+
d: "M602.51,601.74l-60.02,34.87-29.12-16.94-45.85-26.63c-8.96-5.2-14.47-14.78-14.48-25.14l-.03-53,59.5,34.57.79.46,89.21,51.8Z"
|
|
180
|
+
}),
|
|
181
|
+
/* @__PURE__ */ jsx("path", {
|
|
182
|
+
fill: "#00e4ff",
|
|
183
|
+
d: "M732.58,595.89l-115.46,67.09c-9.03,5.25-20.19,5.25-29.22,0l-45.41-26.38,60.02-34.87,84.29-48.96-.07-84.18,60.29,35.03.03,67.1c0,10.37-5.51,19.95-14.47,25.16Z"
|
|
184
|
+
}),
|
|
185
|
+
/* @__PURE__ */ jsx("path", {
|
|
186
|
+
fill: "#00e4ff",
|
|
187
|
+
d: "M661.44,363.37l-60.02,34.87-88.19,51.21.07,79.61-60.32-35.03-.03-62.5c0-10.37,5.51-19.95,14.48-25.16l119.39-69.35c9.03-5.24,20.17-5.25,29.2,0l45.42,26.36Z"
|
|
188
|
+
}),
|
|
189
|
+
/* @__PURE__ */ jsx("path", {
|
|
190
|
+
fill: "#00e4ff",
|
|
191
|
+
d: "M599.5,506.65c0-2.14.02-4.27.03-6.41,0-.21,0-.43-.03-.63-.11-1.25-.63-2.14-1.85-2.84-3.45-1.98-6.85-4.04-10.25-6.1-.82-.5-1.5-.12-2.26.09-1.72.49-3.28.23-4.49-1.21-1.1-1.33-1.22-3.27-.35-4.81.81-1.43,2.46-2.17,4.23-1.89,1.63.23,3.07,1.5,3.3,3.23.15,1.31.81,1.98,1.88,2.59,2.55,1.46,5.07,3.04,7.6,4.56.52.31,1.04.92,1.68.61.75-.35.5-1.19.5-1.85.02-16.68,0-33.35,0-50.03v-4.62l-2.5-1.4c-.21-.08-.47-.2-.79-.38-2.06-1.16-4.1-2.32-6.16-3.48l-.9-.5c-1.75-.99-3.49-2-5.23-3.01-.88-.52-1.57-.55-2.49-.03-4.81,2.7-9.63,5.34-14.48,7.95-1.1.6-1.54,1.34-1.53,2.58.05,3.8.06,7.61.03,11.41-.02,1.17.31,2,1.25,2.78,1.94,1.6,2.03,4.52.34,6.18-1.62,1.6-4.36,1.54-5.98-.14-1.57-1.63-1.39-4.5.52-6.06.84-.69,1.14-1.45,1.13-2.49-.03-3.36.05-6.7-.27-10.04-.12-1.28-.53-1.43-1.6-.84-4.1,2.29-8.22,4.61-12.39,6.79-1.43.75-1.86,1.74-1.8,3.27.2,4.88.31,9.76.38,14.65.02,1.11.5,1.77,1.4,2.32,4.85,2.94,9.7,5.9,14.51,8.91.96.59,1.72.58,2.67.06,4.46-2.4,8.91-4.79,13.4-7.11,1.27-.66,1.77-1.56,1.79-2.98.05-4.36-.15-8.74.18-13.11.06-.87-.44-1.34-1.02-1.83-2.11-1.83-2.32-4.39-.55-6.29,1.51-1.65,4.38-1.62,5.97.05,1.72,1.8,1.56,4.41-.47,6.15-.72.63-1.04,1.25-1.05,2.18-.09,4.88-.29,9.76-.29,14.63.02,1.71-.67,2.52-2.11,3.25-4.91,2.5-9.75,5.13-14.63,7.69-.82.43-1.31.99-1.36,1.97-.21,4.99-.44,9.98-.72,14.97-.09,1.37.44,2.17,1.62,2.85,5.61,3.23,11.15,6.58,16.75,9.81,1.22.7,1.8,1.51,1.79,2.96-.06,6.03-.05,12.05.03,18.07.02,1.37-.49,2.2-1.66,2.87-4.68,2.67-9.31,5.43-13.98,8.13-.87.5-1.39,1.1-1.46,2.12-.12,1.33-.73,2.36-1.97,2.99-1.68.84-3.69.53-4.87-.75-1.28-1.37-1.59-3.25-.76-4.7,1.01-1.77,2.93-2.56,4.97-1.98.84.23,1.56.53,2.43.02,4.44-2.64,8.91-5.23,13.38-7.83.82-.47,1.19-1.11,1.19-2.08-.05-5.17-.06-10.34-.06-15.52,0-1.01-.38-1.71-1.27-2.23-5.57-3.28-11.15-6.58-16.71-9.89-.67-.4-1.24-.38-1.91.03-4.67,2.79-9.35,5.58-14.04,8.35-.88.53-1.42,1.19-1.59,2.26-.23,1.43-1.08,2.49-2.52,2.96-1.79.6-3.77.03-4.76-1.33-1.05-1.45-1.08-3.54-.06-4.94,1.04-1.43,2.9-2.04,4.73-1.45.93.32,1.71.6,2.7-.02,4.5-2.76,9.05-5.45,13.61-8.12.92-.53,1.4-1.19,1.46-2.27.26-5.05.58-10.09.9-15.12.08-1.1-.35-1.77-1.31-2.35-4.9-2.96-9.8-5.95-14.65-8.99-.87-.55-1.57-.47-2.38-.03-5.39,2.94-10.77,5.87-16.16,8.8-1.05.56-1.59,1.36-1.59,2.58.03,4.55-.02,9.09.02,13.64.02,1.68.4,1.86,2,1.08,2.72-1.3,5.42-2.62,8.15-3.89,1.04-.47,1.66-1.1,1.94-2.32.56-2.53,3.1-3.88,5.36-3.08,2.21.78,3.33,3.02,2.61,5.2-.72,2.18-3.17,3.36-5.57,2.49-.93-.32-1.68-.4-2.58.05-3.36,1.68-6.73,3.31-10.13,4.88-1.31.61-1.83,1.5-1.8,2.93.05,4.71.11,9.43-.03,14.14-.06,1.98.7,3.11,2.32,4.1,4.64,2.88,9.2,5.86,13.75,8.88,1.02.67,1.89.81,2.98.23,3.04-1.66,6.1-3.3,9.17-4.9.79-.43,1.08-1.02,1.17-1.91.24-2.44,2.33-4.15,4.53-3.81,2.43.38,4.01,2.65,3.48,4.97-.55,2.38-2.79,3.72-5.2,3.01-.96-.29-1.75-.21-2.61.24-3.05,1.65-6.12,3.27-9.19,4.87-.98.5-1.39,1.24-1.31,2.33.15,2.15.21,4.3.4,6.45.26,3.28.61,6.55.9,9.83.08.93.5,1.59,1.31,2.04,4.97,2.85,9.95,5.72,14.91,8.59.81.46,1.57.5,2.41.03,3.1-1.79,6.21-3.57,9.34-5.28,1.17-.66,1.92-1.45,2.2-2.82.26-1.36,1.13-2.35,2.56-2.65,1.98-.43,3.78.21,4.62,1.74.82,1.51.81,3.07-.2,4.5-1.02,1.46-2.79,2-4.73,1.27-1.16-.44-2.08-.31-3.07.27-2.4,1.4-4.84,2.76-7.23,4.17-1.48.88-1.46,1.34.05,2.23,4.13,2.38,8.3,4.71,12.42,7.11,1.08.63,2.04.7,3.17.06,4.46-2.52,8.93-4.97,13.41-7.42.84-.46,1.28-1.07,1.4-1.92.03-.18.03-.35.03-.55-.02-1.51-.03-3.02-.03-4.53v-50.29Z"
|
|
192
|
+
}),
|
|
193
|
+
/* @__PURE__ */ jsx("path", {
|
|
194
|
+
fill: "#00e4ff",
|
|
195
|
+
d: "M655.42,487.9c-1.16,1.43-1.05,3.68,0,5.11,1.05,1.45,3.16,2.2,5.05,1.53,1.14-.41,2.04-.26,3.07.26,2.88,1.45,5.8,2.85,8.74,4.21,1.17.53,1.68,1.31,1.66,2.64-.06,4.71-.05,9.43-.02,14.14,0,1.16-.29,2.08-1.33,2.75-4.59,2.91-9.19,5.87-13.75,8.85-.85.56-1.57.63-2.5.11-2.27-1.28-4.59-2.49-6.93-3.66-1.42-.72-2.47-1.53-2.81-3.28-.37-1.89-1.89-2.93-3.78-3.23-1.75-.27-3.08.58-4.1,1.91-1.24,1.6-1.25,3.4-.11,5.05,1.14,1.66,3.11,2.53,4.87,1.91,1.05-.37,1.86-.18,2.75.29,2.75,1.48,5.49,2.96,8.27,4.39.95.49,1.25,1.08,1.14,2.17-.44,4.75-.84,9.49-1.14,14.25-.09,1.53-.66,2.5-2,3.25-3.98,2.2-7.93,4.42-11.81,6.79-1.82,1.11-3.36,1.21-5.17.02-2.08-1.37-4.29-2.56-6.5-3.71-1.3-.67-2.09-1.53-2.61-2.93-.87-2.41-3.08-3.54-5.25-2.99-2.35.6-3.74,2.53-3.51,4.94.24,2.59,3.01,4.62,5.54,3.84,1.45-.44,2.61-.27,3.84.5,1.79,1.11,3.65,2.09,5.48,3.11,1.11.63,1.07,1.19,0,1.82-3.91,2.21-7.8,4.44-11.69,6.67-.6.34-1.14.35-1.77.02-4.42-2.43-8.86-4.85-13.3-7.25-.82-.44-1.04-1.13-1.04-1.98,0-5.42,0-10.86-.02-16.28v-21.09c0-7.37.02-14.75-.03-22.12,0-1.24.44-2.01,1.5-2.62,2.94-1.71,5.86-3.48,8.76-5.26,1.02-.63,1.92-.84,3.17-.47,2.32.7,4.52-.52,5.39-2.72.75-1.89-.17-4.24-2.11-5.42-1.77-1.07-4.26-.55-5.65,1.21-.24.31-.6.67-.6,1.01-.02,2.24-1.74,3.01-3.3,3.92-1.57.92-3.11,1.88-4.68,2.78-.67.38-1.36,1.3-2.08.9-.82-.46-.37-1.57-.37-2.38-.03-15.61.08-31.23-.11-46.86-.05-3.23.7-5.2,3.78-6.61,3.71-1.68,7.17-3.91,10.71-5.97.93-.55,1.71-.61,2.67-.06,4.5,2.52,9.03,5,13.56,7.48.95.52,1.42,1.19,1.42,2.3,0,3.86-.11,7.72-.34,11.57-.06.82-.47,1.36-.99,1.91-2.09,2.18-2.12,4.59-.15,6.44,1.89,1.79,4.47,1.71,6.23-.17,1.86-1.98,1.72-4.55-.38-6.47-.47-.44-.9-.84-.93-1.54-.14-3.3.11-6.58.32-9.87.09-1.36.96-.76,1.57-.44,3.05,1.65,5.97,3.6,9.14,4.93,3.11,1.31,3.89,3.34,3.62,6.48-.35,3.77-.31,7.58-.38,11.4-.02,1.14-.5,1.89-1.46,2.47-4.47,2.7-8.93,5.42-13.37,8.18-.99.63-1.8.63-2.84.06-4.13-2.26-8.3-4.47-12.48-6.62-1.11-.56-1.56-1.27-1.57-2.52-.03-4.2.2-8.41-.15-12.6-.09-1.02.72-1.46,1.27-2.09,1.43-1.63,1.68-3.72.61-5.34-1.21-1.85-3.3-2.58-5.34-1.88-2.87.96-3.89,4.71-1.69,6.94,1.31,1.34,1.59,2.73,1.56,4.44-.05,3.92.15,7.84-.02,11.75-.11,2.21.84,3.23,2.65,4.13,4.47,2.24,8.83,4.68,13.27,6.97,1.21.63,1.79,1.51,1.79,2.82.03,4.65.29,9.31.66,13.95.06.99-.58,1.39-1.28,1.8-5.52,3.25-11.03,6.56-16.59,9.76-1.16.67-1.79,1.43-1.8,2.81-.05,5.89.06,11.81-.34,17.7-.11,1.4.41,2.32,1.68,3.04,4.33,2.47,8.61,5.07,12.92,7.57,1.19.69,1.98,1.51,2.35,2.93.61,2.38,2.88,3.63,5.28,3.16,2.11-.41,3.8-2.65,3.6-4.75-.24-2.43-2.21-4.53-4.59-4.01-2.91.63-4.9-.78-7.08-2.03-2.81-1.6-5.57-3.3-8.41-4.87-1.22-.69-1.75-1.56-1.71-3.01.12-4.7-.08-9.41.32-14.13.08-.95.38-1.57,1.22-2.04,5.05-2.94,10.09-5.92,15.12-8.9.88-.52,1.68-.49,2.55.03,4.27,2.59,8.56,5.16,12.85,7.72.79.47,1.17,1.11,1.4,2.01.67,2.64,3.11,3.98,5.66,3.23,2.18-.63,3.65-3.22,3.04-5.4-.67-2.47-3.07-3.94-5.57-3.16-1.42.43-2.46.14-3.65-.58-3.78-2.32-7.58-4.58-11.43-6.79-1.21-.69-1.68-1.56-1.79-2.98-.38-4.64-.5-9.29-.78-13.93-.05-.85.2-1.4.9-1.85,4.7-2.88,9.38-5.78,14.05-8.68.64-.4,1.22-.46,1.91-.08,5.08,2.79,10.18,5.55,15.27,8.28,1.24.66,1.8,1.56,1.74,3.01-.15,3.97-.21,7.93-.27,11.9-.02,1.13-.31,1.63-1.51,1.04-2.44-1.21-4.9-2.38-7.37-3.52-.84-.4-1.3-.98-1.6-1.85-.95-2.79-2.53-3.84-5.37-3.54-.96.11-1.57-.05-1.79-1.11.18,1.27-.11,2.17-.87,3.08Z"
|
|
196
|
+
})
|
|
197
|
+
]
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
//#endregion
|
|
201
|
+
export { ChatGptSignInScreen };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as CodeBlockCopyButton, c as CodeBlockLanguageSelector, d as CodeBlockLanguageSelectorTrigger, f as CodeBlockLanguageSelectorValue, h as CODE_BLOCK_LANGUAGES, i as CodeBlockContent, l as CodeBlockLanguageSelectorContent, m as highlightCode, n as CodeBlockActions, o as CodeBlockFilename, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock, u as CodeBlockLanguageSelectorItem } from "../CodeBlock-
|
|
1
|
+
import { a as CodeBlockCopyButton, c as CodeBlockLanguageSelector, d as CodeBlockLanguageSelectorTrigger, f as CodeBlockLanguageSelectorValue, h as CODE_BLOCK_LANGUAGES, i as CodeBlockContent, l as CodeBlockLanguageSelectorContent, m as highlightCode, n as CodeBlockActions, o as CodeBlockFilename, p as CodeBlockTitle, r as CodeBlockContainer, s as CodeBlockHeader, t as CodeBlock, u as CodeBlockLanguageSelectorItem } from "../CodeBlock-D9koxDA7.js";
|
|
2
2
|
export { CODE_BLOCK_LANGUAGES, CodeBlock, CodeBlockActions, CodeBlockContainer, CodeBlockContent, CodeBlockCopyButton, CodeBlockFilename, CodeBlockHeader, CodeBlockLanguageSelector, CodeBlockLanguageSelectorContent, CodeBlockLanguageSelectorItem, CodeBlockLanguageSelectorTrigger, CodeBlockLanguageSelectorValue, CodeBlockTitle, highlightCode };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CollapsiblePanel, CollapsibleRoot, CollapsibleTrigger } from "./Collapsible.js";
|
|
2
2
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
3
|
-
import { a as CheckIcon, c as ChevronRightIcon,
|
|
3
|
+
import { a as CheckIcon, c as ChevronRightIcon, h as FileIcon, l as CopyIcon } from "../icons-BAlTbWWP.js";
|
|
4
4
|
import { Button } from "./Button.js";
|
|
5
5
|
import { Tooltip, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipTrigger } from "./Tooltip.js";
|
|
6
6
|
import { Avatar } from "./Avatar.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as CheckIcon, c as ChevronRightIcon, u as DotIcon } from "../icons-
|
|
1
|
+
import { a as CheckIcon, c as ChevronRightIcon, u as DotIcon } from "../icons-BAlTbWWP.js";
|
|
2
2
|
import "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { ContextMenu as ContextMenu$1 } from "@base-ui/react/context-menu";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
-
import { d as DownloadIcon, t as ArrowDownIcon } from "../icons-
|
|
2
|
+
import { d as DownloadIcon, t as ArrowDownIcon } from "../icons-BAlTbWWP.js";
|
|
3
3
|
import { Button } from "./Button.js";
|
|
4
4
|
import { MessageScroller, MessageScrollerButton, MessageScrollerContent, MessageScrollerItem, MessageScrollerProvider, MessageScrollerViewport } from "./MessageScroller.js";
|
|
5
5
|
import * as React from "react";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
-
import { a as CheckIcon,
|
|
2
|
+
import { a as CheckIcon, l as CopyIcon, m as EyeOffIcon, p as EyeIcon } from "../icons-BAlTbWWP.js";
|
|
3
3
|
import { Button } from "./Button.js";
|
|
4
4
|
import { Tooltip, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipTrigger } from "./Tooltip.js";
|
|
5
5
|
import { Badge } from "./Badge.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as FileTreeIcon, i as FileTreeFolder, n as FileTreeActions, o as FileTreeName, r as FileTreeFile, t as FileTree } from "../FileTree-
|
|
1
|
+
import { a as FileTreeIcon, i as FileTreeFolder, n as FileTreeActions, o as FileTreeName, r as FileTreeFile, t as FileTree } from "../FileTree-BdK93Uuu.js";
|
|
2
2
|
export { FileTree, FileTreeActions, FileTreeFile, FileTreeFolder, FileTreeIcon, FileTreeName };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { O as PlusIcon, P as WarningIcon, a as CheckIcon, j as SpinnerIcon } from "../icons-BAlTbWWP.js";
|
|
2
2
|
import { Button } from "./Button.js";
|
|
3
3
|
import { MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRoot, MenuShortcut, MenuTrigger } from "./Menu.js";
|
|
4
4
|
import { getMcpServerIconSrc } from "../utils/mcp-server-catalog.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as CheckIcon, c as ChevronRightIcon, u as DotIcon } from "../icons-
|
|
1
|
+
import { a as CheckIcon, c as ChevronRightIcon, u as DotIcon } from "../icons-BAlTbWWP.js";
|
|
2
2
|
import "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { Menu } from "@base-ui/react/menu";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
-
import {
|
|
2
|
+
import { h as FileIcon, n as ArrowLeftIcon, r as ArrowRightIcon } from "../icons-BAlTbWWP.js";
|
|
3
3
|
import { Button } from "./Button.js";
|
|
4
4
|
import { Tooltip, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipTrigger } from "./Tooltip.js";
|
|
5
5
|
import { t as AttachmentPreview } from "../attachment-preview-ChtC3HiU.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
-
import { t as ArrowDownIcon } from "../icons-
|
|
2
|
+
import { t as ArrowDownIcon } from "../icons-BAlTbWWP.js";
|
|
3
3
|
import { Button } from "./Button.js";
|
|
4
4
|
import "react";
|
|
5
5
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -41,7 +41,7 @@ function MessageScrollerItem({ className, scrollAnchor = false, ...props }) {
|
|
|
41
41
|
...props
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
|
-
function MessageScrollerButton({ className, children, color = "neutral", direction = "end", render, size = "icon-sm", variant = "
|
|
44
|
+
function MessageScrollerButton({ className, children, color = "neutral", direction = "end", render, size = "icon-sm", variant = "normal", ...props }) {
|
|
45
45
|
return /* @__PURE__ */ jsx(MessageScroller$1.Button, {
|
|
46
46
|
"data-slot": "message-scroller-button",
|
|
47
47
|
direction,
|
|
@@ -1,306 +1,2 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
import { k as SearchIcon, o as ChevronDownIcon } from "../icons-BCNawx-T.js";
|
|
3
|
-
import { Button } from "./Button.js";
|
|
4
|
-
import { Dialog, DialogBackdrop, DialogPopup, DialogPortal, DialogTitle, DialogTrigger } from "./Dialog.js";
|
|
5
|
-
import * as React from "react";
|
|
6
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
-
//#region src/components/_internal/provider-logos.tsx
|
|
8
|
-
function Svg({ children, size = 16, ...props }) {
|
|
9
|
-
return /* @__PURE__ */ jsx("svg", {
|
|
10
|
-
width: size,
|
|
11
|
-
height: size,
|
|
12
|
-
viewBox: "0 0 24 24",
|
|
13
|
-
fill: "currentColor",
|
|
14
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
15
|
-
"aria-hidden": "true",
|
|
16
|
-
focusable: "false",
|
|
17
|
-
...props,
|
|
18
|
-
children
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
const OpenAILogo = (props) => /* @__PURE__ */ jsx(Svg, {
|
|
22
|
-
...props,
|
|
23
|
-
children: /* @__PURE__ */ jsx("path", { d: "M22.28 9.81a5.99 5.99 0 0 0-.52-4.91 6.05 6.05 0 0 0-6.52-2.9A6.05 6.05 0 0 0 10.58 0a6.05 6.05 0 0 0-5.77 4.18 5.99 5.99 0 0 0-4 2.9 6.05 6.05 0 0 0 .74 7.09 5.99 5.99 0 0 0 .52 4.91 6.05 6.05 0 0 0 6.52 2.9A5.99 5.99 0 0 0 13.25 24a6.05 6.05 0 0 0 5.77-4.19 5.99 5.99 0 0 0 4-2.9 6.05 6.05 0 0 0-.74-7.1ZM13.25 22.44a4.48 4.48 0 0 1-2.88-1.04l.14-.08 4.79-2.76a.78.78 0 0 0 .39-.68v-6.75l2.02 1.17c.02 0 .04.03.04.05v5.58a4.5 4.5 0 0 1-4.5 4.5ZM3.57 18.3a4.5 4.5 0 0 1-.54-3.03l.14.09 4.79 2.76a.78.78 0 0 0 .78 0l5.85-3.37v2.33c0 .02 0 .04-.03.06L9.72 19.94a4.5 4.5 0 0 1-6.15-1.64ZM2.31 7.88a4.48 4.48 0 0 1 2.35-1.97v5.69a.78.78 0 0 0 .39.67l5.83 3.36-2.02 1.17a.07.07 0 0 1-.07 0l-4.83-2.8A4.5 4.5 0 0 1 2.3 7.9Zm16.64 3.87L13.1 8.37l2.02-1.17c.02 0 .05-.01.07 0l4.83 2.8a4.5 4.5 0 0 1-.67 8.11V12.4a.77.77 0 0 0-.4-.66Zm2-3.03-.14-.09-4.78-2.78a.78.78 0 0 0-.79 0L9.4 9.25V6.92c0-.02 0-.04.02-.05l4.83-2.79a4.5 4.5 0 0 1 6.68 4.66Zm-12.68 4.17-2.02-1.17a.07.07 0 0 1-.04-.06V6.1a4.5 4.5 0 0 1 7.38-3.45l-.14.08L8.66 5.5a.78.78 0 0 0-.4.68v6.74Zm1.1-2.36 2.6-1.5 2.61 1.5v3l-2.6 1.5-2.6-1.5Z" })
|
|
24
|
-
});
|
|
25
|
-
const AnthropicLogo = (props) => /* @__PURE__ */ jsxs(Svg, {
|
|
26
|
-
...props,
|
|
27
|
-
children: [/* @__PURE__ */ jsx("path", { d: "M13.83 4H17.3L24 20h-3.47l-1.37-3.52h-7L10.82 20H7.36ZM13.25 13.58h4.8l-2.4-6.15Z" }), /* @__PURE__ */ jsx("path", { d: "M0 4h3.47l6.7 16H6.7Z" })]
|
|
28
|
-
});
|
|
29
|
-
const GoogleLogo = (props) => /* @__PURE__ */ jsx(Svg, {
|
|
30
|
-
...props,
|
|
31
|
-
children: /* @__PURE__ */ jsx("path", { d: "M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm0 2a8 8 0 0 1 5.34 2.05l-2.2 2.2A5 5 0 1 0 17 12.6h-5v-2.6h7.9A8 8 0 0 1 12 20 8 8 0 0 1 12 4Z" })
|
|
32
|
-
});
|
|
33
|
-
const MetaLogo = (props) => /* @__PURE__ */ jsx(Svg, {
|
|
34
|
-
...props,
|
|
35
|
-
children: /* @__PURE__ */ jsx("path", { d: "M2 12.5c0-3.5 1.8-6.5 4.4-6.5 1.8 0 3.2 1.3 4.9 3.8 2.2 3.2 3.3 5 4.6 5 1 0 1.5-.8 1.5-2.3 0-2.1-1-4.3-2.7-4.3-1 0-2 .6-3.2 2l-1.3-1.7C11.5 6.8 12.9 6 14.5 6c3 0 5.5 3.3 5.5 7 0 3.3-1.6 5-3.8 5-2.3 0-3.6-1.6-6-5.3C8.9 10.4 8 9.2 6.8 9.2 5.4 9.2 4.3 10.6 4.3 13c0 1.8.5 3 1.3 3 .6 0 1.1-.3 1.8-1.1l1.3 1.7C7.6 17.6 6.3 18 5.3 18 3.3 18 2 16 2 12.5Z" })
|
|
36
|
-
});
|
|
37
|
-
const KimiLogo = (props) => /* @__PURE__ */ jsxs(Svg, {
|
|
38
|
-
...props,
|
|
39
|
-
children: [/* @__PURE__ */ jsx("circle", {
|
|
40
|
-
cx: "12",
|
|
41
|
-
cy: "12",
|
|
42
|
-
r: "9.5",
|
|
43
|
-
fill: "none",
|
|
44
|
-
stroke: "currentColor",
|
|
45
|
-
strokeWidth: "1.5"
|
|
46
|
-
}), /* @__PURE__ */ jsx("path", {
|
|
47
|
-
d: "M8 7.5v9M8 12l4.5-4.5M8 12l5 4.5M14 7.5h2.5v9H14z",
|
|
48
|
-
fill: "none",
|
|
49
|
-
stroke: "currentColor",
|
|
50
|
-
strokeWidth: "1.5",
|
|
51
|
-
strokeLinecap: "round",
|
|
52
|
-
strokeLinejoin: "round"
|
|
53
|
-
})]
|
|
54
|
-
});
|
|
55
|
-
const FallbackLogo = (props) => /* @__PURE__ */ jsx(Svg, {
|
|
56
|
-
...props,
|
|
57
|
-
children: /* @__PURE__ */ jsx("circle", {
|
|
58
|
-
cx: "12",
|
|
59
|
-
cy: "12",
|
|
60
|
-
r: "3"
|
|
61
|
-
})
|
|
62
|
-
});
|
|
63
|
-
/**
|
|
64
|
-
* Resolves a provider string to its logo component.
|
|
65
|
-
* Unknown providers get a neutral dot fallback.
|
|
66
|
-
*/
|
|
67
|
-
function ProviderLogo({ provider, ...props }) {
|
|
68
|
-
switch (provider.toLowerCase()) {
|
|
69
|
-
case "openai": return /* @__PURE__ */ jsx(OpenAILogo, { ...props });
|
|
70
|
-
case "anthropic": return /* @__PURE__ */ jsx(AnthropicLogo, { ...props });
|
|
71
|
-
case "google": return /* @__PURE__ */ jsx(GoogleLogo, { ...props });
|
|
72
|
-
case "meta": return /* @__PURE__ */ jsx(MetaLogo, { ...props });
|
|
73
|
-
case "kimi": return /* @__PURE__ */ jsx(KimiLogo, { ...props });
|
|
74
|
-
default: return /* @__PURE__ */ jsx(FallbackLogo, { ...props });
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
//#endregion
|
|
78
|
-
//#region src/components/ModelSelector.tsx
|
|
79
|
-
const ModelSelectorContext = React.createContext(null);
|
|
80
|
-
function useModelSelectorContext() {
|
|
81
|
-
const ctx = React.useContext(ModelSelectorContext);
|
|
82
|
-
if (!ctx) throw new Error("ModelSelector subcomponents must be used inside <ModelSelector>.");
|
|
83
|
-
return ctx;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* A searchable model picker. Click the trigger to open a dialog containing a
|
|
87
|
-
* search input and a grouped list of available models.
|
|
88
|
-
*
|
|
89
|
-
* Built internally for AI model selection. Use it when users choose one model
|
|
90
|
-
* from a grouped provider list. Do not use it as a general command palette or
|
|
91
|
-
* multiselect; use Combobox or a dedicated component for that.
|
|
92
|
-
*
|
|
93
|
-
* Sigvelo changes: composes the design-system Dialog and Button, filters item
|
|
94
|
-
* children locally, and maps provider logos plus listbox styling to Sigvelo
|
|
95
|
-
* CSS tokens.
|
|
96
|
-
*
|
|
97
|
-
* The dialog owns focus while open, the list uses `role="listbox"`, and items
|
|
98
|
-
* use `role="option"` with `aria-selected`. Styling consumes surface, border,
|
|
99
|
-
* spacing, radius, focus, and typography tokens. Add provider/item affordances
|
|
100
|
-
* here when they need to be shared.
|
|
101
|
-
*
|
|
102
|
-
* @example
|
|
103
|
-
* ```tsx
|
|
104
|
-
* <ModelSelector>
|
|
105
|
-
* <ModelSelectorTrigger>
|
|
106
|
-
* <ModelSelectorLogo provider="anthropic" />
|
|
107
|
-
* <ModelSelectorName>Claude Opus 4.6</ModelSelectorName>
|
|
108
|
-
* </ModelSelectorTrigger>
|
|
109
|
-
* <ModelSelectorContent>
|
|
110
|
-
* <ModelSelectorDialog>
|
|
111
|
-
* <ModelSelectorInput placeholder="Search models…" />
|
|
112
|
-
* <ModelSelectorList>
|
|
113
|
-
* <ModelSelectorGroup label="Anthropic">
|
|
114
|
-
* <ModelSelectorItem value="claude-opus-4-6" onSelect={…}>
|
|
115
|
-
* <ModelSelectorLogo provider="anthropic" />
|
|
116
|
-
* <ModelSelectorName>Claude Opus 4.6</ModelSelectorName>
|
|
117
|
-
* </ModelSelectorItem>
|
|
118
|
-
* </ModelSelectorGroup>
|
|
119
|
-
* </ModelSelectorList>
|
|
120
|
-
* </ModelSelectorDialog>
|
|
121
|
-
* </ModelSelectorContent>
|
|
122
|
-
* </ModelSelector>
|
|
123
|
-
* ```
|
|
124
|
-
*/
|
|
125
|
-
function ModelSelector({ open, defaultOpen = false, onOpenChange, children, className, ref, ...props }) {
|
|
126
|
-
const [internalOpen, setInternalOpen] = React.useState(defaultOpen);
|
|
127
|
-
const [query, setQuery] = React.useState("");
|
|
128
|
-
const isControlled = open !== void 0;
|
|
129
|
-
const currentOpen = isControlled ? open : internalOpen;
|
|
130
|
-
const handleOpenChange = React.useCallback((next) => {
|
|
131
|
-
if (!isControlled) setInternalOpen(next);
|
|
132
|
-
onOpenChange?.(next);
|
|
133
|
-
if (!next) setQuery("");
|
|
134
|
-
}, [isControlled, onOpenChange]);
|
|
135
|
-
const onSelectItem = React.useCallback(() => {
|
|
136
|
-
handleOpenChange(false);
|
|
137
|
-
}, [handleOpenChange]);
|
|
138
|
-
const ctxValue = React.useMemo(() => ({
|
|
139
|
-
query,
|
|
140
|
-
setQuery,
|
|
141
|
-
onSelectItem
|
|
142
|
-
}), [query, onSelectItem]);
|
|
143
|
-
return /* @__PURE__ */ jsx(ModelSelectorContext.Provider, {
|
|
144
|
-
value: ctxValue,
|
|
145
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
146
|
-
ref,
|
|
147
|
-
className: cx("model-selector", className),
|
|
148
|
-
...props,
|
|
149
|
-
children: /* @__PURE__ */ jsx(Dialog, {
|
|
150
|
-
open: currentOpen,
|
|
151
|
-
onOpenChange: handleOpenChange,
|
|
152
|
-
children
|
|
153
|
-
})
|
|
154
|
-
})
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
function ModelSelectorTrigger({ className, children, ...props }) {
|
|
158
|
-
return /* @__PURE__ */ jsx(DialogTrigger, { render: /* @__PURE__ */ jsxs(Button, {
|
|
159
|
-
variant: "outline",
|
|
160
|
-
color: "neutral",
|
|
161
|
-
className: cx("model-selector__trigger", className),
|
|
162
|
-
...props,
|
|
163
|
-
children: [children, /* @__PURE__ */ jsx("span", {
|
|
164
|
-
className: "model-selector__trigger-chevron",
|
|
165
|
-
"aria-hidden": "true",
|
|
166
|
-
children: /* @__PURE__ */ jsx(ChevronDownIcon, {})
|
|
167
|
-
})]
|
|
168
|
-
}) });
|
|
169
|
-
}
|
|
170
|
-
function ModelSelectorContent({ children, title = "Model Selector", ...props }) {
|
|
171
|
-
return /* @__PURE__ */ jsxs(DialogPortal, { children: [/* @__PURE__ */ jsx(DialogBackdrop, {}), /* @__PURE__ */ jsxs(DialogPopup, {
|
|
172
|
-
...props,
|
|
173
|
-
children: [/* @__PURE__ */ jsx(DialogTitle, {
|
|
174
|
-
className: "model-selector__title",
|
|
175
|
-
children: title
|
|
176
|
-
}), children]
|
|
177
|
-
})] });
|
|
178
|
-
}
|
|
179
|
-
function ModelSelectorDialog({ className, children, ref, ...props }) {
|
|
180
|
-
return /* @__PURE__ */ jsx("div", {
|
|
181
|
-
ref,
|
|
182
|
-
className: cx("model-selector__dialog", className),
|
|
183
|
-
...props,
|
|
184
|
-
children
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
function ModelSelectorInput({ className, placeholder = "Search models…", ref, ...props }) {
|
|
188
|
-
const { query, setQuery } = useModelSelectorContext();
|
|
189
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
190
|
-
className: "model-selector__search",
|
|
191
|
-
children: [/* @__PURE__ */ jsx("span", {
|
|
192
|
-
className: "model-selector__search-icon",
|
|
193
|
-
"aria-hidden": "true",
|
|
194
|
-
children: /* @__PURE__ */ jsx(SearchIcon, {})
|
|
195
|
-
}), /* @__PURE__ */ jsx("input", {
|
|
196
|
-
ref,
|
|
197
|
-
type: "search",
|
|
198
|
-
value: query,
|
|
199
|
-
onChange: (e) => setQuery(e.target.value),
|
|
200
|
-
placeholder,
|
|
201
|
-
className: cx("model-selector__input", className),
|
|
202
|
-
autoFocus: true,
|
|
203
|
-
...props
|
|
204
|
-
})]
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
function ModelSelectorList({ className, children, ref, ...props }) {
|
|
208
|
-
return /* @__PURE__ */ jsx("div", {
|
|
209
|
-
ref,
|
|
210
|
-
role: "listbox",
|
|
211
|
-
className: cx("model-selector__list", className),
|
|
212
|
-
...props,
|
|
213
|
-
children
|
|
214
|
-
});
|
|
215
|
-
}
|
|
216
|
-
function ModelSelectorGroup({ className, label, children, ref, ...props }) {
|
|
217
|
-
const { query } = useModelSelectorContext();
|
|
218
|
-
const childArray = React.Children.toArray(children).filter((child) => React.isValidElement(child));
|
|
219
|
-
const q = query.trim().toLowerCase();
|
|
220
|
-
const filtered = q ? childArray.filter((child) => {
|
|
221
|
-
const value = String(child.props.value ?? "").toLowerCase();
|
|
222
|
-
const keywords = String(child.props.keywords ?? "").toLowerCase();
|
|
223
|
-
return value.includes(q) || keywords.includes(q);
|
|
224
|
-
}) : childArray;
|
|
225
|
-
if (filtered.length === 0) return null;
|
|
226
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
227
|
-
ref,
|
|
228
|
-
role: "group",
|
|
229
|
-
"aria-label": label,
|
|
230
|
-
className: cx("model-selector__group", className),
|
|
231
|
-
...props,
|
|
232
|
-
children: [/* @__PURE__ */ jsx("div", {
|
|
233
|
-
className: "model-selector__group-label",
|
|
234
|
-
children: label
|
|
235
|
-
}), filtered]
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
function ModelSelectorItem({ className, value, keywords, selected, onSelect, children, onClick, ref, ...props }) {
|
|
239
|
-
const { onSelectItem } = useModelSelectorContext();
|
|
240
|
-
const handleClick = (e) => {
|
|
241
|
-
onSelect?.(value);
|
|
242
|
-
onSelectItem();
|
|
243
|
-
onClick?.(e);
|
|
244
|
-
};
|
|
245
|
-
return /* @__PURE__ */ jsx("button", {
|
|
246
|
-
ref,
|
|
247
|
-
type: "button",
|
|
248
|
-
role: "option",
|
|
249
|
-
"aria-selected": selected,
|
|
250
|
-
"data-selected": selected ? "" : void 0,
|
|
251
|
-
className: cx("model-selector__item", className),
|
|
252
|
-
onClick: handleClick,
|
|
253
|
-
...props,
|
|
254
|
-
children
|
|
255
|
-
});
|
|
256
|
-
}
|
|
257
|
-
function ModelSelectorEmpty({ className, children = "No models found", ref, ...props }) {
|
|
258
|
-
return /* @__PURE__ */ jsx("div", {
|
|
259
|
-
ref,
|
|
260
|
-
className: cx("model-selector__empty", className),
|
|
261
|
-
...props,
|
|
262
|
-
children
|
|
263
|
-
});
|
|
264
|
-
}
|
|
265
|
-
function ModelSelectorSeparator({ className, ref, ...props }) {
|
|
266
|
-
return /* @__PURE__ */ jsx("hr", {
|
|
267
|
-
ref,
|
|
268
|
-
className: cx("model-selector__separator", className),
|
|
269
|
-
...props
|
|
270
|
-
});
|
|
271
|
-
}
|
|
272
|
-
function ModelSelectorLogo({ className, provider, ...props }) {
|
|
273
|
-
return /* @__PURE__ */ jsx("span", {
|
|
274
|
-
className: cx("model-selector__logo", className),
|
|
275
|
-
children: /* @__PURE__ */ jsx(ProviderLogo, {
|
|
276
|
-
provider,
|
|
277
|
-
...props
|
|
278
|
-
})
|
|
279
|
-
});
|
|
280
|
-
}
|
|
281
|
-
function ModelSelectorLogoGroup({ className, children, ref, ...props }) {
|
|
282
|
-
return /* @__PURE__ */ jsx("div", {
|
|
283
|
-
ref,
|
|
284
|
-
className: cx("model-selector__logo-group", className),
|
|
285
|
-
...props,
|
|
286
|
-
children
|
|
287
|
-
});
|
|
288
|
-
}
|
|
289
|
-
function ModelSelectorName({ className, children, ref, ...props }) {
|
|
290
|
-
return /* @__PURE__ */ jsx("span", {
|
|
291
|
-
ref,
|
|
292
|
-
className: cx("model-selector__name", className),
|
|
293
|
-
...props,
|
|
294
|
-
children
|
|
295
|
-
});
|
|
296
|
-
}
|
|
297
|
-
function ModelSelectorShortcut({ className, children, ref, ...props }) {
|
|
298
|
-
return /* @__PURE__ */ jsx("kbd", {
|
|
299
|
-
ref,
|
|
300
|
-
className: cx("model-selector__shortcut", className),
|
|
301
|
-
...props,
|
|
302
|
-
children
|
|
303
|
-
});
|
|
304
|
-
}
|
|
305
|
-
//#endregion
|
|
1
|
+
import { a as ModelSelectorGroup, c as ModelSelectorList, d as ModelSelectorName, f as ModelSelectorSeparator, i as ModelSelectorEmpty, l as ModelSelectorLogo, m as ModelSelectorTrigger, n as ModelSelectorContent, o as ModelSelectorInput, p as ModelSelectorShortcut, r as ModelSelectorDialog, s as ModelSelectorItem, t as ModelSelector, u as ModelSelectorLogoGroup } from "../ModelSelector-MQvK-pNb.js";
|
|
306
2
|
export { ModelSelector, ModelSelectorContent, ModelSelectorDialog, ModelSelectorEmpty, ModelSelectorGroup, ModelSelectorInput, ModelSelectorItem, ModelSelectorList, ModelSelectorLogo, ModelSelectorLogoGroup, ModelSelectorName, ModelSelectorSeparator, ModelSelectorShortcut, ModelSelectorTrigger };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { o as ChevronDownIcon } from "../icons-
|
|
1
|
+
import { o as ChevronDownIcon } from "../icons-BAlTbWWP.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { NavigationMenu as NavigationMenu$1 } from "@base-ui/react/navigation-menu";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
2
|
-
import {
|
|
2
|
+
import { C as MonitorIcon, E as PencilIcon, I as XIcon, M as SquareIcon, O as PlusIcon, P as WarningIcon, h as FileIcon, i as ArrowUpIcon, j as SpinnerIcon, o as ChevronDownIcon, w as PaperclipIcon } from "../icons-BAlTbWWP.js";
|
|
3
3
|
import { Button } from "./Button.js";
|
|
4
4
|
import { Tooltip, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipTrigger } from "./Tooltip.js";
|
|
5
5
|
import { t as AttachmentPreview } from "../attachment-preview-ChtC3HiU.js";
|
package/dist/components/Queue.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CollapsiblePanel, CollapsibleRoot, CollapsibleTrigger } from "./Collapsible.js";
|
|
2
2
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
3
|
-
import { a as CheckIcon, c as ChevronRightIcon,
|
|
3
|
+
import { a as CheckIcon, c as ChevronRightIcon, h as FileIcon, u as DotIcon } from "../icons-BAlTbWWP.js";
|
|
4
4
|
import { Button } from "./Button.js";
|
|
5
5
|
import { Badge } from "./Badge.js";
|
|
6
6
|
import { ScrollArea } from "./ScrollArea.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CollapsiblePanel, CollapsibleRoot, CollapsibleTrigger } from "./Collapsible.js";
|
|
2
2
|
import { t as cx } from "../class-names-9UtZwb0J.js";
|
|
3
|
-
import { c as ChevronRightIcon } from "../icons-
|
|
3
|
+
import { c as ChevronRightIcon } from "../icons-BAlTbWWP.js";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
6
|
import { cjk } from "@streamdown/cjk";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as CheckIcon, i as ArrowUpIcon, t as ArrowDownIcon } from "../icons-
|
|
1
|
+
import { a as CheckIcon, i as ArrowUpIcon, t as ArrowDownIcon } from "../icons-BAlTbWWP.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { Select as Select$1 } from "@base-ui/react/select";
|