@copilotkit/react-ui 1.8.4-next.1 → 1.8.4-next.2

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.
Files changed (46) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/{chunk-OG2LUNMO.mjs → chunk-2IJIJYVG.mjs} +8 -8
  3. package/dist/{chunk-X7HMY3S6.mjs → chunk-3HSGJHBC.mjs} +2 -2
  4. package/dist/{chunk-2D24Q2YO.mjs → chunk-N5TIP3NE.mjs} +2 -2
  5. package/dist/{chunk-SNLHKLW3.mjs → chunk-QJKMOGWN.mjs} +5 -2
  6. package/dist/chunk-QJKMOGWN.mjs.map +1 -0
  7. package/dist/{chunk-D5XIJNXQ.mjs → chunk-QN2SMWML.mjs} +6 -6
  8. package/dist/{chunk-2OTVZXDX.mjs → chunk-W5HLRVAS.mjs} +4 -4
  9. package/dist/{chunk-HGA4N4ME.mjs → chunk-XG356GYI.mjs} +5 -5
  10. package/dist/components/chat/Chat.js +4 -1
  11. package/dist/components/chat/Chat.js.map +1 -1
  12. package/dist/components/chat/Chat.mjs +5 -5
  13. package/dist/components/chat/Header.mjs +5 -5
  14. package/dist/components/chat/Input.js +4 -1
  15. package/dist/components/chat/Input.js.map +1 -1
  16. package/dist/components/chat/Input.mjs +1 -1
  17. package/dist/components/chat/Modal.js +4 -1
  18. package/dist/components/chat/Modal.js.map +1 -1
  19. package/dist/components/chat/Modal.mjs +14 -14
  20. package/dist/components/chat/Popup.js +4 -1
  21. package/dist/components/chat/Popup.js.map +1 -1
  22. package/dist/components/chat/Popup.mjs +15 -15
  23. package/dist/components/chat/Sidebar.js +4 -1
  24. package/dist/components/chat/Sidebar.js.map +1 -1
  25. package/dist/components/chat/Sidebar.mjs +15 -15
  26. package/dist/components/chat/index.js +4 -1
  27. package/dist/components/chat/index.js.map +1 -1
  28. package/dist/components/chat/index.mjs +16 -16
  29. package/dist/components/chat/messages/AssistantMessage.mjs +1 -1
  30. package/dist/components/dev-console/console.mjs +3 -3
  31. package/dist/components/dev-console/index.mjs +5 -5
  32. package/dist/components/index.js +4 -1
  33. package/dist/components/index.js.map +1 -1
  34. package/dist/components/index.mjs +20 -20
  35. package/dist/index.js +4 -1
  36. package/dist/index.js.map +1 -1
  37. package/dist/index.mjs +20 -20
  38. package/package.json +4 -4
  39. package/src/components/chat/Input.tsx +8 -2
  40. package/dist/chunk-SNLHKLW3.mjs.map +0 -1
  41. /package/dist/{chunk-OG2LUNMO.mjs.map → chunk-2IJIJYVG.mjs.map} +0 -0
  42. /package/dist/{chunk-X7HMY3S6.mjs.map → chunk-3HSGJHBC.mjs.map} +0 -0
  43. /package/dist/{chunk-2D24Q2YO.mjs.map → chunk-N5TIP3NE.mjs.map} +0 -0
  44. /package/dist/{chunk-D5XIJNXQ.mjs.map → chunk-QN2SMWML.mjs.map} +0 -0
  45. /package/dist/{chunk-2OTVZXDX.mjs.map → chunk-W5HLRVAS.mjs.map} +0 -0
  46. /package/dist/{chunk-HGA4N4ME.mjs.map → chunk-XG356GYI.mjs.map} +0 -0
package/dist/index.mjs CHANGED
@@ -5,28 +5,16 @@ import "./chunk-SQMEPWVT.mjs";
5
5
  import "./chunk-WB3YULQ4.mjs";
6
6
  import {
7
7
  CopilotPopup
8
- } from "./chunk-2D24Q2YO.mjs";
8
+ } from "./chunk-N5TIP3NE.mjs";
9
9
  import {
10
10
  CopilotSidebar
11
- } from "./chunk-X7HMY3S6.mjs";
12
- import "./chunk-OG2LUNMO.mjs";
11
+ } from "./chunk-3HSGJHBC.mjs";
12
+ import "./chunk-2IJIJYVG.mjs";
13
13
  import "./chunk-P7S3E5UW.mjs";
14
- import "./chunk-2OTVZXDX.mjs";
15
- import "./chunk-V7W6IM2V.mjs";
16
- import {
17
- CopilotDevConsole
18
- } from "./chunk-D5XIJNXQ.mjs";
19
- import {
20
- shouldShowDevConsole
21
- } from "./chunk-6TCUJ3B7.mjs";
22
- import "./chunk-KXE2JCUH.mjs";
23
- import "./chunk-NRA3CFEE.mjs";
24
- import "./chunk-BH6PCAAL.mjs";
25
- import "./chunk-Q5V6S67N.mjs";
26
14
  import "./chunk-YOEL33HG.mjs";
27
15
  import {
28
16
  CopilotChat
29
- } from "./chunk-HGA4N4ME.mjs";
17
+ } from "./chunk-XG356GYI.mjs";
30
18
  import "./chunk-WEYDZBT7.mjs";
31
19
  import "./chunk-7RIBDD4K.mjs";
32
20
  import {
@@ -37,18 +25,30 @@ import {
37
25
  } from "./chunk-5M7ODWKH.mjs";
38
26
  import "./chunk-XB6QCUPB.mjs";
39
27
  import "./chunk-UWWMAJ7R.mjs";
40
- import "./chunk-TOQ7P4DO.mjs";
41
- import "./chunk-SNLHKLW3.mjs";
42
- import "./chunk-YQFVRDNC.mjs";
43
28
  import {
44
29
  Markdown
45
30
  } from "./chunk-XNQO5AZZ.mjs";
46
31
  import "./chunk-ZY25LVYR.mjs";
32
+ import "./chunk-TOQ7P4DO.mjs";
33
+ import "./chunk-PCTCOQK2.mjs";
34
+ import "./chunk-W5HLRVAS.mjs";
35
+ import "./chunk-QJKMOGWN.mjs";
36
+ import "./chunk-YQFVRDNC.mjs";
47
37
  import {
48
38
  useChatContext
49
39
  } from "./chunk-UN2E3HCK.mjs";
50
- import "./chunk-PCTCOQK2.mjs";
40
+ import "./chunk-V7W6IM2V.mjs";
41
+ import {
42
+ CopilotDevConsole
43
+ } from "./chunk-QN2SMWML.mjs";
44
+ import "./chunk-KXE2JCUH.mjs";
45
+ import "./chunk-NRA3CFEE.mjs";
46
+ import "./chunk-BH6PCAAL.mjs";
47
+ import {
48
+ shouldShowDevConsole
49
+ } from "./chunk-6TCUJ3B7.mjs";
51
50
  import "./chunk-ORSMX3SE.mjs";
51
+ import "./chunk-Q5V6S67N.mjs";
52
52
  import "./chunk-IU3WTXLQ.mjs";
53
53
  import "./chunk-T26KLXLH.mjs";
54
54
  import {
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "publishConfig": {
10
10
  "access": "public"
11
11
  },
12
- "version": "1.8.4-next.1",
12
+ "version": "1.8.4-next.2",
13
13
  "sideEffects": [
14
14
  "**/*.css"
15
15
  ],
@@ -50,9 +50,9 @@
50
50
  "react-syntax-highlighter": "^15.5.0",
51
51
  "remark-gfm": "^3.0.1",
52
52
  "remark-math": "^5.1.1",
53
- "@copilotkit/react-core": "1.8.4-next.1",
54
- "@copilotkit/runtime-client-gql": "1.8.4-next.1",
55
- "@copilotkit/shared": "1.8.4-next.1"
53
+ "@copilotkit/react-core": "1.8.4-next.2",
54
+ "@copilotkit/runtime-client-gql": "1.8.4-next.2",
55
+ "@copilotkit/shared": "1.8.4-next.2"
56
56
  },
57
57
  "keywords": [
58
58
  "copilotkit",
@@ -16,9 +16,15 @@ export const Input = ({ inProgress, onSend, isVisible = false, onStop }: InputPr
16
16
  const textareaRef = useRef<HTMLTextAreaElement>(null);
17
17
 
18
18
  const handleDivClick = (event: React.MouseEvent<HTMLDivElement>) => {
19
- // Check if the clicked element is not the textarea itself
20
- if (event.target !== event.currentTarget) return;
19
+ const target = event.target as HTMLElement;
21
20
 
21
+ // If the user clicked a button or inside a button, don't focus the textarea
22
+ if (target.closest("button")) return;
23
+
24
+ // If the user clicked the textarea, do nothing (it's already focused)
25
+ if (target.tagName === "TEXTAREA") return;
26
+
27
+ // Otherwise, focus the textarea
22
28
  textareaRef.current?.focus();
23
29
  };
24
30
 
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/chat/Input.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\nimport { InputProps } from \"./props\";\nimport { useChatContext } from \"./ChatContext\";\nimport AutoResizingTextarea from \"./Textarea\";\nimport { usePushToTalk } from \"../../hooks/use-push-to-talk\";\nimport { useCopilotContext } from \"@copilotkit/react-core\";\n\nexport const Input = ({ inProgress, onSend, isVisible = false, onStop }: InputProps) => {\n const context = useChatContext();\n const copilotContext = useCopilotContext();\n\n const pushToTalkConfigured =\n copilotContext.copilotApiConfig.textToSpeechUrl !== undefined &&\n copilotContext.copilotApiConfig.transcribeAudioUrl !== undefined;\n\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n\n const handleDivClick = (event: React.MouseEvent<HTMLDivElement>) => {\n // Check if the clicked element is not the textarea itself\n if (event.target !== event.currentTarget) return;\n\n textareaRef.current?.focus();\n };\n\n const [text, setText] = useState(\"\");\n const send = () => {\n if (inProgress) return;\n onSend(text);\n setText(\"\");\n\n textareaRef.current?.focus();\n };\n\n useEffect(() => {\n if (isVisible) {\n textareaRef.current?.focus();\n }\n }, [isVisible]);\n\n const { pushToTalkState, setPushToTalkState } = usePushToTalk({\n sendFunction: onSend,\n inProgress,\n });\n\n const isInProgress = inProgress || pushToTalkState === \"transcribing\";\n const buttonIcon = isInProgress ? context.icons.stopIcon : context.icons.sendIcon;\n const showPushToTalk =\n pushToTalkConfigured &&\n (pushToTalkState === \"idle\" || pushToTalkState === \"recording\") &&\n !inProgress;\n\n const canSend = () => {\n const interruptEvent = copilotContext.langGraphInterruptAction?.event;\n const interruptInProgress =\n interruptEvent?.name === \"LangGraphInterruptEvent\" && !interruptEvent?.response;\n\n return (\n (isInProgress || (!isInProgress && text.trim().length > 0)) &&\n pushToTalkState === \"idle\" &&\n !interruptInProgress\n );\n };\n\n const sendDisabled = !canSend();\n\n return (\n <div className=\"copilotKitInputContainer\">\n <div className=\"copilotKitInput\" onClick={handleDivClick}>\n <AutoResizingTextarea\n ref={textareaRef}\n placeholder={context.labels.placeholder}\n autoFocus={true}\n maxRows={5}\n value={text}\n onChange={(event) => setText(event.target.value)}\n onKeyDown={(event) => {\n if (event.key === \"Enter\" && !event.shiftKey) {\n event.preventDefault();\n if (canSend()) {\n send();\n }\n }\n }}\n />\n <div className=\"copilotKitInputControls\">\n <div style={{ flexGrow: 1 }} />\n {showPushToTalk && (\n <button\n onClick={() =>\n setPushToTalkState(pushToTalkState === \"idle\" ? \"recording\" : \"transcribing\")\n }\n className={\n pushToTalkState === \"recording\"\n ? \"copilotKitInputControlButton copilotKitPushToTalkRecording\"\n : \"copilotKitInputControlButton\"\n }\n >\n {context.icons.pushToTalkIcon}\n </button>\n )}\n <button\n disabled={sendDisabled}\n onClick={isInProgress ? onStop : send}\n data-copilotkit-in-progress={inProgress}\n data-test-id={inProgress ? \"copilot-chat-request-in-progress\" : \"copilot-chat-ready\"}\n className=\"copilotKitInputControlButton\"\n >\n {buttonIcon}\n </button>\n </div>\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA,SAAgB,WAAW,QAAQ,gBAAgB;AAKnD,SAAS,yBAAyB;AA+D1B,cAgBA,YAhBA;AA7DD,IAAM,QAAQ,CAAC,EAAE,YAAY,QAAQ,YAAY,OAAO,OAAO,MAAkB;AACtF,QAAM,UAAU,eAAe;AAC/B,QAAM,iBAAiB,kBAAkB;AAEzC,QAAM,uBACJ,eAAe,iBAAiB,oBAAoB,UACpD,eAAe,iBAAiB,uBAAuB;AAEzD,QAAM,cAAc,OAA4B,IAAI;AAEpD,QAAM,iBAAiB,CAAC,UAA4C;AAjBtE;AAmBI,QAAI,MAAM,WAAW,MAAM;AAAe;AAE1C,sBAAY,YAAZ,mBAAqB;AAAA,EACvB;AAEA,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,EAAE;AACnC,QAAM,OAAO,MAAM;AAzBrB;AA0BI,QAAI;AAAY;AAChB,WAAO,IAAI;AACX,YAAQ,EAAE;AAEV,sBAAY,YAAZ,mBAAqB;AAAA,EACvB;AAEA,YAAU,MAAM;AAjClB;AAkCI,QAAI,WAAW;AACb,wBAAY,YAAZ,mBAAqB;AAAA,IACvB;AAAA,EACF,GAAG,CAAC,SAAS,CAAC;AAEd,QAAM,EAAE,iBAAiB,mBAAmB,IAAI,cAAc;AAAA,IAC5D,cAAc;AAAA,IACd;AAAA,EACF,CAAC;AAED,QAAM,eAAe,cAAc,oBAAoB;AACvD,QAAM,aAAa,eAAe,QAAQ,MAAM,WAAW,QAAQ,MAAM;AACzE,QAAM,iBACJ,yBACC,oBAAoB,UAAU,oBAAoB,gBACnD,CAAC;AAEH,QAAM,UAAU,MAAM;AAnDxB;AAoDI,UAAM,kBAAiB,oBAAe,6BAAf,mBAAyC;AAChE,UAAM,uBACJ,iDAAgB,UAAS,6BAA6B,EAAC,iDAAgB;AAEzE,YACG,gBAAiB,CAAC,gBAAgB,KAAK,KAAK,EAAE,SAAS,MACxD,oBAAoB,UACpB,CAAC;AAAA,EAEL;AAEA,QAAM,eAAe,CAAC,QAAQ;AAE9B,SACE,oBAAC,SAAI,WAAU,4BACb,+BAAC,SAAI,WAAU,mBAAkB,SAAS,gBACxC;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,KAAK;AAAA,QACL,aAAa,QAAQ,OAAO;AAAA,QAC5B,WAAW;AAAA,QACX,SAAS;AAAA,QACT,OAAO;AAAA,QACP,UAAU,CAAC,UAAU,QAAQ,MAAM,OAAO,KAAK;AAAA,QAC/C,WAAW,CAAC,UAAU;AACpB,cAAI,MAAM,QAAQ,WAAW,CAAC,MAAM,UAAU;AAC5C,kBAAM,eAAe;AACrB,gBAAI,QAAQ,GAAG;AACb,mBAAK;AAAA,YACP;AAAA,UACF;AAAA,QACF;AAAA;AAAA,IACF;AAAA,IACA,qBAAC,SAAI,WAAU,2BACb;AAAA,0BAAC,SAAI,OAAO,EAAE,UAAU,EAAE,GAAG;AAAA,MAC5B,kBACC;AAAA,QAAC;AAAA;AAAA,UACC,SAAS,MACP,mBAAmB,oBAAoB,SAAS,cAAc,cAAc;AAAA,UAE9E,WACE,oBAAoB,cAChB,+DACA;AAAA,UAGL,kBAAQ,MAAM;AAAA;AAAA,MACjB;AAAA,MAEF;AAAA,QAAC;AAAA;AAAA,UACC,UAAU;AAAA,UACV,SAAS,eAAe,SAAS;AAAA,UACjC,+BAA6B;AAAA,UAC7B,gBAAc,aAAa,qCAAqC;AAAA,UAChE,WAAU;AAAA,UAET;AAAA;AAAA,MACH;AAAA,OACF;AAAA,KACF,GACF;AAEJ;","names":[]}