@katechat/ui 1.0.12 → 1.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.css.map +2 -2
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +2 -2
- package/dist/esm/index.css +1 -1
- package/dist/esm/index.css.map +2 -2
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +2 -2
- package/package.json +1 -1
package/dist/esm/index.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
@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-xs) var(--mantine-spacing-md);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-md)}.katechat-message .katechat-message-linked-toggle{display:none}@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}}c{width:100%;overflow-x:hidden;display:flex;flex-direction:column}.katechat-message-content{display:flex;flex-direction:column;align-items:stretch;border-radius:var(--mantine-radius-md);margin-top:var(--mantine-spacing-md)}.katechat-message-content p{margin-block-start:0;margin-block-end:0}.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.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}.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);margin-left:1rem}.katechat-message-content .katechat-message-content-details .message-details-header svg{color:var(--mantine-color-gray-7)}.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:1.5rem}.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-xs));margin:0;border-top:1px solid var(--mantine-color-default-border);border-left:1px solid var(--mantine-color-default-border)}.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:last-child td{border-bottom: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 tr:last-child td:first-child{border-bottom-left-radius:var(--mantine-radius-md)}.katechat-message-content table 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}.katechat-message-content .code-header{font-size:.875rem;margin-top:.5rem;padding:.25rem 1rem .25rem .5rem;border-top-right-radius:.25em;border-top-left-radius:.25em;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;display:flex;align-items:center;flex-direction:row;cursor:pointer;user-select:none;min-height:2rem}.katechat-message-content .code-header .title .header-toggle{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}.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}.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{display:none}.katechat-message-content .code-block{flex-grow:1;overflow-x:auto;margin-top:0;margin-bottom:1rem;border-bottom-right-radius:.25em;border-bottom-left-radius:.25em;transition:clip-path .5s ease,height .5s ease,opacity .5s ease}.katechat-message-content .code-block pre{margin:0;white-space:pre}.katechat-message-content .code-block.collapsed{clip-path:inset(0 0 100% 0);overflow-y:hidden;height:0;opacity:0}.katechat-message-content .code-data{display:none}.katechat-message-content .code-footer{font-size:90%;display:flex;align-items:flex-start;margin-bottom:.7rem}.katechat-message-content .code-footer.collapsed{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:.5rem 0 0;opacity:.5;transition:opacity var(--theme-default-time) ease}.katechat-message-footer .check-icon{display:none}.katechat-message-footer:hover{opacity:1}[data-mantine-color-scheme=dark] .katechat-message .code-block,[data-mantine-color-scheme=dark] .katechat-message pre,[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-8)}[data-mantine-color-scheme=light] .katechat-message .code-block,[data-mantine-color-scheme=light] .katechat-message pre,[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.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-3)}[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{background-color:var(--mantine-color-blue-1)}._controls_pp1ia_1:where([data-orientation=horizontal]){bottom:auto!important;top:.5rem!important;left:calc(50% - 5rem)!important;width:10rem!important;padding:0!important}._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}[data-mantine-color-scheme=light] ._chatControlsContainer_g4zeu_1 ._chatControls_g4zeu_1{border:1px solid var(--app-shell-border-color)}[data-mantine-color-scheme=light] ._chatControlsContainer_g4zeu_1 ._headerRow_g4zeu_4{background-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=light] ._chatControlsContainer_g4zeu_1 ._chatInputGroup_g4zeu_7 ._chatInput_g4zeu_7 textarea{border:1px solid var(--app-shell-border-color)}._hidden_g4zeu_11{display:none!important}._chatControlsContainer_g4zeu_1{display:flex;flex-direction:column;align-items:stretch;justify-content:center}._chatControlsContainer_g4zeu_1._promptMode_g4zeu_21{flex-grow:1;padding-bottom:15rem}._chatControlsContainer_g4zeu_1 ._chatControls_g4zeu_1{border:1px solid var(--app-shell-border-color);border-radius:var(--mantine-radius-default);background-color:var(--app-shell-border-color)}._chatControlsContainer_g4zeu_1 ._headerRow_g4zeu_4{padding:.33rem;border-top-left-radius:var(--mantine-radius-default);border-top-right-radius:var(--mantine-radius-default)}._chatInputContainer_g4zeu_36{display:flex;flex-direction:row;align-items:flex-start;padding:.5rem;gap:.5rem;background-color:var(--mantine-color-body);border-radius:var(--mantine-radius-default)}._chatInputContainer_g4zeu_36 ._documentsInput_g4zeu_45{display:flex;flex-direction:row;gap:.25rem;align-items:stretch}._chatInputContainer_g4zeu_36._columned_g4zeu_51{flex-direction:column;align-items:flex-start;justify-items:stretch}._chatInputContainer_g4zeu_36._columned_g4zeu_51 ._chatInputGroup_g4zeu_7{align-self:stretch}._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59{display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 ._previewImage_g4zeu_64{position:relative;background-color:var(--input-bg);height:64px;border-radius:var(--mantine-radius-default)}._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 ._previewImage_g4zeu_64 img{max-width:64px;max-height:64px;object-fit:cover;border-radius:var(--mantine-radius-default)}._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 ._previewImage_g4zeu_64 ._removeButton_g4zeu_76{position:absolute;top:.1rem;right:.1rem;border-radius:50%}._chatInputContainer_g4zeu_36 ._chatInputGroup_g4zeu_7{flex-grow:1;display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_g4zeu_36 ._chatInputGroup_g4zeu_7 ._chatInput_g4zeu_7{flex-grow:1}._chatInputContainer_g4zeu_36 ._chatInputGroup_g4zeu_7 ._chatInput_g4zeu_7 textarea{border:1px solid var(--app-shell-border-color)}.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}
|
|
1
|
+
@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-xs) var(--mantine-spacing-md);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-md)}.katechat-message .katechat-message-linked-toggle{display:none}@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}}c{width:100%;overflow-x:hidden;display:flex;flex-direction:column}.katechat-message-content{display:flex;flex-direction:column;align-items:stretch;border-radius:var(--mantine-radius-md);margin-top:var(--mantine-spacing-md)}.katechat-message-content p{margin-block-start:0;margin-block-end:0}.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.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}.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);margin-left:1rem}.katechat-message-content .katechat-message-content-details .message-details-header svg{color:var(--mantine-color-gray-7)}.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:1.5rem}.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-xs));margin:0;border-top:1px solid var(--mantine-color-default-border);border-left:1px solid var(--mantine-color-default-border)}.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:last-child td{border-bottom: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 tr:last-child td:first-child{border-bottom-left-radius:var(--mantine-radius-md)}.katechat-message-content table 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}.katechat-message-content .code-header{font-size:.875rem;margin-top:.5rem;padding:.25rem 1rem .25rem .5rem;border-top-right-radius:.25em;border-top-left-radius:.25em;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;display:flex;align-items:center;flex-direction:row;cursor:pointer;user-select:none;min-height:2rem}.katechat-message-content .code-header .title .header-toggle{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}.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}.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{display:none}.katechat-message-content .code-block{flex-grow:1;overflow-x:auto;margin-top:0;margin-bottom:1rem;border-bottom-right-radius:.25em;border-bottom-left-radius:.25em;transition:clip-path .5s ease,height .5s ease,opacity .5s ease}.katechat-message-content .code-block pre{margin:0;white-space:pre}.katechat-message-content .code-block.collapsed{clip-path:inset(0 0 100% 0);overflow-y:hidden;height:0;opacity:0}.katechat-message-content .code-data{display:none}.katechat-message-content .code-footer{font-size:90%;display:flex;align-items:flex-start;margin-bottom:.7rem}.katechat-message-content .code-footer.collapsed{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:.5rem 0 0;opacity:.5;transition:opacity var(--theme-default-time) ease}.katechat-message-footer .check-icon{display:none}.katechat-message-footer:hover{opacity:1}[data-mantine-color-scheme=dark] .katechat-message .code-block,[data-mantine-color-scheme=dark] .katechat-message pre,[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-8)}[data-mantine-color-scheme=light] .katechat-message .code-block,[data-mantine-color-scheme=light] .katechat-message pre,[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.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-3)}[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{background-color:var(--mantine-color-blue-1)}._controls_pp1ia_1:where([data-orientation=horizontal]){bottom:auto!important;top:.5rem!important;left:calc(50% - 5rem)!important;width:10rem!important;padding:0!important}._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}[data-mantine-color-scheme=light] ._chatControlsContainer_1e5t9_1 ._chatControls_1e5t9_1{border:1px solid var(--app-shell-border-color);background-color:var(--mantine-color-gray-2)}[data-mantine-color-scheme=light] ._chatControlsContainer_1e5t9_1 ._chatInputGroup_1e5t9_5 ._chatInput_1e5t9_5 textarea{border:1px solid var(--app-shell-border-color)}._hidden_1e5t9_9{display:none!important}._chatControlsContainer_1e5t9_1{display:flex;flex-direction:column;align-items:stretch;justify-content:center}._chatControlsContainer_1e5t9_1._promptMode_1e5t9_19{flex-grow:1;padding-bottom:15rem}._chatControlsContainer_1e5t9_1 ._chatControls_1e5t9_1{border:1px solid var(--app-shell-border-color);border-radius:var(--mantine-radius-default);background-color:var(--mantine-color-dark-6)}._chatControlsContainer_1e5t9_1 ._headerRow_1e5t9_28{padding:.33rem .5rem;border-top-left-radius:var(--mantine-radius-default);border-top-right-radius:var(--mantine-radius-default)}._chatInputContainer_1e5t9_34{display:flex;flex-direction:row;align-items:flex-start;padding:.5rem;gap:.5rem;background-color:var(--mantine-color-body);border-bottom-left-radius:var(--mantine-radius-default);border-bottom-right-radius:var(--mantine-radius-default)}._chatInputContainer_1e5t9_34 ._documentsInput_1e5t9_44{display:flex;flex-direction:row;gap:.25rem;align-items:stretch}._chatInputContainer_1e5t9_34._columned_1e5t9_50{flex-direction:column;align-items:flex-start;justify-items:stretch}._chatInputContainer_1e5t9_34._columned_1e5t9_50 ._chatInputGroup_1e5t9_5{align-self:stretch}._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58{display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 ._previewImage_1e5t9_63{position:relative;background-color:var(--input-bg);height:64px;border-radius:var(--mantine-radius-default)}._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 ._previewImage_1e5t9_63 img{max-width:64px;max-height:64px;object-fit:cover;border-radius:var(--mantine-radius-default)}._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 ._previewImage_1e5t9_63 ._removeButton_1e5t9_75{position:absolute;top:.1rem;right:.1rem;border-radius:50%}._chatInputContainer_1e5t9_34 ._chatInputGroup_1e5t9_5{flex-grow:1;display:flex;flex-direction:row;gap:.5rem}._chatInputContainer_1e5t9_34 ._chatInputGroup_1e5t9_5 ._chatInput_1e5t9_5{flex-grow:1}._chatInputContainer_1e5t9_34 ._chatInputGroup_1e5t9_5 ._chatInput_1e5t9_5 textarea{border:1px solid var(--app-shell-border-color)}.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}
|
|
2
2
|
/*# sourceMappingURL=index.css.map */
|
package/dist/esm/index.css.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/chat/ChatMessage.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/message/ChatMessage.Carousel.module.scss", "esbuild-sass-plugin:css-chunk:src/controls/FileDropzone/FileDropzone.module.scss", "esbuild-sass-plugin:css-chunk:src/components/chat/input/ChatInput.module.scss", "../../src/components/ChatMessagesContainer.scss"],
|
|
4
|
-
"sourcesContent": [".katechat-message {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: row;\n\n .katechat-message-main,\n .katechat-message-linked {\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);\n flex-grow: 1;\n width: 50%;\n display: flex;\n flex-direction: column;\n border-radius: var(--mantine-radius-md);\n }\n\n .katechat-message-linked {\n margin-right: var(--mantine-spacing-md);\n }\n\n .katechat-message-linked-toggle {\n display: none;\n }\n}\n\n@media (max-width: 1280px) {\n .katechat-message {\n flex-direction: column;\n position: relative;\n\n .katechat-message-linked-toggle {\n position: absolute;\n right: 0.5rem;\n top: 0.5rem;\n display: flex;\n z-index: 5;\n }\n\n .katechat-message-main,\n .katechat-message-linked {\n width: 100%;\n margin: 0;\n border-radius: 0;\n }\n\n .hidden {\n display: none;\n }\n }\n}\nc {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.katechat-message-content {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-radius: var(--mantine-radius-md);\n\n margin-top: var(--mantine-spacing-md);\n\n p {\n margin-block-start: 0;\n margin-block-end: 0;\n }\n\n blockquote {\n padding: 0 var(--mb-padding, var(--mantine-spacing-sm));\n border-left: 0.5rem solid var(--mantine-color-default-border);\n margin: 0.25rem 0;\n }\n\n hr {\n width: 100%;\n margin: 0.5rem 0 0.25rem;\n border: none;\n border-top: 1px solid var(--mantine-color-default-border);\n }\n\n ol,\n ul {\n margin: 0.25rem 0 0.25rem 0.5rem;\n padding: 0 0 0 1.5rem;\n }\n\n img {\n max-width: 256px;\n max-height: 256px;\n align-self: center;\n height: auto;\n margin: 0.5rem;\n vertical-align: top;\n cursor: pointer;\n }\n\n &.katechat-message-preview {\n height: 200px;\n padding: var(--mb-padding, var(--mantine-spacing-sm)) 0 0 0;\n font-size: 80%;\n\n img {\n max-width: 50%;\n height: auto;\n }\n }\n\n .katechat-message-content-details {\n margin-top: 1rem;\n font-size: 80%;\n display: flex;\n flex-direction: column;\n gap: 0;\n\n ol,\n ul {\n margin: 0.25rem 0;\n padding: 0 0 0 1rem;\n }\n\n .message-details-header {\n margin-bottom: var(--mantine-spacing-md);\n margin-left: 1rem;\n\n svg {\n color: var(--mantine-color-gray-7);\n }\n }\n\n .message-details-content {\n padding-left: var(--mantine-spacing-md);\n border-left: 1px solid var(--mantine-color-gray-7);\n margin-left: 1.5rem;\n }\n }\n\n table {\n margin-top: var(--mantine-spacing-md);\n margin-bottom: var(--mantine-spacing-md);\n border-spacing: 0;\n\n td,\n th {\n padding: var(--mb-padding, var(--mantine-spacing-xs));\n margin: 0;\n border-top: 1px solid var(--mantine-color-default-border);\n border-left: 1px solid var(--mantine-color-default-border);\n }\n\n tr td:last-child,\n tr th:last-child {\n border-right: 1px solid var(--mantine-color-default-border);\n }\n tr:last-child td {\n border-bottom: 1px solid var(--mantine-color-default-border);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-dark-5);\n }\n\n thead {\n tr {\n background-color: var(--mantine-color-dark-5);\n }\n\n tr:first-child th:first-child {\n border-top-left-radius: var(--mantine-radius-md);\n }\n tr:first-child th:last-child {\n border-top-right-radius: var(--mantine-radius-md);\n }\n }\n\n tr:last-child td:first-child {\n border-bottom-left-radius: var(--mantine-radius-md);\n }\n tr:last-child td:last-child {\n border-bottom-right-radius: var(--mantine-radius-md);\n }\n }\n\n pre {\n margin: 0.5rem 0;\n padding: 1em;\n clip-path: none;\n font-size: 90%;\n transition: all var(--theme-default-time) ease;\n font-family: var(--monospace-font-family);\n overflow-x: auto;\n }\n\n .code-header {\n font-size: 0.875rem;\n margin-top: 0.5rem;\n padding: 0.25rem 1rem 0.25rem 0.5rem;\n border-top-right-radius: 0.25em;\n border-top-left-radius: 0.25em;\n\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-direction: row;\n white-space: normal;\n gap: 0.5rem;\n\n .title {\n width: fit-content;\n font-weight: 700;\n display: flex;\n align-items: center;\n flex-direction: row;\n cursor: pointer;\n user-select: none;\n min-height: 2rem;\n\n .header-toggle {\n margin-right: 0.5rem;\n display: none;\n display: inline-block;\n transform: rotateZ(90deg);\n transition: transform var(--theme-default-time) ease;\n }\n }\n\n .code-header-actions {\n align-content: flex-end;\n }\n\n .action-btn {\n padding: 0.1rem;\n line-height: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n width: fit-content;\n gap: 0.25rem;\n cursor: pointer;\n }\n\n &.collapsed {\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n margin-bottom: 0;\n .title {\n .header-toggle {\n transform: translateY(0.2rem) rotateZ(0deg);\n }\n }\n\n .code-copy-btn {\n display: none;\n }\n }\n }\n\n .code-block {\n pre {\n margin: 0;\n white-space: pre;\n }\n\n flex-grow: 1;\n overflow-x: auto;\n margin-top: 0;\n margin-bottom: 1rem;\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n transition:\n clip-path 0.5s ease,\n height 0.5s ease,\n opacity 0.5s ease;\n\n &.collapsed {\n clip-path: inset(0 0 100% 0);\n overflow-y: hidden;\n height: 0;\n opacity: 0;\n }\n }\n\n .code-data {\n display: none;\n }\n\n .code-footer {\n font-size: 90%;\n display: flex;\n align-items: flex-start;\n margin-bottom: 0.7rem;\n\n &.collapsed {\n display: none;\n }\n }\n\n .katex-html {\n display: inline-block;\n margin: 0.5rem 0.5rem 0 0;\n }\n}\n\n.katechat-message-footer {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 0 0;\n opacity: 0.5;\n transition: opacity var(--theme-default-time) ease;\n\n .check-icon {\n display: none;\n }\n\n &:hover {\n opacity: 1;\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-dark-6);\n }\n\n .code-header {\n background-color: var(--mantine-color-dark-6);\n &:hover {\n background-color: var(--mantine-color-dark-5);\n }\n }\n\n &.katechat-message__user {\n background-color: var(--mantine-color-dark-8);\n border-top: 1px solid var(--mantine-color-dark-6);\n border-bottom: 1px solid var(--mantine-color-dark-6);\n }\n\n &.katechat-message__error {\n .katechat-message-content {\n color: var(--mantine-color-yellow-9);\n }\n }\n\n .katechat-message-linked {\n background-color: var(--mantine-color-dark-8);\n }\n }\n}\n\n[data-mantine-color-scheme=\"light\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-gray-3);\n }\n\n .code-header {\n background-color: var(--mantine-color-gray-3);\n &:hover {\n background-color: var(--mantine-color-gray-4);\n }\n }\n\n &.katechat-message__user {\n background-color: var(--mantine-color-blue-0);\n border-top: 1px solid var(--mantine-color-blue-1);\n border-bottom: 1px solid var(--mantine-color-blue-1);\n }\n\n &.katechat-message__error {\n .katechat-message-content {\n color: var(--mantine-color-red-5);\n }\n }\n\n .katechat-message-linked {\n background-color: var(--mantine-color-gray-3);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-blue-1);\n }\n\n thead tr {\n background-color: var(--mantine-color-blue-1);\n }\n }\n}\n", "._controls_pp1ia_1:where([data-orientation=horizontal]) {\n bottom: auto !important;\n top: 0.5rem !important;\n left: calc(50% - 5rem) !important;\n width: 10rem !important;\n padding: 0 !important;\n}", "._dropzone_16zca_1 {\n cursor: pointer;\n}\n._dropzone_16zca_1:hover {\n color: var(--mantine-color-brand-6);\n}\n\n._dragging_16zca_8 {\n color: var(--mantine-color-brand-6);\n}\n\n._disabled_16zca_12 {\n color: var(--mantine-color-gray-4);\n cursor: not-allowed;\n}", "[data-mantine-color-scheme=light] ._chatControlsContainer_g4zeu_1 ._chatControls_g4zeu_1 {\n border: 1px solid var(--app-shell-border-color);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_g4zeu_1 ._headerRow_g4zeu_4 {\n background-color: var(--mantine-color-gray-4);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_g4zeu_1 ._chatInputGroup_g4zeu_7 ._chatInput_g4zeu_7 textarea {\n border: 1px solid var(--app-shell-border-color);\n}\n\n._hidden_g4zeu_11 {\n display: none !important;\n}\n\n._chatControlsContainer_g4zeu_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: center;\n}\n._chatControlsContainer_g4zeu_1._promptMode_g4zeu_21 {\n flex-grow: 1;\n padding-bottom: 15rem;\n}\n._chatControlsContainer_g4zeu_1 ._chatControls_g4zeu_1 {\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-default);\n background-color: var(--app-shell-border-color);\n}\n._chatControlsContainer_g4zeu_1 ._headerRow_g4zeu_4 {\n padding: 0.33rem;\n border-top-left-radius: var(--mantine-radius-default);\n border-top-right-radius: var(--mantine-radius-default);\n}\n\n._chatInputContainer_g4zeu_36 {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0.5rem;\n gap: 0.5rem;\n background-color: var(--mantine-color-body);\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_g4zeu_36 ._documentsInput_g4zeu_45 {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n align-items: stretch;\n}\n._chatInputContainer_g4zeu_36._columned_g4zeu_51 {\n flex-direction: column;\n align-items: flex-start;\n justify-items: stretch;\n}\n._chatInputContainer_g4zeu_36._columned_g4zeu_51 ._chatInputGroup_g4zeu_7 {\n align-self: stretch;\n}\n._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 ._previewImage_g4zeu_64 {\n position: relative;\n background-color: var(--input-bg);\n height: 64px;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 ._previewImage_g4zeu_64 img {\n max-width: 64px;\n max-height: 64px;\n object-fit: cover;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_g4zeu_36 ._filesList_g4zeu_59 ._previewImage_g4zeu_64 ._removeButton_g4zeu_76 {\n position: absolute;\n top: 0.1rem;\n right: 0.1rem;\n border-radius: 50%;\n}\n._chatInputContainer_g4zeu_36 ._chatInputGroup_g4zeu_7 {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_g4zeu_36 ._chatInputGroup_g4zeu_7 ._chatInput_g4zeu_7 {\n flex-grow: 1;\n}\n._chatInputContainer_g4zeu_36 ._chatInputGroup_g4zeu_7 ._chatInput_g4zeu_7 textarea {\n border: 1px solid var(--app-shell-border-color);\n}", "@import \"@mantine/core/styles.css\";\n\n.katechat-messages-container {\n flex-grow: 1;\n position: relative;\n display: none;\n flex-direction: column;\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-md);\n /* \n * Two-level scrolling architecture:\n * The parent (.messagesContainer) uses overflow-y: hidden to prevent unwanted scrollbars and control the visible area.\n * The child (.scroller) uses overflow-y: scroll to enable vertical scrolling for the message list.\n * This pattern is intentional; do not merge the scroll behavior into the parent.\n */\n overflow-y: hidden;\n opacity: 1;\n transition: all 0.3s ease;\n\n .katechat-messages-list {\n opacity: 0;\n margin-bottom: 1rem;\n }\n\n &.container--empty {\n flex-grow: 0;\n opacity: 0;\n }\n\n .katechat-messages-container-scroller {\n overflow-y: scroll;\n flex-grow: 1;\n }\n\n &.container--load-completed {\n .scroller {\n scroll-behavior: smooth;\n }\n\n display: flex;\n\n .katechat-messages-list {\n opacity: 1;\n }\n }\n\n .katechat-message:first-child {\n border-top: none;\n }\n .katechat-message:last-child {\n border-bottom: none;\n }\n}\n\n.katechat-anchor-container {\n position: absolute;\n width: 40px;\n left: calc(50% - 40px);\n bottom: 0;\n height: 48px;\n z-index: 2;\n display: flex;\n flex-direction: column;\n justify-items: center;\n align-items: center;\n opacity: 0;\n transition: all 0.5s ease;\n\n &.container--visible {\n opacity: 1;\n }\n\n .katechat-anchor {\n background-color: var(--mantine-color-body);\n border-radius: 50%;\n height: 32px;\n width: 32px;\n opacity: 0.75;\n cursor: pointer;\n\n &:hover {\n opacity: 1;\n }\n }\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": [".katechat-message {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: row;\n\n .katechat-message-main,\n .katechat-message-linked {\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);\n flex-grow: 1;\n width: 50%;\n display: flex;\n flex-direction: column;\n border-radius: var(--mantine-radius-md);\n }\n\n .katechat-message-linked {\n margin-right: var(--mantine-spacing-md);\n }\n\n .katechat-message-linked-toggle {\n display: none;\n }\n}\n\n@media (max-width: 1280px) {\n .katechat-message {\n flex-direction: column;\n position: relative;\n\n .katechat-message-linked-toggle {\n position: absolute;\n right: 0.5rem;\n top: 0.5rem;\n display: flex;\n z-index: 5;\n }\n\n .katechat-message-main,\n .katechat-message-linked {\n width: 100%;\n margin: 0;\n border-radius: 0;\n }\n\n .hidden {\n display: none;\n }\n }\n}\nc {\n width: 100%;\n overflow-x: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.katechat-message-content {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-radius: var(--mantine-radius-md);\n\n margin-top: var(--mantine-spacing-md);\n\n p {\n margin-block-start: 0;\n margin-block-end: 0;\n }\n\n blockquote {\n padding: 0 var(--mb-padding, var(--mantine-spacing-sm));\n border-left: 0.5rem solid var(--mantine-color-default-border);\n margin: 0.25rem 0;\n }\n\n hr {\n width: 100%;\n margin: 0.5rem 0 0.25rem;\n border: none;\n border-top: 1px solid var(--mantine-color-default-border);\n }\n\n ol,\n ul {\n margin: 0.25rem 0 0.25rem 0.5rem;\n padding: 0 0 0 1.5rem;\n }\n\n img {\n max-width: 256px;\n max-height: 256px;\n align-self: center;\n height: auto;\n margin: 0.5rem;\n vertical-align: top;\n cursor: pointer;\n }\n\n &.katechat-message-preview {\n height: 200px;\n padding: var(--mb-padding, var(--mantine-spacing-sm)) 0 0 0;\n font-size: 80%;\n\n img {\n max-width: 50%;\n height: auto;\n }\n }\n\n .katechat-message-content-details {\n margin-top: 1rem;\n font-size: 80%;\n display: flex;\n flex-direction: column;\n gap: 0;\n\n ol,\n ul {\n margin: 0.25rem 0;\n padding: 0 0 0 1rem;\n }\n\n .message-details-header {\n margin-bottom: var(--mantine-spacing-md);\n margin-left: 1rem;\n\n svg {\n color: var(--mantine-color-gray-7);\n }\n }\n\n .message-details-content {\n padding-left: var(--mantine-spacing-md);\n border-left: 1px solid var(--mantine-color-gray-7);\n margin-left: 1.5rem;\n }\n }\n\n table {\n margin-top: var(--mantine-spacing-md);\n margin-bottom: var(--mantine-spacing-md);\n border-spacing: 0;\n\n td,\n th {\n padding: var(--mb-padding, var(--mantine-spacing-xs));\n margin: 0;\n border-top: 1px solid var(--mantine-color-default-border);\n border-left: 1px solid var(--mantine-color-default-border);\n }\n\n tr td:last-child,\n tr th:last-child {\n border-right: 1px solid var(--mantine-color-default-border);\n }\n tr:last-child td {\n border-bottom: 1px solid var(--mantine-color-default-border);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-dark-5);\n }\n\n thead {\n tr {\n background-color: var(--mantine-color-dark-5);\n }\n\n tr:first-child th:first-child {\n border-top-left-radius: var(--mantine-radius-md);\n }\n tr:first-child th:last-child {\n border-top-right-radius: var(--mantine-radius-md);\n }\n }\n\n tr:last-child td:first-child {\n border-bottom-left-radius: var(--mantine-radius-md);\n }\n tr:last-child td:last-child {\n border-bottom-right-radius: var(--mantine-radius-md);\n }\n }\n\n pre {\n margin: 0.5rem 0;\n padding: 1em;\n clip-path: none;\n font-size: 90%;\n transition: all var(--theme-default-time) ease;\n font-family: var(--monospace-font-family);\n overflow-x: auto;\n }\n\n .code-header {\n font-size: 0.875rem;\n margin-top: 0.5rem;\n padding: 0.25rem 1rem 0.25rem 0.5rem;\n border-top-right-radius: 0.25em;\n border-top-left-radius: 0.25em;\n\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-direction: row;\n white-space: normal;\n gap: 0.5rem;\n\n .title {\n width: fit-content;\n font-weight: 700;\n display: flex;\n align-items: center;\n flex-direction: row;\n cursor: pointer;\n user-select: none;\n min-height: 2rem;\n\n .header-toggle {\n margin-right: 0.5rem;\n display: none;\n display: inline-block;\n transform: rotateZ(90deg);\n transition: transform var(--theme-default-time) ease;\n }\n }\n\n .code-header-actions {\n align-content: flex-end;\n }\n\n .action-btn {\n padding: 0.1rem;\n line-height: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n width: fit-content;\n gap: 0.25rem;\n cursor: pointer;\n }\n\n &.collapsed {\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n margin-bottom: 0;\n .title {\n .header-toggle {\n transform: translateY(0.2rem) rotateZ(0deg);\n }\n }\n\n .code-copy-btn {\n display: none;\n }\n }\n }\n\n .code-block {\n pre {\n margin: 0;\n white-space: pre;\n }\n\n flex-grow: 1;\n overflow-x: auto;\n margin-top: 0;\n margin-bottom: 1rem;\n border-bottom-right-radius: 0.25em;\n border-bottom-left-radius: 0.25em;\n transition:\n clip-path 0.5s ease,\n height 0.5s ease,\n opacity 0.5s ease;\n\n &.collapsed {\n clip-path: inset(0 0 100% 0);\n overflow-y: hidden;\n height: 0;\n opacity: 0;\n }\n }\n\n .code-data {\n display: none;\n }\n\n .code-footer {\n font-size: 90%;\n display: flex;\n align-items: flex-start;\n margin-bottom: 0.7rem;\n\n &.collapsed {\n display: none;\n }\n }\n\n .katex-html {\n display: inline-block;\n margin: 0.5rem 0.5rem 0 0;\n }\n}\n\n.katechat-message-footer {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 0 0;\n opacity: 0.5;\n transition: opacity var(--theme-default-time) ease;\n\n .check-icon {\n display: none;\n }\n\n &:hover {\n opacity: 1;\n }\n}\n\n[data-mantine-color-scheme=\"dark\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-dark-6);\n }\n\n .code-header {\n background-color: var(--mantine-color-dark-6);\n &:hover {\n background-color: var(--mantine-color-dark-5);\n }\n }\n\n &.katechat-message__user {\n background-color: var(--mantine-color-dark-8);\n border-top: 1px solid var(--mantine-color-dark-6);\n border-bottom: 1px solid var(--mantine-color-dark-6);\n }\n\n &.katechat-message__error {\n .katechat-message-content {\n color: var(--mantine-color-yellow-9);\n }\n }\n\n .katechat-message-linked {\n background-color: var(--mantine-color-dark-8);\n }\n }\n}\n\n[data-mantine-color-scheme=\"light\"] {\n .katechat-message {\n .code-block,\n pre {\n background-color: var(--mantine-color-gray-3);\n }\n\n .code-header {\n background-color: var(--mantine-color-gray-3);\n &:hover {\n background-color: var(--mantine-color-gray-4);\n }\n }\n\n &.katechat-message__user {\n background-color: var(--mantine-color-blue-0);\n border-top: 1px solid var(--mantine-color-blue-1);\n border-bottom: 1px solid var(--mantine-color-blue-1);\n }\n\n &.katechat-message__error {\n .katechat-message-content {\n color: var(--mantine-color-red-5);\n }\n }\n\n .katechat-message-linked {\n background-color: var(--mantine-color-gray-3);\n }\n\n tr:nth-child(2n) {\n background-color: var(--mantine-color-blue-1);\n }\n\n thead tr {\n background-color: var(--mantine-color-blue-1);\n }\n }\n}\n", "._controls_pp1ia_1:where([data-orientation=horizontal]) {\n bottom: auto !important;\n top: 0.5rem !important;\n left: calc(50% - 5rem) !important;\n width: 10rem !important;\n padding: 0 !important;\n}", "._dropzone_16zca_1 {\n cursor: pointer;\n}\n._dropzone_16zca_1:hover {\n color: var(--mantine-color-brand-6);\n}\n\n._dragging_16zca_8 {\n color: var(--mantine-color-brand-6);\n}\n\n._disabled_16zca_12 {\n color: var(--mantine-color-gray-4);\n cursor: not-allowed;\n}", "[data-mantine-color-scheme=light] ._chatControlsContainer_1e5t9_1 ._chatControls_1e5t9_1 {\n border: 1px solid var(--app-shell-border-color);\n background-color: var(--mantine-color-gray-2);\n}\n[data-mantine-color-scheme=light] ._chatControlsContainer_1e5t9_1 ._chatInputGroup_1e5t9_5 ._chatInput_1e5t9_5 textarea {\n border: 1px solid var(--app-shell-border-color);\n}\n\n._hidden_1e5t9_9 {\n display: none !important;\n}\n\n._chatControlsContainer_1e5t9_1 {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: center;\n}\n._chatControlsContainer_1e5t9_1._promptMode_1e5t9_19 {\n flex-grow: 1;\n padding-bottom: 15rem;\n}\n._chatControlsContainer_1e5t9_1 ._chatControls_1e5t9_1 {\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-default);\n background-color: var(--mantine-color-dark-6);\n}\n._chatControlsContainer_1e5t9_1 ._headerRow_1e5t9_28 {\n padding: 0.33rem 0.5rem;\n border-top-left-radius: var(--mantine-radius-default);\n border-top-right-radius: var(--mantine-radius-default);\n}\n\n._chatInputContainer_1e5t9_34 {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0.5rem;\n gap: 0.5rem;\n background-color: var(--mantine-color-body);\n border-bottom-left-radius: var(--mantine-radius-default);\n border-bottom-right-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_1e5t9_34 ._documentsInput_1e5t9_44 {\n display: flex;\n flex-direction: row;\n gap: 0.25rem;\n align-items: stretch;\n}\n._chatInputContainer_1e5t9_34._columned_1e5t9_50 {\n flex-direction: column;\n align-items: flex-start;\n justify-items: stretch;\n}\n._chatInputContainer_1e5t9_34._columned_1e5t9_50 ._chatInputGroup_1e5t9_5 {\n align-self: stretch;\n}\n._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 ._previewImage_1e5t9_63 {\n position: relative;\n background-color: var(--input-bg);\n height: 64px;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 ._previewImage_1e5t9_63 img {\n max-width: 64px;\n max-height: 64px;\n object-fit: cover;\n border-radius: var(--mantine-radius-default);\n}\n._chatInputContainer_1e5t9_34 ._filesList_1e5t9_58 ._previewImage_1e5t9_63 ._removeButton_1e5t9_75 {\n position: absolute;\n top: 0.1rem;\n right: 0.1rem;\n border-radius: 50%;\n}\n._chatInputContainer_1e5t9_34 ._chatInputGroup_1e5t9_5 {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n}\n._chatInputContainer_1e5t9_34 ._chatInputGroup_1e5t9_5 ._chatInput_1e5t9_5 {\n flex-grow: 1;\n}\n._chatInputContainer_1e5t9_34 ._chatInputGroup_1e5t9_5 ._chatInput_1e5t9_5 textarea {\n border: 1px solid var(--app-shell-border-color);\n}", "@import \"@mantine/core/styles.css\";\n\n.katechat-messages-container {\n flex-grow: 1;\n position: relative;\n display: none;\n flex-direction: column;\n border: 1px solid var(--app-shell-border-color);\n border-radius: var(--mantine-radius-md);\n /* \n * Two-level scrolling architecture:\n * The parent (.messagesContainer) uses overflow-y: hidden to prevent unwanted scrollbars and control the visible area.\n * The child (.scroller) uses overflow-y: scroll to enable vertical scrolling for the message list.\n * This pattern is intentional; do not merge the scroll behavior into the parent.\n */\n overflow-y: hidden;\n opacity: 1;\n transition: all 0.3s ease;\n\n .katechat-messages-list {\n opacity: 0;\n margin-bottom: 1rem;\n }\n\n &.container--empty {\n flex-grow: 0;\n opacity: 0;\n }\n\n .katechat-messages-container-scroller {\n overflow-y: scroll;\n flex-grow: 1;\n }\n\n &.container--load-completed {\n .scroller {\n scroll-behavior: smooth;\n }\n\n display: flex;\n\n .katechat-messages-list {\n opacity: 1;\n }\n }\n\n .katechat-message:first-child {\n border-top: none;\n }\n .katechat-message:last-child {\n border-bottom: none;\n }\n}\n\n.katechat-anchor-container {\n position: absolute;\n width: 40px;\n left: calc(50% - 40px);\n bottom: 0;\n height: 48px;\n z-index: 2;\n display: flex;\n flex-direction: column;\n justify-items: center;\n align-items: center;\n opacity: 0;\n transition: all 0.5s ease;\n\n &.container--visible {\n opacity: 1;\n }\n\n .katechat-anchor {\n background-color: var(--mantine-color-body);\n border-radius: 50%;\n height: 32px;\n width: 32px;\n opacity: 0.75;\n cursor: pointer;\n\n &:hover {\n opacity: 1;\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/index.js
CHANGED
|
@@ -67,7 +67,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),Se=Y,oe=re),W===void 0
|
|
|
67
67
|
<span>Copy</span>
|
|
68
68
|
</div>
|
|
69
69
|
</div>
|
|
70
|
-
`,Ue=y1((0,lm.debounce)(()=>{U.current&&(U.current.querySelectorAll("pre").forEach(W=>{if(W.querySelector(".code-data")&&!W?.parentElement?.classList?.contains("code-block")){let oe=W.querySelector(".code-data"),Se=document.createElement("div"),he=document.createElement("div");Se.className="code-block",he.className="code-header",he.innerHTML=Oe.replaceAll("<LANG>",oe?.getAttribute("data-lang")||"plaintext"),W.parentNode?.insertBefore(he,W),W.parentNode?.insertBefore(Se,W),Se.appendChild(W)}}),U.current.querySelectorAll("img").forEach(W=>{if(!W?.classList?.contains("message-image")){W.classList.add("message-image");let oe=W.src.split("/").pop()||"";W.setAttribute("data-file-name",oe)}}))},250),[]);x1(()=>{if(!O&&U.current){let W=new MutationObserver(Ue);return W.observe(U.current,{childList:!0,subtree:!0}),Ue(),()=>W.disconnect()}},[d,O]);let de=()=>j(W=>!W),pe=Ro(()=>s?s(t):null,[s,t]),Y=Ro(()=>{let W=o?o(t):null,oe=c?.find(Se=>Se.modelId===t?.modelId);return ze.createElement(ze.Fragment,null,ze.createElement(ql,{align:"center"},ze.createElement(w1,{color:"gray",radius:"xl",size:"md",src:ce?t?.user?.avatarUrl:void 0},ce?ze.createElement(G1,null):oe?ze.createElement(No,{apiProvider:oe.apiProvider,provider:oe.provider}):ze.createElement(F1,null)),ze.createElement(ql,{gap:"xs"},ze.createElement(Vl,{size:"sm",fw:500,c:ce?"blue":"teal"},fe),ze.createElement(Vl,{size:"xs",c:"dimmed"},ne),k&&ze.createElement(vo,{status:k}),H&&ze.createElement(Vl,{size:"xs",c:"dimmed"},H))),ze.createElement("div",{className:"katechat-message-content"},O&&!b&&ze.createElement(L1,{size:"md",mb:"md"}),h?h.map((Se,he)=>ze.createElement("div",{key:he,dangerouslySetInnerHTML:{__html:Se}})):ze.createElement("div",null,b),pe&&ze.createElement(B1,{mt:"md"},ze.createElement(ql,{mb:5},ze.createElement(k1,{onClick:de,p:"xs",variant:"light",size:"xs"},"Details")),ze.createElement(P1,{in:te},ze.createElement("div",{className:"katechat-message-content-details"},pe))),ze.createElement("div",{className:"katechat-message-footer"},ze.createElement(Co,{messageId:_,messageIndex:n}),W)))},[d,fe,ne,b,h,_,p,E,c,n,V,pe,te,O]),re=Ro(()=>!L||L.length===0?null:ze.createElement(U1,{withIndicators:L.length>1,emblaOptions:{align:"center",loop:!0},slideGap:"0",withControls:L.length>1,initialSlide:L.findIndex(W=>W.streaming),classNames:sm},L.map((W,oe)=>ze.createElement(Ql,{key:W.id,message:W,parentIndex:n,index:oe,models:c,plugins:o?.(W)}))),[L,c,o,n]);return re?ze.createElement("div",{className:["katechat-message",`katechat-message__${d||""}`].join(" "),ref:U},ze.createElement("div",{className:"katechat-message-linked-toggle"},ze.createElement(M1,{checked:G,onChange:W=>q(W.currentTarget.checked),label:G?"Main":"Others",size:"sm"})),ze.createElement("div",{className:["katechat-message-main",G?"":"hidden"].join(" ")},Y),ze.createElement("div",{className:["katechat-message-linked",G?"hidden":""].join(" ")},re)):ze.createElement("div",{className:["katechat-message",`katechat-message__${d||""}`].join(" "),ref:U},ze.createElement("div",{className:"katechat-message-main"},Y))};Wl.displayName="ChatMessage";import Za from"react";import{ScrollArea as Y1}from"@mantine/core";var B3=({html:e,text:t})=>Za.createElement(Y1,{type:"hover",offsetScrollbars:!0,className:["katechat-message-content","katechat-message-preview"].join(" ")},t?Za.createElement(Za.Fragment,null,e?e.map((n,a)=>Za.createElement("div",{key:a,dangerouslySetInnerHTML:{__html:n}})):Za.createElement("div",null,t)):"...");import jt,{useMemo as K1}from"react";import{Text as dm,Group as _m,Avatar as X1}from"@mantine/core";import{Carousel as Z1}from"@mantine/carousel";import{IconRobot as J1}from"@tabler/icons-react";import rr from"react";import{IconBrandOpenai as z1,IconBrandAws as cm,IconBrandYandex as H1,IconMessageChatbot as V1,IconAi as q1,IconBrandMeta as W1,IconBrandMedium as Q1,IconBrandGoogle as $1}from"@tabler/icons-react";var No=({apiProvider:e,provider:t,size:n=24})=>{switch(e){case"OPEN_AI":return rr.createElement(z1,{size:n});case"AWS_BEDROCK":switch(t?.toLowerCase()){case"amazon":return rr.createElement(cm,{size:n});case"anthropic":return rr.createElement(q1,{size:n});case"mistral ai":return rr.createElement(Q1,{size:n});case"meta":return rr.createElement(W1,{size:n});default:return rr.createElement(cm,{size:n})}case"YANDEX_FM":return rr.createElement(H1,{size:n});case"GOOGLE_VERTEX_AI":return rr.createElement($1,{size:n});default:return rr.createElement(V1,{size:n})}};var Ql=({message:e,parentIndex:t,index:n,plugins:a,models:o})=>{let s=K1(()=>o?.find(c=>c.modelId===e.modelId),[o,e.modelId]);return jt.createElement(Z1.Slide,{key:e.id,className:"katechat-message-linked"},jt.createElement(_m,{align:"center"},jt.createElement(X1,{radius:"xl",size:"md"},s?jt.createElement(No,{apiProvider:s.apiProvider,provider:s.provider}):jt.createElement(J1,null)),jt.createElement(_m,{gap:"xs"},jt.createElement(dm,{size:"sm",fw:500,c:"teal"},e.modelName),e.status&&jt.createElement(vo,{status:e.status}),e.statusInfo&&jt.createElement(dm,{size:"xs",c:"dimmed"},e.statusInfo))),jt.createElement("div",{className:"katechat-message-content"},e.html?e.html.map((c,d)=>jt.createElement("div",{key:d,dangerouslySetInnerHTML:{__html:c}})):jt.createElement("div",null,e.content),jt.createElement("div",{className:"katechat-message-footer"},jt.createElement(Co,{messageId:e.id,messageIndex:t,linkedMessageIndex:n}),a)))};Ql.displayName="LinkedChatMessage";import Nt,{useCallback as Kl,useEffect as oy,useMemo as sy,useRef as ly,useState as Oo}from"react";import{Text as cy,Textarea as dy,Button as gm,Group as _y,ActionIcon as uy,Stack as my}from"@mantine/core";import{IconPlayerStopFilled as py,IconSend as gy,IconX as Ey}from"@tabler/icons-react";import{notifications as ei}from"@mantine/notifications";import Hr,{useState as j1,useCallback as Io,useRef as mm,useEffect as ey}from"react";import{Group as ty,Tooltip as ny,Box as ry}from"@mantine/core";import{IconFileUpload as ay}from"@tabler/icons-react";var um={};f1(um,{notEmpty:()=>Ja,ok:()=>$l});function $l(e,t){if(!e)throw t instanceof Error?t:new Error(t||"No value argument passed to `assert.ok()`")}function Ja(e){return e!=null}var ja={dropzone:"_dropzone_16zca_1",dragging:"_dragging_16zca_8",disabled:"_disabled_16zca_12"};var iy=["image/jpeg","image/png","image/webp"],pm=({onFilesAdd:e,disabled:t,uploadFormats:n=iy})=>{let[a,o]=j1(!1),s=mm(null),c=mm(null);ey(()=>{let h=R=>{if(!t&&R.clipboardData&&R.clipboardData.items){let N=Array.from(R.clipboardData.items).map(O=>O.getAsFile()).filter(Ja);N.length>0&&(R.preventDefault(),R.stopPropagation(),e(N))}};return document.addEventListener("paste",h),()=>{document.removeEventListener("paste",h)}},[e,t]);let d=Io(h=>{h.preventDefault(),h.stopPropagation(),o(!0)},[]),_=Io(h=>{h.preventDefault(),h.stopPropagation(),o(!1)},[]),p=Io(h=>{if(h.preventDefault(),h.stopPropagation(),o(!1),t)return;let R=h.dataTransfer.files&&h.dataTransfer.files.length>0?Array.from(h.dataTransfer.files).filter(N=>N.size>0):[];e(R)},[e]),E=Io(h=>{if(h.target.files&&h.target.files.length>0){let R=Array.from(h.target.files).filter(N=>N.size>0);R.length&&e(R),c.current&&(c.current.value="")}},[e]),b=()=>{t||c.current?.click()};return Hr.createElement(Hr.Fragment,null,Hr.createElement(ry,{ref:s,className:`drop-zone ${ja.dropzone} ${a?ja.dragging:""} ${t?ja.disabled:""}`,onDragOver:d,onDragLeave:_,onDrop:p,onClick:b},Hr.createElement(ty,{justify:"center",gap:"md",className:"drop-zone-control"},Hr.createElement(ny,{label:"Click or drop an image/document here",position:"top"},Hr.createElement(ay,{size:32,stroke:1.5})),Hr.createElement("input",{ref:c,type:"file",multiple:!0,accept:n?.join(","),onChange:E,className:ja.fileInput,style:{display:"none"},disabled:t}))))};var Yt={chatControlsContainer:"_chatControlsContainer_g4zeu_1",chatControls:"_chatControls_g4zeu_1",headerRow:"_headerRow_g4zeu_4",chatInputGroup:"_chatInputGroup_g4zeu_7",chatInput:"_chatInput_g4zeu_7",hidden:"_hidden_g4zeu_11",promptMode:"_promptMode_g4zeu_21",chatInputContainer:"_chatInputContainer_g4zeu_36",documentsInput:"_documentsInput_g4zeu_45",columned:"_columned_g4zeu_51",filesList:"_filesList_g4zeu_59",previewImage:"_previewImage_g4zeu_64",removeButton:"_removeButton_g4zeu_76"};var IP=({loadCompleted:e=!1,disabled:t=!1,promptMode:n=!1,uploadAllowed:a=!0,streaming:o,setSending:s,previousMessages:c=[],header:d,inputPlugins:_,uploadFormats:p,maxUploadFileSize:E=64*1024*1024,maxImagesCount:b=5,onSendMessage:h,onStopRequest:R,onDocumentsUpload:N})=>{let[O,L]=Oo(""),[k,H]=Oo([]),[U,V]=Oo(0),[G,q]=Oo(!1),te=ly(null);oy(()=>{te.current?.focus(),V(c?.length?c.length:0)},[e,c]);let j=async()=>{if(!(!O?.trim()&&!k.length)){s(!0);try{L(""),H([]),await h(O,k)}catch(de){ei.show({title:"Error",message:de instanceof Error?de.message:"Failed to send message",color:"red"})}finally{s(!1)}}},ne=Kl(de=>{let pe=!O?.trim();if(de.key==="Enter"&&!de.shiftKey&&!de.altKey)de.preventDefault(),j(),q(!1);else if(de.key==="ArrowUp"&&(pe||G)){let Y=Math.max(0,U-1);L(c[Y]),V(Y),q(!0)}else if(de.key==="ArrowDown"&&(pe||G)){let Y=Math.min(c.length-1,U+1);L(c[Y]),V(Y),q(!0)}else q(!1)},[j,O,c,U]),ce=Kl(de=>{L(de.currentTarget.value)},[]),fe=sy(()=>t||o||!O?.trim()&&!k.length,[O,k,o,t]),Oe=Kl(de=>{let pe=de.filter(W=>W.size<E);pe.length<de.length&&ei.show({title:"Warning",message:`Some files are too large and were not added (max size: ${E/1024/1024} MB)`,color:"yellow"});let Y=pe.filter(W=>W.type?.startsWith("image/")),re=pe.filter(W=>!W.type?.startsWith("image/"));Y.length+k.length>b&&(ei.show({title:"Warning",message:`You can only add up to ${b} images at a time`,color:"yellow"}),Y=Y.slice(0,b-k.length)),Y.length&&Promise.all(Y.map(W=>new Promise((oe,Se)=>{let he=new FileReader;he.onload=Ce=>{if(Ce.target?.result){let He=Ce.target.result;oe({fileName:W.name,mimeType:W.type,bytesBase64:He})}else Se(new Error(`Failed to read file: ${W.name}`))},he.onerror=Ce=>{Se(new Error(`Failed to read file: ${W.name}, error: ${Ce}`))},he.readAsDataURL(W)}))).then(W=>{H(oe=>[...oe,...W])}).catch(W=>{ei.show({title:"Error",message:W.message||"Failed to read image files",color:"red"})}),re.length&&N?N(re):re.length&&ei.show({title:"Warning",message:"Document upload is not available in this chat.",color:"orange"})},[k,N]),Ue=de=>pe=>{pe.stopPropagation(),H(Y=>Y.filter(re=>re.fileName!==de))};return Nt.createElement("div",{className:[Yt.chatControlsContainer,n?Yt.promptMode:"",e?"":Yt.hidden].join(" ")},n?Nt.createElement(my,{align:"center",justify:"center",gap:"md",mb:"lg"},Nt.createElement(cy,{c:"dimmed",size:"lg",ta:"center"},"Start the conversation by sending a message")):null,Nt.createElement("div",{className:Yt.chatControls},d&&Nt.createElement(_y,{align:"center",gap:"xs",className:Yt.headerRow},d),Nt.createElement("div",{className:[Yt.chatInputContainer,k.length?Yt.columned:""].join(" ")},a&&Nt.createElement("div",{className:Yt.documentsInput},Nt.createElement(pm,{onFilesAdd:Oe,disabled:!a,uploadFormats:p}),_,Nt.createElement("div",{className:Yt.filesList},k.map(de=>Nt.createElement("div",{key:de.fileName,className:Yt.previewImage},Nt.createElement("img",{src:de.bytesBase64,alt:de.fileName}),Nt.createElement(uy,{className:Yt.removeButton,color:"red",size:"xs",onClick:Ue(de.fileName)},Nt.createElement(Ey,{size:16})))))),Nt.createElement("div",{className:Yt.chatInputGroup},Nt.createElement(dy,{ref:te,className:Yt.chatInput,placeholder:"Type your message...",value:O||"",autosize:!0,minRows:1,maxRows:7,onChange:ce,onKeyDown:ne,disabled:t}),R?!0:null,R&&o?Nt.createElement(gm,{onClick:R,disabled:t},Nt.createElement(py,{size:16})," Stop"):Nt.createElement(gm,{onClick:j,disabled:fe,className:R&&o?Yt.hidden:""},Nt.createElement(gy,{size:16})," Send")))))};import Rr,{useCallback as Xl,useRef as Ny,useState as Zl}from"react";import{Stack as Iy}from"@mantine/core";import{notifications as Oy}from"@mantine/notifications";import dn,{useEffect as Sy,useCallback as Em}from"react";import{Image as fy,Text as Ao,Group as Sm,Stack as by,ActionIcon as hy,Modal as Ty,Tooltip as vy}from"@mantine/core";import{useDisclosure as Cy}from"@mantine/hooks";import{IconExternalLink as Ry}from"@tabler/icons-react";var fm=({fileName:e,fileUrl:t,mimeType:n,createdAt:a,onOpenSource:o,sourceTitle:s,onClose:c})=>{let[d,{open:_,close:p}]=Cy(!1);Sy(()=>{t&&_()},[t,_]);let E=Em(()=>{c(),p()},[c,p]),b=Em(()=>{o?.(),E()},[o,E]);return dn.createElement(Ty,{opened:d,onClose:E,size:"xl",title:"Image Preview",centered:!0},t&&dn.createElement(by,{gap:"md"},dn.createElement(fy,{src:t,alt:e,fit:"contain",mah:"70vh"}),dn.createElement(Sm,{justify:"space-between"},dn.createElement("div",null,dn.createElement(Ao,{size:"sm",fw:500},e),dn.createElement(Ao,{size:"xs",c:"dimmed"},a?(R=>new Date(R).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}))(a)+" \u2022":""," ",n)),o&&dn.createElement(Sm,{gap:"xs"},dn.createElement(vy,{label:"Open source"},dn.createElement(hy,{variant:"light",onClick:b},dn.createElement(Ry,{size:16}))))),o&&dn.createElement(Ao,{size:"sm",c:"dimmed"},"From:"," ",dn.createElement(Ao,{span:!0,c:"blue",style:{cursor:"pointer"},onClick:b},s||"source"))))};var bm=({messages:e,onMessageDeleted:t,onAddMessage:n,plugins:a=[],detailsPlugins:o=[],models:s=[]})=>{let c=Ny(null),[d,_]=Zl(),[p,E]=Zl(),[b,h]=Zl(new Set),R=U=>h(V=>new Set(V).add(U)),N=U=>{h(V=>{let G=new Set(V);return G.delete(U),G})},O=()=>{_(void 0),E(void 0)},L=Xl(U=>{if(!U.target)return;let V=["code-copy-btn","code-toggle-all","copy-message-btn","code-header","message-image"],G=U.target;for(let j of V){let ne=G.closest(`.${j}`);if(ne){G=ne;break}}if(!G)return;let q=G,te=j=>{let ne=j?.nextElementSibling;ne.classList.contains("collapsed")?(j.classList.remove("collapsed"),ne&&ne.classList.remove("collapsed")):(j.classList.add("collapsed"),ne&&ne.classList.add("collapsed"))};if(q.classList.contains("code-copy-btn")){let j=q.parentElement?.parentElement?.nextElementSibling?.querySelector(".code-data");if(j){let fe=decodeURIComponent(j.dataset.code||"").trim();navigator.clipboard.writeText(fe)}let ne=q.querySelector(".copy-icon"),ce=q.querySelector(".check-icon");ne&&ce&&(ne.style.display="none",ce.style.display="block",setTimeout(()=>{ne.style.display="block",ce.style.display="none"},2e3))}else if(q.classList.contains("code-header"))te(q);else if(q.classList.contains("code-toggle-all"))c.current?.querySelectorAll(".code-header").forEach(j=>{te(j)});else if(q.classList.contains("copy-message-btn")){if(q.dataset.messageId){let j=q.dataset.messageIndex,ne=q.dataset.messageLinkedIndex,ce=q.dataset.messageId,fe=j!=null?e[Number(j)]:e.find(pe=>pe.id===ce);ne!=null&&(fe=fe?.linkedMessages?.[Number(ne)]),$l(fe,"Message should exist to copy");let Oe=(fe.content||"").trim(),Ue=fe.html||[];if(Ue.length&&Ue[0]){let pe=new Blob([Ue.join("<br/>")],{type:"text/html"}),Y=new Blob([Oe],{type:"text/plain"});navigator.clipboard.write([new ClipboardItem({[pe.type]:pe,[Y.type]:Y})]).catch(re=>Oy.show({title:"Error",message:re.message||"Failed to copy message",color:"red"}))}else navigator.clipboard.writeText(Oe);let de=q.parentElement?.querySelector(".check-icon");de&&(q.style.display="none",de.style.display="inline-block",setTimeout(()=>{q.style.display="inline-block",de.style.display="none"},2e3))}}else if(q.classList.contains("message-image")){let j=q.dataset.fileName,ne=q.src;_(ne),E(j)}},[e]),k=Xl(U=>Rr.createElement(Rr.Fragment,null,a.map((V,G)=>Rr.createElement(V,{key:G,message:U,onAddMessage:n,onAction:R,onActionEnd:N,onMessageDeleted:t,disabled:b.has(U.id)}))),[a,n,t,b,R,N]),H=Xl(U=>{let V=o.map((G,q)=>G(U)).filter(Ja);return V.length?V:null},[a,o]);return Rr.createElement(Rr.Fragment,null,Rr.createElement(Iy,{gap:"xs",ref:c,onClick:L},e.map((U,V)=>Rr.createElement(Wl,{key:U.id,message:U,index:V,disabled:b.has(U.id),pluginsLoader:k,messageDetailsLoader:H,models:s}))),Rr.createElement(fm,{fileName:p??"",fileUrl:d??"",onClose:O}))};import Dn,{useCallback as yo,useEffect as Cm,useImperativeHandle as My,useRef as Rm,useState as Ly}from"react";import{Group as ky,Loader as Py}from"@mantine/core";import{IconCircleChevronDown as By}from"@tabler/icons-react";import{useEffect as Ay,useRef as hm}from"react";function Jl(e,t,n=0){let a=hm(null),o=hm(null);return Ay(()=>{a.current?.disconnect();let s=setTimeout(()=>{a.current=new IntersectionObserver(c=>{c[0].isIntersecting&&e()}),o.current&&a.current.observe(o.current)},n);return()=>{clearTimeout(s),a.current?.disconnect()}},[t,e]),o}import yy,{createContext as xy,useContext as Dy,useEffect as Tm}from"react";import{useLocalStorage as wy}from"@mantine/hooks";var vm=xy(void 0),QP=({children:e})=>{let[t,n]=wy({key:"ui-theme",defaultValue:"light"});Tm(()=>{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 Tm(()=>{if(t==="auto"){let o=window.matchMedia("(prefers-color-scheme: dark)"),s=c=>{document.documentElement.dataset.mantine=c.matches?"dark":"light"};return o.addEventListener("change",s),()=>o.removeEventListener("change",s)}},[t]),yy.createElement(vm.Provider,{value:{colorScheme:t,setColorScheme:n,toggleColorScheme:a}},e)},$P=()=>{let e=Dy(vm);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};var Nm=Dn.forwardRef(({messages:e,models:t,addChatMessage:n,removeMessages:a,loadMoreMessages:o,plugins:s,detailsPlugins:c,streaming:d=!1,loadCompleted:_=!0,loading:p=!1},E)=>{let[b,h]=Ly(!1),R=Rm(null),N=Rm(null),O=yo(()=>{R.current?.scrollTo(0,R.current?.scrollHeight??0)},[R]);My(E,()=>({scrollToBottom:O}),[O]);let L=yo(()=>{b||O()},[O,b]);Cm(()=>{L()},[e,L]);let k=yo(V=>{let{scrollTop:G,scrollHeight:q,clientHeight:te}=V.target;N.current&&clearTimeout(N.current),q-G-te<2?h(!1):e?.length&&(d?N.current=setTimeout(()=>{h(!0)},100):h(!0))},[e?.length,d]),H=yo(()=>{h(!1),O()},[O]);Cm(()=>{_&&(h(!1),setTimeout(O,200))},[_]);let U=Jl(()=>o?.(),[o],200);return Dn.createElement("div",{className:["katechat-messages-container",_?"container--load-completed":"",_&&e?.length===0?"container--empty":""].join(" ")},Dn.createElement("div",{className:"katechat-messages-container-scroller",ref:R,onScroll:k},Dn.createElement("div",{ref:U}),p&&Dn.createElement(ky,{justify:"center",align:"center",py:"xl"},Dn.createElement(Py,null)),Dn.createElement("div",{className:"katechat-messages-list"},e&&Dn.createElement(bm,{messages:e,onMessageDeleted:a,onAddMessage:n,models:t,plugins:s,detailsPlugins:c}))),Dn.createElement("div",{className:["katechat-anchor-container",b?"container--visible":""].join(" ")},Dn.createElement("div",{className:"katechat-anchor"},Dn.createElement(By,{size:32,color:"teal",onClick:H}))))});Nm.displayName="ChatMessagesContainer";var Rh=rm(Ch(),1);var ii=Rh.default;function pc(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var $r=pc();function xh(e){$r=e}var li={exec:()=>null};function Ke(e,t=""){let n=typeof e=="string"?e:e.source,a={replace:(o,s)=>{let c=typeof s=="string"?s:s.source;return c=c.replace(Ht.caret,"$1"),n=n.replace(o,c),a},getRegex:()=>new RegExp(n,t)};return a}var Ht={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},c2=/^(?:[ \t]*(?:\n|$))+/,d2=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,_2=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,ci=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,u2=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,gc=/(?:[*+-]|\d{1,9}[.)])/,Dh=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,wh=Ke(Dh).replace(/bull/g,gc).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),m2=Ke(Dh).replace(/bull/g,gc).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Ec=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,p2=/^[^\n]+/,Sc=/(?!\s*\])(?:\\.|[^\[\]\\])+/,g2=Ke(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Sc).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),E2=Ke(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,gc).getRegex(),qo="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",fc=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,S2=Ke("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",fc).replace("tag",qo).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Mh=Ke(Ec).replace("hr",ci).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",qo).getRegex(),f2=Ke(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Mh).getRegex(),bc={blockquote:f2,code:d2,def:g2,fences:_2,heading:u2,hr:ci,html:S2,lheading:wh,list:E2,newline:c2,paragraph:Mh,table:li,text:p2},Nh=Ke("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",ci).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",qo).getRegex(),b2={...bc,lheading:m2,table:Nh,paragraph:Ke(Ec).replace("hr",ci).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Nh).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",qo).getRegex()},h2={...bc,html:Ke(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",fc).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:li,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Ke(Ec).replace("hr",ci).replace("heading",` *#{1,6} *[^
|
|
70
|
+
`,Ue=y1((0,lm.debounce)(()=>{U.current&&(U.current.querySelectorAll("pre").forEach(W=>{if(W.querySelector(".code-data")&&!W?.parentElement?.classList?.contains("code-block")){let oe=W.querySelector(".code-data"),Se=document.createElement("div"),he=document.createElement("div");Se.className="code-block",he.className="code-header",he.innerHTML=Oe.replaceAll("<LANG>",oe?.getAttribute("data-lang")||"plaintext"),W.parentNode?.insertBefore(he,W),W.parentNode?.insertBefore(Se,W),Se.appendChild(W)}}),U.current.querySelectorAll("img").forEach(W=>{if(!W?.classList?.contains("message-image")){W.classList.add("message-image");let oe=W.src.split("/").pop()||"";W.setAttribute("data-file-name",oe)}}))},250),[]);x1(()=>{if(!O&&U.current){let W=new MutationObserver(Ue);return W.observe(U.current,{childList:!0,subtree:!0}),Ue(),()=>W.disconnect()}},[d,O]);let de=()=>j(W=>!W),pe=Ro(()=>s?s(t):null,[s,t]),Y=Ro(()=>{let W=o?o(t):null,oe=c?.find(Se=>Se.modelId===t?.modelId);return ze.createElement(ze.Fragment,null,ze.createElement(ql,{align:"center"},ze.createElement(w1,{color:"gray",radius:"xl",size:"md",src:ce?t?.user?.avatarUrl:void 0},ce?ze.createElement(G1,null):oe?ze.createElement(No,{apiProvider:oe.apiProvider,provider:oe.provider}):ze.createElement(F1,null)),ze.createElement(ql,{gap:"xs"},ze.createElement(Vl,{size:"sm",fw:500,c:ce?"blue":"teal"},fe),ze.createElement(Vl,{size:"xs",c:"dimmed"},ne),k&&ze.createElement(vo,{status:k}),H&&ze.createElement(Vl,{size:"xs",c:"dimmed"},H))),ze.createElement("div",{className:"katechat-message-content"},O&&!b&&ze.createElement(L1,{size:"md",mb:"md"}),h?h.map((Se,he)=>ze.createElement("div",{key:he,dangerouslySetInnerHTML:{__html:Se}})):ze.createElement("div",null,b),pe&&ze.createElement(B1,{mt:"md"},ze.createElement(ql,{mb:5},ze.createElement(k1,{onClick:de,p:"xs",variant:"light",size:"xs"},"Details")),ze.createElement(P1,{in:te},ze.createElement("div",{className:"katechat-message-content-details"},pe))),ze.createElement("div",{className:"katechat-message-footer"},ze.createElement(Co,{messageId:_,messageIndex:n}),W)))},[d,fe,ne,b,h,_,p,E,c,n,V,pe,te,O]),re=Ro(()=>!L||L.length===0?null:ze.createElement(U1,{withIndicators:L.length>1,emblaOptions:{align:"center",loop:!0},slideGap:"0",withControls:L.length>1,initialSlide:L.findIndex(W=>W.streaming),classNames:sm},L.map((W,oe)=>ze.createElement(Ql,{key:W.id,message:W,parentIndex:n,index:oe,models:c,plugins:o?.(W)}))),[L,c,o,n]);return re?ze.createElement("div",{className:["katechat-message",`katechat-message__${d||""}`].join(" "),ref:U},ze.createElement("div",{className:"katechat-message-linked-toggle"},ze.createElement(M1,{checked:G,onChange:W=>q(W.currentTarget.checked),label:G?"Main":"Others",size:"sm"})),ze.createElement("div",{className:["katechat-message-main",G?"":"hidden"].join(" ")},Y),ze.createElement("div",{className:["katechat-message-linked",G?"hidden":""].join(" ")},re)):ze.createElement("div",{className:["katechat-message",`katechat-message__${d||""}`].join(" "),ref:U},ze.createElement("div",{className:"katechat-message-main"},Y))};Wl.displayName="ChatMessage";import Za from"react";import{ScrollArea as Y1}from"@mantine/core";var B3=({html:e,text:t})=>Za.createElement(Y1,{type:"hover",offsetScrollbars:!0,className:["katechat-message-content","katechat-message-preview"].join(" ")},t?Za.createElement(Za.Fragment,null,e?e.map((n,a)=>Za.createElement("div",{key:a,dangerouslySetInnerHTML:{__html:n}})):Za.createElement("div",null,t)):"...");import jt,{useMemo as K1}from"react";import{Text as dm,Group as _m,Avatar as X1}from"@mantine/core";import{Carousel as Z1}from"@mantine/carousel";import{IconRobot as J1}from"@tabler/icons-react";import rr from"react";import{IconBrandOpenai as z1,IconBrandAws as cm,IconBrandYandex as H1,IconMessageChatbot as V1,IconAi as q1,IconBrandMeta as W1,IconBrandMedium as Q1,IconBrandGoogle as $1}from"@tabler/icons-react";var No=({apiProvider:e,provider:t,size:n=24})=>{switch(e){case"OPEN_AI":return rr.createElement(z1,{size:n});case"AWS_BEDROCK":switch(t?.toLowerCase()){case"amazon":return rr.createElement(cm,{size:n});case"anthropic":return rr.createElement(q1,{size:n});case"mistral ai":return rr.createElement(Q1,{size:n});case"meta":return rr.createElement(W1,{size:n});default:return rr.createElement(cm,{size:n})}case"YANDEX_FM":return rr.createElement(H1,{size:n});case"GOOGLE_VERTEX_AI":return rr.createElement($1,{size:n});default:return rr.createElement(V1,{size:n})}};var Ql=({message:e,parentIndex:t,index:n,plugins:a,models:o})=>{let s=K1(()=>o?.find(c=>c.modelId===e.modelId),[o,e.modelId]);return jt.createElement(Z1.Slide,{key:e.id,className:"katechat-message-linked"},jt.createElement(_m,{align:"center"},jt.createElement(X1,{radius:"xl",size:"md"},s?jt.createElement(No,{apiProvider:s.apiProvider,provider:s.provider}):jt.createElement(J1,null)),jt.createElement(_m,{gap:"xs"},jt.createElement(dm,{size:"sm",fw:500,c:"teal"},e.modelName),e.status&&jt.createElement(vo,{status:e.status}),e.statusInfo&&jt.createElement(dm,{size:"xs",c:"dimmed"},e.statusInfo))),jt.createElement("div",{className:"katechat-message-content"},e.html?e.html.map((c,d)=>jt.createElement("div",{key:d,dangerouslySetInnerHTML:{__html:c}})):jt.createElement("div",null,e.content),jt.createElement("div",{className:"katechat-message-footer"},jt.createElement(Co,{messageId:e.id,messageIndex:t,linkedMessageIndex:n}),a)))};Ql.displayName="LinkedChatMessage";import Nt,{useCallback as Kl,useEffect as oy,useMemo as sy,useRef as ly,useState as Oo}from"react";import{Text as cy,Textarea as dy,Button as gm,Group as _y,ActionIcon as uy,Stack as my}from"@mantine/core";import{IconPlayerStopFilled as py,IconSend as gy,IconX as Ey}from"@tabler/icons-react";import{notifications as ei}from"@mantine/notifications";import Hr,{useState as j1,useCallback as Io,useRef as mm,useEffect as ey}from"react";import{Group as ty,Tooltip as ny,Box as ry}from"@mantine/core";import{IconFileUpload as ay}from"@tabler/icons-react";var um={};f1(um,{notEmpty:()=>Ja,ok:()=>$l});function $l(e,t){if(!e)throw t instanceof Error?t:new Error(t||"No value argument passed to `assert.ok()`")}function Ja(e){return e!=null}var ja={dropzone:"_dropzone_16zca_1",dragging:"_dragging_16zca_8",disabled:"_disabled_16zca_12"};var iy=["image/jpeg","image/png","image/webp"],pm=({onFilesAdd:e,disabled:t,uploadFormats:n=iy})=>{let[a,o]=j1(!1),s=mm(null),c=mm(null);ey(()=>{let h=R=>{if(!t&&R.clipboardData&&R.clipboardData.items){let N=Array.from(R.clipboardData.items).map(O=>O.getAsFile()).filter(Ja);N.length>0&&(R.preventDefault(),R.stopPropagation(),e(N))}};return document.addEventListener("paste",h),()=>{document.removeEventListener("paste",h)}},[e,t]);let d=Io(h=>{h.preventDefault(),h.stopPropagation(),o(!0)},[]),_=Io(h=>{h.preventDefault(),h.stopPropagation(),o(!1)},[]),p=Io(h=>{if(h.preventDefault(),h.stopPropagation(),o(!1),t)return;let R=h.dataTransfer.files&&h.dataTransfer.files.length>0?Array.from(h.dataTransfer.files).filter(N=>N.size>0):[];e(R)},[e]),E=Io(h=>{if(h.target.files&&h.target.files.length>0){let R=Array.from(h.target.files).filter(N=>N.size>0);R.length&&e(R),c.current&&(c.current.value="")}},[e]),b=()=>{t||c.current?.click()};return Hr.createElement(Hr.Fragment,null,Hr.createElement(ry,{ref:s,className:`drop-zone ${ja.dropzone} ${a?ja.dragging:""} ${t?ja.disabled:""}`,onDragOver:d,onDragLeave:_,onDrop:p,onClick:b},Hr.createElement(ty,{justify:"center",gap:"md",className:"drop-zone-control"},Hr.createElement(ny,{label:"Click or drop an image/document here",position:"top"},Hr.createElement(ay,{size:32,stroke:1.5})),Hr.createElement("input",{ref:c,type:"file",multiple:!0,accept:n?.join(","),onChange:E,className:ja.fileInput,style:{display:"none"},disabled:t}))))};var Yt={chatControlsContainer:"_chatControlsContainer_1e5t9_1",chatControls:"_chatControls_1e5t9_1",chatInputGroup:"_chatInputGroup_1e5t9_5",chatInput:"_chatInput_1e5t9_5",hidden:"_hidden_1e5t9_9",promptMode:"_promptMode_1e5t9_19",headerRow:"_headerRow_1e5t9_28",chatInputContainer:"_chatInputContainer_1e5t9_34",documentsInput:"_documentsInput_1e5t9_44",columned:"_columned_1e5t9_50",filesList:"_filesList_1e5t9_58",previewImage:"_previewImage_1e5t9_63",removeButton:"_removeButton_1e5t9_75"};var IP=({loadCompleted:e=!1,disabled:t=!1,promptMode:n=!1,uploadAllowed:a=!0,streaming:o,setSending:s,previousMessages:c=[],header:d,inputPlugins:_,uploadFormats:p,maxUploadFileSize:E=64*1024*1024,maxImagesCount:b=5,onSendMessage:h,onStopRequest:R,onDocumentsUpload:N})=>{let[O,L]=Oo(""),[k,H]=Oo([]),[U,V]=Oo(0),[G,q]=Oo(!1),te=ly(null);oy(()=>{te.current?.focus(),V(c?.length?c.length:0)},[e,c]);let j=async()=>{if(!(!O?.trim()&&!k.length)){s(!0);try{L(""),H([]),await h(O,k)}catch(de){ei.show({title:"Error",message:de instanceof Error?de.message:"Failed to send message",color:"red"})}finally{s(!1)}}},ne=Kl(de=>{let pe=!O?.trim();if(de.key==="Enter"&&!de.shiftKey&&!de.altKey)de.preventDefault(),j(),q(!1);else if(de.key==="ArrowUp"&&(pe||G)){let Y=Math.max(0,U-1);L(c[Y]),V(Y),q(!0)}else if(de.key==="ArrowDown"&&(pe||G)){let Y=Math.min(c.length-1,U+1);L(c[Y]),V(Y),q(!0)}else q(!1)},[j,O,c,U]),ce=Kl(de=>{L(de.currentTarget.value)},[]),fe=sy(()=>t||o||!O?.trim()&&!k.length,[O,k,o,t]),Oe=Kl(de=>{let pe=de.filter(W=>W.size<E);pe.length<de.length&&ei.show({title:"Warning",message:`Some files are too large and were not added (max size: ${E/1024/1024} MB)`,color:"yellow"});let Y=pe.filter(W=>W.type?.startsWith("image/")),re=pe.filter(W=>!W.type?.startsWith("image/"));Y.length+k.length>b&&(ei.show({title:"Warning",message:`You can only add up to ${b} images at a time`,color:"yellow"}),Y=Y.slice(0,b-k.length)),Y.length&&Promise.all(Y.map(W=>new Promise((oe,Se)=>{let he=new FileReader;he.onload=Ce=>{if(Ce.target?.result){let He=Ce.target.result;oe({fileName:W.name,mimeType:W.type,bytesBase64:He})}else Se(new Error(`Failed to read file: ${W.name}`))},he.onerror=Ce=>{Se(new Error(`Failed to read file: ${W.name}, error: ${Ce}`))},he.readAsDataURL(W)}))).then(W=>{H(oe=>[...oe,...W])}).catch(W=>{ei.show({title:"Error",message:W.message||"Failed to read image files",color:"red"})}),re.length&&N?N(re):re.length&&ei.show({title:"Warning",message:"Document upload is not available in this chat.",color:"orange"})},[k,N]),Ue=de=>pe=>{pe.stopPropagation(),H(Y=>Y.filter(re=>re.fileName!==de))};return Nt.createElement("div",{className:[Yt.chatControlsContainer,n?Yt.promptMode:"",e?"":Yt.hidden].join(" ")},n?Nt.createElement(my,{align:"center",justify:"center",gap:"md",mb:"lg"},Nt.createElement(cy,{c:"dimmed",size:"lg",ta:"center"},"Start the conversation by sending a message")):null,Nt.createElement("div",{className:Yt.chatControls},d&&Nt.createElement(_y,{align:"center",gap:"xs",className:Yt.headerRow},d),Nt.createElement("div",{className:[Yt.chatInputContainer,k.length?Yt.columned:""].join(" ")},a&&Nt.createElement("div",{className:Yt.documentsInput},Nt.createElement(pm,{onFilesAdd:Oe,disabled:!a,uploadFormats:p}),_,Nt.createElement("div",{className:Yt.filesList},k.map(de=>Nt.createElement("div",{key:de.fileName,className:Yt.previewImage},Nt.createElement("img",{src:de.bytesBase64,alt:de.fileName}),Nt.createElement(uy,{className:Yt.removeButton,color:"red",size:"xs",onClick:Ue(de.fileName)},Nt.createElement(Ey,{size:16})))))),Nt.createElement("div",{className:Yt.chatInputGroup},Nt.createElement(dy,{ref:te,className:Yt.chatInput,placeholder:"Type your message...",value:O||"",autosize:!0,minRows:1,maxRows:7,onChange:ce,onKeyDown:ne,disabled:t}),R?!0:null,R&&o?Nt.createElement(gm,{onClick:R,disabled:t},Nt.createElement(py,{size:16})," Stop"):Nt.createElement(gm,{onClick:j,disabled:fe,className:R&&o?Yt.hidden:""},Nt.createElement(gy,{size:16})," Send")))))};import Rr,{useCallback as Xl,useRef as Ny,useState as Zl}from"react";import{Stack as Iy}from"@mantine/core";import{notifications as Oy}from"@mantine/notifications";import dn,{useEffect as Sy,useCallback as Em}from"react";import{Image as fy,Text as Ao,Group as Sm,Stack as by,ActionIcon as hy,Modal as Ty,Tooltip as vy}from"@mantine/core";import{useDisclosure as Cy}from"@mantine/hooks";import{IconExternalLink as Ry}from"@tabler/icons-react";var fm=({fileName:e,fileUrl:t,mimeType:n,createdAt:a,onOpenSource:o,sourceTitle:s,onClose:c})=>{let[d,{open:_,close:p}]=Cy(!1);Sy(()=>{t&&_()},[t,_]);let E=Em(()=>{c(),p()},[c,p]),b=Em(()=>{o?.(),E()},[o,E]);return dn.createElement(Ty,{opened:d,onClose:E,size:"xl",title:"Image Preview",centered:!0},t&&dn.createElement(by,{gap:"md"},dn.createElement(fy,{src:t,alt:e,fit:"contain",mah:"70vh"}),dn.createElement(Sm,{justify:"space-between"},dn.createElement("div",null,dn.createElement(Ao,{size:"sm",fw:500},e),dn.createElement(Ao,{size:"xs",c:"dimmed"},a?(R=>new Date(R).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}))(a)+" \u2022":""," ",n)),o&&dn.createElement(Sm,{gap:"xs"},dn.createElement(vy,{label:"Open source"},dn.createElement(hy,{variant:"light",onClick:b},dn.createElement(Ry,{size:16}))))),o&&dn.createElement(Ao,{size:"sm",c:"dimmed"},"From:"," ",dn.createElement(Ao,{span:!0,c:"blue",style:{cursor:"pointer"},onClick:b},s||"source"))))};var bm=({messages:e,onMessageDeleted:t,onAddMessage:n,plugins:a=[],detailsPlugins:o=[],models:s=[]})=>{let c=Ny(null),[d,_]=Zl(),[p,E]=Zl(),[b,h]=Zl(new Set),R=U=>h(V=>new Set(V).add(U)),N=U=>{h(V=>{let G=new Set(V);return G.delete(U),G})},O=()=>{_(void 0),E(void 0)},L=Xl(U=>{if(!U.target)return;let V=["code-copy-btn","code-toggle-all","copy-message-btn","code-header","message-image"],G=U.target;for(let j of V){let ne=G.closest(`.${j}`);if(ne){G=ne;break}}if(!G)return;let q=G,te=j=>{let ne=j?.nextElementSibling;ne.classList.contains("collapsed")?(j.classList.remove("collapsed"),ne&&ne.classList.remove("collapsed")):(j.classList.add("collapsed"),ne&&ne.classList.add("collapsed"))};if(q.classList.contains("code-copy-btn")){let j=q.parentElement?.parentElement?.nextElementSibling?.querySelector(".code-data");if(j){let fe=decodeURIComponent(j.dataset.code||"").trim();navigator.clipboard.writeText(fe)}let ne=q.querySelector(".copy-icon"),ce=q.querySelector(".check-icon");ne&&ce&&(ne.style.display="none",ce.style.display="block",setTimeout(()=>{ne.style.display="block",ce.style.display="none"},2e3))}else if(q.classList.contains("code-header"))te(q);else if(q.classList.contains("code-toggle-all"))c.current?.querySelectorAll(".code-header").forEach(j=>{te(j)});else if(q.classList.contains("copy-message-btn")){if(q.dataset.messageId){let j=q.dataset.messageIndex,ne=q.dataset.messageLinkedIndex,ce=q.dataset.messageId,fe=j!=null?e[Number(j)]:e.find(pe=>pe.id===ce);ne!=null&&(fe=fe?.linkedMessages?.[Number(ne)]),$l(fe,"Message should exist to copy");let Oe=(fe.content||"").trim(),Ue=fe.html||[];if(Ue.length&&Ue[0]){let pe=new Blob([Ue.join("<br/>")],{type:"text/html"}),Y=new Blob([Oe],{type:"text/plain"});navigator.clipboard.write([new ClipboardItem({[pe.type]:pe,[Y.type]:Y})]).catch(re=>Oy.show({title:"Error",message:re.message||"Failed to copy message",color:"red"}))}else navigator.clipboard.writeText(Oe);let de=q.parentElement?.querySelector(".check-icon");de&&(q.style.display="none",de.style.display="inline-block",setTimeout(()=>{q.style.display="inline-block",de.style.display="none"},2e3))}}else if(q.classList.contains("message-image")){let j=q.dataset.fileName,ne=q.src;_(ne),E(j)}},[e]),k=Xl(U=>Rr.createElement(Rr.Fragment,null,a.map((V,G)=>Rr.createElement(V,{key:G,message:U,onAddMessage:n,onAction:R,onActionEnd:N,onMessageDeleted:t,disabled:b.has(U.id)}))),[a,n,t,b,R,N]),H=Xl(U=>{let V=o.map((G,q)=>G(U)).filter(Ja);return V.length?V:null},[a,o]);return Rr.createElement(Rr.Fragment,null,Rr.createElement(Iy,{gap:"xs",ref:c,onClick:L},e.map((U,V)=>Rr.createElement(Wl,{key:U.id,message:U,index:V,disabled:b.has(U.id),pluginsLoader:k,messageDetailsLoader:H,models:s}))),Rr.createElement(fm,{fileName:p??"",fileUrl:d??"",onClose:O}))};import Dn,{useCallback as yo,useEffect as Cm,useImperativeHandle as My,useRef as Rm,useState as Ly}from"react";import{Group as ky,Loader as Py}from"@mantine/core";import{IconCircleChevronDown as By}from"@tabler/icons-react";import{useEffect as Ay,useRef as hm}from"react";function Jl(e,t,n=0){let a=hm(null),o=hm(null);return Ay(()=>{a.current?.disconnect();let s=setTimeout(()=>{a.current=new IntersectionObserver(c=>{c[0].isIntersecting&&e()}),o.current&&a.current.observe(o.current)},n);return()=>{clearTimeout(s),a.current?.disconnect()}},[t,e]),o}import yy,{createContext as xy,useContext as Dy,useEffect as Tm}from"react";import{useLocalStorage as wy}from"@mantine/hooks";var vm=xy(void 0),QP=({children:e})=>{let[t,n]=wy({key:"ui-theme",defaultValue:"light"});Tm(()=>{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 Tm(()=>{if(t==="auto"){let o=window.matchMedia("(prefers-color-scheme: dark)"),s=c=>{document.documentElement.dataset.mantine=c.matches?"dark":"light"};return o.addEventListener("change",s),()=>o.removeEventListener("change",s)}},[t]),yy.createElement(vm.Provider,{value:{colorScheme:t,setColorScheme:n,toggleColorScheme:a}},e)},$P=()=>{let e=Dy(vm);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};var Nm=Dn.forwardRef(({messages:e,models:t,addChatMessage:n,removeMessages:a,loadMoreMessages:o,plugins:s,detailsPlugins:c,streaming:d=!1,loadCompleted:_=!0,loading:p=!1},E)=>{let[b,h]=Ly(!1),R=Rm(null),N=Rm(null),O=yo(()=>{R.current?.scrollTo(0,R.current?.scrollHeight??0)},[R]);My(E,()=>({scrollToBottom:O}),[O]);let L=yo(()=>{b||O()},[O,b]);Cm(()=>{L()},[e,L]);let k=yo(V=>{let{scrollTop:G,scrollHeight:q,clientHeight:te}=V.target;N.current&&clearTimeout(N.current),q-G-te<2?h(!1):e?.length&&(d?N.current=setTimeout(()=>{h(!0)},100):h(!0))},[e?.length,d]),H=yo(()=>{h(!1),O()},[O]);Cm(()=>{_&&(h(!1),setTimeout(O,200))},[_]);let U=Jl(()=>o?.(),[o],200);return Dn.createElement("div",{className:["katechat-messages-container",_?"container--load-completed":"",_&&e?.length===0?"container--empty":""].join(" ")},Dn.createElement("div",{className:"katechat-messages-container-scroller",ref:R,onScroll:k},Dn.createElement("div",{ref:U}),p&&Dn.createElement(ky,{justify:"center",align:"center",py:"xl"},Dn.createElement(Py,null)),Dn.createElement("div",{className:"katechat-messages-list"},e&&Dn.createElement(bm,{messages:e,onMessageDeleted:a,onAddMessage:n,models:t,plugins:s,detailsPlugins:c}))),Dn.createElement("div",{className:["katechat-anchor-container",b?"container--visible":""].join(" ")},Dn.createElement("div",{className:"katechat-anchor"},Dn.createElement(By,{size:32,color:"teal",onClick:H}))))});Nm.displayName="ChatMessagesContainer";var Rh=rm(Ch(),1);var ii=Rh.default;function pc(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var $r=pc();function xh(e){$r=e}var li={exec:()=>null};function Ke(e,t=""){let n=typeof e=="string"?e:e.source,a={replace:(o,s)=>{let c=typeof s=="string"?s:s.source;return c=c.replace(Ht.caret,"$1"),n=n.replace(o,c),a},getRegex:()=>new RegExp(n,t)};return a}var Ht={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},c2=/^(?:[ \t]*(?:\n|$))+/,d2=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,_2=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,ci=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,u2=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,gc=/(?:[*+-]|\d{1,9}[.)])/,Dh=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,wh=Ke(Dh).replace(/bull/g,gc).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),m2=Ke(Dh).replace(/bull/g,gc).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Ec=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,p2=/^[^\n]+/,Sc=/(?!\s*\])(?:\\.|[^\[\]\\])+/,g2=Ke(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Sc).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),E2=Ke(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,gc).getRegex(),qo="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",fc=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,S2=Ke("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",fc).replace("tag",qo).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Mh=Ke(Ec).replace("hr",ci).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",qo).getRegex(),f2=Ke(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Mh).getRegex(),bc={blockquote:f2,code:d2,def:g2,fences:_2,heading:u2,hr:ci,html:S2,lheading:wh,list:E2,newline:c2,paragraph:Mh,table:li,text:p2},Nh=Ke("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",ci).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",qo).getRegex(),b2={...bc,lheading:m2,table:Nh,paragraph:Ke(Ec).replace("hr",ci).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Nh).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",qo).getRegex()},h2={...bc,html:Ke(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",fc).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:li,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Ke(Ec).replace("hr",ci).replace("heading",` *#{1,6} *[^
|
|
71
71
|
]`).replace("lheading",wh).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},T2=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,v2=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Lh=/^( {2,}|\\)\n(?!\s*$)/,C2=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Wo=/[\p{P}\p{S}]/u,hc=/[\s\p{P}\p{S}]/u,kh=/[^\s\p{P}\p{S}]/u,R2=Ke(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,hc).getRegex(),Ph=/(?!~)[\p{P}\p{S}]/u,N2=/(?!~)[\s\p{P}\p{S}]/u,I2=/(?:[^\s\p{P}\p{S}]|~)/u,O2=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,Bh=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,A2=Ke(Bh,"u").replace(/punct/g,Wo).getRegex(),y2=Ke(Bh,"u").replace(/punct/g,Ph).getRegex(),Uh="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",x2=Ke(Uh,"gu").replace(/notPunctSpace/g,kh).replace(/punctSpace/g,hc).replace(/punct/g,Wo).getRegex(),D2=Ke(Uh,"gu").replace(/notPunctSpace/g,I2).replace(/punctSpace/g,N2).replace(/punct/g,Ph).getRegex(),w2=Ke("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,kh).replace(/punctSpace/g,hc).replace(/punct/g,Wo).getRegex(),M2=Ke(/\\(punct)/,"gu").replace(/punct/g,Wo).getRegex(),L2=Ke(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),k2=Ke(fc).replace("(?:-->|$)","-->").getRegex(),P2=Ke("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",k2).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Ho=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,B2=Ke(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Ho).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Fh=Ke(/^!?\[(label)\]\[(ref)\]/).replace("label",Ho).replace("ref",Sc).getRegex(),Gh=Ke(/^!?\[(ref)\](?:\[\])?/).replace("ref",Sc).getRegex(),U2=Ke("reflink|nolink(?!\\()","g").replace("reflink",Fh).replace("nolink",Gh).getRegex(),Tc={_backpedal:li,anyPunctuation:M2,autolink:L2,blockSkip:O2,br:Lh,code:v2,del:li,emStrongLDelim:A2,emStrongRDelimAst:x2,emStrongRDelimUnd:w2,escape:T2,link:B2,nolink:Gh,punctuation:R2,reflink:Fh,reflinkSearch:U2,tag:P2,text:C2,url:li},F2={...Tc,link:Ke(/^!?\[(label)\]\((.*?)\)/).replace("label",Ho).getRegex(),reflink:Ke(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Ho).getRegex()},_c={...Tc,emStrongRDelimAst:D2,emStrongLDelim:y2,url:Ke(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},G2={..._c,br:Ke(Lh).replace("{2,}","*").getRegex(),text:Ke(_c.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Yo={normal:bc,gfm:b2,pedantic:h2},oi={normal:Tc,gfm:_c,breaks:G2,pedantic:F2},Y2={"&":"&","<":"<",">":">",'"':""","'":"'"},Ih=e=>Y2[e];function Gn(e,t){if(t){if(Ht.escapeTest.test(e))return e.replace(Ht.escapeReplace,Ih)}else if(Ht.escapeTestNoEncode.test(e))return e.replace(Ht.escapeReplaceNoEncode,Ih);return e}function Oh(e){try{e=encodeURI(e).replace(Ht.percentDecode,"%")}catch{return null}return e}function Ah(e,t){let n=e.replace(Ht.findPipe,(s,c,d)=>{let _=!1,p=c;for(;--p>=0&&d[p]==="\\";)_=!_;return _?"|":" |"}),a=n.split(Ht.splitPipe),o=0;if(a[0].trim()||a.shift(),a.length>0&&!a.at(-1)?.trim()&&a.pop(),t)if(a.length>t)a.splice(t);else for(;a.length<t;)a.push("");for(;o<a.length;o++)a[o]=a[o].trim().replace(Ht.slashPipe,"|");return a}function si(e,t,n){let a=e.length;if(a===0)return"";let o=0;for(;o<a;){let s=e.charAt(a-o-1);if(s===t&&!n)o++;else if(s!==t&&n)o++;else break}return e.slice(0,a-o)}function z2(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let a=0;a<e.length;a++)if(e[a]==="\\")a++;else if(e[a]===t[0])n++;else if(e[a]===t[1]&&(n--,n<0))return a;return n>0?-2:-1}function yh(e,t,n,a,o){let s=t.href,c=t.title||null,d=e[1].replace(o.other.outputLinkReplace,"$1");a.state.inLink=!0;let _={type:e[0].charAt(0)==="!"?"image":"link",raw:n,href:s,title:c,text:d,tokens:a.inlineTokens(d)};return a.state.inLink=!1,_}function H2(e,t,n){let a=e.match(n.other.indentCodeCompensation);if(a===null)return t;let o=a[1];return t.split(`
|
|
72
72
|
`).map(s=>{let c=s.match(n.other.beginningSpace);if(c===null)return s;let[d]=c;return d.length>=o.length?s.slice(o.length):s}).join(`
|
|
73
73
|
`)}var Vo=class{options;rules;lexer;constructor(e){this.options=e||$r}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:si(n,`
|