@katechat/ui 1.0.50 → 1.0.52

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,2 +1,2 @@
1
- @charset "UTF-8";@import"@mantine/core/styles.css";.katechat-message{width:100%;overflow-x:hidden;display:flex;flex-direction:row}.katechat-message .katechat-message-main,.katechat-message .katechat-message-linked{padding:var(--mantine-spacing-sm) var(--mantine-spacing-lg);flex-grow:1;width:50%;display:flex;flex-direction:column;border-radius:var(--mantine-radius-md)}.katechat-message .katechat-message-linked{margin-right:var(--mantine-spacing-sm)}.katechat-message .katechat-message-linked-toggle{display:none}.katechat-message-content{display:flex;flex-direction:column;align-items:stretch;word-break:break-all;border-radius:var(--mantine-radius-md);margin-top:var(--mantine-spacing-md)}.katechat-message-content p{margin-block-start:0;margin-block-end:0;padding-top:var(--mantine-spacing-sm)}.katechat-message-content blockquote{padding:0 var(--mb-padding, var(--mantine-spacing-sm));border-left:.5rem solid var(--mantine-color-default-border);margin:.25rem 0}.katechat-message-content hr{width:100%;margin:.5rem 0 .25rem;border:none;border-top:1px solid var(--mantine-color-default-border)}.katechat-message-content ol,.katechat-message-content ul{margin:.25rem 0 .25rem .5rem;padding:0 0 0 1.5rem}.katechat-message-content img{max-width:256px;max-height:256px;align-self:center;height:auto;margin:.5rem;vertical-align:top;cursor:pointer}.katechat-message-content.streaming img{animation:imagePlaceholderBlur 1s ease-in-out infinite alternate;pointer-events:none;cursor:default}@keyframes imagePlaceholderBlur{0%{filter:blur(1px) grayscale(90%)}to{filter:blur(3px) grayscale(90%)}}.katechat-message-content.katechat-message-preview{height:200px;padding:var(--mb-padding, var(--mantine-spacing-sm)) 0 0 0;font-size:80%}.katechat-message-content.katechat-message-preview img{max-width:50%;height:auto}.katechat-message-content .katechat-message-content-details{margin-top:1rem;font-size:80%;display:flex;flex-direction:column;gap:0;border-top:1px dashed var(--mantine-color-gray-7);padding-top:.5rem}.katechat-message-content .katechat-message-content-details p{padding:0}.katechat-message-content .katechat-message-content-details ol,.katechat-message-content .katechat-message-content-details ul{margin:.25rem 0;padding:0 0 0 1rem}.katechat-message-content .katechat-message-content-details .message-details-header{margin-bottom:var(--mantine-spacing-md)}.katechat-message-content .katechat-message-content-details .message-details-header svg{color:var(--mantine-color-gray-6)}.katechat-message-content .katechat-message-content-details .message-details-content{padding-left:var(--mantine-spacing-md);border-left:1px solid var(--mantine-color-gray-7);margin-left:.5rem}.katechat-message-content .table-controls .table-header-actions{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem;align-items:center}.katechat-message-content .table-controls .action-btn{padding:.1rem;line-height:1;display:flex;justify-content:center;align-items:center;width:fit-content;gap:.25rem;cursor:pointer;font-size:90%;opacity:.8}.katechat-message-content .table-controls .action-btn:hover{opacity:1}.katechat-message-content .table-controls .action-btn-label{display:none}.katechat-message-content table{margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border-spacing:0}.katechat-message-content table td,.katechat-message-content table th{padding:var(--mb-padding, var(--mantine-spacing-sm));margin:0;border-top:1px solid var(--mantine-color-default-border);border-left:1px solid var(--mantine-color-default-border)}.katechat-message-content table th.table-sort-btn{cursor:pointer;user-select:none}.katechat-message-content table th.table-sort-btn:after{content:" \21c5";opacity:.4;font-size:.75em}.katechat-message-content table th.table-sort-btn.sort-asc:after{content:" \2191";opacity:1}.katechat-message-content table th.table-sort-btn.sort-desc:after{content:" \2193";opacity:1}.katechat-message-content table tr td:last-child,.katechat-message-content table tr th:last-child{border-right:1px solid var(--mantine-color-default-border)}.katechat-message-content table tr:nth-child(2n){background-color:var(--mantine-color-dark-5)}.katechat-message-content table thead tr{background-color:var(--mantine-color-dark-5)}.katechat-message-content table thead tr:first-child th:first-child{border-top-left-radius:var(--mantine-radius-md)}.katechat-message-content table thead tr:first-child th:last-child{border-top-right-radius:var(--mantine-radius-md)}.katechat-message-content table tfoot tr{background-color:var(--mantine-color-dark-5)}.katechat-message-content table tfoot tr:last-child td{border-bottom:1px solid var(--mantine-color-default-border)}.katechat-message-content table tfoot tr:last-child td:first-child{border-bottom-left-radius:var(--mantine-radius-md)}.katechat-message-content table tfoot tr:last-child td:last-child{border-bottom-right-radius:var(--mantine-radius-md)}.katechat-message-content pre{margin:.5rem 0;padding:1em;clip-path:none;font-size:90%;transition:all var(--theme-default-time) ease;font-family:var(--monospace-font-family);overflow-x:auto;position:relative;border-radius:var(--mantine-radius-md)}.katechat-message-content pre:has(.code-header){padding-top:3.6rem}.katechat-message-content .code-header{font-size:.875rem;padding:var(--mantine-spacing-sm) var(--mantine-spacing-lg) var(--mantine-spacing-sm) var(--mantine-spacing-md);border-top-right-radius:var(--mantine-radius-md);border-top-left-radius:var(--mantine-radius-md);height:2.7rem;position:absolute;top:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;align-items:center;flex-direction:row;white-space:normal;gap:.5rem}.katechat-message-content .code-header .title{width:fit-content;font-weight:700;font-family:var(--mantine-font-family);display:flex;align-items:center;flex-direction:row;cursor:pointer;user-select:none;min-height:2rem}.katechat-message-content .code-header .title .header-toggle{width:1.5rem;margin-right:.5rem;display:none;display:inline-block;transform:rotate(90deg);transition:transform var(--theme-default-time) ease}.katechat-message-content .code-header .code-header-actions{align-content:flex-end;display:flex;gap:.5rem;align-items:center}.katechat-message-content .code-header .action-btn{padding:.1rem;line-height:1;display:flex;justify-content:center;align-items:center;width:fit-content;gap:.25rem;cursor:pointer;color:var(--mantine-color-dimmed)}.katechat-message-content .code-header .action-btn:hover{color:var(--mantine-color-text)}.katechat-message-content .code-header .action-btn-label{display:none}.katechat-message-content .code-header .code-run-btn{color:var(--mantine-color-teal-6)}.katechat-message-content .code-header .code-run-btn:hover{color:var(--mantine-color-teal-4)}.katechat-message-content .code-header.collapsed{border-bottom-right-radius:.25em;border-bottom-left-radius:.25em;margin-bottom:0}.katechat-message-content .code-header.collapsed .title .header-toggle{transform:translateY(.2rem) rotate(0)}.katechat-message-content .code-header.collapsed .code-copy-btn,.katechat-message-content .code-header.collapsed .code-download-btn,.katechat-message-content .code-header.collapsed .code-run-btn{display:none}.katechat-message-content .code-block{position:relative;flex-grow:1;overflow-x:auto;padding-top:2.7rem;margin:.5rem 0;border-radius:var(--mantine-radius-md)}.katechat-message-content .code-block pre{margin:0;white-space:pre;transition:clip-path .5s ease,height .5s ease,opacity .5s ease}.katechat-message-content .code-block.collapsed{padding-top:.7rem;height:2.7rem}.katechat-message-content .code-block.collapsed pre{clip-path:inset(0 0 100% 0);overflow-y:hidden;height:0;opacity:0}.katechat-message-content .code-data{display:none}.katechat-message-content .katex-html{display:inline-block;margin:.5rem .5rem 0 0}.katechat-message-footer{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:1rem 0 0;opacity:.5;transition:opacity var(--theme-default-time) ease}.katechat-message-footer .check-icon{display:none}.katechat-message-footer:hover{opacity:1}.katechat-message-footer .mantine-ActionIcon-root:hover{color:var(--mantine-color-brand-5)}.katechat-message-carousel{position:relative;height:100%;overflow:hidden}.katechat-message-carousel .message-carousel-header{position:absolute;display:flex;justify-content:flex-end;top:.75rem;left:0;width:100%;z-index:2}.katechat-message-carousel .message-carousel-controls{display:flex;justify-content:center;gap:1rem}.katechat-message-carousel .carousel-message-content{position:relative;overflow:hidden}.katechat-message-carousel .carousel-message-content.animation-exit-left{animation:slideOutLeft .3s ease-in-out forwards}.katechat-message-carousel .carousel-message-content.animation-exit-right{animation:slideOutRight .3s ease-in-out forwards}.katechat-message-carousel .carousel-message-content.animation-enter-right{animation:slideInFromRight .3s ease-in-out forwards}.katechat-message-carousel .carousel-message-content.animation-enter-left{animation:slideInFromLeft .3s ease-in-out forwards}.katechat-message-carousel .carousel-model-icons{position:absolute;display:flex;justify-content:center;bottom:0;left:0;width:100%;z-index:2}.katechat-message-carousel .carousel-model-icons div{cursor:pointer}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}[data-mantine-color-scheme=dark] .katechat-message .code-block,[data-mantine-color-scheme=dark] .katechat-message pre{background-color:var(--mantine-color-dark-8)}[data-mantine-color-scheme=dark] .katechat-message .code-header{background-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=dark] .katechat-message .code-header:hover{background-color:var(--mantine-color-dark-5)}[data-mantine-color-scheme=dark] .katechat-message.katechat-message__user{background-color:var(--mantine-color-dark-8);border-top:1px solid var(--mantine-color-dark-6);border-bottom:1px solid var(--mantine-color-dark-6)}[data-mantine-color-scheme=dark] .katechat-message.katechat-message__error .katechat-message-content{color:var(--mantine-color-yellow-9)}[data-mantine-color-scheme=dark] .katechat-message .katechat-message-linked{background-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=dark] .katechat-message .katechat-message-linked .code-header{background-color:var(--mantine-color-dark-7)}[data-mantine-color-scheme=dark] .katechat-message .katechat-message-linked .code-header:hover{background-color:var(--mantine-color-dark-5)}[data-mantine-color-scheme=light] .katechat-message .code-block,[data-mantine-color-scheme=light] .katechat-message pre{background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=light] .katechat-message .code-header{background-color:var(--mantine-color-gray-3)}[data-mantine-color-scheme=light] .katechat-message .code-header:hover{background-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=light] .katechat-message .code-header .action-btn{color:var(--mantine-color-dark-9)}[data-mantine-color-scheme=light] .katechat-message .code-header .action-btn:hover{color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .katechat-message .code-header .code-run-btn{color:var(--mantine-color-teal-7)}[data-mantine-color-scheme=light] .katechat-message .code-header .code-run-btn:hover{color:var(--mantine-color-teal-6)}[data-mantine-color-scheme=light] .katechat-message .table-header .action-btn{color:var(--mantine-color-dark-9)}[data-mantine-color-scheme=light] .katechat-message .table-header .action-btn:hover{color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .katechat-message.katechat-message__user{background-color:var(--mantine-color-blue-0);border-top:1px solid var(--mantine-color-blue-1);border-bottom:1px solid var(--mantine-color-blue-1)}[data-mantine-color-scheme=light] .katechat-message.katechat-message__error .katechat-message-content{color:var(--mantine-color-red-5)}[data-mantine-color-scheme=light] .katechat-message .katechat-message-linked{background-color:var(--mantine-color-gray-2)}[data-mantine-color-scheme=light] .katechat-message tr:nth-child(2n){background-color:var(--mantine-color-blue-1)}[data-mantine-color-scheme=light] .katechat-message thead tr,[data-mantine-color-scheme=light] .katechat-message tfoot tr{background-color:var(--mantine-color-blue-1)}[data-mantine-color-scheme=light] .katechat-message-content-details{border-color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=light] .katechat-message-content-details .message-details-header svg{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=light] .katechat-message-content-details .message-details-content{border-color:var(--mantine-color-gray-5)}@media (min-width: 720px){.katechat-message-content .code-header .action-btn-label,.katechat-message-content .table-controls .action-btn-label{display:inline-block}}@media (max-width: 1280px){.katechat-message{flex-direction:column;position:relative}.katechat-message .katechat-message-linked-toggle{position:absolute;right:.5rem;top:.5rem;display:flex;z-index:5}.katechat-message .katechat-message-main,.katechat-message .katechat-message-linked{width:100%;margin:0;border-radius:0}.katechat-message .hidden{display:none}}._dropzone_16zca_1{cursor:pointer}._dropzone_16zca_1:hover,._dragging_16zca_8{color:var(--mantine-color-brand-6)}._disabled_16zca_12{color:var(--mantine-color-gray-4);cursor:not-allowed}._overlay_vjudp_1{position:absolute;inset:0;z-index:5;background:var(--mantine-color-dark-7);opacity:.92;display:flex;align-items:center;justify-content:center;pointer-events:all}._content_vjudp_16{margin:2rem;padding:5rem;border:2px dashed var(--mantine-color-dark-4);border-radius:var(--mantine-radius-md);display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none}[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4{box-shadow:.1rem .1rem .25rem var(--app-shell-border-color)}[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea{border:none}[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4{border:1px solid var(--mantine-color-body);box-shadow:.1rem .1rem .25rem var(--mantine-color-dark-9)}[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea{border:none}._hidden_sg9gr_22{display:none!important}._chatControlsContainer_sg9gr_1{display:flex;flex-direction:column;align-items:stretch;justify-content:center;align-self:stretch;transition:all .75s ease}._chatControlsContainer_sg9gr_1._promptMode_sg9gr_34{flex-grow:1;width:100%;min-width:200px;max-width:600px;align-self:center}._chatControlsContainer_sg9gr_1 ._promptModeText_sg9gr_41{opacity:0;transition:opacity .3s ease-out,transform .3s ease-out;animation:_promptFadeInUp_sg9gr_1 .8s ease-out forwards;animation-delay:.2s;background:linear-gradient(90deg,var(--mantine-color-dimmed) 0%,var(--mantine-color-dark-5) 50%,var(--mantine-color-dimmed) 100%);background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:_promptFadeInUp_sg9gr_1 .8s ease-out forwards,_promptShimmer_sg9gr_1 4s ease-in-out 1s infinite}@keyframes _promptFadeInUp_sg9gr_1{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes _promptShimmer_sg9gr_1{0%,to{background-position:0% center}50%{background-position:200% center}}._chatControlsContainer_sg9gr_1 ._headerRow_sg9gr_71{flex:1;padding:.5rem 0;border-top-left-radius:var(--mantine-radius-md);border-top-right-radius:var(--mantine-radius-md)}._chatInputContainer_sg9gr_4{display:flex;flex-direction:column;justify-items:stretch;padding:.25rem;gap:.5rem;background-color:var(--mantine-color-body);border:1px solid var(--app-shell-border-color);border-radius:var(--mantine-radius-md);box-shadow:0 .25rem .75rem #0000001a}._chatInputContainer_sg9gr_4 ._documentsInput_sg9gr_89{display:flex;flex-direction:row;gap:.25rem;align-items:stretch}._chatInputContainer_sg9gr_4._columned_sg9gr_95{flex-direction:column;align-items:flex-start;justify-items:stretch}._chatInputContainer_sg9gr_4._columned_sg9gr_95 ._chatInputGroup_sg9gr_7{align-self:stretch}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103{display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108{position:relative;height:64px;border-radius:var(--mantine-radius-md)}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 img{max-width:64px;max-height:64px;object-fit:cover;border-radius:var(--mantine-radius-md);box-shadow:.125rem .25rem .25rem #0000001a}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 ._removeButton_sg9gr_120{position:absolute;top:.1rem;right:.1rem;border-radius:50%}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7{flex-grow:1;display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4{flex-grow:1}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea{border:none;padding:var(--mb-padding, var(--mantine-spacing-xs)) var(--mb-padding, var(--mantine-spacing-sm))}@media (min-width: 480px){._chatInputContainer_sg9gr_4{flex-direction:row;justify-items:flex-start;align-items:flex-start;padding:.5rem;gap:.5rem}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7{align-self:stretch}}.katechat-messages-container{flex-grow:1;position:relative;display:none;flex-direction:column;border:1px solid var(--app-shell-border-color);border-radius:var(--mantine-radius-md);overflow-y:hidden;opacity:1;transition:all .3s ease}.katechat-messages-container .katechat-messages-list{opacity:0;margin-bottom:1rem}.katechat-messages-container.container--empty{flex-grow:0;opacity:0}.katechat-messages-container .katechat-messages-container-scroller{overflow-y:scroll;flex-grow:1}.katechat-messages-container.container--load-completed{display:flex}.katechat-messages-container.container--load-completed .scroller{scroll-behavior:smooth}.katechat-messages-container.container--load-completed .katechat-messages-list{opacity:1}.katechat-messages-container .katechat-message:first-child{border-top:none}.katechat-messages-container .katechat-message:last-child{border-bottom:none}.katechat-anchor-container{position:absolute;width:40px;left:calc(50% - 40px);bottom:0;height:48px;z-index:2;display:flex;flex-direction:column;justify-items:center;align-items:center;opacity:0;transition:all .5s ease}.katechat-anchor-container.container--visible{opacity:1}.katechat-anchor-container .katechat-anchor{background-color:var(--mantine-color-body);border-radius:50%;height:32px;width:32px;opacity:.75;cursor:pointer}.katechat-anchor-container .katechat-anchor:hover{opacity:1}[data-mantine-color-scheme=light] .katechat-messages-container{background-color:var(--mantine-color-white);box-shadow:.1rem .1rem .25rem var(--app-shell-border-color)}[data-mantine-color-scheme=dark] .katechat-messages-container{background-color:var(--mantine-color-dark-7);border:1px solid var(--mantine-color-dark-7);box-shadow:.1rem .1rem .25rem var(--mantine-color-dark-9)}
1
+ @charset "UTF-8";@import"@mantine/core/styles.css";.katechat-message{width:100%;overflow-x:hidden;display:flex;flex-direction:row}.katechat-message .katechat-message-main,.katechat-message .katechat-message-linked{padding:var(--mantine-spacing-sm) var(--mantine-spacing-lg);flex-grow:1;width:50%;display:flex;flex-direction:column;border-radius:var(--mantine-radius-md)}.katechat-message .katechat-message-linked{margin-right:var(--mantine-spacing-sm)}.katechat-message .katechat-message-linked-toggle{display:none}.katechat-message-content{display:flex;flex-direction:column;align-items:stretch;word-break:normal;border-radius:var(--mantine-radius-md);margin-top:var(--mantine-spacing-md);overflow-x:auto}.katechat-message-content p{margin-block-start:0;margin-block-end:0;padding-top:var(--mantine-spacing-sm)}.katechat-message-content blockquote{padding:0 var(--mb-padding, var(--mantine-spacing-sm));border-left:.5rem solid var(--mantine-color-default-border);margin:.25rem 0}.katechat-message-content hr{width:100%;margin:.5rem 0 .25rem;border:none;border-top:1px solid var(--mantine-color-default-border)}.katechat-message-content ol,.katechat-message-content ul{margin:.25rem 0 .25rem .5rem;padding:0 0 0 1.5rem}.katechat-message-content img{max-width:256px;max-height:256px;align-self:center;height:auto;margin:.5rem;vertical-align:top;cursor:pointer}.katechat-message-content.streaming img{animation:imagePlaceholderBlur 1s ease-in-out infinite alternate;pointer-events:none;cursor:default}@keyframes imagePlaceholderBlur{0%{filter:blur(1px) grayscale(90%)}to{filter:blur(3px) grayscale(90%)}}.katechat-message-content.katechat-message-preview{height:200px;padding:var(--mb-padding, var(--mantine-spacing-sm)) 0 0 0;font-size:80%}.katechat-message-content.katechat-message-preview img{max-width:50%;height:auto}.katechat-message-content .katechat-message-content-details{margin-top:1rem;font-size:80%;display:flex;flex-direction:column;gap:0;border-top:1px dashed var(--mantine-color-gray-7);padding-top:.5rem}.katechat-message-content .katechat-message-content-details p{padding:0}.katechat-message-content .katechat-message-content-details ol,.katechat-message-content .katechat-message-content-details ul{margin:.25rem 0;padding:0 0 0 1rem}.katechat-message-content .katechat-message-content-details .message-details-header{margin:var(--mantine-spacing-md) 0}.katechat-message-content .katechat-message-content-details .message-details-header svg{color:var(--mantine-color-gray-6)}.katechat-message-content .katechat-message-content-details .message-details-content{padding-left:var(--mantine-spacing-md);border-left:1px solid var(--mantine-color-gray-7);margin-left:.5rem}.katechat-message-content .table-controls .table-header-actions{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem;align-items:center}.katechat-message-content .table-controls .action-btn{padding:.1rem;line-height:1;display:flex;justify-content:center;align-items:center;width:fit-content;gap:.25rem;cursor:pointer;font-size:90%;opacity:.8}.katechat-message-content .table-controls .action-btn:hover{opacity:1}.katechat-message-content .table-controls .action-btn-label{display:none}.katechat-message-content table{margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border-spacing:0;table-layout:fixed}.katechat-message-content table td,.katechat-message-content table th{padding:var(--mb-padding, var(--mantine-spacing-sm));margin:0;border-top:1px solid var(--mantine-color-default-border);border-left:1px solid var(--mantine-color-default-border)}.katechat-message-content table th.table-sort-btn{cursor:pointer;user-select:none}.katechat-message-content table th.table-sort-btn:after{content:" \21c5";opacity:.4;font-size:.75em}.katechat-message-content table th.table-sort-btn.sort-asc:after{content:" \2191";opacity:1}.katechat-message-content table th.table-sort-btn.sort-desc:after{content:" \2193";opacity:1}.katechat-message-content table tr td:last-child,.katechat-message-content table tr th:last-child{border-right:1px solid var(--mantine-color-default-border)}.katechat-message-content table tr:nth-child(2n){background-color:var(--mantine-color-dark-5)}.katechat-message-content table thead tr{background-color:var(--mantine-color-dark-5)}.katechat-message-content table thead tr:first-child th:first-child{border-top-left-radius:var(--mantine-radius-md)}.katechat-message-content table thead tr:first-child th:last-child{border-top-right-radius:var(--mantine-radius-md)}.katechat-message-content table tfoot tr{background-color:var(--mantine-color-dark-5)}.katechat-message-content table tfoot tr:last-child td{border-bottom:1px solid var(--mantine-color-default-border)}.katechat-message-content table tfoot tr:last-child td:first-child{border-bottom-left-radius:var(--mantine-radius-md)}.katechat-message-content table tfoot tr:last-child td:last-child{border-bottom-right-radius:var(--mantine-radius-md)}.katechat-message-content pre{margin:.5rem 0;padding:1em;clip-path:none;font-size:90%;transition:all var(--theme-default-time) ease;font-family:var(--monospace-font-family);overflow-x:auto;position:relative;border-radius:var(--mantine-radius-md)}.katechat-message-content pre:has(.code-header){padding-top:3.6rem}.katechat-message-content .code-header{font-size:.875rem;padding:var(--mantine-spacing-sm) var(--mantine-spacing-lg) var(--mantine-spacing-sm) var(--mantine-spacing-md);border-top-right-radius:var(--mantine-radius-md);border-top-left-radius:var(--mantine-radius-md);height:2.7rem;position:absolute;top:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;align-items:center;flex-direction:row;white-space:normal;gap:.5rem}.katechat-message-content .code-header .title{width:fit-content;font-weight:700;font-family:var(--mantine-font-family);display:flex;align-items:center;flex-direction:row;cursor:pointer;user-select:none;min-height:2rem}.katechat-message-content .code-header .title .header-toggle{width:1.5rem;margin-right:.5rem;display:none;display:inline-block;transform:rotate(90deg);transition:transform var(--theme-default-time) ease}.katechat-message-content .code-header .code-header-actions{align-content:flex-end;display:flex;gap:.5rem;align-items:center}.katechat-message-content .code-header .action-btn{padding:.1rem;line-height:1;display:flex;justify-content:center;align-items:center;width:fit-content;gap:.25rem;cursor:pointer;color:var(--mantine-color-dimmed)}.katechat-message-content .code-header .action-btn:hover{color:var(--mantine-color-text)}.katechat-message-content .code-header .action-btn-label{display:none}.katechat-message-content .code-header .code-run-btn{color:var(--mantine-color-teal-6)}.katechat-message-content .code-header .code-run-btn:hover{color:var(--mantine-color-teal-4)}.katechat-message-content .code-header.collapsed{border-bottom-right-radius:.25em;border-bottom-left-radius:.25em;margin-bottom:0}.katechat-message-content .code-header.collapsed .title .header-toggle{transform:translateY(.2rem) rotate(0)}.katechat-message-content .code-header.collapsed .code-copy-btn,.katechat-message-content .code-header.collapsed .code-download-btn,.katechat-message-content .code-header.collapsed .code-run-btn{display:none}.katechat-message-content .code-block{position:relative;flex-grow:1;overflow-x:auto;padding-top:2.7rem;margin:.5rem 0;border-radius:var(--mantine-radius-md)}.katechat-message-content .code-block pre{margin:0;white-space:pre;transition:clip-path .5s ease,height .5s ease,opacity .5s ease}.katechat-message-content .code-block.collapsed{padding-top:.7rem;height:2.7rem}.katechat-message-content .code-block.collapsed pre{clip-path:inset(0 0 100% 0);overflow-y:hidden;height:0;opacity:0}.katechat-message-content .code-data{display:none}.katechat-message-content .katex-html{display:inline-block;margin:.5rem .5rem 0 0}.katechat-message-footer{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:1rem 0 0;opacity:.5;transition:opacity var(--theme-default-time) ease}.katechat-message-footer .check-icon{display:none}.katechat-message-footer:hover{opacity:1}.katechat-message-footer .mantine-ActionIcon-root:hover{color:var(--mantine-color-brand-5)}.katechat-message-carousel{position:relative;height:100%;overflow:hidden}.katechat-message-carousel .message-carousel-header{position:absolute;display:flex;justify-content:flex-end;top:.75rem;left:0;width:100%;z-index:2}.katechat-message-carousel .message-carousel-controls{display:flex;justify-content:center;gap:1rem}.katechat-message-carousel .carousel-message-content{position:relative;overflow:hidden}.katechat-message-carousel .carousel-message-content.animation-exit-left{animation:slideOutLeft .3s ease-in-out forwards}.katechat-message-carousel .carousel-message-content.animation-exit-right{animation:slideOutRight .3s ease-in-out forwards}.katechat-message-carousel .carousel-message-content.animation-enter-right{animation:slideInFromRight .3s ease-in-out forwards}.katechat-message-carousel .carousel-message-content.animation-enter-left{animation:slideInFromLeft .3s ease-in-out forwards}.katechat-message-carousel .carousel-model-icons{position:absolute;display:flex;justify-content:center;bottom:0;left:0;width:100%;z-index:2}.katechat-message-carousel .carousel-model-icons div{cursor:pointer}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}[data-mantine-color-scheme=dark] .katechat-message .code-block,[data-mantine-color-scheme=dark] .katechat-message pre{background-color:var(--mantine-color-dark-8)}[data-mantine-color-scheme=dark] .katechat-message .code-header{background-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=dark] .katechat-message .code-header:hover{background-color:var(--mantine-color-dark-5)}[data-mantine-color-scheme=dark] .katechat-message.katechat-message__user{background-color:var(--mantine-color-dark-8);border-top:1px solid var(--mantine-color-dark-6);border-bottom:1px solid var(--mantine-color-dark-6)}[data-mantine-color-scheme=dark] .katechat-message.katechat-message__error .katechat-message-content{color:var(--mantine-color-yellow-9)}[data-mantine-color-scheme=dark] .katechat-message .katechat-message-linked{background-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=dark] .katechat-message .katechat-message-linked .code-header{background-color:var(--mantine-color-dark-7)}[data-mantine-color-scheme=dark] .katechat-message .katechat-message-linked .code-header:hover{background-color:var(--mantine-color-dark-5)}[data-mantine-color-scheme=light] .katechat-message .code-block,[data-mantine-color-scheme=light] .katechat-message pre{background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=light] .katechat-message .code-header{background-color:var(--mantine-color-gray-3)}[data-mantine-color-scheme=light] .katechat-message .code-header:hover{background-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=light] .katechat-message .code-header .action-btn{color:var(--mantine-color-dark-9)}[data-mantine-color-scheme=light] .katechat-message .code-header .action-btn:hover{color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .katechat-message .code-header .code-run-btn{color:var(--mantine-color-teal-7)}[data-mantine-color-scheme=light] .katechat-message .code-header .code-run-btn:hover{color:var(--mantine-color-teal-6)}[data-mantine-color-scheme=light] .katechat-message .table-header .action-btn{color:var(--mantine-color-dark-9)}[data-mantine-color-scheme=light] .katechat-message .table-header .action-btn:hover{color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .katechat-message.katechat-message__user{background-color:var(--mantine-color-blue-0);border-top:1px solid var(--mantine-color-blue-1);border-bottom:1px solid var(--mantine-color-blue-1)}[data-mantine-color-scheme=light] .katechat-message.katechat-message__error .katechat-message-content{color:var(--mantine-color-red-5)}[data-mantine-color-scheme=light] .katechat-message .katechat-message-linked{background-color:var(--mantine-color-gray-2)}[data-mantine-color-scheme=light] .katechat-message tr:nth-child(2n){background-color:var(--mantine-color-blue-1)}[data-mantine-color-scheme=light] .katechat-message thead tr,[data-mantine-color-scheme=light] .katechat-message tfoot tr{background-color:var(--mantine-color-blue-1)}[data-mantine-color-scheme=light] .katechat-message-content-details{border-color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=light] .katechat-message-content-details .message-details-header svg{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=light] .katechat-message-content-details .message-details-content{border-color:var(--mantine-color-gray-5)}@media (min-width: 720px){.katechat-message-content .code-header .action-btn-label,.katechat-message-content .table-controls .action-btn-label{display:inline-block}}@media (max-width: 1280px){.katechat-message{flex-direction:column;position:relative}.katechat-message .katechat-message-linked-toggle{position:absolute;right:.5rem;top:.5rem;display:flex;z-index:5}.katechat-message .katechat-message-main,.katechat-message .katechat-message-linked{width:100%;margin:0;border-radius:0}.katechat-message .hidden{display:none}}._dropzone_16zca_1{cursor:pointer}._dropzone_16zca_1:hover,._dragging_16zca_8{color:var(--mantine-color-brand-6)}._disabled_16zca_12{color:var(--mantine-color-gray-4);cursor:not-allowed}._overlay_vjudp_1{position:absolute;inset:0;z-index:5;background:var(--mantine-color-dark-7);opacity:.92;display:flex;align-items:center;justify-content:center;pointer-events:all}._content_vjudp_16{margin:2rem;padding:5rem;border:2px dashed var(--mantine-color-dark-4);border-radius:var(--mantine-radius-md);display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none}[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4{box-shadow:.1rem .1rem .25rem var(--app-shell-border-color)}[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea{border:none}[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4{border:1px solid var(--mantine-color-body);box-shadow:.1rem .1rem .25rem var(--mantine-color-dark-9)}[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea{border:none}._hidden_sg9gr_22{display:none!important}._chatControlsContainer_sg9gr_1{display:flex;flex-direction:column;align-items:stretch;justify-content:center;align-self:stretch;transition:all .75s ease}._chatControlsContainer_sg9gr_1._promptMode_sg9gr_34{flex-grow:1;width:100%;min-width:200px;max-width:600px;align-self:center}._chatControlsContainer_sg9gr_1 ._promptModeText_sg9gr_41{opacity:0;transition:opacity .3s ease-out,transform .3s ease-out;animation:_promptFadeInUp_sg9gr_1 .8s ease-out forwards;animation-delay:.2s;background:linear-gradient(90deg,var(--mantine-color-dimmed) 0%,var(--mantine-color-dark-5) 50%,var(--mantine-color-dimmed) 100%);background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:_promptFadeInUp_sg9gr_1 .8s ease-out forwards,_promptShimmer_sg9gr_1 4s ease-in-out 1s infinite}@keyframes _promptFadeInUp_sg9gr_1{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes _promptShimmer_sg9gr_1{0%,to{background-position:0% center}50%{background-position:200% center}}._chatControlsContainer_sg9gr_1 ._headerRow_sg9gr_71{flex:1;padding:.5rem 0;border-top-left-radius:var(--mantine-radius-md);border-top-right-radius:var(--mantine-radius-md)}._chatInputContainer_sg9gr_4{display:flex;flex-direction:column;justify-items:stretch;padding:.25rem;gap:.5rem;background-color:var(--mantine-color-body);border:1px solid var(--app-shell-border-color);border-radius:var(--mantine-radius-md);box-shadow:0 .25rem .75rem #0000001a}._chatInputContainer_sg9gr_4 ._documentsInput_sg9gr_89{display:flex;flex-direction:row;gap:.25rem;align-items:stretch}._chatInputContainer_sg9gr_4._columned_sg9gr_95{flex-direction:column;align-items:flex-start;justify-items:stretch}._chatInputContainer_sg9gr_4._columned_sg9gr_95 ._chatInputGroup_sg9gr_7{align-self:stretch}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103{display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108{position:relative;height:64px;border-radius:var(--mantine-radius-md)}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 img{max-width:64px;max-height:64px;object-fit:cover;border-radius:var(--mantine-radius-md);box-shadow:.125rem .25rem .25rem #0000001a}._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 ._removeButton_sg9gr_120{position:absolute;top:.1rem;right:.1rem;border-radius:50%}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7{flex-grow:1;display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4{flex-grow:1}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea{border:none;padding:var(--mb-padding, var(--mantine-spacing-xs)) var(--mb-padding, var(--mantine-spacing-sm))}@media (min-width: 480px){._chatInputContainer_sg9gr_4{flex-direction:row;justify-items:flex-start;align-items:flex-start;padding:.5rem;gap:.5rem}._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7{align-self:stretch}}.katechat-messages-container{flex-grow:1;position:relative;display:none;flex-direction:column;border:1px solid var(--app-shell-border-color);border-radius:var(--mantine-radius-md);overflow-y:hidden;opacity:1;transition:all .3s ease}.katechat-messages-container .katechat-messages-list{opacity:0;margin-bottom:1rem}.katechat-messages-container.container--empty{flex-grow:0;opacity:0}.katechat-messages-container .katechat-messages-container-scroller{overflow-y:scroll;flex-grow:1}.katechat-messages-container.container--load-completed{display:flex}.katechat-messages-container.container--load-completed .scroller{scroll-behavior:smooth}.katechat-messages-container.container--load-completed .katechat-messages-list{opacity:1}.katechat-messages-container .katechat-message:first-child{border-top:none}.katechat-messages-container .katechat-message:last-child{border-bottom:none}.katechat-anchor-container{position:absolute;width:40px;left:calc(50% - 40px);bottom:0;height:48px;z-index:2;display:flex;flex-direction:column;justify-items:center;align-items:center;opacity:0;transition:all .5s ease}.katechat-anchor-container.container--visible{opacity:1}.katechat-anchor-container .katechat-anchor{background-color:var(--mantine-color-body);border-radius:50%;height:32px;width:32px;opacity:.75;cursor:pointer}.katechat-anchor-container .katechat-anchor:hover{opacity:1}[data-mantine-color-scheme=light] .katechat-messages-container{background-color:var(--mantine-color-white);box-shadow:.1rem .1rem .25rem var(--app-shell-border-color)}[data-mantine-color-scheme=dark] .katechat-messages-container{background-color:var(--mantine-color-dark-7);border:1px solid var(--mantine-color-dark-7);box-shadow:.1rem .1rem .25rem var(--mantine-color-dark-9)}
2
2
  /*# sourceMappingURL=index.css.map */
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/chat/ChatMessage.scss", "esbuild-sass-plugin:css-chunk:src/controls/FileDropzone/FileDropzone.module.scss", "esbuild-sass-plugin:css-chunk:src/controls/DropFilesOverlay/DropFilesOverlay.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-sm) var(--mantine-spacing-lg);\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-right: var(--mantine-spacing-sm);\n }\n\n .katechat-message-linked-toggle {\n display: none;\n }\n}\n\n.katechat-message-content {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n word-break: break-all;\n border-radius: var(--mantine-radius-md);\n margin-top: var(--mantine-spacing-md);\n\n p {\n margin-block-start: 0;\n margin-block-end: 0;\n padding-top: var(--mantine-spacing-sm);\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 &.streaming {\n img {\n animation: imagePlaceholderBlur 1000ms ease-in-out infinite alternate;\n pointer-events: none;\n cursor: default;\n }\n }\n\n @keyframes imagePlaceholderBlur {\n 0% {\n filter: blur(1px) grayscale(90%);\n }\n 100% {\n filter: blur(3px) grayscale(90%);\n }\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 border-top: 1px dashed var(--mantine-color-gray-7);\n padding-top: 0.5rem;\n\n p {\n padding: 0;\n }\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\n svg {\n color: var(--mantine-color-gray-6);\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: 0.5rem;\n }\n }\n\n .table-controls {\n .table-header-actions {\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n gap: 0.5rem;\n align-items: center;\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 font-size: 90%;\n opacity: 0.8;\n\n &:hover {\n opacity: 1;\n }\n }\n\n .action-btn-label {\n display: none;\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-sm));\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 th.table-sort-btn {\n cursor: pointer;\n user-select: none;\n\n &::after {\n content: \" ⇅\";\n opacity: 0.4;\n font-size: 0.75em;\n }\n\n &.sort-asc::after {\n content: \" ↑\";\n opacity: 1;\n }\n\n &.sort-desc::after {\n content: \" ↓\";\n opacity: 1;\n }\n }\n\n tr td:last-child,\n tr th:last-child {\n border-right: 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 tfoot {\n tr {\n background-color: var(--mantine-color-dark-5);\n }\n\n tr:last-child td {\n border-bottom: 1px solid var(--mantine-color-default-border);\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\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 position: relative;\n border-radius: var(--mantine-radius-md);\n\n &:has(.code-header) {\n padding-top: 3.6rem;\n }\n }\n\n .code-header {\n font-size: 0.875rem;\n padding: var(--mantine-spacing-sm) var(--mantine-spacing-lg) var(--mantine-spacing-sm) var(--mantine-spacing-md);\n border-top-right-radius: var(--mantine-radius-md);\n border-top-left-radius: var(--mantine-radius-md);\n height: 2.7rem;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n z-index: 2;\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 font-family: var(--mantine-font-family);\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 width: 1.5rem;\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 display: flex;\n gap: 0.5rem;\n align-items: center;\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 color: var(--mantine-color-dimmed);\n\n &:hover {\n color: var(--mantine-color-text);\n }\n }\n\n .action-btn-label {\n display: none;\n }\n\n .code-run-btn {\n color: var(--mantine-color-teal-6);\n\n &:hover {\n color: var(--mantine-color-teal-4);\n }\n }\n\n &.collapsed {\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n margin-bottom: 0;\n\n .title {\n .header-toggle {\n transform: translateY(0.2rem) rotateZ(0deg);\n }\n }\n\n .code-copy-btn,\n .code-download-btn,\n .code-run-btn {\n display: none;\n }\n }\n }\n\n .code-block {\n position: relative;\n flex-grow: 1;\n overflow-x: auto;\n padding-top: 2.7rem;\n margin: 0.5rem 0;\n border-radius: var(--mantine-radius-md);\n\n pre {\n margin: 0;\n white-space: pre;\n transition:\n clip-path 0.5s ease,\n height 0.5s ease,\n opacity 0.5s ease;\n }\n\n &.collapsed {\n padding-top: 0.7rem;\n height: 2.7rem;\n pre {\n clip-path: inset(0 0 100% 0);\n overflow-y: hidden;\n height: 0;\n opacity: 0;\n }\n }\n }\n\n .code-data {\n display: none;\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: 1rem 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 .mantine-ActionIcon-root:hover {\n color: var(--mantine-color-brand-5);\n }\n}\n\n.katechat-message-carousel {\n position: relative;\n height: 100%;\n overflow: hidden;\n\n .message-carousel-header {\n position: absolute;\n display: flex;\n justify-content: flex-end;\n top: 0.75rem;\n left: 0;\n width: 100%;\n z-index: 2;\n }\n\n .message-carousel-controls {\n display: flex;\n justify-content: center;\n gap: 1rem;\n }\n\n .carousel-message-content {\n position: relative;\n overflow: hidden;\n\n &.animation-exit-left {\n animation: slideOutLeft 0.3s ease-in-out forwards;\n }\n\n &.animation-exit-right {\n animation: slideOutRight 0.3s ease-in-out forwards;\n }\n\n &.animation-enter-right {\n animation: slideInFromRight 0.3s ease-in-out forwards;\n }\n\n &.animation-enter-left {\n animation: slideInFromLeft 0.3s ease-in-out forwards;\n }\n }\n\n .carousel-model-icons {\n position: absolute;\n display: flex;\n justify-content: center;\n bottom: 0;\n left: 0;\n width: 100%;\n z-index: 2;\n\n div {\n cursor: pointer;\n }\n }\n\n // Carousel slide animations - scoped to this carousel only\n @keyframes slideOutLeft {\n from {\n transform: translateX(0);\n opacity: 1;\n }\n to {\n transform: translateX(-100%);\n opacity: 0;\n }\n }\n\n @keyframes slideOutRight {\n from {\n transform: translateX(0);\n opacity: 1;\n }\n to {\n transform: translateX(100%);\n opacity: 0;\n }\n }\n\n @keyframes slideInFromRight {\n from {\n transform: translateX(100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n }\n\n @keyframes slideInFromLeft {\n from {\n transform: translateX(-100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-dark-8);\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-6);\n .code-header {\n background-color: var(--mantine-color-dark-7);\n &:hover {\n background-color: var(--mantine-color-dark-5);\n }\n }\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-1);\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 .action-btn {\n color: var(--mantine-color-dark-9);\n &:hover {\n color: var(--mantine-color-dark-6);\n }\n }\n\n .code-run-btn {\n color: var(--mantine-color-teal-7);\n\n &:hover {\n color: var(--mantine-color-teal-6);\n }\n }\n }\n\n .table-header {\n .action-btn {\n color: var(--mantine-color-dark-9);\n &:hover {\n color: var(--mantine-color-dark-6);\n }\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-2);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-blue-1);\n }\n\n thead tr,\n tfoot tr {\n background-color: var(--mantine-color-blue-1);\n }\n }\n\n .katechat-message-content-details {\n border-color: var(--mantine-color-gray-5);\n\n .message-details-header svg {\n color: var(--mantine-color-gray-5);\n }\n .message-details-content {\n border-color: var(--mantine-color-gray-5);\n }\n }\n}\n\n@media (min-width: 720px) {\n .katechat-message-content {\n .code-header,\n .table-controls {\n .action-btn-label {\n display: inline-block;\n }\n }\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", "._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}", "._overlay_vjudp_1 {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 5;\n background: var(--mantine-color-dark-7);\n opacity: 0.92;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: all;\n}\n\n._content_vjudp_16 {\n margin: 2rem;\n padding: 5rem;\n border: 2px dashed var(--mantine-color-dark-4);\n border-radius: var(--mantine-radius-md);\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0.5rem;\n pointer-events: none;\n}", "[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4 {\n box-shadow: 0.1rem 0.1rem 0.25rem var(--app-shell-border-color);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea {\n border: none;\n}\n\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4 {\n border: 1px solid var(--mantine-color-body);\n box-shadow: 0.1rem 0.1rem 0.25rem var(--mantine-color-dark-9);\n}\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea {\n border: none;\n}\n\n._hidden_sg9gr_22 {\n display: none !important;\n}\n\n._chatControlsContainer_sg9gr_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: center;\n align-self: stretch;\n transition: all 0.75s ease;\n}\n._chatControlsContainer_sg9gr_1._promptMode_sg9gr_34 {\n flex-grow: 1;\n width: 100%;\n min-width: 200px;\n max-width: 600px;\n align-self: center;\n}\n._chatControlsContainer_sg9gr_1 ._promptModeText_sg9gr_41 {\n opacity: 0;\n transition: opacity 0.3s ease-out, transform 0.3s ease-out;\n animation: _promptFadeInUp_sg9gr_1 0.8s ease-out forwards;\n animation-delay: 0.2s;\n background: linear-gradient(90deg, var(--mantine-color-dimmed) 0%, var(--mantine-color-dark-5) 50%, var(--mantine-color-dimmed) 100%);\n background-size: 200% auto;\n background-clip: text;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n animation: _promptFadeInUp_sg9gr_1 0.8s ease-out forwards, _promptShimmer_sg9gr_1 4s ease-in-out 1s infinite;\n}\n@keyframes _promptFadeInUp_sg9gr_1 {\n from {\n opacity: 0;\n transform: translateY(12px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n@keyframes _promptShimmer_sg9gr_1 {\n 0%, 100% {\n background-position: 0% center;\n }\n 50% {\n background-position: 200% center;\n }\n}\n._chatControlsContainer_sg9gr_1 ._headerRow_sg9gr_71 {\n flex: 1;\n padding: 0.5rem 0;\n border-top-left-radius: var(--mantine-radius-md);\n border-top-right-radius: var(--mantine-radius-md);\n}\n\n._chatInputContainer_sg9gr_4 {\n display: flex;\n flex-direction: column;\n justify-items: stretch;\n padding: 0.25rem;\n gap: 0.5rem;\n background-color: var(--mantine-color-body);\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-md);\n box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);\n}\n._chatInputContainer_sg9gr_4 ._documentsInput_sg9gr_89 {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n align-items: stretch;\n}\n._chatInputContainer_sg9gr_4._columned_sg9gr_95 {\n flex-direction: column;\n align-items: flex-start;\n justify-items: stretch;\n}\n._chatInputContainer_sg9gr_4._columned_sg9gr_95 ._chatInputGroup_sg9gr_7 {\n align-self: stretch;\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 {\n position: relative;\n height: 64px;\n border-radius: var(--mantine-radius-md);\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 img {\n max-width: 64px;\n max-height: 64px;\n object-fit: cover;\n border-radius: var(--mantine-radius-md);\n box-shadow: 0.125rem 0.25rem 0.25rem rgba(0, 0, 0, 0.1);\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 ._removeButton_sg9gr_120 {\n position: absolute;\n top: 0.1rem;\n right: 0.1rem;\n border-radius: 50%;\n}\n._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 {\n flex-grow: 1;\n}\n._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea {\n border: none;\n padding: var(--mb-padding, var(--mantine-spacing-xs)) var(--mb-padding, var(--mantine-spacing-sm));\n}\n\n@media (min-width: 480px) {\n ._chatInputContainer_sg9gr_4 {\n flex-direction: row;\n justify-items: flex-start;\n align-items: flex-start;\n padding: 0.5rem;\n gap: 0.5rem;\n }\n ._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 {\n align-self: stretch;\n }\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 /* \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\n[data-mantine-color-scheme=\"light\"] {\n .katechat-messages-container {\n background-color: var(--mantine-color-white);\n box-shadow: 0.1rem 0.1rem 0.25rem var(--app-shell-border-color);\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-messages-container {\n background-color: var(--mantine-color-dark-7);\n border: 1px solid var(--mantine-color-dark-7);\n box-shadow: 0.1rem 0.1rem 0.25rem var(--mantine-color-dark-9);\n }\n}\n"],
5
- "mappings": "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",
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-sm) var(--mantine-spacing-lg);\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-right: var(--mantine-spacing-sm);\n }\n\n .katechat-message-linked-toggle {\n display: none;\n }\n}\n\n.katechat-message-content {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n word-break: normal;\n border-radius: var(--mantine-radius-md);\n margin-top: var(--mantine-spacing-md);\n overflow-x: auto;\n\n p {\n margin-block-start: 0;\n margin-block-end: 0;\n padding-top: var(--mantine-spacing-sm);\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 &.streaming {\n img {\n animation: imagePlaceholderBlur 1000ms ease-in-out infinite alternate;\n pointer-events: none;\n cursor: default;\n }\n }\n\n @keyframes imagePlaceholderBlur {\n 0% {\n filter: blur(1px) grayscale(90%);\n }\n 100% {\n filter: blur(3px) grayscale(90%);\n }\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 border-top: 1px dashed var(--mantine-color-gray-7);\n padding-top: 0.5rem;\n\n p {\n padding: 0;\n }\n\n ol,\n ul {\n margin: 0.25rem 0;\n padding: 0 0 0 1rem;\n }\n\n .message-details-header {\n margin: var(--mantine-spacing-md) 0;\n\n svg {\n color: var(--mantine-color-gray-6);\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: 0.5rem;\n }\n }\n\n .table-controls {\n .table-header-actions {\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n gap: 0.5rem;\n align-items: center;\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 font-size: 90%;\n opacity: 0.8;\n\n &:hover {\n opacity: 1;\n }\n }\n\n .action-btn-label {\n display: none;\n }\n }\n\n table {\n margin-top: var(--mantine-spacing-md);\n margin-bottom: var(--mantine-spacing-md);\n border-spacing: 0;\n table-layout: fixed;\n\n td,\n th {\n padding: var(--mb-padding, var(--mantine-spacing-sm));\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 th.table-sort-btn {\n cursor: pointer;\n user-select: none;\n\n &::after {\n content: \" ⇅\";\n opacity: 0.4;\n font-size: 0.75em;\n }\n\n &.sort-asc::after {\n content: \" ↑\";\n opacity: 1;\n }\n\n &.sort-desc::after {\n content: \" ↓\";\n opacity: 1;\n }\n }\n\n tr td:last-child,\n tr th:last-child {\n border-right: 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 tfoot {\n tr {\n background-color: var(--mantine-color-dark-5);\n }\n\n tr:last-child td {\n border-bottom: 1px solid var(--mantine-color-default-border);\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\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 position: relative;\n border-radius: var(--mantine-radius-md);\n\n &:has(.code-header) {\n padding-top: 3.6rem;\n }\n }\n\n .code-header {\n font-size: 0.875rem;\n padding: var(--mantine-spacing-sm) var(--mantine-spacing-lg) var(--mantine-spacing-sm) var(--mantine-spacing-md);\n border-top-right-radius: var(--mantine-radius-md);\n border-top-left-radius: var(--mantine-radius-md);\n height: 2.7rem;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n z-index: 2;\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 font-family: var(--mantine-font-family);\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 width: 1.5rem;\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 display: flex;\n gap: 0.5rem;\n align-items: center;\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 color: var(--mantine-color-dimmed);\n\n &:hover {\n color: var(--mantine-color-text);\n }\n }\n\n .action-btn-label {\n display: none;\n }\n\n .code-run-btn {\n color: var(--mantine-color-teal-6);\n\n &:hover {\n color: var(--mantine-color-teal-4);\n }\n }\n\n &.collapsed {\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n margin-bottom: 0;\n\n .title {\n .header-toggle {\n transform: translateY(0.2rem) rotateZ(0deg);\n }\n }\n\n .code-copy-btn,\n .code-download-btn,\n .code-run-btn {\n display: none;\n }\n }\n }\n\n .code-block {\n position: relative;\n flex-grow: 1;\n overflow-x: auto;\n padding-top: 2.7rem;\n margin: 0.5rem 0;\n border-radius: var(--mantine-radius-md);\n\n pre {\n margin: 0;\n white-space: pre;\n transition:\n clip-path 0.5s ease,\n height 0.5s ease,\n opacity 0.5s ease;\n }\n\n &.collapsed {\n padding-top: 0.7rem;\n height: 2.7rem;\n pre {\n clip-path: inset(0 0 100% 0);\n overflow-y: hidden;\n height: 0;\n opacity: 0;\n }\n }\n }\n\n .code-data {\n display: none;\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: 1rem 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 .mantine-ActionIcon-root:hover {\n color: var(--mantine-color-brand-5);\n }\n}\n\n.katechat-message-carousel {\n position: relative;\n height: 100%;\n overflow: hidden;\n\n .message-carousel-header {\n position: absolute;\n display: flex;\n justify-content: flex-end;\n top: 0.75rem;\n left: 0;\n width: 100%;\n z-index: 2;\n }\n\n .message-carousel-controls {\n display: flex;\n justify-content: center;\n gap: 1rem;\n }\n\n .carousel-message-content {\n position: relative;\n overflow: hidden;\n\n &.animation-exit-left {\n animation: slideOutLeft 0.3s ease-in-out forwards;\n }\n\n &.animation-exit-right {\n animation: slideOutRight 0.3s ease-in-out forwards;\n }\n\n &.animation-enter-right {\n animation: slideInFromRight 0.3s ease-in-out forwards;\n }\n\n &.animation-enter-left {\n animation: slideInFromLeft 0.3s ease-in-out forwards;\n }\n }\n\n .carousel-model-icons {\n position: absolute;\n display: flex;\n justify-content: center;\n bottom: 0;\n left: 0;\n width: 100%;\n z-index: 2;\n\n div {\n cursor: pointer;\n }\n }\n\n // Carousel slide animations - scoped to this carousel only\n @keyframes slideOutLeft {\n from {\n transform: translateX(0);\n opacity: 1;\n }\n to {\n transform: translateX(-100%);\n opacity: 0;\n }\n }\n\n @keyframes slideOutRight {\n from {\n transform: translateX(0);\n opacity: 1;\n }\n to {\n transform: translateX(100%);\n opacity: 0;\n }\n }\n\n @keyframes slideInFromRight {\n from {\n transform: translateX(100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n }\n\n @keyframes slideInFromLeft {\n from {\n transform: translateX(-100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-dark-8);\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-6);\n .code-header {\n background-color: var(--mantine-color-dark-7);\n &:hover {\n background-color: var(--mantine-color-dark-5);\n }\n }\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-1);\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 .action-btn {\n color: var(--mantine-color-dark-9);\n &:hover {\n color: var(--mantine-color-dark-6);\n }\n }\n\n .code-run-btn {\n color: var(--mantine-color-teal-7);\n\n &:hover {\n color: var(--mantine-color-teal-6);\n }\n }\n }\n\n .table-header {\n .action-btn {\n color: var(--mantine-color-dark-9);\n &:hover {\n color: var(--mantine-color-dark-6);\n }\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-2);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-blue-1);\n }\n\n thead tr,\n tfoot tr {\n background-color: var(--mantine-color-blue-1);\n }\n }\n\n .katechat-message-content-details {\n border-color: var(--mantine-color-gray-5);\n\n .message-details-header svg {\n color: var(--mantine-color-gray-5);\n }\n .message-details-content {\n border-color: var(--mantine-color-gray-5);\n }\n }\n}\n\n@media (min-width: 720px) {\n .katechat-message-content {\n .code-header,\n .table-controls {\n .action-btn-label {\n display: inline-block;\n }\n }\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", "._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}", "._overlay_vjudp_1 {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 5;\n background: var(--mantine-color-dark-7);\n opacity: 0.92;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: all;\n}\n\n._content_vjudp_16 {\n margin: 2rem;\n padding: 5rem;\n border: 2px dashed var(--mantine-color-dark-4);\n border-radius: var(--mantine-radius-md);\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0.5rem;\n pointer-events: none;\n}", "[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4 {\n box-shadow: 0.1rem 0.1rem 0.25rem var(--app-shell-border-color);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea {\n border: none;\n}\n\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-ActionIcon-root,\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Button-root,\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 .mantine-Select-input,\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputContainer_sg9gr_4 {\n border: 1px solid var(--mantine-color-body);\n box-shadow: 0.1rem 0.1rem 0.25rem var(--mantine-color-dark-9);\n}\n[data-mantine-color-scheme=dark] ._chatControlsContainer_sg9gr_1 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea {\n border: none;\n}\n\n._hidden_sg9gr_22 {\n display: none !important;\n}\n\n._chatControlsContainer_sg9gr_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: center;\n align-self: stretch;\n transition: all 0.75s ease;\n}\n._chatControlsContainer_sg9gr_1._promptMode_sg9gr_34 {\n flex-grow: 1;\n width: 100%;\n min-width: 200px;\n max-width: 600px;\n align-self: center;\n}\n._chatControlsContainer_sg9gr_1 ._promptModeText_sg9gr_41 {\n opacity: 0;\n transition: opacity 0.3s ease-out, transform 0.3s ease-out;\n animation: _promptFadeInUp_sg9gr_1 0.8s ease-out forwards;\n animation-delay: 0.2s;\n background: linear-gradient(90deg, var(--mantine-color-dimmed) 0%, var(--mantine-color-dark-5) 50%, var(--mantine-color-dimmed) 100%);\n background-size: 200% auto;\n background-clip: text;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n animation: _promptFadeInUp_sg9gr_1 0.8s ease-out forwards, _promptShimmer_sg9gr_1 4s ease-in-out 1s infinite;\n}\n@keyframes _promptFadeInUp_sg9gr_1 {\n from {\n opacity: 0;\n transform: translateY(12px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n@keyframes _promptShimmer_sg9gr_1 {\n 0%, 100% {\n background-position: 0% center;\n }\n 50% {\n background-position: 200% center;\n }\n}\n._chatControlsContainer_sg9gr_1 ._headerRow_sg9gr_71 {\n flex: 1;\n padding: 0.5rem 0;\n border-top-left-radius: var(--mantine-radius-md);\n border-top-right-radius: var(--mantine-radius-md);\n}\n\n._chatInputContainer_sg9gr_4 {\n display: flex;\n flex-direction: column;\n justify-items: stretch;\n padding: 0.25rem;\n gap: 0.5rem;\n background-color: var(--mantine-color-body);\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-md);\n box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);\n}\n._chatInputContainer_sg9gr_4 ._documentsInput_sg9gr_89 {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n align-items: stretch;\n}\n._chatInputContainer_sg9gr_4._columned_sg9gr_95 {\n flex-direction: column;\n align-items: flex-start;\n justify-items: stretch;\n}\n._chatInputContainer_sg9gr_4._columned_sg9gr_95 ._chatInputGroup_sg9gr_7 {\n align-self: stretch;\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 {\n position: relative;\n height: 64px;\n border-radius: var(--mantine-radius-md);\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 img {\n max-width: 64px;\n max-height: 64px;\n object-fit: cover;\n border-radius: var(--mantine-radius-md);\n box-shadow: 0.125rem 0.25rem 0.25rem rgba(0, 0, 0, 0.1);\n}\n._chatInputContainer_sg9gr_4 ._imagesList_sg9gr_103 ._previewImage_sg9gr_108 ._removeButton_sg9gr_120 {\n position: absolute;\n top: 0.1rem;\n right: 0.1rem;\n border-radius: 50%;\n}\n._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 {\n flex-grow: 1;\n}\n._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 ._chatInput_sg9gr_4 textarea {\n border: none;\n padding: var(--mb-padding, var(--mantine-spacing-xs)) var(--mb-padding, var(--mantine-spacing-sm));\n}\n\n@media (min-width: 480px) {\n ._chatInputContainer_sg9gr_4 {\n flex-direction: row;\n justify-items: flex-start;\n align-items: flex-start;\n padding: 0.5rem;\n gap: 0.5rem;\n }\n ._chatInputContainer_sg9gr_4 ._chatInputGroup_sg9gr_7 {\n align-self: stretch;\n }\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 /* \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\n[data-mantine-color-scheme=\"light\"] {\n .katechat-messages-container {\n background-color: var(--mantine-color-white);\n box-shadow: 0.1rem 0.1rem 0.25rem var(--app-shell-border-color);\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-messages-container {\n background-color: var(--mantine-color-dark-7);\n border: 1px solid var(--mantine-color-dark-7);\n box-shadow: 0.1rem 0.1rem 0.25rem var(--mantine-color-dark-9);\n }\n}\n"],
5
+ "mappings": "mDAAA,CAAA,iBACE,MAAA,KACA,WAAA,OACA,QAAA,KACA,eAAA,IAEA,CANF,iBAME,CAAA,sBAAA,CANF,iBAME,CAAA,wBAEE,QAAA,IAAA,sBAAA,IAAA,sBACA,UAAA,EACA,MAAA,IACA,QAAA,KACA,eAAA,OACA,cAAA,IAAA,qBAGF,CAhBF,iBAgBE,CAVA,wBAWE,aAAA,IAAA,sBAGF,CApBF,iBAoBE,CAAA,+BACE,QAAA,KAIJ,CAAA,yBACE,QAAA,KACA,eAAA,OACA,YAAA,QACA,WAAA,OACA,cAAA,IAAA,qBACA,WAAA,IAAA,sBACA,WAAA,KAEA,CATF,yBASE,EACE,mBAAA,EACA,iBAAA,EACA,YAAA,IAAA,sBAGF,CAfF,yBAeE,WACE,QAAA,EAAA,IAAA,YAAA,EAAA,IAAA,uBACA,YAAA,MAAA,MAAA,IAAA,uCACA,OAAA,EAGF,CArBF,yBAqBE,GACE,MAAA,YACA,MAAA,EAAA,OACA,OAAA,KACA,WAAA,IAAA,MAAA,IAAA,gCAGF,CA5BF,yBA4BE,GAAA,CA5BF,yBA4BE,UAEE,OAAA,EAAA,OAAA,cACA,EAAA,EAAA,EAAA,OAGF,CAlCF,yBAkCE,IACE,UAAA,MACA,WAAA,MACA,WAAA,OACA,OAAA,YACA,MACA,eAAA,IACA,OAAA,QAIA,CA7CJ,wBA6CI,CAAA,UAAA,IACE,UAAA,qBAAA,GAAA,YAAA,SAAA,UACA,eAAA,KACA,OAAA,QAIJ,WANI,qBAOF,GACE,OAAA,KAAA,KAAA,UAAA,KAEF,GACE,OAAA,KAAA,KAAA,UAAA,MAIJ,CA7DF,wBA6DE,CAAA,yBACE,OAAA,MACA,QAAA,IAAA,YAAA,EAAA,IAAA,uBAAA,EAAA,EAAA,EACA,UAAA,IAEA,CAlEJ,wBAkEI,CALF,yBAKE,IACE,UAAA,IACA,OAAA,KAIJ,CAxEF,yBAwEE,CAAA,iCACE,WAAA,KACA,UAAA,IACA,QAAA,KACA,eAAA,OACA,IAAA,EACA,WAAA,IAAA,OAAA,IAAA,wBACA,YAAA,MAEA,CAjFJ,yBAiFI,CATF,iCASE,UACE,EAGF,CArFJ,yBAqFI,CAbF,iCAaE,GAAA,CArFJ,yBAqFI,CAbF,iCAaE,UAEE,OAAA,UACA,EAAA,EAAA,EAAA,KAGF,CA3FJ,yBA2FI,CAnBF,iCAmBE,CAAA,uBACE,OAAA,IAAA,sBAAA,EAEA,CA9FN,yBA8FM,CAtBJ,iCAsBI,CAHF,uBAGE,IACE,MAAA,IAAA,wBAIJ,CAnGJ,yBAmGI,CA3BF,iCA2BE,CAAA,wBACE,aAAA,IAAA,sBACA,YAAA,IAAA,MAAA,IAAA,wBACA,YAAA,MAKF,CA3GJ,yBA2GI,CAAA,eAAA,CAAA,qBACE,QAAA,KACA,eAAA,IACA,gBAAA,SACA,IAAA,MACA,YAAA,OAGF,CAnHJ,yBAmHI,CARA,eAQA,CAAA,mBACE,MACA,YAAA,EACA,QAAA,KACA,gBAAA,OACA,YAAA,OACA,MAAA,YACA,IAAA,OACA,OAAA,QACA,UAAA,IACA,QAAA,GAEA,CA/HN,yBA+HM,CApBF,eAoBE,CAZF,UAYE,OACE,QAAA,EAIJ,CApIJ,yBAoII,CAzBA,eAyBA,CAAA,iBACE,QAAA,KAIJ,CAzIF,yBAyIE,MACE,WAAA,IAAA,sBACA,cAAA,IAAA,sBACA,eAAA,EACA,aAAA,MAEA,CA/IJ,yBA+II,MAAA,GAAA,CA/IJ,yBA+II,MAAA,GAEE,QAAA,IAAA,YAAA,EAAA,IAAA,8BACA,EACA,WAAA,IAAA,MAAA,IAAA,gCACA,YAAA,IAAA,MAAA,IAAA,gCAGF,CAvJJ,yBAuJI,MAAA,EAAA,CAAA,eACE,OAAA,QACA,YAAA,KAEA,CA3JN,yBA2JM,MAAA,EAAA,CAJF,cAIE,OACE,QAAA,SACA,QAAA,GACA,UAAA,MAGF,CAjKN,yBAiKM,MAAA,EAAA,CAVF,cAUE,CAAA,QAAA,OACE,QAAA,SACA,QAAA,EAGF,CAtKN,yBAsKM,MAAA,EAAA,CAfF,cAeE,CAAA,SAAA,OACE,QAAA,SACA,QAAA,EAIJ,CA5KJ,yBA4KI,MAAA,GAAA,EAAA,YAAA,CA5KJ,yBA4KI,MAAA,GAAA,EAAA,YAEE,aAAA,IAAA,MAAA,IAAA,gCAGF,CAjLJ,yBAiLI,MAAA,EAAA,eACE,iBAAA,IAAA,wBAIA,CAtLN,yBAsLM,MAAA,MAAA,GACE,iBAAA,IAAA,wBAGF,CA1LN,yBA0LM,MAAA,MAAA,EAAA,aAAA,EAAA,aACE,uBAAA,IAAA,qBAEF,CA7LN,yBA6LM,MAAA,MAAA,EAAA,aAAA,EAAA,YACE,wBAAA,IAAA,qBAKF,CAnMN,yBAmMM,MAAA,MAAA,GACE,iBAAA,IAAA,wBAGF,CAvMN,yBAuMM,MAAA,MAAA,EAAA,YAAA,GACE,cAAA,IAAA,MAAA,IAAA,gCAEF,CA1MN,yBA0MM,MAAA,MAAA,EAAA,YAAA,EAAA,aACE,0BAAA,IAAA,qBAEF,CA7MN,yBA6MM,MAAA,MAAA,EAAA,YAAA,EAAA,YACE,2BAAA,IAAA,qBAKN,CAnNF,yBAmNE,WACE,MAAA,UACA,IACA,UAAA,KACA,UAAA,IACA,WAAA,IAAA,IAAA,sBAAA,KACA,YAAA,IAAA,yBACA,WAAA,KACA,SAAA,SACA,cAAA,IAAA,qBAEA,CA9NJ,yBA8NI,GAAA,KAAA,CAAA,aACE,YAAA,OAIJ,CAnOF,yBAmOE,CALE,YAMA,UAAA,QACA,QAAA,IAAA,sBAAA,IAAA,sBAAA,IAAA,sBAAA,IAAA,sBACA,wBAAA,IAAA,qBACA,uBAAA,IAAA,qBACA,OAAA,OACA,SAAA,SACA,IAAA,EACA,KAAA,EACA,MAAA,EACA,QAAA,EAEA,QAAA,KACA,gBAAA,cACA,YAAA,OACA,eAAA,IACA,YAAA,OACA,IAAA,MAEA,CAtPJ,yBAsPI,CAxBA,YAwBA,CAAA,MACE,MAAA,YACA,YAAA,IACA,YAAA,IAAA,uBACA,QAAA,KACA,YAAA,OACA,eAAA,IACA,OAAA,QACA,YAAA,KACA,WAAA,KAEA,CAjQN,yBAiQM,CAnCF,YAmCE,CAXF,MAWE,CAAA,cACE,MAAA,OACA,aAAA,MACA,QAAA,KACA,QAAA,aACA,UAAA,OAAA,OACA,WAAA,UAAA,IAAA,sBAAA,KAIJ,CA3QJ,yBA2QI,CA7CA,YA6CA,CAAA,oBACE,cAAA,SACA,QAAA,KACA,IAAA,MACA,YAAA,OAGF,CAlRJ,yBAkRI,CApDA,YAoDA,CA/JA,mBAgKE,MACA,YAAA,EACA,QAAA,KACA,gBAAA,OACA,YAAA,OACA,MAAA,YACA,IAAA,OACA,OAAA,QACA,MAAA,IAAA,wBAEA,CA7RN,yBA6RM,CA/DF,YA+DE,CA1KF,UA0KE,OACE,MAAA,IAAA,sBAIJ,CAlSJ,yBAkSI,CApEA,YAoEA,CA9JA,iBA+JE,QAAA,KAGF,CAtSJ,yBAsSI,CAxEA,YAwEA,CAAA,aACE,MAAA,IAAA,wBAEA,CAzSN,yBAySM,CA3EF,YA2EE,CAHF,YAGE,OACE,MAAA,IAAA,wBAIJ,CA9SJ,yBA8SI,CAhFA,WAgFA,CAAA,UACE,2BAAA,MACA,0BAAA,MACA,cAAA,EAGE,CApTR,yBAoTQ,CAtFJ,WAsFI,CANJ,UAMI,CA9DJ,MA8DI,CAnDF,cAoDI,UAAA,WAAA,OAAA,OAAA,GAIJ,CAzTN,yBAyTM,CA3FF,WA2FE,CAXF,UAWE,CAAA,cAAA,CAzTN,yBAyTM,CA3FF,WA2FE,CAXF,UAWE,CAAA,kBAAA,CAzTN,yBAyTM,CA3FF,WA2FE,CAXF,UAWE,CAnBF,aAsBI,QAAA,KAKN,CAjUF,yBAiUE,CAAA,WACE,SAAA,SACA,UAAA,EACA,WAAA,KACA,YAAA,cACA,MAAA,EACA,cAAA,IAAA,qBAEA,CAzUJ,yBAyUI,CARF,WAQE,WACE,EACA,YAAA,IACA,WACE,UAAA,IAAA,IAAA,CAAA,OAAA,IAAA,IAAA,CAAA,QAAA,IAAA,KAKJ,CAlVJ,yBAkVI,CAjBF,UAiBE,CApCA,UAqCE,YAAA,MACA,OAAA,OACA,CArVN,yBAqVM,CApBJ,UAoBI,CAvCF,UAuCE,IACE,UAAA,MAAA,EAAA,EAAA,KAAA,GACA,WAAA,OACA,OAAA,EACA,QAAA,EAKN,CA9VF,yBA8VE,CAAA,UACE,QAAA,KAGF,CAlWF,yBAkWE,CAAA,WACE,QAAA,oBACA,MAAA,MAAA,EAAA,EAIJ,CAAA,wBACE,QAAA,KACA,eAAA,IACA,YAAA,OACA,IAAA,cACA,KAAA,EAAA,EACA,QAAA,GACA,WAAA,QAAA,IAAA,sBAAA,KAEA,CATF,wBASE,CAAA,WACE,QAAA,KAGF,CAbF,uBAaE,OACE,QAAA,EAGF,CAjBF,wBAiBE,CAAA,uBAAA,OACE,MAAA,IAAA,yBAIJ,CAAA,0BACE,SAAA,SACA,OAAA,KACA,SAAA,OAEA,CALF,0BAKE,CAAA,wBACE,SAAA,SACA,QAAA,KACA,gBAAA,SACA,IAAA,OACA,KAAA,EACA,MAAA,KACA,QAAA,EAGF,CAfF,0BAeE,CAAA,0BACE,QAAA,KACA,gBAAA,OACA,IAAA,KAGF,CArBF,0BAqBE,CAAA,yBACE,SAAA,SACA,SAAA,OAEA,CAzBJ,0BAyBI,CAJF,wBAIE,CAAA,oBACE,UAAA,aAAA,IAAA,YAAA,SAGF,CA7BJ,0BA6BI,CARF,wBAQE,CAAA,qBACE,UAAA,cAAA,IAAA,YAAA,SAGF,CAjCJ,0BAiCI,CAZF,wBAYE,CAAA,sBACE,UAAA,iBAAA,IAAA,YAAA,SAGF,CArCJ,0BAqCI,CAhBF,wBAgBE,CAAA,qBACE,UAAA,gBAAA,IAAA,YAAA,SAIJ,CA1CF,0BA0CE,CAAA,qBACE,SAAA,SACA,QAAA,KACA,gBAAA,OACA,OAAA,EACA,KAAA,EACA,MAAA,KACA,QAAA,EAEA,CAnDJ,0BAmDI,CATF,qBASE,IACE,OAAA,QAKJ,WA/BI,aAgCF,GACE,UAAA,UAAA,GACA,QAAA,EAEF,GACE,UAAA,UAAA,OACA,QAAA,GAIJ,WAtCI,cAuCF,GACE,UAAA,UAAA,GACA,QAAA,EAEF,GACE,UAAA,UAAA,MACA,QAAA,GAIJ,WA7CI,iBA8CF,GACE,UAAA,UAAA,MACA,QAAA,EAEF,GACE,UAAA,UAAA,GACA,QAAA,GAIJ,WApDI,gBAqDF,GACE,UAAA,UAAA,OACA,QAAA,EAEF,GACE,UAAA,UAAA,GACA,QAAA,GAOF,CAAA,gCAAA,CA/fJ,iBA+fI,CArKF,WAqKE,CAAA,gCAAA,CA/fJ,iBA+fI,IAEE,iBAAA,IAAA,wBAGF,CAAA,gCAAA,CApgBJ,iBAogBI,CA7QA,YA8QE,iBAAA,IAAA,wBACA,CAAA,gCAAA,CAtgBN,iBAsgBM,CA/QF,WA+QE,OACE,iBAAA,IAAA,wBAIJ,CAAA,gCAAA,CA3gBJ,gBA2gBI,CAAA,uBACE,iBAAA,IAAA,wBACA,WAAA,IAAA,MAAA,IAAA,wBACA,cAAA,IAAA,MAAA,IAAA,wBAIA,CAAA,gCAAA,CAlhBN,gBAkhBM,CAAA,wBAAA,CAzfN,yBA0fQ,MAAA,IAAA,0BAIJ,CAAA,gCAAA,CAvhBJ,iBAuhBI,CAjhBF,wBAkhBI,iBAAA,IAAA,wBACA,CAAA,gCAAA,CAzhBN,iBAyhBM,CAnhBJ,wBAmhBI,CAlSF,YAmSI,iBAAA,IAAA,wBACA,CAAA,gCAAA,CA3hBR,iBA2hBQ,CArhBN,wBAqhBM,CApSJ,WAoSI,OACE,iBAAA,IAAA,wBASN,CAAA,iCAAA,CAriBJ,iBAqiBI,CA3MF,WA2ME,CAAA,iCAAA,CAriBJ,iBAqiBI,IAEE,iBAAA,IAAA,wBAGF,CAAA,iCAAA,CA1iBJ,iBA0iBI,CAnTA,YAoTE,iBAAA,IAAA,wBACA,CAAA,iCAAA,CA5iBN,iBA4iBM,CArTF,WAqTE,OACE,iBAAA,IAAA,wBAGF,CAAA,iCAAA,CAhjBN,iBAgjBM,CAzTF,YAyTE,CApaF,WAqaI,MAAA,IAAA,wBACA,CAAA,iCAAA,CAljBR,iBAkjBQ,CA3TJ,YA2TI,CAtaJ,UAsaI,OACE,MAAA,IAAA,wBAIJ,CAAA,iCAAA,CAvjBN,iBAujBM,CAhUF,YAgUE,CAxPF,aAyPI,MAAA,IAAA,wBAEA,CAAA,iCAAA,CA1jBR,iBA0jBQ,CAnUJ,YAmUI,CA3PJ,YA2PI,OACE,MAAA,IAAA,wBAMJ,CAAA,iCAAA,CAjkBN,iBAikBM,CAAA,aAAA,CArbF,WAsbI,MAAA,IAAA,wBACA,CAAA,iCAAA,CAnkBR,iBAmkBQ,CAFF,aAEE,CAvbJ,UAubI,OACE,MAAA,IAAA,wBAKN,CAAA,iCAAA,CAzkBJ,gBAykBI,CA9DA,uBA+DE,iBAAA,IAAA,wBACA,WAAA,IAAA,MAAA,IAAA,wBACA,cAAA,IAAA,MAAA,IAAA,wBAIA,CAAA,iCAAA,CAhlBN,gBAglBM,CA9DA,wBA8DA,CAvjBN,yBAwjBQ,MAAA,IAAA,uBAIJ,CAAA,iCAAA,CArlBJ,iBAqlBI,CA/kBF,wBAglBI,iBAAA,IAAA,wBAGF,CAAA,iCAAA,CAzlBJ,iBAylBI,EAAA,eACE,iBAAA,IAAA,wBAGF,CAAA,iCAAA,CA7lBJ,iBA6lBI,MAAA,GAAA,CAAA,iCAAA,CA7lBJ,iBA6lBI,MAAA,GAEE,iBAAA,IAAA,wBAIJ,CAAA,iCAAA,CAlgBA,iCAmgBE,aAAA,IAAA,wBAEA,CAAA,iCAAA,CArgBF,iCAqgBE,CAlfA,uBAkfA,IACE,MAAA,IAAA,wBAEF,CAAA,iCAAA,CAxgBF,iCAwgBE,CA7eA,wBA8eE,aAAA,IAAA,wBAKN,OAAA,CAAA,SAAA,EAAA,OAIM,CA1lBN,yBA0lBM,CA5XF,YA4XE,CAtdF,iBAsdE,CA1lBN,yBA0lBM,CA/eF,eA+eE,CAtdF,iBAudI,QAAA,cAMR,OAAA,CAAA,SAAA,EAAA,QACE,CA3nBF,iBA4nBI,eAAA,OACA,SAAA,SAEA,CA/nBJ,iBA+nBI,CA3mBF,+BA4mBI,SAAA,SACA,MAAA,MACA,IAAA,MACA,QAAA,KACA,QAAA,EAGF,CAvoBJ,iBAuoBI,CAjoBF,sBAioBE,CAvoBJ,iBAuoBI,CAjoBF,wBAmoBI,MAAA,YACA,gBACA,EAGF,CA9oBJ,iBA8oBI,CAAA,OACE,QAAA,MC/oBN,CAAC,kBACC,OAAQ,OACV,CACA,CAHC,iBAGiB,OAIlB,CAAC,kBAHC,MAAO,IAAI,wBACb,CAMA,CAAC,mBACC,MAAO,IAAI,wBACX,OAAQ,WACV,CCdA,CAAC,iBACC,SAAU,SACV,MAAK,EAIL,QAAS,EACT,WAAY,IAAI,wBAChB,QAAS,IACT,QAAS,KACT,YAAa,OACb,gBAAiB,OACjB,eAAgB,GAClB,CAEA,CAAC,kBAfD,OAgBU,KAhBV,QAiBW,KACT,OAAQ,IAAI,OAAO,IAAI,wBACvB,cAAe,IAAI,qBACnB,QAAS,KACT,eAAgB,OAChB,YAAa,OACb,IAAK,MACL,eAAgB,IAClB,CCzBA,CAAC,iCAAiC,CAAC,+BAA+B,CAAC,wBACnE,CAAC,iCAAiC,CADC,+BAC+B,CAAC,oBACnE,CAAC,iCAAiC,CAFC,+BAE+B,CAAC,qBACnE,CAAC,iCAAiC,CAHC,+BAG+B,CAAC,4BACjE,WAAY,MAAO,MAAO,OAAQ,IAAI,yBACxC,CACA,CAAC,iCAAiC,CANC,+BAM+B,CAAC,wBAAwB,CAAC,mBAAmB,SAC7G,OAAQ,IACV,CAEA,CAAC,gCAAgC,CAVE,+BAU8B,CAVE,wBAWnE,CAAC,gCAAgC,CAXE,+BAW8B,CAVE,oBAWnE,CAAC,gCAAgC,CAZE,+BAY8B,CAVE,qBAWnE,CAAC,gCAAgC,CAbE,+BAa8B,CAVE,4BAWjE,OAAQ,IAAI,MAAM,IAAI,sBACtB,WAAY,MAAO,MAAO,OAAQ,IAAI,uBACxC,CACA,CAAC,gCAAgC,CAjBE,+BAiB8B,CAXE,wBAWuB,CAXE,mBAWkB,SAC5G,OAAQ,IACV,CAEA,CAAC,iBACC,QAAS,cACX,CAEA,CAzBmC,+BA0BjC,QAAS,KACT,eAAgB,OAChB,YAAa,QACb,gBAAiB,OACjB,WAAY,QACZ,WAAY,IAAI,KAAM,IACxB,CACA,CAjCmC,8BAiCJ,CAAC,qBAC9B,UAAW,EACX,MAAO,KACP,UAAW,MACX,UAAW,MACX,WAAY,MACd,CACA,CAxCmC,+BAwCH,CAAC,yBAC/B,QAAS,EACT,WAAY,QAAQ,IAAK,QAAQ,CAAE,UAAU,IAAK,SAClD,UAAW,wBAAwB,IAAK,SAAS,SACjD,gBAAiB,IACjB,WAAY,gBAAgB,KAAK,CAAE,IAAI,wBAAwB,EAAE,CAAE,IAAI,wBAAwB,GAAG,CAAE,IAAI,wBAAwB,MAChI,gBAAiB,KAAK,KACtB,gBAAiB,KACjB,wBAAyB,KACzB,wBAAyB,YACzB,UAAW,wBAAwB,IAAK,SAAS,QAAQ,CAAE,uBAAuB,GAAG,YAAY,GAAG,QACtG,CACA,WATa,wBAUX,GACE,QAAS,EACT,UAAW,WAAW,KACxB,CACA,GACE,QAAS,EACT,UAAW,WAAW,EACxB,CACF,CACA,WAZ6D,uBAa3D,MACE,oBAAqB,GAAG,MAC1B,CACA,IACE,oBAAqB,KAAK,MAC5B,CACF,CACA,CAtEmC,+BAsEH,CAAC,oBAC/B,KAAM,EAvER,QAwEW,MAAO,EAChB,uBAAwB,IAAI,qBAC5B,wBAAyB,IAAI,oBAC/B,CAEA,CA1EmE,4BA2EjE,QAAS,KACT,eAAgB,OAChB,cAAe,QAhFjB,QAiFW,OACT,IAAK,MACL,iBAAkB,IAAI,sBACtB,OAAQ,IAAI,MAAM,IAAI,0BACtB,cAAe,IAAI,qBACnB,WAAY,EAAE,OAAQ,OAAQ,SAChC,CACA,CArFmE,4BAqFtC,CAAC,yBAC5B,QAAS,KACT,eAAgB,IAChB,IAAK,OACL,YAAa,OACf,CACA,CA3FmE,2BA2FvC,CAAC,mBAC3B,eAAgB,OAChB,YAAa,WACb,cAAe,OACjB,CACA,CAhGmE,2BAgGvC,CALC,mBAKmB,CA7FmB,wBA8FjE,WAAY,OACd,CACA,CAnGmE,4BAmGtC,CAAC,sBAC5B,QAAS,KACT,eAAgB,IAChB,IAAK,KACP,CACA,CAxGmE,4BAwGtC,CALC,sBAKsB,CAAC,wBACnD,SAAU,SACV,OAAQ,KACR,cAAe,IAAI,oBACrB,CACA,CA7GmE,4BA6GtC,CAVC,sBAUsB,CALC,wBAKwB,IAC3E,UAAW,KACX,WAAY,KACZ,WAAY,MACZ,cAAe,IAAI,qBACnB,WAAY,QAAS,OAAQ,OAAQ,SACvC,CACA,CApHmE,4BAoHtC,CAjBC,sBAiBsB,CAZC,wBAYwB,CAAC,wBAC5E,SAAU,SACV,IAAK,MACL,MAAO,MA1HT,cA2HiB,GACjB,CACA,CA1HmE,4BA0HtC,CAvHsC,wBAwHjE,UAAW,EACX,QAAS,KACT,eAAgB,IAChB,IAAK,KACP,CACA,CAhImE,4BAgItC,CA7HsC,wBA6Hb,CA7HsC,mBA8H1F,UAAW,CACb,CACA,CAnImE,4BAmItC,CAhIsC,wBAgIb,CAhIsC,mBAgIlB,SACxE,OAAQ,KACR,QAAS,IAAI,YAAY,EAAE,IAAI,uBAAuB,IAAI,YAAY,EAAE,IAAI,sBAC9E,CAEA,OAAO,CAAC,SAAS,EAAE,OACjB,CAzIiE,4BA0I/D,eAAgB,IAChB,cAAe,WACf,YAAa,WA/IjB,QAgJa,MACT,IAAK,KACP,CACA,CAhJiE,4BAgJpC,CA7IoC,wBA8I/D,WAAY,OACd,CACF,CCpJA,CAAA,4BACE,UAAA,EACA,SAAA,SACA,QAAA,KACA,eAAA,OACA,OAAA,IAAA,MAAA,IAAA,0BACA,cAAA,IAAA,qBAQA,WAAA,OACA,QAAA,EACA,WAAA,IAAA,IAAA,KAEA,CAlBF,4BAkBE,CAAA,uBACE,QAAA,EACA,cAAA,KAGF,CAvBF,2BAuBE,CAAA,iBACE,UAAA,EACA,QAAA,EAGF,CA5BF,4BA4BE,CAAA,qCACE,WAAA,OACA,UAAA,EAGF,CAjCF,2BAiCE,CAAA,0BAKE,QAAA,KAJA,CAlCJ,2BAkCI,CADF,0BACE,CAAA,SACE,gBAAA,OAKF,CAxCJ,2BAwCI,CAPF,0BAOE,CAtBF,uBAuBI,QAAA,EAIJ,CA7CF,4BA6CE,CAAA,gBAAA,aACE,WAAA,KAEF,CAhDF,4BAgDE,CAHA,gBAGA,YACE,cAAA,KAIJ,CAAA,0BACE,SAAA,SACA,MAAA,KACA,KAAA,KAAA,IAAA,EAAA,MACA,OAAA,EACA,OAAA,KACA,QAAA,EACA,QAAA,KACA,eAAA,OACA,cAAA,OACA,YAAA,OACA,QAAA,EACA,WAAA,IAAA,IAAA,KAEA,CAdF,yBAcE,CAAA,mBACE,QAAA,EAGF,CAlBF,0BAkBE,CAAA,gBACE,iBAAA,IAAA,sBA1EI,cA2EJ,IACA,OAAA,KACA,MAAA,KACA,QAAA,IACA,OAAA,QAEA,CA1BJ,0BA0BI,CARF,eAQE,OACE,QAAA,EAMJ,CAAA,iCAAA,CAtFF,4BAuFI,iBAAA,IAAA,uBACA,WAAA,MAAA,MAAA,OAAA,IAAA,0BAKF,CAAA,gCAAA,CA7FF,4BA8FI,iBAAA,IAAA,wBACA,OAAA,IAAA,MAAA,IAAA,wBACA,WAAA,MAAA,MAAA,OAAA,IAAA",
6
6
  "names": []
7
7
  }
package/dist/esm/index.js CHANGED
@@ -447,8 +447,8 @@ $$${n}$$`):""}function Rs(e,t=!1){return e?t?[bk.parse(e,{renderer:Mr})]:(e=hk(e
447
447
  <path d="M6 4v16a1 1 0 0 0 1.524 .852l13 -8a1 1 0 0 0 0 -1.704l-13 -8a1 1 0 0 0 -1.524 .852z" />
448
448
  </svg>
449
449
  <span class="action-btn-label">${ce.label}</span>
450
- </div>`:"";it.innerHTML=he.replaceAll("<LANG>",Ne).replace("<EXECUTE_BTN>",et).replace("<DOWNLOAD_TITLE>",z).replace("<COPY_TITLE>",Z),Ke.appendChild(it),Te.parentNode?.insertBefore(Ke,Te),Ke.appendChild(Te)}}),V.current.querySelectorAll("img").forEach(Te=>{if(!Te?.classList?.contains("message-image")){Te.classList.add("message-image");let it=Te.src.split("/").pop()||"";Te.setAttribute("data-file-name",it)}}),V.current.querySelectorAll("table").forEach(Te=>{if(!Te?.classList?.contains("message-table")){if(Te.classList.add("message-table"),!Te.tFoot){let Ne=document.createElement("tfoot");Te.appendChild(Ne);let Ke=document.createElement("tr");Ke.className="table-controls-row",Ne.appendChild(Ke);let ce=document.createElement("th");ce.classList.add("table-controls"),ce.colSpan=Te.querySelectorAll("th").length||1,Ke.appendChild(ce)}let it=Te.querySelector("tfoot tr .table-controls");it.innerHTML=Se.replace("<COPY_CSV_TITLE>",J).replace("<DOWNLOAD_CSV_TITLE>",ae);let Ve=0;Te.querySelectorAll("th").forEach(Ne=>{Ne.classList.contains("table-controls")||(Ne.classList.add("table-sort-btn"),Ne.setAttribute("data-col-index",String(Ve++)))})}}))},Ii+10),[z,Z,J,ae,d]);vv(()=>{if(!k&&V.current){let Te=new MutationObserver(pe);return Te.observe(V.current,{childList:!0,subtree:!0}),pe(),()=>Te.disconnect()}},[u,k,pe]);let Ce=()=>le(Te=>!Te),Ue=_r(()=>s?s(t):null,[s,t]),Ge=_r(()=>{let Te=o?o(t):null,it=l?.find(Ve=>Ve.modelId===t?.modelId);return ve.createElement(ve.Fragment,null,ve.createElement(fd,{align:"center",pt:"sm"},ve.createElement(Dk,{color:"gray",radius:"xl",size:"md",src:xe?t?.user?.avatarUrl:void 0},xe?ve.createElement(Uk,null):it?ve.createElement(Ai,{apiProvider:it.apiProvider,provider:it.provider}):ve.createElement(Rv,null)),ve.createElement(fd,{gap:"sm"},ve.createElement(Sd,{size:"sm",fw:500,c:xe?"blue":"teal"},be),ve.createElement(Sd,{size:"sm",c:"dimmed"},ge),Y&&ve.createElement(Do,{status:Y}),U&&Y!=="reasoning"&&ve.createElement(Sd,{size:"sm",c:"dimmed"},U))),ve.createElement("div",{className:["katechat-message-content",k?"streaming":""].join(" ")},ve.createElement(Ri,{status:Y,content:v,statusInfo:U,streaming:k}),R?R.map((Ve,Ne)=>ve.createElement("div",{key:Ne,dangerouslySetInnerHTML:{__html:Ve}})):ve.createElement("div",null,v),ve.createElement("div",{className:"katechat-message-footer"},ve.createElement(wo,{messageId:p,messageIndex:n}),Ue&&ve.createElement(Cv,{label:$("Details"),position:"top",withArrow:!0},ve.createElement(bd,{className:"edit-message-btn","data-message-id":p,size:"sm",variant:"subtle",color:"gray",disabled:a,onClick:Ce},Q?ve.createElement(Fk,null):ve.createElement(Bk,null))),Te),ve.createElement(Mk,{in:Q},ve.createElement("div",{className:"katechat-message-content-details"},Ue))))},[u,be,ge,v,R,p,E,b,l,n,G,Ue,Q,k,ie.language]),[ze,lt]=ve.useState(0),[Et,ct]=ve.useState("idle"),[Ot,vt]=ve.useState(!1);vv(()=>{if(!D||D.length===0)return;let Te=D.findIndex(it=>it.streaming);Te>=0&&lt(Te)},[D]);let Kt=_r(()=>!D||D.length===0?[]:D.map(Te=>ve.createElement(Td,{key:Te.id,message:Te,parentIndex:n,index:ze,models:l,plugins:o?.(Te)})),[D,l,n,ie.language]),Ct=_r(()=>{if(!D||D.length===0)return null;let Te=D.length,it=Ke=>{Ke.stopPropagation(),!Ot&&(vt(!0),ct("exit-right"),setTimeout(()=>{lt(ce=>(ce-1+Te)%Te),ct("enter-left"),setTimeout(()=>{ct("idle"),vt(!1)},Ii)},Ii))},Ve=Ke=>{Ke.stopPropagation(),!Ot&&(vt(!0),ct("exit-left"),setTimeout(()=>{lt(ce=>(ce+1)%Te),ct("enter-right"),setTimeout(()=>{ct("idle"),vt(!1)},Ii)},Ii))},Ne=Kt[ze];return ve.createElement("div",{className:"katechat-message-carousel"},ve.createElement("div",{className:"message-carousel-header"},ve.createElement("div",{className:"message-carousel-controls"},Te>1&&ve.createElement(ve.Fragment,null,ve.createElement(bd,{onClick:it,"aria-label":"Previous",radius:"xl",variant:"light"},ve.createElement(kk,null)),ve.createElement(bd,{onClick:Ve,"aria-label":"Next",radius:"xl",variant:"light"},ve.createElement(Pk,null))))),ve.createElement("div",{className:`carousel-message-content animation-${Et}`},Ne),Te>1&&ve.createElement(fd,{className:"carousel-model-icons"},D.map((Ke,ce)=>{let et=l?.find(qe=>qe.modelId===Ke.modelId),dt=ce===ze;return ve.createElement(Cv,{key:Ke.id,label:et?.name||$("AI"),position:"top"},ve.createElement(Lk,{key:Ke.id,c:dt?void 0:"dimmed",onClick:()=>lt(ce)},et?ve.createElement(Ai,{apiProvider:et.apiProvider,provider:et.provider,size:20}):ve.createElement(Rv,{size:20})))})))},[Kt,ie.language,ze,Et,Ot]);return Ct?ve.createElement("div",{className:["katechat-message",`katechat-message__${u||""}`].join(" "),ref:V},ve.createElement("div",{className:"katechat-message-linked-toggle"},ve.createElement(wk,{checked:W,onChange:Te=>te(Te.currentTarget.checked),label:$(W?"Main":"Others"),size:"sm"})),ve.createElement("div",{className:["katechat-message-main",W?"":"hidden"].join(" ")},Ge),ve.createElement("div",{className:["katechat-message-linked",W?"hidden":""].join(" ")},Ct)):ve.createElement("div",{className:["katechat-message",`katechat-message__${u||""}`].join(" "),ref:V},ve.createElement("div",{className:"katechat-message-main"},Ge))});hd.displayName="ChatMessage";import Ni from"react";import{ScrollArea as Yk}from"@mantine/core";var EF=({html:e,text:t})=>Ni.createElement(Yk,{type:"hover",offsetScrollbars:!0,className:["katechat-message-content","katechat-message-preview"].join(" ")},t?Ni.createElement(Ni.Fragment,null,e?e.map((n,a)=>Ni.createElement("div",{key:a,dangerouslySetInnerHTML:{__html:n}})):Ni.createElement("div",null,t)):"...");import $t,{useMemo as Kk}from"react";import{Text as Nv,Group as Ov,Avatar as Xk,Box as Zk}from"@mantine/core";import{IconRobot as Jk}from"@tabler/icons-react";import mr from"react";import{IconBrandOpenai as zk,IconBrandAws as Av,IconBrandYandex as Hk,IconMessageChatbot as Vk,IconAi as Wk,IconBrandMeta as qk,IconBrandMedium as Qk,IconBrandGoogle as $k}from"@tabler/icons-react";var Ai=({apiProvider:e,provider:t,size:n=24})=>{switch(e){case"OPEN_AI":return mr.createElement(zk,{size:n});case"AWS_BEDROCK":switch(t?.toLowerCase()){case"amazon":return mr.createElement(Av,{size:n});case"anthropic":return mr.createElement(Wk,{size:n});case"mistral ai":return mr.createElement(Qk,{size:n});case"meta":return mr.createElement(qk,{size:n});default:return mr.createElement(Av,{size:n})}case"YANDEX_FM":return mr.createElement(Hk,{size:n});case"GOOGLE_VERTEX_AI":return mr.createElement($k,{size:n});default:return mr.createElement(Vk,{size:n})}};var Td=({message:e,parentIndex:t,index:n,plugins:a,models:o})=>{let s=Kk(()=>o?.find(l=>l.modelId===e.modelId),[o,e.modelId]);return $t.createElement(Zk,{key:e.id},$t.createElement(Ov,{align:"center",pt:"sm"},$t.createElement(Xk,{radius:"xl",size:"md"},s?$t.createElement(Ai,{apiProvider:s.apiProvider,provider:s.provider}):$t.createElement(Jk,null)),$t.createElement(Ov,{gap:"xs"},$t.createElement(Nv,{size:"sm",fw:500,c:"teal"},e.modelName),e.status&&$t.createElement(Do,{status:e.status}),e.statusInfo&&e.status!=="reasoning"&&$t.createElement(Nv,{size:"xs",c:"dimmed"},e.statusInfo))),$t.createElement("div",{className:"katechat-message-content"},$t.createElement(Ri,{status:e.status,content:e.content,statusInfo:e.statusInfo,streaming:e.streaming||!1}),e.html?e.html.map((l,d)=>$t.createElement("div",{key:d,dangerouslySetInnerHTML:{__html:l}})):$t.createElement("div",null,e.content),$t.createElement("div",{className:"katechat-message-footer"},$t.createElement(wo,{messageId:e.id,messageIndex:t,linkedMessageIndex:n}),a)))};Td.displayName="LinkedChatMessage";import nt,{forwardRef as d3,useCallback as Rd,useEffect as Dv,useImperativeHandle as u3,useMemo as _3,useRef as m3,useState as Ns}from"react";import{Text as Id,Textarea as p3,Button as wv,Group as Mv,ActionIcon as Lv,Stack as g3,Tooltip as E3,Menu as Ad}from"@mantine/core";import{IconCirclePlus as S3,IconPlayerStopFilled as f3,IconSend as b3,IconX as h3}from"@tabler/icons-react";import{notifications as xa}from"@mantine/notifications";import pr,{useState as jk,useCallback as Is,useRef as yv,useEffect as e3}from"react";import{Group as t3,Tooltip as n3,Box as xv,ActionIcon as r3}from"@mantine/core";import{IconFileUpload as a3}from"@tabler/icons-react";import{useTranslation as i3}from"react-i18next";var Oi={dropzone:"_dropzone_16zca_1",dragging:"_dragging_16zca_8",disabled:"_disabled_16zca_12"};var o3=["image/jpeg","image/png","image/webp"],vd=({onFilesAdd:e,disabled:t,uploadFormats:n=o3})=>{let[a,o]=jk(!1),s=yv(null),l=yv(null),{t:d}=i3();e3(()=>{let R=I=>{if(!t&&I.clipboardData&&I.clipboardData.items){let N=Array.from(I.clipboardData.items).map(k=>k.getAsFile()).filter(vi);N.length>0&&(I.preventDefault(),I.stopPropagation(),e(N))}};return document.addEventListener("paste",R),()=>{document.removeEventListener("paste",R)}},[e,t]);let u=Is(R=>{R.preventDefault(),R.stopPropagation(),o(!0)},[]),p=Is(R=>{R.preventDefault(),R.stopPropagation(),o(!1)},[]),E=Is(R=>{if(R.preventDefault(),R.stopPropagation(),o(!1),t)return;let I=R.dataTransfer.files&&R.dataTransfer.files.length>0?Array.from(R.dataTransfer.files).filter(N=>N.size>0):[];e(I)},[e]),b=Is(R=>{if(R.target.files&&R.target.files.length>0){let I=Array.from(R.target.files).filter(N=>N.size>0);I.length&&e(I),l.current&&(l.current.value="")}},[e]),v=()=>{t||l.current?.click()};return pr.createElement(pr.Fragment,null,pr.createElement(xv,{ref:s,className:`drop-zone ${Oi.dropzone} ${a?Oi.dragging:""} ${t?Oi.disabled:""}`,onDragOver:u,onDragLeave:p,onDrop:E,onClick:v},pr.createElement(t3,{justify:"start",className:"drop-zone-control",gap:"xs"},pr.createElement(n3,{label:d("Click or drop an image/document here to upload"),position:"top"},pr.createElement(r3,{variant:"default",size:"lg"},pr.createElement(a3,{size:"24"}))),pr.createElement(xv,{hiddenFrom:"xs",pe:"sm"},d("Upload File")),pr.createElement("input",{ref:l,type:"file",multiple:!0,accept:n?.join(","),onChange:b,className:Oi.fileInput,style:{display:"none"},disabled:t}))))};import As from"react";import{Text as s3}from"@mantine/core";import{IconFileUpload as l3}from"@tabler/icons-react";var Cd={overlay:"_overlay_vjudp_1",content:"_content_vjudp_16"};import{useTranslation as c3}from"react-i18next";var oU=({visible:e,message:t,onDragOver:n,onDragLeave:a,onDrop:o})=>{let{t:s}=c3();return e?As.createElement("div",{className:Cd.overlay,onDragOver:n,onDragLeave:a,onDrop:o},As.createElement("div",{className:Cd.content},As.createElement(l3,{size:48,color:"var(--mantine-color-blue-4)"}),As.createElement(s3,{size:"lg",fw:500,c:"blue.4"},t||s("Drop files here to upload")))):null};import{useTranslation as T3}from"react-i18next";var Ut={chatControlsContainer:"_chatControlsContainer_sg9gr_1",chatInputContainer:"_chatInputContainer_sg9gr_4",chatInputGroup:"_chatInputGroup_sg9gr_7",chatInput:"_chatInput_sg9gr_4",hidden:"_hidden_sg9gr_22",promptMode:"_promptMode_sg9gr_34",promptModeText:"_promptModeText_sg9gr_41",promptFadeInUp:"_promptFadeInUp_sg9gr_1",promptShimmer:"_promptShimmer_sg9gr_1",headerRow:"_headerRow_sg9gr_71",documentsInput:"_documentsInput_sg9gr_89",columned:"_columned_sg9gr_95",imagesList:"_imagesList_sg9gr_103",previewImage:"_previewImage_sg9gr_108",removeButton:"_removeButton_sg9gr_120"};var RU=d3(({loadCompleted:e=!1,disabled:t=!1,promptMode:n=!1,promptText:a,uploadAllowed:o=!0,streaming:s,setSending:l,previousMessages:d=[],header:u,inputPlugins:p,uploadFormats:E,maxUploadFileSize:b=64*1024*1024,maxImagesCount:v=0,onSendMessage:R,onStopRequest:I,onDocumentsUpload:N},k)=>{let[D,Y]=Ns(""),[U,V]=Ns([]),[G,W]=Ns(0),[te,Q]=Ns(!1),le=m3(null),{t:$}=T3();u3(k,()=>({handleAddFiles:Z=>he(Z)})),Dv(()=>{le.current?.focus()},[e,t]),Dv(()=>{W(d?.length?d.length:0)},[e,d]);let ie=async()=>{if(!(!D?.trim()&&!U.length)){l(!0);try{Y(""),V([]),await R(D,U)}catch(Z){xa.show({title:"Error",message:Z instanceof Error?Z.message:$("Failed to send message"),color:"red"})}finally{l(!1)}}},ge=Rd(Z=>{let J=!D?.trim();if(Z.key==="Enter"&&!Z.shiftKey&&!Z.altKey)Z.preventDefault(),ie(),Q(!1);else if(Z.key==="ArrowUp"&&(J||te)){let ae=Math.max(0,G-1);Y(d[ae]),W(ae),Q(!0)}else if(Z.key==="ArrowDown"&&(J||te)){let ae=Math.min(d.length-1,G+1);Y(d[ae]),W(ae),Q(!0)}else Q(!1)},[ie,D,d,G]),xe=Rd(Z=>{Y(Z.currentTarget.value)},[]),be=_3(()=>t||s||!D?.trim()&&!U.length,[D,U,s,t]),he=Rd(Z=>{let J=Z.filter(pe=>pe.size<b);J.length<Z.length&&xa.show({title:$("Warning"),message:$("Some files are too large and were not added (max size: {{size}} MB)",{size:b/(1024*1024)}),color:"yellow"});let ae=J.filter(pe=>pe.type?.startsWith("image/")),Se=J.filter(pe=>!pe.type?.startsWith("image/"));ae.length&&v<=0&&(xa.show({title:$("Warning"),message:$("Image uploads are not allowed in this chat."),color:"yellow"}),ae=[]),ae.length+U.length>v&&(xa.show({title:$("Warning"),message:$("You can only add up to {{count}} images at a time",{count:v}),color:"yellow"}),ae=ae.slice(0,v-U.length)),ae.length&&Promise.all(ae.map(pe=>new Promise((Ce,Ue)=>{let Ge=new FileReader;Ge.onload=ze=>{if(ze.target?.result){let lt=ze.target.result;Ce({fileName:pe.name,mimeType:pe.type,bytesBase64:lt})}else Ue(new Error($("Failed to read file: {{fileName}}",{fileName:pe.name})))},Ge.onerror=ze=>{Ue(new Error($("Failed to read file: {{fileName}}, error: {{error}}",{fileName:pe.name,error:ze})))},Ge.readAsDataURL(pe)}))).then(pe=>{V(Ce=>[...Ce,...pe])}).catch(pe=>{xa.show({title:$("Error"),message:pe.message||$("Failed to read image files"),color:"red"})}),Se.length&&N?N(Se):Se.length&&xa.show({title:$("Warning"),message:$("Document upload is not available in this chat."),color:"orange"})},[U,N,v,b]),z=Z=>J=>{J.stopPropagation(),V(ae=>ae.filter(Se=>Se.fileName!==Z))};return nt.createElement("div",{className:[Ut.chatControlsContainer,n?Ut.promptMode:"",e?"":Ut.hidden].join(" ")},n?nt.createElement(g3,{align:"center",justify:"center",gap:"md",mb:"lg"},nt.createElement(Id,{c:"dimmed",size:"lg",ta:"center",className:Ut.promptModeText},a||$("Start the conversation by sending a message"))):null,nt.createElement("div",{className:Ut.chatControls},u&&nt.createElement(Mv,{align:"center",gap:"xs",className:Ut.headerRow},u),nt.createElement("div",{className:[Ut.chatInputContainer,U.length?Ut.columned:""].join(" ")},o&&nt.createElement("div",{className:Ut.documentsInput},nt.createElement(Mv,{visibleFrom:"xs",gap:"xs"},nt.createElement(vd,{onFilesAdd:he,uploadFormats:E}),p),U?.length>0&&nt.createElement("div",{className:Ut.imagesList},U.map(Z=>nt.createElement("div",{key:Z.fileName,className:Ut.previewImage},nt.createElement("img",{src:Z.bytesBase64,alt:Z.fileName}),nt.createElement(Lv,{className:Ut.removeButton,color:"red.9",size:"xs",onClick:z(Z.fileName)},nt.createElement(h3,{size:16})))))),nt.createElement("div",{className:Ut.chatInputGroup},o&&nt.createElement(Ad,{shadow:"md",width:"content"},nt.createElement(Ad.Target,null,nt.createElement(Lv,{size:"lg",variant:"subtle",hiddenFrom:"xs"},nt.createElement(E3,{label:$("More..."),position:"right",withArrow:!0},nt.createElement(S3,{size:"24"})))),nt.createElement(Ad.Dropdown,null,nt.createElement(vd,{onFilesAdd:he,uploadFormats:E}),p)),nt.createElement(p3,{ref:le,className:Ut.chatInput,placeholder:$("Type your message..."),value:D||"",autosize:!0,minRows:1,maxRows:7,onChange:xe,onKeyDown:ge,disabled:t}),I&&s?nt.createElement(wv,{onClick:I,disabled:t},nt.createElement(f3,{size:24})," ",nt.createElement(Id,{visibleFrom:"md"},$("Stop"))):nt.createElement(wv,{onClick:ie,disabled:be,className:I&&s?Ut.hidden:"",radius:"md"},nt.createElement(b3,{size:24})," ",nt.createElement(Id,{visibleFrom:"md",ml:"xs"},$("Send")))))))});import gr,{useCallback as yi,useRef as F3,useState as yd}from"react";import{Stack as U3}from"@mantine/core";import{notifications as xd}from"@mantine/notifications";import{useTranslation as G3}from"react-i18next";import gn,{useEffect as y3,useCallback as zv}from"react";import{Image as x3,Text as Os,Group as Hv,Stack as D3,ActionIcon as w3,Modal as M3,Tooltip as L3}from"@mantine/core";import{useDisclosure as k3}from"@mantine/hooks";import{IconExternalLink as P3}from"@tabler/icons-react";var Gv=jl(tc(),1);import Uv from"i18next";import{initReactI18next as A3}from"react-i18next";import N3 from"i18next-browser-languagedetector";var kv={AI:"AI","Are you sure you want to delete this item? This action cannot be undone.":"Are you sure you want to delete this item? This action cannot be undone.",Cancel:"Cancel",Cancelled:"Cancelled","Click or drop an image/document here to upload":"Click or drop an image/document here to upload","Code block is empty":"Code block is empty","Code Interpreter":"Code Interpreter",Completed:"Completed","Confirm Deletion":"Confirm Deletion",Copy:"Copy","Copy CSV":"Copy CSV","Copy message":"Copy message",Delete:"Delete",Details:"Details","Document upload is not available in this chat.":"Document upload is not available in this chat.",Download:"Download","Download CSV":"Download CSV","Drop files here to upload":"Drop files here to upload",Error:"Error","Failed to copy message":"Failed to copy message","Failed to read file: {{fileName}}":"Failed to read file: {{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"Failed to read file: {{fileName}}, error: {{error}}","Failed to read image files":"Failed to read image files","Failed to send message":"Failed to send message","Image Preview":"Image Preview","Image uploads are not allowed in this chat.":"Image uploads are not allowed in this chat.","In Progress":"In Progress",language:{de:"Deutsch",en:"English",label:"Language",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"Language is not specified for this code block",Main:"Main","More...":"More...","Open image source":"Open image source",Others:"Others","RAG Search":"RAG Search",Reasoning:"Reasoning",Send:"Send","Some files are too large and were not added (max size: {{size}} MB)":"Some files are too large and were not added (max size: {{size}} MB)",source:"source","Start the conversation by sending a message":"Start the conversation by sending a message",Started:"Started",Stop:"Stop","Tool Call":"Tool Call","Tool Call Completed":"Tool Call Completed","Type your message...":"Type your message...","Upload File":"Upload File",Warning:"Warning","Web Search":"Web Search",You:"You","You can only add up to {{count}} images at a time":"You can only add up to {{count}} images at a time"};var Pv={AI:"KI","Are you sure you want to delete this item? This action cannot be undone.":"M\xF6chten Sie dieses Element wirklich l\xF6schen? Diese Aktion kann nicht r\xFCckg\xE4ngig gemacht werden.",Cancel:"Abbrechen",Cancelled:"Abgebrochen","Click or drop an image/document here to upload":"Klicken oder Bild/Dokument hierher ziehen zum Hochladen","Code block is empty":"Codeblock ist leer","Code Interpreter":"Code-Interpreter",Completed:"Abgeschlossen","Confirm Deletion":"L\xF6schen best\xE4tigen",Copy:"Kopieren","Copy CSV":"CSV kopieren","Copy message":"Nachricht kopieren",Delete:"L\xF6schen",Details:"Details","Document upload is not available in this chat.":"Dokumenten-Upload ist in diesem Chat nicht verf\xFCgbar.",Download:"Herunterladen","Download CSV":"CSV herunterladen","Drop files here to upload":"Dateien zum Hochladen hier ablegen",Error:"Fehler","Failed to copy message":"Nachricht konnte nicht kopiert werden","Failed to read file: {{fileName}}":"Datei konnte nicht gelesen werden: {{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"Datei konnte nicht gelesen werden: {{fileName}}, Fehler: {{error}}","Failed to read image files":"Bilddateien konnten nicht gelesen werden","Failed to send message":"Nachricht konnte nicht gesendet werden","Image Preview":"Bildvorschau","Image uploads are not allowed in this chat.":"Bild-Uploads sind in diesem Chat nicht erlaubt.","In Progress":"In Bearbeitung",language:{de:"Deutsch",en:"English",label:"Sprache",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"F\xFCr diesen Codeblock ist keine Sprache angegeben",Main:"Haupt","More...":"Mehr...","Open image source":"Bildquelle \xF6ffnen",Others:"Andere","RAG Search":"RAG-Suche",Reasoning:"Argumentation",Send:"Senden","Some files are too large and were not added (max size: {{size}} MB)":"Einige Dateien sind zu gro\xDF und wurden nicht hinzugef\xFCgt (max. Gr\xF6\xDFe: {{size}} MB)",source:"Quelle","Start the conversation by sending a message":"Beginnen Sie das Gespr\xE4ch, indem Sie eine Nachricht senden",Started:"Gestartet",Stop:"Stopp","Tool Call":"Tool-Aufruf","Tool Call Completed":"Tool-Aufruf abgeschlossen","Type your message...":"Nachricht eingeben...","Upload File":"Datei hochladen",Warning:"Warnung","Web Search":"Websuche",You:"Sie","You can only add up to {{count}} images at a time":"Sie k\xF6nnen nur bis zu {{count}} Bilder gleichzeitig hinzuf\xFCgen"};var Bv={AI:"\u0418\u0418","Are you sure you want to delete this item? This action cannot be undone.":"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u044D\u043B\u0435\u043C\u0435\u043D\u0442? \u042D\u0442\u043E \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043D\u0435\u043B\u044C\u0437\u044F \u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C.",Cancel:"\u041E\u0442\u043C\u0435\u043D\u0430",Cancelled:"\u041E\u0442\u043C\u0435\u043D\u0435\u043D\u043E","Click or drop an image/document here to upload":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0438\u043B\u0438 \u043F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435/\u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 \u0441\u044E\u0434\u0430 \u0434\u043B\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438","Code block is empty":"\u0411\u043B\u043E\u043A \u043A\u043E\u0434\u0430 \u043F\u0443\u0441\u0442","Code Interpreter":"\u0418\u043D\u0442\u0435\u0440\u043F\u0440\u0435\u0442\u0430\u0442\u043E\u0440 \u043A\u043E\u0434\u0430",Completed:"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u043E","Confirm Deletion":"\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435",Copy:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C","Copy CSV":"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C CSV","Copy message":"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435",Delete:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",Details:"\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0441\u0442\u0438","Document upload is not available in this chat.":"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430 \u0432 \u044D\u0442\u043E\u043C \u0447\u0430\u0442\u0435.",Download:"\u0421\u043A\u0430\u0447\u0430\u0442\u044C","Download CSV":"\u0421\u043A\u0430\u0447\u0430\u0442\u044C CSV","Drop files here to upload":"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0444\u0430\u0439\u043B\u044B \u0441\u044E\u0434\u0430 \u0434\u043B\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438",Error:"\u041E\u0448\u0438\u0431\u043A\u0430","Failed to copy message":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0441\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435","Failed to read file: {{fileName}}":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C \u0444\u0430\u0439\u043B: {{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C \u0444\u0430\u0439\u043B: {{fileName}}, \u043E\u0448\u0438\u0431\u043A\u0430: {{error}}","Failed to read image files":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C \u0444\u0430\u0439\u043B\u044B \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439","Failed to send message":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435","Image Preview":"\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F","Image uploads are not allowed in this chat.":"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439 \u0432 \u044D\u0442\u043E\u043C \u0447\u0430\u0442\u0435 \u0437\u0430\u043F\u0440\u0435\u0449\u0435\u043D\u0430.","In Progress":"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",language:{de:"Deutsch",en:"English",label:"\u042F\u0437\u044B\u043A",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"\u042F\u0437\u044B\u043A \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0431\u043B\u043E\u043A\u0430 \u043A\u043E\u0434\u0430",Main:"\u041E\u0441\u043D\u043E\u0432\u043D\u043E\u0439","More...":"\u0415\u0449\u0451...","Open image source":"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0438\u0441\u0442\u043E\u0447\u043D\u0438\u043A \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F",Others:"\u0414\u0440\u0443\u0433\u0438\u0435","RAG Search":"RAG-\u043F\u043E\u0438\u0441\u043A",Reasoning:"\u0420\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043D\u0438\u0435",Send:"\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C","Some files are too large and were not added (max size: {{size}} MB)":"\u041D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0444\u0430\u0439\u043B\u044B \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u0438\u0435 \u0438 \u043D\u0435 \u0431\u044B\u043B\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B (\u043C\u0430\u043A\u0441. \u0440\u0430\u0437\u043C\u0435\u0440: {{size}} \u041C\u0411)",source:"\u0438\u0441\u0442\u043E\u0447\u043D\u0438\u043A","Start the conversation by sending a message":"\u041D\u0430\u0447\u043D\u0438\u0442\u0435 \u0434\u0438\u0430\u043B\u043E\u0433, \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0432 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435",Started:"\u041D\u0430\u0447\u0430\u0442\u043E",Stop:"\u0421\u0442\u043E\u043F","Tool Call":"\u0412\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430","Tool Call Completed":"\u0412\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043D","Type your message...":"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435...","Upload File":"\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0444\u0430\u0439\u043B",Warning:"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435","Web Search":"\u0412\u0435\u0431-\u043F\u043E\u0438\u0441\u043A",You:"\u0412\u044B","You can only add up to {{count}} images at a time":"\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{count}} \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439 \u0437\u0430 \u0440\u0430\u0437"};var Fv={AI:"AI","Are you sure you want to delete this item? This action cannot be undone.":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64\u9879\u5417\uFF1F\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u6D88\u3002",Cancel:"\u53D6\u6D88",Cancelled:"\u5DF2\u53D6\u6D88","Click or drop an image/document here to upload":"\u70B9\u51FB\u6216\u62D6\u653E\u56FE\u7247/\u6587\u6863\u5230\u6B64\u5904\u4E0A\u4F20","Code block is empty":"\u4EE3\u7801\u5757\u4E3A\u7A7A","Code Interpreter":"\u4EE3\u7801\u89E3\u91CA\u5668",Completed:"\u5DF2\u5B8C\u6210","Confirm Deletion":"\u786E\u8BA4\u5220\u9664",Copy:"\u590D\u5236","Copy CSV":"\u590D\u5236 CSV","Copy message":"\u590D\u5236\u6D88\u606F",Delete:"\u5220\u9664",Details:"\u8BE6\u60C5","Document upload is not available in this chat.":"\u6B64\u804A\u5929\u4E0D\u652F\u6301\u6587\u6863\u4E0A\u4F20\u3002",Download:"\u4E0B\u8F7D","Download CSV":"\u4E0B\u8F7D CSV","Drop files here to upload":"\u5C06\u6587\u4EF6\u62D6\u653E\u5230\u6B64\u5904\u4E0A\u4F20",Error:"\u9519\u8BEF","Failed to copy message":"\u590D\u5236\u6D88\u606F\u5931\u8D25","Failed to read file: {{fileName}}":"\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25\uFF1A{{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25\uFF1A{{fileName}}\uFF0C\u9519\u8BEF\uFF1A{{error}}","Failed to read image files":"\u8BFB\u53D6\u56FE\u7247\u6587\u4EF6\u5931\u8D25","Failed to send message":"\u53D1\u9001\u6D88\u606F\u5931\u8D25","Image Preview":"\u56FE\u7247\u9884\u89C8","Image uploads are not allowed in this chat.":"\u6B64\u804A\u5929\u4E0D\u5141\u8BB8\u4E0A\u4F20\u56FE\u7247\u3002","In Progress":"\u8FDB\u884C\u4E2D",language:{de:"Deutsch",en:"English",label:"\u8BED\u8A00",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"\u6B64\u4EE3\u7801\u5757\u672A\u6307\u5B9A\u8BED\u8A00",Main:"\u4E3B\u8981","More...":"\u66F4\u591A...","Open image source":"\u6253\u5F00\u56FE\u7247\u6765\u6E90",Others:"\u5176\u4ED6","RAG Search":"RAG \u641C\u7D22",Reasoning:"\u63A8\u7406",Send:"\u53D1\u9001","Some files are too large and were not added (max size: {{size}} MB)":"\u90E8\u5206\u6587\u4EF6\u8FC7\u5927\uFF0C\u672A\u88AB\u6DFB\u52A0\uFF08\u6700\u5927\uFF1A{{size}} MB\uFF09",source:"\u6765\u6E90","Start the conversation by sending a message":"\u53D1\u9001\u6D88\u606F\u5F00\u59CB\u5BF9\u8BDD",Started:"\u5DF2\u5F00\u59CB",Stop:"\u505C\u6B62","Tool Call":"\u5DE5\u5177\u8C03\u7528","Tool Call Completed":"\u5DE5\u5177\u8C03\u7528\u5B8C\u6210","Type your message...":"\u8F93\u5165\u6D88\u606F...","Upload File":"\u4E0A\u4F20\u6587\u4EF6",Warning:"\u8B66\u544A","Web Search":"\u7F51\u7EDC\u641C\u7D22",You:"\u4F60","You can only add up to {{count}} images at a time":"\u4E00\u6B21\u6700\u591A\u53EA\u80FD\u6DFB\u52A0 {{count}} \u5F20\u56FE\u7247"};var Nd=["en","de","ru","zh"],Od="ui-language";function O3(e={}){return(0,Gv.merge)({en:{translation:kv},de:{translation:Pv},ru:{translation:Bv},zh:{translation:Fv}},e)}async function GU({lookupLocalStorage:e=Od,supportedLngs:t=Nd,fallbackLng:n="en",resources:a={}}={}){return Uv.use(N3).use(A3).init({resources:O3(a),fallbackLng:n,supportedLngs:t,interpolation:{escapeValue:!1},detection:{order:["localStorage","navigator","htmlTag"],lookupLocalStorage:e,caches:["localStorage"]}})}function Yv(e){return(typeof e=="string"?new Date(e):e).toLocaleDateString(Uv.language||"ru-RU",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}import{useTranslation as B3}from"react-i18next";var Vv=({fileName:e,fileUrl:t,mimeType:n,createdAt:a,onOpenSource:o,sourceTitle:s,onClose:l})=>{let[d,{open:u,close:p}]=k3(!1);y3(()=>{t&&u()},[t,u]);let E=zv(()=>{l(),p()},[l,p]),b=zv(()=>{o?.(),E()},[o,E]),{t:v}=B3();return gn.createElement(M3,{opened:d,onClose:E,size:"xl",title:v("Image Preview"),centered:!0},t&&gn.createElement(D3,{gap:"md"},gn.createElement(x3,{src:t,alt:e,fit:"contain",mah:"70vh"}),gn.createElement(Hv,{justify:"space-between"},gn.createElement("div",null,gn.createElement(Os,{size:"sm",fw:500},e),gn.createElement(Os,{size:"xs",c:"dimmed"},a?Yv(a)+" \u2022":""," ",n)),o&&gn.createElement(Hv,{gap:"xs"},gn.createElement(L3,{label:v("Open image source")},gn.createElement(w3,{variant:"light",onClick:b},gn.createElement(P3,{size:16}))))),o&&gn.createElement(Os,{size:"sm",c:"dimmed"},"From:"," ",gn.createElement(Os,{span:!0,c:"blue",style:{cursor:"pointer"},onClick:b},s||v("source")))))};var Wv=e=>[...Array.from(e.tHead?.querySelectorAll("tr")??[]),...Array.from(e.tBodies[0]?.querySelectorAll("tr")??[])].map(n=>Array.from(n.querySelectorAll("th, td")).map(a=>`"${(a.textContent||"").replace(/"/g,'""')}"`).join(",")).join(`
451
- `),qv=gr.memo(({messages:e,onMessageDeleted:t,onAddMessage:n,plugins:a=[],detailsPlugins:o=[],codePlugins:s,models:l=[]})=>{let{t:d}=G3(),u=F3(null),[p,E]=yd(),[b,v]=yd(),[R,I]=yd(new Set),N=yi(G=>I(W=>new Set(W).add(G)),[]),k=yi(G=>{I(W=>{let te=new Set(W);return te.delete(G),te})},[]),D=()=>{E(void 0),v(void 0)},Y=yi(G=>{if(!G.target)return;let W=["code-run-btn","code-copy-btn","code-download-btn","code-toggle-all","copy-message-btn","code-header","message-image","table-sort-btn","table-copy-csv-btn","table-download-csv-btn"],te=G.target;for(let $ of W){let ie=te.closest(`.${$}`);if(ie){te=ie;break}}if(!te)return;let Q=te,le=$=>{let ie=$?.parentElement;ie.classList.contains("collapsed")?($.classList.remove("collapsed"),ie&&ie.classList.remove("collapsed")):($.classList.add("collapsed"),ie&&ie.classList.add("collapsed"))};if(Q.classList.contains("code-run-btn")||Q.classList.contains("code-download-btn")){let $=Q.dataset.lang,ie=Q.classList.contains("code-run-btn"),xe=Q.closest(".code-header")?.parentElement?.querySelector(".code-data");if(xe){let be=decodeURIComponent(xe.dataset.code||"").trim();if(!be)return xd.show({title:d("Error"),message:d("Code block is empty"),color:"red"});if(ie){if(!$)return xd.show({title:d("Error"),message:d("Language is not specified for this code block"),color:"red"});s?.[$]?.execute(be,$)}else{let he=`code.${hv($||"txt")}`,z=new Blob([be],{type:"text/plain"}),Z=URL.createObjectURL(z),J=document.createElement("a");J.href=Z,J.download=he,J.click(),URL.revokeObjectURL(Z)}}}else if(Q.classList.contains("code-copy-btn")){let $=Q.parentElement?.parentElement?.nextElementSibling?.querySelector(".code-data");if($){let xe=decodeURIComponent($.dataset.code||"").trim();navigator.clipboard.writeText(xe)}let ie=Q.querySelector(".copy-icon"),ge=Q.querySelector(".check-icon");ie&&ge&&(ie.style.display="none",ge.style.display="block",setTimeout(()=>{ie.style.display="block",ge.style.display="none"},2e3))}else if(Q.classList.contains("code-header"))le(Q);else if(Q.classList.contains("code-toggle-all"))u.current?.querySelectorAll(".code-header").forEach($=>{le($)});else if(Q.classList.contains("copy-message-btn")){if(Q.dataset.messageId){let $=Q.dataset.messageIndex,ie=Q.dataset.messageLinkedIndex,ge=Q.dataset.messageId,xe=$!=null?e[Number($)]:e.find(Z=>Z.id===ge);ie!=null&&(xe=xe?.linkedMessages?.[Number(ie)]),Ed(xe,"Message should exist to copy");let be=(xe.content||"").trim(),he=xe.html||[];if(he.length&&he[0]){let Z=new Blob([he.join("<br/>")],{type:"text/html"}),J=new Blob([be],{type:"text/plain"});navigator.clipboard.write([new ClipboardItem({[Z.type]:Z,[J.type]:J})]).catch(ae=>xd.show({title:d("Error"),message:ae.message||d("Failed to copy message"),color:"red"}))}else navigator.clipboard.writeText(be);let z=Q.parentElement?.querySelector(".check-icon");z&&(Q.style.display="none",z.style.display="inline-block",setTimeout(()=>{Q.style.display="inline-block",z.style.display="none"},2e3))}}else if(Q.classList.contains("message-image")){let $=Q.dataset.fileName,ie=Q.src;E(ie),v($)}else if(Q.classList.contains("table-sort-btn")){let $=parseInt(Q.dataset.colIndex||"0"),ie=Q.closest("table");if(!ie)return;let ge=ie.querySelector("tbody");if(!ge)return;let be=Q.dataset.sortDir==="asc"?"desc":"asc";ie.querySelectorAll("th.table-sort-btn").forEach(z=>{delete z.dataset.sortDir,z.classList.remove("sort-asc","sort-desc")}),Q.dataset.sortDir=be,Q.classList.add(be==="asc"?"sort-asc":"sort-desc");let he=Array.from(ge.querySelectorAll("tr"));he.sort((z,Z)=>{let J=z.querySelectorAll("td")[$]?.textContent||"",ae=Z.querySelectorAll("td")[$]?.textContent||"",Se=parseFloat(J),pe=parseFloat(ae);return!isNaN(Se)&&!isNaN(pe)?be==="asc"?Se-pe:pe-Se:be==="asc"?J.localeCompare(ae):ae.localeCompare(J)}),he.forEach(z=>ge.appendChild(z))}else if(Q.classList.contains("table-copy-csv-btn")){let $=Q.closest(".message-table");if(!$)return;navigator.clipboard.writeText(Wv($));let ie=Q.querySelector(".copy-icon"),ge=Q.querySelector(".check-icon");ie&&ge&&(ie.style.display="none",ge.style.display="block",setTimeout(()=>{ie.style.display="block",ge.style.display="none"},2e3))}else if(Q.classList.contains("table-download-csv-btn")){let $=Q.closest(".message-table");if(!$)return;let ie=new Blob([Wv($)],{type:"text/csv"}),ge=URL.createObjectURL(ie),xe=document.createElement("a");xe.href=ge,xe.download="table.csv",xe.click(),URL.revokeObjectURL(ge)}},[e,s]),U=yi(G=>gr.createElement(gr.Fragment,null,a.map((W,te)=>gr.createElement(W,{key:te,message:G,onAddMessage:n,onAction:N,onActionEnd:k,onMessageDeleted:t,disabled:R.has(G.id)}))),[a,n,t,R,N,k]),V=yi(G=>{let W=o.map((te,Q)=>te(G)).filter(vi);return W.length?W:null},[a,o]);return gr.createElement(gr.Fragment,null,gr.createElement(U3,{gap:"sm",ref:u,onClick:Y},e.map((G,W)=>gr.createElement(hd,{key:G.id,message:G,index:W,disabled:R.has(G.id),pluginsLoader:U,messageDetailsLoader:V,models:l,codePlugins:s}))),gr.createElement(Vv,{fileName:b??"",fileUrl:p??"",onClose:D}))});import Ln,{useCallback as ys,useEffect as Xv,useImperativeHandle as q3,useRef as Zv,useState as Q3}from"react";import{Group as $3,Loader as K3}from"@mantine/core";import{IconCircleChevronDown as X3}from"@tabler/icons-react";import{useEffect as Y3,useRef as Qv}from"react";function Dd(e,t,n=0){let a=Qv(null),o=Qv(null);return Y3(()=>{a.current?.disconnect();let s=setTimeout(()=>{a.current=new IntersectionObserver(l=>{l[0].isIntersecting&&e()}),o.current&&a.current.observe(o.current)},n);return()=>{clearTimeout(s),a.current?.disconnect()}},[t,e]),o}import z3,{createContext as H3,useContext as V3,useEffect as $v}from"react";import{useLocalStorage as W3}from"@mantine/hooks";var Kv=H3(void 0),c9=({children:e})=>{let[t,n]=W3({key:"ui-theme",defaultValue:"light"});$v(()=>{if(t==="auto"){let o=window.matchMedia("(prefers-color-scheme: dark)").matches;document.documentElement.dataset.mantine=o?"dark":"light"}else document.documentElement.dataset.mantine=t},[t]);let a=()=>{let o=t==="dark"?"light":"dark";n(o),document.documentElement.dataset.mantine=o};return $v(()=>{if(t==="auto"){let o=window.matchMedia("(prefers-color-scheme: dark)"),s=l=>{document.documentElement.dataset.mantine=l.matches?"dark":"light"};return o.addEventListener("change",s),()=>o.removeEventListener("change",s)}},[t]),z3.createElement(Kv.Provider,{value:{colorScheme:t,setColorScheme:n,toggleColorScheme:a}},e)},d9=()=>{let e=V3(Kv);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};var Jv=Ln.forwardRef(({messages:e,models:t=[],addChatMessage:n,removeMessages:a,loadMoreMessages:o,plugins:s,detailsPlugins:l,codePlugins:d,streaming:u=!1,loadCompleted:p=!0,loading:E=!1,autoScroll:b=!0},v)=>{let[R,I]=Q3(!1),N=Zv(null),k=Zv(null),D=ys(()=>{N.current?.scrollTo(0,N.current?.scrollHeight??0)},[N]);q3(v,()=>({scrollToBottom:D}),[D]);let Y=ys(()=>{R||D()},[D,R]);Xv(()=>{if(b)Y();else{let W=N.current;if(W){let{scrollTop:te,scrollHeight:Q,clientHeight:le}=W;Q-te-le<2||I(!0)}}},[e,Y,b]);let U=ys(W=>{let{scrollTop:te,scrollHeight:Q,clientHeight:le}=W.target;k.current&&clearTimeout(k.current),Q-te-le<2?I(!1):e?.length&&(u?k.current=setTimeout(()=>{I(!0)},100):I(!0))},[e?.length,u]),V=ys(()=>{I(!1),D()},[D]);Xv(()=>{p&&(I(!1),setTimeout(D,200))},[p,b]);let G=Dd(()=>o?.(),[o],200);return Ln.createElement("div",{className:["katechat-messages-container",p?"container--load-completed":"",p&&e?.length===0?"container--empty":""].join(" ")},Ln.createElement("div",{className:"katechat-messages-container-scroller",ref:N,onScroll:U},Ln.createElement("div",{ref:G}),E&&Ln.createElement($3,{justify:"center",align:"center",py:"xl"},Ln.createElement(K3,null)),Ln.createElement("div",{className:"katechat-messages-list"},e&&Ln.createElement(qv,{messages:e,onMessageDeleted:a,onAddMessage:n,models:t,plugins:s,detailsPlugins:l,codePlugins:d}))),Ln.createElement("div",{className:["katechat-anchor-container",R?"container--visible":""].join(" ")},Ln.createElement("div",{className:"katechat-anchor"},Ln.createElement(X3,{size:32,color:"teal",onClick:V}))))});Jv.displayName="ChatMessagesContainer";import Da from"react";import{Modal as Z3,Button as jv,Group as J3,Text as j3,Stack as eP}from"@mantine/core";import{useTranslation as tP}from"react-i18next";var w9=({isOpen:e,onClose:t,onConfirm:n,title:a,message:o,confirmLabel:s,cancelLabel:l,isLoading:d=!1})=>{let{t:u}=tP();return Da.createElement(Z3,{opened:e,onClose:t,title:a||u("Confirm Deletion"),centered:!0},Da.createElement(eP,null,Da.createElement(j3,{style:{wordBreak:"break-word"}},o||u("Are you sure you want to delete this item? This action cannot be undone.")),Da.createElement(J3,{mt:"md",justify:"flex-end"},Da.createElement(jv,{variant:"outline",onClick:t,disabled:d},l||u("Cancel")),Da.createElement(jv,{color:"red",onClick:n,loading:d},s||u("Delete")))))};import ta from"react";import{Menu as xs,ActionIcon as nP,Tooltip as rP}from"@mantine/core";import{IconLanguage as aP}from"@tabler/icons-react";import{useTranslation as iP}from"react-i18next";var V9=({languages:e=Nd})=>{let{t,i18n:n}=iP(),a=o=>{n.changeLanguage(o),localStorage.setItem(Od,o)};return ta.createElement(xs,{shadow:"md",width:150,position:"bottom-end"},ta.createElement(xs.Target,null,ta.createElement(rP,{label:t("language.label")},ta.createElement(nP,{variant:"subtle","aria-label":t("language.label")},ta.createElement(aP,{size:18})))),ta.createElement(xs.Dropdown,null,e.map(o=>ta.createElement(xs.Item,{key:o,onClick:()=>a(o),fw:n.language===o?700:400},t(`language.${o}`)))))};export{Nd as BASE_SUPPORTED_LANGUAGES,j1 as ChatFileType,RU as ChatInput,hd as ChatMessage,EF as ChatMessagePreview,Jv as ChatMessagesContainer,qv as ChatMessagesList,J1 as CustomModelProtocol,w9 as DeleteConfirmationModal,oU as DropFilesOverlay,vd as FileDropzone,o3 as IMAGE_UPLOAD_FORMATS,Vv as ImagePopup,Od as LANGUAGE_STORAGE_KEY,V9 as LanguageSelector,Td as LinkedChatMessage,ec as MessageRole,Do as MessageStatus,X1 as MessageType,Z1 as ModelType,Ai as ProviderIcon,ti as ResponseStatus,Kv as ThemeContext,c9 as ThemeProvider,Tv as assert,Lr as escapeHtml,Yv as formatDate,LB as formatFileSize,PB as formatTokensLimit,hv as getProgrammingLanguageExt,GU as initI18n,hk as normalizeMatJax,wB as parseChatMessages,Rs as parseMarkdown,FB as sortItemsBySections,Dd as useIntersectionObserver,d9 as useTheme};
450
+ </div>`:"";it.innerHTML=he.replaceAll("<LANG>",Ne).replace("<EXECUTE_BTN>",et).replace("<DOWNLOAD_TITLE>",z).replace("<COPY_TITLE>",Z),Ke.appendChild(it),Te.parentNode?.insertBefore(Ke,Te),Ke.appendChild(Te)}}),V.current.querySelectorAll("img").forEach(Te=>{if(!Te?.classList?.contains("message-image")){Te.classList.add("message-image");let it=Te.src.split("/").pop()||"";Te.setAttribute("data-file-name",it)}}),V.current.querySelectorAll("table").forEach(Te=>{if(!Te?.classList?.contains("message-table")){if(Te.classList.add("message-table"),!Te.tFoot){let Ne=document.createElement("tfoot");Te.appendChild(Ne);let Ke=document.createElement("tr");Ke.className="table-controls-row",Ne.appendChild(Ke);let ce=document.createElement("th");ce.classList.add("table-controls"),ce.colSpan=Te.querySelectorAll("th").length||1,Ke.appendChild(ce)}let it=Te.querySelector("tfoot tr .table-controls");it.innerHTML=Se.replace("<COPY_CSV_TITLE>",J).replace("<DOWNLOAD_CSV_TITLE>",ae);let Ve=0;Te.querySelectorAll("th").forEach(Ne=>{Ne.classList.contains("table-controls")||(Ne.classList.add("table-sort-btn"),Ne.setAttribute("data-col-index",String(Ve++)))})}}))},Ii+10),[z,Z,J,ae,d]);vv(()=>{if(!k&&V.current){let Te=new MutationObserver(pe);return Te.observe(V.current,{childList:!0,subtree:!0}),pe(),()=>Te.disconnect()}},[u,k,pe]);let Ce=()=>le(Te=>!Te),Ue=_r(()=>s?s(t):null,[s,t]),Ge=_r(()=>{let Te=o?o(t):null,it=l?.find(Ve=>Ve.modelId===t?.modelId);return ve.createElement(ve.Fragment,null,ve.createElement(fd,{align:"center",pt:"sm"},ve.createElement(Dk,{color:"gray",radius:"xl",size:"md",src:xe?t?.user?.avatarUrl:void 0},xe?ve.createElement(Uk,null):it?ve.createElement(Ai,{apiProvider:it.apiProvider,provider:it.provider}):ve.createElement(Rv,null)),ve.createElement(fd,{gap:"sm"},ve.createElement(Sd,{size:"sm",fw:500,c:xe?"blue":"teal"},be),ve.createElement(Sd,{size:"sm",c:"dimmed"},ge),Y&&ve.createElement(Do,{status:Y}),U&&Y!=="reasoning"&&ve.createElement(Sd,{size:"sm",c:"dimmed"},U))),ve.createElement("div",{className:["katechat-message-content",k?"streaming":""].join(" ")},ve.createElement(Ri,{status:Y,content:v,statusInfo:U,streaming:k}),R?R.map((Ve,Ne)=>ve.createElement("div",{key:Ne,dangerouslySetInnerHTML:{__html:Ve}})):ve.createElement("div",null,v),ve.createElement("div",{className:"katechat-message-footer"},ve.createElement(wo,{messageId:p,messageIndex:n}),Ue&&ve.createElement(Cv,{label:$("Details"),position:"top",withArrow:!0},ve.createElement(bd,{className:"edit-message-btn","data-message-id":p,size:"sm",variant:"subtle",color:"gray",disabled:a,onClick:Ce},Q?ve.createElement(Fk,null):ve.createElement(Bk,null))),Te),ve.createElement(Mk,{in:Q},ve.createElement("div",{className:"katechat-message-content-details"},Ue))))},[u,be,ge,v,R,p,E,b,l,n,G,Ue,Q,k,ie.language]),[ze,lt]=ve.useState(0),[Et,ct]=ve.useState("idle"),[Ot,vt]=ve.useState(!1);vv(()=>{if(!D||D.length===0)return;let Te=D.findIndex(it=>it.streaming);Te>=0&&lt(Te)},[D]);let Kt=_r(()=>!D||D.length===0?[]:D.map(Te=>ve.createElement(Td,{key:Te.id,message:Te,parentIndex:n,index:ze,models:l,plugins:o?.(Te)})),[D,l,n,ie.language]),Ct=_r(()=>{if(!D||D.length===0)return null;let Te=D.length,it=Ke=>{Ke.stopPropagation(),!Ot&&(vt(!0),ct("exit-right"),setTimeout(()=>{lt(ce=>(ce-1+Te)%Te),ct("enter-left"),setTimeout(()=>{ct("idle"),vt(!1)},Ii)},Ii))},Ve=Ke=>{Ke.stopPropagation(),!Ot&&(vt(!0),ct("exit-left"),setTimeout(()=>{lt(ce=>(ce+1)%Te),ct("enter-right"),setTimeout(()=>{ct("idle"),vt(!1)},Ii)},Ii))},Ne=Kt[ze];return ve.createElement("div",{className:"katechat-message-carousel"},ve.createElement("div",{className:"message-carousel-header"},ve.createElement("div",{className:"message-carousel-controls"},Te>1&&ve.createElement(ve.Fragment,null,ve.createElement(bd,{onClick:it,"aria-label":"Previous",radius:"xl",variant:"light"},ve.createElement(kk,null)),ve.createElement(bd,{onClick:Ve,"aria-label":"Next",radius:"xl",variant:"light"},ve.createElement(Pk,null))))),ve.createElement("div",{className:`carousel-message-content animation-${Et}`},Ne),Te>1&&ve.createElement(fd,{className:"carousel-model-icons"},D.map((Ke,ce)=>{let et=l?.find(qe=>qe.modelId===Ke.modelId),dt=ce===ze;return ve.createElement(Cv,{key:Ke.id,label:et?.name||$("AI"),position:"top"},ve.createElement(Lk,{key:Ke.id,c:dt?void 0:"dimmed",onClick:()=>lt(ce)},et?ve.createElement(Ai,{apiProvider:et.apiProvider,provider:et.provider,size:20}):ve.createElement(Rv,{size:20})))})))},[Kt,ie.language,ze,Et,Ot]);return Ct?ve.createElement("div",{id:`message-${t.id}`,className:["katechat-message",`katechat-message__${u||""}`].join(" "),ref:V},ve.createElement("div",{className:"katechat-message-linked-toggle"},ve.createElement(wk,{checked:W,onChange:Te=>te(Te.currentTarget.checked),label:$(W?"Main":"Others"),size:"sm"})),ve.createElement("div",{className:["katechat-message-main",W?"":"hidden"].join(" ")},Ge),ve.createElement("div",{className:["katechat-message-linked",W?"hidden":""].join(" ")},Ct)):ve.createElement("div",{id:`message-${t.id}`,className:["katechat-message",`katechat-message__${u||""}`].join(" "),ref:V},ve.createElement("div",{className:"katechat-message-main"},Ge))});hd.displayName="ChatMessage";import Ni from"react";import{ScrollArea as Yk}from"@mantine/core";var EF=({html:e,text:t})=>Ni.createElement(Yk,{type:"hover",offsetScrollbars:!0,className:["katechat-message-content","katechat-message-preview"].join(" ")},t?Ni.createElement(Ni.Fragment,null,e?e.map((n,a)=>Ni.createElement("div",{key:a,dangerouslySetInnerHTML:{__html:n}})):Ni.createElement("div",null,t)):"...");import $t,{useMemo as Kk}from"react";import{Text as Nv,Group as Ov,Avatar as Xk,Box as Zk}from"@mantine/core";import{IconRobot as Jk}from"@tabler/icons-react";import mr from"react";import{IconBrandOpenai as zk,IconBrandAws as Av,IconBrandYandex as Hk,IconMessageChatbot as Vk,IconAi as Wk,IconBrandMeta as qk,IconBrandMedium as Qk,IconBrandGoogle as $k}from"@tabler/icons-react";var Ai=({apiProvider:e,provider:t,size:n=24})=>{switch(e){case"OPEN_AI":return mr.createElement(zk,{size:n});case"AWS_BEDROCK":switch(t?.toLowerCase()){case"amazon":return mr.createElement(Av,{size:n});case"anthropic":return mr.createElement(Wk,{size:n});case"mistral ai":return mr.createElement(Qk,{size:n});case"meta":return mr.createElement(qk,{size:n});default:return mr.createElement(Av,{size:n})}case"YANDEX_FM":return mr.createElement(Hk,{size:n});case"GOOGLE_VERTEX_AI":return mr.createElement($k,{size:n});default:return mr.createElement(Vk,{size:n})}};var Td=({message:e,parentIndex:t,index:n,plugins:a,models:o})=>{let s=Kk(()=>o?.find(l=>l.modelId===e.modelId),[o,e.modelId]);return $t.createElement(Zk,{key:e.id},$t.createElement(Ov,{align:"center",pt:"sm"},$t.createElement(Xk,{radius:"xl",size:"md"},s?$t.createElement(Ai,{apiProvider:s.apiProvider,provider:s.provider}):$t.createElement(Jk,null)),$t.createElement(Ov,{gap:"xs"},$t.createElement(Nv,{size:"sm",fw:500,c:"teal"},e.modelName),e.status&&$t.createElement(Do,{status:e.status}),e.statusInfo&&e.status!=="reasoning"&&$t.createElement(Nv,{size:"xs",c:"dimmed"},e.statusInfo))),$t.createElement("div",{className:"katechat-message-content"},$t.createElement(Ri,{status:e.status,content:e.content,statusInfo:e.statusInfo,streaming:e.streaming||!1}),e.html?e.html.map((l,d)=>$t.createElement("div",{key:d,dangerouslySetInnerHTML:{__html:l}})):$t.createElement("div",null,e.content),$t.createElement("div",{className:"katechat-message-footer"},$t.createElement(wo,{messageId:e.id,messageIndex:t,linkedMessageIndex:n}),a)))};Td.displayName="LinkedChatMessage";import nt,{forwardRef as d3,useCallback as Rd,useEffect as Dv,useImperativeHandle as u3,useMemo as _3,useRef as m3,useState as Ns}from"react";import{Text as Id,Textarea as p3,Button as wv,Group as Mv,ActionIcon as Lv,Stack as g3,Tooltip as E3,Menu as Ad}from"@mantine/core";import{IconCirclePlus as S3,IconPlayerStopFilled as f3,IconSend as b3,IconX as h3}from"@tabler/icons-react";import{notifications as xa}from"@mantine/notifications";import pr,{useState as jk,useCallback as Is,useRef as yv,useEffect as e3}from"react";import{Group as t3,Tooltip as n3,Box as xv,ActionIcon as r3}from"@mantine/core";import{IconFileUpload as a3}from"@tabler/icons-react";import{useTranslation as i3}from"react-i18next";var Oi={dropzone:"_dropzone_16zca_1",dragging:"_dragging_16zca_8",disabled:"_disabled_16zca_12"};var o3=["image/jpeg","image/png","image/webp"],vd=({onFilesAdd:e,disabled:t,uploadFormats:n=o3})=>{let[a,o]=jk(!1),s=yv(null),l=yv(null),{t:d}=i3();e3(()=>{let R=I=>{if(!t&&I.clipboardData&&I.clipboardData.items){let N=Array.from(I.clipboardData.items).map(k=>k.getAsFile()).filter(vi);N.length>0&&(I.preventDefault(),I.stopPropagation(),e(N))}};return document.addEventListener("paste",R),()=>{document.removeEventListener("paste",R)}},[e,t]);let u=Is(R=>{R.preventDefault(),R.stopPropagation(),o(!0)},[]),p=Is(R=>{R.preventDefault(),R.stopPropagation(),o(!1)},[]),E=Is(R=>{if(R.preventDefault(),R.stopPropagation(),o(!1),t)return;let I=R.dataTransfer.files&&R.dataTransfer.files.length>0?Array.from(R.dataTransfer.files).filter(N=>N.size>0):[];e(I)},[e]),b=Is(R=>{if(R.target.files&&R.target.files.length>0){let I=Array.from(R.target.files).filter(N=>N.size>0);I.length&&e(I),l.current&&(l.current.value="")}},[e]),v=()=>{t||l.current?.click()};return pr.createElement(pr.Fragment,null,pr.createElement(xv,{ref:s,className:`drop-zone ${Oi.dropzone} ${a?Oi.dragging:""} ${t?Oi.disabled:""}`,onDragOver:u,onDragLeave:p,onDrop:E,onClick:v},pr.createElement(t3,{justify:"start",className:"drop-zone-control",gap:"xs"},pr.createElement(n3,{label:d("Click or drop an image/document here to upload"),position:"top"},pr.createElement(r3,{variant:"default",size:"lg"},pr.createElement(a3,{size:"24"}))),pr.createElement(xv,{hiddenFrom:"xs",pe:"sm"},d("Upload File")),pr.createElement("input",{ref:l,type:"file",multiple:!0,accept:n?.join(","),onChange:b,className:Oi.fileInput,style:{display:"none"},disabled:t}))))};import As from"react";import{Text as s3}from"@mantine/core";import{IconFileUpload as l3}from"@tabler/icons-react";var Cd={overlay:"_overlay_vjudp_1",content:"_content_vjudp_16"};import{useTranslation as c3}from"react-i18next";var oU=({visible:e,message:t,onDragOver:n,onDragLeave:a,onDrop:o})=>{let{t:s}=c3();return e?As.createElement("div",{className:Cd.overlay,onDragOver:n,onDragLeave:a,onDrop:o},As.createElement("div",{className:Cd.content},As.createElement(l3,{size:48,color:"var(--mantine-color-blue-4)"}),As.createElement(s3,{size:"lg",fw:500,c:"blue.4"},t||s("Drop files here to upload")))):null};import{useTranslation as T3}from"react-i18next";var Ut={chatControlsContainer:"_chatControlsContainer_sg9gr_1",chatInputContainer:"_chatInputContainer_sg9gr_4",chatInputGroup:"_chatInputGroup_sg9gr_7",chatInput:"_chatInput_sg9gr_4",hidden:"_hidden_sg9gr_22",promptMode:"_promptMode_sg9gr_34",promptModeText:"_promptModeText_sg9gr_41",promptFadeInUp:"_promptFadeInUp_sg9gr_1",promptShimmer:"_promptShimmer_sg9gr_1",headerRow:"_headerRow_sg9gr_71",documentsInput:"_documentsInput_sg9gr_89",columned:"_columned_sg9gr_95",imagesList:"_imagesList_sg9gr_103",previewImage:"_previewImage_sg9gr_108",removeButton:"_removeButton_sg9gr_120"};var RU=d3(({loadCompleted:e=!1,disabled:t=!1,promptMode:n=!1,promptText:a,uploadAllowed:o=!0,streaming:s,setSending:l,previousMessages:d=[],header:u,inputPlugins:p,uploadFormats:E,maxUploadFileSize:b=64*1024*1024,maxImagesCount:v=0,onSendMessage:R,onStopRequest:I,onDocumentsUpload:N},k)=>{let[D,Y]=Ns(""),[U,V]=Ns([]),[G,W]=Ns(0),[te,Q]=Ns(!1),le=m3(null),{t:$}=T3();u3(k,()=>({handleAddFiles:Z=>he(Z)})),Dv(()=>{le.current?.focus()},[e,t]),Dv(()=>{W(d?.length?d.length:0)},[e,d]);let ie=async()=>{if(!(!D?.trim()&&!U.length)){l(!0);try{Y(""),V([]),await R(D,U)}catch(Z){xa.show({title:"Error",message:Z instanceof Error?Z.message:$("Failed to send message"),color:"red"})}finally{l(!1)}}},ge=Rd(Z=>{let J=!D?.trim();if(Z.key==="Enter"&&!Z.shiftKey&&!Z.altKey)Z.preventDefault(),ie(),Q(!1);else if(Z.key==="ArrowUp"&&(J||te)){let ae=Math.max(0,G-1);Y(d[ae]),W(ae),Q(!0)}else if(Z.key==="ArrowDown"&&(J||te)){let ae=Math.min(d.length-1,G+1);Y(d[ae]),W(ae),Q(!0)}else Q(!1)},[ie,D,d,G]),xe=Rd(Z=>{Y(Z.currentTarget.value)},[]),be=_3(()=>t||s||!D?.trim()&&!U.length,[D,U,s,t]),he=Rd(Z=>{let J=Z.filter(pe=>pe.size<b);J.length<Z.length&&xa.show({title:$("Warning"),message:$("Some files are too large and were not added (max size: {{size}} MB)",{size:b/(1024*1024)}),color:"yellow"});let ae=J.filter(pe=>pe.type?.startsWith("image/")),Se=J.filter(pe=>!pe.type?.startsWith("image/"));ae.length&&v<=0&&(xa.show({title:$("Warning"),message:$("Image uploads are not allowed in this chat."),color:"yellow"}),ae=[]),ae.length+U.length>v&&(xa.show({title:$("Warning"),message:$("You can only add up to {{count}} images at a time",{count:v}),color:"yellow"}),ae=ae.slice(0,v-U.length)),ae.length&&Promise.all(ae.map(pe=>new Promise((Ce,Ue)=>{let Ge=new FileReader;Ge.onload=ze=>{if(ze.target?.result){let lt=ze.target.result;Ce({fileName:pe.name,mimeType:pe.type,bytesBase64:lt})}else Ue(new Error($("Failed to read file: {{fileName}}",{fileName:pe.name})))},Ge.onerror=ze=>{Ue(new Error($("Failed to read file: {{fileName}}, error: {{error}}",{fileName:pe.name,error:ze})))},Ge.readAsDataURL(pe)}))).then(pe=>{V(Ce=>[...Ce,...pe])}).catch(pe=>{xa.show({title:$("Error"),message:pe.message||$("Failed to read image files"),color:"red"})}),Se.length&&N?N(Se):Se.length&&xa.show({title:$("Warning"),message:$("Document upload is not available in this chat."),color:"orange"})},[U,N,v,b]),z=Z=>J=>{J.stopPropagation(),V(ae=>ae.filter(Se=>Se.fileName!==Z))};return nt.createElement("div",{className:[Ut.chatControlsContainer,n?Ut.promptMode:"",e?"":Ut.hidden].join(" ")},n?nt.createElement(g3,{align:"center",justify:"center",gap:"md",mb:"lg"},nt.createElement(Id,{c:"dimmed",size:"lg",ta:"center",className:Ut.promptModeText},a||$("Start the conversation by sending a message"))):null,nt.createElement("div",{className:Ut.chatControls},u&&nt.createElement(Mv,{align:"center",gap:"xs",className:Ut.headerRow},u),nt.createElement("div",{className:[Ut.chatInputContainer,U.length?Ut.columned:""].join(" ")},o&&nt.createElement("div",{className:Ut.documentsInput},nt.createElement(Mv,{visibleFrom:"xs",gap:"xs"},nt.createElement(vd,{onFilesAdd:he,uploadFormats:E}),p),U?.length>0&&nt.createElement("div",{className:Ut.imagesList},U.map(Z=>nt.createElement("div",{key:Z.fileName,className:Ut.previewImage},nt.createElement("img",{src:Z.bytesBase64,alt:Z.fileName}),nt.createElement(Lv,{className:Ut.removeButton,color:"red.9",size:"xs",onClick:z(Z.fileName)},nt.createElement(h3,{size:16})))))),nt.createElement("div",{className:Ut.chatInputGroup},o&&nt.createElement(Ad,{shadow:"md",width:"content"},nt.createElement(Ad.Target,null,nt.createElement(Lv,{size:"lg",variant:"subtle",hiddenFrom:"xs"},nt.createElement(E3,{label:$("More..."),position:"right",withArrow:!0},nt.createElement(S3,{size:"24"})))),nt.createElement(Ad.Dropdown,null,nt.createElement(vd,{onFilesAdd:he,uploadFormats:E}),p)),nt.createElement(p3,{ref:le,className:Ut.chatInput,placeholder:$("Type your message..."),value:D||"",autosize:!0,minRows:1,maxRows:7,onChange:xe,onKeyDown:ge,disabled:t}),I&&s?nt.createElement(wv,{onClick:I,disabled:t},nt.createElement(f3,{size:24})," ",nt.createElement(Id,{visibleFrom:"md"},$("Stop"))):nt.createElement(wv,{onClick:ie,disabled:be,className:I&&s?Ut.hidden:"",radius:"md"},nt.createElement(b3,{size:24})," ",nt.createElement(Id,{visibleFrom:"md",ml:"xs"},$("Send")))))))});import gr,{useCallback as yi,useRef as F3,useState as yd}from"react";import{Stack as U3}from"@mantine/core";import{notifications as xd}from"@mantine/notifications";import{useTranslation as G3}from"react-i18next";import gn,{useEffect as y3,useCallback as zv}from"react";import{Image as x3,Text as Os,Group as Hv,Stack as D3,ActionIcon as w3,Tooltip as M3,Drawer as L3}from"@mantine/core";import{useDisclosure as k3}from"@mantine/hooks";import{IconExternalLink as P3}from"@tabler/icons-react";var Gv=jl(tc(),1);import Uv from"i18next";import{initReactI18next as A3}from"react-i18next";import N3 from"i18next-browser-languagedetector";var kv={AI:"AI","Are you sure you want to delete this item? This action cannot be undone.":"Are you sure you want to delete this item? This action cannot be undone.",Cancel:"Cancel",Cancelled:"Cancelled","Click or drop an image/document here to upload":"Click or drop an image/document here to upload","Code block is empty":"Code block is empty","Code Interpreter":"Code Interpreter",Completed:"Completed","Confirm Deletion":"Confirm Deletion",Copy:"Copy","Copy CSV":"Copy CSV","Copy message":"Copy message",Delete:"Delete",Details:"Details","Document upload is not available in this chat.":"Document upload is not available in this chat.",Download:"Download","Download CSV":"Download CSV","Drop files here to upload":"Drop files here to upload",Error:"Error","Failed to copy message":"Failed to copy message","Failed to read file: {{fileName}}":"Failed to read file: {{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"Failed to read file: {{fileName}}, error: {{error}}","Failed to read image files":"Failed to read image files","Failed to send message":"Failed to send message","Image Preview":"Image Preview","Image uploads are not allowed in this chat.":"Image uploads are not allowed in this chat.","In Progress":"In Progress",language:{de:"Deutsch",en:"English",label:"Language",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"Language is not specified for this code block",Main:"Main","More...":"More...","Open image source":"Open image source",Others:"Others","RAG Search":"RAG Search",Reasoning:"Reasoning",Send:"Send","Some files are too large and were not added (max size: {{size}} MB)":"Some files are too large and were not added (max size: {{size}} MB)",source:"source","Start the conversation by sending a message":"Start the conversation by sending a message",Started:"Started",Stop:"Stop","Tool Call":"Tool Call","Tool Call Completed":"Tool Call Completed","Type your message...":"Type your message...","Upload File":"Upload File",Warning:"Warning","Web Search":"Web Search",You:"You","You can only add up to {{count}} images at a time":"You can only add up to {{count}} images at a time"};var Pv={AI:"KI","Are you sure you want to delete this item? This action cannot be undone.":"M\xF6chten Sie dieses Element wirklich l\xF6schen? Diese Aktion kann nicht r\xFCckg\xE4ngig gemacht werden.",Cancel:"Abbrechen",Cancelled:"Abgebrochen","Click or drop an image/document here to upload":"Klicken oder Bild/Dokument hierher ziehen zum Hochladen","Code block is empty":"Codeblock ist leer","Code Interpreter":"Code-Interpreter",Completed:"Abgeschlossen","Confirm Deletion":"L\xF6schen best\xE4tigen",Copy:"Kopieren","Copy CSV":"CSV kopieren","Copy message":"Nachricht kopieren",Delete:"L\xF6schen",Details:"Details","Document upload is not available in this chat.":"Dokumenten-Upload ist in diesem Chat nicht verf\xFCgbar.",Download:"Herunterladen","Download CSV":"CSV herunterladen","Drop files here to upload":"Dateien zum Hochladen hier ablegen",Error:"Fehler","Failed to copy message":"Nachricht konnte nicht kopiert werden","Failed to read file: {{fileName}}":"Datei konnte nicht gelesen werden: {{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"Datei konnte nicht gelesen werden: {{fileName}}, Fehler: {{error}}","Failed to read image files":"Bilddateien konnten nicht gelesen werden","Failed to send message":"Nachricht konnte nicht gesendet werden","Image Preview":"Bildvorschau","Image uploads are not allowed in this chat.":"Bild-Uploads sind in diesem Chat nicht erlaubt.","In Progress":"In Bearbeitung",language:{de:"Deutsch",en:"English",label:"Sprache",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"F\xFCr diesen Codeblock ist keine Sprache angegeben",Main:"Haupt","More...":"Mehr...","Open image source":"Bildquelle \xF6ffnen",Others:"Andere","RAG Search":"RAG-Suche",Reasoning:"Argumentation",Send:"Senden","Some files are too large and were not added (max size: {{size}} MB)":"Einige Dateien sind zu gro\xDF und wurden nicht hinzugef\xFCgt (max. Gr\xF6\xDFe: {{size}} MB)",source:"Quelle","Start the conversation by sending a message":"Beginnen Sie das Gespr\xE4ch, indem Sie eine Nachricht senden",Started:"Gestartet",Stop:"Stopp","Tool Call":"Tool-Aufruf","Tool Call Completed":"Tool-Aufruf abgeschlossen","Type your message...":"Nachricht eingeben...","Upload File":"Datei hochladen",Warning:"Warnung","Web Search":"Websuche",You:"Sie","You can only add up to {{count}} images at a time":"Sie k\xF6nnen nur bis zu {{count}} Bilder gleichzeitig hinzuf\xFCgen"};var Bv={AI:"\u0418\u0418","Are you sure you want to delete this item? This action cannot be undone.":"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u044D\u043B\u0435\u043C\u0435\u043D\u0442? \u042D\u0442\u043E \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043D\u0435\u043B\u044C\u0437\u044F \u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C.",Cancel:"\u041E\u0442\u043C\u0435\u043D\u0430",Cancelled:"\u041E\u0442\u043C\u0435\u043D\u0435\u043D\u043E","Click or drop an image/document here to upload":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0438\u043B\u0438 \u043F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435/\u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 \u0441\u044E\u0434\u0430 \u0434\u043B\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438","Code block is empty":"\u0411\u043B\u043E\u043A \u043A\u043E\u0434\u0430 \u043F\u0443\u0441\u0442","Code Interpreter":"\u0418\u043D\u0442\u0435\u0440\u043F\u0440\u0435\u0442\u0430\u0442\u043E\u0440 \u043A\u043E\u0434\u0430",Completed:"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u043E","Confirm Deletion":"\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435",Copy:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C","Copy CSV":"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C CSV","Copy message":"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435",Delete:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",Details:"\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0441\u0442\u0438","Document upload is not available in this chat.":"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430 \u0432 \u044D\u0442\u043E\u043C \u0447\u0430\u0442\u0435.",Download:"\u0421\u043A\u0430\u0447\u0430\u0442\u044C","Download CSV":"\u0421\u043A\u0430\u0447\u0430\u0442\u044C CSV","Drop files here to upload":"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0444\u0430\u0439\u043B\u044B \u0441\u044E\u0434\u0430 \u0434\u043B\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438",Error:"\u041E\u0448\u0438\u0431\u043A\u0430","Failed to copy message":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0441\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435","Failed to read file: {{fileName}}":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C \u0444\u0430\u0439\u043B: {{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C \u0444\u0430\u0439\u043B: {{fileName}}, \u043E\u0448\u0438\u0431\u043A\u0430: {{error}}","Failed to read image files":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C \u0444\u0430\u0439\u043B\u044B \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439","Failed to send message":"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435","Image Preview":"\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F","Image uploads are not allowed in this chat.":"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439 \u0432 \u044D\u0442\u043E\u043C \u0447\u0430\u0442\u0435 \u0437\u0430\u043F\u0440\u0435\u0449\u0435\u043D\u0430.","In Progress":"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",language:{de:"Deutsch",en:"English",label:"\u042F\u0437\u044B\u043A",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"\u042F\u0437\u044B\u043A \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0431\u043B\u043E\u043A\u0430 \u043A\u043E\u0434\u0430",Main:"\u041E\u0441\u043D\u043E\u0432\u043D\u043E\u0439","More...":"\u0415\u0449\u0451...","Open image source":"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0438\u0441\u0442\u043E\u0447\u043D\u0438\u043A \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F",Others:"\u0414\u0440\u0443\u0433\u0438\u0435","RAG Search":"RAG-\u043F\u043E\u0438\u0441\u043A",Reasoning:"\u0420\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043D\u0438\u0435",Send:"\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C","Some files are too large and were not added (max size: {{size}} MB)":"\u041D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0444\u0430\u0439\u043B\u044B \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u0438\u0435 \u0438 \u043D\u0435 \u0431\u044B\u043B\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B (\u043C\u0430\u043A\u0441. \u0440\u0430\u0437\u043C\u0435\u0440: {{size}} \u041C\u0411)",source:"\u0438\u0441\u0442\u043E\u0447\u043D\u0438\u043A","Start the conversation by sending a message":"\u041D\u0430\u0447\u043D\u0438\u0442\u0435 \u0434\u0438\u0430\u043B\u043E\u0433, \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0432 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435",Started:"\u041D\u0430\u0447\u0430\u0442\u043E",Stop:"\u0421\u0442\u043E\u043F","Tool Call":"\u0412\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430","Tool Call Completed":"\u0412\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043D","Type your message...":"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435...","Upload File":"\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0444\u0430\u0439\u043B",Warning:"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435","Web Search":"\u0412\u0435\u0431-\u043F\u043E\u0438\u0441\u043A",You:"\u0412\u044B","You can only add up to {{count}} images at a time":"\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{count}} \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439 \u0437\u0430 \u0440\u0430\u0437"};var Fv={AI:"AI","Are you sure you want to delete this item? This action cannot be undone.":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64\u9879\u5417\uFF1F\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u6D88\u3002",Cancel:"\u53D6\u6D88",Cancelled:"\u5DF2\u53D6\u6D88","Click or drop an image/document here to upload":"\u70B9\u51FB\u6216\u62D6\u653E\u56FE\u7247/\u6587\u6863\u5230\u6B64\u5904\u4E0A\u4F20","Code block is empty":"\u4EE3\u7801\u5757\u4E3A\u7A7A","Code Interpreter":"\u4EE3\u7801\u89E3\u91CA\u5668",Completed:"\u5DF2\u5B8C\u6210","Confirm Deletion":"\u786E\u8BA4\u5220\u9664",Copy:"\u590D\u5236","Copy CSV":"\u590D\u5236 CSV","Copy message":"\u590D\u5236\u6D88\u606F",Delete:"\u5220\u9664",Details:"\u8BE6\u60C5","Document upload is not available in this chat.":"\u6B64\u804A\u5929\u4E0D\u652F\u6301\u6587\u6863\u4E0A\u4F20\u3002",Download:"\u4E0B\u8F7D","Download CSV":"\u4E0B\u8F7D CSV","Drop files here to upload":"\u5C06\u6587\u4EF6\u62D6\u653E\u5230\u6B64\u5904\u4E0A\u4F20",Error:"\u9519\u8BEF","Failed to copy message":"\u590D\u5236\u6D88\u606F\u5931\u8D25","Failed to read file: {{fileName}}":"\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25\uFF1A{{fileName}}","Failed to read file: {{fileName}}, error: {{error}}":"\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25\uFF1A{{fileName}}\uFF0C\u9519\u8BEF\uFF1A{{error}}","Failed to read image files":"\u8BFB\u53D6\u56FE\u7247\u6587\u4EF6\u5931\u8D25","Failed to send message":"\u53D1\u9001\u6D88\u606F\u5931\u8D25","Image Preview":"\u56FE\u7247\u9884\u89C8","Image uploads are not allowed in this chat.":"\u6B64\u804A\u5929\u4E0D\u5141\u8BB8\u4E0A\u4F20\u56FE\u7247\u3002","In Progress":"\u8FDB\u884C\u4E2D",language:{de:"Deutsch",en:"English",label:"\u8BED\u8A00",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",zh:"\u4E2D\u6587"},"Language is not specified for this code block":"\u6B64\u4EE3\u7801\u5757\u672A\u6307\u5B9A\u8BED\u8A00",Main:"\u4E3B\u8981","More...":"\u66F4\u591A...","Open image source":"\u6253\u5F00\u56FE\u7247\u6765\u6E90",Others:"\u5176\u4ED6","RAG Search":"RAG \u641C\u7D22",Reasoning:"\u63A8\u7406",Send:"\u53D1\u9001","Some files are too large and were not added (max size: {{size}} MB)":"\u90E8\u5206\u6587\u4EF6\u8FC7\u5927\uFF0C\u672A\u88AB\u6DFB\u52A0\uFF08\u6700\u5927\uFF1A{{size}} MB\uFF09",source:"\u6765\u6E90","Start the conversation by sending a message":"\u53D1\u9001\u6D88\u606F\u5F00\u59CB\u5BF9\u8BDD",Started:"\u5DF2\u5F00\u59CB",Stop:"\u505C\u6B62","Tool Call":"\u5DE5\u5177\u8C03\u7528","Tool Call Completed":"\u5DE5\u5177\u8C03\u7528\u5B8C\u6210","Type your message...":"\u8F93\u5165\u6D88\u606F...","Upload File":"\u4E0A\u4F20\u6587\u4EF6",Warning:"\u8B66\u544A","Web Search":"\u7F51\u7EDC\u641C\u7D22",You:"\u4F60","You can only add up to {{count}} images at a time":"\u4E00\u6B21\u6700\u591A\u53EA\u80FD\u6DFB\u52A0 {{count}} \u5F20\u56FE\u7247"};var Nd=["en","de","ru","zh"],Od="ui-language";function O3(e={}){return(0,Gv.merge)({en:{translation:kv},de:{translation:Pv},ru:{translation:Bv},zh:{translation:Fv}},e)}async function GU({lookupLocalStorage:e=Od,supportedLngs:t=Nd,fallbackLng:n="en",resources:a={}}={}){return Uv.use(N3).use(A3).init({resources:O3(a),fallbackLng:n,supportedLngs:t,interpolation:{escapeValue:!1},detection:{order:["localStorage","navigator","htmlTag"],lookupLocalStorage:e,caches:["localStorage"]}})}function Yv(e){return(typeof e=="string"?new Date(e):e).toLocaleDateString(Uv.language||"ru-RU",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}import{useTranslation as B3}from"react-i18next";var Vv=({fileName:e,fileUrl:t,mimeType:n,createdAt:a,onOpenSource:o,sourceTitle:s,onClose:l})=>{let[d,{open:u,close:p}]=k3(!1);y3(()=>{t&&u()},[t,u]);let E=zv(()=>{l(),p()},[l,p]),b=zv(()=>{o?.(),E()},[o,E]),{t:v}=B3();return gn.createElement(L3,{size:"xl",opened:d,onClose:E,title:v("Image Preview")},t&&gn.createElement(D3,{gap:"md"},gn.createElement(x3,{src:t,alt:e,fit:"contain",mah:"70vh"}),gn.createElement(Hv,{justify:"space-between"},gn.createElement("div",null,gn.createElement(Os,{size:"sm",fw:500},e),gn.createElement(Os,{size:"xs",c:"dimmed"},a?Yv(a)+" \u2022":""," ",n)),o&&gn.createElement(Hv,{gap:"xs"},gn.createElement(M3,{label:v("Open image source")},gn.createElement(w3,{variant:"light",onClick:b},gn.createElement(P3,{size:16}))))),o&&gn.createElement(Os,{size:"sm",c:"dimmed"},"From:"," ",gn.createElement(Os,{span:!0,c:"blue",style:{cursor:"pointer"},onClick:b},s||v("source")))))};var Wv=e=>[...Array.from(e.tHead?.querySelectorAll("tr")??[]),...Array.from(e.tBodies[0]?.querySelectorAll("tr")??[])].map(n=>Array.from(n.querySelectorAll("th, td")).map(a=>`"${(a.textContent||"").replace(/"/g,'""')}"`).join(",")).join(`
451
+ `),qv=gr.memo(({messages:e,onMessageDeleted:t,onAddMessage:n,plugins:a=[],detailsPlugins:o=[],codePlugins:s,models:l=[]})=>{let{t:d}=G3(),u=F3(null),[p,E]=yd(),[b,v]=yd(),[R,I]=yd(new Set),N=yi(G=>I(W=>new Set(W).add(G)),[]),k=yi(G=>{I(W=>{let te=new Set(W);return te.delete(G),te})},[]),D=()=>{E(void 0),v(void 0)},Y=yi(G=>{if(!G.target)return;let W=["code-run-btn","code-copy-btn","code-download-btn","code-toggle-all","copy-message-btn","code-header","message-image","table-sort-btn","table-copy-csv-btn","table-download-csv-btn"],te=G.target;for(let $ of W){let ie=te.closest(`.${$}`);if(ie){te=ie;break}}if(!te)return;let Q=te,le=$=>{let ie=$?.parentElement;ie.classList.contains("collapsed")?($.classList.remove("collapsed"),ie&&ie.classList.remove("collapsed")):($.classList.add("collapsed"),ie&&ie.classList.add("collapsed"))};if(Q.classList.contains("code-run-btn")||Q.classList.contains("code-download-btn")){let $=Q.dataset.lang,ie=Q.classList.contains("code-run-btn"),xe=Q.closest(".code-header")?.parentElement?.querySelector(".code-data");if(xe){let be=decodeURIComponent(xe.dataset.code||"").trim();if(!be)return xd.show({title:d("Error"),message:d("Code block is empty"),color:"red"});if(ie){if(!$)return xd.show({title:d("Error"),message:d("Language is not specified for this code block"),color:"red"});s?.[$]?.execute(be,$)}else{let he=`code.${hv($||"txt")}`,z=new Blob([be],{type:"text/plain"}),Z=URL.createObjectURL(z),J=document.createElement("a");J.href=Z,J.download=he,J.click(),URL.revokeObjectURL(Z)}}}else if(Q.classList.contains("code-copy-btn")){let $=Q.parentElement?.parentElement?.nextElementSibling?.querySelector(".code-data");if($){let xe=decodeURIComponent($.dataset.code||"").trim();navigator.clipboard.writeText(xe)}let ie=Q.querySelector(".copy-icon"),ge=Q.querySelector(".check-icon");ie&&ge&&(ie.style.display="none",ge.style.display="block",setTimeout(()=>{ie.style.display="block",ge.style.display="none"},2e3))}else if(Q.classList.contains("code-header"))le(Q);else if(Q.classList.contains("code-toggle-all"))u.current?.querySelectorAll(".code-header").forEach($=>{le($)});else if(Q.classList.contains("copy-message-btn")){if(Q.dataset.messageId){let $=Q.dataset.messageIndex,ie=Q.dataset.messageLinkedIndex,ge=Q.dataset.messageId,xe=$!=null?e[Number($)]:e.find(Z=>Z.id===ge);ie!=null&&(xe=xe?.linkedMessages?.[Number(ie)]),Ed(xe,"Message should exist to copy");let be=(xe.content||"").trim(),he=xe.html||[];if(he.length&&he[0]){let Z=new Blob([he.join("<br/>")],{type:"text/html"}),J=new Blob([be],{type:"text/plain"});navigator.clipboard.write([new ClipboardItem({[Z.type]:Z,[J.type]:J})]).catch(ae=>xd.show({title:d("Error"),message:ae.message||d("Failed to copy message"),color:"red"}))}else navigator.clipboard.writeText(be);let z=Q.parentElement?.querySelector(".check-icon");z&&(Q.style.display="none",z.style.display="inline-block",setTimeout(()=>{Q.style.display="inline-block",z.style.display="none"},2e3))}}else if(Q.classList.contains("message-image")){let $=Q.dataset.fileName,ie=Q.src;E(ie),v($)}else if(Q.classList.contains("table-sort-btn")){let $=parseInt(Q.dataset.colIndex||"0"),ie=Q.closest("table");if(!ie)return;let ge=ie.querySelector("tbody");if(!ge)return;let be=Q.dataset.sortDir==="asc"?"desc":"asc";ie.querySelectorAll("th.table-sort-btn").forEach(z=>{delete z.dataset.sortDir,z.classList.remove("sort-asc","sort-desc")}),Q.dataset.sortDir=be,Q.classList.add(be==="asc"?"sort-asc":"sort-desc");let he=Array.from(ge.querySelectorAll("tr"));he.sort((z,Z)=>{let J=z.querySelectorAll("td")[$]?.textContent||"",ae=Z.querySelectorAll("td")[$]?.textContent||"",Se=parseFloat(J),pe=parseFloat(ae);return!isNaN(Se)&&!isNaN(pe)?be==="asc"?Se-pe:pe-Se:be==="asc"?J.localeCompare(ae):ae.localeCompare(J)}),he.forEach(z=>ge.appendChild(z))}else if(Q.classList.contains("table-copy-csv-btn")){let $=Q.closest(".message-table");if(!$)return;navigator.clipboard.writeText(Wv($));let ie=Q.querySelector(".copy-icon"),ge=Q.querySelector(".check-icon");ie&&ge&&(ie.style.display="none",ge.style.display="block",setTimeout(()=>{ie.style.display="block",ge.style.display="none"},2e3))}else if(Q.classList.contains("table-download-csv-btn")){let $=Q.closest(".message-table");if(!$)return;let ie=new Blob([Wv($)],{type:"text/csv"}),ge=URL.createObjectURL(ie),xe=document.createElement("a");xe.href=ge,xe.download="table.csv",xe.click(),URL.revokeObjectURL(ge)}},[e,s]),U=yi(G=>gr.createElement(gr.Fragment,null,a.map((W,te)=>gr.createElement(W,{key:te,message:G,onAddMessage:n,onAction:N,onActionEnd:k,onMessageDeleted:t,disabled:R.has(G.id)}))),[a,n,t,R,N,k]),V=yi(G=>{let W=o.map((te,Q)=>te(G)).filter(vi);return W.length?W:null},[a,o]);return gr.createElement(gr.Fragment,null,gr.createElement(U3,{gap:"sm",ref:u,onClick:Y},e.map((G,W)=>gr.createElement(hd,{key:G.id,message:G,index:W,disabled:R.has(G.id),pluginsLoader:U,messageDetailsLoader:V,models:l,codePlugins:s}))),gr.createElement(Vv,{fileName:b??"",fileUrl:p??"",onClose:D}))});import Ln,{useCallback as ys,useEffect as Xv,useImperativeHandle as q3,useRef as Zv,useState as Q3}from"react";import{Group as $3,Loader as K3}from"@mantine/core";import{IconCircleChevronDown as X3}from"@tabler/icons-react";import{useEffect as Y3,useRef as Qv}from"react";function Dd(e,t,n=0){let a=Qv(null),o=Qv(null);return Y3(()=>{a.current?.disconnect();let s=setTimeout(()=>{a.current=new IntersectionObserver(l=>{l[0].isIntersecting&&e()}),o.current&&a.current.observe(o.current)},n);return()=>{clearTimeout(s),a.current?.disconnect()}},[t,e]),o}import z3,{createContext as H3,useContext as V3,useEffect as $v}from"react";import{useLocalStorage as W3}from"@mantine/hooks";var Kv=H3(void 0),d8=({children:e})=>{let[t,n]=W3({key:"ui-theme",defaultValue:"light"});$v(()=>{if(t==="auto"){let o=window.matchMedia("(prefers-color-scheme: dark)").matches;document.documentElement.dataset.mantine=o?"dark":"light"}else document.documentElement.dataset.mantine=t},[t]);let a=()=>{let o=t==="dark"?"light":"dark";n(o),document.documentElement.dataset.mantine=o};return $v(()=>{if(t==="auto"){let o=window.matchMedia("(prefers-color-scheme: dark)"),s=l=>{document.documentElement.dataset.mantine=l.matches?"dark":"light"};return o.addEventListener("change",s),()=>o.removeEventListener("change",s)}},[t]),z3.createElement(Kv.Provider,{value:{colorScheme:t,setColorScheme:n,toggleColorScheme:a}},e)},u8=()=>{let e=V3(Kv);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};var Jv=Ln.forwardRef(({messages:e,models:t=[],addChatMessage:n,removeMessages:a,loadMoreMessages:o,plugins:s,detailsPlugins:l,codePlugins:d,streaming:u=!1,loadCompleted:p=!0,loading:E=!1,autoScroll:b=!0},v)=>{let[R,I]=Q3(!1),N=Zv(null),k=Zv(null),D=ys(()=>{N.current?.scrollTo(0,N.current?.scrollHeight??0)},[N]);q3(v,()=>({scrollToBottom:D}),[D]);let Y=ys(()=>{R||D()},[D,R]);Xv(()=>{if(b)Y();else{let W=N.current;if(W){let{scrollTop:te,scrollHeight:Q,clientHeight:le}=W;Q-te-le<2||I(!0)}}},[e,Y,b]);let U=ys(W=>{let{scrollTop:te,scrollHeight:Q,clientHeight:le}=W.target;k.current&&clearTimeout(k.current),Q-te-le<2?I(!1):e?.length&&(u?k.current=setTimeout(()=>{I(!0)},100):I(!0))},[e?.length,u]),V=ys(()=>{I(!1),D()},[D]);Xv(()=>{p&&(I(!1),setTimeout(D,200))},[p,b]);let G=Dd(()=>o?.(),[o],200);return Ln.createElement("div",{className:["katechat-messages-container",p?"container--load-completed":"",p&&e?.length===0?"container--empty":""].join(" ")},Ln.createElement("div",{className:"katechat-messages-container-scroller",ref:N,onScroll:U},Ln.createElement("div",{ref:G}),E&&Ln.createElement($3,{justify:"center",align:"center",py:"xl"},Ln.createElement(K3,null)),Ln.createElement("div",{className:"katechat-messages-list"},e&&Ln.createElement(qv,{messages:e,onMessageDeleted:a,onAddMessage:n,models:t,plugins:s,detailsPlugins:l,codePlugins:d}))),Ln.createElement("div",{className:["katechat-anchor-container",R?"container--visible":""].join(" ")},Ln.createElement("div",{className:"katechat-anchor"},Ln.createElement(X3,{size:32,color:"teal",onClick:V}))))});Jv.displayName="ChatMessagesContainer";import Da from"react";import{Modal as Z3,Button as jv,Group as J3,Text as j3,Stack as eP}from"@mantine/core";import{useTranslation as tP}from"react-i18next";var M8=({isOpen:e,onClose:t,onConfirm:n,title:a,message:o,confirmLabel:s,cancelLabel:l,isLoading:d=!1})=>{let{t:u}=tP();return Da.createElement(Z3,{opened:e,onClose:t,title:a||u("Confirm Deletion"),centered:!0},Da.createElement(eP,null,Da.createElement(j3,{style:{wordBreak:"break-word"}},o||u("Are you sure you want to delete this item? This action cannot be undone.")),Da.createElement(J3,{mt:"md",justify:"flex-end"},Da.createElement(jv,{variant:"outline",onClick:t,disabled:d},l||u("Cancel")),Da.createElement(jv,{color:"red",onClick:n,loading:d},s||u("Delete")))))};import ta from"react";import{Menu as xs,ActionIcon as nP,Tooltip as rP}from"@mantine/core";import{IconLanguage as aP}from"@tabler/icons-react";import{useTranslation as iP}from"react-i18next";var W8=({languages:e=Nd})=>{let{t,i18n:n}=iP(),a=o=>{n.changeLanguage(o),localStorage.setItem(Od,o)};return ta.createElement(xs,{shadow:"md",width:150,position:"bottom-end"},ta.createElement(xs.Target,null,ta.createElement(rP,{label:t("language.label")},ta.createElement(nP,{variant:"subtle","aria-label":t("language.label")},ta.createElement(aP,{size:18})))),ta.createElement(xs.Dropdown,null,e.map(o=>ta.createElement(xs.Item,{key:o,onClick:()=>a(o),fw:n.language===o?700:400},t(`language.${o}`)))))};export{Nd as BASE_SUPPORTED_LANGUAGES,j1 as ChatFileType,RU as ChatInput,hd as ChatMessage,EF as ChatMessagePreview,Jv as ChatMessagesContainer,qv as ChatMessagesList,J1 as CustomModelProtocol,M8 as DeleteConfirmationModal,oU as DropFilesOverlay,vd as FileDropzone,o3 as IMAGE_UPLOAD_FORMATS,Vv as ImagePopup,Od as LANGUAGE_STORAGE_KEY,W8 as LanguageSelector,Td as LinkedChatMessage,ec as MessageRole,Do as MessageStatus,X1 as MessageType,Z1 as ModelType,Ai as ProviderIcon,ti as ResponseStatus,Kv as ThemeContext,d8 as ThemeProvider,Tv as assert,Lr as escapeHtml,Yv as formatDate,LB as formatFileSize,PB as formatTokensLimit,hv as getProgrammingLanguageExt,GU as initI18n,hk as normalizeMatJax,wB as parseChatMessages,Rs as parseMarkdown,FB as sortItemsBySections,Dd as useIntersectionObserver,u8 as useTheme};
452
452
  /*! Bundled license information:
453
453
 
454
454
  lodash/lodash.js: