@katechat/ui 1.0.5 → 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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["esbuild-sass-plugin:css-chunk:src/components/chat/message/ChatMessage.module.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/message/ChatMessage.Carousel.module.scss", "esbuild-sass-plugin:css-chunk:src/controls/FileDropzone/FileDropzone.module.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/input/ChatInput.module.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/ChatMessagesContainer.module.scss"],
4
- "sourcesContent": ["._messageContainer_xklwx_1 {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: row;\n}\n._messageContainer_xklwx_1 ._main_xklwx_7,\n._messageContainer_xklwx_1 ._linked_xklwx_8 {\n padding: var(--mantine-spacing-md);\n flex-grow: 1;\n width: 50%;\n display: flex;\n flex-direction: column;\n border-radius: var(--mantine-radius-md);\n}\n._messageContainer_xklwx_1 ._linked_xklwx_8 {\n margin: 0 var(--mantine-spacing-md);\n}\n._messageContainer_xklwx_1 ._linkedToggle_xklwx_19 {\n display: none;\n}\n\n@media (max-width: 1280px) {\n ._messageContainer_xklwx_1 {\n flex-direction: column;\n position: relative;\n }\n ._messageContainer_xklwx_1 ._linkedToggle_xklwx_19 {\n position: absolute;\n right: 0.5rem;\n top: 0.5rem;\n display: flex;\n z-index: 5;\n }\n ._messageContainer_xklwx_1 ._main_xklwx_7,\n ._messageContainer_xklwx_1 ._linked_xklwx_8 {\n width: 100%;\n margin: 0;\n border-radius: 0;\n }\n ._messageContainer_xklwx_1 ._hidden_xklwx_41 {\n display: none;\n }\n}\n._linkedMessageContainer_xklwx_45 {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: column;\n}\n\n._message_xklwx_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n padding: var(--mb-padding, var(--mantine-spacing-sm));\n border-radius: var(--mantine-radius-md);\n margin-top: var(--mantine-spacing-xs);\n}\n._message_xklwx_1 p {\n margin-block-start: 0;\n margin-block-end: 0;\n}\n._message_xklwx_1 blockquote {\n padding: 0 var(--mb-padding, var(--mantine-spacing-sm));\n border-left: 0.5rem solid var(--mantine-color-default-border);\n margin: 0.25rem 0;\n}\n._message_xklwx_1 hr {\n width: 100%;\n margin: 0.5rem 0 0.25rem;\n border: none;\n border-top: 1px solid var(--mantine-color-default-border);\n}\n._message_xklwx_1 img {\n max-width: 256px;\n max-height: 256px;\n align-self: center;\n height: auto;\n margin: 0 auto;\n cursor: pointer;\n}\n._message_xklwx_1._preview_xklwx_83 {\n height: 200px;\n padding: var(--mb-padding, var(--mantine-spacing-sm)) 0 0 0;\n font-size: 80%;\n}\n._message_xklwx_1._preview_xklwx_83 img {\n max-width: 50%;\n height: auto;\n}\n._message_xklwx_1 ._detailsBlock_xklwx_92 {\n margin-top: 1rem;\n font-size: 80%;\n display: flex;\n flex-direction: column;\n gap: 0;\n}\n._message_xklwx_1 ._detailsBlock_xklwx_92 ol,\n._message_xklwx_1 ._detailsBlock_xklwx_92 ul {\n margin: 0.25rem 0;\n padding: 0 0 0 1rem;\n}\n._message_xklwx_1 ._detailsBlock_xklwx_92 .message-details-header {\n margin-bottom: var(--mantine-spacing-md);\n margin-left: 1rem;\n}\n._message_xklwx_1 ._detailsBlock_xklwx_92 .message-details-header svg {\n color: var(--mantine-color-gray-7);\n}\n._message_xklwx_1 ._detailsBlock_xklwx_92 .message-details-content {\n padding-left: var(--mantine-spacing-md);\n border-left: 1px solid var(--mantine-color-gray-7);\n margin-left: 1.5rem;\n}\n._message_xklwx_1 table {\n margin-top: var(--mantine-spacing-md);\n margin-bottom: var(--mantine-spacing-md);\n border-spacing: 0;\n}\n._message_xklwx_1 table td,\n._message_xklwx_1 table th {\n padding: var(--mb-padding, var(--mantine-spacing-xs));\n margin: 0;\n border-top: 1px solid var(--mantine-color-default-border);\n border-left: 1px solid var(--mantine-color-default-border);\n}\n._message_xklwx_1 table tr td:last-child,\n._message_xklwx_1 table tr th:last-child {\n border-right: 1px solid var(--mantine-color-default-border);\n}\n._message_xklwx_1 table tr:last-child td {\n border-bottom: 1px solid var(--mantine-color-default-border);\n}\n._message_xklwx_1 table tr:nth-child(2n) {\n background-color: var(--mantine-color-dark-5);\n}\n._message_xklwx_1 table thead tr {\n background-color: var(--mantine-color-dark-5);\n}\n._message_xklwx_1 table thead tr:first-child th:first-child {\n border-top-left-radius: var(--mantine-radius-md);\n}\n._message_xklwx_1 table thead tr:first-child th:last-child {\n border-top-right-radius: var(--mantine-radius-md);\n}\n._message_xklwx_1 table tr:last-child td:first-child {\n border-bottom-left-radius: var(--mantine-radius-md);\n}\n._message_xklwx_1 table tr:last-child td:last-child {\n border-bottom-right-radius: var(--mantine-radius-md);\n}\n._message_xklwx_1 pre {\n margin: 0.5rem 0;\n padding: 1em;\n clip-path: none;\n font-size: 90%;\n transition: all var(--theme-default-time) ease;\n font-family: var(--monospace-font-family);\n overflow-x: auto;\n}\n._message_xklwx_1 .code-header {\n font-size: 0.875rem;\n margin-top: 0.5rem;\n padding: 0.25rem 1rem 0.25rem 0.5rem;\n border-top-right-radius: 0.25em;\n border-top-left-radius: 0.25em;\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-direction: row;\n white-space: normal;\n gap: 0.5rem;\n}\n._message_xklwx_1 .code-header .title {\n width: fit-content;\n font-weight: 700;\n display: flex;\n align-items: center;\n flex-direction: row;\n cursor: pointer;\n user-select: none;\n min-height: 2rem;\n}\n._message_xklwx_1 .code-header .title .header-toggle {\n margin-right: 0.5rem;\n display: none;\n display: inline-block;\n transform: rotateZ(90deg);\n transition: transform var(--theme-default-time) ease;\n}\n._message_xklwx_1 .code-header .code-header-actions {\n align-content: flex-end;\n}\n._message_xklwx_1 .code-header .action-btn {\n padding: 0.1rem;\n line-height: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n width: fit-content;\n gap: 0.25rem;\n cursor: pointer;\n}\n._message_xklwx_1 .code-header.collapsed {\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n margin-bottom: 0;\n}\n._message_xklwx_1 .code-header.collapsed .title .header-toggle {\n transform: translateY(0.2rem) rotateZ(0deg);\n}\n._message_xklwx_1 .code-header.collapsed .code-copy-btn {\n display: none;\n}\n._message_xklwx_1 .code-block {\n flex-grow: 1;\n overflow-x: auto;\n margin-top: 0;\n margin-bottom: 1rem;\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n transition: clip-path 0.5s ease, height 0.5s ease, opacity 0.5s ease;\n}\n._message_xklwx_1 .code-block pre {\n margin: 0;\n white-space: pre;\n}\n._message_xklwx_1 .code-block.collapsed {\n clip-path: inset(0 0 100% 0);\n overflow-y: hidden;\n height: 0;\n opacity: 0;\n}\n._message_xklwx_1 .code-data {\n display: none;\n}\n._message_xklwx_1 .code-footer {\n font-size: 90%;\n display: flex;\n align-items: flex-start;\n margin-bottom: 0.7rem;\n}\n._message_xklwx_1 .code-footer.collapsed {\n display: none;\n}\n._message_xklwx_1 .katex-html {\n display: inline-block;\n margin: 0.5rem 0.5rem 0 0;\n}\n\n._messageFooter_xklwx_252 {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 0 0.25rem;\n opacity: 0.5;\n transition: opacity var(--theme-default-time) ease;\n}\n._messageFooter_xklwx_252 .check-icon {\n display: none;\n}\n._messageFooter_xklwx_252:hover {\n opacity: 1;\n}\n\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 .code-block,\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 pre {\n background-color: var(--mantine-color-dark-6);\n}\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 .code-header {\n background-color: var(--mantine-color-dark-6);\n}\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 .code-header:hover {\n background-color: var(--mantine-color-dark-5);\n}\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 ._message_xklwx_1._user_xklwx_278 {\n background-color: var(--mantine-color-dark-9);\n}\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 ._message_xklwx_1._error_xklwx_281 {\n color: var(--mantine-color-yellow-9);\n}\n[data-mantine-color-scheme=dark] ._messageContainer_xklwx_1 ._linked_xklwx_8 {\n background-color: var(--mantine-color-dark-8);\n}\n\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 .code-block,\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 pre {\n background-color: var(--mantine-color-gray-3);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 .code-header {\n background-color: var(--mantine-color-gray-3);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 .code-header:hover {\n background-color: var(--mantine-color-gray-4);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 ._message_xklwx_1._user_xklwx_278 {\n background-color: var(--mantine-color-blue-0);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 ._message_xklwx_1._error_xklwx_281 {\n color: var(--mantine-color-red-5);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 ._linked_xklwx_8 {\n background-color: var(--mantine-color-gray-3);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 tr:nth-child(2n) {\n background-color: var(--mantine-color-blue-1);\n}\n[data-mantine-color-scheme=light] ._messageContainer_xklwx_1 thead tr {\n background-color: var(--mantine-color-blue-1);\n}", "._controls_foysq_1:where([data-orientation=horizontal]) {\n bottom: auto !important;\n top: 0.5rem !important;\n left: calc(50% - 5rem) !important;\n width: 10rem !important;\n padding: 0 !important;\n}", "._dropzone_1kjrg_1 {\n cursor: pointer;\n}\n._dropzone_1kjrg_1:hover {\n color: var(--mantine-color-brand-6);\n}\n\n._dragging_1kjrg_8 {\n color: var(--mantine-color-brand-6);\n}\n\n._disabled_1kjrg_12 {\n color: var(--mantine-color-gray-4);\n cursor: not-allowed;\n}", "[data-mantine-color-scheme=light] ._chatControlsContainer_olrml_1 ._chatControls_olrml_1 {\n border: 1px solid var(--app-shell-border-color);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_olrml_1 ._headerRow_olrml_4 {\n background-color: var(--mantine-color-gray-4);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_olrml_1 ._chatInputGroup_olrml_7 ._chatInput_olrml_7 textarea {\n border: 1px solid var(--app-shell-border-color);\n}\n\n._chatControlsContainer_olrml_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: center;\n}\n._chatControlsContainer_olrml_1._hidden_olrml_17 {\n display: none;\n}\n._chatControlsContainer_olrml_1._fullHeight_olrml_20 {\n flex-grow: 1;\n padding-bottom: 15rem;\n}\n._chatControlsContainer_olrml_1 ._chatControls_olrml_1 {\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-default);\n background-color: var(--app-shell-border-color);\n}\n._chatControlsContainer_olrml_1 ._headerRow_olrml_4 {\n padding: 0.33rem;\n border-top-left-radius: var(--mantine-radius-default);\n border-top-right-radius: var(--mantine-radius-default);\n}\n\n._chatInputContainer_olrml_35 {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0.5rem;\n gap: 0.5rem;\n background-color: var(--mantine-color-body);\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_olrml_35 ._documentsInput_olrml_44 {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n align-items: stretch;\n}\n._chatInputContainer_olrml_35._columned_olrml_50 {\n flex-direction: column;\n align-items: flex-start;\n justify-items: stretch;\n}\n._chatInputContainer_olrml_35._columned_olrml_50 ._chatInputGroup_olrml_7 {\n align-self: stretch;\n}\n._chatInputContainer_olrml_35 ._filesList_olrml_58 {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_olrml_35 ._filesList_olrml_58 ._previewImage_olrml_63 {\n position: relative;\n background-color: var(--input-bg);\n height: 64px;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_olrml_35 ._filesList_olrml_58 ._previewImage_olrml_63 img {\n max-width: 64px;\n max-height: 64px;\n object-fit: cover;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_olrml_35 ._filesList_olrml_58 ._previewImage_olrml_63 ._removeButton_olrml_75 {\n position: absolute;\n top: 0.1rem;\n right: 0.1rem;\n border-radius: 50%;\n}\n._chatInputContainer_olrml_35 ._chatInputGroup_olrml_7 {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_olrml_35 ._chatInputGroup_olrml_7 ._chatInput_olrml_7 {\n flex-grow: 1;\n}\n._chatInputContainer_olrml_35 ._chatInputGroup_olrml_7 ._chatInput_olrml_7 textarea {\n border: 1px solid var(--app-shell-border-color);\n}", "@import \"@mantine/core/styles.css\";\n._messagesContainer_b2ndj_2 {\n flex-grow: 1;\n position: relative;\n display: none;\n flex-direction: column;\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-md);\n /* \n * Two-level scrolling architecture:\n * The parent (.messagesContainer) uses overflow-y: hidden to prevent unwanted scrollbars and control the visible area.\n * The child (.scroller) uses overflow-y: scroll to enable vertical scrolling for the message list.\n * This pattern is intentional; do not merge the scroll behavior into the parent.\n */\n overflow-y: hidden;\n opacity: 1;\n transition: all 0.3s ease;\n}\n._messagesContainer_b2ndj_2 ._messagesList_b2ndj_19 {\n opacity: 0;\n margin-bottom: 1rem;\n}\n._messagesContainer_b2ndj_2._empty_b2ndj_23 {\n flex-grow: 0;\n opacity: 0;\n}\n._messagesContainer_b2ndj_2 ._scroller_b2ndj_12 {\n overflow-y: scroll;\n flex-grow: 1;\n}\n._messagesContainer_b2ndj_2._loadCompleted_b2ndj_31 {\n display: flex;\n}\n._messagesContainer_b2ndj_2._loadCompleted_b2ndj_31 ._scroller_b2ndj_12 {\n scroll-behavior: smooth;\n}\n._messagesContainer_b2ndj_2._loadCompleted_b2ndj_31 ._messagesList_b2ndj_19 {\n opacity: 1;\n}\n\n._anchorContainer_b2ndj_41 {\n position: absolute;\n width: 40px;\n left: calc(50% - 40px);\n bottom: 0;\n height: 48px;\n z-index: 2;\n display: flex;\n flex-direction: column;\n justify-items: center;\n align-items: center;\n opacity: 0;\n transition: all 0.5s ease;\n}\n._anchorContainer_b2ndj_41._visible_b2ndj_55 {\n opacity: 1;\n}\n._anchorContainer_b2ndj_41 ._anchor_b2ndj_41 {\n background-color: var(--mantine-color-body);\n border-radius: 50%;\n height: 32px;\n width: 32px;\n opacity: 0.75;\n}\n._anchorContainer_b2ndj_41 ._anchor_b2ndj_41:hover {\n opacity: 1;\n}"],
5
- "mappings": "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",
3
+ "sources": ["../../src/components/chat/ChatMessage.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/message/ChatMessage.Carousel.module.scss", "esbuild-sass-plugin:css-chunk:src/controls/FileDropzone/FileDropzone.module.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/input/ChatInput.module.scss", "../../src/components/ChatMessagesContainer.scss"],
4
+ "sourcesContent": [".katechat-message {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: row;\n\n .katechat-message-main,\n .katechat-message-linked {\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);\n flex-grow: 1;\n width: 50%;\n display: flex;\n flex-direction: column;\n border-radius: var(--mantine-radius-md);\n }\n\n .katechat-message-linked {\n margin: 0 var(--mantine-spacing-md);\n }\n\n .katechat-message-linked-toggle {\n display: none;\n }\n}\n\n@media (max-width: 1280px) {\n .katechat-message {\n flex-direction: column;\n position: relative;\n\n .katechat-message-linked-toggle {\n position: absolute;\n right: 0.5rem;\n top: 0.5rem;\n display: flex;\n z-index: 5;\n }\n\n .katechat-message-main,\n .katechat-message-linked {\n width: 100%;\n margin: 0;\n border-radius: 0;\n }\n\n .hidden {\n display: none;\n }\n }\n}\n\n.katechat-message-linked {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.katechat-message-content {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-radius: var(--mantine-radius-md);\n\n margin-top: var(--mantine-spacing-md);\n\n p {\n margin-block-start: 0;\n margin-block-end: 0;\n }\n\n blockquote {\n padding: 0 var(--mb-padding, var(--mantine-spacing-sm));\n border-left: 0.5rem solid var(--mantine-color-default-border);\n margin: 0.25rem 0;\n }\n\n hr {\n width: 100%;\n margin: 0.5rem 0 0.25rem;\n border: none;\n border-top: 1px solid var(--mantine-color-default-border);\n }\n\n ol,\n ul {\n margin: 0.25rem 0 0.25rem 0.5rem;\n padding: 0 0 0 1.5rem;\n }\n\n img {\n max-width: 256px;\n max-height: 256px;\n align-self: center;\n height: auto;\n margin: 0.5rem;\n vertical-align: top;\n cursor: pointer;\n }\n\n &.katechat-message-preview {\n height: 200px;\n padding: var(--mb-padding, var(--mantine-spacing-sm)) 0 0 0;\n font-size: 80%;\n\n img {\n max-width: 50%;\n height: auto;\n }\n }\n\n .katechat-message-content-details {\n margin-top: 1rem;\n font-size: 80%;\n display: flex;\n flex-direction: column;\n gap: 0;\n\n ol,\n ul {\n margin: 0.25rem 0;\n padding: 0 0 0 1rem;\n }\n\n .message-details-header {\n margin-bottom: var(--mantine-spacing-md);\n margin-left: 1rem;\n\n svg {\n color: var(--mantine-color-gray-7);\n }\n }\n\n .message-details-content {\n padding-left: var(--mantine-spacing-md);\n border-left: 1px solid var(--mantine-color-gray-7);\n margin-left: 1.5rem;\n }\n }\n\n table {\n margin-top: var(--mantine-spacing-md);\n margin-bottom: var(--mantine-spacing-md);\n border-spacing: 0;\n\n td,\n th {\n padding: var(--mb-padding, var(--mantine-spacing-xs));\n margin: 0;\n border-top: 1px solid var(--mantine-color-default-border);\n border-left: 1px solid var(--mantine-color-default-border);\n }\n\n tr td:last-child,\n tr th:last-child {\n border-right: 1px solid var(--mantine-color-default-border);\n }\n tr:last-child td {\n border-bottom: 1px solid var(--mantine-color-default-border);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-dark-5);\n }\n\n thead {\n tr {\n background-color: var(--mantine-color-dark-5);\n }\n\n tr:first-child th:first-child {\n border-top-left-radius: var(--mantine-radius-md);\n }\n tr:first-child th:last-child {\n border-top-right-radius: var(--mantine-radius-md);\n }\n }\n\n tr:last-child td:first-child {\n border-bottom-left-radius: var(--mantine-radius-md);\n }\n tr:last-child td:last-child {\n border-bottom-right-radius: var(--mantine-radius-md);\n }\n }\n\n pre {\n margin: 0.5rem 0;\n padding: 1em;\n clip-path: none;\n font-size: 90%;\n transition: all var(--theme-default-time) ease;\n font-family: var(--monospace-font-family);\n overflow-x: auto;\n }\n\n .code-header {\n font-size: 0.875rem;\n margin-top: 0.5rem;\n padding: 0.25rem 1rem 0.25rem 0.5rem;\n border-top-right-radius: 0.25em;\n border-top-left-radius: 0.25em;\n\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-direction: row;\n white-space: normal;\n gap: 0.5rem;\n\n .title {\n width: fit-content;\n font-weight: 700;\n display: flex;\n align-items: center;\n flex-direction: row;\n cursor: pointer;\n user-select: none;\n min-height: 2rem;\n\n .header-toggle {\n margin-right: 0.5rem;\n display: none;\n display: inline-block;\n transform: rotateZ(90deg);\n transition: transform var(--theme-default-time) ease;\n }\n }\n\n .code-header-actions {\n align-content: flex-end;\n }\n\n .action-btn {\n padding: 0.1rem;\n line-height: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n width: fit-content;\n gap: 0.25rem;\n cursor: pointer;\n }\n\n &.collapsed {\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n margin-bottom: 0;\n .title {\n .header-toggle {\n transform: translateY(0.2rem) rotateZ(0deg);\n }\n }\n\n .code-copy-btn {\n display: none;\n }\n }\n }\n\n .code-block {\n pre {\n margin: 0;\n white-space: pre;\n }\n\n flex-grow: 1;\n overflow-x: auto;\n margin-top: 0;\n margin-bottom: 1rem;\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n transition:\n clip-path 0.5s ease,\n height 0.5s ease,\n opacity 0.5s ease;\n\n &.collapsed {\n clip-path: inset(0 0 100% 0);\n overflow-y: hidden;\n height: 0;\n opacity: 0;\n }\n }\n\n .code-data {\n display: none;\n }\n\n .code-footer {\n font-size: 90%;\n display: flex;\n align-items: flex-start;\n margin-bottom: 0.7rem;\n\n &.collapsed {\n display: none;\n }\n }\n\n .katex-html {\n display: inline-block;\n margin: 0.5rem 0.5rem 0 0;\n }\n}\n\n.katechat-message-footer {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 0 0;\n opacity: 0.5;\n transition: opacity var(--theme-default-time) ease;\n\n .check-icon {\n display: none;\n }\n\n &:hover {\n opacity: 1;\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-dark-6);\n }\n\n .code-header {\n background-color: var(--mantine-color-dark-6);\n &:hover {\n background-color: var(--mantine-color-dark-5);\n }\n }\n\n &.katechat-message__user {\n background-color: var(--mantine-color-dark-8);\n border-top: 1px solid var(--mantine-color-dark-6);\n border-bottom: 1px solid var(--mantine-color-dark-6);\n }\n\n &.katechat-message__error {\n .katechat-message-content {\n color: var(--mantine-color-yellow-9);\n }\n }\n\n .katechat-message-linked {\n background-color: var(--mantine-color-dark-8);\n }\n }\n}\n\n[data-mantine-color-scheme=\"light\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-gray-3);\n }\n\n .code-header {\n background-color: var(--mantine-color-gray-3);\n &:hover {\n background-color: var(--mantine-color-gray-4);\n }\n }\n\n &.katechat-message__user {\n background-color: var(--mantine-color-blue-0);\n border-top: 1px solid var(--mantine-color-blue-1);\n border-bottom: 1px solid var(--mantine-color-blue-1);\n }\n\n &.katechat-message__error {\n .katechat-message-content {\n color: var(--mantine-color-red-5);\n }\n }\n\n .katechat-message-linked {\n background-color: var(--mantine-color-gray-3);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-blue-1);\n }\n\n thead tr {\n background-color: var(--mantine-color-blue-1);\n }\n }\n}\n", "._controls_pp1ia_1:where([data-orientation=horizontal]) {\n bottom: auto !important;\n top: 0.5rem !important;\n left: calc(50% - 5rem) !important;\n width: 10rem !important;\n padding: 0 !important;\n}", "._dropzone_16zca_1 {\n cursor: pointer;\n}\n._dropzone_16zca_1:hover {\n color: var(--mantine-color-brand-6);\n}\n\n._dragging_16zca_8 {\n color: var(--mantine-color-brand-6);\n}\n\n._disabled_16zca_12 {\n color: var(--mantine-color-gray-4);\n cursor: not-allowed;\n}", "[data-mantine-color-scheme=light] ._chatControlsContainer_1cjl9_1 ._chatControls_1cjl9_1 {\n border: 1px solid var(--app-shell-border-color);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_1cjl9_1 ._headerRow_1cjl9_4 {\n background-color: var(--mantine-color-gray-4);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_1cjl9_1 ._chatInputGroup_1cjl9_7 ._chatInput_1cjl9_7 textarea {\n border: 1px solid var(--app-shell-border-color);\n}\n\n._chatControlsContainer_1cjl9_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: center;\n}\n._chatControlsContainer_1cjl9_1._hidden_1cjl9_17 {\n display: none;\n}\n._chatControlsContainer_1cjl9_1._promptMode_1cjl9_20 {\n flex-grow: 1;\n padding-bottom: 15rem;\n}\n._chatControlsContainer_1cjl9_1 ._chatControls_1cjl9_1 {\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-default);\n background-color: var(--app-shell-border-color);\n}\n._chatControlsContainer_1cjl9_1 ._headerRow_1cjl9_4 {\n padding: 0.33rem;\n border-top-left-radius: var(--mantine-radius-default);\n border-top-right-radius: var(--mantine-radius-default);\n}\n\n._chatInputContainer_1cjl9_35 {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0.5rem;\n gap: 0.5rem;\n background-color: var(--mantine-color-body);\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_1cjl9_35 ._documentsInput_1cjl9_44 {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n align-items: stretch;\n}\n._chatInputContainer_1cjl9_35._columned_1cjl9_50 {\n flex-direction: column;\n align-items: flex-start;\n justify-items: stretch;\n}\n._chatInputContainer_1cjl9_35._columned_1cjl9_50 ._chatInputGroup_1cjl9_7 {\n align-self: stretch;\n}\n._chatInputContainer_1cjl9_35 ._filesList_1cjl9_58 {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_1cjl9_35 ._filesList_1cjl9_58 ._previewImage_1cjl9_63 {\n position: relative;\n background-color: var(--input-bg);\n height: 64px;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_1cjl9_35 ._filesList_1cjl9_58 ._previewImage_1cjl9_63 img {\n max-width: 64px;\n max-height: 64px;\n object-fit: cover;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_1cjl9_35 ._filesList_1cjl9_58 ._previewImage_1cjl9_63 ._removeButton_1cjl9_75 {\n position: absolute;\n top: 0.1rem;\n right: 0.1rem;\n border-radius: 50%;\n}\n._chatInputContainer_1cjl9_35 ._chatInputGroup_1cjl9_7 {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_1cjl9_35 ._chatInputGroup_1cjl9_7 ._chatInput_1cjl9_7 {\n flex-grow: 1;\n}\n._chatInputContainer_1cjl9_35 ._chatInputGroup_1cjl9_7 ._chatInput_1cjl9_7 textarea {\n border: 1px solid var(--app-shell-border-color);\n}", "@import \"@mantine/core/styles.css\";\n\n.katechat-messages-container {\n flex-grow: 1;\n position: relative;\n display: none;\n flex-direction: column;\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-md);\n /* \n * Two-level scrolling architecture:\n * The parent (.messagesContainer) uses overflow-y: hidden to prevent unwanted scrollbars and control the visible area.\n * The child (.scroller) uses overflow-y: scroll to enable vertical scrolling for the message list.\n * This pattern is intentional; do not merge the scroll behavior into the parent.\n */\n overflow-y: hidden;\n opacity: 1;\n transition: all 0.3s ease;\n\n .katechat-messages-list {\n opacity: 0;\n margin-bottom: 1rem;\n }\n\n &.container--empty {\n flex-grow: 0;\n opacity: 0;\n }\n\n .katechat-messages-container-scroller {\n overflow-y: scroll;\n flex-grow: 1;\n }\n\n &.container--load-completed {\n .scroller {\n scroll-behavior: smooth;\n }\n\n display: flex;\n\n .katechat-messages-list {\n opacity: 1;\n }\n }\n\n .katechat-message:first-child {\n border-top: none;\n }\n .katechat-message:last-child {\n border-bottom: none;\n }\n}\n\n.katechat-anchor-container {\n position: absolute;\n width: 40px;\n left: calc(50% - 40px);\n bottom: 0;\n height: 48px;\n z-index: 2;\n display: flex;\n flex-direction: column;\n justify-items: center;\n align-items: center;\n opacity: 0;\n transition: all 0.5s ease;\n\n &.container--visible {\n opacity: 1;\n }\n\n .katechat-anchor {\n background-color: var(--mantine-color-body);\n border-radius: 50%;\n height: 32px;\n width: 32px;\n opacity: 0.75;\n cursor: pointer;\n\n &:hover {\n opacity: 1;\n }\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
package/dist/cjs/index.js CHANGED
@@ -57303,7 +57303,7 @@ __export(index_exports, {
57303
57303
  ThemeContext: () => ThemeContext,
57304
57304
  ThemeProvider: () => ThemeProvider,
57305
57305
  escapeHtml: () => escapeHtml,
57306
- normalizeMatJAX: () => normalizeMatJAX,
57306
+ normalizeMatJax: () => normalizeMatJax,
57307
57307
  parseChatMessages: () => parseChatMessages,
57308
57308
  parseMarkdown: () => parseMarkdown,
57309
57309
  useIntersectionObserver: () => useIntersectionObserver,
@@ -57407,25 +57407,9 @@ var CopyMessageButton = ({
57407
57407
  /* @__PURE__ */ import_react2.default.createElement(import_icons_react.IconCopy, null)
57408
57408
  )), /* @__PURE__ */ import_react2.default.createElement(import_core2.ActionIcon, { disabled: true, size: "sm", className: "check-icon" }, /* @__PURE__ */ import_react2.default.createElement(import_icons_react.IconCopyCheck, null)));
57409
57409
 
57410
- // src/components/chat/message/ChatMessage.module.scss
57411
- var ChatMessage_module_default = {
57412
- "messageContainer": "_messageContainer_xklwx_1",
57413
- "main": "_main_xklwx_7",
57414
- "linked": "_linked_xklwx_8",
57415
- "linkedToggle": "_linkedToggle_xklwx_19",
57416
- "hidden": "_hidden_xklwx_41",
57417
- "linkedMessageContainer": "_linkedMessageContainer_xklwx_45",
57418
- "message": "_message_xklwx_1",
57419
- "preview": "_preview_xklwx_83",
57420
- "detailsBlock": "_detailsBlock_xklwx_92",
57421
- "messageFooter": "_messageFooter_xklwx_252",
57422
- "user": "_user_xklwx_278",
57423
- "error": "_error_xklwx_281"
57424
- };
57425
-
57426
57410
  // src/components/chat/message/ChatMessage.Carousel.module.scss
57427
57411
  var ChatMessage_Carousel_module_default = {
57428
- "controls": "_controls_foysq_1"
57412
+ "controls": "_controls_pp1ia_1"
57429
57413
  };
57430
57414
 
57431
57415
  // src/components/chat/message/ChatMessage.tsx
@@ -57536,7 +57520,7 @@ var ChatMessage = (props) => {
57536
57520
  const mainMessage = (0, import_react3.useMemo)(() => {
57537
57521
  const plugins = pluginsLoader ? pluginsLoader(message) : null;
57538
57522
  const model = models?.find((m) => m.modelId === message?.modelId);
57539
- return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement(import_core3.Group, { align: "center" }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Avatar, { color: "gray", radius: "xl", size: "md", src: isUserMessage ? message?.user?.avatarUrl : void 0 }, isUserMessage ? /* @__PURE__ */ import_react3.default.createElement(import_icons_react2.IconUser, null) : model ? /* @__PURE__ */ import_react3.default.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ import_react3.default.createElement(import_icons_react2.IconRobot, null)), /* @__PURE__ */ import_react3.default.createElement(import_core3.Group, { gap: "xs" }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Text, { size: "sm", fw: 500, c: isUserMessage ? "blue" : "teal" }, username), /* @__PURE__ */ import_react3.default.createElement(import_core3.Text, { size: "xs", c: "dimmed" }, timestamp), status && /* @__PURE__ */ import_react3.default.createElement(MessageStatus, { status }), statusInfo && /* @__PURE__ */ import_react3.default.createElement(import_core3.Text, { size: "xs", c: "dimmed" }, statusInfo))), /* @__PURE__ */ import_react3.default.createElement("div", { className: `${ChatMessage_module_default.message} ${ChatMessage_module_default[role] || ""} ${streaming ? ChatMessage_module_default.streaming : ""}` }, streaming && !content && /* @__PURE__ */ import_react3.default.createElement(import_core3.Loader, { size: "md", mb: "md" }), html2 ? html2.map((part, index2) => /* @__PURE__ */ import_react3.default.createElement("div", { key: index2, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ import_react3.default.createElement("div", null, content), details && /* @__PURE__ */ import_react3.default.createElement(import_core3.Box, { mt: "md" }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Group, { mb: 5 }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Button, { onClick: toggleDetails, p: "xs", variant: "light", size: "xs" }, "Details")), /* @__PURE__ */ import_react3.default.createElement(import_core3.Collapse, { in: showDetails }, /* @__PURE__ */ import_react3.default.createElement("div", { className: ChatMessage_module_default.detailsBlock }, details))), /* @__PURE__ */ import_react3.default.createElement("div", { className: ChatMessage_module_default.messageFooter }, /* @__PURE__ */ import_react3.default.createElement(CopyMessageButton, { messageId: id, messageIndex: index }), plugins)));
57523
+ return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement(import_core3.Group, { align: "center" }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Avatar, { color: "gray", radius: "xl", size: "md", src: isUserMessage ? message?.user?.avatarUrl : void 0 }, isUserMessage ? /* @__PURE__ */ import_react3.default.createElement(import_icons_react2.IconUser, null) : model ? /* @__PURE__ */ import_react3.default.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ import_react3.default.createElement(import_icons_react2.IconRobot, null)), /* @__PURE__ */ import_react3.default.createElement(import_core3.Group, { gap: "xs" }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Text, { size: "sm", fw: 500, c: isUserMessage ? "blue" : "teal" }, username), /* @__PURE__ */ import_react3.default.createElement(import_core3.Text, { size: "xs", c: "dimmed" }, timestamp), status && /* @__PURE__ */ import_react3.default.createElement(MessageStatus, { status }), statusInfo && /* @__PURE__ */ import_react3.default.createElement(import_core3.Text, { size: "xs", c: "dimmed" }, statusInfo))), /* @__PURE__ */ import_react3.default.createElement("div", { className: "katechat-message-content" }, streaming && !content && /* @__PURE__ */ import_react3.default.createElement(import_core3.Loader, { size: "md", mb: "md" }), html2 ? html2.map((part, index2) => /* @__PURE__ */ import_react3.default.createElement("div", { key: index2, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ import_react3.default.createElement("div", null, content), details && /* @__PURE__ */ import_react3.default.createElement(import_core3.Box, { mt: "md" }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Group, { mb: 5 }, /* @__PURE__ */ import_react3.default.createElement(import_core3.Button, { onClick: toggleDetails, p: "xs", variant: "light", size: "xs" }, "Details")), /* @__PURE__ */ import_react3.default.createElement(import_core3.Collapse, { in: showDetails }, /* @__PURE__ */ import_react3.default.createElement("div", { className: "katechat-message-content-details" }, details))), /* @__PURE__ */ import_react3.default.createElement("div", { className: "katechat-message-footer" }, /* @__PURE__ */ import_react3.default.createElement(CopyMessageButton, { messageId: id, messageIndex: index }), plugins)));
57540
57524
  }, [
57541
57525
  role,
57542
57526
  username,
@@ -57579,9 +57563,9 @@ var ChatMessage = (props) => {
57579
57563
  );
57580
57564
  }, [linkedMessages, models, pluginsLoader, index]);
57581
57565
  if (!linkedMessagesCmp) {
57582
- return /* @__PURE__ */ import_react3.default.createElement("div", { className: ChatMessage_module_default.messageContainer, ref: componentRef }, /* @__PURE__ */ import_react3.default.createElement("div", { className: ChatMessage_module_default.main }, mainMessage));
57566
+ return /* @__PURE__ */ import_react3.default.createElement("div", { className: ["katechat-message", `katechat-message__${role || ""}`].join(" "), ref: componentRef }, /* @__PURE__ */ import_react3.default.createElement("div", { className: "katechat-message-main" }, mainMessage));
57583
57567
  }
57584
- return /* @__PURE__ */ import_react3.default.createElement("div", { className: ChatMessage_module_default.messageContainer, ref: componentRef }, /* @__PURE__ */ import_react3.default.createElement("div", { className: ChatMessage_module_default.linkedToggle }, /* @__PURE__ */ import_react3.default.createElement(
57568
+ return /* @__PURE__ */ import_react3.default.createElement("div", { className: ["katechat-message", `katechat-message__${role || ""}`].join(" "), ref: componentRef }, /* @__PURE__ */ import_react3.default.createElement("div", { className: "katechat-message-linked-toggle" }, /* @__PURE__ */ import_react3.default.createElement(
57585
57569
  import_core3.Switch,
57586
57570
  {
57587
57571
  checked: showMainMessage,
@@ -57589,7 +57573,7 @@ var ChatMessage = (props) => {
57589
57573
  label: showMainMessage ? "Main" : "Others",
57590
57574
  size: "sm"
57591
57575
  }
57592
- )), /* @__PURE__ */ import_react3.default.createElement("div", { className: [ChatMessage_module_default.main, showMainMessage ? "" : ChatMessage_module_default.hidden].join(" ") }, mainMessage), /* @__PURE__ */ import_react3.default.createElement("div", { className: [ChatMessage_module_default.linked, showMainMessage ? ChatMessage_module_default.hidden : ""].join(" ") }, linkedMessagesCmp));
57576
+ )), /* @__PURE__ */ import_react3.default.createElement("div", { className: ["katechat-message-main", showMainMessage ? "" : "hidden"].join(" ") }, mainMessage), /* @__PURE__ */ import_react3.default.createElement("div", { className: ["katechat-message-linked", showMainMessage ? "hidden" : ""].join(" ") }, linkedMessagesCmp));
57593
57577
  };
57594
57578
  ChatMessage.displayName = "ChatMessage";
57595
57579
 
@@ -57597,7 +57581,15 @@ ChatMessage.displayName = "ChatMessage";
57597
57581
  var import_react4 = __toESM(require("react"), 1);
57598
57582
  var import_core5 = require("@mantine/core");
57599
57583
  var ChatMessagePreview = ({ html: html2, text: text2 }) => {
57600
- return /* @__PURE__ */ import_react4.default.createElement(import_core5.ScrollArea, { type: "hover", offsetScrollbars: true, className: [ChatMessage_module_default.message, ChatMessage_module_default.preview].join(" ") }, text2 ? /* @__PURE__ */ import_react4.default.createElement(import_react4.default.Fragment, null, html2 ? html2.map((part, index) => /* @__PURE__ */ import_react4.default.createElement("div", { key: index, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ import_react4.default.createElement("div", null, text2)) : "...");
57584
+ return /* @__PURE__ */ import_react4.default.createElement(
57585
+ import_core5.ScrollArea,
57586
+ {
57587
+ type: "hover",
57588
+ offsetScrollbars: true,
57589
+ className: ["katechat-message-content", "katechat-message-preview"].join(" ")
57590
+ },
57591
+ text2 ? /* @__PURE__ */ import_react4.default.createElement(import_react4.default.Fragment, null, html2 ? html2.map((part, index) => /* @__PURE__ */ import_react4.default.createElement("div", { key: index, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ import_react4.default.createElement("div", null, text2)) : "..."
57592
+ );
57601
57593
  };
57602
57594
 
57603
57595
  // src/components/chat/message/LinkedChatMessage.tsx
@@ -57644,7 +57636,7 @@ var LinkedChatMessage = ({ message, parentIndex, index, plugins, models }) => {
57644
57636
  const model = (0, import_react6.useMemo)(() => {
57645
57637
  return models?.find((m) => m.modelId === message.modelId);
57646
57638
  }, [models, message.modelId]);
57647
- return /* @__PURE__ */ import_react6.default.createElement(import_carousel2.Carousel.Slide, { key: message.id, className: ChatMessage_module_default.linkedMessageContainer }, /* @__PURE__ */ import_react6.default.createElement(import_core6.Group, { align: "center" }, /* @__PURE__ */ import_react6.default.createElement(import_core6.Avatar, { radius: "xl", size: "md" }, model ? /* @__PURE__ */ import_react6.default.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ import_react6.default.createElement(import_icons_react4.IconRobot, null)), /* @__PURE__ */ import_react6.default.createElement(import_core6.Group, { gap: "xs" }, /* @__PURE__ */ import_react6.default.createElement(import_core6.Text, { size: "sm", fw: 500, c: "teal" }, message.modelName), message.status && /* @__PURE__ */ import_react6.default.createElement(MessageStatus, { status: message.status }), message.statusInfo && /* @__PURE__ */ import_react6.default.createElement(import_core6.Text, { size: "xs", c: "dimmed" }, message.statusInfo))), /* @__PURE__ */ import_react6.default.createElement("div", { className: ChatMessage_module_default.message }, message.html ? message.html.map((part, index2) => /* @__PURE__ */ import_react6.default.createElement("div", { key: index2, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ import_react6.default.createElement("div", null, message.content), /* @__PURE__ */ import_react6.default.createElement("div", { className: ChatMessage_module_default.messageFooter }, /* @__PURE__ */ import_react6.default.createElement(CopyMessageButton, { messageId: message.id, messageIndex: parentIndex, linkedMessageIndex: index }), plugins)));
57639
+ return /* @__PURE__ */ import_react6.default.createElement(import_carousel2.Carousel.Slide, { key: message.id, className: "katechat-message-linked" }, /* @__PURE__ */ import_react6.default.createElement(import_core6.Group, { align: "center" }, /* @__PURE__ */ import_react6.default.createElement(import_core6.Avatar, { radius: "xl", size: "md" }, model ? /* @__PURE__ */ import_react6.default.createElement(ProviderIcon, { apiProvider: model.apiProvider, provider: model.provider }) : /* @__PURE__ */ import_react6.default.createElement(import_icons_react4.IconRobot, null)), /* @__PURE__ */ import_react6.default.createElement(import_core6.Group, { gap: "xs" }, /* @__PURE__ */ import_react6.default.createElement(import_core6.Text, { size: "sm", fw: 500, c: "teal" }, message.modelName), message.status && /* @__PURE__ */ import_react6.default.createElement(MessageStatus, { status: message.status }), message.statusInfo && /* @__PURE__ */ import_react6.default.createElement(import_core6.Text, { size: "xs", c: "dimmed" }, message.statusInfo))), /* @__PURE__ */ import_react6.default.createElement("div", { className: "katechat-message-content" }, message.html ? message.html.map((part, index2) => /* @__PURE__ */ import_react6.default.createElement("div", { key: index2, dangerouslySetInnerHTML: { __html: part } })) : /* @__PURE__ */ import_react6.default.createElement("div", null, message.content), /* @__PURE__ */ import_react6.default.createElement("div", { className: "katechat-message-footer" }, /* @__PURE__ */ import_react6.default.createElement(CopyMessageButton, { messageId: message.id, messageIndex: parentIndex, linkedMessageIndex: index }), plugins)));
57648
57640
  };
57649
57641
  LinkedChatMessage.displayName = "LinkedChatMessage";
57650
57642
 
@@ -57674,9 +57666,9 @@ function notEmpty(value) {
57674
57666
 
57675
57667
  // src/controls/FileDropzone/FileDropzone.module.scss
57676
57668
  var FileDropzone_module_default = {
57677
- "dropzone": "_dropzone_1kjrg_1",
57678
- "dragging": "_dragging_1kjrg_8",
57679
- "disabled": "_disabled_1kjrg_12"
57669
+ "dropzone": "_dropzone_16zca_1",
57670
+ "dragging": "_dragging_16zca_8",
57671
+ "disabled": "_disabled_16zca_12"
57680
57672
  };
57681
57673
 
57682
57674
  // src/controls/FileDropzone/FileDropzone.tsx
@@ -57769,26 +57761,26 @@ var FileDropzone = ({ onFilesAdd, disabled, uploadFormats = IMAGE_UPLOAD_FORMATS
57769
57761
 
57770
57762
  // src/components/chat/input/ChatInput.module.scss
57771
57763
  var ChatInput_module_default = {
57772
- "chatControlsContainer": "_chatControlsContainer_olrml_1",
57773
- "chatControls": "_chatControls_olrml_1",
57774
- "headerRow": "_headerRow_olrml_4",
57775
- "chatInputGroup": "_chatInputGroup_olrml_7",
57776
- "chatInput": "_chatInput_olrml_7",
57777
- "hidden": "_hidden_olrml_17",
57778
- "fullHeight": "_fullHeight_olrml_20",
57779
- "chatInputContainer": "_chatInputContainer_olrml_35",
57780
- "documentsInput": "_documentsInput_olrml_44",
57781
- "columned": "_columned_olrml_50",
57782
- "filesList": "_filesList_olrml_58",
57783
- "previewImage": "_previewImage_olrml_63",
57784
- "removeButton": "_removeButton_olrml_75"
57764
+ "chatControlsContainer": "_chatControlsContainer_1cjl9_1",
57765
+ "chatControls": "_chatControls_1cjl9_1",
57766
+ "headerRow": "_headerRow_1cjl9_4",
57767
+ "chatInputGroup": "_chatInputGroup_1cjl9_7",
57768
+ "chatInput": "_chatInput_1cjl9_7",
57769
+ "hidden": "_hidden_1cjl9_17",
57770
+ "promptMode": "_promptMode_1cjl9_20",
57771
+ "chatInputContainer": "_chatInputContainer_1cjl9_35",
57772
+ "documentsInput": "_documentsInput_1cjl9_44",
57773
+ "columned": "_columned_1cjl9_50",
57774
+ "filesList": "_filesList_1cjl9_58",
57775
+ "previewImage": "_previewImage_1cjl9_63",
57776
+ "removeButton": "_removeButton_1cjl9_75"
57785
57777
  };
57786
57778
 
57787
57779
  // src/components/chat/input/ChatInput.tsx
57788
57780
  var ChatInput = ({
57789
57781
  loadCompleted = false,
57790
57782
  disabled = false,
57791
- fullHeight = false,
57783
+ promptMode = false,
57792
57784
  uploadAllowed = true,
57793
57785
  streaming,
57794
57786
  setSending,
@@ -57932,11 +57924,11 @@ var ChatInput = ({
57932
57924
  {
57933
57925
  className: [
57934
57926
  ChatInput_module_default.chatControlsContainer,
57935
- fullHeight ? ChatInput_module_default.fullHeight : "",
57927
+ promptMode ? ChatInput_module_default.promptMode : "",
57936
57928
  loadCompleted ? "" : ChatInput_module_default.hidden
57937
57929
  ].join(" ")
57938
57930
  },
57939
- fullHeight ? /* @__PURE__ */ import_react8.default.createElement(import_core8.Stack, { align: "center", justify: "center", gap: "md", mb: "lg" }, /* @__PURE__ */ import_react8.default.createElement(import_core8.Text, { c: "dimmed", size: "lg", ta: "center" }, "Start the conversation by sending a message")) : null,
57931
+ promptMode ? /* @__PURE__ */ import_react8.default.createElement(import_core8.Stack, { align: "center", justify: "center", gap: "md", mb: "lg" }, /* @__PURE__ */ import_react8.default.createElement(import_core8.Text, { c: "dimmed", size: "lg", ta: "center" }, "Start the conversation by sending a message")) : null,
57940
57932
  /* @__PURE__ */ import_react8.default.createElement("div", { className: ChatInput_module_default.chatControls }, header && /* @__PURE__ */ import_react8.default.createElement(import_core8.Group, { align: "center", gap: "xs", className: ChatInput_module_default.headerRow }, header), /* @__PURE__ */ import_react8.default.createElement("div", { className: [ChatInput_module_default.chatInputContainer, selectedImages.length ? ChatInput_module_default.columned : ""].join(" ") }, uploadAllowed && /* @__PURE__ */ import_react8.default.createElement("div", { className: ChatInput_module_default.documentsInput }, /* @__PURE__ */ import_react8.default.createElement(FileDropzone, { onFilesAdd: handleAddFiles, disabled: !uploadAllowed, uploadFormats }), inputPlugins, /* @__PURE__ */ import_react8.default.createElement("div", { className: ChatInput_module_default.filesList }, selectedImages.map((file) => /* @__PURE__ */ import_react8.default.createElement("div", { key: file.fileName, className: ChatInput_module_default.previewImage }, /* @__PURE__ */ import_react8.default.createElement("img", { src: file.bytesBase64, alt: file.fileName }), /* @__PURE__ */ import_react8.default.createElement(
57941
57933
  import_core8.ActionIcon,
57942
57934
  {
@@ -58152,9 +58144,10 @@ var ChatMessagesList = ({
58152
58144
  },
58153
58145
  [plugins, detailsPlugins]
58154
58146
  );
58155
- return /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(import_core10.Stack, { gap: "xs", ref: componentRef, onClick: handleMessageClick }, messages.map((msg, index) => /* @__PURE__ */ import_react10.default.createElement(import_core10.Group, { key: msg.id, align: "flex-start", gap: "xs" }, /* @__PURE__ */ import_react10.default.createElement(
58147
+ return /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(import_core10.Stack, { gap: "xs", ref: componentRef, onClick: handleMessageClick }, messages.map((msg, index) => /* @__PURE__ */ import_react10.default.createElement(
58156
58148
  ChatMessage,
58157
58149
  {
58150
+ key: msg.id,
58158
58151
  message: msg,
58159
58152
  index,
58160
58153
  disabled: updatedMessages.has(msg.id),
@@ -58162,7 +58155,7 @@ var ChatMessagesList = ({
58162
58155
  messageDetailsLoader,
58163
58156
  models
58164
58157
  }
58165
- )))), /* @__PURE__ */ import_react10.default.createElement(ImagePopup, { fileName: imageFileName ?? "", fileUrl: imageToShow ?? "", onClose: resetSelectedImage }));
58158
+ ))), /* @__PURE__ */ import_react10.default.createElement(ImagePopup, { fileName: imageFileName ?? "", fileUrl: imageToShow ?? "", onClose: resetSelectedImage }));
58166
58159
  };
58167
58160
 
58168
58161
  // src/components/chat/ChatMessagesContainer.tsx
@@ -58233,18 +58226,6 @@ var useTheme = () => {
58233
58226
  return context;
58234
58227
  };
58235
58228
 
58236
- // src/components/chat/ChatMessagesContainer.module.scss
58237
- var ChatMessagesContainer_module_default = {
58238
- "messagesContainer": "_messagesContainer_b2ndj_2",
58239
- "messagesList": "_messagesList_b2ndj_19",
58240
- "empty": "_empty_b2ndj_23",
58241
- "scroller": "_scroller_b2ndj_12",
58242
- "loadCompleted": "_loadCompleted_b2ndj_31",
58243
- "anchorContainer": "_anchorContainer_b2ndj_41",
58244
- "visible": "_visible_b2ndj_55",
58245
- "anchor": "_anchor_b2ndj_41"
58246
- };
58247
-
58248
58229
  // src/components/chat/ChatMessagesContainer.tsx
58249
58230
  var ChatMessagesContainer = import_react13.default.forwardRef(
58250
58231
  ({
@@ -58317,12 +58298,12 @@ var ChatMessagesContainer = import_react13.default.forwardRef(
58317
58298
  "div",
58318
58299
  {
58319
58300
  className: [
58320
- ChatMessagesContainer_module_default.messagesContainer,
58321
- loadCompleted ? ChatMessagesContainer_module_default.loadCompleted : "",
58322
- loadCompleted && messages?.length === 0 ? ChatMessagesContainer_module_default.empty : ""
58301
+ "katechat-messages-container",
58302
+ loadCompleted ? "container--load-completed" : "",
58303
+ loadCompleted && messages?.length === 0 ? "container--empty" : ""
58323
58304
  ].join(" ")
58324
58305
  },
58325
- /* @__PURE__ */ import_react13.default.createElement("div", { className: ChatMessagesContainer_module_default.scroller, ref: messagesContainerRef, onScroll: handleScroll }, /* @__PURE__ */ import_react13.default.createElement("div", { ref: firstMessageRef }), loading && /* @__PURE__ */ import_react13.default.createElement(import_core11.Group, { justify: "center", align: "center", py: "xl" }, /* @__PURE__ */ import_react13.default.createElement(import_core11.Loader, null)), /* @__PURE__ */ import_react13.default.createElement("div", { className: ChatMessagesContainer_module_default.messagesList }, messages && /* @__PURE__ */ import_react13.default.createElement(
58306
+ /* @__PURE__ */ import_react13.default.createElement("div", { className: "katechat-messages-container-scroller", ref: messagesContainerRef, onScroll: handleScroll }, /* @__PURE__ */ import_react13.default.createElement("div", { ref: firstMessageRef }), loading && /* @__PURE__ */ import_react13.default.createElement(import_core11.Group, { justify: "center", align: "center", py: "xl" }, /* @__PURE__ */ import_react13.default.createElement(import_core11.Loader, null)), /* @__PURE__ */ import_react13.default.createElement("div", { className: "katechat-messages-list" }, messages && /* @__PURE__ */ import_react13.default.createElement(
58326
58307
  ChatMessagesList,
58327
58308
  {
58328
58309
  messages,
@@ -58333,7 +58314,7 @@ var ChatMessagesContainer = import_react13.default.forwardRef(
58333
58314
  detailsPlugins
58334
58315
  }
58335
58316
  ))),
58336
- /* @__PURE__ */ import_react13.default.createElement("div", { className: [ChatMessagesContainer_module_default.anchorContainer, showAnchorButton ? ChatMessagesContainer_module_default.visible : ""].join(" ") }, /* @__PURE__ */ import_react13.default.createElement("div", { className: ChatMessagesContainer_module_default.anchor }, /* @__PURE__ */ import_react13.default.createElement(import_icons_react8.IconCircleChevronDown, { size: 32, color: "teal", style: { cursor: "pointer" }, onClick: anchorHandleClick })))
58317
+ /* @__PURE__ */ import_react13.default.createElement("div", { className: ["katechat-anchor-container", showAnchorButton ? "container--visible" : ""].join(" ") }, /* @__PURE__ */ import_react13.default.createElement("div", { className: "katechat-anchor" }, /* @__PURE__ */ import_react13.default.createElement(import_icons_react8.IconCircleChevronDown, { size: 32, color: "teal", onClick: anchorHandleClick })))
58337
58318
  );
58338
58319
  }
58339
58320
  );
@@ -75198,13 +75179,16 @@ var markedSimple = new Marked(
75198
75179
  );
75199
75180
  var renderer = new _Renderer();
75200
75181
  renderer.html = ({ text: text2 }) => {
75182
+ if (["<br>", "<br/>", "<br />", "<p>"].includes(text2.trim())) {
75183
+ return text2;
75184
+ }
75201
75185
  return escapeHtml(text2);
75202
75186
  };
75203
75187
  renderer.link = ({ href, title, text: text2 }) => {
75204
75188
  const url = sanitizeUrl(href);
75205
75189
  return `<a target="_blank" rel="noopener noreferrer" href="${url}" title="${escapeHtml(title) || ""}">${escapeHtml(text2)}</a>`;
75206
75190
  };
75207
- function normalizeMatJAX(input) {
75191
+ function normalizeMatJax(input) {
75208
75192
  return input ? input.replace(/\\\(([\s\S]+?)\\\)/g, (_, expr) => `$${expr}$`).replace(/\\\[([\s\S]+?)\\\]/g, (_, expr) => `
75209
75193
  $$${expr}$$
75210
75194
  `) : "";
@@ -75214,7 +75198,7 @@ function parseMarkdown(content, simple = false) {
75214
75198
  if (simple) {
75215
75199
  return [markedSimple.parse(content, { renderer })];
75216
75200
  }
75217
- content = normalizeMatJAX(content);
75201
+ content = normalizeMatJax(content);
75218
75202
  if (content.match(/(```)|(\|---)/)) {
75219
75203
  return [marked2.parse(content, { renderer })];
75220
75204
  }