@tutti-os/agent-gui 0.0.49 → 0.0.51
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/agent-conversation/index.d.ts +5 -3
- package/dist/agent-conversation/index.js +6 -6
- package/dist/agent-message-center/index.d.ts +185 -4
- package/dist/agent-message-center/index.js +126 -60
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/{agentConversationVM-DSXrFL9v.d.ts → agentConversationVM-Qbz9GBwR.d.ts} +25 -0
- package/dist/{agentGuiNodeTypes-Bp1G8pOj.d.ts → agentGuiNodeTypes-wzOITHRW.d.ts} +1 -1
- package/dist/app/renderer/agentactivity.css +426 -4
- package/dist/{chunk-XRJZCEOX.js → chunk-23YM25SG.js} +1764 -594
- package/dist/chunk-23YM25SG.js.map +1 -0
- package/dist/{chunk-AKK7UOAS.js → chunk-5Y3PC7HP.js} +9 -4
- package/dist/chunk-5Y3PC7HP.js.map +1 -0
- package/dist/{chunk-U6JWW45G.js → chunk-66EQ6EQO.js} +1 -1
- package/dist/chunk-66EQ6EQO.js.map +1 -0
- package/dist/{chunk-Q3MOU4CD.js → chunk-ARCM7YB2.js} +2 -2
- package/dist/{chunk-5HJWT6YN.js → chunk-BQVYICR7.js} +5 -5
- package/dist/{chunk-TTDBLIQ3.js → chunk-DPG2J7N5.js} +2 -2
- package/dist/{chunk-FSRS2JFR.js → chunk-FYVVHRLZ.js} +2 -2
- package/dist/{chunk-AYEYXKLF.js → chunk-HDBKB5RA.js} +2 -2
- package/dist/{chunk-A2EN24OI.js → chunk-M7GNA2WD.js} +5 -5
- package/dist/{chunk-QGBIGRZA.js → chunk-OBFDA7RG.js} +14 -2
- package/dist/chunk-OBFDA7RG.js.map +1 -0
- package/dist/{chunk-RJR2OZ6T.js → chunk-RKZMETSQ.js} +189 -187
- package/dist/chunk-RKZMETSQ.js.map +1 -0
- package/dist/{chunk-6KQHNUR5.js → chunk-UUY5VEK4.js} +2 -2
- package/dist/{chunk-77UR4G7P.js → chunk-Y7ZVTWMZ.js} +2 -2
- package/dist/{chunk-K6SRLYC3.js → chunk-ZTSS2NU2.js} +17 -1
- package/dist/chunk-ZTSS2NU2.js.map +1 -0
- package/dist/context-mention-palette/index.js +7 -7
- package/dist/i18n/index.d.ts +16 -0
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +50 -3
- package/dist/index.js +519 -29
- package/dist/index.js.map +1 -1
- package/dist/plan-decision-ops.d.ts +1 -1
- package/dist/queued-prompt-runtime.d.ts +2 -2
- package/dist/workbench/contribution.d.ts +5 -1
- package/dist/workbench/contribution.js +4 -2
- package/dist/workbench/index.js +5 -5
- package/dist/workbench/launch.d.ts +4 -0
- package/dist/workbench/launch.js +1 -1
- package/dist/workbench/sessionTitle.js +3 -3
- package/dist/workspace-agent-generated-files.js +3 -3
- package/package.json +14 -14
- package/dist/chunk-AKK7UOAS.js.map +0 -1
- package/dist/chunk-K6SRLYC3.js.map +0 -1
- package/dist/chunk-QGBIGRZA.js.map +0 -1
- package/dist/chunk-RJR2OZ6T.js.map +0 -1
- package/dist/chunk-U6JWW45G.js.map +0 -1
- package/dist/chunk-XRJZCEOX.js.map +0 -1
- /package/dist/{chunk-Q3MOU4CD.js.map → chunk-ARCM7YB2.js.map} +0 -0
- /package/dist/{chunk-5HJWT6YN.js.map → chunk-BQVYICR7.js.map} +0 -0
- /package/dist/{chunk-TTDBLIQ3.js.map → chunk-DPG2J7N5.js.map} +0 -0
- /package/dist/{chunk-FSRS2JFR.js.map → chunk-FYVVHRLZ.js.map} +0 -0
- /package/dist/{chunk-AYEYXKLF.js.map → chunk-HDBKB5RA.js.map} +0 -0
- /package/dist/{chunk-A2EN24OI.js.map → chunk-M7GNA2WD.js.map} +0 -0
- /package/dist/{chunk-6KQHNUR5.js.map → chunk-UUY5VEK4.js.map} +0 -0
- /package/dist/{chunk-77UR4G7P.js.map → chunk-Y7ZVTWMZ.js.map} +0 -0
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getOptionalAgentHostApi,
|
|
3
3
|
useOptionalAgentHostApi
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-66EQ6EQO.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveAgentWorkspaceFileVisualKind
|
|
7
7
|
} from "./chunk-PJP5BUU6.js";
|
|
8
8
|
import {
|
|
9
9
|
translate,
|
|
10
10
|
useTranslation
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-Y7ZVTWMZ.js";
|
|
12
|
+
|
|
13
|
+
// app/renderer/lib/utils.ts
|
|
14
|
+
import { clsx } from "clsx";
|
|
15
|
+
import { twMerge } from "tailwind-merge";
|
|
16
|
+
function cn(...inputs) {
|
|
17
|
+
return twMerge(clsx(inputs));
|
|
18
|
+
}
|
|
12
19
|
|
|
13
20
|
// shared/agentMcpToolTarget.ts
|
|
14
21
|
function extractAgentMcpToolTarget({
|
|
@@ -276,13 +283,6 @@ import {
|
|
|
276
283
|
import { RotateCcwIcon, ZoomInIcon, ZoomOutIcon } from "lucide-react";
|
|
277
284
|
import Zoom from "react-medium-image-zoom";
|
|
278
285
|
|
|
279
|
-
// app/renderer/lib/utils.ts
|
|
280
|
-
import { clsx } from "clsx";
|
|
281
|
-
import { twMerge } from "tailwind-merge";
|
|
282
|
-
function cn(...inputs) {
|
|
283
|
-
return twMerge(clsx(inputs));
|
|
284
|
-
}
|
|
285
|
-
|
|
286
286
|
// shared/agentConversation/components/ConversationImageContextMenu.tsx
|
|
287
287
|
import {
|
|
288
288
|
useCallback,
|
|
@@ -3138,178 +3138,22 @@ var styles = {
|
|
|
3138
3138
|
messageFooter: "agent-gui-conversation__message-footer",
|
|
3139
3139
|
messageTimestamp: "agent-gui-conversation__message-timestamp",
|
|
3140
3140
|
messageCopyButton: "agent-gui-conversation__message-copy-button",
|
|
3141
|
+
userImageGrid: "agent-gui-conversation__user-image-grid",
|
|
3142
|
+
userImageThumbnail: "agent-gui-conversation__user-image-thumbnail",
|
|
3141
3143
|
userMessageBubble: "agent-gui-conversation__user-message-bubble",
|
|
3142
3144
|
assistantMarkdown: "agent-gui-conversation__assistant-markdown"
|
|
3143
3145
|
};
|
|
3144
3146
|
var AgentGUIConversation_styles_default = styles;
|
|
3145
3147
|
|
|
3146
|
-
// app/renderer/components/
|
|
3148
|
+
// app/renderer/components/ui/custom-scroll-area.tsx
|
|
3147
3149
|
import {
|
|
3148
3150
|
forwardRef,
|
|
3149
3151
|
useCallback as useCallback4,
|
|
3150
3152
|
useEffect as useEffect4,
|
|
3151
|
-
|
|
3152
|
-
useRef as useRef3
|
|
3153
|
-
} from "react";
|
|
3154
|
-
import {
|
|
3155
|
-
motion,
|
|
3156
|
-
useAnimation,
|
|
3157
|
-
useReducedMotion
|
|
3158
|
-
} from "framer-motion";
|
|
3159
|
-
import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
3160
|
-
var DOT_TRANSITION = {
|
|
3161
|
-
times: [0, 0.1, 0.1, 0.2, 0.5, 0.6, 0.6, 0.7],
|
|
3162
|
-
duration: 1.5
|
|
3163
|
-
};
|
|
3164
|
-
var DOT_VARIANTS = {
|
|
3165
|
-
normal: {
|
|
3166
|
-
opacity: 1
|
|
3167
|
-
},
|
|
3168
|
-
animate: (custom) => ({
|
|
3169
|
-
opacity: [1, 0, 0, 1, 1, 0, 0, 1],
|
|
3170
|
-
transition: {
|
|
3171
|
-
opacity: {
|
|
3172
|
-
...DOT_TRANSITION,
|
|
3173
|
-
times: DOT_TRANSITION.times.map(
|
|
3174
|
-
(time, index) => index === 2 || index === 3 || index === 6 || index === 7 ? time + custom * 0.1 : time
|
|
3175
|
-
)
|
|
3176
|
-
}
|
|
3177
|
-
}
|
|
3178
|
-
}),
|
|
3179
|
-
active: (custom) => ({
|
|
3180
|
-
opacity: [1, 0, 0, 1, 1, 0, 0, 1],
|
|
3181
|
-
transition: {
|
|
3182
|
-
opacity: {
|
|
3183
|
-
...DOT_TRANSITION,
|
|
3184
|
-
repeat: Infinity,
|
|
3185
|
-
times: DOT_TRANSITION.times.map(
|
|
3186
|
-
(time, index) => index === 2 || index === 3 || index === 6 || index === 7 ? time + custom * 0.1 : time
|
|
3187
|
-
)
|
|
3188
|
-
}
|
|
3189
|
-
}
|
|
3190
|
-
})
|
|
3191
|
-
};
|
|
3192
|
-
var MessageSquareMoreIcon = forwardRef(
|
|
3193
|
-
({
|
|
3194
|
-
active = false,
|
|
3195
|
-
onMouseEnter,
|
|
3196
|
-
onMouseLeave,
|
|
3197
|
-
className,
|
|
3198
|
-
size = 28,
|
|
3199
|
-
...props
|
|
3200
|
-
}, ref) => {
|
|
3201
|
-
const controls = useAnimation();
|
|
3202
|
-
const reduceMotion = useReducedMotion();
|
|
3203
|
-
const isControlledRef = useRef3(false);
|
|
3204
|
-
const startAnimation = useCallback4(() => {
|
|
3205
|
-
if (reduceMotion) {
|
|
3206
|
-
return;
|
|
3207
|
-
}
|
|
3208
|
-
void controls.start(active ? "active" : "animate");
|
|
3209
|
-
}, [active, controls, reduceMotion]);
|
|
3210
|
-
const stopAnimation = useCallback4(() => {
|
|
3211
|
-
void controls.start("normal");
|
|
3212
|
-
}, [controls]);
|
|
3213
|
-
useImperativeHandle(ref, () => {
|
|
3214
|
-
isControlledRef.current = true;
|
|
3215
|
-
return {
|
|
3216
|
-
startAnimation,
|
|
3217
|
-
stopAnimation
|
|
3218
|
-
};
|
|
3219
|
-
});
|
|
3220
|
-
useEffect4(() => {
|
|
3221
|
-
if (active) {
|
|
3222
|
-
startAnimation();
|
|
3223
|
-
return;
|
|
3224
|
-
}
|
|
3225
|
-
stopAnimation();
|
|
3226
|
-
}, [active, startAnimation, stopAnimation]);
|
|
3227
|
-
const handleMouseEnter = useCallback4(
|
|
3228
|
-
(event) => {
|
|
3229
|
-
if (isControlledRef.current) {
|
|
3230
|
-
onMouseEnter?.(event);
|
|
3231
|
-
} else {
|
|
3232
|
-
startAnimation();
|
|
3233
|
-
}
|
|
3234
|
-
},
|
|
3235
|
-
[onMouseEnter, startAnimation]
|
|
3236
|
-
);
|
|
3237
|
-
const handleMouseLeave = useCallback4(
|
|
3238
|
-
(event) => {
|
|
3239
|
-
if (isControlledRef.current) {
|
|
3240
|
-
onMouseLeave?.(event);
|
|
3241
|
-
} else {
|
|
3242
|
-
stopAnimation();
|
|
3243
|
-
}
|
|
3244
|
-
},
|
|
3245
|
-
[onMouseLeave, stopAnimation]
|
|
3246
|
-
);
|
|
3247
|
-
return /* @__PURE__ */ jsx4(
|
|
3248
|
-
"div",
|
|
3249
|
-
{
|
|
3250
|
-
className: cn("inline-flex items-center justify-center", className),
|
|
3251
|
-
onMouseEnter: handleMouseEnter,
|
|
3252
|
-
onMouseLeave: handleMouseLeave,
|
|
3253
|
-
...props,
|
|
3254
|
-
children: /* @__PURE__ */ jsxs4(
|
|
3255
|
-
"svg",
|
|
3256
|
-
{
|
|
3257
|
-
fill: "none",
|
|
3258
|
-
height: size,
|
|
3259
|
-
stroke: "currentColor",
|
|
3260
|
-
strokeLinecap: "round",
|
|
3261
|
-
strokeLinejoin: "round",
|
|
3262
|
-
strokeWidth: "2",
|
|
3263
|
-
viewBox: "0 0 24 24",
|
|
3264
|
-
width: size,
|
|
3265
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
3266
|
-
children: [
|
|
3267
|
-
/* @__PURE__ */ jsx4("path", { d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" }),
|
|
3268
|
-
/* @__PURE__ */ jsx4(
|
|
3269
|
-
motion.path,
|
|
3270
|
-
{
|
|
3271
|
-
animate: controls,
|
|
3272
|
-
custom: 0,
|
|
3273
|
-
d: "M8 10h.01",
|
|
3274
|
-
variants: DOT_VARIANTS
|
|
3275
|
-
}
|
|
3276
|
-
),
|
|
3277
|
-
/* @__PURE__ */ jsx4(
|
|
3278
|
-
motion.path,
|
|
3279
|
-
{
|
|
3280
|
-
animate: controls,
|
|
3281
|
-
custom: 1,
|
|
3282
|
-
d: "M12 10h.01",
|
|
3283
|
-
variants: DOT_VARIANTS
|
|
3284
|
-
}
|
|
3285
|
-
),
|
|
3286
|
-
/* @__PURE__ */ jsx4(
|
|
3287
|
-
motion.path,
|
|
3288
|
-
{
|
|
3289
|
-
animate: controls,
|
|
3290
|
-
custom: 2,
|
|
3291
|
-
d: "M16 10h.01",
|
|
3292
|
-
variants: DOT_VARIANTS
|
|
3293
|
-
}
|
|
3294
|
-
)
|
|
3295
|
-
]
|
|
3296
|
-
}
|
|
3297
|
-
)
|
|
3298
|
-
}
|
|
3299
|
-
);
|
|
3300
|
-
}
|
|
3301
|
-
);
|
|
3302
|
-
MessageSquareMoreIcon.displayName = "MessageSquareMoreIcon";
|
|
3303
|
-
|
|
3304
|
-
// app/renderer/components/ui/custom-scroll-area.tsx
|
|
3305
|
-
import {
|
|
3306
|
-
forwardRef as forwardRef2,
|
|
3307
|
-
useCallback as useCallback5,
|
|
3308
|
-
useEffect as useEffect5,
|
|
3309
|
-
useRef as useRef4,
|
|
3153
|
+
useRef as useRef3,
|
|
3310
3154
|
useState as useState5
|
|
3311
3155
|
} from "react";
|
|
3312
|
-
import { jsx as
|
|
3156
|
+
import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
3313
3157
|
var MIN_THUMB_HEIGHT = 24;
|
|
3314
3158
|
function CustomScrollbar({
|
|
3315
3159
|
getViewport,
|
|
@@ -3320,15 +3164,15 @@ function CustomScrollbar({
|
|
|
3320
3164
|
syncKey
|
|
3321
3165
|
}) {
|
|
3322
3166
|
"use memo";
|
|
3323
|
-
const trackRef =
|
|
3324
|
-
const dragStateRef =
|
|
3167
|
+
const trackRef = useRef3(null);
|
|
3168
|
+
const dragStateRef = useRef3(null);
|
|
3325
3169
|
const [scrollbarState, setScrollbarState] = useState5({
|
|
3326
3170
|
scrollable: false,
|
|
3327
3171
|
thumbHeight: 0,
|
|
3328
3172
|
thumbTop: 0
|
|
3329
3173
|
});
|
|
3330
3174
|
const [dragging, setDragging] = useState5(false);
|
|
3331
|
-
const syncScrollbarState =
|
|
3175
|
+
const syncScrollbarState = useCallback4(() => {
|
|
3332
3176
|
const viewport = getViewport();
|
|
3333
3177
|
if (!viewport) {
|
|
3334
3178
|
setScrollbarState({ scrollable: false, thumbHeight: 0, thumbTop: 0 });
|
|
@@ -3351,7 +3195,7 @@ function CustomScrollbar({
|
|
|
3351
3195
|
(previous) => previous.scrollable && previous.thumbHeight === thumbHeight && previous.thumbTop === thumbTop ? previous : { scrollable: true, thumbHeight, thumbTop }
|
|
3352
3196
|
);
|
|
3353
3197
|
}, [getViewport]);
|
|
3354
|
-
const scrollViewportToThumbTop =
|
|
3198
|
+
const scrollViewportToThumbTop = useCallback4(
|
|
3355
3199
|
(thumbTop) => {
|
|
3356
3200
|
const viewport = getViewport();
|
|
3357
3201
|
const track = trackRef.current;
|
|
@@ -3374,7 +3218,7 @@ function CustomScrollbar({
|
|
|
3374
3218
|
},
|
|
3375
3219
|
[getViewport, scrollbarState.thumbHeight, syncScrollbarState]
|
|
3376
3220
|
);
|
|
3377
|
-
const handleTrackMouseDown =
|
|
3221
|
+
const handleTrackMouseDown = useCallback4(
|
|
3378
3222
|
(event) => {
|
|
3379
3223
|
if (event.button !== 0 || !scrollbarState.scrollable) {
|
|
3380
3224
|
return;
|
|
@@ -3396,7 +3240,7 @@ function CustomScrollbar({
|
|
|
3396
3240
|
scrollbarState.thumbHeight
|
|
3397
3241
|
]
|
|
3398
3242
|
);
|
|
3399
|
-
const handleThumbMouseDown =
|
|
3243
|
+
const handleThumbMouseDown = useCallback4(
|
|
3400
3244
|
(event) => {
|
|
3401
3245
|
if (event.button !== 0 || !scrollbarState.scrollable) {
|
|
3402
3246
|
return;
|
|
@@ -3429,7 +3273,7 @@ function CustomScrollbar({
|
|
|
3429
3273
|
},
|
|
3430
3274
|
[getViewport, scrollbarState.scrollable, scrollbarState.thumbHeight]
|
|
3431
3275
|
);
|
|
3432
|
-
|
|
3276
|
+
useEffect4(() => {
|
|
3433
3277
|
if (!dragging) {
|
|
3434
3278
|
return;
|
|
3435
3279
|
}
|
|
@@ -3454,7 +3298,7 @@ function CustomScrollbar({
|
|
|
3454
3298
|
window.removeEventListener("mouseup", handleMouseUp);
|
|
3455
3299
|
};
|
|
3456
3300
|
}, [dragging, getViewport, syncScrollbarState]);
|
|
3457
|
-
|
|
3301
|
+
useEffect4(() => {
|
|
3458
3302
|
const viewport = getViewport();
|
|
3459
3303
|
if (!viewport) {
|
|
3460
3304
|
setScrollbarState({ scrollable: false, thumbHeight: 0, thumbTop: 0 });
|
|
@@ -3471,7 +3315,7 @@ function CustomScrollbar({
|
|
|
3471
3315
|
resizeObserver?.disconnect();
|
|
3472
3316
|
};
|
|
3473
3317
|
}, [getViewport, syncKey, syncScrollbarState]);
|
|
3474
|
-
return /* @__PURE__ */
|
|
3318
|
+
return /* @__PURE__ */ jsx4(
|
|
3475
3319
|
"div",
|
|
3476
3320
|
{
|
|
3477
3321
|
ref: trackRef,
|
|
@@ -3481,7 +3325,7 @@ function CustomScrollbar({
|
|
|
3481
3325
|
"data-testid": testId,
|
|
3482
3326
|
"aria-hidden": "true",
|
|
3483
3327
|
onMouseDown: handleTrackMouseDown,
|
|
3484
|
-
children: /* @__PURE__ */
|
|
3328
|
+
children: /* @__PURE__ */ jsx4(
|
|
3485
3329
|
"div",
|
|
3486
3330
|
{
|
|
3487
3331
|
className: cn("tsh-custom-scrollbar__thumb", thumbClassName),
|
|
@@ -3496,7 +3340,7 @@ function CustomScrollbar({
|
|
|
3496
3340
|
}
|
|
3497
3341
|
);
|
|
3498
3342
|
}
|
|
3499
|
-
var CustomScrollArea =
|
|
3343
|
+
var CustomScrollArea = forwardRef(function CustomScrollArea2({
|
|
3500
3344
|
children,
|
|
3501
3345
|
className,
|
|
3502
3346
|
viewportClassName,
|
|
@@ -3508,9 +3352,9 @@ var CustomScrollArea = forwardRef2(function CustomScrollArea2({
|
|
|
3508
3352
|
...viewportProps
|
|
3509
3353
|
}, forwardedRef) {
|
|
3510
3354
|
"use memo";
|
|
3511
|
-
const viewportRef =
|
|
3512
|
-
const getViewport =
|
|
3513
|
-
return /* @__PURE__ */
|
|
3355
|
+
const viewportRef = useRef3(null);
|
|
3356
|
+
const getViewport = useCallback4(() => viewportRef.current, []);
|
|
3357
|
+
return /* @__PURE__ */ jsxs4(
|
|
3514
3358
|
"div",
|
|
3515
3359
|
{
|
|
3516
3360
|
className: cn(
|
|
@@ -3518,7 +3362,7 @@ var CustomScrollArea = forwardRef2(function CustomScrollArea2({
|
|
|
3518
3362
|
className
|
|
3519
3363
|
),
|
|
3520
3364
|
children: [
|
|
3521
|
-
/* @__PURE__ */
|
|
3365
|
+
/* @__PURE__ */ jsx4(
|
|
3522
3366
|
"div",
|
|
3523
3367
|
{
|
|
3524
3368
|
ref: setRefs(viewportRef, forwardedRef),
|
|
@@ -3530,7 +3374,7 @@ var CustomScrollArea = forwardRef2(function CustomScrollArea2({
|
|
|
3530
3374
|
children
|
|
3531
3375
|
}
|
|
3532
3376
|
),
|
|
3533
|
-
/* @__PURE__ */
|
|
3377
|
+
/* @__PURE__ */ jsx4(
|
|
3534
3378
|
CustomScrollbar,
|
|
3535
3379
|
{
|
|
3536
3380
|
getViewport,
|
|
@@ -3559,6 +3403,164 @@ function clamp(value, min, max) {
|
|
|
3559
3403
|
return Math.min(max, Math.max(min, value));
|
|
3560
3404
|
}
|
|
3561
3405
|
|
|
3406
|
+
// app/renderer/components/icons/MessageSquareMoreIcon.tsx
|
|
3407
|
+
import {
|
|
3408
|
+
forwardRef as forwardRef2,
|
|
3409
|
+
useCallback as useCallback5,
|
|
3410
|
+
useEffect as useEffect5,
|
|
3411
|
+
useImperativeHandle,
|
|
3412
|
+
useRef as useRef4
|
|
3413
|
+
} from "react";
|
|
3414
|
+
import {
|
|
3415
|
+
motion,
|
|
3416
|
+
useAnimation,
|
|
3417
|
+
useReducedMotion
|
|
3418
|
+
} from "framer-motion";
|
|
3419
|
+
import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
3420
|
+
var DOT_TRANSITION = {
|
|
3421
|
+
times: [0, 0.1, 0.1, 0.2, 0.5, 0.6, 0.6, 0.7],
|
|
3422
|
+
duration: 1.5
|
|
3423
|
+
};
|
|
3424
|
+
var DOT_VARIANTS = {
|
|
3425
|
+
normal: {
|
|
3426
|
+
opacity: 1
|
|
3427
|
+
},
|
|
3428
|
+
animate: (custom) => ({
|
|
3429
|
+
opacity: [1, 0, 0, 1, 1, 0, 0, 1],
|
|
3430
|
+
transition: {
|
|
3431
|
+
opacity: {
|
|
3432
|
+
...DOT_TRANSITION,
|
|
3433
|
+
times: DOT_TRANSITION.times.map(
|
|
3434
|
+
(time, index) => index === 2 || index === 3 || index === 6 || index === 7 ? time + custom * 0.1 : time
|
|
3435
|
+
)
|
|
3436
|
+
}
|
|
3437
|
+
}
|
|
3438
|
+
}),
|
|
3439
|
+
active: (custom) => ({
|
|
3440
|
+
opacity: [1, 0, 0, 1, 1, 0, 0, 1],
|
|
3441
|
+
transition: {
|
|
3442
|
+
opacity: {
|
|
3443
|
+
...DOT_TRANSITION,
|
|
3444
|
+
repeat: Infinity,
|
|
3445
|
+
times: DOT_TRANSITION.times.map(
|
|
3446
|
+
(time, index) => index === 2 || index === 3 || index === 6 || index === 7 ? time + custom * 0.1 : time
|
|
3447
|
+
)
|
|
3448
|
+
}
|
|
3449
|
+
}
|
|
3450
|
+
})
|
|
3451
|
+
};
|
|
3452
|
+
var MessageSquareMoreIcon = forwardRef2(
|
|
3453
|
+
({
|
|
3454
|
+
active = false,
|
|
3455
|
+
onMouseEnter,
|
|
3456
|
+
onMouseLeave,
|
|
3457
|
+
className,
|
|
3458
|
+
size = 28,
|
|
3459
|
+
...props
|
|
3460
|
+
}, ref) => {
|
|
3461
|
+
const controls = useAnimation();
|
|
3462
|
+
const reduceMotion = useReducedMotion();
|
|
3463
|
+
const isControlledRef = useRef4(false);
|
|
3464
|
+
const startAnimation = useCallback5(() => {
|
|
3465
|
+
if (reduceMotion) {
|
|
3466
|
+
return;
|
|
3467
|
+
}
|
|
3468
|
+
void controls.start(active ? "active" : "animate");
|
|
3469
|
+
}, [active, controls, reduceMotion]);
|
|
3470
|
+
const stopAnimation = useCallback5(() => {
|
|
3471
|
+
void controls.start("normal");
|
|
3472
|
+
}, [controls]);
|
|
3473
|
+
useImperativeHandle(ref, () => {
|
|
3474
|
+
isControlledRef.current = true;
|
|
3475
|
+
return {
|
|
3476
|
+
startAnimation,
|
|
3477
|
+
stopAnimation
|
|
3478
|
+
};
|
|
3479
|
+
});
|
|
3480
|
+
useEffect5(() => {
|
|
3481
|
+
if (active) {
|
|
3482
|
+
startAnimation();
|
|
3483
|
+
return;
|
|
3484
|
+
}
|
|
3485
|
+
stopAnimation();
|
|
3486
|
+
}, [active, startAnimation, stopAnimation]);
|
|
3487
|
+
const handleMouseEnter = useCallback5(
|
|
3488
|
+
(event) => {
|
|
3489
|
+
if (isControlledRef.current) {
|
|
3490
|
+
onMouseEnter?.(event);
|
|
3491
|
+
} else {
|
|
3492
|
+
startAnimation();
|
|
3493
|
+
}
|
|
3494
|
+
},
|
|
3495
|
+
[onMouseEnter, startAnimation]
|
|
3496
|
+
);
|
|
3497
|
+
const handleMouseLeave = useCallback5(
|
|
3498
|
+
(event) => {
|
|
3499
|
+
if (isControlledRef.current) {
|
|
3500
|
+
onMouseLeave?.(event);
|
|
3501
|
+
} else {
|
|
3502
|
+
stopAnimation();
|
|
3503
|
+
}
|
|
3504
|
+
},
|
|
3505
|
+
[onMouseLeave, stopAnimation]
|
|
3506
|
+
);
|
|
3507
|
+
return /* @__PURE__ */ jsx5(
|
|
3508
|
+
"div",
|
|
3509
|
+
{
|
|
3510
|
+
className: cn("inline-flex items-center justify-center", className),
|
|
3511
|
+
onMouseEnter: handleMouseEnter,
|
|
3512
|
+
onMouseLeave: handleMouseLeave,
|
|
3513
|
+
...props,
|
|
3514
|
+
children: /* @__PURE__ */ jsxs5(
|
|
3515
|
+
"svg",
|
|
3516
|
+
{
|
|
3517
|
+
fill: "none",
|
|
3518
|
+
height: size,
|
|
3519
|
+
stroke: "currentColor",
|
|
3520
|
+
strokeLinecap: "round",
|
|
3521
|
+
strokeLinejoin: "round",
|
|
3522
|
+
strokeWidth: "2",
|
|
3523
|
+
viewBox: "0 0 24 24",
|
|
3524
|
+
width: size,
|
|
3525
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
3526
|
+
children: [
|
|
3527
|
+
/* @__PURE__ */ jsx5("path", { d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" }),
|
|
3528
|
+
/* @__PURE__ */ jsx5(
|
|
3529
|
+
motion.path,
|
|
3530
|
+
{
|
|
3531
|
+
animate: controls,
|
|
3532
|
+
custom: 0,
|
|
3533
|
+
d: "M8 10h.01",
|
|
3534
|
+
variants: DOT_VARIANTS
|
|
3535
|
+
}
|
|
3536
|
+
),
|
|
3537
|
+
/* @__PURE__ */ jsx5(
|
|
3538
|
+
motion.path,
|
|
3539
|
+
{
|
|
3540
|
+
animate: controls,
|
|
3541
|
+
custom: 1,
|
|
3542
|
+
d: "M12 10h.01",
|
|
3543
|
+
variants: DOT_VARIANTS
|
|
3544
|
+
}
|
|
3545
|
+
),
|
|
3546
|
+
/* @__PURE__ */ jsx5(
|
|
3547
|
+
motion.path,
|
|
3548
|
+
{
|
|
3549
|
+
animate: controls,
|
|
3550
|
+
custom: 2,
|
|
3551
|
+
d: "M16 10h.01",
|
|
3552
|
+
variants: DOT_VARIANTS
|
|
3553
|
+
}
|
|
3554
|
+
)
|
|
3555
|
+
]
|
|
3556
|
+
}
|
|
3557
|
+
)
|
|
3558
|
+
}
|
|
3559
|
+
);
|
|
3560
|
+
}
|
|
3561
|
+
);
|
|
3562
|
+
MessageSquareMoreIcon.displayName = "MessageSquareMoreIcon";
|
|
3563
|
+
|
|
3562
3564
|
export {
|
|
3563
3565
|
cn,
|
|
3564
3566
|
extractAgentMcpToolTarget,
|
|
@@ -3575,4 +3577,4 @@ export {
|
|
|
3575
3577
|
CustomScrollArea,
|
|
3576
3578
|
MessageSquareMoreIcon
|
|
3577
3579
|
};
|
|
3578
|
-
//# sourceMappingURL=chunk-
|
|
3580
|
+
//# sourceMappingURL=chunk-RKZMETSQ.js.map
|