@katechat/ui 1.0.6 → 1.0.7
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/cjs/index.css +98 -85
- package/dist/cjs/index.css.map +3 -3
- package/dist/cjs/index.js +19 -39
- package/dist/cjs/index.js.map +3 -3
- package/dist/esm/index.css +98 -85
- package/dist/esm/index.css.map +3 -3
- package/dist/esm/index.js +20 -40
- package/dist/esm/index.js.map +3 -3
- package/dist/types/components/chat/ChatMessagesContainer.d.ts +1 -0
- package/dist/types/components/chat/ChatMessagesContainer.d.ts.map +1 -1
- package/dist/types/components/chat/message/ChatMessage.d.ts +1 -0
- package/dist/types/components/chat/message/ChatMessage.d.ts.map +1 -1
- package/dist/types/components/chat/message/ChatMessagePreview.d.ts +1 -0
- package/dist/types/components/chat/message/ChatMessagePreview.d.ts.map +1 -1
- package/dist/types/components/chat/message/LinkedChatMessage.d.ts +1 -0
- package/dist/types/components/chat/message/LinkedChatMessage.d.ts.map +1 -1
- package/dist/types/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
package/dist/esm/index.js
CHANGED
|
@@ -57372,22 +57372,6 @@ var CopyMessageButton = ({
|
|
|
57372
57372
|
/* @__PURE__ */ React2.createElement(IconCopy, null)
|
|
57373
57373
|
)), /* @__PURE__ */ React2.createElement(ActionIcon, { disabled: true, size: "sm", className: "check-icon" }, /* @__PURE__ */ React2.createElement(IconCopyCheck, null)));
|
|
57374
57374
|
|
|
57375
|
-
// src/components/chat/message/ChatMessage.module.scss
|
|
57376
|
-
var ChatMessage_module_default = {
|
|
57377
|
-
"messageContainer": "_messageContainer_bxv2j_1",
|
|
57378
|
-
"main": "_main_bxv2j_7",
|
|
57379
|
-
"linked": "_linked_bxv2j_8",
|
|
57380
|
-
"linkedToggle": "_linkedToggle_bxv2j_19",
|
|
57381
|
-
"hidden": "_hidden_bxv2j_41",
|
|
57382
|
-
"linkedMessageContainer": "_linkedMessageContainer_bxv2j_45",
|
|
57383
|
-
"message": "_message_bxv2j_1",
|
|
57384
|
-
"preview": "_preview_bxv2j_82",
|
|
57385
|
-
"detailsBlock": "_detailsBlock_bxv2j_91",
|
|
57386
|
-
"messageFooter": "_messageFooter_bxv2j_251",
|
|
57387
|
-
"user": "_user_bxv2j_277",
|
|
57388
|
-
"error": "_error_bxv2j_282"
|
|
57389
|
-
};
|
|
57390
|
-
|
|
57391
57375
|
// src/components/chat/message/ChatMessage.Carousel.module.scss
|
|
57392
57376
|
var ChatMessage_Carousel_module_default = {
|
|
57393
57377
|
"controls": "_controls_pp1ia_1"
|
|
@@ -57501,7 +57485,7 @@ var ChatMessage = (props) => {
|
|
|
57501
57485
|
const mainMessage = useMemo(() => {
|
|
57502
57486
|
const plugins = pluginsLoader ? pluginsLoader(message) : null;
|
|
57503
57487
|
const model = models?.find((m) => m.modelId === message?.modelId);
|
|
57504
|
-
return /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(Group, { align: "center" }, /* @__PURE__ */ React3.createElement(Avatar, { color: "gray", radius: "xl", size: "md", src: isUserMessage ? message?.user?.avatarUrl : void 0 }, isUserMessage ? /* @__PURE__ */ React3.createElement(IconUser, null) : model ? /* @__PURE__ */ React3.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ React3.createElement(IconRobot, null)), /* @__PURE__ */ React3.createElement(Group, { gap: "xs" }, /* @__PURE__ */ React3.createElement(Text, { size: "sm", fw: 500, c: isUserMessage ? "blue" : "teal" }, username), /* @__PURE__ */ React3.createElement(Text, { size: "xs", c: "dimmed" }, timestamp), status && /* @__PURE__ */ React3.createElement(MessageStatus, { status }), statusInfo && /* @__PURE__ */ React3.createElement(Text, { size: "xs", c: "dimmed" }, statusInfo))), /* @__PURE__ */ React3.createElement("div", { className:
|
|
57488
|
+
return /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(Group, { align: "center" }, /* @__PURE__ */ React3.createElement(Avatar, { color: "gray", radius: "xl", size: "md", src: isUserMessage ? message?.user?.avatarUrl : void 0 }, isUserMessage ? /* @__PURE__ */ React3.createElement(IconUser, null) : model ? /* @__PURE__ */ React3.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ React3.createElement(IconRobot, null)), /* @__PURE__ */ React3.createElement(Group, { gap: "xs" }, /* @__PURE__ */ React3.createElement(Text, { size: "sm", fw: 500, c: isUserMessage ? "blue" : "teal" }, username), /* @__PURE__ */ React3.createElement(Text, { size: "xs", c: "dimmed" }, timestamp), status && /* @__PURE__ */ React3.createElement(MessageStatus, { status }), statusInfo && /* @__PURE__ */ React3.createElement(Text, { size: "xs", c: "dimmed" }, statusInfo))), /* @__PURE__ */ React3.createElement("div", { className: "katechat-message-content" }, streaming && !content && /* @__PURE__ */ React3.createElement(Loader, { size: "md", mb: "md" }), html2 ? html2.map((part, index2) => /* @__PURE__ */ React3.createElement("div", { key: index2, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ React3.createElement("div", null, content), details && /* @__PURE__ */ React3.createElement(Box, { mt: "md" }, /* @__PURE__ */ React3.createElement(Group, { mb: 5 }, /* @__PURE__ */ React3.createElement(Button, { onClick: toggleDetails, p: "xs", variant: "light", size: "xs" }, "Details")), /* @__PURE__ */ React3.createElement(Collapse, { in: showDetails }, /* @__PURE__ */ React3.createElement("div", { className: "katechat-message-content-details" }, details))), /* @__PURE__ */ React3.createElement("div", { className: "katechat-message-footer" }, /* @__PURE__ */ React3.createElement(CopyMessageButton, { messageId: id, messageIndex: index }), plugins)));
|
|
57505
57489
|
}, [
|
|
57506
57490
|
role,
|
|
57507
57491
|
username,
|
|
@@ -57544,9 +57528,9 @@ var ChatMessage = (props) => {
|
|
|
57544
57528
|
);
|
|
57545
57529
|
}, [linkedMessages, models, pluginsLoader, index]);
|
|
57546
57530
|
if (!linkedMessagesCmp) {
|
|
57547
|
-
return /* @__PURE__ */ React3.createElement("div", { className: [
|
|
57531
|
+
return /* @__PURE__ */ React3.createElement("div", { className: ["katechat-message", `katechat-message__${role || ""}`].join(" "), ref: componentRef }, /* @__PURE__ */ React3.createElement("div", { className: "katechat-message-main" }, mainMessage));
|
|
57548
57532
|
}
|
|
57549
|
-
return /* @__PURE__ */ React3.createElement("div", { className: [
|
|
57533
|
+
return /* @__PURE__ */ React3.createElement("div", { className: ["katechat-message", `katechat-message__${role || ""}`].join(" "), ref: componentRef }, /* @__PURE__ */ React3.createElement("div", { className: "katechat-message-linked-toggle" }, /* @__PURE__ */ React3.createElement(
|
|
57550
57534
|
Switch,
|
|
57551
57535
|
{
|
|
57552
57536
|
checked: showMainMessage,
|
|
@@ -57554,7 +57538,7 @@ var ChatMessage = (props) => {
|
|
|
57554
57538
|
label: showMainMessage ? "Main" : "Others",
|
|
57555
57539
|
size: "sm"
|
|
57556
57540
|
}
|
|
57557
|
-
)), /* @__PURE__ */ React3.createElement("div", { className: [
|
|
57541
|
+
)), /* @__PURE__ */ React3.createElement("div", { className: ["katechat-message-main", showMainMessage ? "" : "hidden"].join(" ") }, mainMessage), /* @__PURE__ */ React3.createElement("div", { className: ["katechat-message-linked", showMainMessage ? "hidden" : ""].join(" ") }, linkedMessagesCmp));
|
|
57558
57542
|
};
|
|
57559
57543
|
ChatMessage.displayName = "ChatMessage";
|
|
57560
57544
|
|
|
@@ -57562,7 +57546,15 @@ ChatMessage.displayName = "ChatMessage";
|
|
|
57562
57546
|
import React4 from "react";
|
|
57563
57547
|
import { ScrollArea } from "@mantine/core";
|
|
57564
57548
|
var ChatMessagePreview = ({ html: html2, text: text2 }) => {
|
|
57565
|
-
return /* @__PURE__ */ React4.createElement(
|
|
57549
|
+
return /* @__PURE__ */ React4.createElement(
|
|
57550
|
+
ScrollArea,
|
|
57551
|
+
{
|
|
57552
|
+
type: "hover",
|
|
57553
|
+
offsetScrollbars: true,
|
|
57554
|
+
className: ["katechat-message-content", "katechat-message-preview"].join(" ")
|
|
57555
|
+
},
|
|
57556
|
+
text2 ? /* @__PURE__ */ React4.createElement(React4.Fragment, null, html2 ? html2.map((part, index) => /* @__PURE__ */ React4.createElement("div", { key: index, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ React4.createElement("div", null, text2)) : "..."
|
|
57557
|
+
);
|
|
57566
57558
|
};
|
|
57567
57559
|
|
|
57568
57560
|
// src/components/chat/message/LinkedChatMessage.tsx
|
|
@@ -57618,7 +57610,7 @@ var LinkedChatMessage = ({ message, parentIndex, index, plugins, models }) => {
|
|
|
57618
57610
|
const model = useMemo2(() => {
|
|
57619
57611
|
return models?.find((m) => m.modelId === message.modelId);
|
|
57620
57612
|
}, [models, message.modelId]);
|
|
57621
|
-
return /* @__PURE__ */ React6.createElement(Carousel2.Slide, { key: message.id, className:
|
|
57613
|
+
return /* @__PURE__ */ React6.createElement(Carousel2.Slide, { key: message.id, className: "katechat-message-linked" }, /* @__PURE__ */ React6.createElement(Group2, { align: "center" }, /* @__PURE__ */ React6.createElement(Avatar2, { radius: "xl", size: "md" }, model ? /* @__PURE__ */ React6.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ React6.createElement(IconRobot2, null)), /* @__PURE__ */ React6.createElement(Group2, { gap: "xs" }, /* @__PURE__ */ React6.createElement(Text2, { size: "sm", fw: 500, c: "teal" }, message.modelName), message.status && /* @__PURE__ */ React6.createElement(MessageStatus, { status: message.status }), message.statusInfo && /* @__PURE__ */ React6.createElement(Text2, { size: "xs", c: "dimmed" }, message.statusInfo))), /* @__PURE__ */ React6.createElement("div", { className: "katechat-message-content" }, message.html ? message.html.map((part, index2) => /* @__PURE__ */ React6.createElement("div", { key: index2, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ React6.createElement("div", null, message.content), /* @__PURE__ */ React6.createElement("div", { className: "katechat-message-footer" }, /* @__PURE__ */ React6.createElement(CopyMessageButton, { messageId: message.id, messageIndex: parentIndex, linkedMessageIndex: index }), plugins)));
|
|
57622
57614
|
};
|
|
57623
57615
|
LinkedChatMessage.displayName = "LinkedChatMessage";
|
|
57624
57616
|
|
|
@@ -58142,7 +58134,7 @@ var ChatMessagesList = ({
|
|
|
58142
58134
|
|
|
58143
58135
|
// src/components/chat/ChatMessagesContainer.tsx
|
|
58144
58136
|
import React12, { useCallback as useCallback6, useEffect as useEffect7, useImperativeHandle, useRef as useRef6, useState as useState4 } from "react";
|
|
58145
|
-
import { Group as
|
|
58137
|
+
import { Group as Group6, Loader as Loader2 } from "@mantine/core";
|
|
58146
58138
|
import { IconCircleChevronDown } from "@tabler/icons-react";
|
|
58147
58139
|
|
|
58148
58140
|
// src/hooks/useIntersectionObserver.ts
|
|
@@ -58208,18 +58200,6 @@ var useTheme = () => {
|
|
|
58208
58200
|
return context;
|
|
58209
58201
|
};
|
|
58210
58202
|
|
|
58211
|
-
// src/components/chat/ChatMessagesContainer.module.scss
|
|
58212
|
-
var ChatMessagesContainer_module_default = {
|
|
58213
|
-
"messagesContainer": "_messagesContainer_b8239_2",
|
|
58214
|
-
"messagesList": "_messagesList_b8239_19",
|
|
58215
|
-
"empty": "_empty_b8239_23",
|
|
58216
|
-
"scroller": "_scroller_b8239_12",
|
|
58217
|
-
"loadCompleted": "_loadCompleted_b8239_31",
|
|
58218
|
-
"anchorContainer": "_anchorContainer_b8239_41",
|
|
58219
|
-
"visible": "_visible_b8239_55",
|
|
58220
|
-
"anchor": "_anchor_b8239_41"
|
|
58221
|
-
};
|
|
58222
|
-
|
|
58223
58203
|
// src/components/chat/ChatMessagesContainer.tsx
|
|
58224
58204
|
var ChatMessagesContainer = React12.forwardRef(
|
|
58225
58205
|
({
|
|
@@ -58292,12 +58272,12 @@ var ChatMessagesContainer = React12.forwardRef(
|
|
|
58292
58272
|
"div",
|
|
58293
58273
|
{
|
|
58294
58274
|
className: [
|
|
58295
|
-
|
|
58296
|
-
loadCompleted ?
|
|
58297
|
-
loadCompleted && messages?.length === 0 ?
|
|
58275
|
+
"katechat-messages-container",
|
|
58276
|
+
loadCompleted ? "container--load-completed" : "",
|
|
58277
|
+
loadCompleted && messages?.length === 0 ? "container--empty" : ""
|
|
58298
58278
|
].join(" ")
|
|
58299
58279
|
},
|
|
58300
|
-
/* @__PURE__ */ React12.createElement("div", { className:
|
|
58280
|
+
/* @__PURE__ */ React12.createElement("div", { className: "katechat-messages-container-scroller", ref: messagesContainerRef, onScroll: handleScroll }, /* @__PURE__ */ React12.createElement("div", { ref: firstMessageRef }), loading && /* @__PURE__ */ React12.createElement(Group6, { justify: "center", align: "center", py: "xl" }, /* @__PURE__ */ React12.createElement(Loader2, null)), /* @__PURE__ */ React12.createElement("div", { className: "katechat-messages-list" }, messages && /* @__PURE__ */ React12.createElement(
|
|
58301
58281
|
ChatMessagesList,
|
|
58302
58282
|
{
|
|
58303
58283
|
messages,
|
|
@@ -58308,7 +58288,7 @@ var ChatMessagesContainer = React12.forwardRef(
|
|
|
58308
58288
|
detailsPlugins
|
|
58309
58289
|
}
|
|
58310
58290
|
))),
|
|
58311
|
-
/* @__PURE__ */ React12.createElement("div", { className: [
|
|
58291
|
+
/* @__PURE__ */ React12.createElement("div", { className: ["katechat-anchor-container", showAnchorButton ? "container--visible" : ""].join(" ") }, /* @__PURE__ */ React12.createElement("div", { className: "katechat-anchor" }, /* @__PURE__ */ React12.createElement(IconCircleChevronDown, { size: 32, color: "teal", onClick: anchorHandleClick })))
|
|
58312
58292
|
);
|
|
58313
58293
|
}
|
|
58314
58294
|
);
|