@gendive/chatllm 0.17.6 → 0.17.8
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.d.mts +5 -0
- package/dist/react/index.d.ts +5 -0
- package/dist/react/index.js +728 -571
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +728 -571
- package/dist/react/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/react/index.mjs
CHANGED
|
@@ -4648,7 +4648,8 @@ var ChatInput = ({
|
|
|
4648
4648
|
attachments = [],
|
|
4649
4649
|
onFileAttach,
|
|
4650
4650
|
onRemoveAttachment,
|
|
4651
|
-
acceptedFileTypes
|
|
4651
|
+
acceptedFileTypes,
|
|
4652
|
+
onDisclaimerClick
|
|
4652
4653
|
}) => {
|
|
4653
4654
|
const [mainMenuOpen, setMainMenuOpen] = React4.useState(false);
|
|
4654
4655
|
const textareaRef = useRef7(null);
|
|
@@ -4732,7 +4733,7 @@ var ChatInput = ({
|
|
|
4732
4733
|
};
|
|
4733
4734
|
return icon ? iconMap[icon] || "sparkling-line" : "sparkling-line";
|
|
4734
4735
|
};
|
|
4735
|
-
return /* @__PURE__ */
|
|
4736
|
+
return /* @__PURE__ */ jsxs4(
|
|
4736
4737
|
"footer",
|
|
4737
4738
|
{
|
|
4738
4739
|
className: "chatllm-input-footer",
|
|
@@ -4749,107 +4750,26 @@ var ChatInput = ({
|
|
|
4749
4750
|
background: "linear-gradient(to top, var(--chatllm-bg) 60%, transparent)",
|
|
4750
4751
|
pointerEvents: "none"
|
|
4751
4752
|
},
|
|
4752
|
-
children:
|
|
4753
|
-
|
|
4754
|
-
|
|
4755
|
-
|
|
4756
|
-
|
|
4757
|
-
|
|
4758
|
-
|
|
4759
|
-
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
|
|
4763
|
-
"
|
|
4764
|
-
{
|
|
4765
|
-
style: {
|
|
4766
|
-
display: "flex",
|
|
4767
|
-
alignItems: "center",
|
|
4768
|
-
gap: "8px",
|
|
4769
|
-
padding: "8px 14px",
|
|
4770
|
-
marginBottom: "12px",
|
|
4771
|
-
backgroundColor: "var(--chatllm-primary-light)",
|
|
4772
|
-
borderRadius: "9999px",
|
|
4773
|
-
fontSize: "13px",
|
|
4774
|
-
fontWeight: 500,
|
|
4775
|
-
color: "var(--chatllm-primary)"
|
|
4776
|
-
},
|
|
4777
|
-
children: [
|
|
4778
|
-
/* @__PURE__ */ jsx5(
|
|
4779
|
-
"span",
|
|
4780
|
-
{
|
|
4781
|
-
className: "chatllm-skeleton-pulse",
|
|
4782
|
-
style: {
|
|
4783
|
-
width: "8px",
|
|
4784
|
-
height: "8px",
|
|
4785
|
-
borderRadius: "50%",
|
|
4786
|
-
backgroundColor: "var(--chatllm-primary)"
|
|
4787
|
-
}
|
|
4788
|
-
}
|
|
4789
|
-
),
|
|
4790
|
-
activeSkillExecution.skillName,
|
|
4791
|
-
" \uC2E4\uD589 \uC911..."
|
|
4792
|
-
]
|
|
4793
|
-
}
|
|
4794
|
-
),
|
|
4795
|
-
(quotedText || selectedAction) && /* @__PURE__ */ jsxs4("div", { style: { display: "flex", gap: "8px", marginBottom: "12px", flexWrap: "wrap" }, children: [
|
|
4796
|
-
quotedText && /* @__PURE__ */ jsxs4(
|
|
4753
|
+
children: [
|
|
4754
|
+
/* @__PURE__ */ jsxs4(
|
|
4755
|
+
"div",
|
|
4756
|
+
{
|
|
4757
|
+
style: {
|
|
4758
|
+
width: "100%",
|
|
4759
|
+
maxWidth: "820px",
|
|
4760
|
+
padding: "0 24px",
|
|
4761
|
+
pointerEvents: "auto"
|
|
4762
|
+
},
|
|
4763
|
+
children: [
|
|
4764
|
+
activeSkillExecution && activeSkillExecution.status === "executing" && /* @__PURE__ */ jsxs4(
|
|
4797
4765
|
"div",
|
|
4798
4766
|
{
|
|
4799
4767
|
style: {
|
|
4800
4768
|
display: "flex",
|
|
4801
4769
|
alignItems: "center",
|
|
4802
4770
|
gap: "8px",
|
|
4803
|
-
padding: "8px 12px",
|
|
4804
|
-
backgroundColor: "var(--chatllm-content-bg)",
|
|
4805
|
-
borderRadius: "12px",
|
|
4806
|
-
border: "1px solid var(--chatllm-border)",
|
|
4807
|
-
maxWidth: "100%"
|
|
4808
|
-
},
|
|
4809
|
-
children: [
|
|
4810
|
-
/* @__PURE__ */ jsx5(IconSvg, { name: "double-quotes-l", size: 14, color: "var(--chatllm-primary)" }),
|
|
4811
|
-
/* @__PURE__ */ jsx5(
|
|
4812
|
-
"span",
|
|
4813
|
-
{
|
|
4814
|
-
style: {
|
|
4815
|
-
fontSize: "13px",
|
|
4816
|
-
color: "var(--chatllm-text)",
|
|
4817
|
-
overflow: "hidden",
|
|
4818
|
-
textOverflow: "ellipsis",
|
|
4819
|
-
whiteSpace: "nowrap",
|
|
4820
|
-
maxWidth: "300px"
|
|
4821
|
-
},
|
|
4822
|
-
children: quotedText
|
|
4823
|
-
}
|
|
4824
|
-
),
|
|
4825
|
-
/* @__PURE__ */ jsx5(
|
|
4826
|
-
"button",
|
|
4827
|
-
{
|
|
4828
|
-
onClick: onClearQuote,
|
|
4829
|
-
style: {
|
|
4830
|
-
padding: "2px",
|
|
4831
|
-
backgroundColor: "transparent",
|
|
4832
|
-
border: "none",
|
|
4833
|
-
borderRadius: "4px",
|
|
4834
|
-
cursor: "pointer",
|
|
4835
|
-
display: "flex",
|
|
4836
|
-
alignItems: "center",
|
|
4837
|
-
justifyContent: "center"
|
|
4838
|
-
},
|
|
4839
|
-
children: /* @__PURE__ */ jsx5(IconSvg, { name: "close-line", size: 14, color: "var(--chatllm-text-muted)" })
|
|
4840
|
-
}
|
|
4841
|
-
)
|
|
4842
|
-
]
|
|
4843
|
-
}
|
|
4844
|
-
),
|
|
4845
|
-
selectedAction && /* @__PURE__ */ jsxs4(
|
|
4846
|
-
"div",
|
|
4847
|
-
{
|
|
4848
|
-
style: {
|
|
4849
|
-
display: "flex",
|
|
4850
|
-
alignItems: "center",
|
|
4851
|
-
gap: "6px",
|
|
4852
4771
|
padding: "8px 14px",
|
|
4772
|
+
marginBottom: "12px",
|
|
4853
4773
|
backgroundColor: "var(--chatllm-primary-light)",
|
|
4854
4774
|
borderRadius: "9999px",
|
|
4855
4775
|
fontSize: "13px",
|
|
@@ -4857,315 +4777,265 @@ var ChatInput = ({
|
|
|
4857
4777
|
color: "var(--chatllm-primary)"
|
|
4858
4778
|
},
|
|
4859
4779
|
children: [
|
|
4860
|
-
/* @__PURE__ */ jsx5(IconSvg, { name: "sparkling-line", size: 14, color: "var(--chatllm-primary)" }),
|
|
4861
|
-
selectedAction.label,
|
|
4862
4780
|
/* @__PURE__ */ jsx5(
|
|
4863
|
-
"
|
|
4781
|
+
"span",
|
|
4864
4782
|
{
|
|
4865
|
-
|
|
4783
|
+
className: "chatllm-skeleton-pulse",
|
|
4866
4784
|
style: {
|
|
4867
|
-
|
|
4868
|
-
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
4872
|
-
display: "flex",
|
|
4873
|
-
alignItems: "center",
|
|
4874
|
-
justifyContent: "center"
|
|
4875
|
-
},
|
|
4876
|
-
children: /* @__PURE__ */ jsx5(IconSvg, { name: "close-line", size: 14, color: "var(--chatllm-primary)" })
|
|
4785
|
+
width: "8px",
|
|
4786
|
+
height: "8px",
|
|
4787
|
+
borderRadius: "50%",
|
|
4788
|
+
backgroundColor: "var(--chatllm-primary)"
|
|
4789
|
+
}
|
|
4877
4790
|
}
|
|
4878
|
-
)
|
|
4791
|
+
),
|
|
4792
|
+
activeSkillExecution.skillName,
|
|
4793
|
+
" \uC2E4\uD589 \uC911..."
|
|
4879
4794
|
]
|
|
4880
4795
|
}
|
|
4881
|
-
)
|
|
4882
|
-
|
|
4883
|
-
|
|
4884
|
-
|
|
4885
|
-
|
|
4886
|
-
|
|
4887
|
-
|
|
4888
|
-
|
|
4889
|
-
|
|
4890
|
-
|
|
4891
|
-
|
|
4892
|
-
|
|
4893
|
-
|
|
4894
|
-
|
|
4895
|
-
|
|
4896
|
-
|
|
4897
|
-
|
|
4898
|
-
|
|
4899
|
-
|
|
4900
|
-
onDragLeave: handleDragLeave,
|
|
4901
|
-
style: isDragOver ? { outline: "2px dashed var(--chatllm-primary)", outlineOffset: "-2px" } : void 0,
|
|
4902
|
-
children: [
|
|
4903
|
-
attachments.length > 0 && /* @__PURE__ */ jsx5(
|
|
4904
|
-
"div",
|
|
4905
|
-
{
|
|
4906
|
-
style: {
|
|
4907
|
-
display: "flex",
|
|
4908
|
-
gap: "8px",
|
|
4909
|
-
padding: "12px 24px 0 24px",
|
|
4910
|
-
flexWrap: "wrap"
|
|
4911
|
-
},
|
|
4912
|
-
children: attachments.map((att) => /* @__PURE__ */ jsxs4(
|
|
4913
|
-
"div",
|
|
4796
|
+
),
|
|
4797
|
+
(quotedText || selectedAction) && /* @__PURE__ */ jsxs4("div", { style: { display: "flex", gap: "8px", marginBottom: "12px", flexWrap: "wrap" }, children: [
|
|
4798
|
+
quotedText && /* @__PURE__ */ jsxs4(
|
|
4799
|
+
"div",
|
|
4800
|
+
{
|
|
4801
|
+
style: {
|
|
4802
|
+
display: "flex",
|
|
4803
|
+
alignItems: "center",
|
|
4804
|
+
gap: "8px",
|
|
4805
|
+
padding: "8px 12px",
|
|
4806
|
+
backgroundColor: "var(--chatllm-content-bg)",
|
|
4807
|
+
borderRadius: "12px",
|
|
4808
|
+
border: "1px solid var(--chatllm-border)",
|
|
4809
|
+
maxWidth: "100%"
|
|
4810
|
+
},
|
|
4811
|
+
children: [
|
|
4812
|
+
/* @__PURE__ */ jsx5(IconSvg, { name: "double-quotes-l", size: 14, color: "var(--chatllm-primary)" }),
|
|
4813
|
+
/* @__PURE__ */ jsx5(
|
|
4814
|
+
"span",
|
|
4914
4815
|
{
|
|
4915
4816
|
style: {
|
|
4916
|
-
|
|
4817
|
+
fontSize: "13px",
|
|
4818
|
+
color: "var(--chatllm-text)",
|
|
4819
|
+
overflow: "hidden",
|
|
4820
|
+
textOverflow: "ellipsis",
|
|
4821
|
+
whiteSpace: "nowrap",
|
|
4822
|
+
maxWidth: "300px"
|
|
4823
|
+
},
|
|
4824
|
+
children: quotedText
|
|
4825
|
+
}
|
|
4826
|
+
),
|
|
4827
|
+
/* @__PURE__ */ jsx5(
|
|
4828
|
+
"button",
|
|
4829
|
+
{
|
|
4830
|
+
onClick: onClearQuote,
|
|
4831
|
+
style: {
|
|
4832
|
+
padding: "2px",
|
|
4833
|
+
backgroundColor: "transparent",
|
|
4834
|
+
border: "none",
|
|
4835
|
+
borderRadius: "4px",
|
|
4836
|
+
cursor: "pointer",
|
|
4917
4837
|
display: "flex",
|
|
4918
4838
|
alignItems: "center",
|
|
4919
|
-
|
|
4920
|
-
padding: att.type === "image" ? "0" : "8px 12px",
|
|
4921
|
-
backgroundColor: "var(--chatllm-content-bg)",
|
|
4922
|
-
borderRadius: "12px",
|
|
4923
|
-
border: "1px solid var(--chatllm-border)",
|
|
4924
|
-
overflow: "hidden"
|
|
4839
|
+
justifyContent: "center"
|
|
4925
4840
|
},
|
|
4926
|
-
children:
|
|
4927
|
-
|
|
4928
|
-
|
|
4929
|
-
|
|
4930
|
-
|
|
4931
|
-
|
|
4932
|
-
|
|
4933
|
-
|
|
4934
|
-
|
|
4935
|
-
|
|
4936
|
-
|
|
4937
|
-
|
|
4938
|
-
|
|
4939
|
-
|
|
4940
|
-
|
|
4941
|
-
|
|
4942
|
-
|
|
4943
|
-
|
|
4944
|
-
|
|
4945
|
-
|
|
4946
|
-
|
|
4947
|
-
|
|
4948
|
-
|
|
4949
|
-
|
|
4950
|
-
|
|
4951
|
-
|
|
4952
|
-
|
|
4953
|
-
|
|
4954
|
-
|
|
4955
|
-
|
|
4956
|
-
|
|
4957
|
-
|
|
4958
|
-
|
|
4959
|
-
|
|
4960
|
-
|
|
4961
|
-
|
|
4962
|
-
|
|
4963
|
-
|
|
4964
|
-
|
|
4965
|
-
|
|
4841
|
+
children: /* @__PURE__ */ jsx5(IconSvg, { name: "close-line", size: 14, color: "var(--chatllm-text-muted)" })
|
|
4842
|
+
}
|
|
4843
|
+
)
|
|
4844
|
+
]
|
|
4845
|
+
}
|
|
4846
|
+
),
|
|
4847
|
+
selectedAction && /* @__PURE__ */ jsxs4(
|
|
4848
|
+
"div",
|
|
4849
|
+
{
|
|
4850
|
+
style: {
|
|
4851
|
+
display: "flex",
|
|
4852
|
+
alignItems: "center",
|
|
4853
|
+
gap: "6px",
|
|
4854
|
+
padding: "8px 14px",
|
|
4855
|
+
backgroundColor: "var(--chatllm-primary-light)",
|
|
4856
|
+
borderRadius: "9999px",
|
|
4857
|
+
fontSize: "13px",
|
|
4858
|
+
fontWeight: 500,
|
|
4859
|
+
color: "var(--chatllm-primary)"
|
|
4860
|
+
},
|
|
4861
|
+
children: [
|
|
4862
|
+
/* @__PURE__ */ jsx5(IconSvg, { name: "sparkling-line", size: 14, color: "var(--chatllm-primary)" }),
|
|
4863
|
+
selectedAction.label,
|
|
4864
|
+
/* @__PURE__ */ jsx5(
|
|
4865
|
+
"button",
|
|
4866
|
+
{
|
|
4867
|
+
onClick: onClearAction,
|
|
4868
|
+
style: {
|
|
4869
|
+
padding: "2px",
|
|
4870
|
+
backgroundColor: "transparent",
|
|
4871
|
+
border: "none",
|
|
4872
|
+
borderRadius: "4px",
|
|
4873
|
+
cursor: "pointer",
|
|
4874
|
+
display: "flex",
|
|
4875
|
+
alignItems: "center",
|
|
4876
|
+
justifyContent: "center"
|
|
4877
|
+
},
|
|
4878
|
+
children: /* @__PURE__ */ jsx5(IconSvg, { name: "close-line", size: 14, color: "var(--chatllm-primary)" })
|
|
4879
|
+
}
|
|
4880
|
+
)
|
|
4881
|
+
]
|
|
4882
|
+
}
|
|
4883
|
+
)
|
|
4884
|
+
] }),
|
|
4885
|
+
/* @__PURE__ */ jsx5(
|
|
4886
|
+
"input",
|
|
4887
|
+
{
|
|
4888
|
+
ref: fileInputRef,
|
|
4889
|
+
type: "file",
|
|
4890
|
+
multiple: true,
|
|
4891
|
+
accept: acceptedFileTypes?.join(",") || void 0,
|
|
4892
|
+
onChange: handleFileSelect,
|
|
4893
|
+
style: { display: "none" }
|
|
4894
|
+
}
|
|
4895
|
+
),
|
|
4896
|
+
/* @__PURE__ */ jsxs4(
|
|
4897
|
+
"div",
|
|
4898
|
+
{
|
|
4899
|
+
className: "chatllm-input-container",
|
|
4900
|
+
onDrop: handleDrop,
|
|
4901
|
+
onDragOver: handleDragOver,
|
|
4902
|
+
onDragLeave: handleDragLeave,
|
|
4903
|
+
style: isDragOver ? { outline: "2px dashed var(--chatllm-primary)", outlineOffset: "-2px" } : void 0,
|
|
4904
|
+
children: [
|
|
4905
|
+
attachments.length > 0 && /* @__PURE__ */ jsx5(
|
|
4906
|
+
"div",
|
|
4907
|
+
{
|
|
4908
|
+
style: {
|
|
4909
|
+
display: "flex",
|
|
4910
|
+
gap: "8px",
|
|
4911
|
+
padding: "12px 24px 0 24px",
|
|
4912
|
+
flexWrap: "wrap"
|
|
4966
4913
|
},
|
|
4967
|
-
att
|
|
4968
|
-
|
|
4969
|
-
|
|
4970
|
-
|
|
4971
|
-
|
|
4972
|
-
|
|
4973
|
-
|
|
4974
|
-
|
|
4975
|
-
|
|
4976
|
-
|
|
4977
|
-
|
|
4978
|
-
|
|
4979
|
-
|
|
4980
|
-
|
|
4981
|
-
|
|
4982
|
-
|
|
4983
|
-
|
|
4984
|
-
|
|
4985
|
-
|
|
4986
|
-
|
|
4987
|
-
|
|
4988
|
-
|
|
4989
|
-
|
|
4990
|
-
|
|
4991
|
-
|
|
4992
|
-
|
|
4993
|
-
|
|
4994
|
-
|
|
4995
|
-
|
|
4996
|
-
|
|
4997
|
-
|
|
4998
|
-
|
|
4999
|
-
|
|
5000
|
-
|
|
5001
|
-
|
|
5002
|
-
|
|
5003
|
-
|
|
5004
|
-
|
|
5005
|
-
|
|
5006
|
-
|
|
5007
|
-
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5016
|
-
),
|
|
5017
|
-
actionMenuOpen && /* @__PURE__ */ jsx5(
|
|
5018
|
-
"div",
|
|
5019
|
-
{
|
|
5020
|
-
style: {
|
|
5021
|
-
position: "absolute",
|
|
5022
|
-
bottom: "100%",
|
|
5023
|
-
left: 0,
|
|
5024
|
-
marginBottom: "8px",
|
|
5025
|
-
backgroundColor: "var(--chatllm-content-bg)",
|
|
5026
|
-
borderRadius: "16px",
|
|
5027
|
-
boxShadow: "var(--chatllm-shadow-sheet)",
|
|
5028
|
-
border: "1px solid var(--chatllm-border)",
|
|
5029
|
-
padding: "8px",
|
|
5030
|
-
minWidth: "220px",
|
|
5031
|
-
zIndex: 100
|
|
5032
|
-
},
|
|
5033
|
-
children: actions.map((action) => /* @__PURE__ */ jsxs4(
|
|
5034
|
-
"button",
|
|
5035
|
-
{
|
|
5036
|
-
onClick: () => handleActionSelect(action),
|
|
5037
|
-
style: {
|
|
5038
|
-
width: "100%",
|
|
5039
|
-
display: "flex",
|
|
5040
|
-
alignItems: "center",
|
|
5041
|
-
gap: "12px",
|
|
5042
|
-
padding: "12px",
|
|
5043
|
-
backgroundColor: "transparent",
|
|
5044
|
-
border: "none",
|
|
5045
|
-
borderRadius: "12px",
|
|
5046
|
-
cursor: "pointer",
|
|
5047
|
-
textAlign: "left",
|
|
5048
|
-
transition: "background-color 0.2s"
|
|
5049
|
-
},
|
|
5050
|
-
onMouseOver: (e) => {
|
|
5051
|
-
e.currentTarget.style.backgroundColor = "var(--chatllm-bg-hover)";
|
|
5052
|
-
},
|
|
5053
|
-
onMouseOut: (e) => {
|
|
5054
|
-
e.currentTarget.style.backgroundColor = "transparent";
|
|
5055
|
-
},
|
|
5056
|
-
children: [
|
|
5057
|
-
/* @__PURE__ */ jsx5(
|
|
5058
|
-
"div",
|
|
5059
|
-
{
|
|
5060
|
-
style: {
|
|
5061
|
-
width: "36px",
|
|
5062
|
-
height: "36px",
|
|
5063
|
-
display: "flex",
|
|
5064
|
-
alignItems: "center",
|
|
5065
|
-
justifyContent: "center",
|
|
5066
|
-
backgroundColor: "var(--chatllm-primary-light)",
|
|
5067
|
-
borderRadius: "10px"
|
|
5068
|
-
},
|
|
5069
|
-
children: /* @__PURE__ */ jsx5(
|
|
5070
|
-
IconSvg,
|
|
5071
|
-
{
|
|
5072
|
-
name: action.icon === "search" ? "search-line" : action.icon === "image" ? "image-line" : action.icon === "code" ? "code-s-slash-line" : "file-text-line",
|
|
5073
|
-
size: 20,
|
|
5074
|
-
color: "var(--chatllm-primary)"
|
|
5075
|
-
}
|
|
5076
|
-
)
|
|
5077
|
-
}
|
|
5078
|
-
),
|
|
5079
|
-
/* @__PURE__ */ jsxs4("div", { children: [
|
|
5080
|
-
/* @__PURE__ */ jsx5("div", { style: { fontSize: "14px", fontWeight: 600, color: "var(--chatllm-text)" }, children: action.label }),
|
|
5081
|
-
/* @__PURE__ */ jsx5("div", { style: { fontSize: "12px", color: "var(--chatllm-text-muted)" }, children: action.description })
|
|
5082
|
-
] })
|
|
5083
|
-
]
|
|
4914
|
+
children: attachments.map((att) => /* @__PURE__ */ jsxs4(
|
|
4915
|
+
"div",
|
|
4916
|
+
{
|
|
4917
|
+
style: {
|
|
4918
|
+
position: "relative",
|
|
4919
|
+
display: "flex",
|
|
4920
|
+
alignItems: "center",
|
|
4921
|
+
gap: "8px",
|
|
4922
|
+
padding: att.type === "image" ? "0" : "8px 12px",
|
|
4923
|
+
backgroundColor: "var(--chatllm-content-bg)",
|
|
4924
|
+
borderRadius: "12px",
|
|
4925
|
+
border: "1px solid var(--chatllm-border)",
|
|
4926
|
+
overflow: "hidden"
|
|
4927
|
+
},
|
|
4928
|
+
children: [
|
|
4929
|
+
att.type === "image" && att.previewUrl ? /* @__PURE__ */ jsx5(
|
|
4930
|
+
"img",
|
|
4931
|
+
{
|
|
4932
|
+
src: att.previewUrl,
|
|
4933
|
+
alt: att.name,
|
|
4934
|
+
style: {
|
|
4935
|
+
width: "64px",
|
|
4936
|
+
height: "64px",
|
|
4937
|
+
objectFit: "cover",
|
|
4938
|
+
borderRadius: "12px"
|
|
4939
|
+
}
|
|
4940
|
+
}
|
|
4941
|
+
) : /* @__PURE__ */ jsxs4(Fragment3, { children: [
|
|
4942
|
+
/* @__PURE__ */ jsx5(IconSvg, { name: "file-text-line", size: 16, color: "var(--chatllm-text-muted)" }),
|
|
4943
|
+
/* @__PURE__ */ jsx5("span", { style: { fontSize: "13px", color: "var(--chatllm-text)", maxWidth: "120px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: att.name })
|
|
4944
|
+
] }),
|
|
4945
|
+
/* @__PURE__ */ jsx5(
|
|
4946
|
+
"button",
|
|
4947
|
+
{
|
|
4948
|
+
onClick: () => onRemoveAttachment?.(att.id),
|
|
4949
|
+
style: {
|
|
4950
|
+
position: "absolute",
|
|
4951
|
+
top: "2px",
|
|
4952
|
+
right: "2px",
|
|
4953
|
+
width: "20px",
|
|
4954
|
+
height: "20px",
|
|
4955
|
+
display: "flex",
|
|
4956
|
+
alignItems: "center",
|
|
4957
|
+
justifyContent: "center",
|
|
4958
|
+
backgroundColor: "rgba(0,0,0,0.5)",
|
|
4959
|
+
border: "none",
|
|
4960
|
+
borderRadius: "50%",
|
|
4961
|
+
cursor: "pointer",
|
|
4962
|
+
padding: 0
|
|
5084
4963
|
},
|
|
5085
|
-
|
|
5086
|
-
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5092
|
-
|
|
5093
|
-
|
|
5094
|
-
|
|
5095
|
-
|
|
5096
|
-
|
|
5097
|
-
|
|
5098
|
-
|
|
5099
|
-
|
|
5100
|
-
|
|
5101
|
-
|
|
5102
|
-
|
|
5103
|
-
|
|
5104
|
-
|
|
5105
|
-
|
|
5106
|
-
|
|
5107
|
-
|
|
5108
|
-
|
|
5109
|
-
|
|
5110
|
-
|
|
5111
|
-
|
|
5112
|
-
|
|
5113
|
-
|
|
5114
|
-
|
|
5115
|
-
|
|
5116
|
-
|
|
5117
|
-
|
|
5118
|
-
|
|
5119
|
-
|
|
5120
|
-
|
|
5121
|
-
|
|
5122
|
-
|
|
5123
|
-
|
|
5124
|
-
|
|
5125
|
-
|
|
5126
|
-
|
|
5127
|
-
|
|
5128
|
-
|
|
5129
|
-
|
|
5130
|
-
|
|
5131
|
-
|
|
5132
|
-
|
|
5133
|
-
|
|
5134
|
-
|
|
5135
|
-
|
|
5136
|
-
|
|
5137
|
-
|
|
5138
|
-
|
|
5139
|
-
|
|
5140
|
-
|
|
5141
|
-
|
|
5142
|
-
|
|
5143
|
-
|
|
5144
|
-
|
|
5145
|
-
|
|
5146
|
-
|
|
5147
|
-
|
|
5148
|
-
|
|
5149
|
-
|
|
5150
|
-
|
|
5151
|
-
|
|
5152
|
-
|
|
5153
|
-
|
|
5154
|
-
|
|
5155
|
-
|
|
5156
|
-
|
|
5157
|
-
/* @__PURE__ */ jsx5(IconSvg, { name: "attachment-line", size: 20, color: "var(--chatllm-text-secondary)" }),
|
|
5158
|
-
/* @__PURE__ */ jsx5("span", { style: { fontSize: "14px", color: "var(--chatllm-text)" }, children: "\uD30C\uC77C \uB610\uB294 \uC0AC\uC9C4 \uCD94\uAC00" })
|
|
5159
|
-
]
|
|
5160
|
-
}
|
|
5161
|
-
),
|
|
5162
|
-
deepResearchEnabled && /* @__PURE__ */ jsxs4(
|
|
4964
|
+
children: /* @__PURE__ */ jsx5(IconSvg, { name: "close-line", size: 12, color: "#fff" })
|
|
4965
|
+
}
|
|
4966
|
+
)
|
|
4967
|
+
]
|
|
4968
|
+
},
|
|
4969
|
+
att.id
|
|
4970
|
+
))
|
|
4971
|
+
}
|
|
4972
|
+
),
|
|
4973
|
+
/* @__PURE__ */ jsx5(
|
|
4974
|
+
"textarea",
|
|
4975
|
+
{
|
|
4976
|
+
ref: textareaRef,
|
|
4977
|
+
value,
|
|
4978
|
+
onChange: (e) => onChange(e.target.value),
|
|
4979
|
+
onKeyDown: handleKeyDown,
|
|
4980
|
+
onPaste: handlePaste,
|
|
4981
|
+
placeholder,
|
|
4982
|
+
rows: 1,
|
|
4983
|
+
style: {
|
|
4984
|
+
width: "100%",
|
|
4985
|
+
minHeight: "60px",
|
|
4986
|
+
maxHeight: "200px",
|
|
4987
|
+
padding: "24px 32px 8px 32px",
|
|
4988
|
+
backgroundColor: "transparent",
|
|
4989
|
+
border: "none",
|
|
4990
|
+
outline: "none",
|
|
4991
|
+
fontSize: "16px",
|
|
4992
|
+
lineHeight: "1.5",
|
|
4993
|
+
resize: "none",
|
|
4994
|
+
color: "var(--chatllm-text)"
|
|
4995
|
+
}
|
|
4996
|
+
}
|
|
4997
|
+
),
|
|
4998
|
+
/* @__PURE__ */ jsxs4(
|
|
4999
|
+
"div",
|
|
5000
|
+
{
|
|
5001
|
+
style: {
|
|
5002
|
+
display: "flex",
|
|
5003
|
+
alignItems: "center",
|
|
5004
|
+
justifyContent: "space-between",
|
|
5005
|
+
padding: "0 24px 20px 24px"
|
|
5006
|
+
},
|
|
5007
|
+
children: [
|
|
5008
|
+
/* @__PURE__ */ jsxs4("div", { style: { display: "flex", alignItems: "center", gap: "4px" }, children: [
|
|
5009
|
+
actions.length > 0 && /* @__PURE__ */ jsxs4("div", { ref: actionMenuRef, style: { position: "relative" }, children: [
|
|
5010
|
+
/* @__PURE__ */ jsx5(
|
|
5011
|
+
"button",
|
|
5012
|
+
{
|
|
5013
|
+
onClick: () => setActionMenuOpen(!actionMenuOpen),
|
|
5014
|
+
style: iconButtonStyle,
|
|
5015
|
+
title: "\uAE30\uB2A5 \uCD94\uAC00",
|
|
5016
|
+
children: /* @__PURE__ */ jsx5(IconSvg, { name: "add-line", size: 22, color: "var(--chatllm-text-muted)" })
|
|
5017
|
+
}
|
|
5018
|
+
),
|
|
5019
|
+
actionMenuOpen && /* @__PURE__ */ jsx5(
|
|
5020
|
+
"div",
|
|
5021
|
+
{
|
|
5022
|
+
style: {
|
|
5023
|
+
position: "absolute",
|
|
5024
|
+
bottom: "100%",
|
|
5025
|
+
left: 0,
|
|
5026
|
+
marginBottom: "8px",
|
|
5027
|
+
backgroundColor: "var(--chatllm-content-bg)",
|
|
5028
|
+
borderRadius: "16px",
|
|
5029
|
+
boxShadow: "var(--chatllm-shadow-sheet)",
|
|
5030
|
+
border: "1px solid var(--chatllm-border)",
|
|
5031
|
+
padding: "8px",
|
|
5032
|
+
minWidth: "220px",
|
|
5033
|
+
zIndex: 100
|
|
5034
|
+
},
|
|
5035
|
+
children: actions.map((action) => /* @__PURE__ */ jsxs4(
|
|
5163
5036
|
"button",
|
|
5164
5037
|
{
|
|
5165
|
-
onClick: () =>
|
|
5166
|
-
onDeepResearch?.();
|
|
5167
|
-
setMainMenuOpen(false);
|
|
5168
|
-
},
|
|
5038
|
+
onClick: () => handleActionSelect(action),
|
|
5169
5039
|
style: {
|
|
5170
5040
|
width: "100%",
|
|
5171
5041
|
display: "flex",
|
|
@@ -5185,60 +5055,6 @@ var ChatInput = ({
|
|
|
5185
5055
|
onMouseOut: (e) => {
|
|
5186
5056
|
e.currentTarget.style.backgroundColor = "transparent";
|
|
5187
5057
|
},
|
|
5188
|
-
children: [
|
|
5189
|
-
/* @__PURE__ */ jsx5(
|
|
5190
|
-
IconSvg,
|
|
5191
|
-
{
|
|
5192
|
-
name: "search-eye-line",
|
|
5193
|
-
size: 20,
|
|
5194
|
-
color: isDeepResearchMode ? "var(--chatllm-primary)" : "var(--chatllm-text-secondary)"
|
|
5195
|
-
}
|
|
5196
|
-
),
|
|
5197
|
-
/* @__PURE__ */ jsx5(
|
|
5198
|
-
"span",
|
|
5199
|
-
{
|
|
5200
|
-
style: {
|
|
5201
|
-
flex: 1,
|
|
5202
|
-
fontSize: "14px",
|
|
5203
|
-
color: isDeepResearchMode ? "var(--chatllm-primary)" : "var(--chatllm-text)"
|
|
5204
|
-
},
|
|
5205
|
-
children: "\uC5F0\uAD6C"
|
|
5206
|
-
}
|
|
5207
|
-
),
|
|
5208
|
-
isDeepResearchMode && /* @__PURE__ */ jsx5(IconSvg, { name: "check-line", size: 16, color: "var(--chatllm-primary)" })
|
|
5209
|
-
]
|
|
5210
|
-
}
|
|
5211
|
-
),
|
|
5212
|
-
manualSkills.map((skill) => /* @__PURE__ */ jsxs4(
|
|
5213
|
-
"button",
|
|
5214
|
-
{
|
|
5215
|
-
onClick: () => {
|
|
5216
|
-
onSkillSelect?.(skill.name);
|
|
5217
|
-
setMainMenuOpen(false);
|
|
5218
|
-
},
|
|
5219
|
-
disabled: skill.disabled,
|
|
5220
|
-
style: {
|
|
5221
|
-
width: "100%",
|
|
5222
|
-
display: "flex",
|
|
5223
|
-
alignItems: "center",
|
|
5224
|
-
gap: "12px",
|
|
5225
|
-
padding: "12px",
|
|
5226
|
-
backgroundColor: "transparent",
|
|
5227
|
-
border: "none",
|
|
5228
|
-
borderRadius: "12px",
|
|
5229
|
-
cursor: skill.disabled ? "not-allowed" : "pointer",
|
|
5230
|
-
textAlign: "left",
|
|
5231
|
-
transition: "background-color 0.2s",
|
|
5232
|
-
opacity: skill.disabled ? 0.5 : 1
|
|
5233
|
-
},
|
|
5234
|
-
onMouseOver: (e) => {
|
|
5235
|
-
if (!skill.disabled) {
|
|
5236
|
-
e.currentTarget.style.backgroundColor = "var(--chatllm-bg-hover)";
|
|
5237
|
-
}
|
|
5238
|
-
},
|
|
5239
|
-
onMouseOut: (e) => {
|
|
5240
|
-
e.currentTarget.style.backgroundColor = "transparent";
|
|
5241
|
-
},
|
|
5242
5058
|
children: [
|
|
5243
5059
|
/* @__PURE__ */ jsx5(
|
|
5244
5060
|
"div",
|
|
@@ -5255,7 +5071,7 @@ var ChatInput = ({
|
|
|
5255
5071
|
children: /* @__PURE__ */ jsx5(
|
|
5256
5072
|
IconSvg,
|
|
5257
5073
|
{
|
|
5258
|
-
name:
|
|
5074
|
+
name: action.icon === "search" ? "search-line" : action.icon === "image" ? "image-line" : action.icon === "code" ? "code-s-slash-line" : "file-text-line",
|
|
5259
5075
|
size: 20,
|
|
5260
5076
|
color: "var(--chatllm-primary)"
|
|
5261
5077
|
}
|
|
@@ -5263,94 +5079,306 @@ var ChatInput = ({
|
|
|
5263
5079
|
}
|
|
5264
5080
|
),
|
|
5265
5081
|
/* @__PURE__ */ jsxs4("div", { children: [
|
|
5266
|
-
/* @__PURE__ */ jsx5("div", { style: { fontSize: "14px", fontWeight: 600, color: "var(--chatllm-text)" }, children:
|
|
5267
|
-
/* @__PURE__ */ jsx5("div", { style: { fontSize: "12px", color: "var(--chatllm-text-muted)"
|
|
5082
|
+
/* @__PURE__ */ jsx5("div", { style: { fontSize: "14px", fontWeight: 600, color: "var(--chatllm-text)" }, children: action.label }),
|
|
5083
|
+
/* @__PURE__ */ jsx5("div", { style: { fontSize: "12px", color: "var(--chatllm-text-muted)" }, children: action.description })
|
|
5268
5084
|
] })
|
|
5269
5085
|
]
|
|
5270
5086
|
},
|
|
5271
|
-
|
|
5087
|
+
action.id
|
|
5272
5088
|
))
|
|
5273
|
-
|
|
5089
|
+
}
|
|
5090
|
+
)
|
|
5091
|
+
] }),
|
|
5092
|
+
/* @__PURE__ */ jsx5(
|
|
5093
|
+
"button",
|
|
5094
|
+
{
|
|
5095
|
+
onClick: () => fileInputRef.current?.click(),
|
|
5096
|
+
style: iconButtonStyle,
|
|
5097
|
+
title: "\uD30C\uC77C \uCCA8\uBD80",
|
|
5098
|
+
"aria-label": "\uD30C\uC77C \uCCA8\uBD80",
|
|
5099
|
+
children: /* @__PURE__ */ jsx5(IconSvg, { name: "attachment-line", size: 22, color: "var(--chatllm-text-muted)" })
|
|
5274
5100
|
}
|
|
5275
|
-
)
|
|
5276
|
-
|
|
5277
|
-
] }),
|
|
5278
|
-
isLoading ? /* @__PURE__ */ jsxs4(
|
|
5279
|
-
"button",
|
|
5280
|
-
{
|
|
5281
|
-
onClick: onStop,
|
|
5282
|
-
style: {
|
|
5283
|
-
display: "flex",
|
|
5284
|
-
alignItems: "center",
|
|
5285
|
-
justifyContent: "center",
|
|
5286
|
-
height: "48px",
|
|
5287
|
-
padding: "0 32px",
|
|
5288
|
-
backgroundColor: "var(--chatllm-bg-tertiary)",
|
|
5289
|
-
border: "1px solid var(--chatllm-border)",
|
|
5290
|
-
borderRadius: "12px",
|
|
5291
|
-
cursor: "pointer",
|
|
5292
|
-
transition: "all 0.2s",
|
|
5293
|
-
gap: "8px"
|
|
5294
|
-
},
|
|
5295
|
-
children: [
|
|
5101
|
+
),
|
|
5102
|
+
/* @__PURE__ */ jsxs4("div", { ref: mainMenuRef, style: { position: "relative" }, children: [
|
|
5296
5103
|
/* @__PURE__ */ jsx5(
|
|
5297
|
-
"
|
|
5104
|
+
"button",
|
|
5298
5105
|
{
|
|
5106
|
+
onClick: () => setMainMenuOpen(!mainMenuOpen),
|
|
5299
5107
|
style: {
|
|
5300
|
-
|
|
5301
|
-
|
|
5302
|
-
color: "var(--chatllm-text-secondary)",
|
|
5303
|
-
textTransform: "uppercase",
|
|
5304
|
-
letterSpacing: "0.02em"
|
|
5108
|
+
...iconButtonStyle,
|
|
5109
|
+
backgroundColor: mainMenuOpen ? "var(--chatllm-bg-hover)" : "transparent"
|
|
5305
5110
|
},
|
|
5306
|
-
|
|
5111
|
+
title: "\uBA54\uB274",
|
|
5112
|
+
children: /* @__PURE__ */ jsx5(IconSvg, { name: "add-line", size: 22, color: "var(--chatllm-text-muted)" })
|
|
5307
5113
|
}
|
|
5308
5114
|
),
|
|
5309
|
-
/* @__PURE__ */
|
|
5310
|
-
|
|
5311
|
-
}
|
|
5312
|
-
) : /* @__PURE__ */ jsxs4(
|
|
5313
|
-
"button",
|
|
5314
|
-
{
|
|
5315
|
-
onClick: onSubmit,
|
|
5316
|
-
disabled: !value.trim() && attachments.length === 0,
|
|
5317
|
-
className: "chatllm-btn-primary",
|
|
5318
|
-
style: {
|
|
5319
|
-
display: "flex",
|
|
5320
|
-
alignItems: "center",
|
|
5321
|
-
justifyContent: "center",
|
|
5322
|
-
height: "48px",
|
|
5323
|
-
padding: "0 32px",
|
|
5324
|
-
borderRadius: "12px",
|
|
5325
|
-
cursor: value.trim() || attachments.length > 0 ? "pointer" : "not-allowed",
|
|
5326
|
-
opacity: value.trim() || attachments.length > 0 ? 1 : 0.5,
|
|
5327
|
-
gap: "8px"
|
|
5328
|
-
},
|
|
5329
|
-
children: [
|
|
5330
|
-
/* @__PURE__ */ jsx5(
|
|
5331
|
-
"span",
|
|
5115
|
+
mainMenuOpen && /* @__PURE__ */ jsxs4(
|
|
5116
|
+
"div",
|
|
5332
5117
|
{
|
|
5333
5118
|
style: {
|
|
5334
|
-
|
|
5335
|
-
|
|
5336
|
-
|
|
5119
|
+
position: "absolute",
|
|
5120
|
+
bottom: "100%",
|
|
5121
|
+
left: 0,
|
|
5122
|
+
marginBottom: "8px",
|
|
5123
|
+
backgroundColor: "var(--chatllm-content-bg)",
|
|
5124
|
+
borderRadius: "16px",
|
|
5125
|
+
boxShadow: "var(--chatllm-shadow-sheet)",
|
|
5126
|
+
border: "1px solid var(--chatllm-border)",
|
|
5127
|
+
padding: "8px",
|
|
5128
|
+
minWidth: "240px",
|
|
5129
|
+
zIndex: 100
|
|
5337
5130
|
},
|
|
5338
|
-
children:
|
|
5131
|
+
children: [
|
|
5132
|
+
/* @__PURE__ */ jsxs4(
|
|
5133
|
+
"button",
|
|
5134
|
+
{
|
|
5135
|
+
style: {
|
|
5136
|
+
width: "100%",
|
|
5137
|
+
display: "flex",
|
|
5138
|
+
alignItems: "center",
|
|
5139
|
+
gap: "12px",
|
|
5140
|
+
padding: "12px",
|
|
5141
|
+
backgroundColor: "transparent",
|
|
5142
|
+
border: "none",
|
|
5143
|
+
borderRadius: "12px",
|
|
5144
|
+
cursor: "pointer",
|
|
5145
|
+
textAlign: "left",
|
|
5146
|
+
transition: "background-color 0.2s"
|
|
5147
|
+
},
|
|
5148
|
+
onMouseOver: (e) => {
|
|
5149
|
+
e.currentTarget.style.backgroundColor = "var(--chatllm-bg-hover)";
|
|
5150
|
+
},
|
|
5151
|
+
onMouseOut: (e) => {
|
|
5152
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
5153
|
+
},
|
|
5154
|
+
onClick: () => {
|
|
5155
|
+
fileInputRef.current?.click();
|
|
5156
|
+
setMainMenuOpen(false);
|
|
5157
|
+
},
|
|
5158
|
+
children: [
|
|
5159
|
+
/* @__PURE__ */ jsx5(IconSvg, { name: "attachment-line", size: 20, color: "var(--chatllm-text-secondary)" }),
|
|
5160
|
+
/* @__PURE__ */ jsx5("span", { style: { fontSize: "14px", color: "var(--chatllm-text)" }, children: "\uD30C\uC77C \uB610\uB294 \uC0AC\uC9C4 \uCD94\uAC00" })
|
|
5161
|
+
]
|
|
5162
|
+
}
|
|
5163
|
+
),
|
|
5164
|
+
deepResearchEnabled && /* @__PURE__ */ jsxs4(
|
|
5165
|
+
"button",
|
|
5166
|
+
{
|
|
5167
|
+
onClick: () => {
|
|
5168
|
+
onDeepResearch?.();
|
|
5169
|
+
setMainMenuOpen(false);
|
|
5170
|
+
},
|
|
5171
|
+
style: {
|
|
5172
|
+
width: "100%",
|
|
5173
|
+
display: "flex",
|
|
5174
|
+
alignItems: "center",
|
|
5175
|
+
gap: "12px",
|
|
5176
|
+
padding: "12px",
|
|
5177
|
+
backgroundColor: "transparent",
|
|
5178
|
+
border: "none",
|
|
5179
|
+
borderRadius: "12px",
|
|
5180
|
+
cursor: "pointer",
|
|
5181
|
+
textAlign: "left",
|
|
5182
|
+
transition: "background-color 0.2s"
|
|
5183
|
+
},
|
|
5184
|
+
onMouseOver: (e) => {
|
|
5185
|
+
e.currentTarget.style.backgroundColor = "var(--chatllm-bg-hover)";
|
|
5186
|
+
},
|
|
5187
|
+
onMouseOut: (e) => {
|
|
5188
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
5189
|
+
},
|
|
5190
|
+
children: [
|
|
5191
|
+
/* @__PURE__ */ jsx5(
|
|
5192
|
+
IconSvg,
|
|
5193
|
+
{
|
|
5194
|
+
name: "search-eye-line",
|
|
5195
|
+
size: 20,
|
|
5196
|
+
color: isDeepResearchMode ? "var(--chatllm-primary)" : "var(--chatllm-text-secondary)"
|
|
5197
|
+
}
|
|
5198
|
+
),
|
|
5199
|
+
/* @__PURE__ */ jsx5(
|
|
5200
|
+
"span",
|
|
5201
|
+
{
|
|
5202
|
+
style: {
|
|
5203
|
+
flex: 1,
|
|
5204
|
+
fontSize: "14px",
|
|
5205
|
+
color: isDeepResearchMode ? "var(--chatllm-primary)" : "var(--chatllm-text)"
|
|
5206
|
+
},
|
|
5207
|
+
children: "\uC5F0\uAD6C"
|
|
5208
|
+
}
|
|
5209
|
+
),
|
|
5210
|
+
isDeepResearchMode && /* @__PURE__ */ jsx5(IconSvg, { name: "check-line", size: 16, color: "var(--chatllm-primary)" })
|
|
5211
|
+
]
|
|
5212
|
+
}
|
|
5213
|
+
),
|
|
5214
|
+
manualSkills.map((skill) => /* @__PURE__ */ jsxs4(
|
|
5215
|
+
"button",
|
|
5216
|
+
{
|
|
5217
|
+
onClick: () => {
|
|
5218
|
+
onSkillSelect?.(skill.name);
|
|
5219
|
+
setMainMenuOpen(false);
|
|
5220
|
+
},
|
|
5221
|
+
disabled: skill.disabled,
|
|
5222
|
+
style: {
|
|
5223
|
+
width: "100%",
|
|
5224
|
+
display: "flex",
|
|
5225
|
+
alignItems: "center",
|
|
5226
|
+
gap: "12px",
|
|
5227
|
+
padding: "12px",
|
|
5228
|
+
backgroundColor: "transparent",
|
|
5229
|
+
border: "none",
|
|
5230
|
+
borderRadius: "12px",
|
|
5231
|
+
cursor: skill.disabled ? "not-allowed" : "pointer",
|
|
5232
|
+
textAlign: "left",
|
|
5233
|
+
transition: "background-color 0.2s",
|
|
5234
|
+
opacity: skill.disabled ? 0.5 : 1
|
|
5235
|
+
},
|
|
5236
|
+
onMouseOver: (e) => {
|
|
5237
|
+
if (!skill.disabled) {
|
|
5238
|
+
e.currentTarget.style.backgroundColor = "var(--chatllm-bg-hover)";
|
|
5239
|
+
}
|
|
5240
|
+
},
|
|
5241
|
+
onMouseOut: (e) => {
|
|
5242
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
5243
|
+
},
|
|
5244
|
+
children: [
|
|
5245
|
+
/* @__PURE__ */ jsx5(
|
|
5246
|
+
"div",
|
|
5247
|
+
{
|
|
5248
|
+
style: {
|
|
5249
|
+
width: "36px",
|
|
5250
|
+
height: "36px",
|
|
5251
|
+
display: "flex",
|
|
5252
|
+
alignItems: "center",
|
|
5253
|
+
justifyContent: "center",
|
|
5254
|
+
backgroundColor: "var(--chatllm-primary-light)",
|
|
5255
|
+
borderRadius: "10px"
|
|
5256
|
+
},
|
|
5257
|
+
children: /* @__PURE__ */ jsx5(
|
|
5258
|
+
IconSvg,
|
|
5259
|
+
{
|
|
5260
|
+
name: mapSkillIcon(skill.icon),
|
|
5261
|
+
size: 20,
|
|
5262
|
+
color: "var(--chatllm-primary)"
|
|
5263
|
+
}
|
|
5264
|
+
)
|
|
5265
|
+
}
|
|
5266
|
+
),
|
|
5267
|
+
/* @__PURE__ */ jsxs4("div", { children: [
|
|
5268
|
+
/* @__PURE__ */ jsx5("div", { style: { fontSize: "14px", fontWeight: 600, color: "var(--chatllm-text)" }, children: skill.label }),
|
|
5269
|
+
/* @__PURE__ */ jsx5("div", { style: { fontSize: "12px", color: "var(--chatllm-text-muted)", maxWidth: "180px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: skill.description })
|
|
5270
|
+
] })
|
|
5271
|
+
]
|
|
5272
|
+
},
|
|
5273
|
+
skill.name
|
|
5274
|
+
))
|
|
5275
|
+
]
|
|
5339
5276
|
}
|
|
5340
|
-
)
|
|
5341
|
-
|
|
5342
|
-
|
|
5343
|
-
|
|
5344
|
-
|
|
5345
|
-
|
|
5346
|
-
|
|
5347
|
-
|
|
5348
|
-
|
|
5277
|
+
)
|
|
5278
|
+
] })
|
|
5279
|
+
] }),
|
|
5280
|
+
isLoading ? /* @__PURE__ */ jsxs4(
|
|
5281
|
+
"button",
|
|
5282
|
+
{
|
|
5283
|
+
onClick: onStop,
|
|
5284
|
+
style: {
|
|
5285
|
+
display: "flex",
|
|
5286
|
+
alignItems: "center",
|
|
5287
|
+
justifyContent: "center",
|
|
5288
|
+
height: "48px",
|
|
5289
|
+
padding: "0 32px",
|
|
5290
|
+
backgroundColor: "var(--chatllm-bg-tertiary)",
|
|
5291
|
+
border: "1px solid var(--chatllm-border)",
|
|
5292
|
+
borderRadius: "12px",
|
|
5293
|
+
cursor: "pointer",
|
|
5294
|
+
transition: "all 0.2s",
|
|
5295
|
+
gap: "8px"
|
|
5296
|
+
},
|
|
5297
|
+
children: [
|
|
5298
|
+
/* @__PURE__ */ jsx5(
|
|
5299
|
+
"span",
|
|
5300
|
+
{
|
|
5301
|
+
style: {
|
|
5302
|
+
fontSize: "14px",
|
|
5303
|
+
fontWeight: 700,
|
|
5304
|
+
color: "var(--chatllm-text-secondary)",
|
|
5305
|
+
textTransform: "uppercase",
|
|
5306
|
+
letterSpacing: "0.02em"
|
|
5307
|
+
},
|
|
5308
|
+
children: "\uC911\uC9C0"
|
|
5309
|
+
}
|
|
5310
|
+
),
|
|
5311
|
+
/* @__PURE__ */ jsx5(IconSvg, { name: "stop-circle-line", size: 18, color: "var(--chatllm-text-secondary)" })
|
|
5312
|
+
]
|
|
5313
|
+
}
|
|
5314
|
+
) : /* @__PURE__ */ jsxs4(
|
|
5315
|
+
"button",
|
|
5316
|
+
{
|
|
5317
|
+
onClick: onSubmit,
|
|
5318
|
+
disabled: !value.trim() && attachments.length === 0,
|
|
5319
|
+
className: "chatllm-btn-primary",
|
|
5320
|
+
style: {
|
|
5321
|
+
display: "flex",
|
|
5322
|
+
alignItems: "center",
|
|
5323
|
+
justifyContent: "center",
|
|
5324
|
+
height: "48px",
|
|
5325
|
+
padding: "0 32px",
|
|
5326
|
+
borderRadius: "12px",
|
|
5327
|
+
cursor: value.trim() || attachments.length > 0 ? "pointer" : "not-allowed",
|
|
5328
|
+
opacity: value.trim() || attachments.length > 0 ? 1 : 0.5,
|
|
5329
|
+
gap: "8px"
|
|
5330
|
+
},
|
|
5331
|
+
children: [
|
|
5332
|
+
/* @__PURE__ */ jsx5(
|
|
5333
|
+
"span",
|
|
5334
|
+
{
|
|
5335
|
+
style: {
|
|
5336
|
+
fontSize: "14px",
|
|
5337
|
+
fontWeight: 700,
|
|
5338
|
+
letterSpacing: "0.02em"
|
|
5339
|
+
},
|
|
5340
|
+
children: "\uBCF4\uB0B4\uAE30"
|
|
5341
|
+
}
|
|
5342
|
+
),
|
|
5343
|
+
/* @__PURE__ */ jsx5(IconSvg, { name: "arrow-up-s-line", size: 20, color: "#ffffff" })
|
|
5344
|
+
]
|
|
5345
|
+
}
|
|
5346
|
+
)
|
|
5347
|
+
]
|
|
5348
|
+
}
|
|
5349
|
+
)
|
|
5350
|
+
]
|
|
5351
|
+
}
|
|
5352
|
+
)
|
|
5353
|
+
]
|
|
5354
|
+
}
|
|
5355
|
+
),
|
|
5356
|
+
/* @__PURE__ */ jsx5(
|
|
5357
|
+
"div",
|
|
5358
|
+
{
|
|
5359
|
+
style: {
|
|
5360
|
+
textAlign: "center",
|
|
5361
|
+
marginTop: "8px",
|
|
5362
|
+
pointerEvents: "auto"
|
|
5363
|
+
},
|
|
5364
|
+
children: /* @__PURE__ */ jsx5(
|
|
5365
|
+
"button",
|
|
5366
|
+
{
|
|
5367
|
+
onClick: onDisclaimerClick,
|
|
5368
|
+
style: {
|
|
5369
|
+
background: "none",
|
|
5370
|
+
border: "none",
|
|
5371
|
+
cursor: onDisclaimerClick ? "pointer" : "default",
|
|
5372
|
+
fontSize: "12px",
|
|
5373
|
+
color: "var(--chatllm-text-muted, #94a3b8)",
|
|
5374
|
+
padding: "2px 8px"
|
|
5375
|
+
},
|
|
5376
|
+
children: "AI\uB294 \uC2E4\uC218\uB97C \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."
|
|
5349
5377
|
}
|
|
5350
5378
|
)
|
|
5351
|
-
|
|
5352
|
-
|
|
5353
|
-
|
|
5379
|
+
}
|
|
5380
|
+
)
|
|
5381
|
+
]
|
|
5354
5382
|
}
|
|
5355
5383
|
);
|
|
5356
5384
|
};
|
|
@@ -6425,6 +6453,7 @@ var MarkdownRenderer = ({
|
|
|
6425
6453
|
} else {
|
|
6426
6454
|
processedContent = processedContent.replace(UNCLOSED_THINKING_TAG_REGEX, "");
|
|
6427
6455
|
}
|
|
6456
|
+
processedContent = processedContent.replace(/<poll[^>]*>[\s\S]*?<\/poll>/gi, "");
|
|
6428
6457
|
processedContent = processedContent.replace(UNCLOSED_POLL_TAG_REGEX, "");
|
|
6429
6458
|
processedContent = processedContent.replace(UNCLOSED_SKILL_TAG_REGEX, "");
|
|
6430
6459
|
const codeBlocks = [];
|
|
@@ -10110,8 +10139,133 @@ var ProjectSettingsModal = ({
|
|
|
10110
10139
|
);
|
|
10111
10140
|
};
|
|
10112
10141
|
|
|
10113
|
-
// src/react/
|
|
10142
|
+
// src/react/components/DisclaimerModal.tsx
|
|
10114
10143
|
import { jsx as jsx20, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
10144
|
+
var DisclaimerModal = ({ isOpen, onClose }) => {
|
|
10145
|
+
if (!isOpen) return null;
|
|
10146
|
+
return /* @__PURE__ */ jsx20(
|
|
10147
|
+
"div",
|
|
10148
|
+
{
|
|
10149
|
+
className: "chatllm-disclaimer-overlay",
|
|
10150
|
+
style: {
|
|
10151
|
+
position: "fixed",
|
|
10152
|
+
inset: 0,
|
|
10153
|
+
backgroundColor: "rgba(0, 0, 0, 0.3)",
|
|
10154
|
+
display: "flex",
|
|
10155
|
+
alignItems: "center",
|
|
10156
|
+
justifyContent: "center",
|
|
10157
|
+
zIndex: 1e3
|
|
10158
|
+
},
|
|
10159
|
+
onClick: onClose,
|
|
10160
|
+
children: /* @__PURE__ */ jsxs19(
|
|
10161
|
+
"div",
|
|
10162
|
+
{
|
|
10163
|
+
className: "chatllm-disclaimer-modal",
|
|
10164
|
+
style: {
|
|
10165
|
+
backgroundColor: "var(--chatllm-bg, #ffffff)",
|
|
10166
|
+
borderRadius: "16px",
|
|
10167
|
+
width: "100%",
|
|
10168
|
+
maxWidth: "560px",
|
|
10169
|
+
maxHeight: "80vh",
|
|
10170
|
+
margin: "16px",
|
|
10171
|
+
boxShadow: "0 20px 60px rgba(0, 0, 0, 0.15)",
|
|
10172
|
+
display: "flex",
|
|
10173
|
+
flexDirection: "column",
|
|
10174
|
+
overflow: "hidden"
|
|
10175
|
+
},
|
|
10176
|
+
onClick: (e) => e.stopPropagation(),
|
|
10177
|
+
children: [
|
|
10178
|
+
/* @__PURE__ */ jsxs19(
|
|
10179
|
+
"div",
|
|
10180
|
+
{
|
|
10181
|
+
style: {
|
|
10182
|
+
display: "flex",
|
|
10183
|
+
alignItems: "center",
|
|
10184
|
+
justifyContent: "space-between",
|
|
10185
|
+
padding: "20px 24px 16px",
|
|
10186
|
+
borderBottom: "1px solid var(--chatllm-border, #e5e7eb)"
|
|
10187
|
+
},
|
|
10188
|
+
children: [
|
|
10189
|
+
/* @__PURE__ */ jsxs19("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
|
|
10190
|
+
/* @__PURE__ */ jsx20(IconSvg, { name: "error-warning-line", size: 20, color: "var(--chatllm-text-muted, #64748b)" }),
|
|
10191
|
+
/* @__PURE__ */ jsx20(
|
|
10192
|
+
"h2",
|
|
10193
|
+
{
|
|
10194
|
+
style: {
|
|
10195
|
+
margin: 0,
|
|
10196
|
+
fontSize: "16px",
|
|
10197
|
+
fontWeight: 600,
|
|
10198
|
+
color: "var(--chatllm-text, #1e293b)"
|
|
10199
|
+
},
|
|
10200
|
+
children: "AI \uC751\uB2F5\uC5D0 \uB300\uD55C \uC548\uB0B4"
|
|
10201
|
+
}
|
|
10202
|
+
)
|
|
10203
|
+
] }),
|
|
10204
|
+
/* @__PURE__ */ jsx20(
|
|
10205
|
+
"button",
|
|
10206
|
+
{
|
|
10207
|
+
onClick: onClose,
|
|
10208
|
+
"aria-label": "\uB2EB\uAE30",
|
|
10209
|
+
style: {
|
|
10210
|
+
background: "none",
|
|
10211
|
+
border: "none",
|
|
10212
|
+
cursor: "pointer",
|
|
10213
|
+
padding: "4px",
|
|
10214
|
+
borderRadius: "6px",
|
|
10215
|
+
display: "flex",
|
|
10216
|
+
alignItems: "center",
|
|
10217
|
+
justifyContent: "center"
|
|
10218
|
+
},
|
|
10219
|
+
children: /* @__PURE__ */ jsx20(IconSvg, { name: "close-line", size: 20, color: "var(--chatllm-text-muted, #64748b)" })
|
|
10220
|
+
}
|
|
10221
|
+
)
|
|
10222
|
+
]
|
|
10223
|
+
}
|
|
10224
|
+
),
|
|
10225
|
+
/* @__PURE__ */ jsxs19(
|
|
10226
|
+
"div",
|
|
10227
|
+
{
|
|
10228
|
+
className: "chatllm-scrollbar",
|
|
10229
|
+
style: {
|
|
10230
|
+
padding: "20px 24px 24px",
|
|
10231
|
+
overflow: "auto",
|
|
10232
|
+
fontSize: "14px",
|
|
10233
|
+
lineHeight: 1.7,
|
|
10234
|
+
color: "var(--chatllm-text-secondary, #475569)"
|
|
10235
|
+
},
|
|
10236
|
+
children: [
|
|
10237
|
+
/* @__PURE__ */ jsx20("p", { style: { margin: "0 0 14px" }, children: "AI \uCC44\uD305\uC740 \uC0AC\uC6A9\uC790\uB97C \uB3D5\uAE30 \uC704\uD574 \uC124\uACC4\uB418\uC5C8\uC9C0\uB9CC, \uACBD\uC6B0\uC5D0 \uB530\uB77C \uBD80\uC815\uD655\uD558\uAC70\uB098 \uC624\uD574\uC758 \uC18C\uC9C0\uAC00 \uC788\uB294 \uB2F5\uBCC0\uC744 \uC81C\uACF5\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4." }),
|
|
10238
|
+
/* @__PURE__ */ jsx20("p", { style: { margin: "0 0 14px" }, children: "\uC774\uB7EC\uD55C \uD604\uC0C1\uC740 \uD754\uD788 '\uD658\uAC01(hallucination)'\uC774\uB77C\uACE0 \uBD88\uB9AC\uBA70, AI \uCC44\uD305\uACFC \uAC19\uC740 \uCD5C\uC2E0 \uC0DD\uC131\uD615 AI \uAE30\uC220\uC774 \uC544\uC9C1 \uAC00\uC9C0\uACE0 \uC788\uB294 \uD55C\uACC4\uC5D0\uC11C \uBE44\uB86F\uB429\uB2C8\uB2E4. \uC608\uB97C \uB4E4\uC5B4, \uC77C\uBD80 \uC8FC\uC81C\uC5D0 \uB300\uD574\uC11C\uB294 \uCD5C\uC2E0 \uC815\uBCF4\uAE4C\uC9C0 \uD559\uC2B5\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC744 \uC218 \uC788\uC73C\uBA70, \uC2DC\uC0AC\uC801\uC778 \uC774\uC288\uB098 \uBE60\uB974\uAC8C \uBCC0\uD654\uD558\uB294 \uB0B4\uC6A9\uC5D0 \uB300\uD574\uC11C\uB294 \uD63C\uB780\uC2A4\uB7EC\uC6B4 \uB2F5\uBCC0\uC744 \uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uB610\uD55C, \uC0AC\uC2E4\uC5D0 \uADFC\uAC70\uD558\uC9C0 \uC54A\uC558\uC74C\uC5D0\uB3C4 \uBD88\uAD6C\uD558\uACE0 \uAC89\uBCF4\uAE30\uC5D0\uB294 \uADF8\uB7F4\uB4EF\uD558\uAC70\uB098 \uAD8C\uC704 \uC788\uC5B4 \uBCF4\uC774\uB294 \uC124\uBA85\uC774\uB098 \uC778\uC6A9\uC744 \uC81C\uC2DC\uD558\uB294 \uACBD\uC6B0\uB3C4 \uC788\uC2B5\uB2C8\uB2E4. \uC989, \uB2F5\uBCC0\uC774 \uB9DE\uB294 \uAC83\uCC98\uB7FC \uBCF4\uC774\uB354\uB77C\uB3C4 \uC2E4\uC81C\uB85C\uB294 \uC815\uD655\uD558\uC9C0 \uC54A\uC744 \uC218 \uC788\uC2B5\uB2C8\uB2E4." }),
|
|
10239
|
+
/* @__PURE__ */ jsx20("p", { style: { margin: "0 0 14px" }, children: "\uB530\uB77C\uC11C AI \uCC44\uD305\uC758 \uB2F5\uBCC0\uC744 \uC808\uB300\uC801\uC778 \uC0AC\uC2E4\uB85C \uBC1B\uC544\uB4E4\uC774\uAE30\uBCF4\uB2E4\uB294 \uCC38\uACE0 \uC790\uB8CC\uB85C \uD65C\uC6A9\uD558\uC2DC\uACE0, \uC911\uC694\uD55C \uD310\uB2E8\uC774\uB098 \uC758\uC0AC\uACB0\uC815\uC5D0 \uC55E\uC11C\uC11C\uB294 \uBC18\uB4DC\uC2DC \uCD94\uAC00\uC801\uC778 \uD655\uC778\uACFC \uAC80\uD1A0\uB97C \uAD8C\uC7A5\uB4DC\uB9BD\uB2C8\uB2E4." }),
|
|
10240
|
+
/* @__PURE__ */ jsx20("p", { style: { margin: "0 0 14px" }, children: "\uC6F9 \uAC80\uC0C9 \uACB0\uACFC\uB97C \uD65C\uC6A9\uD558\uB294 \uACBD\uC6B0\uC5D0\uB3C4, AI \uCC44\uD305\uC774 \uC81C\uC2DC\uD55C \uCD9C\uCC98\uB97C \uC9C1\uC811 \uD655\uC778\uD574 \uBCF4\uC2DC\uB294 \uAC83\uC774 \uC88B\uC2B5\uB2C8\uB2E4. \uC6D0\uBCF8 \uC6F9\uC0AC\uC774\uD2B8\uC5D0\uB294 AI\uC758 \uC694\uC57D\uC774\uB098 \uBD84\uC11D \uACFC\uC815\uC5D0\uC11C \uC0DD\uB7B5\uB41C \uC911\uC694\uD55C \uB9E5\uB77D\uC774\uB098 \uC138\uBD80 \uC815\uBCF4\uAC00 \uD3EC\uD568\uB418\uC5B4 \uC788\uC744 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC6D0\uBB38\uC744 \uD568\uAED8 \uC0B4\uD3B4\uBCF4\uBA74 \uC815\uBCF4\uAC00 \uACFC\uB3C4\uD558\uAC8C \uB2E8\uC21C\uD654\uB418\uAC70\uB098 \uC624\uD574\uB420 \uAC00\uB2A5\uC131\uC744 \uC904\uC774\uB294 \uB370 \uB3C4\uC6C0\uC774 \uB429\uB2C8\uB2E4." }),
|
|
10241
|
+
/* @__PURE__ */ jsxs19("p", { style: { margin: 0 }, children: [
|
|
10242
|
+
"\uB9CC\uC57D \uD2B9\uC815 \uB2F5\uBCC0\uC774 \uCDA9\uBD84\uD788 \uB3C4\uC6C0\uC774 \uB418\uC9C0 \uC54A\uC558\uAC70\uB098 \uAC1C\uC120\uC774 \uD544\uC694\uD558\uB2E4\uACE0 \uB290\uB07C\uC2E0\uB2E4\uBA74, \uC5B8\uC81C\uB4E0\uC9C0 \uC758\uACAC\uC774\uB098 \uC81C\uC548 \uC0AC\uD56D\uC744",
|
|
10243
|
+
" ",
|
|
10244
|
+
/* @__PURE__ */ jsx20(
|
|
10245
|
+
"a",
|
|
10246
|
+
{
|
|
10247
|
+
href: "mailto:info@gendive.ai",
|
|
10248
|
+
style: {
|
|
10249
|
+
color: "var(--chatllm-primary, #4A90E2)",
|
|
10250
|
+
textDecoration: "none"
|
|
10251
|
+
},
|
|
10252
|
+
children: "info@gendive.ai"
|
|
10253
|
+
}
|
|
10254
|
+
),
|
|
10255
|
+
"\uB85C \uBCF4\uB0B4\uC8FC\uC138\uC694. \uB354 \uB098\uC740 \uC11C\uBE44\uC2A4\uB97C \uC81C\uACF5\uD558\uB294 \uB370 \uD070 \uB3C4\uC6C0\uC774 \uB429\uB2C8\uB2E4."
|
|
10256
|
+
] })
|
|
10257
|
+
]
|
|
10258
|
+
}
|
|
10259
|
+
)
|
|
10260
|
+
]
|
|
10261
|
+
}
|
|
10262
|
+
)
|
|
10263
|
+
}
|
|
10264
|
+
);
|
|
10265
|
+
};
|
|
10266
|
+
|
|
10267
|
+
// src/react/ChatUI.tsx
|
|
10268
|
+
import { jsx as jsx21, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
10115
10269
|
var DEFAULT_ACTIONS = [];
|
|
10116
10270
|
var DEFAULT_TEMPLATES = [];
|
|
10117
10271
|
var DEFAULT_MODELS = [
|
|
@@ -10425,6 +10579,7 @@ var ChatUIView = ({
|
|
|
10425
10579
|
projectMemory,
|
|
10426
10580
|
isSessionsLoading
|
|
10427
10581
|
} = state;
|
|
10582
|
+
const [disclaimerOpen, setDisclaimerOpen] = React15.useState(false);
|
|
10428
10583
|
const greeting = currentPersonalization.userProfile.nickname ? `\uC548\uB155\uD558\uC138\uC694, ${currentPersonalization.userProfile.nickname}\uB2D8` : "\uC548\uB155\uD558\uC138\uC694";
|
|
10429
10584
|
const handleTemplateClick = (template) => {
|
|
10430
10585
|
setInput(template.prompt);
|
|
@@ -10467,7 +10622,7 @@ var ChatUIView = ({
|
|
|
10467
10622
|
return items;
|
|
10468
10623
|
}, [projectMemory?.state.entries]);
|
|
10469
10624
|
const themeClass = theme?.mode === "dark" ? "chatllm-dark" : "";
|
|
10470
|
-
return /* @__PURE__ */
|
|
10625
|
+
return /* @__PURE__ */ jsxs20(
|
|
10471
10626
|
"div",
|
|
10472
10627
|
{
|
|
10473
10628
|
className: `chatllm-root ${themeClass} ${className}`,
|
|
@@ -10480,7 +10635,7 @@ var ChatUIView = ({
|
|
|
10480
10635
|
position: "relative"
|
|
10481
10636
|
},
|
|
10482
10637
|
children: [
|
|
10483
|
-
showSidebar && /* @__PURE__ */
|
|
10638
|
+
showSidebar && /* @__PURE__ */ jsx21(
|
|
10484
10639
|
ChatSidebar,
|
|
10485
10640
|
{
|
|
10486
10641
|
sessions,
|
|
@@ -10512,7 +10667,7 @@ var ChatUIView = ({
|
|
|
10512
10667
|
isLoading: isSessionsLoading
|
|
10513
10668
|
}
|
|
10514
10669
|
),
|
|
10515
|
-
/* @__PURE__ */
|
|
10670
|
+
/* @__PURE__ */ jsxs20(
|
|
10516
10671
|
"main",
|
|
10517
10672
|
{
|
|
10518
10673
|
style: {
|
|
@@ -10524,7 +10679,7 @@ var ChatUIView = ({
|
|
|
10524
10679
|
minWidth: 0
|
|
10525
10680
|
},
|
|
10526
10681
|
children: [
|
|
10527
|
-
/* @__PURE__ */
|
|
10682
|
+
/* @__PURE__ */ jsx21(
|
|
10528
10683
|
ChatHeader,
|
|
10529
10684
|
{
|
|
10530
10685
|
title: currentSession?.title || "\uC0C8 \uB300\uD654",
|
|
@@ -10538,7 +10693,7 @@ var ChatUIView = ({
|
|
|
10538
10693
|
showSettings
|
|
10539
10694
|
}
|
|
10540
10695
|
),
|
|
10541
|
-
messages.length === 0 ? /* @__PURE__ */
|
|
10696
|
+
messages.length === 0 ? /* @__PURE__ */ jsx21(
|
|
10542
10697
|
EmptyState,
|
|
10543
10698
|
{
|
|
10544
10699
|
greeting,
|
|
@@ -10547,7 +10702,7 @@ var ChatUIView = ({
|
|
|
10547
10702
|
actions,
|
|
10548
10703
|
onActionSelect: handleActionSelect
|
|
10549
10704
|
}
|
|
10550
|
-
) : /* @__PURE__ */
|
|
10705
|
+
) : /* @__PURE__ */ jsx21(
|
|
10551
10706
|
MessageList,
|
|
10552
10707
|
{
|
|
10553
10708
|
messages,
|
|
@@ -10569,7 +10724,7 @@ var ChatUIView = ({
|
|
|
10569
10724
|
onPollSubmit: handlePollSubmit
|
|
10570
10725
|
}
|
|
10571
10726
|
),
|
|
10572
|
-
/* @__PURE__ */
|
|
10727
|
+
/* @__PURE__ */ jsx21(
|
|
10573
10728
|
ChatInput,
|
|
10574
10729
|
{
|
|
10575
10730
|
value: input,
|
|
@@ -10592,13 +10747,14 @@ var ChatUIView = ({
|
|
|
10592
10747
|
activeSkillExecution,
|
|
10593
10748
|
attachments,
|
|
10594
10749
|
onFileAttach: addAttachments,
|
|
10595
|
-
onRemoveAttachment: removeAttachment
|
|
10750
|
+
onRemoveAttachment: removeAttachment,
|
|
10751
|
+
onDisclaimerClick: () => setDisclaimerOpen(true)
|
|
10596
10752
|
}
|
|
10597
10753
|
)
|
|
10598
10754
|
]
|
|
10599
10755
|
}
|
|
10600
10756
|
),
|
|
10601
|
-
showSettings && /* @__PURE__ */
|
|
10757
|
+
showSettings && /* @__PURE__ */ jsx21(
|
|
10602
10758
|
SettingsModal,
|
|
10603
10759
|
{
|
|
10604
10760
|
isOpen: settingsOpen,
|
|
@@ -10624,7 +10780,7 @@ var ChatUIView = ({
|
|
|
10624
10780
|
currentProjectTitle: currentProject?.title
|
|
10625
10781
|
}
|
|
10626
10782
|
),
|
|
10627
|
-
/* @__PURE__ */
|
|
10783
|
+
/* @__PURE__ */ jsx21(
|
|
10628
10784
|
ProjectSettingsModal,
|
|
10629
10785
|
{
|
|
10630
10786
|
isOpen: projectSettingsOpen,
|
|
@@ -10635,7 +10791,8 @@ var ChatUIView = ({
|
|
|
10635
10791
|
onDeleteFile: deleteProjectFile,
|
|
10636
10792
|
onDeleteProject: deleteProject
|
|
10637
10793
|
}
|
|
10638
|
-
)
|
|
10794
|
+
),
|
|
10795
|
+
/* @__PURE__ */ jsx21(DisclaimerModal, { isOpen: disclaimerOpen, onClose: () => setDisclaimerOpen(false) })
|
|
10639
10796
|
]
|
|
10640
10797
|
}
|
|
10641
10798
|
);
|
|
@@ -10736,7 +10893,7 @@ var ChatUIWithHook = ({
|
|
|
10736
10893
|
onDeleteProjectFile
|
|
10737
10894
|
};
|
|
10738
10895
|
const state = useChatUI(hookOptions);
|
|
10739
|
-
return /* @__PURE__ */
|
|
10896
|
+
return /* @__PURE__ */ jsx21(
|
|
10740
10897
|
ChatUIView,
|
|
10741
10898
|
{
|
|
10742
10899
|
state,
|
|
@@ -10780,7 +10937,7 @@ var ChatUI = (props) => {
|
|
|
10780
10937
|
onApiKeyChange,
|
|
10781
10938
|
deepResearch
|
|
10782
10939
|
} = props;
|
|
10783
|
-
return /* @__PURE__ */
|
|
10940
|
+
return /* @__PURE__ */ jsx21(
|
|
10784
10941
|
ChatUIView,
|
|
10785
10942
|
{
|
|
10786
10943
|
state: props.chatState,
|
|
@@ -10803,7 +10960,7 @@ var ChatUI = (props) => {
|
|
|
10803
10960
|
}
|
|
10804
10961
|
);
|
|
10805
10962
|
}
|
|
10806
|
-
return /* @__PURE__ */
|
|
10963
|
+
return /* @__PURE__ */ jsx21(ChatUIWithHook, { ...props });
|
|
10807
10964
|
};
|
|
10808
10965
|
|
|
10809
10966
|
// src/react/hooks/useDeepResearch.ts
|
|
@@ -11122,7 +11279,7 @@ var useDeepResearch = (options) => {
|
|
|
11122
11279
|
|
|
11123
11280
|
// src/react/components/MemoryPanel.tsx
|
|
11124
11281
|
import { useState as useState19 } from "react";
|
|
11125
|
-
import { jsx as
|
|
11282
|
+
import { jsx as jsx22, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
11126
11283
|
var categoryLabels = {
|
|
11127
11284
|
fact: "\uC0AC\uC6A9\uC790 \uC815\uBCF4",
|
|
11128
11285
|
skill: "\uC804\uBB38 \uBD84\uC57C/\uAE30\uC220",
|
|
@@ -11154,7 +11311,7 @@ var MemoryPanel = ({
|
|
|
11154
11311
|
});
|
|
11155
11312
|
};
|
|
11156
11313
|
if (!isOpen) {
|
|
11157
|
-
return /* @__PURE__ */
|
|
11314
|
+
return /* @__PURE__ */ jsx22(
|
|
11158
11315
|
"button",
|
|
11159
11316
|
{
|
|
11160
11317
|
onClick: onToggle,
|
|
@@ -11174,11 +11331,11 @@ var MemoryPanel = ({
|
|
|
11174
11331
|
justifyContent: "center",
|
|
11175
11332
|
zIndex: 100
|
|
11176
11333
|
},
|
|
11177
|
-
children: /* @__PURE__ */
|
|
11334
|
+
children: /* @__PURE__ */ jsx22(IconSvg, { name: "robot-line", size: 24, color: "#ffffff" })
|
|
11178
11335
|
}
|
|
11179
11336
|
);
|
|
11180
11337
|
}
|
|
11181
|
-
return /* @__PURE__ */
|
|
11338
|
+
return /* @__PURE__ */ jsxs21(
|
|
11182
11339
|
"div",
|
|
11183
11340
|
{
|
|
11184
11341
|
className: "chatllm-memory-panel",
|
|
@@ -11198,7 +11355,7 @@ var MemoryPanel = ({
|
|
|
11198
11355
|
zIndex: 100
|
|
11199
11356
|
},
|
|
11200
11357
|
children: [
|
|
11201
|
-
/* @__PURE__ */
|
|
11358
|
+
/* @__PURE__ */ jsxs21(
|
|
11202
11359
|
"div",
|
|
11203
11360
|
{
|
|
11204
11361
|
style: {
|
|
@@ -11209,8 +11366,8 @@ var MemoryPanel = ({
|
|
|
11209
11366
|
borderBottom: "1px solid var(--chatllm-border, #e5e7eb)"
|
|
11210
11367
|
},
|
|
11211
11368
|
children: [
|
|
11212
|
-
/* @__PURE__ */
|
|
11213
|
-
/* @__PURE__ */
|
|
11369
|
+
/* @__PURE__ */ jsxs21("div", { style: { display: "flex", alignItems: "center", gap: "10px" }, children: [
|
|
11370
|
+
/* @__PURE__ */ jsx22(
|
|
11214
11371
|
"div",
|
|
11215
11372
|
{
|
|
11216
11373
|
style: {
|
|
@@ -11222,19 +11379,19 @@ var MemoryPanel = ({
|
|
|
11222
11379
|
alignItems: "center",
|
|
11223
11380
|
justifyContent: "center"
|
|
11224
11381
|
},
|
|
11225
|
-
children: /* @__PURE__ */
|
|
11382
|
+
children: /* @__PURE__ */ jsx22(IconSvg, { name: "robot-line", size: 18, color: "var(--chatllm-primary, #3b82f6)" })
|
|
11226
11383
|
}
|
|
11227
11384
|
),
|
|
11228
|
-
/* @__PURE__ */
|
|
11229
|
-
/* @__PURE__ */
|
|
11230
|
-
/* @__PURE__ */
|
|
11385
|
+
/* @__PURE__ */ jsxs21("div", { children: [
|
|
11386
|
+
/* @__PURE__ */ jsx22("div", { style: { fontSize: "15px", fontWeight: 600, color: "var(--chatllm-text, #1f2937)" }, children: "AI \uBA54\uBAA8\uB9AC" }),
|
|
11387
|
+
/* @__PURE__ */ jsxs21("div", { style: { fontSize: "12px", color: "var(--chatllm-text-muted, #9ca3af)" }, children: [
|
|
11231
11388
|
items.length,
|
|
11232
11389
|
"\uAC1C \uD56D\uBAA9"
|
|
11233
11390
|
] })
|
|
11234
11391
|
] })
|
|
11235
11392
|
] }),
|
|
11236
|
-
/* @__PURE__ */
|
|
11237
|
-
onClearAll && items.length > 0 && /* @__PURE__ */
|
|
11393
|
+
/* @__PURE__ */ jsxs21("div", { style: { display: "flex", gap: "4px" }, children: [
|
|
11394
|
+
onClearAll && items.length > 0 && /* @__PURE__ */ jsx22(
|
|
11238
11395
|
"button",
|
|
11239
11396
|
{
|
|
11240
11397
|
onClick: onClearAll,
|
|
@@ -11246,10 +11403,10 @@ var MemoryPanel = ({
|
|
|
11246
11403
|
cursor: "pointer"
|
|
11247
11404
|
},
|
|
11248
11405
|
title: "\uC804\uCCB4 \uC0AD\uC81C",
|
|
11249
|
-
children: /* @__PURE__ */
|
|
11406
|
+
children: /* @__PURE__ */ jsx22(IconSvg, { name: "delete-bin-line", size: 18, color: "var(--chatllm-text-muted, #9ca3af)" })
|
|
11250
11407
|
}
|
|
11251
11408
|
),
|
|
11252
|
-
/* @__PURE__ */
|
|
11409
|
+
/* @__PURE__ */ jsx22(
|
|
11253
11410
|
"button",
|
|
11254
11411
|
{
|
|
11255
11412
|
onClick: onToggle,
|
|
@@ -11260,14 +11417,14 @@ var MemoryPanel = ({
|
|
|
11260
11417
|
borderRadius: "8px",
|
|
11261
11418
|
cursor: "pointer"
|
|
11262
11419
|
},
|
|
11263
|
-
children: /* @__PURE__ */
|
|
11420
|
+
children: /* @__PURE__ */ jsx22(IconSvg, { name: "close-line", size: 18, color: "var(--chatllm-text-muted, #9ca3af)" })
|
|
11264
11421
|
}
|
|
11265
11422
|
)
|
|
11266
11423
|
] })
|
|
11267
11424
|
]
|
|
11268
11425
|
}
|
|
11269
11426
|
),
|
|
11270
|
-
/* @__PURE__ */
|
|
11427
|
+
/* @__PURE__ */ jsx22(
|
|
11271
11428
|
"div",
|
|
11272
11429
|
{
|
|
11273
11430
|
style: {
|
|
@@ -11277,7 +11434,7 @@ var MemoryPanel = ({
|
|
|
11277
11434
|
borderBottom: "1px solid var(--chatllm-border-light, #f3f4f6)",
|
|
11278
11435
|
overflowX: "auto"
|
|
11279
11436
|
},
|
|
11280
|
-
children: ["all", "fact", "skill", "preference"].map((tab) => /* @__PURE__ */
|
|
11437
|
+
children: ["all", "fact", "skill", "preference"].map((tab) => /* @__PURE__ */ jsx22(
|
|
11281
11438
|
"button",
|
|
11282
11439
|
{
|
|
11283
11440
|
onClick: () => setActiveTab(tab),
|
|
@@ -11298,8 +11455,8 @@ var MemoryPanel = ({
|
|
|
11298
11455
|
))
|
|
11299
11456
|
}
|
|
11300
11457
|
),
|
|
11301
|
-
/* @__PURE__ */
|
|
11302
|
-
contextSummary && activeTab === "all" && /* @__PURE__ */
|
|
11458
|
+
/* @__PURE__ */ jsxs21("div", { style: { flex: 1, overflow: "auto", padding: "12px" }, children: [
|
|
11459
|
+
contextSummary && activeTab === "all" && /* @__PURE__ */ jsxs21(
|
|
11303
11460
|
"div",
|
|
11304
11461
|
{
|
|
11305
11462
|
style: {
|
|
@@ -11310,7 +11467,7 @@ var MemoryPanel = ({
|
|
|
11310
11467
|
borderLeft: "3px solid var(--chatllm-primary, #3b82f6)"
|
|
11311
11468
|
},
|
|
11312
11469
|
children: [
|
|
11313
|
-
/* @__PURE__ */
|
|
11470
|
+
/* @__PURE__ */ jsxs21(
|
|
11314
11471
|
"div",
|
|
11315
11472
|
{
|
|
11316
11473
|
style: {
|
|
@@ -11320,12 +11477,12 @@ var MemoryPanel = ({
|
|
|
11320
11477
|
marginBottom: "8px"
|
|
11321
11478
|
},
|
|
11322
11479
|
children: [
|
|
11323
|
-
/* @__PURE__ */
|
|
11324
|
-
/* @__PURE__ */
|
|
11480
|
+
/* @__PURE__ */ jsx22(IconSvg, { name: "file-text-line", size: 14, color: "var(--chatllm-primary, #3b82f6)" }),
|
|
11481
|
+
/* @__PURE__ */ jsx22("span", { style: { fontSize: "12px", fontWeight: 500, color: "var(--chatllm-primary, #3b82f6)" }, children: "\uB300\uD654 \uC694\uC57D" })
|
|
11325
11482
|
]
|
|
11326
11483
|
}
|
|
11327
11484
|
),
|
|
11328
|
-
/* @__PURE__ */
|
|
11485
|
+
/* @__PURE__ */ jsx22(
|
|
11329
11486
|
"p",
|
|
11330
11487
|
{
|
|
11331
11488
|
style: {
|
|
@@ -11340,7 +11497,7 @@ var MemoryPanel = ({
|
|
|
11340
11497
|
]
|
|
11341
11498
|
}
|
|
11342
11499
|
),
|
|
11343
|
-
filteredItems.length === 0 ? /* @__PURE__ */
|
|
11500
|
+
filteredItems.length === 0 ? /* @__PURE__ */ jsxs21(
|
|
11344
11501
|
"div",
|
|
11345
11502
|
{
|
|
11346
11503
|
style: {
|
|
@@ -11349,11 +11506,11 @@ var MemoryPanel = ({
|
|
|
11349
11506
|
color: "var(--chatllm-text-muted, #9ca3af)"
|
|
11350
11507
|
},
|
|
11351
11508
|
children: [
|
|
11352
|
-
/* @__PURE__ */
|
|
11353
|
-
/* @__PURE__ */
|
|
11509
|
+
/* @__PURE__ */ jsx22(IconSvg, { name: "robot-line", size: 32, color: "var(--chatllm-text-muted, #d1d5db)" }),
|
|
11510
|
+
/* @__PURE__ */ jsx22("p", { style: { fontSize: "14px", marginTop: "12px" }, children: "\uC800\uC7A5\uB41C \uBA54\uBAA8\uB9AC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4" })
|
|
11354
11511
|
]
|
|
11355
11512
|
}
|
|
11356
|
-
) : /* @__PURE__ */
|
|
11513
|
+
) : /* @__PURE__ */ jsx22("div", { style: { display: "flex", flexDirection: "column", gap: "8px" }, children: filteredItems.map((item) => /* @__PURE__ */ jsxs21(
|
|
11357
11514
|
"div",
|
|
11358
11515
|
{
|
|
11359
11516
|
style: {
|
|
@@ -11366,10 +11523,10 @@ var MemoryPanel = ({
|
|
|
11366
11523
|
},
|
|
11367
11524
|
onClick: () => setExpandedId(expandedId === item.id ? null : item.id),
|
|
11368
11525
|
children: [
|
|
11369
|
-
/* @__PURE__ */
|
|
11370
|
-
/* @__PURE__ */
|
|
11371
|
-
/* @__PURE__ */
|
|
11372
|
-
item.category && /* @__PURE__ */
|
|
11526
|
+
/* @__PURE__ */ jsxs21("div", { style: { display: "flex", alignItems: "flex-start", justifyContent: "space-between" }, children: [
|
|
11527
|
+
/* @__PURE__ */ jsxs21("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
11528
|
+
/* @__PURE__ */ jsxs21("div", { style: { display: "flex", alignItems: "center", gap: "8px", marginBottom: "4px" }, children: [
|
|
11529
|
+
item.category && /* @__PURE__ */ jsx22(
|
|
11373
11530
|
"span",
|
|
11374
11531
|
{
|
|
11375
11532
|
style: {
|
|
@@ -11383,9 +11540,9 @@ var MemoryPanel = ({
|
|
|
11383
11540
|
children: categoryLabels[item.category]
|
|
11384
11541
|
}
|
|
11385
11542
|
),
|
|
11386
|
-
/* @__PURE__ */
|
|
11543
|
+
/* @__PURE__ */ jsx22("span", { style: { fontSize: "11px", color: "var(--chatllm-text-muted, #9ca3af)" }, children: formatDate(item.timestamp) })
|
|
11387
11544
|
] }),
|
|
11388
|
-
/* @__PURE__ */
|
|
11545
|
+
/* @__PURE__ */ jsx22(
|
|
11389
11546
|
"div",
|
|
11390
11547
|
{
|
|
11391
11548
|
style: {
|
|
@@ -11397,8 +11554,8 @@ var MemoryPanel = ({
|
|
|
11397
11554
|
}
|
|
11398
11555
|
)
|
|
11399
11556
|
] }),
|
|
11400
|
-
/* @__PURE__ */
|
|
11401
|
-
onDelete && /* @__PURE__ */
|
|
11557
|
+
/* @__PURE__ */ jsxs21("div", { style: { display: "flex", alignItems: "center", gap: "4px" }, children: [
|
|
11558
|
+
onDelete && /* @__PURE__ */ jsx22(
|
|
11402
11559
|
"button",
|
|
11403
11560
|
{
|
|
11404
11561
|
onClick: (e) => {
|
|
@@ -11413,10 +11570,10 @@ var MemoryPanel = ({
|
|
|
11413
11570
|
cursor: "pointer",
|
|
11414
11571
|
opacity: 0.5
|
|
11415
11572
|
},
|
|
11416
|
-
children: /* @__PURE__ */
|
|
11573
|
+
children: /* @__PURE__ */ jsx22(IconSvg, { name: "delete-bin-line", size: 14, color: "var(--chatllm-text-muted, #9ca3af)" })
|
|
11417
11574
|
}
|
|
11418
11575
|
),
|
|
11419
|
-
/* @__PURE__ */
|
|
11576
|
+
/* @__PURE__ */ jsx22(
|
|
11420
11577
|
IconSvg,
|
|
11421
11578
|
{
|
|
11422
11579
|
name: expandedId === item.id ? "arrow-up-s-line" : "arrow-down-s-line",
|
|
@@ -11426,7 +11583,7 @@ var MemoryPanel = ({
|
|
|
11426
11583
|
)
|
|
11427
11584
|
] })
|
|
11428
11585
|
] }),
|
|
11429
|
-
expandedId === item.id && /* @__PURE__ */
|
|
11586
|
+
expandedId === item.id && /* @__PURE__ */ jsx22(
|
|
11430
11587
|
"div",
|
|
11431
11588
|
{
|
|
11432
11589
|
style: {
|
|
@@ -11434,7 +11591,7 @@ var MemoryPanel = ({
|
|
|
11434
11591
|
paddingTop: "12px",
|
|
11435
11592
|
borderTop: "1px solid var(--chatllm-border-light, #f3f4f6)"
|
|
11436
11593
|
},
|
|
11437
|
-
children: /* @__PURE__ */
|
|
11594
|
+
children: /* @__PURE__ */ jsx22(
|
|
11438
11595
|
"p",
|
|
11439
11596
|
{
|
|
11440
11597
|
style: {
|