langgraph-ui-components 0.0.11-testing → 0.0.12
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/index.es.js +2 -3
- package/dist/index.es10.js +6 -25
- package/dist/index.es10.js.map +1 -1
- package/dist/index.es100.js +156 -127
- package/dist/index.es100.js.map +1 -1
- package/dist/index.es101.js +195 -62
- package/dist/index.es101.js.map +1 -1
- package/dist/index.es102.js +14 -37
- package/dist/index.es102.js.map +1 -1
- package/dist/index.es103.js +27 -34
- package/dist/index.es103.js.map +1 -1
- package/dist/index.es104.js +25 -157
- package/dist/index.es104.js.map +1 -1
- package/dist/index.es105.js +3130 -176
- package/dist/index.es105.js.map +1 -1
- package/dist/index.es106.js +36 -13
- package/dist/index.es106.js.map +1 -1
- package/dist/index.es107.js +5 -30
- package/dist/index.es107.js.map +1 -1
- package/dist/index.es108.js +69 -30
- package/dist/index.es108.js.map +1 -1
- package/dist/index.es109.js +28 -3148
- package/dist/index.es109.js.map +1 -1
- package/dist/index.es11.js +6 -1
- package/dist/index.es11.js.map +1 -1
- package/dist/index.es113.js +5 -16
- package/dist/index.es113.js.map +1 -1
- package/dist/index.es114.js +2 -7
- package/dist/index.es114.js.map +1 -1
- package/dist/index.es115.js +13 -2
- package/dist/index.es115.js.map +1 -1
- package/dist/index.es116.js +499 -9
- package/dist/index.es116.js.map +1 -1
- package/dist/index.es117.js +5 -501
- package/dist/index.es117.js.map +1 -1
- package/dist/index.es118.js +2 -7
- package/dist/index.es118.js.map +1 -1
- package/dist/index.es119.js +148 -2
- package/dist/index.es119.js.map +1 -1
- package/dist/index.es120.js +878 -118
- package/dist/index.es120.js.map +1 -1
- package/dist/index.es121.js +251 -877
- package/dist/index.es121.js.map +1 -1
- package/dist/index.es122.js +3 -281
- package/dist/index.es122.js.map +1 -1
- package/dist/index.es123.js +445 -3
- package/dist/index.es123.js.map +1 -1
- package/dist/index.es124.js +38 -436
- package/dist/index.es124.js.map +1 -1
- package/dist/index.es125.js +22 -46
- package/dist/index.es125.js.map +1 -1
- package/dist/index.es126.js +78 -21
- package/dist/index.es126.js.map +1 -1
- package/dist/index.es127.js +126 -76
- package/dist/index.es127.js.map +1 -1
- package/dist/index.es128.js +45 -125
- package/dist/index.es128.js.map +1 -1
- package/dist/index.es129.js +9 -48
- package/dist/index.es129.js.map +1 -1
- package/dist/index.es13.js +6 -6
- package/dist/index.es130.js +45 -10
- package/dist/index.es130.js.map +1 -1
- package/dist/index.es131.js +97 -43
- package/dist/index.es131.js.map +1 -1
- package/dist/index.es132.js +48 -94
- package/dist/index.es132.js.map +1 -1
- package/dist/index.es133.js +14 -51
- package/dist/index.es133.js.map +1 -1
- package/dist/index.es15.js +59 -31
- package/dist/index.es15.js.map +1 -1
- package/dist/index.es16.js +4 -4
- package/dist/index.es16.js.map +1 -1
- package/dist/index.es183.js +13 -162
- package/dist/index.es183.js.map +1 -1
- package/dist/index.es184.js +89 -2
- package/dist/index.es184.js.map +1 -1
- package/dist/index.es185.js +2 -15
- package/dist/index.es185.js.map +1 -1
- package/dist/index.es186.js +54 -87
- package/dist/index.es186.js.map +1 -1
- package/dist/index.es187.js +100 -2
- package/dist/index.es187.js.map +1 -1
- package/dist/index.es188.js +185 -50
- package/dist/index.es188.js.map +1 -1
- package/dist/index.es189.js +96 -86
- package/dist/index.es189.js.map +1 -1
- package/dist/index.es190.js +31 -187
- package/dist/index.es190.js.map +1 -1
- package/dist/index.es191.js +9 -109
- package/dist/index.es191.js.map +1 -1
- package/dist/index.es192.js +11 -35
- package/dist/index.es192.js.map +1 -1
- package/dist/index.es193.js +12 -10
- package/dist/index.es193.js.map +1 -1
- package/dist/index.es194.js +90 -10
- package/dist/index.es194.js.map +1 -1
- package/dist/index.es195.js +274 -11
- package/dist/index.es195.js.map +1 -1
- package/dist/index.es196.js +2 -91
- package/dist/index.es196.js.map +1 -1
- package/dist/index.es197.js +150 -261
- package/dist/index.es197.js.map +1 -1
- package/dist/index.es198.js +51 -2
- package/dist/index.es198.js.map +1 -1
- package/dist/index.es199.js +34 -158
- package/dist/index.es199.js.map +1 -1
- package/dist/index.es2.js +84 -46
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es20.js +2 -2
- package/dist/index.es200.js +34 -50
- package/dist/index.es200.js.map +1 -1
- package/dist/index.es201.js +32 -32
- package/dist/index.es201.js.map +1 -1
- package/dist/index.es202.js +23 -34
- package/dist/index.es202.js.map +1 -1
- package/dist/index.es203.js +583 -32
- package/dist/index.es203.js.map +1 -1
- package/dist/index.es204.js +121 -20
- package/dist/index.es204.js.map +1 -1
- package/dist/index.es205.js +158 -585
- package/dist/index.es205.js.map +1 -1
- package/dist/index.es206.js +2 -125
- package/dist/index.es206.js.map +1 -1
- package/dist/index.es22.js +15 -119
- package/dist/index.es22.js.map +1 -1
- package/dist/index.es23.js +37 -17
- package/dist/index.es23.js.map +1 -1
- package/dist/index.es24.js +27 -34
- package/dist/index.es24.js.map +1 -1
- package/dist/index.es25.js +145 -28
- package/dist/index.es25.js.map +1 -1
- package/dist/index.es252.js +2 -2
- package/dist/index.es253.js +1 -1
- package/dist/index.es258.js +1 -1
- package/dist/index.es26.js +100 -144
- package/dist/index.es26.js.map +1 -1
- package/dist/index.es260.js +2 -2
- package/dist/index.es262.js +2 -2
- package/dist/index.es265.js +1 -1
- package/dist/index.es267.js +1 -1
- package/dist/index.es27.js +66 -101
- package/dist/index.es27.js.map +1 -1
- package/dist/index.es277.js +147 -2
- package/dist/index.es277.js.map +1 -1
- package/dist/index.es278.js +167 -126
- package/dist/index.es278.js.map +1 -1
- package/dist/index.es279.js +2 -188
- package/dist/index.es279.js.map +1 -1
- package/dist/index.es28.js +121 -68
- package/dist/index.es28.js.map +1 -1
- package/dist/index.es280.js +1 -1
- package/dist/index.es283.js +1 -1
- package/dist/index.es288.js +1 -1
- package/dist/index.es29.js +1 -1
- package/dist/index.es3.js +10 -42
- package/dist/index.es3.js.map +1 -1
- package/dist/index.es300.js +1 -1
- package/dist/index.es302.js +1 -1
- package/dist/index.es314.js +1 -1
- package/dist/index.es334.js +2 -2
- package/dist/index.es4.js +1 -2
- package/dist/index.es4.js.map +1 -1
- package/dist/index.es43.js +5 -5
- package/dist/index.es45.js +1 -1
- package/dist/index.es49.js +3 -3
- package/dist/index.es5.js.map +1 -1
- package/dist/index.es50.js +208 -5
- package/dist/index.es50.js.map +1 -1
- package/dist/index.es51.js +5 -208
- package/dist/index.es51.js.map +1 -1
- package/dist/index.es52.js +3 -3
- package/dist/index.es61.js +1 -1
- package/dist/index.es62.js +2 -2
- package/dist/index.es64.js +142 -5
- package/dist/index.es64.js.map +1 -1
- package/dist/index.es65.js +285 -148
- package/dist/index.es65.js.map +1 -1
- package/dist/index.es66.js +62 -668
- package/dist/index.es66.js.map +1 -1
- package/dist/index.es67.js +201 -131
- package/dist/index.es67.js.map +1 -1
- package/dist/index.es68.js +29 -295
- package/dist/index.es68.js.map +1 -1
- package/dist/index.es69.js +8 -65
- package/dist/index.es69.js.map +1 -1
- package/dist/index.es7.js +1 -2
- package/dist/index.es7.js.map +1 -1
- package/dist/index.es70.js +9 -210
- package/dist/index.es70.js.map +1 -1
- package/dist/index.es71.js +181 -28
- package/dist/index.es71.js.map +1 -1
- package/dist/index.es72.js +23 -8
- package/dist/index.es72.js.map +1 -1
- package/dist/index.es73.js +1397 -9
- package/dist/index.es73.js.map +1 -1
- package/dist/index.es74.js +9 -187
- package/dist/index.es74.js.map +1 -1
- package/dist/index.es75.js +8 -24
- package/dist/index.es75.js.map +1 -1
- package/dist/index.es76.js +5 -1399
- package/dist/index.es76.js.map +1 -1
- package/dist/index.es77.js +163 -9
- package/dist/index.es77.js.map +1 -1
- package/dist/index.es78.js +672 -8
- package/dist/index.es78.js.map +1 -1
- package/dist/index.es79.js +11 -36
- package/dist/index.es79.js.map +1 -1
- package/dist/index.es80.js +40 -5
- package/dist/index.es80.js.map +1 -1
- package/dist/index.es81.js +32 -71
- package/dist/index.es81.js.map +1 -1
- package/dist/index.es82.js +225 -30
- package/dist/index.es82.js.map +1 -1
- package/dist/index.es83.js +29 -11
- package/dist/index.es83.js.map +1 -1
- package/dist/index.es84.js +72 -37
- package/dist/index.es84.js.map +1 -1
- package/dist/index.es85.js +74 -32
- package/dist/index.es85.js.map +1 -1
- package/dist/index.es86.js +46 -226
- package/dist/index.es86.js.map +1 -1
- package/dist/index.es87.js +6 -6
- package/dist/index.es87.js.map +1 -1
- package/dist/index.es88.js +39 -71
- package/dist/index.es88.js.map +1 -1
- package/dist/index.es89.js +54 -73
- package/dist/index.es89.js.map +1 -1
- package/dist/index.es90.js +13 -52
- package/dist/index.es90.js.map +1 -1
- package/dist/index.es91.js +135 -28
- package/dist/index.es91.js.map +1 -1
- package/dist/index.es92.js +20 -42
- package/dist/index.es92.js.map +1 -1
- package/dist/index.es93.js +175 -50
- package/dist/index.es93.js.map +1 -1
- package/dist/index.es94.js +239 -11
- package/dist/index.es94.js.map +1 -1
- package/dist/index.es95.js +348 -130
- package/dist/index.es95.js.map +1 -1
- package/dist/index.es96.js +134 -18
- package/dist/index.es96.js.map +1 -1
- package/dist/index.es97.js +61 -173
- package/dist/index.es97.js.map +1 -1
- package/dist/index.es98.js +30 -234
- package/dist/index.es98.js.map +1 -1
- package/dist/index.es99.js +26 -344
- package/dist/index.es99.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
package/dist/index.es25.js
CHANGED
|
@@ -1,34 +1,151 @@
|
|
|
1
|
-
import { jsx, Fragment } from "react/jsx-runtime";
|
|
1
|
+
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useStreamContext } from "./index.es7.js";
|
|
3
|
-
import {
|
|
4
|
-
import "
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
thread
|
|
10
|
-
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
3
|
+
import { X, Send, Pencil, Copy, FileIcon, CircleUser } from "lucide-react";
|
|
4
|
+
import React__default, { useState } from "react";
|
|
5
|
+
function HumanMessage({ message }) {
|
|
6
|
+
const [isEditing, setIsEditing] = useState(false);
|
|
7
|
+
const [editedText, setEditedText] = useState("");
|
|
8
|
+
const thread = useStreamContext();
|
|
9
|
+
const meta = thread.getMessagesMetadata(message);
|
|
10
|
+
const parentCheckpoint = meta?.firstSeenState?.parent_checkpoint;
|
|
11
|
+
const content = message.content;
|
|
12
|
+
let textContent = "";
|
|
13
|
+
let documents = [];
|
|
14
|
+
if (typeof content === "string") {
|
|
15
|
+
textContent = content;
|
|
16
|
+
} else if (Array.isArray(content)) {
|
|
17
|
+
textContent = content.filter((c) => c.type === "text").map((c) => c.type === "text" ? c.text : "").join("");
|
|
18
|
+
documents = content.filter((c) => c.type === "document") ?? [];
|
|
19
|
+
}
|
|
20
|
+
const handleSubmitEdit = () => {
|
|
21
|
+
if (!editedText.trim()) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
setIsEditing(false);
|
|
25
|
+
const newMessage = { type: "human", content: editedText };
|
|
26
|
+
thread.submit(
|
|
27
|
+
{ messages: [newMessage] },
|
|
28
|
+
{
|
|
29
|
+
checkpoint: parentCheckpoint,
|
|
30
|
+
streamMode: ["values"],
|
|
31
|
+
streamSubgraphs: true,
|
|
32
|
+
streamResumable: true,
|
|
33
|
+
optimisticValues: (prev) => {
|
|
34
|
+
const values = meta?.firstSeenState?.values;
|
|
35
|
+
if (!values) return prev;
|
|
36
|
+
return {
|
|
37
|
+
...values,
|
|
38
|
+
messages: [...values.messages ?? [], newMessage]
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
16
42
|
);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
43
|
+
};
|
|
44
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex items-end gap-3 justify-end w-full group my-1", children: [
|
|
45
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col gap-2 items-end min-w-0", children: [
|
|
46
|
+
/* @__PURE__ */ jsx("span", { className: "text-zinc-400 text-xs font-medium mr-1 opacity-80", children: "You" }),
|
|
47
|
+
textContent && /* @__PURE__ */ jsx("div", { className: "relative", children: isEditing ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2 w-full", children: [
|
|
48
|
+
/* @__PURE__ */ jsx(
|
|
49
|
+
"textarea",
|
|
50
|
+
{
|
|
51
|
+
value: editedText,
|
|
52
|
+
onChange: (e) => setEditedText(e.target.value),
|
|
53
|
+
onKeyDown: (e) => {
|
|
54
|
+
if (e.key === "Enter") {
|
|
55
|
+
e.preventDefault();
|
|
56
|
+
handleSubmitEdit();
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
className: "text-[15px] font-normal leading-relaxed rounded-2xl rounded-tr-sm px-5 py-3.5 bg-zinc-900 border border-zinc-800 text-white shadow-lg break-words overflow-wrap-anywhere resize-none focus:outline-none min-h-[60px]",
|
|
60
|
+
autoFocus: true
|
|
61
|
+
}
|
|
62
|
+
),
|
|
63
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-end gap-2", children: [
|
|
64
|
+
/* @__PURE__ */ jsxs(
|
|
65
|
+
"button",
|
|
66
|
+
{
|
|
67
|
+
onClick: () => {
|
|
68
|
+
setIsEditing(false);
|
|
69
|
+
setEditedText("");
|
|
70
|
+
},
|
|
71
|
+
className: "flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-zinc-800 hover:bg-zinc-700 text-zinc-300 text-sm transition-colors",
|
|
72
|
+
children: [
|
|
73
|
+
/* @__PURE__ */ jsx(X, { size: 14 }),
|
|
74
|
+
"Cancel"
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
),
|
|
78
|
+
/* @__PURE__ */ jsxs(
|
|
79
|
+
"button",
|
|
80
|
+
{
|
|
81
|
+
onClick: handleSubmitEdit,
|
|
82
|
+
disabled: !editedText.trim(),
|
|
83
|
+
className: "flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-white text-black text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed",
|
|
84
|
+
children: [
|
|
85
|
+
/* @__PURE__ */ jsx(Send, { size: 14 }),
|
|
86
|
+
"Send"
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
)
|
|
90
|
+
] })
|
|
91
|
+
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
92
|
+
/* @__PURE__ */ jsx("div", { className: "text-[15px] font-normal leading-relaxed rounded-2xl rounded-tr-sm px-5 py-3.5 bg-zinc-900 border border-zinc-900 text-white shadow-lg max-w-full break-words overflow-wrap-anywhere ", children: textContent }),
|
|
93
|
+
/* @__PURE__ */ jsxs(
|
|
94
|
+
"div",
|
|
95
|
+
{
|
|
96
|
+
className: "\n absolute right-1 my-2 flex items-center gap-2\n opacity-0 group-hover:opacity-100\n transition-opacity duration-300\n z-10\n ",
|
|
97
|
+
children: [
|
|
98
|
+
/* @__PURE__ */ jsx(
|
|
99
|
+
Pencil,
|
|
100
|
+
{
|
|
101
|
+
size: 16,
|
|
102
|
+
className: "text-zinc-500 cursor-pointer hover:text-white",
|
|
103
|
+
onClick: () => {
|
|
104
|
+
setIsEditing(true);
|
|
105
|
+
setEditedText(textContent);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
),
|
|
109
|
+
/* @__PURE__ */ jsx(
|
|
110
|
+
Copy,
|
|
111
|
+
{
|
|
112
|
+
size: 16,
|
|
113
|
+
className: "text-zinc-500 cursor-pointer hover:text-white",
|
|
114
|
+
onClick: () => {
|
|
115
|
+
navigator.clipboard.writeText(textContent);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
)
|
|
119
|
+
]
|
|
120
|
+
}
|
|
121
|
+
)
|
|
122
|
+
] }) }),
|
|
123
|
+
documents.length > 0 && /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2 max-w-[90%]", children: documents.map((doc, idx) => /* @__PURE__ */ jsxs(
|
|
124
|
+
"div",
|
|
125
|
+
{
|
|
126
|
+
className: "flex items-center gap-3 bg-gradient-to-br from-zinc-800/90 to-zinc-900/90 backdrop-blur-sm px-4 py-2.5 rounded-xl border border-zinc-700/50 shadow-md hover:border-blue-500/40 hover:shadow-lg hover:shadow-blue-500/10 transition-all duration-200 cursor-pointer group/file",
|
|
127
|
+
children: [
|
|
128
|
+
/* @__PURE__ */ jsx("div", { className: "p-1.5 bg-blue-500/10 rounded-lg border border-blue-500/20 group-hover/file:bg-blue-500/20 transition-colors", children: /* @__PURE__ */ jsx(FileIcon, { size: 16, className: "text-blue-400 shrink-0" }) }),
|
|
129
|
+
/* @__PURE__ */ jsx("span", { className: "text-sm text-zinc-200 truncate font-medium", children: doc.source?.filename || `Document ${idx + 1}` })
|
|
130
|
+
]
|
|
131
|
+
},
|
|
132
|
+
`${message.id}-doc-${idx}`
|
|
133
|
+
)) })
|
|
134
|
+
] }),
|
|
135
|
+
/* @__PURE__ */ jsx(
|
|
136
|
+
"div",
|
|
137
|
+
{
|
|
138
|
+
className: "size-9 shrink-0 flex items-center justify-center",
|
|
139
|
+
"data-alt": "User Avatar",
|
|
140
|
+
children: /* @__PURE__ */ jsx(CircleUser, { className: "text-white", size: 22 })
|
|
141
|
+
}
|
|
142
|
+
)
|
|
143
|
+
] });
|
|
29
144
|
}
|
|
30
|
-
const
|
|
145
|
+
const HumanMessage$1 = React__default.memo(HumanMessage, (prevProps, nextProps) => {
|
|
146
|
+
return prevProps.message.id === nextProps.message.id;
|
|
147
|
+
});
|
|
31
148
|
export {
|
|
32
|
-
|
|
149
|
+
HumanMessage$1 as default
|
|
33
150
|
};
|
|
34
151
|
//# sourceMappingURL=index.es25.js.map
|
package/dist/index.es25.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es25.js","sources":["../src/components/messages/
|
|
1
|
+
{"version":3,"file":"index.es25.js","sources":["../src/components/messages/HumanMessage.tsx"],"sourcesContent":["import { useStreamContext } from \"@/providers/Stream\";\nimport type { Message } from \"@langchain/langgraph-sdk\";\nimport { CircleUser, Copy, FileIcon, Pencil, Send, X } from \"lucide-react\";\nimport React, { useState } from \"react\";\n\nfunction HumanMessage({ message }: { message: Message }) {\n const [isEditing, setIsEditing] = useState(false);\n const [editedText, setEditedText] = useState(\"\");\n const thread = useStreamContext();\n const meta = thread.getMessagesMetadata(message);\n const parentCheckpoint = meta?.firstSeenState?.parent_checkpoint;\n\n // Extract text and documents from content\n const content = message.content;\n let textContent = \"\";\n let documents: any[] = [];\n\n if (typeof content === \"string\") {\n textContent = content;\n } else if (Array.isArray(content)) {\n textContent = content\n .filter((c: any) => c.type === \"text\")\n .map((c: any) => (c.type === \"text\" ? c.text : \"\"))\n .join(\"\");\n documents = content.filter((c: any) => c.type === \"document\") ?? [];\n }\n\n const handleSubmitEdit = () => {\n // Validate that edited text is not empty\n if (!editedText.trim()) {\n return;\n }\n\n setIsEditing(false);\n // console.log(\"Send edited message:\", editedText);\n\n const newMessage: Message = { type: \"human\", content: editedText };\n thread.submit(\n { messages: [newMessage] },\n {\n checkpoint: parentCheckpoint,\n streamMode: [\"values\"],\n streamSubgraphs: true,\n streamResumable: true,\n optimisticValues: (prev) => {\n const values = meta?.firstSeenState?.values;\n if (!values) return prev;\n\n return {\n ...values,\n messages: [...(values.messages ?? []), newMessage],\n };\n },\n },\n );\n };\n\n return (\n <div className=\"flex items-end gap-3 justify-end w-full group my-1\">\n <div className=\"flex flex-1 flex-col gap-2 items-end min-w-0\">\n <span className=\"text-zinc-400 text-xs font-medium mr-1 opacity-80\">\n You\n </span>\n\n {textContent && (\n <div className=\"relative\">\n {isEditing ? (\n <div className=\"flex flex-col gap-2 w-full\">\n <textarea\n value={editedText}\n onChange={(e) => setEditedText(e.target.value)}\n onKeyDown={(e)=>{\n if(e.key === \"Enter\"){\n e.preventDefault();\n handleSubmitEdit();\n }\n }}\n className=\"text-[15px] font-normal leading-relaxed rounded-2xl rounded-tr-sm px-5 py-3.5 bg-zinc-900 border border-zinc-800 text-white shadow-lg break-words overflow-wrap-anywhere resize-none focus:outline-none min-h-[60px]\"\n autoFocus\n />\n <div className=\"flex items-center justify-end gap-2\">\n <button\n onClick={() => {\n setIsEditing(false);\n setEditedText(\"\");\n }}\n className=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-zinc-800 hover:bg-zinc-700 text-zinc-300 text-sm transition-colors\"\n >\n <X size={14} />\n Cancel\n </button>\n <button\n onClick={handleSubmitEdit}\n disabled={!editedText.trim()}\n className=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-white text-black text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed\"\n >\n <Send size={14} />\n Send\n </button>\n </div>\n </div>\n ) : (\n <>\n <div className=\"text-[15px] font-normal leading-relaxed rounded-2xl rounded-tr-sm px-5 py-3.5 bg-zinc-900 border border-zinc-900 text-white shadow-lg max-w-full break-words overflow-wrap-anywhere \">\n {textContent}\n </div>\n <div\n className=\"\n absolute right-1 my-2 flex items-center gap-2\n opacity-0 group-hover:opacity-100\n transition-opacity duration-300\n z-10\n \"\n >\n <Pencil\n size={16}\n className=\"text-zinc-500 cursor-pointer hover:text-white\"\n onClick={() => {\n setIsEditing(true);\n setEditedText(textContent);\n }}\n />\n\n <Copy\n size={16}\n className=\"text-zinc-500 cursor-pointer hover:text-white\"\n onClick={() => {\n navigator.clipboard.writeText(textContent);\n }}\n />\n </div>\n </>\n )}\n </div>\n )}\n\n {documents.length > 0 && (\n <div className=\"flex flex-col gap-2 max-w-[90%]\">\n {documents.map((doc, idx) => (\n <div\n key={`${message.id}-doc-${idx}`}\n className=\"flex items-center gap-3 bg-gradient-to-br from-zinc-800/90 to-zinc-900/90 backdrop-blur-sm px-4 py-2.5 rounded-xl border border-zinc-700/50 shadow-md hover:border-blue-500/40 hover:shadow-lg hover:shadow-blue-500/10 transition-all duration-200 cursor-pointer group/file\"\n >\n <div className=\"p-1.5 bg-blue-500/10 rounded-lg border border-blue-500/20 group-hover/file:bg-blue-500/20 transition-colors\">\n <FileIcon size={16} className=\"text-blue-400 shrink-0\" />\n </div>\n <span className=\"text-sm text-zinc-200 truncate font-medium\">\n {doc.source?.filename || `Document ${idx + 1}`}\n </span>\n </div>\n ))}\n </div>\n )}\n </div>\n\n <div\n className=\"size-9 shrink-0 flex items-center justify-center\"\n data-alt=\"User Avatar\"\n >\n <CircleUser className=\"text-white\" size={22} />\n </div>\n </div>\n );\n}\n\n// Memoize with deep comparison on message ID\nexport default React.memo(HumanMessage, (prevProps, nextProps) => {\n return prevProps.message.id === nextProps.message.id;\n});\n"],"names":["React"],"mappings":"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"}
|
package/dist/index.es252.js
CHANGED
package/dist/index.es253.js
CHANGED
package/dist/index.es258.js
CHANGED
package/dist/index.es26.js
CHANGED
|
@@ -1,151 +1,107 @@
|
|
|
1
|
-
import { jsxs,
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
let documents = [];
|
|
14
|
-
if (typeof content === "string") {
|
|
15
|
-
textContent = content;
|
|
16
|
-
} else if (Array.isArray(content)) {
|
|
17
|
-
textContent = content.filter((c) => c.type === "text").map((c) => c.type === "text" ? c.text : "").join("");
|
|
18
|
-
documents = content.filter((c) => c.type === "document") ?? [];
|
|
19
|
-
}
|
|
20
|
-
const handleSubmitEdit = () => {
|
|
21
|
-
if (!editedText.trim()) {
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
setIsEditing(false);
|
|
25
|
-
const newMessage = { type: "human", content: editedText };
|
|
26
|
-
thread.submit(
|
|
27
|
-
{ messages: [newMessage] },
|
|
28
|
-
{
|
|
29
|
-
checkpoint: parentCheckpoint,
|
|
30
|
-
streamMode: ["values"],
|
|
31
|
-
streamSubgraphs: true,
|
|
32
|
-
streamResumable: true,
|
|
33
|
-
optimisticValues: (prev) => {
|
|
34
|
-
const values = meta?.firstSeenState?.values;
|
|
35
|
-
if (!values) return prev;
|
|
36
|
-
return {
|
|
37
|
-
...values,
|
|
38
|
-
messages: [...values.messages ?? [], newMessage]
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
);
|
|
43
|
-
};
|
|
44
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex items-end gap-3 justify-end w-full group my-1", children: [
|
|
45
|
-
/* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col gap-2 items-end min-w-0", children: [
|
|
46
|
-
/* @__PURE__ */ jsx("span", { className: "text-zinc-400 text-xs font-medium mr-1 opacity-80", children: "You" }),
|
|
47
|
-
textContent && /* @__PURE__ */ jsx("div", { className: "relative", children: isEditing ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2 w-full", children: [
|
|
48
|
-
/* @__PURE__ */ jsx(
|
|
49
|
-
"textarea",
|
|
50
|
-
{
|
|
51
|
-
value: editedText,
|
|
52
|
-
onChange: (e) => setEditedText(e.target.value),
|
|
53
|
-
onKeyDown: (e) => {
|
|
54
|
-
if (e.key === "Enter") {
|
|
55
|
-
e.preventDefault();
|
|
56
|
-
handleSubmitEdit();
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
className: "text-[15px] font-normal leading-relaxed rounded-2xl rounded-tr-sm px-5 py-3.5 bg-zinc-900 border border-zinc-800 text-white shadow-lg break-words overflow-wrap-anywhere resize-none focus:outline-none min-h-[60px]",
|
|
60
|
-
autoFocus: true
|
|
61
|
-
}
|
|
62
|
-
),
|
|
63
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-end gap-2", children: [
|
|
64
|
-
/* @__PURE__ */ jsxs(
|
|
65
|
-
"button",
|
|
66
|
-
{
|
|
67
|
-
onClick: () => {
|
|
68
|
-
setIsEditing(false);
|
|
69
|
-
setEditedText("");
|
|
70
|
-
},
|
|
71
|
-
className: "flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-zinc-800 hover:bg-zinc-700 text-zinc-300 text-sm transition-colors",
|
|
72
|
-
children: [
|
|
73
|
-
/* @__PURE__ */ jsx(X, { size: 14 }),
|
|
74
|
-
"Cancel"
|
|
75
|
-
]
|
|
76
|
-
}
|
|
77
|
-
),
|
|
78
|
-
/* @__PURE__ */ jsxs(
|
|
79
|
-
"button",
|
|
80
|
-
{
|
|
81
|
-
onClick: handleSubmitEdit,
|
|
82
|
-
disabled: !editedText.trim(),
|
|
83
|
-
className: "flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-white text-black text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed",
|
|
84
|
-
children: [
|
|
85
|
-
/* @__PURE__ */ jsx(Send, { size: 14 }),
|
|
86
|
-
"Send"
|
|
87
|
-
]
|
|
88
|
-
}
|
|
89
|
-
)
|
|
90
|
-
] })
|
|
91
|
-
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
92
|
-
/* @__PURE__ */ jsx("div", { className: "text-[15px] font-normal leading-relaxed rounded-2xl rounded-tr-sm px-5 py-3.5 bg-zinc-900 border border-zinc-900 text-white shadow-lg max-w-full break-words overflow-wrap-anywhere ", children: textContent }),
|
|
93
|
-
/* @__PURE__ */ jsxs(
|
|
94
|
-
"div",
|
|
95
|
-
{
|
|
96
|
-
className: "\n absolute right-1 my-2 flex items-center gap-2\n opacity-0 group-hover:opacity-100\n transition-opacity duration-300\n z-10\n ",
|
|
97
|
-
children: [
|
|
98
|
-
/* @__PURE__ */ jsx(
|
|
99
|
-
Pencil,
|
|
100
|
-
{
|
|
101
|
-
size: 16,
|
|
102
|
-
className: "text-zinc-500 cursor-pointer hover:text-white",
|
|
103
|
-
onClick: () => {
|
|
104
|
-
setIsEditing(true);
|
|
105
|
-
setEditedText(textContent);
|
|
106
|
-
}
|
|
1
|
+
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
function Thinking() {
|
|
3
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
4
|
+
/* @__PURE__ */ jsx("style", { children: `
|
|
5
|
+
.loader-wrapper {
|
|
6
|
+
position: relative;
|
|
7
|
+
display: flex;
|
|
8
|
+
align-items: center;
|
|
9
|
+
justify-content: flex-start;
|
|
10
|
+
color: white;
|
|
11
|
+
user-select: none;
|
|
12
|
+
gap: 10px;
|
|
107
13
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
14
|
+
|
|
15
|
+
.loader {
|
|
16
|
+
width: 20px;
|
|
17
|
+
height: 20px;
|
|
18
|
+
aspect-ratio: 1 / 1;
|
|
19
|
+
border-radius: 50%;
|
|
20
|
+
background-color: transparent;
|
|
21
|
+
animation: loader-rotate 1.5s linear infinite;
|
|
22
|
+
z-index: 0;
|
|
117
23
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
24
|
+
|
|
25
|
+
@keyframes loader-rotate {
|
|
26
|
+
0% {
|
|
27
|
+
transform: rotate(90deg);
|
|
28
|
+
box-shadow:
|
|
29
|
+
0 1px 1px 0 #fff inset,
|
|
30
|
+
0 3px 5px 0 #ff5f9f inset,
|
|
31
|
+
0 4px 4px 0 #0693ff inset;
|
|
32
|
+
}
|
|
33
|
+
50% {
|
|
34
|
+
transform: rotate(270deg);
|
|
35
|
+
background: #7c0911;
|
|
36
|
+
box-shadow:
|
|
37
|
+
0 1px 1px 0 #fff inset,
|
|
38
|
+
0 3px 5px 0 #d60a47 inset,
|
|
39
|
+
0 4px 4px 0 #fbef19 inset;
|
|
40
|
+
}
|
|
41
|
+
100% {
|
|
42
|
+
transform: rotate(450deg);
|
|
43
|
+
box-shadow:
|
|
44
|
+
0 1px 1px 0 #fff inset,
|
|
45
|
+
0 3px 5px 0 #ff5f9f inset,
|
|
46
|
+
0 4px 4px 0 #28a9ff inset;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.letter-wrapper {
|
|
51
|
+
display: flex;
|
|
52
|
+
gap: 1px;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.loader-letter {
|
|
56
|
+
display: inline-block;
|
|
57
|
+
opacity: 0.4;
|
|
58
|
+
transform: translateY(0);
|
|
59
|
+
animation: loader-letter-anim 2s infinite;
|
|
60
|
+
z-index: 1;
|
|
61
|
+
border-radius: 50ch;
|
|
62
|
+
border: none;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.loader-letter:nth-child(1) { animation-delay: 0s; }
|
|
66
|
+
.loader-letter:nth-child(2) { animation-delay: 0.1s; }
|
|
67
|
+
.loader-letter:nth-child(3) { animation-delay: 0.2s; }
|
|
68
|
+
.loader-letter:nth-child(4) { animation-delay: 0.3s; }
|
|
69
|
+
.loader-letter:nth-child(5) { animation-delay: 0.4s; }
|
|
70
|
+
.loader-letter:nth-child(6) { animation-delay: 0.5s; }
|
|
71
|
+
.loader-letter:nth-child(7) { animation-delay: 0.6s; }
|
|
72
|
+
.loader-letter:nth-child(8) { animation-delay: 0.7s; }
|
|
73
|
+
|
|
74
|
+
@keyframes loader-letter-anim {
|
|
75
|
+
0%, 100% {
|
|
76
|
+
opacity: 0.4;
|
|
77
|
+
transform: translateY(0);
|
|
78
|
+
}
|
|
79
|
+
20% {
|
|
80
|
+
opacity: 1;
|
|
81
|
+
transform: scale(1.15);
|
|
82
|
+
}
|
|
83
|
+
40% {
|
|
84
|
+
opacity: 0.7;
|
|
85
|
+
transform: translateY(0);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
` }),
|
|
89
|
+
/* @__PURE__ */ jsxs("div", { className: "loader-wrapper", children: [
|
|
90
|
+
/* @__PURE__ */ jsx("div", { className: "loader" }),
|
|
91
|
+
/* @__PURE__ */ jsxs("div", { className: "letter-wrapper", children: [
|
|
92
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "T" }),
|
|
93
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "h" }),
|
|
94
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "i" }),
|
|
95
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "n" }),
|
|
96
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "k" }),
|
|
97
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "i" }),
|
|
98
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "n" }),
|
|
99
|
+
/* @__PURE__ */ jsx("span", { className: "loader-letter", children: "g" })
|
|
100
|
+
] })
|
|
101
|
+
] })
|
|
143
102
|
] });
|
|
144
103
|
}
|
|
145
|
-
const HumanMessage$1 = React__default.memo(HumanMessage, (prevProps, nextProps) => {
|
|
146
|
-
return prevProps.message.id === nextProps.message.id;
|
|
147
|
-
});
|
|
148
104
|
export {
|
|
149
|
-
|
|
105
|
+
Thinking as default
|
|
150
106
|
};
|
|
151
107
|
//# sourceMappingURL=index.es26.js.map
|
package/dist/index.es26.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es26.js","sources":["../src/components/
|
|
1
|
+
{"version":3,"file":"index.es26.js","sources":["../src/components/Thinking.tsx"],"sourcesContent":["export default function Thinking() {\n return (\n <>\n <style>{`\n .loader-wrapper {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n color: white;\n user-select: none;\n gap: 10px;\n }\n\n .loader {\n width: 20px;\n height: 20px;\n aspect-ratio: 1 / 1;\n border-radius: 50%;\n background-color: transparent;\n animation: loader-rotate 1.5s linear infinite;\n z-index: 0;\n }\n\n @keyframes loader-rotate {\n 0% {\n transform: rotate(90deg);\n box-shadow:\n 0 1px 1px 0 #fff inset,\n 0 3px 5px 0 #ff5f9f inset,\n 0 4px 4px 0 #0693ff inset;\n }\n 50% {\n transform: rotate(270deg);\n background: #7c0911;\n box-shadow:\n 0 1px 1px 0 #fff inset,\n 0 3px 5px 0 #d60a47 inset,\n 0 4px 4px 0 #fbef19 inset;\n }\n 100% {\n transform: rotate(450deg);\n box-shadow:\n 0 1px 1px 0 #fff inset,\n 0 3px 5px 0 #ff5f9f inset,\n 0 4px 4px 0 #28a9ff inset;\n }\n }\n\n .letter-wrapper {\n display: flex;\n gap: 1px;\n }\n\n .loader-letter {\n display: inline-block;\n opacity: 0.4;\n transform: translateY(0);\n animation: loader-letter-anim 2s infinite;\n z-index: 1;\n border-radius: 50ch;\n border: none;\n }\n\n .loader-letter:nth-child(1) { animation-delay: 0s; }\n .loader-letter:nth-child(2) { animation-delay: 0.1s; }\n .loader-letter:nth-child(3) { animation-delay: 0.2s; }\n .loader-letter:nth-child(4) { animation-delay: 0.3s; }\n .loader-letter:nth-child(5) { animation-delay: 0.4s; }\n .loader-letter:nth-child(6) { animation-delay: 0.5s; }\n .loader-letter:nth-child(7) { animation-delay: 0.6s; }\n .loader-letter:nth-child(8) { animation-delay: 0.7s; }\n\n @keyframes loader-letter-anim {\n 0%, 100% {\n opacity: 0.4;\n transform: translateY(0);\n }\n 20% {\n opacity: 1;\n transform: scale(1.15);\n }\n 40% {\n opacity: 0.7;\n transform: translateY(0);\n }\n }\n `}</style>\n <div className=\"loader-wrapper\">\n <div className=\"loader\"></div>\n <div className=\"letter-wrapper\">\n <span className=\"loader-letter\">T</span>\n <span className=\"loader-letter\">h</span>\n <span className=\"loader-letter\">i</span>\n <span className=\"loader-letter\">n</span>\n <span className=\"loader-letter\">k</span>\n <span className=\"loader-letter\">i</span>\n <span className=\"loader-letter\">n</span>\n <span className=\"loader-letter\">g</span>\n </div>\n </div>\n </>\n )\n}\n"],"names":[],"mappings":";AAAA,SAAwB,WAAW;AAC/B,SACI,qBAAA,UAAA,EACI,UAAA;AAAA,IAAA,oBAAC,SAAA,EAAO,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAoFN;AAAA,IACF,qBAAC,OAAA,EAAI,WAAU,kBACX,UAAA;AAAA,MAAA,oBAAC,OAAA,EAAI,WAAU,SAAA,CAAS;AAAA,MACxB,qBAAC,OAAA,EAAI,WAAU,kBACX,UAAA;AAAA,QAAA,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,KAAC;AAAA,QACjC,oBAAC,QAAA,EAAK,WAAU,iBAAgB,UAAA,IAAA,CAAC;AAAA,MAAA,EAAA,CACrC;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;"}
|
package/dist/index.es260.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "uuid";
|
|
2
|
-
import { RunTree } from "./index.
|
|
2
|
+
import { RunTree } from "./index.es120.js";
|
|
3
|
+
import "./index.es117.js";
|
|
3
4
|
import "./index.es118.js";
|
|
4
5
|
import "./index.es119.js";
|
|
5
|
-
import "./index.es120.js";
|
|
6
6
|
const __version__ = "0.4.6";
|
|
7
7
|
export {
|
|
8
8
|
RunTree,
|
package/dist/index.es262.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { getEnvironmentVariable } from "./index.
|
|
1
|
+
import { getEnvironmentVariable } from "./index.es186.js";
|
|
2
2
|
import { Client } from "./index.es280.js";
|
|
3
|
-
import "./index.
|
|
3
|
+
import "./index.es120.js";
|
|
4
4
|
import "uuid";
|
|
5
5
|
let client;
|
|
6
6
|
const getDefaultLangChainClientSingleton = () => {
|
package/dist/index.es265.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { $constructor } from "./index.es264.js";
|
|
2
|
-
import { jsonStringifyReplacer } from "./index.
|
|
2
|
+
import { jsonStringifyReplacer } from "./index.es126.js";
|
|
3
3
|
const initializer = (inst, def) => {
|
|
4
4
|
inst.name = "$ZodError";
|
|
5
5
|
Object.defineProperty(inst, "_zod", {
|
package/dist/index.es267.js
CHANGED