@copilotkit/react-ui 1.4.7 → 1.4.8-no-pino-redact.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -0
- package/dist/{chunk-4T3TMQNJ.mjs → chunk-BH6PCAAL.mjs} +38 -2
- package/dist/chunk-BH6PCAAL.mjs.map +1 -0
- package/dist/{chunk-63ZKP62F.mjs → chunk-E5SSVET3.mjs} +3 -3
- package/dist/{chunk-4LUMV4YO.mjs → chunk-EMQEEXUB.mjs} +8 -3
- package/dist/chunk-EMQEEXUB.mjs.map +1 -0
- package/dist/{chunk-VYKDFXGS.mjs → chunk-FUDBUYBG.mjs} +2 -2
- package/dist/chunk-ICGZEGHQ.mjs +155 -0
- package/dist/chunk-ICGZEGHQ.mjs.map +1 -0
- package/dist/{chunk-DHGDU64D.mjs → chunk-T35X2SFE.mjs} +3 -3
- package/dist/{chunk-2B57NCBA.mjs → chunk-TTYR7XPN.mjs} +2 -2
- package/dist/{chunk-TKFQ7VQR.mjs → chunk-ZQFKJLQ6.mjs} +2 -2
- package/dist/components/chat/Chat.js +123 -4
- package/dist/components/chat/Chat.js.map +1 -1
- package/dist/components/chat/Chat.mjs +5 -5
- package/dist/components/chat/Input.js +7 -2
- package/dist/components/chat/Input.js.map +1 -1
- package/dist/components/chat/Input.mjs +1 -1
- package/dist/components/chat/Modal.js +123 -4
- package/dist/components/chat/Modal.js.map +1 -1
- package/dist/components/chat/Modal.mjs +6 -6
- package/dist/components/chat/Popup.js +123 -4
- package/dist/components/chat/Popup.js.map +1 -1
- package/dist/components/chat/Popup.mjs +7 -7
- package/dist/components/chat/Sidebar.js +123 -4
- package/dist/components/chat/Sidebar.js.map +1 -1
- package/dist/components/chat/Sidebar.mjs +7 -7
- package/dist/components/chat/index.js +123 -4
- package/dist/components/chat/index.js.map +1 -1
- package/dist/components/chat/index.mjs +8 -8
- package/dist/components/dev-console/console.js +116 -2
- package/dist/components/dev-console/console.js.map +1 -1
- package/dist/components/dev-console/console.mjs +3 -3
- package/dist/components/dev-console/index.js +116 -2
- package/dist/components/dev-console/index.js.map +1 -1
- package/dist/components/dev-console/index.mjs +3 -3
- package/dist/components/help-modal/icons.d.ts +4 -1
- package/dist/components/help-modal/icons.js +39 -2
- package/dist/components/help-modal/icons.js.map +1 -1
- package/dist/components/help-modal/icons.mjs +5 -3
- package/dist/components/help-modal/index.js +136 -2
- package/dist/components/help-modal/index.js.map +1 -1
- package/dist/components/help-modal/index.mjs +2 -2
- package/dist/components/help-modal/modal.js +136 -2
- package/dist/components/help-modal/modal.js.map +1 -1
- package/dist/components/help-modal/modal.mjs +2 -2
- package/dist/components/index.js +123 -4
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +8 -8
- package/dist/index.js +123 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +8 -8
- package/package.json +4 -4
- package/src/components/chat/Input.tsx +9 -2
- package/src/components/help-modal/icons.tsx +28 -0
- package/src/components/help-modal/modal.tsx +90 -27
- package/dist/chunk-4LUMV4YO.mjs.map +0 -1
- package/dist/chunk-4T3TMQNJ.mjs.map +0 -1
- package/dist/chunk-WOUWNTAV.mjs +0 -72
- package/dist/chunk-WOUWNTAV.mjs.map +0 -1
- /package/dist/{chunk-63ZKP62F.mjs.map → chunk-E5SSVET3.mjs.map} +0 -0
- /package/dist/{chunk-VYKDFXGS.mjs.map → chunk-FUDBUYBG.mjs.map} +0 -0
- /package/dist/{chunk-DHGDU64D.mjs.map → chunk-T35X2SFE.mjs.map} +0 -0
- /package/dist/{chunk-2B57NCBA.mjs.map → chunk-TTYR7XPN.mjs.map} +0 -0
- /package/dist/{chunk-TKFQ7VQR.mjs.map → chunk-ZQFKJLQ6.mjs.map} +0 -0
package/dist/components/index.js
CHANGED
|
@@ -882,7 +882,10 @@ var Input = ({ inProgress, onSend, isVisible = false }) => {
|
|
|
882
882
|
});
|
|
883
883
|
const sendIcon = inProgress || pushToTalkState === "transcribing" ? context.icons.activityIcon : context.icons.sendIcon;
|
|
884
884
|
const showPushToTalk = pushToTalkConfigured && (pushToTalkState === "idle" || pushToTalkState === "recording") && !inProgress;
|
|
885
|
-
const
|
|
885
|
+
const canSend = () => {
|
|
886
|
+
return !inProgress && text.trim().length > 0 && pushToTalkState === "idle";
|
|
887
|
+
};
|
|
888
|
+
const sendDisabled = !canSend();
|
|
886
889
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "copilotKitInput", onClick: handleDivClick, children: [
|
|
887
890
|
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
888
891
|
Textarea_default,
|
|
@@ -896,7 +899,9 @@ var Input = ({ inProgress, onSend, isVisible = false }) => {
|
|
|
896
899
|
onKeyDown: (event) => {
|
|
897
900
|
if (event.key === "Enter" && !event.shiftKey) {
|
|
898
901
|
event.preventDefault();
|
|
899
|
-
|
|
902
|
+
if (canSend()) {
|
|
903
|
+
send();
|
|
904
|
+
}
|
|
900
905
|
}
|
|
901
906
|
}
|
|
902
907
|
}
|
|
@@ -1939,15 +1944,79 @@ var CloseIcon2 = () => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
|
1939
1944
|
children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M6 18L18 6M6 6l12 12" })
|
|
1940
1945
|
}
|
|
1941
1946
|
);
|
|
1947
|
+
var LoadingSpinnerIcon = ({ color = "rgb(107 114 128)" }) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
|
|
1948
|
+
"svg",
|
|
1949
|
+
{
|
|
1950
|
+
style: {
|
|
1951
|
+
animation: "copilotKitSpinAnimation 1s linear infinite",
|
|
1952
|
+
color
|
|
1953
|
+
},
|
|
1954
|
+
width: "24",
|
|
1955
|
+
height: "24",
|
|
1956
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1957
|
+
fill: "none",
|
|
1958
|
+
viewBox: "0 0 24 24",
|
|
1959
|
+
children: [
|
|
1960
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1961
|
+
"circle",
|
|
1962
|
+
{
|
|
1963
|
+
style: { opacity: 0.25 },
|
|
1964
|
+
cx: "12",
|
|
1965
|
+
cy: "12",
|
|
1966
|
+
r: "10",
|
|
1967
|
+
stroke: "currentColor",
|
|
1968
|
+
strokeWidth: "4"
|
|
1969
|
+
}
|
|
1970
|
+
),
|
|
1971
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1972
|
+
"path",
|
|
1973
|
+
{
|
|
1974
|
+
style: { opacity: 0.75 },
|
|
1975
|
+
fill: "currentColor",
|
|
1976
|
+
d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
|
|
1977
|
+
}
|
|
1978
|
+
)
|
|
1979
|
+
]
|
|
1980
|
+
}
|
|
1981
|
+
);
|
|
1942
1982
|
|
|
1943
1983
|
// src/components/help-modal/modal.tsx
|
|
1944
1984
|
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
1945
1985
|
function CopilotKitHelpModal() {
|
|
1946
1986
|
const [showHelpModal, setShowHelpModal] = (0, import_react9.useState)(false);
|
|
1947
1987
|
const [issueDescription, setIssueDescription] = (0, import_react9.useState)("");
|
|
1948
|
-
const
|
|
1949
|
-
|
|
1988
|
+
const [email, setEmail] = (0, import_react9.useState)("");
|
|
1989
|
+
const [emailError, setEmailError] = (0, import_react9.useState)("");
|
|
1990
|
+
const [submitting, setSubmitting] = (0, import_react9.useState)(false);
|
|
1991
|
+
const validateEmail = (email2) => {
|
|
1992
|
+
const re = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
|
1993
|
+
return re.test(email2);
|
|
1950
1994
|
};
|
|
1995
|
+
const handleSubmit = (e) => __async(this, null, function* () {
|
|
1996
|
+
e.preventDefault();
|
|
1997
|
+
if ((email == null ? void 0 : email.length) > 0 && !validateEmail(email)) {
|
|
1998
|
+
setEmailError("Please enter a valid email address");
|
|
1999
|
+
return;
|
|
2000
|
+
}
|
|
2001
|
+
setSubmitting(true);
|
|
2002
|
+
yield fetch("https://api.segment.io/v1/track", {
|
|
2003
|
+
method: "POST",
|
|
2004
|
+
headers: {
|
|
2005
|
+
"Content-Type": "application/json"
|
|
2006
|
+
},
|
|
2007
|
+
body: JSON.stringify({
|
|
2008
|
+
event: "oss.dev-console.help",
|
|
2009
|
+
anonymousId: window.crypto.randomUUID(),
|
|
2010
|
+
properties: { email, text: issueDescription },
|
|
2011
|
+
writeKey: "q0gQqvGYyw9pNyhIocNzefSYKGO1aiwW"
|
|
2012
|
+
})
|
|
2013
|
+
});
|
|
2014
|
+
setEmailError("");
|
|
2015
|
+
setEmail("");
|
|
2016
|
+
setIssueDescription("");
|
|
2017
|
+
setSubmitting(false);
|
|
2018
|
+
setShowHelpModal(false);
|
|
2019
|
+
});
|
|
1951
2020
|
const HelpButton = () => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1952
2021
|
"button",
|
|
1953
2022
|
{
|
|
@@ -1957,6 +2026,10 @@ function CopilotKitHelpModal() {
|
|
|
1957
2026
|
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(LifeBuoyIcon, {})
|
|
1958
2027
|
}
|
|
1959
2028
|
);
|
|
2029
|
+
const submitButtonDisabled = (0, import_react9.useMemo)(
|
|
2030
|
+
() => submitting || !!emailError || issueDescription == null || (issueDescription == null ? void 0 : issueDescription.length) == 0,
|
|
2031
|
+
[submitting, emailError, issueDescription]
|
|
2032
|
+
);
|
|
1960
2033
|
return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_jsx_runtime19.Fragment, { children: [
|
|
1961
2034
|
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(HelpButton, {}),
|
|
1962
2035
|
showHelpModal && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
@@ -1995,6 +2068,52 @@ function CopilotKitHelpModal() {
|
|
|
1995
2068
|
children: "Apply for Priority Direct Slack Support"
|
|
1996
2069
|
}
|
|
1997
2070
|
) })
|
|
2071
|
+
] }),
|
|
2072
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("form", { onSubmit: handleSubmit, className: "flex flex-col space-y-2", children: [
|
|
2073
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { children: [
|
|
2074
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)("label", { htmlFor: "feedback", className: "block text-sm font-medium text-gray-700 mb-1", children: "Let us know what your issue is:" }),
|
|
2075
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
2076
|
+
"textarea",
|
|
2077
|
+
{
|
|
2078
|
+
id: "feedback",
|
|
2079
|
+
rows: 4,
|
|
2080
|
+
className: "w-full px-3 py-2 text-gray-700 border rounded-lg focus:outline-none focus:border-blue-500",
|
|
2081
|
+
placeholder: "A Loom link / screen recording is always great!",
|
|
2082
|
+
onChange: (e) => setIssueDescription(e.target.value),
|
|
2083
|
+
value: issueDescription,
|
|
2084
|
+
required: true
|
|
2085
|
+
}
|
|
2086
|
+
)
|
|
2087
|
+
] }),
|
|
2088
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { children: [
|
|
2089
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)("label", { htmlFor: "email", className: "block text-sm font-medium text-gray-700 mb-1", children: "Email (optional):" }),
|
|
2090
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
2091
|
+
"input",
|
|
2092
|
+
{
|
|
2093
|
+
type: "email",
|
|
2094
|
+
id: "email",
|
|
2095
|
+
className: `w-full px-3 py-2 text-gray-700 border rounded-lg focus:outline-none focus:border-blue-500 ${emailError ? "border-red-500" : ""}`,
|
|
2096
|
+
placeholder: "Enter your email for follow-up",
|
|
2097
|
+
onChange: (e) => {
|
|
2098
|
+
setEmail(e.target.value);
|
|
2099
|
+
setEmailError("");
|
|
2100
|
+
},
|
|
2101
|
+
value: email
|
|
2102
|
+
}
|
|
2103
|
+
),
|
|
2104
|
+
emailError && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("p", { className: "text-red-500 text-sm mt-1", children: emailError })
|
|
2105
|
+
] }),
|
|
2106
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "bg-gray-50 px-4 py-4 sm:px-6 sm:flex sm:flex-row-reverse rounded-b-lg", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
2107
|
+
"button",
|
|
2108
|
+
{
|
|
2109
|
+
type: "submit",
|
|
2110
|
+
onClick: handleSubmit,
|
|
2111
|
+
disabled: submitButtonDisabled,
|
|
2112
|
+
style: submitButtonDisabled ? { backgroundColor: "rgb(216, 216, 216)", color: "rgb(129, 129, 129)" } : void 0,
|
|
2113
|
+
className: "w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-500 text-base font-medium text-white hover:bg-blue-600 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 sm:ml-3 sm:w-auto sm:text-sm disabled:shadow-none",
|
|
2114
|
+
children: submitting ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(LoadingSpinnerIcon, { color: "white" }) : "Submit"
|
|
2115
|
+
}
|
|
2116
|
+
) })
|
|
1998
2117
|
] })
|
|
1999
2118
|
] })
|
|
2000
2119
|
}
|