@copilotkit/react-ui 0.9.0-alpha.1 → 0.9.0-alpha.11

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 (187) hide show
  1. package/.turbo/turbo-build.log +105 -105
  2. package/CHANGELOG.md +90 -0
  3. package/dist/components/chat-components/chat-list.mjs +488 -12
  4. package/dist/components/chat-components/chat-list.mjs.map +1 -1
  5. package/dist/components/chat-components/chat-message-actions.mjs +184 -7
  6. package/dist/components/chat-components/chat-message-actions.mjs.map +1 -1
  7. package/dist/components/chat-components/chat-message.mjs +440 -10
  8. package/dist/components/chat-components/chat-message.mjs.map +1 -1
  9. package/dist/components/chat-components/chat-panel.mjs +334 -9
  10. package/dist/components/chat-components/chat-panel.mjs.map +1 -1
  11. package/dist/components/chat-components/chat-scroll-anchor.mjs +48 -4
  12. package/dist/components/chat-components/chat-scroll-anchor.mjs.map +1 -1
  13. package/dist/components/chat-components/clear-history.mjs +268 -26
  14. package/dist/components/chat-components/clear-history.mjs.map +1 -1
  15. package/dist/components/chat-components/copilot-chat.mjs +931 -21
  16. package/dist/components/chat-components/copilot-chat.mjs.map +1 -1
  17. package/dist/components/chat-components/default-empty-screen.mjs +206 -7
  18. package/dist/components/chat-components/default-empty-screen.mjs.map +1 -1
  19. package/dist/components/chat-components/external-link.mjs +31 -3
  20. package/dist/components/chat-components/external-link.mjs.map +1 -1
  21. package/dist/components/chat-components/markdown.mjs +10 -3
  22. package/dist/components/chat-components/markdown.mjs.map +1 -1
  23. package/dist/components/chat-components/prompt-form.mjs +246 -8
  24. package/dist/components/chat-components/prompt-form.mjs.map +1 -1
  25. package/dist/components/chat-components/theme-toggle.mjs +133 -15
  26. package/dist/components/chat-components/theme-toggle.mjs.map +1 -1
  27. package/dist/components/chat-components/toaster.mjs +6 -3
  28. package/dist/components/chat-components/toaster.mjs.map +1 -1
  29. package/dist/components/chat-components/ui/alert-dialog.mjs +216 -5
  30. package/dist/components/chat-components/ui/alert-dialog.mjs.map +1 -1
  31. package/dist/components/chat-components/ui/badge.mjs +49 -7
  32. package/dist/components/chat-components/ui/badge.mjs.map +1 -1
  33. package/dist/components/chat-components/ui/button.mjs +88 -4
  34. package/dist/components/chat-components/ui/button.mjs.map +1 -1
  35. package/dist/components/chat-components/ui/codeblock.mjs +298 -7
  36. package/dist/components/chat-components/ui/codeblock.mjs.map +1 -1
  37. package/dist/components/chat-components/ui/dialog.mjs +94 -26
  38. package/dist/components/chat-components/ui/dialog.mjs.map +1 -1
  39. package/dist/components/chat-components/ui/dropdown-menu.mjs +61 -8
  40. package/dist/components/chat-components/ui/dropdown-menu.mjs.map +1 -1
  41. package/dist/components/chat-components/ui/icons.mjs +551 -4
  42. package/dist/components/chat-components/ui/icons.mjs.map +1 -1
  43. package/dist/components/chat-components/ui/input.mjs +48 -7
  44. package/dist/components/chat-components/ui/input.mjs.map +1 -1
  45. package/dist/components/chat-components/ui/label.mjs +51 -9
  46. package/dist/components/chat-components/ui/label.mjs.map +1 -1
  47. package/dist/components/chat-components/ui/select.mjs +113 -27
  48. package/dist/components/chat-components/ui/select.mjs.map +1 -1
  49. package/dist/components/chat-components/ui/separator.mjs +67 -4
  50. package/dist/components/chat-components/ui/separator.mjs.map +1 -1
  51. package/dist/components/chat-components/ui/sheet.mjs +93 -24
  52. package/dist/components/chat-components/ui/sheet.mjs.map +1 -1
  53. package/dist/components/chat-components/ui/switch.mjs +53 -8
  54. package/dist/components/chat-components/ui/switch.mjs.map +1 -1
  55. package/dist/components/chat-components/ui/textarea.mjs +48 -7
  56. package/dist/components/chat-components/ui/textarea.mjs.map +1 -1
  57. package/dist/components/chat-components/ui/tooltip.mjs +69 -4
  58. package/dist/components/chat-components/ui/tooltip.mjs.map +1 -1
  59. package/dist/components/index.mjs +1057 -25
  60. package/dist/components/index.mjs.map +1 -1
  61. package/dist/components/sidebar/copilot-sidebar-ui-provider.mjs +1052 -24
  62. package/dist/components/sidebar/copilot-sidebar-ui-provider.mjs.map +1 -1
  63. package/dist/components/sidebar/copilot-sidebar.mjs +974 -22
  64. package/dist/components/sidebar/copilot-sidebar.mjs.map +1 -1
  65. package/dist/components/sidebar/sidebar-context.mjs +10 -3
  66. package/dist/components/sidebar/sidebar-context.mjs.map +1 -1
  67. package/dist/context/index.mjs +0 -2
  68. package/dist/context/index.mjs.map +1 -1
  69. package/dist/hooks/index.mjs +0 -2
  70. package/dist/hooks/index.mjs.map +1 -1
  71. package/dist/hooks/use-at-bottom.mjs +21 -3
  72. package/dist/hooks/use-at-bottom.mjs.map +1 -1
  73. package/dist/hooks/use-copy-to-clipboard.mjs +27 -3
  74. package/dist/hooks/use-copy-to-clipboard.mjs.map +1 -1
  75. package/dist/hooks/use-enter-submit.mjs +16 -3
  76. package/dist/hooks/use-enter-submit.mjs.map +1 -1
  77. package/dist/index.mjs +1057 -28
  78. package/dist/index.mjs.map +1 -1
  79. package/dist/lib/utils.mjs +62 -3
  80. package/dist/lib/utils.mjs.map +1 -1
  81. package/dist/lib/utils.test.mjs +0 -1
  82. package/dist/lib/utils.test.mjs.map +1 -1
  83. package/dist/types/index.mjs +0 -2
  84. package/dist/types/index.mjs.map +1 -1
  85. package/dist/types/types.mjs +0 -2
  86. package/dist/types/types.mjs.map +1 -1
  87. package/package.json +6 -5
  88. package/src/components/chat-components/prompt-form.tsx +3 -3
  89. package/src/components/chat-components/ui/codeblock.tsx +0 -2
  90. package/dist/chunk-6LAC5RA2.mjs +0 -28
  91. package/dist/chunk-6LAC5RA2.mjs.map +0 -1
  92. package/dist/chunk-6LRNF2VU.mjs +0 -12
  93. package/dist/chunk-6LRNF2VU.mjs.map +0 -1
  94. package/dist/chunk-6UJWRTL6.mjs +0 -45
  95. package/dist/chunk-6UJWRTL6.mjs.map +0 -1
  96. package/dist/chunk-7NSRDJ5C.mjs +0 -3
  97. package/dist/chunk-7NSRDJ5C.mjs.map +0 -1
  98. package/dist/chunk-BIPCPNHG.mjs +0 -18
  99. package/dist/chunk-BIPCPNHG.mjs.map +0 -1
  100. package/dist/chunk-BS6RR2DJ.mjs +0 -25
  101. package/dist/chunk-BS6RR2DJ.mjs.map +0 -1
  102. package/dist/chunk-DOMJCSI6.mjs +0 -26
  103. package/dist/chunk-DOMJCSI6.mjs.map +0 -1
  104. package/dist/chunk-G6R4HFOE.mjs +0 -69
  105. package/dist/chunk-G6R4HFOE.mjs.map +0 -1
  106. package/dist/chunk-H4VKQGVU.mjs +0 -3
  107. package/dist/chunk-H4VKQGVU.mjs.map +0 -1
  108. package/dist/chunk-I2AB5FK4.mjs +0 -123
  109. package/dist/chunk-I2AB5FK4.mjs.map +0 -1
  110. package/dist/chunk-IU3WTXLQ.mjs +0 -3
  111. package/dist/chunk-IU3WTXLQ.mjs.map +0 -1
  112. package/dist/chunk-JUPNM7ZR.mjs +0 -75
  113. package/dist/chunk-JUPNM7ZR.mjs.map +0 -1
  114. package/dist/chunk-KR7MH7XO.mjs +0 -481
  115. package/dist/chunk-KR7MH7XO.mjs.map +0 -1
  116. package/dist/chunk-KU35CEEC.mjs +0 -106
  117. package/dist/chunk-KU35CEEC.mjs.map +0 -1
  118. package/dist/chunk-KXJV37FS.mjs +0 -33
  119. package/dist/chunk-KXJV37FS.mjs.map +0 -1
  120. package/dist/chunk-MC6KTH4X.mjs +0 -12
  121. package/dist/chunk-MC6KTH4X.mjs.map +0 -1
  122. package/dist/chunk-MRXNTQOX.mjs +0 -55
  123. package/dist/chunk-MRXNTQOX.mjs.map +0 -1
  124. package/dist/chunk-N7KB3Z57.mjs +0 -23
  125. package/dist/chunk-N7KB3Z57.mjs.map +0 -1
  126. package/dist/chunk-OZYTYKC6.mjs +0 -48
  127. package/dist/chunk-OZYTYKC6.mjs.map +0 -1
  128. package/dist/chunk-RSONJDLO.mjs +0 -28
  129. package/dist/chunk-RSONJDLO.mjs.map +0 -1
  130. package/dist/chunk-RVWZKSLL.mjs +0 -29
  131. package/dist/chunk-RVWZKSLL.mjs.map +0 -1
  132. package/dist/chunk-TVTG3V4F.mjs +0 -40
  133. package/dist/chunk-TVTG3V4F.mjs.map +0 -1
  134. package/dist/chunk-U6NJWGTV.mjs +0 -3
  135. package/dist/chunk-U6NJWGTV.mjs.map +0 -1
  136. package/dist/chunk-UIJXBILJ.mjs +0 -72
  137. package/dist/chunk-UIJXBILJ.mjs.map +0 -1
  138. package/dist/chunk-V6QYUEJR.mjs +0 -47
  139. package/dist/chunk-V6QYUEJR.mjs.map +0 -1
  140. package/dist/chunk-VQNV2DHJ.mjs +0 -142
  141. package/dist/chunk-VQNV2DHJ.mjs.map +0 -1
  142. package/dist/chunk-VSNDSL6W.mjs +0 -74
  143. package/dist/chunk-VSNDSL6W.mjs.map +0 -1
  144. package/dist/chunk-XDJJE4RX.mjs +0 -53
  145. package/dist/chunk-XDJJE4RX.mjs.map +0 -1
  146. package/dist/components/chat-components/chat-list.d.ts +0 -8
  147. package/dist/components/chat-components/chat-message-actions.d.ts +0 -8
  148. package/dist/components/chat-components/chat-message.d.ts +0 -8
  149. package/dist/components/chat-components/chat-panel.d.ts +0 -8
  150. package/dist/components/chat-components/chat-scroll-anchor.d.ts +0 -6
  151. package/dist/components/chat-components/clear-history.d.ts +0 -9
  152. package/dist/components/chat-components/copilot-chat.d.ts +0 -12
  153. package/dist/components/chat-components/default-empty-screen.d.ts +0 -8
  154. package/dist/components/chat-components/external-link.d.ts +0 -6
  155. package/dist/components/chat-components/markdown.d.ts +0 -6
  156. package/dist/components/chat-components/prompt-form.d.ts +0 -9
  157. package/dist/components/chat-components/theme-toggle.d.ts +0 -3
  158. package/dist/components/chat-components/toaster.d.ts +0 -1
  159. package/dist/components/chat-components/ui/alert-dialog.d.ts +0 -20
  160. package/dist/components/chat-components/ui/badge.d.ts +0 -12
  161. package/dist/components/chat-components/ui/button.d.ts +0 -14
  162. package/dist/components/chat-components/ui/codeblock.d.ts +0 -14
  163. package/dist/components/chat-components/ui/dialog.d.ts +0 -18
  164. package/dist/components/chat-components/ui/dropdown-menu.d.ts +0 -24
  165. package/dist/components/chat-components/ui/icons.d.ts +0 -33
  166. package/dist/components/chat-components/ui/input.d.ts +0 -7
  167. package/dist/components/chat-components/ui/label.d.ts +0 -8
  168. package/dist/components/chat-components/ui/select.d.ts +0 -13
  169. package/dist/components/chat-components/ui/separator.d.ts +0 -6
  170. package/dist/components/chat-components/ui/sheet.d.ts +0 -19
  171. package/dist/components/chat-components/ui/switch.d.ts +0 -6
  172. package/dist/components/chat-components/ui/textarea.d.ts +0 -7
  173. package/dist/components/chat-components/ui/tooltip.d.ts +0 -9
  174. package/dist/components/index.d.ts +0 -9
  175. package/dist/components/sidebar/copilot-sidebar-ui-provider.d.ts +0 -8
  176. package/dist/components/sidebar/copilot-sidebar.d.ts +0 -6
  177. package/dist/components/sidebar/sidebar-context.d.ts +0 -9
  178. package/dist/context/index.d.ts +0 -1
  179. package/dist/hooks/index.d.ts +0 -1
  180. package/dist/hooks/use-at-bottom.d.ts +0 -3
  181. package/dist/hooks/use-copy-to-clipboard.d.ts +0 -9
  182. package/dist/hooks/use-enter-submit.d.ts +0 -8
  183. package/dist/index.d.ts +0 -9
  184. package/dist/lib/utils.d.ts +0 -8
  185. package/dist/lib/utils.test.d.ts +0 -1
  186. package/dist/types/index.d.ts +0 -1
  187. package/dist/types/types.d.ts +0 -16
@@ -1,69 +0,0 @@
1
- import { PromptForm } from './chunk-KU35CEEC.mjs';
2
- import { Button } from './chunk-V6QYUEJR.mjs';
3
- import { IconStop, IconRefresh } from './chunk-KR7MH7XO.mjs';
4
- import { __async } from './chunk-MRXNTQOX.mjs';
5
- import { jsx, jsxs } from 'react/jsx-runtime';
6
-
7
- function ChatPanel({
8
- id,
9
- isLoading,
10
- stop,
11
- append,
12
- reload,
13
- input,
14
- setInput,
15
- messages
16
- }) {
17
- return /* @__PURE__ */ jsx("div", {
18
- className: "inset-x-0 bottom-0 bg-gradient-to-b from-muted/10 from-10% to-muted/30 to-50% mt-4 mb-8",
19
- style: { width: "100%", overflow: "hidden", boxSizing: "border-box" },
20
- children: /* @__PURE__ */ jsxs("div", {
21
- className: "mx-auto sm:max-w-2xl sm:px-4",
22
- children: [
23
- /* @__PURE__ */ jsx("div", {
24
- className: "flex h-10 items-center justify-center mb-4",
25
- children: isLoading ? /* @__PURE__ */ jsxs(Button, {
26
- variant: "outline",
27
- onClick: () => stop(),
28
- className: "bg-background",
29
- children: [
30
- /* @__PURE__ */ jsx(IconStop, {
31
- className: "mr-2"
32
- }),
33
- "Stop generating"
34
- ]
35
- }) : (messages == null ? void 0 : messages.length) > 0 && /* @__PURE__ */ jsxs(Button, {
36
- variant: "outline",
37
- onClick: () => reload(),
38
- className: "bg-background",
39
- children: [
40
- /* @__PURE__ */ jsx(IconRefresh, {
41
- className: "mr-2"
42
- }),
43
- "Regenerate response"
44
- ]
45
- })
46
- }),
47
- /* @__PURE__ */ jsx("div", {
48
- className: "space-y-4 border-2 bg-background px-4 py-2 shadow-lg sm:rounded-xl md:py-4",
49
- children: /* @__PURE__ */ jsx(PromptForm, {
50
- onSubmit: (value) => __async(this, null, function* () {
51
- yield append({
52
- id,
53
- content: value,
54
- role: "user"
55
- });
56
- }),
57
- input,
58
- setInput,
59
- isLoading
60
- })
61
- })
62
- ]
63
- })
64
- });
65
- }
66
-
67
- export { ChatPanel };
68
- //# sourceMappingURL=out.js.map
69
- //# sourceMappingURL=chunk-G6R4HFOE.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/chat-components/chat-panel.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAsCY,SAKE,KALF;AAlBL,SAAS,UAAU;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAmB;AACjB,SACE,oBAAC;AAAA,IACC,WAAU;AAAA,IACV,OAAO,EAAE,OAAO,QAAQ,UAAU,UAAU,WAAW,aAAa;AAAA,IAEpE,+BAAC;AAAA,MAAI,WAAU;AAAA,MACb;AAAA,4BAAC;AAAA,UAAI,WAAU;AAAA,UACZ,sBACC,qBAAC;AAAA,YACC,SAAQ;AAAA,YACR,SAAS,MAAM,KAAK;AAAA,YACpB,WAAU;AAAA,YAEV;AAAA,kCAAC;AAAA,gBAAS,WAAU;AAAA,eAAO;AAAA,cAAE;AAAA;AAAA,WAE/B,KAEA,qCAAU,UAAS,KACjB,qBAAC;AAAA,YACC,SAAQ;AAAA,YACR,SAAS,MAAM,OAAO;AAAA,YACtB,WAAU;AAAA,YAEV;AAAA,kCAAC;AAAA,gBAAY,WAAU;AAAA,eAAO;AAAA,cAAE;AAAA;AAAA,WAElC;AAAA,SAGN;AAAA,QACA,oBAAC;AAAA,UAAI,WAAU;AAAA,UACb,8BAAC;AAAA,YACC,UAAU,CAAO,UAAU;AACzB,oBAAM,OAAO;AAAA,gBACX;AAAA,gBACA,SAAS;AAAA,gBACT,MAAM;AAAA,cACR,CAAC;AAAA,YACH;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,WACF;AAAA,SACF;AAAA;AAAA,KACF;AAAA,GACF;AAEJ","sourcesContent":["import { type UseChatHelpers } from \"ai/react\";\n\nimport { Button } from \"./ui/button\";\nimport { PromptForm } from \"./prompt-form\";\nimport { IconRefresh, IconStop } from \"./ui/icons\";\n\nexport interface ChatPanelProps\n extends Pick<\n UseChatHelpers,\n | \"append\"\n | \"isLoading\"\n | \"reload\"\n | \"messages\"\n | \"stop\"\n | \"input\"\n | \"setInput\"\n > {\n id?: string;\n}\n\nexport function ChatPanel({\n id,\n isLoading,\n stop,\n append,\n reload,\n input,\n setInput,\n messages,\n}: ChatPanelProps) {\n return (\n <div\n className=\"inset-x-0 bottom-0 bg-gradient-to-b from-muted/10 from-10% to-muted/30 to-50% mt-4 mb-8\"\n style={{ width: \"100%\", overflow: \"hidden\", boxSizing: \"border-box\" }}\n >\n <div className=\"mx-auto sm:max-w-2xl sm:px-4\">\n <div className=\"flex h-10 items-center justify-center mb-4\">\n {isLoading ? (\n <Button\n variant=\"outline\"\n onClick={() => stop()}\n className=\"bg-background\"\n >\n <IconStop className=\"mr-2\" />\n Stop generating\n </Button>\n ) : (\n messages?.length > 0 && (\n <Button\n variant=\"outline\"\n onClick={() => reload()}\n className=\"bg-background\"\n >\n <IconRefresh className=\"mr-2\" />\n Regenerate response\n </Button>\n )\n )}\n </div>\n <div className=\"space-y-4 border-2 bg-background px-4 py-2 shadow-lg sm:rounded-xl md:py-4\">\n <PromptForm\n onSubmit={async (value) => {\n await append({\n id,\n content: value,\n role: \"user\",\n });\n }}\n input={input}\n setInput={setInput}\n isLoading={isLoading}\n />\n </div>\n </div>\n </div>\n );\n}\n"]}
@@ -1,3 +0,0 @@
1
-
2
- //# sourceMappingURL=out.js.map
3
- //# sourceMappingURL=chunk-H4VKQGVU.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":""}
@@ -1,123 +0,0 @@
1
- import { buttonVariants } from './chunk-V6QYUEJR.mjs';
2
- import { cn } from './chunk-TVTG3V4F.mjs';
3
- import { __objRest, __spreadProps, __spreadValues } from './chunk-MRXNTQOX.mjs';
4
- import * as React from 'react';
5
- import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
6
- import { jsx, jsxs } from 'react/jsx-runtime';
7
-
8
- var AlertDialog = AlertDialogPrimitive.Root;
9
- var AlertDialogTrigger = AlertDialogPrimitive.Trigger;
10
- var AlertDialogPortal = (_a) => {
11
- var _b = _a, {
12
- className,
13
- children
14
- } = _b, props = __objRest(_b, [
15
- "className",
16
- "children"
17
- ]);
18
- return /* @__PURE__ */ jsx(AlertDialogPrimitive.Portal, __spreadProps(__spreadValues({
19
- className: cn(className)
20
- }, props), {
21
- children: /* @__PURE__ */ jsx("div", {
22
- className: "fixed inset-0 z-50 flex items-end justify-center sm:items-center",
23
- children
24
- })
25
- }));
26
- };
27
- AlertDialogPortal.displayName = AlertDialogPrimitive.Portal.displayName;
28
- var AlertDialogOverlay = React.forwardRef((_a, ref) => {
29
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
30
- return /* @__PURE__ */ jsx(AlertDialogPrimitive.Overlay, __spreadProps(__spreadValues({
31
- className: cn(
32
- "fixed inset-0 z-50 bg-background/80 backdrop-blur-sm transition-opacity animate-in fade-in",
33
- className
34
- )
35
- }, props), {
36
- ref
37
- }));
38
- });
39
- AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
40
- var AlertDialogContent = React.forwardRef((_a, ref) => {
41
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
42
- return /* @__PURE__ */ jsxs(AlertDialogPortal, {
43
- children: [
44
- /* @__PURE__ */ jsx(AlertDialogOverlay, {}),
45
- /* @__PURE__ */ jsx(AlertDialogPrimitive.Content, __spreadValues({
46
- ref,
47
- className: cn(
48
- "fixed z-50 grid w-full max-w-lg scale-100 gap-4 border bg-background p-6 opacity-100 shadow-lg animate-in fade-in-90 slide-in-from-bottom-10 sm:rounded-lg sm:zoom-in-90 sm:slide-in-from-bottom-0 md:w-full",
49
- className
50
- )
51
- }, props))
52
- ]
53
- });
54
- });
55
- AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
56
- var AlertDialogHeader = (_a) => {
57
- var _b = _a, {
58
- className
59
- } = _b, props = __objRest(_b, [
60
- "className"
61
- ]);
62
- return /* @__PURE__ */ jsx("div", __spreadValues({
63
- className: cn(
64
- "flex flex-col space-y-2 text-center sm:text-left",
65
- className
66
- )
67
- }, props));
68
- };
69
- AlertDialogHeader.displayName = "AlertDialogHeader";
70
- var AlertDialogFooter = (_a) => {
71
- var _b = _a, {
72
- className
73
- } = _b, props = __objRest(_b, [
74
- "className"
75
- ]);
76
- return /* @__PURE__ */ jsx("div", __spreadValues({
77
- className: cn(
78
- "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
79
- className
80
- )
81
- }, props));
82
- };
83
- AlertDialogFooter.displayName = "AlertDialogFooter";
84
- var AlertDialogTitle = React.forwardRef((_a, ref) => {
85
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
86
- return /* @__PURE__ */ jsx(AlertDialogPrimitive.Title, __spreadValues({
87
- ref,
88
- className: cn("text-lg font-semibold", className)
89
- }, props));
90
- });
91
- AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
92
- var AlertDialogDescription = React.forwardRef((_a, ref) => {
93
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
94
- return /* @__PURE__ */ jsx(AlertDialogPrimitive.Description, __spreadValues({
95
- ref,
96
- className: cn("text-sm text-muted-foreground", className)
97
- }, props));
98
- });
99
- AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
100
- var AlertDialogAction = React.forwardRef((_a, ref) => {
101
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
102
- return /* @__PURE__ */ jsx(AlertDialogPrimitive.Action, __spreadValues({
103
- ref,
104
- className: cn(buttonVariants(), className)
105
- }, props));
106
- });
107
- AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
108
- var AlertDialogCancel = React.forwardRef((_a, ref) => {
109
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
110
- return /* @__PURE__ */ jsx(AlertDialogPrimitive.Cancel, __spreadValues({
111
- ref,
112
- className: cn(
113
- buttonVariants({ variant: "outline" }),
114
- "mt-2 sm:mt-0",
115
- className
116
- )
117
- }, props));
118
- });
119
- AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
120
-
121
- export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger };
122
- //# sourceMappingURL=out.js.map
123
- //# sourceMappingURL=chunk-I2AB5FK4.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/chat-components/ui/alert-dialog.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\";\n\nimport { cn } from \"../../../lib/utils\";\nimport { buttonVariants } from \"./button\";\n\nconst AlertDialog = AlertDialogPrimitive.Root;\n\nconst AlertDialogTrigger = AlertDialogPrimitive.Trigger;\n\nconst AlertDialogPortal = ({\n className,\n children,\n ...props\n}: AlertDialogPrimitive.AlertDialogPortalProps) => (\n <AlertDialogPrimitive.Portal className={cn(className)} {...props}>\n <div className=\"fixed inset-0 z-50 flex items-end justify-center sm:items-center\">\n {children}\n </div>\n </AlertDialogPrimitive.Portal>\n);\nAlertDialogPortal.displayName = AlertDialogPrimitive.Portal.displayName;\n\nconst AlertDialogOverlay = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Overlay>\n>(({ className, children, ...props }, ref) => (\n <AlertDialogPrimitive.Overlay\n className={cn(\n \"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm transition-opacity animate-in fade-in\",\n className\n )}\n {...props}\n ref={ref}\n />\n));\nAlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;\n\nconst AlertDialogContent = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed z-50 grid w-full max-w-lg scale-100 gap-4 border bg-background p-6 opacity-100 shadow-lg animate-in fade-in-90 slide-in-from-bottom-10 sm:rounded-lg sm:zoom-in-90 sm:slide-in-from-bottom-0 md:w-full\",\n className\n )}\n {...props}\n />\n </AlertDialogPortal>\n));\nAlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;\n\nconst AlertDialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col space-y-2 text-center sm:text-left\",\n className\n )}\n {...props}\n />\n);\nAlertDialogHeader.displayName = \"AlertDialogHeader\";\n\nconst AlertDialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\",\n className\n )}\n {...props}\n />\n);\nAlertDialogFooter.displayName = \"AlertDialogFooter\";\n\nconst AlertDialogTitle = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Title\n ref={ref}\n className={cn(\"text-lg font-semibold\", className)}\n {...props}\n />\n));\nAlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;\n\nconst AlertDialogDescription = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Description\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nAlertDialogDescription.displayName =\n AlertDialogPrimitive.Description.displayName;\n\nconst AlertDialogAction = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Action>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants(), className)}\n {...props}\n />\n));\nAlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;\n\nconst AlertDialogCancel = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Cancel>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Cancel\n ref={ref}\n className={cn(\n buttonVariants({ variant: \"outline\" }),\n \"mt-2 sm:mt-0\",\n className\n )}\n {...props}\n />\n));\nAlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;\n\nexport {\n AlertDialog,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n};\n"]}
@@ -1,3 +0,0 @@
1
-
2
- //# sourceMappingURL=out.js.map
3
- //# sourceMappingURL=chunk-IU3WTXLQ.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":""}
@@ -1,75 +0,0 @@
1
- import { CodeBlock } from './chunk-VQNV2DHJ.mjs';
2
- import { MemoizedReactMarkdown } from './chunk-6LRNF2VU.mjs';
3
- import { ChatMessageActions } from './chunk-6UJWRTL6.mjs';
4
- import { IconUser, IconOpenAI } from './chunk-KR7MH7XO.mjs';
5
- import { cn } from './chunk-TVTG3V4F.mjs';
6
- import { __objRest, __spreadProps, __spreadValues } from './chunk-MRXNTQOX.mjs';
7
- import remarkGfm from 'remark-gfm';
8
- import remarkMath from 'remark-math';
9
- import { jsxs, jsx } from 'react/jsx-runtime';
10
-
11
- function ChatMessage(_a) {
12
- var _b = _a, { message } = _b, props = __objRest(_b, ["message"]);
13
- return /* @__PURE__ */ jsxs("div", __spreadProps(__spreadValues({
14
- className: cn("group relative mb-4 flex items-start")
15
- }, props), {
16
- children: [
17
- /* @__PURE__ */ jsx("div", {
18
- className: cn(
19
- "flex h-8 w-8 shrink-0 select-none items-center justify-center rounded-md border shadow",
20
- message.role === "user" ? "bg-background" : "bg-primary text-primary-foreground"
21
- ),
22
- children: message.role === "user" ? /* @__PURE__ */ jsx(IconUser, {}) : /* @__PURE__ */ jsx(IconOpenAI, {})
23
- }),
24
- /* @__PURE__ */ jsxs("div", {
25
- className: "ml-4 flex-1 space-y-2 overflow-hidden px-1",
26
- children: [
27
- /* @__PURE__ */ jsx(MemoizedReactMarkdown, {
28
- className: "prose break-words dark:prose-invert prose-p:leading-relaxed prose-pre:p-0 text-sm",
29
- remarkPlugins: [remarkGfm, remarkMath],
30
- components: {
31
- p({ children }) {
32
- return /* @__PURE__ */ jsx("p", {
33
- className: "mb-2 last:mb-0",
34
- children
35
- });
36
- },
37
- code(_a2) {
38
- var _b2 = _a2, { children, className, inline } = _b2, props2 = __objRest(_b2, ["children", "className", "inline"]);
39
- if (children.length) {
40
- if (children[0] == "\u258D") {
41
- return /* @__PURE__ */ jsx("span", {
42
- className: "mt-1 animate-pulse cursor-default",
43
- children: "\u258D"
44
- });
45
- }
46
- children[0] = children[0].replace("`\u258D`", "\u258D");
47
- }
48
- const match = /language-(\w+)/.exec(className || "");
49
- if (inline) {
50
- return /* @__PURE__ */ jsx("code", __spreadProps(__spreadValues({
51
- className
52
- }, props2), {
53
- children
54
- }));
55
- }
56
- return /* @__PURE__ */ jsx(CodeBlock, __spreadValues({
57
- language: match && match[1] || "",
58
- value: String(children).replace(/\n$/, "")
59
- }, props2), Math.random());
60
- }
61
- },
62
- children: message.content
63
- }),
64
- /* @__PURE__ */ jsx(ChatMessageActions, {
65
- message
66
- })
67
- ]
68
- })
69
- ]
70
- }));
71
- }
72
-
73
- export { ChatMessage };
74
- //# sourceMappingURL=out.js.map
75
- //# sourceMappingURL=chunk-JUPNM7ZR.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/chat-components/chat-message.tsx"],"names":["_a","_b","props"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,eAAe;AACtB,OAAO,gBAAgB;AAuBY,cAE7B,YAF6B;AAX5B,SAAS,YAAY,IAAyC;AAAzC,eAAE,UAd9B,IAc4B,IAAc,kBAAd,IAAc,CAAZ;AAC5B,SACE,qBAAC;AAAA,IAAI,WAAW,GAAG,sCAAsC;AAAA,KAAO,QAA/D;AAAA,IACC;AAAA,0BAAC;AAAA,QACC,WAAW;AAAA,UACT;AAAA,UACA,QAAQ,SAAS,SACb,kBACA;AAAA,QACN;AAAA,QAEC,kBAAQ,SAAS,SAAS,oBAAC,YAAS,IAAK,oBAAC,cAAW;AAAA,OACxD;AAAA,MACA,qBAAC;AAAA,QAAI,WAAU;AAAA,QACb;AAAA,8BAAC;AAAA,YACC,WAAU;AAAA,YACV,eAAe,CAAC,WAAW,UAAU;AAAA,YACrC,YAAY;AAAA,cACV,EAAE,EAAE,SAAS,GAAG;AACd,uBAAO,oBAAC;AAAA,kBAAE,WAAU;AAAA,kBAAkB;AAAA,iBAAS;AAAA,cACjD;AAAA,cACA,KAAKA,KAA2C;AAA3C,oBAAAC,MAAAD,KAAE,YAAU,WAAW,OAnCxC,IAmCiBC,KAAkCC,SAAA,UAAlCD,KAAkC,CAAhC,YAAU,aAAW;AAC1B,oBAAI,SAAS,QAAQ;AACnB,sBAAI,SAAS,MAAM,UAAK;AACtB,2BACE,oBAAC;AAAA,sBAAK,WAAU;AAAA,sBAAoC;AAAA,qBAAC;AAAA,kBAEzD;AAEA,2BAAS,KAAM,SAAS,GAAc,QAAQ,YAAO,QAAG;AAAA,gBAC1D;AAEA,sBAAM,QAAQ,iBAAiB,KAAK,aAAa,EAAE;AAEnD,oBAAI,QAAQ;AACV,yBACE,oBAAC;AAAA,oBAAK;AAAA,qBAA0BC,SAA/B;AAAA,oBACE;AAAA,oBACH;AAAA,gBAEJ;AAEA,uBACE,oBAAC;AAAA,kBAEC,UAAW,SAAS,MAAM,MAAO;AAAA,kBACjC,OAAO,OAAO,QAAQ,EAAE,QAAQ,OAAO,EAAE;AAAA,mBACrCA,SAHC,KAAK,OAAO,CAInB;AAAA,cAEJ;AAAA,YACF;AAAA,YAEC,kBAAQ;AAAA,WACX;AAAA,UACA,oBAAC;AAAA,YAAmB;AAAA,WAAkB;AAAA;AAAA,OACxC;AAAA;AAAA,IACF;AAEJ","sourcesContent":["import { Message } from \"ai\";\nimport remarkGfm from \"remark-gfm\";\nimport remarkMath from \"remark-math\";\n\nimport { cn } from \"../../lib/utils\";\nimport { CodeBlock } from \"./ui/codeblock\";\nimport { MemoizedReactMarkdown } from \"./markdown\";\nimport { IconOpenAI, IconUser } from \"./ui/icons\";\nimport { ChatMessageActions } from \"./chat-message-actions\";\n\nexport interface ChatMessageProps {\n message: Message;\n}\n\nexport function ChatMessage({ message, ...props }: ChatMessageProps) {\n return (\n <div className={cn(\"group relative mb-4 flex items-start\")} {...props}>\n <div\n className={cn(\n \"flex h-8 w-8 shrink-0 select-none items-center justify-center rounded-md border shadow\",\n message.role === \"user\"\n ? \"bg-background\"\n : \"bg-primary text-primary-foreground\"\n )}\n >\n {message.role === \"user\" ? <IconUser /> : <IconOpenAI />}\n </div>\n <div className=\"ml-4 flex-1 space-y-2 overflow-hidden px-1\">\n <MemoizedReactMarkdown\n className=\"prose break-words dark:prose-invert prose-p:leading-relaxed prose-pre:p-0 text-sm\"\n remarkPlugins={[remarkGfm, remarkMath]}\n components={{\n p({ children }) {\n return <p className=\"mb-2 last:mb-0\">{children}</p>;\n },\n code({ children, className, inline, ...props }) {\n if (children.length) {\n if (children[0] == \"▍\") {\n return (\n <span className=\"mt-1 animate-pulse cursor-default\">▍</span>\n );\n }\n\n children[0] = (children[0] as string).replace(\"`▍`\", \"▍\");\n }\n\n const match = /language-(\\w+)/.exec(className || \"\");\n\n if (inline) {\n return (\n <code className={className} {...props}>\n {children}\n </code>\n );\n }\n\n return (\n <CodeBlock\n key={Math.random()}\n language={(match && match[1]) || \"\"}\n value={String(children).replace(/\\n$/, \"\")}\n {...props}\n />\n );\n },\n }}\n >\n {message.content}\n </MemoizedReactMarkdown>\n <ChatMessageActions message={message} />\n </div>\n </div>\n );\n}\n"]}