@gendive/chatllm 0.17.21 → 0.17.23
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/react/index.js +81 -86
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +84 -89
- package/dist/react/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/react/index.mjs
CHANGED
|
@@ -1191,7 +1191,7 @@ var useProject = (options) => {
|
|
|
1191
1191
|
}
|
|
1192
1192
|
};
|
|
1193
1193
|
loadProjects();
|
|
1194
|
-
}, [useExternalStorage, onLoadProjects, onError, storageKey]);
|
|
1194
|
+
}, [enabled, useExternalStorage, onLoadProjects, onError, storageKey]);
|
|
1195
1195
|
const createProject = useCallback4(
|
|
1196
1196
|
async (data) => {
|
|
1197
1197
|
const now = Date.now();
|
|
@@ -1433,11 +1433,6 @@ var parsePollFromContent = (content) => {
|
|
|
1433
1433
|
allowOther,
|
|
1434
1434
|
required: false
|
|
1435
1435
|
};
|
|
1436
|
-
console.log("[pollParser] Parsed poll:", {
|
|
1437
|
-
question: pollQuestion.question,
|
|
1438
|
-
optionsCount: pollQuestion.options.length,
|
|
1439
|
-
options: pollQuestion.options.map((o) => o.label)
|
|
1440
|
-
});
|
|
1441
1436
|
polls.push(pollQuestion);
|
|
1442
1437
|
}
|
|
1443
1438
|
cleanContent = cleanContent.replace(match[0], "");
|
|
@@ -1445,7 +1440,6 @@ var parsePollFromContent = (content) => {
|
|
|
1445
1440
|
if (polls.length === 0) {
|
|
1446
1441
|
return { pollBlock: null, cleanContent: content };
|
|
1447
1442
|
}
|
|
1448
|
-
console.log("[pollParser] Total polls parsed:", polls.length, polls.map((p) => p.question));
|
|
1449
1443
|
cleanContent = cleanContent.replace(/\n{3,}/g, "\n\n");
|
|
1450
1444
|
return {
|
|
1451
1445
|
pollBlock: {
|
|
@@ -1730,7 +1724,8 @@ var useChatUI = (options) => {
|
|
|
1730
1724
|
}),
|
|
1731
1725
|
[globalMemoryConfig, storageKey]
|
|
1732
1726
|
);
|
|
1733
|
-
const
|
|
1727
|
+
const globalMemoryRaw = useGlobalMemory(memoryOptions);
|
|
1728
|
+
const globalMemory = useGlobalMemoryEnabled ? globalMemoryRaw : null;
|
|
1734
1729
|
const stableToolCall = useCallback5(
|
|
1735
1730
|
(name, params) => onToolCallRef.current(name, params),
|
|
1736
1731
|
[]
|
|
@@ -2349,7 +2344,7 @@ ${finalContent}`;
|
|
|
2349
2344
|
...userContentParts && { contentParts: userContentParts }
|
|
2350
2345
|
};
|
|
2351
2346
|
const capturedSessionId = sessionId;
|
|
2352
|
-
const currentSession2 =
|
|
2347
|
+
const currentSession2 = sessionsRef.current.find((s) => s.id === capturedSessionId);
|
|
2353
2348
|
const existingMessages = currentSession2?.messages || [];
|
|
2354
2349
|
const isFirstMessage = !existingMessages.length;
|
|
2355
2350
|
const contextSummary = currentSession2?.compressionState?.contextSummary || currentSession2?.contextSummary;
|
|
@@ -2366,6 +2361,9 @@ ${finalContent}`;
|
|
|
2366
2361
|
setInput("");
|
|
2367
2362
|
setQuotedText(null);
|
|
2368
2363
|
setSelectedAction(null);
|
|
2364
|
+
attachments.forEach((a) => {
|
|
2365
|
+
if (a.previewUrl) URL.revokeObjectURL(a.previewUrl);
|
|
2366
|
+
});
|
|
2369
2367
|
setAttachments([]);
|
|
2370
2368
|
setSessions(
|
|
2371
2369
|
(prev) => prev.map((s) => {
|
|
@@ -3777,7 +3775,7 @@ var ProjectSelector = ({
|
|
|
3777
3775
|
width: "8px",
|
|
3778
3776
|
height: "8px",
|
|
3779
3777
|
borderRadius: "50%",
|
|
3780
|
-
backgroundColor: currentProject?.color || "var(--chatllm-primary, #
|
|
3778
|
+
backgroundColor: currentProject?.color || "var(--chatllm-primary, #3584FA)",
|
|
3781
3779
|
flexShrink: 0
|
|
3782
3780
|
}
|
|
3783
3781
|
}
|
|
@@ -3863,7 +3861,7 @@ var ProjectSelector = ({
|
|
|
3863
3861
|
width: "8px",
|
|
3864
3862
|
height: "8px",
|
|
3865
3863
|
borderRadius: "50%",
|
|
3866
|
-
backgroundColor: project.color || "var(--chatllm-primary, #
|
|
3864
|
+
backgroundColor: project.color || "var(--chatllm-primary, #3584FA)",
|
|
3867
3865
|
flexShrink: 0
|
|
3868
3866
|
}
|
|
3869
3867
|
}
|
|
@@ -3937,8 +3935,8 @@ var ProjectSelector = ({
|
|
|
3937
3935
|
e.currentTarget.style.backgroundColor = "transparent";
|
|
3938
3936
|
},
|
|
3939
3937
|
children: [
|
|
3940
|
-
/* @__PURE__ */ jsx2(IconSvg, { name: "add-line", size: 16, color: "var(--chatllm-primary, #
|
|
3941
|
-
/* @__PURE__ */ jsx2("span", { style: { fontSize: "13px", fontWeight: 500, color: "var(--chatllm-primary, #
|
|
3938
|
+
/* @__PURE__ */ jsx2(IconSvg, { name: "add-line", size: 16, color: "var(--chatllm-primary, #3584FA)" }),
|
|
3939
|
+
/* @__PURE__ */ jsx2("span", { style: { fontSize: "13px", fontWeight: 500, color: "var(--chatllm-primary, #3584FA)" }, children: "\uC0C8 \uD504\uB85C\uC81D\uD2B8" })
|
|
3942
3940
|
]
|
|
3943
3941
|
}
|
|
3944
3942
|
)
|
|
@@ -4431,13 +4429,13 @@ var ChatHeader = ({
|
|
|
4431
4429
|
transition: "all 0.2s"
|
|
4432
4430
|
},
|
|
4433
4431
|
onMouseOver: (e) => {
|
|
4434
|
-
e.currentTarget.style.borderColor = "var(--chatllm-primary, #
|
|
4432
|
+
e.currentTarget.style.borderColor = "var(--chatllm-primary, #3584FA)";
|
|
4435
4433
|
},
|
|
4436
4434
|
onMouseOut: (e) => {
|
|
4437
4435
|
e.currentTarget.style.borderColor = "var(--chatllm-border, #e5e7eb)";
|
|
4438
4436
|
},
|
|
4439
4437
|
children: [
|
|
4440
|
-
/* @__PURE__ */ jsx4(IconSvg, { name: "robot-line", size: 16, color: "var(--chatllm-primary, #
|
|
4438
|
+
/* @__PURE__ */ jsx4(IconSvg, { name: "robot-line", size: 16, color: "var(--chatllm-primary, #3584FA)" }),
|
|
4441
4439
|
/* @__PURE__ */ jsx4("span", { style: { fontSize: "14px", fontWeight: 500, color: "var(--chatllm-text, #1f2937)" }, children: currentModel?.name || model }),
|
|
4442
4440
|
/* @__PURE__ */ jsx4(
|
|
4443
4441
|
IconSvg,
|
|
@@ -4534,7 +4532,7 @@ var ChatHeader = ({
|
|
|
4534
4532
|
width: "28px",
|
|
4535
4533
|
height: "28px",
|
|
4536
4534
|
borderRadius: "6px",
|
|
4537
|
-
backgroundColor: m.id === model ? "var(--chatllm-primary, #
|
|
4535
|
+
backgroundColor: m.id === model ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-bg-secondary, #f3f4f6)",
|
|
4538
4536
|
display: "flex",
|
|
4539
4537
|
alignItems: "center",
|
|
4540
4538
|
justifyContent: "center"
|
|
@@ -4568,7 +4566,7 @@ var ChatHeader = ({
|
|
|
4568
4566
|
{
|
|
4569
4567
|
name: "check-line",
|
|
4570
4568
|
size: 16,
|
|
4571
|
-
color: "var(--chatllm-primary, #
|
|
4569
|
+
color: "var(--chatllm-primary, #3584FA)",
|
|
4572
4570
|
className: "ml-auto"
|
|
4573
4571
|
}
|
|
4574
4572
|
)
|
|
@@ -5720,7 +5718,7 @@ var parseInlineElements = (text, key, sources) => {
|
|
|
5720
5718
|
target: "_blank",
|
|
5721
5719
|
rel: "noopener noreferrer",
|
|
5722
5720
|
style: {
|
|
5723
|
-
color: "var(--chatllm-link, #
|
|
5721
|
+
color: "var(--chatllm-link, #3584FA)",
|
|
5724
5722
|
textDecoration: "none"
|
|
5725
5723
|
},
|
|
5726
5724
|
children: match[1]
|
|
@@ -5749,7 +5747,7 @@ var parseInlineElements = (text, key, sources) => {
|
|
|
5749
5747
|
height: "18px",
|
|
5750
5748
|
borderRadius: "50%",
|
|
5751
5749
|
backgroundColor: "var(--chatllm-primary-light, #dbeafe)",
|
|
5752
|
-
color: "var(--chatllm-primary, #
|
|
5750
|
+
color: "var(--chatllm-primary, #3584FA)",
|
|
5753
5751
|
fontSize: "11px",
|
|
5754
5752
|
fontWeight: 600,
|
|
5755
5753
|
textDecoration: "none",
|
|
@@ -5891,7 +5889,7 @@ var ThinkingSpinner = () => /* @__PURE__ */ jsx7(
|
|
|
5891
5889
|
width: "12px",
|
|
5892
5890
|
height: "12px",
|
|
5893
5891
|
border: "2px solid var(--chatllm-border, #e5e7eb)",
|
|
5894
|
-
borderTopColor: "var(--chatllm-primary, #
|
|
5892
|
+
borderTopColor: "var(--chatllm-primary, #3584FA)",
|
|
5895
5893
|
borderRadius: "50%",
|
|
5896
5894
|
animation: "chatllm-spin 0.8s linear infinite"
|
|
5897
5895
|
}
|
|
@@ -6332,7 +6330,7 @@ var ChoiceButtons = ({ choices, title, onChoiceClick }) => {
|
|
|
6332
6330
|
width: "28px",
|
|
6333
6331
|
height: "28px",
|
|
6334
6332
|
borderRadius: "50%",
|
|
6335
|
-
backgroundColor: hoveredIndex === index ? "var(--chatllm-primary, #
|
|
6333
|
+
backgroundColor: hoveredIndex === index ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-bg-tertiary, #f3f4f6)",
|
|
6336
6334
|
color: hoveredIndex === index ? "#ffffff" : "var(--chatllm-text, #374151)",
|
|
6337
6335
|
fontSize: "14px",
|
|
6338
6336
|
fontWeight: 600,
|
|
@@ -6542,7 +6540,7 @@ var MarkdownRenderer = ({
|
|
|
6542
6540
|
style: {
|
|
6543
6541
|
margin: "12px 0",
|
|
6544
6542
|
padding: "12px 16px",
|
|
6545
|
-
borderLeft: "4px solid var(--chatllm-primary, #
|
|
6543
|
+
borderLeft: "4px solid var(--chatllm-primary, #3584FA)",
|
|
6546
6544
|
backgroundColor: "var(--chatllm-bg-secondary, #f9fafb)",
|
|
6547
6545
|
borderRadius: "0 8px 8px 0",
|
|
6548
6546
|
color: "var(--chatllm-text, #374151)"
|
|
@@ -6602,7 +6600,7 @@ var MarkdownRenderer = ({
|
|
|
6602
6600
|
width: "18px",
|
|
6603
6601
|
height: "18px",
|
|
6604
6602
|
borderRadius: "50%",
|
|
6605
|
-
border: "2px solid var(--chatllm-primary, #
|
|
6603
|
+
border: "2px solid var(--chatllm-primary, #3584FA)",
|
|
6606
6604
|
borderTopColor: "transparent",
|
|
6607
6605
|
animation: "chatllm-spin 0.8s linear infinite"
|
|
6608
6606
|
}
|
|
@@ -6772,7 +6770,7 @@ var MarkdownRenderer = ({
|
|
|
6772
6770
|
flushBlockquote();
|
|
6773
6771
|
flushTable();
|
|
6774
6772
|
return elements;
|
|
6775
|
-
}, [content, onChoiceClick, sources]);
|
|
6773
|
+
}, [content, onChoiceClick, sources, showThinking, thinkingDefaultOpen]);
|
|
6776
6774
|
return /* @__PURE__ */ jsx7(
|
|
6777
6775
|
"div",
|
|
6778
6776
|
{
|
|
@@ -7170,7 +7168,10 @@ var PollCard = ({
|
|
|
7170
7168
|
useEffect7(() => {
|
|
7171
7169
|
if (typeof window === "undefined") return;
|
|
7172
7170
|
const handleKeyDown = (e) => {
|
|
7173
|
-
if (e.key
|
|
7171
|
+
if (e.key !== "Escape") return;
|
|
7172
|
+
const modalOpen = document.querySelector(".chatllm-settings-overlay, .chatllm-disclaimer-overlay, .chatllm-project-settings-overlay");
|
|
7173
|
+
if (modalOpen) return;
|
|
7174
|
+
handleSkip();
|
|
7174
7175
|
};
|
|
7175
7176
|
window.addEventListener("keydown", handleKeyDown);
|
|
7176
7177
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
@@ -7245,11 +7246,11 @@ var PollCard = ({
|
|
|
7245
7246
|
padding: "12px 16px",
|
|
7246
7247
|
backgroundColor: isActive ? "var(--chatllm-content-bg, #fff)" : "transparent",
|
|
7247
7248
|
border: "none",
|
|
7248
|
-
borderBottom: isActive ? "2px solid var(--chatllm-primary, #
|
|
7249
|
+
borderBottom: isActive ? "2px solid var(--chatllm-primary, #3584FA)" : "2px solid transparent",
|
|
7249
7250
|
cursor: "pointer",
|
|
7250
7251
|
fontSize: "13px",
|
|
7251
7252
|
fontWeight: isActive ? 600 : 500,
|
|
7252
|
-
color: isActive ? "var(--chatllm-primary, #
|
|
7253
|
+
color: isActive ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-text-muted, #64748b)",
|
|
7253
7254
|
display: "flex",
|
|
7254
7255
|
alignItems: "center",
|
|
7255
7256
|
justifyContent: "center",
|
|
@@ -7316,8 +7317,8 @@ var PollCard = ({
|
|
|
7316
7317
|
alignItems: "flex-start",
|
|
7317
7318
|
gap: "12px",
|
|
7318
7319
|
padding: "12px 14px",
|
|
7319
|
-
backgroundColor: isSelected ? "var(--chatllm-primary-light, rgba(
|
|
7320
|
-
border: isSelected ? "1px solid var(--chatllm-primary, #
|
|
7320
|
+
backgroundColor: isSelected ? "var(--chatllm-primary-light, rgba(53, 132, 250, 0.08))" : "transparent",
|
|
7321
|
+
border: isSelected ? "1px solid var(--chatllm-primary, #3584FA)" : "1px solid var(--chatllm-border, #e5e7eb)",
|
|
7321
7322
|
borderRadius: "8px",
|
|
7322
7323
|
cursor: "pointer",
|
|
7323
7324
|
textAlign: "left",
|
|
@@ -7334,8 +7335,8 @@ var PollCard = ({
|
|
|
7334
7335
|
width: "20px",
|
|
7335
7336
|
height: "20px",
|
|
7336
7337
|
borderRadius: currentQuestion.multiSelect ? "4px" : "50%",
|
|
7337
|
-
border: `2px solid ${isSelected ? "var(--chatllm-primary, #
|
|
7338
|
-
backgroundColor: isSelected ? "var(--chatllm-primary, #
|
|
7338
|
+
border: `2px solid ${isSelected ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-border, #d1d5db)"}`,
|
|
7339
|
+
backgroundColor: isSelected ? "var(--chatllm-primary, #3584FA)" : "transparent",
|
|
7339
7340
|
display: "flex",
|
|
7340
7341
|
alignItems: "center",
|
|
7341
7342
|
justifyContent: "center",
|
|
@@ -7390,8 +7391,8 @@ var PollCard = ({
|
|
|
7390
7391
|
alignItems: "center",
|
|
7391
7392
|
gap: "12px",
|
|
7392
7393
|
padding: "12px 14px",
|
|
7393
|
-
backgroundColor: otherSelected[currentQuestion.id] ? "var(--chatllm-primary-light, rgba(
|
|
7394
|
-
border: otherSelected[currentQuestion.id] ? "1px solid var(--chatllm-primary, #
|
|
7394
|
+
backgroundColor: otherSelected[currentQuestion.id] ? "var(--chatllm-primary-light, rgba(53, 132, 250, 0.08))" : "transparent",
|
|
7395
|
+
border: otherSelected[currentQuestion.id] ? "1px solid var(--chatllm-primary, #3584FA)" : "1px solid var(--chatllm-border, #e5e7eb)",
|
|
7395
7396
|
borderRadius: "8px",
|
|
7396
7397
|
cursor: "pointer",
|
|
7397
7398
|
textAlign: "left",
|
|
@@ -7407,8 +7408,8 @@ var PollCard = ({
|
|
|
7407
7408
|
width: "20px",
|
|
7408
7409
|
height: "20px",
|
|
7409
7410
|
borderRadius: currentQuestion.multiSelect ? "4px" : "50%",
|
|
7410
|
-
border: `2px solid ${otherSelected[currentQuestion.id] ? "var(--chatllm-primary, #
|
|
7411
|
-
backgroundColor: otherSelected[currentQuestion.id] ? "var(--chatllm-primary, #
|
|
7411
|
+
border: `2px solid ${otherSelected[currentQuestion.id] ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-border, #d1d5db)"}`,
|
|
7412
|
+
backgroundColor: otherSelected[currentQuestion.id] ? "var(--chatllm-primary, #3584FA)" : "transparent",
|
|
7412
7413
|
display: "flex",
|
|
7413
7414
|
alignItems: "center",
|
|
7414
7415
|
justifyContent: "center",
|
|
@@ -7483,7 +7484,7 @@ var PollCard = ({
|
|
|
7483
7484
|
disabled: !currentHasSelection,
|
|
7484
7485
|
style: {
|
|
7485
7486
|
padding: "8px 20px",
|
|
7486
|
-
backgroundColor: currentHasSelection ? "var(--chatllm-primary, #
|
|
7487
|
+
backgroundColor: currentHasSelection ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-bg-disabled, #e5e7eb)",
|
|
7487
7488
|
border: "none",
|
|
7488
7489
|
borderRadius: "6px",
|
|
7489
7490
|
color: currentHasSelection ? "#fff" : "var(--chatllm-text-muted, #94a3b8)",
|
|
@@ -7548,7 +7549,7 @@ var SkillProgressUI = ({
|
|
|
7548
7549
|
marginTop: "8px",
|
|
7549
7550
|
backgroundColor: isError ? "rgba(239, 68, 68, 0.08)" : "var(--chatllm-primary-light)",
|
|
7550
7551
|
borderRadius: "12px",
|
|
7551
|
-
border: `1px solid ${isError ? "rgba(239, 68, 68, 0.2)" : "rgba(
|
|
7552
|
+
border: `1px solid ${isError ? "rgba(239, 68, 68, 0.2)" : "rgba(53, 132, 250, 0.15)"}`
|
|
7552
7553
|
},
|
|
7553
7554
|
children: [
|
|
7554
7555
|
isExecuting && /* @__PURE__ */ jsx10(
|
|
@@ -7786,13 +7787,13 @@ var FileContentCard = ({ part }) => {
|
|
|
7786
7787
|
width: "36px",
|
|
7787
7788
|
height: "36px",
|
|
7788
7789
|
borderRadius: "8px",
|
|
7789
|
-
backgroundColor: "var(--chatllm-primary-light, rgba(
|
|
7790
|
+
backgroundColor: "var(--chatllm-primary-light, rgba(53, 132, 250, 0.1))",
|
|
7790
7791
|
display: "flex",
|
|
7791
7792
|
alignItems: "center",
|
|
7792
7793
|
justifyContent: "center",
|
|
7793
7794
|
flexShrink: 0
|
|
7794
7795
|
},
|
|
7795
|
-
children: /* @__PURE__ */ jsx12(IconSvg, { name: getFileIcon(part.mimeType), size: 18, color: "var(--chatllm-primary, #
|
|
7796
|
+
children: /* @__PURE__ */ jsx12(IconSvg, { name: getFileIcon(part.mimeType), size: 18, color: "var(--chatllm-primary, #3584FA)" })
|
|
7796
7797
|
}
|
|
7797
7798
|
),
|
|
7798
7799
|
/* @__PURE__ */ jsxs11("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
@@ -7904,7 +7905,7 @@ var ToolStatusCard = ({
|
|
|
7904
7905
|
width: 14,
|
|
7905
7906
|
height: 14,
|
|
7906
7907
|
borderRadius: "50%",
|
|
7907
|
-
border: "2px solid var(--chatllm-primary, #
|
|
7908
|
+
border: "2px solid var(--chatllm-primary, #3584FA)",
|
|
7908
7909
|
borderTopColor: "transparent",
|
|
7909
7910
|
animation: "chatllm-spin 1s linear infinite",
|
|
7910
7911
|
flexShrink: 0
|
|
@@ -8142,13 +8143,6 @@ var MessageBubble = ({
|
|
|
8142
8143
|
const displayContent = isAssistant && relevantAlternatives && relevantAlternatives.length > 0 && relevantActiveIndex > 0 ? relevantAlternatives[relevantActiveIndex - 1]?.content || message.content : message.content;
|
|
8143
8144
|
const displayModel = isAssistant && relevantAlternatives && relevantAlternatives.length > 0 && relevantActiveIndex > 0 ? relevantAlternatives[relevantActiveIndex - 1]?.model : message.model;
|
|
8144
8145
|
const displaySources = isAssistant && relevantAlternatives && relevantAlternatives.length > 0 && relevantActiveIndex > 0 ? relevantAlternatives[relevantActiveIndex - 1]?.sources : message.sources;
|
|
8145
|
-
const handleMouseUp = () => {
|
|
8146
|
-
if (!onQuote) return;
|
|
8147
|
-
const selection = typeof window !== "undefined" ? window.getSelection() : null;
|
|
8148
|
-
const text = selection?.toString().trim();
|
|
8149
|
-
if (text && text.length > 0) {
|
|
8150
|
-
}
|
|
8151
|
-
};
|
|
8152
8146
|
if (isUser) {
|
|
8153
8147
|
return /* @__PURE__ */ jsxs14(
|
|
8154
8148
|
"div",
|
|
@@ -8162,7 +8156,6 @@ var MessageBubble = ({
|
|
|
8162
8156
|
},
|
|
8163
8157
|
onMouseEnter: () => setShowActions(true),
|
|
8164
8158
|
onMouseLeave: () => setShowActions(false),
|
|
8165
|
-
onMouseUp: handleMouseUp,
|
|
8166
8159
|
children: [
|
|
8167
8160
|
/* @__PURE__ */ jsx15(
|
|
8168
8161
|
"div",
|
|
@@ -8283,7 +8276,6 @@ var MessageBubble = ({
|
|
|
8283
8276
|
},
|
|
8284
8277
|
onMouseEnter: () => setShowActions(true),
|
|
8285
8278
|
onMouseLeave: () => setShowActions(false),
|
|
8286
|
-
onMouseUp: handleMouseUp,
|
|
8287
8279
|
children: [
|
|
8288
8280
|
/* @__PURE__ */ jsxs14(
|
|
8289
8281
|
"div",
|
|
@@ -8386,7 +8378,7 @@ var MessageBubble = ({
|
|
|
8386
8378
|
]
|
|
8387
8379
|
}
|
|
8388
8380
|
),
|
|
8389
|
-
message.contentParts?.length && /* @__PURE__ */ jsx15("div", { style: { wordBreak: "break-word" }, children: /* @__PURE__ */ jsx15(
|
|
8381
|
+
!!message.contentParts?.length && /* @__PURE__ */ jsx15("div", { style: { wordBreak: "break-word" }, children: /* @__PURE__ */ jsx15(
|
|
8390
8382
|
ContentPartRenderer,
|
|
8391
8383
|
{
|
|
8392
8384
|
parts: message.contentParts,
|
|
@@ -8580,7 +8572,7 @@ var MessageBubble = ({
|
|
|
8580
8572
|
backgroundColor: "var(--chatllm-primary-light, #eff6ff)",
|
|
8581
8573
|
borderRadius: "8px",
|
|
8582
8574
|
fontSize: "13px",
|
|
8583
|
-
color: "var(--chatllm-primary, #
|
|
8575
|
+
color: "var(--chatllm-primary, #3584FA)"
|
|
8584
8576
|
},
|
|
8585
8577
|
children: [
|
|
8586
8578
|
/* @__PURE__ */ jsxs14("div", { style: { display: "flex", gap: "4px", alignItems: "center" }, children: [
|
|
@@ -8985,7 +8977,7 @@ var MessageList = ({
|
|
|
8985
8977
|
};
|
|
8986
8978
|
|
|
8987
8979
|
// src/react/components/SettingsModal.tsx
|
|
8988
|
-
import { useState as useState16 } from "react";
|
|
8980
|
+
import { useState as useState16, useEffect as useEffect9 } from "react";
|
|
8989
8981
|
import { jsx as jsx17, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
8990
8982
|
var DEFAULT_PERSONALIZATION2 = {
|
|
8991
8983
|
responseStyle: {
|
|
@@ -9023,6 +9015,9 @@ var SettingsModal = ({
|
|
|
9023
9015
|
}) => {
|
|
9024
9016
|
const [activeTab, setActiveTab] = useState16("general");
|
|
9025
9017
|
const [localApiKey, setLocalApiKey] = useState16(apiKey);
|
|
9018
|
+
useEffect9(() => {
|
|
9019
|
+
setLocalApiKey(apiKey);
|
|
9020
|
+
}, [apiKey]);
|
|
9026
9021
|
if (!isOpen) return null;
|
|
9027
9022
|
const updateResponseStyle = (key, value) => {
|
|
9028
9023
|
onPersonalizationChange({
|
|
@@ -9306,7 +9301,7 @@ var SettingsModal = ({
|
|
|
9306
9301
|
onClick: onSave,
|
|
9307
9302
|
style: {
|
|
9308
9303
|
padding: "10px 24px",
|
|
9309
|
-
backgroundColor: "var(--chatllm-primary, #
|
|
9304
|
+
backgroundColor: "var(--chatllm-primary, #3584FA)",
|
|
9310
9305
|
color: "#fff",
|
|
9311
9306
|
border: "none",
|
|
9312
9307
|
borderRadius: "8px",
|
|
@@ -9351,7 +9346,7 @@ var SettingsModal = ({
|
|
|
9351
9346
|
width: "48px",
|
|
9352
9347
|
height: "28px",
|
|
9353
9348
|
borderRadius: "14px",
|
|
9354
|
-
backgroundColor: personalization.useMemory ? "var(--chatllm-primary, #
|
|
9349
|
+
backgroundColor: personalization.useMemory ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-text-muted, #d1d5db)",
|
|
9355
9350
|
border: "none",
|
|
9356
9351
|
cursor: "pointer",
|
|
9357
9352
|
position: "relative",
|
|
@@ -9409,7 +9404,7 @@ var TabButton = ({ active, onClick, icon, label }) => /* @__PURE__ */ jsxs16(
|
|
|
9409
9404
|
border: "none",
|
|
9410
9405
|
backgroundColor: active ? "var(--chatllm-bg, #ffffff)" : "transparent",
|
|
9411
9406
|
boxShadow: active ? "0 1px 3px rgba(0, 0, 0, 0.08)" : "none",
|
|
9412
|
-
color: active ? "var(--chatllm-primary, #
|
|
9407
|
+
color: active ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-text-muted, #6b7280)",
|
|
9413
9408
|
fontSize: "14px",
|
|
9414
9409
|
cursor: "pointer",
|
|
9415
9410
|
textAlign: "left",
|
|
@@ -9523,8 +9518,8 @@ var MemoryTabContent = ({ items, contextSummary, onDelete, onClearAll, title = "
|
|
|
9523
9518
|
fontSize: "13px",
|
|
9524
9519
|
fontWeight: activeFilter === tab ? 500 : 400,
|
|
9525
9520
|
backgroundColor: activeFilter === tab ? "var(--chatllm-primary-light, #dbeafe)" : "var(--chatllm-bg-secondary, #f9fafb)",
|
|
9526
|
-
color: activeFilter === tab ? "var(--chatllm-primary, #
|
|
9527
|
-
border: "1px solid " + (activeFilter === tab ? "var(--chatllm-primary, #
|
|
9521
|
+
color: activeFilter === tab ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-text-muted, #6b7280)",
|
|
9522
|
+
border: "1px solid " + (activeFilter === tab ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-border, #e5e7eb)"),
|
|
9528
9523
|
borderRadius: "8px",
|
|
9529
9524
|
cursor: "pointer"
|
|
9530
9525
|
},
|
|
@@ -9540,12 +9535,12 @@ var MemoryTabContent = ({ items, contextSummary, onDelete, onClearAll, title = "
|
|
|
9540
9535
|
marginBottom: "16px",
|
|
9541
9536
|
backgroundColor: "var(--chatllm-bg-secondary, #f9fafb)",
|
|
9542
9537
|
borderRadius: "10px",
|
|
9543
|
-
borderLeft: "3px solid var(--chatllm-primary, #
|
|
9538
|
+
borderLeft: "3px solid var(--chatllm-primary, #3584FA)"
|
|
9544
9539
|
},
|
|
9545
9540
|
children: [
|
|
9546
9541
|
/* @__PURE__ */ jsxs16("div", { style: { display: "flex", alignItems: "center", gap: "6px", marginBottom: "8px" }, children: [
|
|
9547
|
-
/* @__PURE__ */ jsx17(IconSvg, { name: "file-text-line", size: 14, color: "var(--chatllm-primary, #
|
|
9548
|
-
/* @__PURE__ */ jsx17("span", { style: { fontSize: "12px", fontWeight: 500, color: "var(--chatllm-primary, #
|
|
9542
|
+
/* @__PURE__ */ jsx17(IconSvg, { name: "file-text-line", size: 14, color: "var(--chatllm-primary, #3584FA)" }),
|
|
9543
|
+
/* @__PURE__ */ jsx17("span", { style: { fontSize: "12px", fontWeight: 500, color: "var(--chatllm-primary, #3584FA)" }, children: "\uB300\uD654 \uC694\uC57D" })
|
|
9549
9544
|
] }),
|
|
9550
9545
|
/* @__PURE__ */ jsx17("p", { style: { fontSize: "13px", lineHeight: "1.6", color: "var(--chatllm-text, #374151)", margin: 0 }, children: contextSummary })
|
|
9551
9546
|
]
|
|
@@ -9662,10 +9657,10 @@ var MemoryTabContent = ({ items, contextSummary, onDelete, onClearAll, title = "
|
|
|
9662
9657
|
};
|
|
9663
9658
|
|
|
9664
9659
|
// src/react/components/ProjectSettingsModal.tsx
|
|
9665
|
-
import { useState as useState17, useEffect as
|
|
9660
|
+
import { useState as useState17, useEffect as useEffect10 } from "react";
|
|
9666
9661
|
import { jsx as jsx18, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
9667
9662
|
var COLOR_PRESETS = [
|
|
9668
|
-
"#
|
|
9663
|
+
"#3584FA",
|
|
9669
9664
|
"#7c3aed",
|
|
9670
9665
|
"#db2777",
|
|
9671
9666
|
"#dc2626",
|
|
@@ -9687,13 +9682,13 @@ var ProjectSettingsModal = ({
|
|
|
9687
9682
|
const [title, setTitle] = useState17("");
|
|
9688
9683
|
const [description, setDescription] = useState17("");
|
|
9689
9684
|
const [instructions, setInstructions] = useState17("");
|
|
9690
|
-
const [color, setColor] = useState17("#
|
|
9691
|
-
|
|
9685
|
+
const [color, setColor] = useState17("#3584FA");
|
|
9686
|
+
useEffect10(() => {
|
|
9692
9687
|
if (project) {
|
|
9693
9688
|
setTitle(project.title);
|
|
9694
9689
|
setDescription(project.description || "");
|
|
9695
9690
|
setInstructions(project.instructions || "");
|
|
9696
|
-
setColor(project.color || "#
|
|
9691
|
+
setColor(project.color || "#3584FA");
|
|
9697
9692
|
}
|
|
9698
9693
|
}, [project]);
|
|
9699
9694
|
if (!isOpen || !project) return null;
|
|
@@ -9736,8 +9731,8 @@ var ProjectSettingsModal = ({
|
|
|
9736
9731
|
padding: "8px 16px",
|
|
9737
9732
|
fontSize: "13px",
|
|
9738
9733
|
fontWeight: activeTab === tab ? 600 : 400,
|
|
9739
|
-
color: activeTab === tab ? "var(--chatllm-primary, #
|
|
9740
|
-
borderBottom: activeTab === tab ? "2px solid var(--chatllm-primary, #
|
|
9734
|
+
color: activeTab === tab ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-text-muted, #999)",
|
|
9735
|
+
borderBottom: activeTab === tab ? "2px solid var(--chatllm-primary, #3584FA)" : "2px solid transparent",
|
|
9741
9736
|
background: "none",
|
|
9742
9737
|
border: "none",
|
|
9743
9738
|
borderBottomStyle: "solid",
|
|
@@ -9924,7 +9919,7 @@ var ProjectSettingsModal = ({
|
|
|
9924
9919
|
padding: "8px 20px",
|
|
9925
9920
|
borderRadius: "6px",
|
|
9926
9921
|
border: "none",
|
|
9927
|
-
backgroundColor: "var(--chatllm-primary, #
|
|
9922
|
+
backgroundColor: "var(--chatllm-primary, #3584FA)",
|
|
9928
9923
|
color: "#fff",
|
|
9929
9924
|
fontSize: "13px",
|
|
9930
9925
|
fontWeight: 500,
|
|
@@ -9967,7 +9962,7 @@ var ProjectSettingsModal = ({
|
|
|
9967
9962
|
padding: "8px 20px",
|
|
9968
9963
|
borderRadius: "6px",
|
|
9969
9964
|
border: "none",
|
|
9970
|
-
backgroundColor: "var(--chatllm-primary, #
|
|
9965
|
+
backgroundColor: "var(--chatllm-primary, #3584FA)",
|
|
9971
9966
|
color: "#fff",
|
|
9972
9967
|
fontSize: "13px",
|
|
9973
9968
|
fontWeight: 500,
|
|
@@ -10142,7 +10137,7 @@ var DisclaimerModal = ({ isOpen, onClose }) => {
|
|
|
10142
10137
|
},
|
|
10143
10138
|
children: [
|
|
10144
10139
|
/* @__PURE__ */ jsxs18("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
|
|
10145
|
-
/* @__PURE__ */ jsx19(IconSvg, { name: "error-warning-line", size: 20, color: "var(--chatllm-primary, #
|
|
10140
|
+
/* @__PURE__ */ jsx19(IconSvg, { name: "error-warning-line", size: 20, color: "var(--chatllm-primary, #3584FA)" }),
|
|
10146
10141
|
/* @__PURE__ */ jsx19(
|
|
10147
10142
|
"h2",
|
|
10148
10143
|
{
|
|
@@ -10201,7 +10196,7 @@ var DisclaimerModal = ({ isOpen, onClose }) => {
|
|
|
10201
10196
|
padding: "14px 16px",
|
|
10202
10197
|
backgroundColor: "var(--chatllm-primary-light, #eff6ff)",
|
|
10203
10198
|
borderRadius: "10px",
|
|
10204
|
-
borderLeft: "3px solid var(--chatllm-primary, #
|
|
10199
|
+
borderLeft: "3px solid var(--chatllm-primary, #3584FA)",
|
|
10205
10200
|
marginBottom: "16px",
|
|
10206
10201
|
fontSize: "13px",
|
|
10207
10202
|
lineHeight: 1.7
|
|
@@ -10252,7 +10247,7 @@ var DisclaimerModal = ({ isOpen, onClose }) => {
|
|
|
10252
10247
|
{
|
|
10253
10248
|
href: "mailto:info@gendive.ai",
|
|
10254
10249
|
style: {
|
|
10255
|
-
color: "var(--chatllm-primary, #
|
|
10250
|
+
color: "var(--chatllm-primary, #3584FA)",
|
|
10256
10251
|
textDecoration: "none",
|
|
10257
10252
|
fontWeight: 600
|
|
10258
10253
|
},
|
|
@@ -10330,9 +10325,9 @@ var injectStyles = () => {
|
|
|
10330
10325
|
}
|
|
10331
10326
|
|
|
10332
10327
|
.chatllm-root {
|
|
10333
|
-
--chatllm-primary: #
|
|
10334
|
-
--chatllm-primary-hover: #
|
|
10335
|
-
--chatllm-primary-light: rgba(
|
|
10328
|
+
--chatllm-primary: #3584FA;
|
|
10329
|
+
--chatllm-primary-hover: #2D70D5;
|
|
10330
|
+
--chatllm-primary-light: rgba(53, 132, 250, 0.1);
|
|
10336
10331
|
--chatllm-bg: #F5F5F5;
|
|
10337
10332
|
--chatllm-bg-secondary: #F5F5F5;
|
|
10338
10333
|
--chatllm-bg-tertiary: #EDEDED;
|
|
@@ -10357,9 +10352,9 @@ var injectStyles = () => {
|
|
|
10357
10352
|
}
|
|
10358
10353
|
|
|
10359
10354
|
.chatllm-root.chatllm-dark {
|
|
10360
|
-
--chatllm-primary: #
|
|
10361
|
-
--chatllm-primary-hover: #
|
|
10362
|
-
--chatllm-primary-light: rgba(
|
|
10355
|
+
--chatllm-primary: #3584FA;
|
|
10356
|
+
--chatllm-primary-hover: #2D70D5;
|
|
10357
|
+
--chatllm-primary-light: rgba(53, 132, 250, 0.15);
|
|
10363
10358
|
--chatllm-bg: #0f172a;
|
|
10364
10359
|
--chatllm-bg-secondary: #1e293b;
|
|
10365
10360
|
--chatllm-bg-tertiary: #334155;
|
|
@@ -10424,8 +10419,8 @@ var injectStyles = () => {
|
|
|
10424
10419
|
}
|
|
10425
10420
|
|
|
10426
10421
|
.chatllm-input-container:focus-within {
|
|
10427
|
-
border-color: rgba(
|
|
10428
|
-
box-shadow: var(--chatllm-shadow-input), 0 0 0 4px rgba(
|
|
10422
|
+
border-color: rgba(53, 132, 250, 0.3);
|
|
10423
|
+
box-shadow: var(--chatllm-shadow-input), 0 0 0 4px rgba(53, 132, 250, 0.05);
|
|
10429
10424
|
}
|
|
10430
10425
|
|
|
10431
10426
|
.chatllm-dot-bounce {
|
|
@@ -10488,7 +10483,7 @@ var injectStyles = () => {
|
|
|
10488
10483
|
border-radius: var(--chatllm-radius);
|
|
10489
10484
|
font-weight: 600;
|
|
10490
10485
|
transition: all 0.2s ease;
|
|
10491
|
-
box-shadow: 0 2px 8px rgba(
|
|
10486
|
+
box-shadow: 0 2px 8px rgba(53, 132, 250, 0.25);
|
|
10492
10487
|
}
|
|
10493
10488
|
|
|
10494
10489
|
.chatllm-btn-primary:hover {
|
|
@@ -10511,7 +10506,7 @@ var injectStyles = () => {
|
|
|
10511
10506
|
|
|
10512
10507
|
.chatllm-btn-secondary:hover {
|
|
10513
10508
|
background: var(--chatllm-bg-hover);
|
|
10514
|
-
border-color: rgba(
|
|
10509
|
+
border-color: rgba(53, 132, 250, 0.3);
|
|
10515
10510
|
}
|
|
10516
10511
|
`;
|
|
10517
10512
|
document.head.appendChild(style);
|
|
@@ -11595,9 +11590,9 @@ var MemoryPanel = ({
|
|
|
11595
11590
|
width: "48px",
|
|
11596
11591
|
height: "48px",
|
|
11597
11592
|
borderRadius: "50%",
|
|
11598
|
-
backgroundColor: "var(--chatllm-primary, #
|
|
11593
|
+
backgroundColor: "var(--chatllm-primary, #3584FA)",
|
|
11599
11594
|
border: "none",
|
|
11600
|
-
boxShadow: "0 4px 12px rgba(
|
|
11595
|
+
boxShadow: "0 4px 12px rgba(53, 132, 250, 0.3)",
|
|
11601
11596
|
cursor: "pointer",
|
|
11602
11597
|
display: "flex",
|
|
11603
11598
|
alignItems: "center",
|
|
@@ -11652,7 +11647,7 @@ var MemoryPanel = ({
|
|
|
11652
11647
|
alignItems: "center",
|
|
11653
11648
|
justifyContent: "center"
|
|
11654
11649
|
},
|
|
11655
|
-
children: /* @__PURE__ */ jsx22(IconSvg, { name: "robot-line", size: 18, color: "var(--chatllm-primary, #
|
|
11650
|
+
children: /* @__PURE__ */ jsx22(IconSvg, { name: "robot-line", size: 18, color: "var(--chatllm-primary, #3584FA)" })
|
|
11656
11651
|
}
|
|
11657
11652
|
),
|
|
11658
11653
|
/* @__PURE__ */ jsxs21("div", { children: [
|
|
@@ -11716,7 +11711,7 @@ var MemoryPanel = ({
|
|
|
11716
11711
|
fontSize: "13px",
|
|
11717
11712
|
fontWeight: activeTab === tab ? 500 : 400,
|
|
11718
11713
|
backgroundColor: activeTab === tab ? "var(--chatllm-primary-light, #dbeafe)" : "transparent",
|
|
11719
|
-
color: activeTab === tab ? "var(--chatllm-primary, #
|
|
11714
|
+
color: activeTab === tab ? "var(--chatllm-primary, #3584FA)" : "var(--chatllm-text-muted, #6b7280)",
|
|
11720
11715
|
border: "none",
|
|
11721
11716
|
borderRadius: "6px",
|
|
11722
11717
|
cursor: "pointer",
|
|
@@ -11737,7 +11732,7 @@ var MemoryPanel = ({
|
|
|
11737
11732
|
marginBottom: "12px",
|
|
11738
11733
|
backgroundColor: "var(--chatllm-bg-secondary, #f9fafb)",
|
|
11739
11734
|
borderRadius: "10px",
|
|
11740
|
-
borderLeft: "3px solid var(--chatllm-primary, #
|
|
11735
|
+
borderLeft: "3px solid var(--chatllm-primary, #3584FA)"
|
|
11741
11736
|
},
|
|
11742
11737
|
children: [
|
|
11743
11738
|
/* @__PURE__ */ jsxs21(
|
|
@@ -11750,8 +11745,8 @@ var MemoryPanel = ({
|
|
|
11750
11745
|
marginBottom: "8px"
|
|
11751
11746
|
},
|
|
11752
11747
|
children: [
|
|
11753
|
-
/* @__PURE__ */ jsx22(IconSvg, { name: "file-text-line", size: 14, color: "var(--chatllm-primary, #
|
|
11754
|
-
/* @__PURE__ */ jsx22("span", { style: { fontSize: "12px", fontWeight: 500, color: "var(--chatllm-primary, #
|
|
11748
|
+
/* @__PURE__ */ jsx22(IconSvg, { name: "file-text-line", size: 14, color: "var(--chatllm-primary, #3584FA)" }),
|
|
11749
|
+
/* @__PURE__ */ jsx22("span", { style: { fontSize: "12px", fontWeight: 500, color: "var(--chatllm-primary, #3584FA)" }, children: "\uB300\uD654 \uC694\uC57D" })
|
|
11755
11750
|
]
|
|
11756
11751
|
}
|
|
11757
11752
|
),
|